:root{--brand-50: #eef0ff;--brand-100: #e0e2ff;--brand-200: #c7c9ff;--brand-300: #a5a6fc;--brand-400: #8484f7;--brand-500: #6366f1;--brand-600: #5451e6;--brand-700: #463fc9;--brand-800: #3a35a3;--brand-900: #322f80;--accent-400: #c084fc;--accent-500: #a855f7;--grad-brand: linear-gradient(135deg, #6366f1 0%, #8b5cf6 50%, #a855f7 100%);--grad-brand-soft: linear-gradient(135deg, #eef0ff 0%, #f5edff 100%);--slate-50: #f8fafc;--slate-100: #f1f5f9;--slate-200: #e2e8f0;--slate-300: #cbd5e1;--slate-400: #94a3b8;--slate-500: #64748b;--slate-600: #475569;--slate-700: #334155;--slate-800: #1e293b;--slate-900: #0f172a;--slate-950: #020617;--success: #16a34a;--success-bg: #dcfce7;--danger: #dc2626;--danger-bg: #fee2e2;--warning: #d97706;--warning-bg: #fef3c7;--bg: #f6f7fb;--bg-elevated: #ffffff;--surface: #ffffff;--surface-2: #f8fafc;--border: #e6e8ef;--border-strong: #d3d7e3;--text: #16192b;--text-muted: #5c6479;--text-faint: #8b93a7;--ring: rgba(99, 102, 241, .35);--overlay: rgba(15, 23, 42, .45);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, "SFMono-Regular", "Menlo", "Consolas", monospace;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-full: 999px;--shadow-xs: 0 1px 2px rgba(16, 24, 40, .05);--shadow-sm: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .04);--shadow-lg: 0 12px 32px rgba(16, 24, 40, .12), 0 4px 8px rgba(16, 24, 40, .04);--shadow-xl: 0 24px 60px rgba(16, 24, 40, .16);--sidebar-w: 256px;--topbar-h: 64px;--maxw: 1200px}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0b0e1a;--bg-elevated: #12162a;--surface: #151a30;--surface-2: #1b2140;--border: #262c48;--border-strong: #333a5c;--text: #eef1f8;--text-muted: #a7afc9;--text-faint: #7b83a1;--overlay: rgba(2, 6, 23, .6);--grad-brand-soft: linear-gradient(135deg, #1a1e3a 0%, #241a44 100%)}}:root[data-theme=dark]{--bg: #0b0e1a;--bg-elevated: #12162a;--surface: #151a30;--surface-2: #1b2140;--border: #262c48;--border-strong: #333a5c;--text: #eef1f8;--text-muted: #a7afc9;--text-faint: #7b83a1;--overlay: rgba(2, 6, 23, .6);--grad-brand-soft: linear-gradient(135deg, #1a1e3a 0%, #241a44 100%)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4{line-height:1.2;font-weight:700;letter-spacing:-.02em}:focus-visible{outline:2px solid var(--brand-500);outline-offset:2px}::selection{background:var(--brand-200);color:var(--brand-900)}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.wrap{flex-wrap:wrap}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mt-8{margin-top:32px}.grow{flex:1}.center{align-items:center;justify-content:center}.between{justify-content:space-between}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.mono{font-family:var(--font-mono)}.text-sm{font-size:13px}.text-xs{font-size:12px}.hidden{display:none!important}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;color:var(--brand-600)}.gradient-text{background:var(--grad-brand);-webkit-background-clip:text;background-clip:text;color:transparent}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:var(--r-md);border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:transform .06s ease,background .15s ease,box-shadow .15s ease,border-color .15s ease,opacity .15s ease;-webkit-user-select:none;user-select:none}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default;pointer-events:none}.btn svg{width:18px;height:18px}.btn-primary{background:var(--grad-brand);color:#fff;box-shadow:0 6px 18px #6366f159}.btn-primary:hover{box-shadow:0 10px 26px #6366f173}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-secondary:hover{background:var(--surface-2);border-color:var(--slate-400)}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover{background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(.94)}.btn-block{width:100%}.btn-lg{padding:14px 26px;font-size:15px;border-radius:var(--r-lg)}.btn-sm{padding:7px 12px;font-size:13px}.btn-icon{padding:9px;border-radius:var(--r-md)}.btn-icon svg{width:18px;height:18px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field>label{font-size:13px;font-weight:600;color:var(--text)}.field .hint{font-size:12px;color:var(--text-faint)}.field .error-text{font-size:12px;color:var(--danger);font-weight:500}.input,.select,textarea.input{width:100%;padding:11px 13px;border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:14px;transition:border-color .15s ease,box-shadow .15s ease}.input::placeholder{color:var(--text-faint)}.input:focus,.select:focus,textarea.input:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 4px var(--ring)}.input.invalid{border-color:var(--danger)}.input-file{border:1.5px dashed var(--border-strong);background:var(--surface-2);border-radius:var(--r-md);padding:14px;font-size:13px;color:var(--text-muted);cursor:pointer;transition:border-color .15s,background .15s;width:100%}.input-file:hover{border-color:var(--brand-400);background:var(--brand-50)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 560px){.grid-2{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-pad{padding:22px}.card-header{padding:18px 22px;border-bottom:1px solid var(--border)}.card-title{font-size:16px;font-weight:700}.card-sub{font-size:13px;color:var(--text-muted);margin-top:2px}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-full);font-size:12px;font-weight:600;background:var(--surface-2);color:var(--text-muted);border:1px solid var(--border)}.badge svg{width:13px;height:13px}.badge-brand{background:var(--brand-50);color:var(--brand-700);border-color:var(--brand-200)}.badge-green{background:var(--success-bg);color:var(--success);border-color:transparent}.status{font-size:13px;min-height:18px;display:inline-flex;align-items:center;gap:6px}.status.ok{color:var(--success)}.status.err{color:var(--danger)}.brand{display:inline-flex;align-items:center;gap:10px;font-weight:800;letter-spacing:-.02em;font-size:18px}.brand-mark{width:34px;height:34px;border-radius:10px;background:var(--grad-brand);display:grid;place-items:center;color:#fff;box-shadow:0 6px 16px #6366f166}.brand-mark svg{width:19px;height:19px}.site-nav{position:sticky;top:0;z-index:40;-webkit-backdrop-filter:saturate(160%) blur(12px);backdrop-filter:saturate(160%) blur(12px);background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--border)}.site-nav .container{display:flex;align-items:center;justify-content:space-between;height:68px}.nav-links{display:flex;align-items:center;gap:28px}.nav-links a{font-size:14px;font-weight:500;color:var(--text-muted);transition:color .15s}.nav-links a:hover{color:var(--text)}.nav-actions{display:flex;align-items:center;gap:10px}@media (max-width: 820px){.nav-links{display:none}}.hero{position:relative;overflow:hidden;padding:72px 0 40px}.hero:before{content:"";position:absolute;inset:-40% 0 auto 0;height:620px;z-index:-1;background:radial-gradient(60% 60% at 78% 8%,rgba(168,85,247,.2),transparent 60%),radial-gradient(50% 60% at 12% 0%,rgba(99,102,241,.22),transparent 60%)}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}@media (max-width: 940px){.hero-grid{grid-template-columns:1fr;gap:36px}}.hero h1{font-size:clamp(34px,5vw,56px);line-height:1.05}.hero p.lead{font-size:18px;color:var(--text-muted);margin-top:18px;max-width:34ch}.hero-cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}.hero-trust{display:flex;gap:22px;margin-top:30px;flex-wrap:wrap}.hero-trust .item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-muted)}.hero-trust svg{width:16px;height:16px;color:var(--success)}.phone{position:relative;width:260px;margin:0 auto;aspect-ratio:9 / 19;border-radius:34px;background:#0b0d16;padding:12px;box-shadow:var(--shadow-xl);border:1px solid var(--border-strong)}.phone-screen{position:relative;height:100%;border-radius:24px;overflow:hidden;background:linear-gradient(160deg,#1b2140,#0b0d16);display:flex;align-items:center;justify-content:center}.phone-target{width:72%;aspect-ratio:16/10;border-radius:12px;background:var(--grad-brand);position:relative;box-shadow:0 20px 50px #6366f180;display:grid;place-items:center;color:#fff}.phone-play{width:54px;height:54px;border-radius:999px;background:#ffffffe6;display:grid;place-items:center;color:var(--brand-700)}.phone-play svg{width:24px;height:24px;margin-left:3px}.phone-scanline{position:absolute;left:8%;right:8%;height:2px;background:var(--accent-400);box-shadow:0 0 14px 2px var(--accent-400);top:30%;animation:scan 2.6s ease-in-out infinite;border-radius:2px}@keyframes scan{0%,to{top:24%;opacity:.4}50%{top:72%;opacity:1}}.phone-badge{position:absolute;top:16px;left:50%;transform:translate(-50%);background:#0000008c;color:#fff;font-size:12px;padding:6px 12px;border-radius:999px}.section{padding:68px 0}.section-head{text-align:center;max-width:640px;margin:0 auto 44px}.section-head h2{font-size:clamp(26px,3.4vw,38px)}.section-head p{color:var(--text-muted);margin-top:12px;font-size:16px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}@media (max-width: 880px){.steps{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.steps{grid-template-columns:1fr}}.step{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;position:relative;box-shadow:var(--shadow-xs)}.step .num{width:34px;height:34px;border-radius:10px;background:var(--grad-brand-soft);color:var(--brand-700);font-weight:800;display:grid;place-items:center;margin-bottom:14px}.step h3{font-size:16px}.step p{color:var(--text-muted);font-size:14px;margin-top:6px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width: 880px){.features{grid-template-columns:1fr}}.feature{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:24px;box-shadow:var(--shadow-xs);transition:transform .15s ease,box-shadow .15s ease}.feature:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.feature .ico{width:46px;height:46px;border-radius:12px;background:var(--grad-brand-soft);color:var(--brand-600);display:grid;place-items:center;margin-bottom:16px}.feature .ico svg{width:22px;height:22px}.feature h3{font-size:17px}.feature p{color:var(--text-muted);font-size:14px;margin-top:8px}.cta-band{background:var(--grad-brand);border-radius:var(--r-xl);padding:48px;text-align:center;color:#fff;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.cta-band h2{font-size:clamp(24px,3vw,34px);color:#fff}.cta-band p{color:#ffffffd9;margin-top:10px;font-size:16px}.cta-band .btn-secondary{background:#fff;color:var(--brand-700);border-color:#fff}footer.site-footer{border-top:1px solid var(--border);padding:40px 0;margin-top:40px}footer.site-footer .container{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}footer.site-footer .muted{font-size:13px}.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}@media (max-width: 900px){.auth-wrap{grid-template-columns:1fr}}.auth-aside{position:relative;background:var(--grad-brand);color:#fff;padding:56px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}@media (max-width: 900px){.auth-aside{display:none}}.auth-aside:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 50% at 80% 90%,rgba(255,255,255,.18),transparent 60%)}.auth-aside .brand{color:#fff;z-index:1}.auth-aside .brand-mark{background:#ffffff2e;box-shadow:none}.auth-quote{z-index:1}.auth-quote h2{font-size:30px;color:#fff;line-height:1.2}.auth-quote p{color:#ffffffd1;margin-top:14px;font-size:15px;max-width:42ch}.auth-points{z-index:1;display:grid;gap:12px}.auth-points .pt{display:flex;align-items:center;gap:10px;font-size:14px}.auth-points svg{width:18px;height:18px}.auth-main{display:flex;align-items:center;justify-content:center;padding:32px 24px}.auth-card{width:100%;max-width:400px}.auth-card h1{font-size:26px}.auth-card .sub{color:var(--text-muted);margin-top:6px;margin-bottom:26px;font-size:15px}.auth-alt{text-align:center;margin-top:20px;font-size:14px;color:var(--text-muted)}.auth-alt a{color:var(--brand-600);font-weight:600}.field-pw-wrap{position:relative}.field-pw-wrap .toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);background:none;border:none;padding:6px;color:var(--text-faint);cursor:pointer}.onb{min-height:100vh;display:flex;flex-direction:column;background:var(--bg)}.onb-top{border-bottom:1px solid var(--border);background:var(--surface)}.onb-top .container{height:64px;display:flex;align-items:center;justify-content:space-between}.onb-body{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 20px}.onb-card{width:100%;max-width:560px}.onb-progress{display:flex;gap:8px;margin-bottom:28px}.onb-progress .seg{height:6px;border-radius:999px;background:var(--border);flex:1;transition:background .3s}.onb-progress .seg.on{background:var(--grad-brand)}.onb-step-ico{width:60px;height:60px;border-radius:16px;background:var(--grad-brand-soft);color:var(--brand-600);display:grid;place-items:center;margin-bottom:20px}.onb-step-ico svg{width:28px;height:28px}.onb h1{font-size:26px}.onb .lead{color:var(--text-muted);margin-top:8px;font-size:15px}.onb-list{display:grid;gap:12px;margin-top:24px}.onb-list .li{display:flex;gap:12px;padding:14px 16px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.onb-list .li svg{width:20px;height:20px;color:var(--brand-500);flex-shrink:0;margin-top:1px}.onb-list .li h4{font-size:14px}.onb-list .li p{font-size:13px;color:var(--text-muted)}.onb-actions{display:flex;justify-content:space-between;align-items:center;margin-top:32px;gap:12px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}@media (max-width: 480px){.choice-grid{grid-template-columns:1fr}}.choice{text-align:left;border:1.5px solid var(--border-strong);background:var(--surface);border-radius:var(--r-md);padding:16px;cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s;display:flex;gap:12px;align-items:flex-start}.choice:hover{border-color:var(--brand-400)}.choice.sel{border-color:var(--brand-500);background:var(--brand-50);box-shadow:0 0 0 4px var(--ring)}.choice svg{width:22px;height:22px;color:var(--brand-600)}.choice h4{font-size:14px}.choice p{font-size:12px;color:var(--text-muted)}.app{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:50;transition:transform .25s ease}.sidebar-brand{padding:18px 20px;border-bottom:1px solid var(--border)}.sidebar-nav{padding:14px 12px;display:flex;flex-direction:column;gap:4px;flex:1;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--r-md);color:var(--text-muted);font-size:14px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.nav-item svg{width:19px;height:19px}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--brand-50);color:var(--brand-700);font-weight:600}.nav-section{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-faint);padding:14px 12px 6px;font-weight:700}.sidebar-foot{padding:12px;border-top:1px solid var(--border)}.user-chip{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-md)}.avatar{width:34px;height:34px;border-radius:999px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px;flex-shrink:0}.user-chip .meta{min-width:0}.user-chip .meta .n{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-chip .meta .e{font-size:12px;color:var(--text-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main{flex:1;margin-left:var(--sidebar-w);min-width:0;display:flex;flex-direction:column}.topbar{height:var(--topbar-h);border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:12px;padding:0 24px}.topbar h1{font-size:18px}.topbar .sub{font-size:13px;color:var(--text-muted)}.content{padding:28px 24px 48px;max-width:1180px;width:100%;margin-inline:auto}.menu-btn,.sidebar-backdrop{display:none}@media (max-width: 900px){.sidebar{transform:translate(-100%);box-shadow:var(--shadow-xl)}.sidebar.open{transform:translate(0)}.main{margin-left:0}.menu-btn{display:inline-flex}.sidebar-backdrop.show{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:45}}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 900px){.stat-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.stat-grid{grid-template-columns:1fr}}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow-xs)}.stat .ico{width:40px;height:40px;border-radius:10px;background:var(--grad-brand-soft);color:var(--brand-600);display:grid;place-items:center;margin-bottom:14px}.stat .ico svg{width:20px;height:20px}.stat .val{font-size:28px;font-weight:800;letter-spacing:-.03em}.stat .lbl{font-size:13px;color:var(--text-muted);margin-top:2px}.ads-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:18px}.ad-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;transition:box-shadow .15s,transform .15s}.ad-card:hover{box-shadow:var(--shadow-md)}.ad-media{position:relative;aspect-ratio:16/9;background:var(--surface-2);overflow:hidden}.ad-media img{width:100%;height:100%;object-fit:cover}.ad-media .placeholder{width:100%;height:100%;display:grid;place-items:center;color:var(--text-faint);background:var(--grad-brand-soft)}.ad-media .placeholder svg{width:40px;height:40px}.ad-body{padding:16px;display:flex;flex-direction:column;gap:10px;flex:1}.ad-body .name{font-size:15px;font-weight:700}.ad-meta{display:flex;gap:8px;flex-wrap:wrap}.ad-qr-row{display:flex;gap:14px;align-items:center;margin-top:auto;padding-top:12px;border-top:1px solid var(--border)}.ad-qr{width:78px;height:78px;border-radius:var(--r-sm);background:#fff;padding:4px;border:1px solid var(--border);flex-shrink:0}.ad-links{display:flex;flex-direction:column;gap:6px;min-width:0}.ad-links a{font-size:13px;color:var(--brand-600);font-weight:500;display:inline-flex;align-items:center;gap:5px}.ad-links a svg{width:14px;height:14px}.url-chip{font-family:var(--font-mono);font-size:11px;color:var(--text-faint);word-break:break-all}.ad-actions{display:flex;gap:8px;padding:0 16px 16px}.empty{text-align:center;padding:56px 24px}.empty .ico{width:64px;height:64px;border-radius:18px;background:var(--grad-brand-soft);color:var(--brand-500);display:grid;place-items:center;margin:0 auto 18px}.empty .ico svg{width:30px;height:30px}.empty h3{font-size:18px}.empty p{color:var(--text-muted);margin-top:6px;max-width:40ch;margin-inline:auto}.progress{width:100%;height:8px;border-radius:999px;background:var(--surface-2);overflow:hidden;border:1px solid var(--border)}.progress .bar{height:100%;background:var(--grad-brand);transition:width .2s ease;border-radius:999px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;animation:fade .15s ease}.modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-xl);width:100%;max-width:440px;padding:24px;animation:pop .18s ease}.modal h3{font-size:18px}.modal p{color:var(--text-muted);margin-top:8px;font-size:14px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.toasts{position:fixed;bottom:20px;right:20px;z-index:200;display:flex;flex-direction:column;gap:10px;max-width:360px}.toast{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--brand-500);border-radius:var(--r-md);padding:12px 14px;box-shadow:var(--shadow-lg);display:flex;gap:10px;align-items:flex-start;animation:slidein .2s ease}.toast.ok{border-left-color:var(--success)}.toast.err{border-left-color:var(--danger)}.toast svg{width:18px;height:18px;flex-shrink:0;margin-top:1px}.toast.ok svg{color:var(--success)}.toast.err svg{color:var(--danger)}.toast.info svg{color:var(--brand-500)}.toast .msg{font-size:14px}@keyframes slidein{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:none}}.spinner{width:18px;height:18px;border:2px solid var(--border-strong);border-top-color:var(--brand-500);border-radius:999px;animation:spin .7s linear infinite}.spinner-lg{width:34px;height:34px;border-width:3px}@keyframes spin{to{transform:rotate(360deg)}}.page-loader{min-height:60vh;display:grid;place-items:center}.theme-toggle{background:none;border:1px solid var(--border-strong);border-radius:var(--r-md);padding:8px;color:var(--text-muted);cursor:pointer}.theme-toggle:hover{color:var(--text);background:var(--surface-2)}.theme-toggle svg{width:18px;height:18px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);will-change:opacity,transform}.reveal.in{opacity:1;transform:none}.hero{position:relative;overflow:clip}.hero-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5;z-index:-1;pointer-events:none}.hero-blob.b1{width:460px;height:460px;background:radial-gradient(circle,rgba(99,102,241,.55),transparent 70%);top:-140px;left:-80px;animation:blob1 16s ease-in-out infinite}.hero-blob.b2{width:520px;height:520px;background:radial-gradient(circle,rgba(168,85,247,.45),transparent 70%);top:-120px;right:-120px;animation:blob2 20s ease-in-out infinite}@keyframes blob1{0%,to{transform:translate(0) scale(1)}50%{transform:translate(40px,30px) scale(1.1)}}@keyframes blob2{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-50px,40px) scale(1.08)}}.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);font-size:13px;font-weight:600;color:var(--text-muted)}.hero-badge .live{width:8px;height:8px;border-radius:999px;background:#22c55e;box-shadow:0 0 #22c55e99;animation:livepulse 2s infinite}@keyframes livepulse{0%{box-shadow:0 0 #22c55e8c}70%{box-shadow:0 0 0 8px #22c55e00}to{box-shadow:0 0 #22c55e00}}.scan-demo{position:relative;display:flex;flex-direction:column;align-items:center;gap:26px;padding:10px}.demo-phone{position:relative;width:268px;aspect-ratio:9 / 18.6;border-radius:40px;padding:12px;background:linear-gradient(160deg,#23283f,#0b0d16);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-xl),0 0 0 2px #6366f11f;z-index:1}.demo-notch{position:absolute;top:16px;left:50%;transform:translate(-50%);width:92px;height:22px;background:#05060c;border-radius:999px;z-index:3}.demo-screen{position:relative;height:100%;border-radius:28px;overflow:hidden;background:radial-gradient(120% 90% at 50% 0%,#202544,#0a0c15 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px}.demo-status{position:absolute;top:18px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:7px;font-size:12px;color:#cdd3f2;z-index:4}.demo-status .dot{width:7px;height:7px;border-radius:999px;background:#6366f1;transition:background .3s}.phase-play .demo-status .dot{background:#22c55e}.demo-status-txt{font-weight:600;letter-spacing:.01em}.poster{position:relative;width:78%;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 18px 40px #00000073;transition:filter .5s ease,transform .5s ease;filter:saturate(.65) brightness(.82)}.phase-scan .poster{filter:saturate(.8) brightness(.9)}.phase-play .poster{filter:saturate(1.08) brightness(1.02);transform:scale(1.015)}.poster-art{position:relative;aspect-ratio:16 / 11;background:linear-gradient(135deg,#6366f1,#a855f7);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;overflow:hidden}.poster-shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(115deg,transparent 20%,rgba(255,255,255,.35) 45%,transparent 70%);background-size:220% 100%;opacity:0}.phase-play .poster-shimmer{opacity:1;animation:shimmer 1.6s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.poster-logo{color:#fff;font-weight:900;letter-spacing:.18em;font-size:20px;z-index:1}.poster-tag{color:#ffffffe6;font-size:9px;font-weight:700;letter-spacing:.24em;z-index:1}.poster-lines{padding:12px;display:flex;flex-direction:column;gap:6px;background:#fff}.poster-lines span{height:6px;border-radius:4px;background:#e2e6f2;display:block}.corner{position:absolute;width:22px;height:22px;border:3px solid #a855f7;opacity:0;transition:opacity .35s ease,transform .35s ease;z-index:2;box-shadow:0 0 10px #a855f7b3}.c-tl{top:8px;left:8px;border-right:0;border-bottom:0;border-radius:6px 0 0;transform:translate(6px,6px)}.c-tr{top:8px;right:8px;border-left:0;border-bottom:0;border-radius:0 6px 0 0;transform:translate(-6px,6px)}.c-bl{bottom:8px;left:8px;border-right:0;border-top:0;border-radius:0 0 0 6px;transform:translate(6px,-6px)}.c-br{bottom:8px;right:8px;border-left:0;border-top:0;border-radius:0 0 6px;transform:translate(-6px,-6px)}.phase-scan .corner,.phase-play .corner{opacity:1;transform:translate(0)}.scanline{position:absolute;left:4%;right:4%;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,#c084fc,transparent);box-shadow:0 0 16px 3px #c084fccc;opacity:0;z-index:2}.phase-scan .scanline{opacity:1;animation:scanmove 1.6s ease-in-out infinite}@keyframes scanmove{0%{top:6%}50%{top:88%}to{top:6%}}.play-layer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease;z-index:3}.phase-play .play-layer{opacity:1}.play-btn{width:56px;height:56px;border-radius:999px;border:none;background:#ffffffeb;color:var(--brand-700);display:grid;place-items:center;box-shadow:0 8px 26px #00000059}.play-btn svg{width:24px;height:24px;margin-left:3px}.phase-play .play-btn{animation:pop-in .4s ease both}@keyframes pop-in{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}.sound-ring{position:absolute;width:56px;height:56px;border-radius:999px;border:2px solid rgba(192,132,252,.7);opacity:0}.phase-play .sound-ring{animation:ring 1.8s ease-out infinite}.phase-play .sound-ring.r2{animation-delay:.9s}@keyframes ring{0%{transform:scale(1);opacity:.8}to{transform:scale(2.4);opacity:0}}.eq{position:absolute;bottom:30px;display:flex;align-items:flex-end;gap:4px;height:22px}.eq span{width:4px;background:#fff;border-radius:2px;height:30%}.phase-play .eq span{animation:eq .9s ease-in-out infinite}.phase-play .eq span:nth-child(2){animation-delay:.15s}.phase-play .eq span:nth-child(3){animation-delay:.3s}.phase-play .eq span:nth-child(4){animation-delay:.45s}.phase-play .eq span:nth-child(5){animation-delay:.6s}@keyframes eq{0%,to{height:25%}50%{height:100%}}.play-progress{position:absolute;bottom:14px;left:12%;right:12%;height:4px;border-radius:999px;background:#ffffff40;overflow:hidden}.play-progress span{display:block;height:100%;width:0;background:#fff;border-radius:999px}.phase-play .play-progress span{animation:fill 2.6s linear forwards}@keyframes fill{0%{width:0}to{width:100%}}.reticle{position:absolute;bottom:20px;display:inline-flex;align-items:center;gap:6px;background:#05060cb3;border:1px solid rgba(255,255,255,.12);color:#fff;font-size:12px;font-weight:600;padding:7px 13px;border-radius:999px;opacity:0;transition:opacity .3s;z-index:4}.phase-scan .reticle{opacity:1}.demo-chip{position:absolute;display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:var(--text);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-md);padding:8px 13px;border-radius:999px;z-index:2}.demo-chip svg{color:var(--brand-500)}.chip-a{top:14%;left:-6%;animation:floaty 5s ease-in-out infinite}.chip-b{top:46%;right:-10%;animation:floaty 6s ease-in-out infinite .6s}.chip-c{bottom:20%;left:-4%;animation:floaty 5.5s ease-in-out infinite 1.1s}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@media (max-width: 1040px){.chip-a,.chip-c{left:2%}.chip-b{right:0}}.demo-steps{display:flex;gap:8px;align-items:stretch;z-index:2;flex-wrap:wrap;justify-content:center}.demo-step{display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:12px;border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-xs);transition:border-color .3s,background .3s,transform .3s}.demo-step strong{display:block;font-size:12.5px;line-height:1.2}.demo-step em{font-style:normal;font-size:11px;color:var(--text-faint)}.demo-step-dot{width:22px;height:22px;border-radius:999px;display:grid;place-items:center;font-size:11px;font-weight:800;background:var(--surface-2);color:var(--text-muted);transition:background .3s,color .3s;flex-shrink:0}.demo-step.on{border-color:var(--brand-400);background:var(--brand-50);transform:translateY(-2px)}.demo-step.on .demo-step-dot{background:var(--grad-brand);color:#fff}.demo-step.done .demo-step-dot{background:var(--brand-200);color:var(--brand-700)}.storyboard{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;position:relative}@media (max-width: 820px){.storyboard{grid-template-columns:1fr}}.frame{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:22px;box-shadow:var(--shadow-xs);position:relative;overflow:hidden}.frame .frame-num{position:absolute;top:16px;right:18px;font-size:40px;font-weight:900;color:var(--surface-2);letter-spacing:-.04em}.frame .frame-ico{width:48px;height:48px;border-radius:13px;background:var(--grad-brand-soft);color:var(--brand-600);display:grid;place-items:center;margin-bottom:16px}.frame .frame-ico svg{width:24px;height:24px}.frame h3{font-size:17px}.frame p{color:var(--text-muted);font-size:14px;margin-top:8px}.frame .stage{margin-top:16px;height:96px;border-radius:12px;border:1px dashed var(--border-strong);position:relative;overflow:hidden;background:var(--surface-2);display:grid;place-items:center}.mini-poster{width:54px;height:68px;border-radius:6px;background:linear-gradient(135deg,#6366f1,#a855f7);box-shadow:var(--shadow-sm);position:relative}.mini-scan{position:absolute;left:10%;right:10%;height:2px;background:#c084fc;box-shadow:0 0 10px 2px #c084fccc;animation:scanmini 2s ease-in-out infinite}@keyframes scanmini{0%{top:20%}50%{top:80%}to{top:20%}}.mini-play{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.mini-play .pb{width:30px;height:30px;border-radius:999px;background:#ffffffeb;color:var(--brand-700);display:grid;place-items:center}.mini-play .pb svg{width:15px;height:15px;margin-left:2px}.mini-eq{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;gap:3px;align-items:flex-end;height:16px}.mini-eq span{width:3px;background:var(--brand-500);border-radius:2px;animation:eq 1s ease-in-out infinite}.mini-eq span:nth-child(2){animation-delay:.2s}.mini-eq span:nth-child(3){animation-delay:.4s}.mini-eq span:nth-child(4){animation-delay:.6s}.usecases{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 820px){.usecases{grid-template-columns:repeat(2,1fr)}}@media (max-width: 520px){.usecases{grid-template-columns:1fr}}.usecase{display:flex;gap:14px;padding:18px;border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-xs);transition:transform .18s ease,box-shadow .18s ease,border-color .18s}.usecase:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--brand-200)}.usecase .uc-ico{width:42px;height:42px;border-radius:11px;background:var(--grad-brand-soft);color:var(--brand-600);display:grid;place-items:center;flex-shrink:0}.usecase .uc-ico svg{width:21px;height:21px}.usecase h4{font-size:15px}.usecase p{font-size:13px;color:var(--text-muted);margin-top:3px}.value-band{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}@media (max-width: 720px){.value-band{grid-template-columns:1fr;gap:16px;text-align:center}}.value .v-ico{width:50px;height:50px;border-radius:14px;background:var(--grad-brand);color:#fff;display:grid;place-items:center;margin-bottom:14px;box-shadow:0 8px 20px #6366f159}@media (max-width: 720px){.value .v-ico{margin-inline:auto}}.value .v-ico svg{width:24px;height:24px}.value h3{font-size:18px}.value p{color:var(--text-muted);font-size:14px;margin-top:6px}@media (prefers-reduced-motion: reduce){.reveal{opacity:1!important;transform:none!important;transition:none}.hero-blob,.scanline,.poster-shimmer,.sound-ring,.eq span,.play-progress span,.demo-chip,.mini-scan,.mini-eq span,.hero-badge .live,.play-btn{animation:none!important}}
