:root{--bg-primary: #050505;--bg-secondary: #121212;--bg-tertiary: #1E1E1E;--accent-primary: #6366f1;--accent-secondary: #8b5cf6;--accent-gradient: linear-gradient(135deg, var(--accent-primary), var(--accent-secondary));--text-primary: #ffffff;--text-secondary: #a1a1aa;--border-subtle: rgba(255, 255, 255, .1);--glass-bg: rgba(18, 18, 18, .6);--glass-border: rgba(255, 255, 255, .08);--radius-lg: 24px;--radius-md: 16px;--radius-sm: 8px;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;overflow-x:hidden;line-height:1.5}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-tertiary);border-radius:4px}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.btn-primary{background:var(--accent-gradient);color:#fff;border:none;padding:14px 24px;border-radius:var(--radius-md);font-weight:600;font-size:1rem;cursor:pointer;transition:transform .2s,opacity .2s;width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.btn-primary:active{transform:scale(.98);opacity:.9}.face-cropper{width:100%;height:100%;text-align:center}.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;min-height:400px}.upload-zone h3{margin-bottom:8px}.upload-zone p{color:var(--text-secondary);margin-bottom:24px}.upload-btn{max-width:200px;margin-bottom:16px}.btn-secondary{background:transparent;color:var(--text-secondary);border:1px solid var(--border-subtle);padding:12px 20px;border-radius:var(--radius-md);cursor:pointer;font-weight:500}.btn-text{background:none;border:none;color:var(--text-secondary);cursor:pointer;text-decoration:underline;margin-top:10px}.cropper-container{display:flex;flex-direction:column;height:80vh}.crop-area{position:relative;flex:1;border-radius:var(--radius-lg);overflow:hidden;background:#000;margin-bottom:16px}.controls{padding:24px}.slider-container{display:flex;align-items:center;gap:16px;margin-bottom:20px}.zoom-range{flex:1;accent-color:var(--accent-primary)}.actions{display:flex;gap:12px}.actions button{flex:1}.fade-in{animation:fadeIn .4s ease-out}.result-grid-container{padding-bottom:100px;text-align:center}.header{margin-bottom:24px}.sticker-grid{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:0 4px;min-height:50vh;align-items:center}.sticker-item{width:100%;max-width:350px;aspect-ratio:auto;padding:8px;display:flex;align-items:center;justify-content:center}.sticker-item img{width:100%;height:100%;object-fit:contain}.floating-actions{position:fixed;bottom:20px;left:50%;transform:translate(-50%);width:90%;max-width:460px;padding:12px;display:flex;gap:12px;box-shadow:0 8px 32px #00000080;z-index:100}.floating-actions button{flex:1}.fade-in{animation:fadeIn .5s ease-out}.profile-menu-overlay{position:fixed;inset:0;background:#00000080;z-index:9998}.profile-menu{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:320px;padding:20px;z-index:9999;display:flex;flex-direction:column;gap:16px}.menu-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border-subtle);padding-bottom:12px}.menu-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.close-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:4px}.menu-options{display:flex;flex-direction:column;gap:12px}.menu-btn{display:flex;align-items:center;gap:16px;background:#ffffff0d;border:1px solid var(--border-subtle);padding:16px;border-radius:12px;color:var(--text-primary);cursor:pointer;transition:background .2s;text-align:left}.menu-btn:active{background:#ffffff1a;transform:scale(.98)}.icon-circle{width:36px;height:36px;border-radius:50%;background:var(--accent-primary);display:flex;align-items:center;justify-content:center;color:#fff}.meme-grid-container{padding:10px 10px 80px}.meme-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(min-width:768px){.meme-grid{grid-template-columns:repeat(3,1fr)}}.meme-card{position:relative;border-radius:var(--radius-md);overflow:hidden;aspect-ratio:1;background:var(--bg-tertiary);cursor:pointer;box-shadow:0 4px 6px #0003}.meme-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.meme-card:hover img{transform:scale(1.05)}.meme-card-overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,rgba(0,0,0,.8),transparent);padding:12px;opacity:0;transition:opacity .2s;display:flex;align-items:flex-end}.meme-card:hover .meme-card-overlay{opacity:1}.meme-preview-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.meme-preview-content{width:100%;max-width:400px;background:var(--bg-secondary);border-radius:var(--radius-lg);overflow:hidden;position:relative;border:1px solid var(--border-subtle);display:flex;flex-direction:column}.close-btn{position:absolute;top:16px;right:16px;background:#00000080;border:none;color:#fff;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10}.preview-image-container{width:100%;background:#000;display:flex;align-items:center;justify-content:center;min-height:300px;max-height:60vh}.preview-image-container img{max-width:100%;max-height:100%;object-fit:contain}.preview-actions{padding:24px;text-align:center;background:var(--bg-secondary)}.meme-title{margin-bottom:20px;font-size:1.2rem;color:var(--text-primary)}.fuse-btn{width:100%;padding:16px;font-size:1.1rem}.coin-cost{background:#fff3;padding:2px 8px;border-radius:12px;font-size:.8rem;margin-left:8px}.spinner-sm{width:16px;height:16px;border:2px solid white;border-top-color:transparent;border-radius:50%;animation:spin 1s linear infinite;display:inline-block;margin-right:8px}.coin-store-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:flex-end;justify-content:center;z-index:3000;padding:20px}@media(min-width:600px){.coin-store-overlay{align-items:center}}.coin-store-content{width:100%;max-width:400px;background:var(--bg-secondary);border-radius:var(--radius-lg);padding:24px;position:relative;text-align:center;border:1px solid var(--border-subtle);margin-bottom:constant(safe-area-inset-bottom);margin-bottom:env(safe-area-inset-bottom)}.store-header{margin-bottom:24px}.coin-icon-lg{font-size:3rem;margin-bottom:12px}.store-header h2{font-size:1.5rem;margin-bottom:8px;color:var(--text-primary)}.store-header p{color:var(--text-secondary);font-size:.95rem}.pack-list{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.pack-card{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;position:relative;transition:transform .2s,border-color .2s}.pack-card:active{transform:scale(.98)}.pack-card.popular{border-color:var(--accent-primary);background:#6366f10d}.popular-tag{position:absolute;top:-10px;right:12px;background:var(--accent-primary);color:#fff;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:12px}.pack-info{display:flex;flex-direction:column;align-items:flex-start}.coin-amount{font-size:1.1rem;font-weight:700;color:var(--text-primary)}.pack-label{font-size:.85rem;color:var(--text-secondary)}.buy-btn{background:var(--text-primary);color:var(--bg-primary);border:none;font-weight:700;padding:8px 16px;border-radius:20px;font-size:.9rem;min-width:80px}.store-footer{font-size:.8rem;color:var(--text-secondary);display:flex;align-items:center;justify-content:center}.close-btn{position:absolute;top:20px;right:20px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;z-index:10;transition:color .2s}.close-btn:hover{color:var(--text-primary)}.checkout-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;position:relative;padding-top:10px}.back-btn{background:transparent;border:none;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:50%;transition:background .2s;position:absolute;left:0;top:50%;transform:translateY(-50%)}.back-btn:hover{background:var(--bg-tertiary)}.checkout-header h3{flex:1;text-align:center;margin:0;font-size:1.25rem;color:var(--text-primary)}.header-spacer{width:40px}.summary-card{background:var(--bg-tertiary);border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:24px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;margin-bottom:32px;position:relative;overflow:hidden}.summary-card h4{font-size:1.5rem;margin:0 0 4px;color:var(--text-primary)}.summary-card p{color:var(--text-secondary);font-size:1rem;margin:0}.price-tag{background:var(--accent-primary);color:#fff;padding:6px 16px;border-radius:20px;font-weight:700;font-size:.9rem;margin-top:8px;box-shadow:0 4px 12px #6366f14d}.checkout-actions{display:flex;flex-direction:column;gap:16px;width:100%}.primary-action-btn{width:100%;padding:16px;font-size:1.1rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);border:none;border-radius:var(--radius-md);cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px #0000001a}.primary-action-btn:active{transform:scale(.98)}.primary-action-btn:hover{box-shadow:0 6px 15px #6366f166}.dev-mode-text{font-size:.85rem;color:var(--text-tertiary);text-align:center;font-style:italic}.history-overlay{position:fixed;inset:0;background:#0009;z-index:2500}.history-content{background:var(--bg-secondary);border:1px solid var(--border-subtle)}
