:root{--bg:#0b0b0f;--bg-card:#ffffff0a;--bg-card-hover:#ffffff12;--border:#ffffff14;--border-hover:#ffffff29;--accent:#b31a28;--accent-light:#e02035;--accent-glow:#b31a2859;--text:#a1a1aa;--text-bright:#f4f4f5;--text-muted:#71717a;--radius-sm:10px;--radius-md:16px;--radius-lg:24px;--shadow-card:0 4px 32px #00000080;--shadow-btn:0 4px 20px #b31a2873;--font:"Inter", system-ui, sans-serif}.dark-theme{background:var(--bg);min-height:100vh;color:var(--text-bright);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;font-size:16px;line-height:1.6;display:flex}.dark-theme ::-webkit-scrollbar{width:6px}.dark-theme ::-webkit-scrollbar-track{background:0 0}.dark-theme ::-webkit-scrollbar-thumb{background:var(--border-hover);border-radius:99px}.dark-theme .container{width:100%;max-width:680px;margin:0 auto;padding:0 20px}.glass-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);transition:background .2s,border-color .2s,box-shadow .2s}.glass-card:hover{background:var(--bg-card-hover);border-color:var(--border-hover);box-shadow:var(--shadow-card)}.btn-primary{background:var(--accent);color:#fff;width:100%;font-family:var(--font);border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-btn);letter-spacing:-.01em;border:none;justify-content:center;align-items:center;gap:10px;padding:16px 28px;font-size:17px;font-weight:700;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;display:inline-flex}.btn-primary:hover{background:var(--accent-light);transform:translateY(-2px);box-shadow:0 8px 28px #b31a288c}.btn-primary:active{transform:translateY(0)}.btn-secondary{width:100%;color:var(--text-bright);font-family:var(--font);border:1px solid var(--border-hover);border-radius:var(--radius-lg);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:10px;padding:14px 28px;font-size:16px;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,transform .15s;display:inline-flex}.btn-secondary:hover{background:var(--bg-card-hover);border-color:#ffffff4d;transform:translateY(-1px)}.badge{color:#f87171;letter-spacing:.01em;background:#b31a2826;border:1px solid #b31a284d;border-radius:99px;align-items:center;gap:5px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.page-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.store-banner{background:linear-gradient(135deg,#1a0a0c 0%,#1c1c22 100%);width:100%;height:260px;position:relative;overflow:hidden}.store-banner img{object-fit:cover;opacity:.7;width:100%;height:100%}.store-banner-overlay{background:linear-gradient(#0b0b0f33 0%,#0b0b0fd9 100%);position:absolute;inset:0}.store-banner-placeholder{background:linear-gradient(135deg,#1a0a0c 0%,#1c1c22 100%);justify-content:center;align-items:center;width:100%;height:100%;font-size:80px;display:flex}.store-logo-wrap{border:2px solid var(--border-hover);background:#18181b;border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;font-size:28px;display:flex;position:absolute;bottom:-28px;left:20px;overflow:hidden;box-shadow:0 4px 20px #0009}.store-logo-wrap img{object-fit:cover;width:100%;height:100%}.store-page{flex-direction:column;flex:1;width:100%;max-width:680px;margin:0 auto;padding-bottom:48px;display:flex}.store-content{padding:48px 20px 0}.store-name{color:var(--text-bright);letter-spacing:-.03em;margin-bottom:10px;font-size:clamp(26px,6vw,36px);font-weight:900;line-height:1.15}.store-meta{flex-wrap:wrap;gap:10px;margin-bottom:28px;display:flex}.store-meta-item{color:var(--text);align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.store-meta-item .dot{background:var(--text-muted);border-radius:50%;width:4px;height:4px}.store-rating{color:#fbbf24;background:#eab3081f;border:1px solid #eab30840;border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-size:13px;font-weight:700;display:inline-flex}.cta-section{flex-direction:column;gap:12px;margin-top:28px;padding:0 20px;display:flex}.cta-label{color:var(--text-muted);text-align:center;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-size:12px;font-weight:600}.download-row{gap:10px;display:flex}.download-row .btn-secondary{flex:1;padding:12px 16px;font-size:14px}.section-heading{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:14px;font-size:13px;font-weight:700}.coupons-section{padding:28px 20px 0}.coupon-card{border-radius:var(--radius-sm);align-items:center;gap:14px;margin-bottom:10px;padding:14px 16px;display:flex}.coupon-icon{background:#b31a281f;border-radius:10px;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;font-size:18px;display:flex}.coupon-title{color:var(--text-bright);margin-bottom:2px;font-size:15px;font-weight:700}.coupon-desc{color:var(--text-muted);font-size:13px}.coupon-discount{color:#f87171;white-space:nowrap;margin-left:auto;font-size:14px;font-weight:800}.divider{background:var(--border);height:1px;margin:28px 20px}.footer-note{text-align:center;color:var(--text-muted);padding:0 20px;font-size:13px;line-height:1.8}.footer-note strong{color:var(--text-bright);font-weight:700}.landing-hero{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:20px;padding:60px 24px;display:flex}.landing-logo{color:var(--text-bright);letter-spacing:-.04em;font-size:48px;font-weight:900}.landing-logo span{color:var(--accent)}.landing-tagline{color:var(--text);max-width:360px;font-size:20px;font-weight:500;line-height:1.5}@media (width<=480px){.store-banner{height:200px}.download-row{flex-direction:column}}.register-container{flex:1;justify-content:center;align-items:center;width:100%;padding:140px 20px 80px;display:flex}.register-card{border-radius:var(--radius-lg);background:#fff;border:1px solid #e5e7eb;flex-direction:column;align-items:center;width:100%;max-width:580px;padding:40px 32px;display:flex;box-shadow:0 10px 25px #0000000d}.register-title{color:#111827;text-align:center;letter-spacing:-.02em;margin-top:24px;margin-bottom:8px;font-size:24px;font-weight:800}.register-subtitle{color:#4b5563;text-align:center;margin-bottom:32px;font-size:15px}.register-subtitle strong{color:var(--accent)}.register-error-banner{color:#ef4444;border-radius:var(--radius-sm);text-align:center;background:#ef44441a;border:1px solid #ef444433;width:100%;margin-bottom:24px;padding:12px 16px;font-size:14px;line-height:1.5}.register-form{flex-direction:column;gap:20px;width:100%;display:flex}.form-group-row{grid-template-columns:1fr 1fr;gap:16px;width:100%;display:grid}.form-group{flex-direction:column;gap:6px;width:100%;display:flex}.form-group label{color:#374151;font-size:13px;font-weight:600}.form-group input,.form-group select{color:#111827;border-radius:var(--radius-sm);width:100%;font-family:var(--font);background:#fff;border:1px solid #d1d5db;outline:none;padding:12px 16px;font-size:15px;transition:border-color .2s,background-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--accent);background:#fff}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%234b5563'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.form-group select option{color:#111827;background-color:#fff}.input-hint{color:#6b7280;margin-top:2px;font-size:11px;line-height:1.4}.form-divider{background:#e5e7eb;width:100%;height:1px;margin:8px 0}.register-submit{margin-top:10px;padding:14px 28px}.spinner-btn{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@media (width<=480px){.form-group-row{grid-template-columns:1fr;gap:20px}}
