@import "https://fonts.googleapis.com/css2?family=Sora:wght@600;700;800&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--bg:#f4f5f7;--surface:#fff;--surface-2:#eceef2;--border:#dde1e8;--text:#1b1d22;--muted:#666b75;--accent:#4f7bab;--accent-strong:#395d84;--accent-soft:#e3eaf4;--accent-contrast:#fff;--danger:#bf3b2c;--danger-soft:#fbeae6;--success:#2f7d4f;--success-soft:#e6f3ea;--shadow:0 1px 2px #14161a0d, 0 12px 30px -16px #14161a2e;--sidebar-bg:#202226;--sidebar-text:#f0f1f3;--sidebar-muted:#8f939c;--sidebar-border:#ffffff14}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1c1d21;--surface:#232429;--surface-2:#2a2c32;--border:#383a42;--text:#f2f3f5;--muted:#9096a1;--accent:#82a9d9;--accent-strong:#aecaeb;--accent-soft:#82a9d929;--accent-contrast:#10131a;--danger:#e2685a;--danger-soft:#e2685a24;--success:#4fae78;--success-soft:#4fae7824;--shadow:0 1px 2px #00000059, 0 12px 30px -16px #0009;--sidebar-bg:#16171a;--sidebar-text:#f0f1f3;--sidebar-muted:#82868f;--sidebar-border:#ffffff12}}:root[data-theme=dark]{--bg:#1c1d21;--surface:#232429;--surface-2:#2a2c32;--border:#383a42;--text:#f2f3f5;--muted:#9096a1;--accent:#82a9d9;--accent-strong:#aecaeb;--accent-soft:#82a9d929;--accent-contrast:#10131a;--danger:#e2685a;--danger-soft:#e2685a24;--success:#4fae78;--success-soft:#4fae7824;--shadow:0 1px 2px #00000059, 0 12px 30px -16px #0009;--sidebar-bg:#16171a;--sidebar-text:#f0f1f3;--sidebar-muted:#82868f;--sidebar-border:#ffffff12}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,system-ui,sans-serif}h1,h2,h3,.brand-word{letter-spacing:-.01em;font-family:Sora,sans-serif}code,.mono{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,ui-monospace,monospace}button{cursor:pointer;font-family:inherit}input,select{font-family:inherit}a{color:var(--accent-strong)}.auth-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:18px;flex-direction:column;gap:14px;padding:40px 34px;display:flex}.auth-logo{color:var(--text);align-items:center;gap:8px;font-family:Sora,sans-serif;font-size:23px;font-weight:700;display:flex}.auth-logo .dot{color:var(--accent)}.auth-sub{color:var(--muted);margin:-8px 0 6px;font-size:14px}.auth-card label{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;display:flex}.auth-card input{border:1px solid var(--border);background:var(--bg);height:44px;color:var(--text);border-radius:10px;padding:0 13px;font-size:14.5px}.auth-card input:focus{outline:2px solid var(--accent);outline-offset:1px}.auth-card button[type=submit]{background:var(--accent);height:46px;color:var(--accent-contrast);border:none;border-radius:10px;margin-top:6px;font-size:14.5px;font-weight:700}.auth-card button[type=submit]:disabled{opacity:.6}.auth-error{background:var(--danger-soft);color:var(--danger);border-radius:9px;padding:10px 13px;font-size:13px}.btn-link{color:inherit;font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit}.auth-switch{text-align:center;color:var(--muted);margin:0;font-size:13px}.auth-switch button{color:var(--accent-strong);background:0 0;border:none;padding:0;font-size:13px;font-weight:700}.loading-shell{min-height:100vh;color:var(--muted);background:var(--bg);justify-content:center;align-items:center;display:flex}.screen-transition{animation:.42s cubic-bezier(.16,1,.3,1) both screen-enter}@keyframes screen-enter{0%{opacity:0;transform:translateY(10px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.screen-transition{animation:.15s both screen-enter-reduced}}@keyframes screen-enter-reduced{0%{opacity:0}to{opacity:1}}.app-shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}@media (width<=860px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);flex-direction:column;height:100vh;padding:22px 16px;display:flex;position:sticky;top:0}.sidebar-logo{align-items:center;gap:8px;padding:6px 10px 20px;font-family:Sora,sans-serif;font-size:19px;font-weight:700;display:flex}.sidebar-logo .dot{color:var(--accent)}.sidebar-nav{flex-direction:column;flex:1;gap:3px;display:flex}.sidebar-nav button{color:var(--sidebar-muted);text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;padding:10px 12px;font-size:13.5px;font-weight:600;display:flex}.sidebar-nav button.active{background:var(--accent-soft);color:var(--accent-strong)}.sidebar-nav button:hover:not(.active){color:var(--sidebar-text);background:#ffffff0d}.sidebar-foot{border-top:1px solid var(--sidebar-border);flex-direction:column;gap:8px;padding-top:14px;display:flex}.sidebar-user{color:var(--sidebar-muted);text-overflow:ellipsis;white-space:nowrap;padding:0 10px;font-size:12px;overflow:hidden}.sidebar-foot button{color:var(--sidebar-muted);text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:9px 10px;font-size:13px;font-weight:600;display:flex}.sidebar-foot button:hover{color:var(--sidebar-text);background:#ffffff0d}.main{min-width:0}.topbar{display:none}@media (width<=860px){.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:5;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:sticky;top:0}}.main-content{max-width:1080px;margin:0 auto;padding:36px 32px 100px}@media (width<=640px){.main-content{padding:22px 16px 80px}}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:26px;display:flex}.page-head h1{margin:0 0 4px;font-size:24px;font-weight:700}.page-head p{color:var(--muted);max-width:56ch;margin:0;font-size:14px}.btn{border:1px solid #0000;border-radius:10px;align-items:center;gap:7px;height:38px;padding:0 16px;font-size:13.5px;font-weight:700;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-contrast)}.btn-secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn-ghost{border-color:var(--border);color:var(--muted);background:0 0}.btn-danger-ghost{background:var(--danger-soft);color:var(--danger);border:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-icon{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-strong);border:none;border-radius:8px;justify-content:center;padding:0}.card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px}.stat-row{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:26px;display:grid}@media (width<=640px){.stat-row{grid-template-columns:1fr}}.stat-tile{padding:16px 18px}.stat-tile .k{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:6px;font-size:11.5px;font-weight:700}.stat-tile .v{font-family:Sora,sans-serif;font-size:26px;font-weight:700}.toolbar{flex-wrap:wrap;gap:10px;margin-bottom:20px;display:flex}.panel{margin-bottom:22px;padding:22px 24px}.panel h3{margin:0 0 4px;font-size:15.5px;font-weight:700}.panel .panel-sub{color:var(--muted);max-width:60ch;margin:0 0 16px;font-size:13px}.field{color:var(--muted);text-transform:uppercase;letter-spacing:.03em;flex-direction:column;gap:6px;margin-bottom:12px;font-size:12.5px;font-weight:600;display:flex}.field input,.field select{border:1px solid var(--border);background:var(--bg);height:40px;color:var(--text);text-transform:none;letter-spacing:normal;border-radius:9px;padding:0 12px;font-size:14px;font-weight:400}.field input:focus,.field select:focus{outline:2px solid var(--accent);outline-offset:1px}.grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}@media (width<=720px){.grid{grid-template-columns:1fr}}.code-card{gap:14px;padding:18px;display:flex}.code-card.blank{border-style:dashed;border-color:var(--muted)}.code-card .qr-thumb{border:1px solid var(--border);background:#fff;border-radius:10px;flex-shrink:0;padding:6px}.code-card-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.code-card-title{flex-wrap:wrap;align-items:center;gap:8px;font-family:Sora,sans-serif;font-size:15px;font-weight:700;display:flex}.code-card-title.muted,.empty-label{color:var(--muted);font-style:italic;font-weight:500}.code-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;padding:3px 8px;font-family:Inter,sans-serif;font-size:10px;font-weight:700}.code-badge.danger{background:var(--danger-soft);color:var(--danger)}.code-row{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.code-dest{color:var(--accent-strong);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:12.5px;text-decoration:none;display:inline-flex;overflow:hidden}.code-stats{color:var(--muted);margin:2px 0 4px;font-size:12px}.code-actions{flex-wrap:wrap;gap:7px;margin-top:auto;display:flex}.pill-btn{background:var(--accent-soft);height:27px;color:var(--accent-strong);border:none;border-radius:7px;align-items:center;gap:5px;padding:0 10px;font-size:11.5px;font-weight:700;display:inline-flex}.pill-btn.danger{background:var(--danger-soft);color:var(--danger)}.icon-btn{background:var(--accent-soft);width:26px;height:26px;color:var(--accent-strong);border:none;border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.checklist-box{border:1px solid var(--border);border-radius:10px;max-height:220px;margin-bottom:16px;overflow-y:auto}.checklist-row{border-bottom:1px solid var(--border);cursor:pointer;align-items:center;gap:10px;padding:9px 14px;font-size:13px;display:flex}.checklist-row:last-child{border-bottom:none}.empty-state{text-align:center;color:var(--muted);padding:32px}.theme-toggle{color:var(--sidebar-muted);background:0 0;border:none;border-radius:9px;align-items:center;gap:8px;padding:9px 10px;font-size:13px;font-weight:600;display:flex}.theme-toggle:hover{color:var(--sidebar-text);background:#ffffff0d}.toast{background:var(--text);color:var(--bg);box-shadow:var(--shadow);z-index:50;border-radius:999px;padding:11px 22px;font-size:13.5px;font-weight:600;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);transform:translateY(22px)}.reveal-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}.landing{background:var(--bg);color:var(--text)}.landing-nav{justify-content:space-between;align-items:center;max-width:1120px;margin:0 auto;padding:22px 24px;display:flex}.landing-nav .logo{align-items:center;gap:8px;font-family:Sora,sans-serif;font-size:19px;font-weight:700;display:flex}.landing-nav .logo .dot{color:var(--accent)}.landing-nav-links{align-items:center;gap:22px;display:flex}.landing-nav-links a{color:var(--muted);font-size:14px;font-weight:600;text-decoration:none}.landing-nav-links a:hover{color:var(--text)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;max-width:1120px;margin:0 auto;padding:56px 24px 40px;display:grid}@media (width<=900px){.hero{grid-template-columns:1fr;gap:36px;padding-top:24px}}.hero .eyebrow{color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;align-items:center;gap:7px;margin-bottom:20px;padding:6px 13px;font-size:12.5px;font-weight:700;display:inline-flex}.hero h1{letter-spacing:-.02em;text-wrap:balance;margin:0 0 18px;font-family:Sora,sans-serif;font-size:clamp(32px,4.4vw,46px);font-weight:700;line-height:1.12}.hero h1 .hl{color:var(--accent-strong)}.hero .lede{color:var(--muted);max-width:46ch;margin:0 0 28px;font-size:17px;line-height:1.55}.hero-ctas{flex-wrap:wrap;gap:12px;margin-bottom:18px;display:flex}.hero-ctas .btn{border-radius:11px;height:48px;padding:0 24px;font-size:14.5px}.hero-note{color:var(--muted);font-size:12.5px}.hero-visual{justify-content:center;display:flex;position:relative}.scan-card{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:22px;flex-direction:column;align-items:center;gap:18px;width:100%;max-width:320px;padding:22px;display:flex}.scan-url-bar{background:var(--surface-2);border:1px solid var(--border);width:100%;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;border-radius:9px;align-items:center;gap:8px;padding:8px 12px;font-family:JetBrains Mono,monospace;font-size:11px;display:flex;overflow:hidden}.scan-url-bar .url-dot{background:var(--success);border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.6s ease-in-out infinite ping-pulse}.scan-qr-wrap{width:168px;height:168px;box-shadow:0 0 0 1px var(--border);background:#fff;border-radius:14px;padding:14px;position:relative;overflow:hidden}.scan-qr-img{width:100%;height:100%;display:block}.scan-line{background:linear-gradient(90deg, transparent, var(--accent), transparent);height:2px;box-shadow:0 0 10px 1px var(--accent);animation:2.6s cubic-bezier(.45,0,.55,1) infinite scan-sweep;position:absolute;left:6%;right:6%}@keyframes scan-sweep{0%,8%{opacity:0;top:8%}15%{opacity:1}50%{opacity:1;top:92%}58%,to{opacity:0;top:92%}}.scan-destination{text-align:center;min-height:44px}.scan-destination .scan-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;font-size:11px;display:block}.demo-destination{color:var(--accent-strong);font-family:Sora,sans-serif;font-size:16px;font-weight:700;animation:.45s both demo-fade-slide;display:block}@keyframes demo-fade-slide{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.hero-badge-live{background:var(--success-soft);color:var(--success);border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:11.5px;font-weight:700;display:flex;position:absolute;top:-12px;right:8px}.hero-badge-live .ping{background:var(--success);border-radius:50%;width:7px;height:7px;animation:1.6s ease-in-out infinite ping-pulse}@keyframes ping-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.75)}}.video-frame{border:1px solid var(--border);max-width:860px;box-shadow:var(--shadow);aspect-ratio:16/9;background:var(--surface-2);border-radius:16px;margin:0 auto;overflow:hidden}.video-frame iframe{border:none;width:100%;height:100%;display:block}.video-placeholder{width:100%;height:100%;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex}.video-placeholder .play-btn{background:var(--accent-soft);width:60px;height:60px;color:var(--accent-strong);border-radius:50%;justify-content:center;align-items:center;display:flex}.video-placeholder p{margin:0;font-size:13.5px;font-weight:600}.section{max-width:1120px;margin:0 auto;padding:68px 24px}.section-head{text-align:center;max-width:640px;margin:0 auto 44px}.section-head .eyebrow{text-transform:uppercase;letter-spacing:.06em;color:var(--accent-strong);margin-bottom:10px;font-size:12px;font-weight:700;display:inline-block}.section-head h2{text-wrap:balance;margin:0 0 12px;font-family:Sora,sans-serif;font-size:clamp(24px,3vw,32px);font-weight:700}.section-head p{color:var(--muted);margin:0;font-size:15.5px}.steps{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}@media (width<=800px){.steps{grid-template-columns:1fr}}.step-card{padding:26px 24px}.step-card .n{color:var(--accent-strong);background:var(--accent-soft);border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;margin-bottom:16px;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700;display:flex}.step-card h3{margin:0 0 8px;font-size:16px}.step-card p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.55}.feature-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}@media (width<=900px){.feature-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.feature-grid{grid-template-columns:1fr}}.feature-card{padding:24px 22px}.feature-card .icon-tile{background:var(--accent-soft);width:40px;height:40px;color:var(--accent-strong);border-radius:10px;justify-content:center;align-items:center;margin-bottom:16px;display:flex}.feature-card h3{margin:0 0 7px;font-size:15.5px}.feature-card p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.55}.compare-table-wrap{overflow-x:auto}.compare-table{border-collapse:collapse;width:100%;font-size:14px}.compare-table th,.compare-table td{text-align:left;border-bottom:1px solid var(--border);padding:14px 16px}.compare-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);background:var(--surface-2);font-size:11.5px}.compare-table td.yes{color:var(--success);font-weight:700}.compare-table td.no{color:var(--muted)}.compare-table tr.highlight td{background:var(--accent-soft);color:var(--accent-strong);font-weight:700}.compare-table tr.highlight td:first-child{border-radius:10px 0 0 10px}.compare-table tr.highlight td:last-child{border-radius:0 10px 10px 0}.compare-badge{background:var(--accent);color:var(--accent-contrast);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;margin-left:9px;padding:3px 9px;font-size:10px;font-weight:700;display:inline-flex}.compare-check{color:var(--success);align-items:center;gap:5px;display:inline-flex}.compare-note{color:var(--muted);margin:14px 2px 0;font-size:12px;line-height:1.6}.pricing-grid{grid-template-columns:repeat(2,1fr);align-items:start;gap:20px;max-width:720px;margin:0 auto;display:grid}@media (width<=640px){.pricing-grid{grid-template-columns:1fr}}.pricing-card{text-align:center;border:1px solid var(--border);width:100%;padding:32px 28px;position:relative}.pricing-card.featured{border:1.5px solid var(--accent);box-shadow:0 14px 34px -16px var(--accent)}.pricing-card .best-value-tag{background:var(--accent);color:var(--accent-contrast);white-space:nowrap;border-radius:999px;padding:4px 13px;font-size:11px;font-weight:700;position:absolute;top:-13px;left:50%;transform:translate(-50%)}.pricing-card .plan-label{color:var(--accent-strong);text-transform:uppercase;letter-spacing:.05em;font-size:12.5px;font-weight:700}.pricing-card .price{margin:12px 0 4px;font-family:Sora,sans-serif;font-size:38px;font-weight:700}.pricing-card .price span{color:var(--muted);font-size:14px;font-weight:500}.pricing-card .price-note{color:var(--success);margin-bottom:4px;font-size:12.5px;font-weight:600}.pricing-card ul{text-align:left;flex-direction:column;gap:9px;margin:20px 0;padding:0;font-size:13px;list-style:none;display:flex}.pricing-card ul li{align-items:center;gap:9px;display:flex}.pricing-card ul li .check{color:var(--success);flex-shrink:0}.faq-item{border-bottom:1px solid var(--border);cursor:pointer;padding:18px 0}.faq-item:first-child{border-top:1px solid var(--border)}.faq-q{justify-content:space-between;align-items:center;gap:16px;font-size:15px;font-weight:600;display:flex}.faq-a{color:var(--muted);max-width:68ch;margin-top:10px;font-size:14px;line-height:1.6}.final-cta{background:var(--sidebar-bg);color:var(--sidebar-text);text-align:center;border-radius:24px;max-width:1120px;margin:0 auto 68px;padding:60px 40px}.final-cta h2{margin:0 0 14px;font-family:Sora,sans-serif;font-size:clamp(24px,3.4vw,34px)}.final-cta p{color:var(--sidebar-muted);margin:0 0 28px;font-size:15.5px}.landing-footer{border-top:1px solid var(--border);text-align:center;color:var(--muted);flex-direction:column;align-items:center;gap:8px;padding:28px 24px;font-size:13px;display:flex}.landing-footer-links{gap:16px;display:flex}.landing-footer-links a{color:var(--muted);text-decoration:none}.landing-footer-links a:hover{color:var(--accent-strong);text-decoration:underline}.landing .card{transition:transform .22s,box-shadow .22s,border-color .22s}.landing .step-card:hover,.landing .feature-card:hover{border-color:var(--accent);transform:translateY(-3px)}.landing .btn{transition:transform .15s,filter .15s,box-shadow .15s}.landing .btn-primary:hover{filter:brightness(1.08);box-shadow:0 6px 18px -6px var(--accent)}.landing .btn-secondary:hover,.landing .btn-ghost:hover{border-color:var(--accent);color:var(--accent-strong)}.landing-nav-links a{position:relative}.landing-nav-links a:after{content:"";background:var(--accent);height:2px;transition:right .22s;position:absolute;bottom:-3px;left:0;right:100%}.landing-nav-links a:hover:after{right:0}.pricing-card{transition:transform .22s}.pricing-card:hover{transform:translateY(-4px)}
