:root{--bg:#05090f;--panel:#0b121d;--blue:#1787ff;--cyan:#31ddf7;--white:#f2f6ff;--muted:#92a1b7;--border:#1c293b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--white);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}.wrap{max-width:1240px;margin:auto;padding-left:44px;padding-right:44px}header{height:104px;display:flex;align-items:center;gap:34px;border-bottom:1px solid #ffffff0d}.brand{display:flex;align-items:center;gap:10px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:25px;font-weight:600;letter-spacing:-.8px}.brand img{height:47px;width:38px;object-fit:contain}.brand-light{font-weight:500}nav{display:flex;gap:27px;margin-left:auto;font-size:14px;color:#a9b5c6}nav a:hover,.text-link:hover{color:var(--cyan)}.button{display:inline-flex;justify-content:center;align-items:center;border-radius:8px;padding:15px 26px;border:1px solid transparent;font-weight:700;font-size:15px;transition:transform .2s,box-shadow .2s,background .2s;min-height:50px}.button:hover{transform:translateY(-2px)}.primary{background:var(--blue);color:white;box-shadow:0 8px 30px #0879ff22}.primary:hover{background:#3299ff;box-shadow:0 8px 35px #0879ff45}.outline{background:transparent;border-color:#324158;color:var(--white)}.outline:hover{background:#142033}.small{padding:10px 17px;font-size:14px;min-height:43px}.menu{display:none}.hero{min-height:740px;display:grid;grid-template-columns:1.12fr 1fr;align-items:center;position:relative}.eyebrow{font-size:12px;letter-spacing:2.4px;font-weight:700;color:var(--cyan);margin:0 0 23px}.hero .eyebrow{display:flex;gap:13px;align-items:center}.line{width:28px;height:1px;background:var(--cyan)}h1{font-size:clamp(52px,6.2vw,80px);line-height:1.07;letter-spacing:-4px;margin:0 0 26px;font-weight:800}h1 span,.closing h2 span{color:var(--blue)}.lead{color:#aebacf;font-size:19px;line-height:1.8;margin-bottom:30px}.actions{display:flex;gap:25px;align-items:center}.text-link{font-size:14px;border-bottom:1px solid #526075;padding-bottom:3px}.hero-meta{display:flex;flex-direction:column;gap:7px;color:#728199;font-size:12px;margin-top:43px}.hero-art{position:relative;text-align:center;align-self:stretch;display:flex;align-items:center;justify-content:center}.hero-art img{width:100%;max-width:540px;position:relative;z-index:1;animation:breathe 7s ease-in-out infinite;filter:saturate(.9)}.aura{position:absolute;width:80%;height:65%;background:radial-gradient(ellipse,#005bda21,transparent 68%);filter:blur(25px);animation:breathe 9s infinite}.coordinate{position:absolute;top:18%;right:0;font-size:11px;letter-spacing:2px;color:#517291}.art-caption{position:absolute;bottom:14%;font-size:10px;letter-spacing:3px;color:#6283a3}.section-line{display:flex;justify-content:space-between;color:#65768e;font-size:11px;letter-spacing:2px;border-top:1px solid var(--border);padding-top:22px}.section{padding-top:94px;padding-bottom:100px}h2{font-size:44px;letter-spacing:-1.8px;line-height:1.2;margin:0 0 25px;font-weight:700}h3{font-size:20px;line-height:1.4;letter-spacing:-.5px;margin:0 0 12px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:47px}.features article{position:relative;border-top:1px solid #29394c;padding-top:29px}.feature-number{font-size:12px;color:#5c7290;letter-spacing:2px}.symbol{color:var(--cyan);font-size:43px;line-height:1;margin:22px 0}.features p{color:var(--muted);font-size:15px;margin:0}.plans-section{background:linear-gradient(180deg,#0a111c,#080e18);border-block:1px solid #182335}.split{display:flex;justify-content:space-between;align-items:end;gap:25px}.muted{color:var(--muted);font-size:15px}.note{font-size:13px;margin-bottom:30px}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:33px}.plan{padding:35px 28px 28px;border:1px solid #243247;border-radius:14px;background:#0c1420;position:relative}.plan .eyebrow{color:#8ea7c7;font-size:11px;letter-spacing:2px;margin-bottom:15px}.plan h3{font-size:25px}.price{font-size:47px;font-weight:700;letter-spacing:-2px;line-height:1.4}.price span{font-size:25px;color:#8c9eb7}.plan ul{padding:22px 0 25px;list-style:none;border-top:1px solid #243247;margin:26px 0 0;font-size:13px;color:#b4c1d4}.plan li{margin:10px 0}.plan li:before{content:'✓';color:var(--cyan);margin-right:10px}.plan .button{width:100%;font-size:14px}.featured{border-color:#167ce6;background:linear-gradient(145deg,#102440,#0c1420 60%);box-shadow:0 0 50px #0978ff0b}.plan-label{position:absolute;top:-12px;left:25px;background:#1179ea;padding:3px 12px;border-radius:5px;font-size:9px;letter-spacing:1px}.setup{display:grid;grid-template-columns:1fr 1fr;gap:90px}.device-tabs{display:flex;gap:6px;background:#0d1522;border:1px solid #223047;border-radius:9px;padding:5px;width:max-content;margin-top:28px}.device-tabs button{border:0;background:transparent;color:#91a1b9;font-size:14px;padding:10px 19px;border-radius:5px}.device-tabs button[aria-selected=true]{background:#193555;color:#f0f7ff}.steps article{display:flex;gap:26px;border-bottom:1px solid #1b2a3c;padding:25px 0}.steps article:first-child{padding-top:4px}.steps article>span{color:#398fdf;font-size:14px;letter-spacing:2px;margin-top:5px}.steps p{font-size:14px;color:var(--muted);margin:0}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:80px;border-top:1px solid var(--border);padding-top:80px}.questions details{border-bottom:1px solid #243247;padding:23px 0}.questions details:first-child{padding-top:0}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;font-weight:600;font-size:16px}summary:after{content:'+';font-size:22px;color:var(--cyan);font-weight:400}details[open] summary:after{content:'−'}details p{color:var(--muted);font-size:14px;padding-right:30px}.closing{text-align:center;padding-top:40px;padding-bottom:110px;background:radial-gradient(ellipse at center,#0062de16,transparent 65%)}.closing h2{font-size:64px;line-height:1.12;letter-spacing:-3px;margin-bottom:33px}footer{border-top:1px solid var(--border);padding-top:30px;padding-bottom:35px;display:flex;align-items:center;gap:35px}footer .brand{font-size:20px}footer p,footer>span{color:#6d8099;font-size:12px}footer>span{margin-left:auto}dialog{background:#0e1928;color:var(--white);border:1px solid #2c4562;border-radius:16px;max-width:500px;width:calc(100% - 32px);padding:38px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#000a;backdrop-filter:blur(8px)}dialog h2{font-size:30px;letter-spacing:-1px}dialog p:not(.eyebrow){color:#aebcd0}dialog .button{margin-top:12px}.close{position:absolute;right:13px;top:7px;color:#adc0d9;background:none;border:0;font-size:29px}.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.reveal.visible{opacity:1;transform:none}@keyframes breathe{50%{transform:translateY(-9px);opacity:.88}}
@media(min-width:1450px){.hero{min-height:790px}}@media(max-width:960px){.wrap{padding-inline:28px}header{gap:18px}nav{gap:16px;font-size:13px}.brand{font-size:22px}header .small{font-size:12px;padding:10px}h1{font-size:62px}.hero{min-height:680px}.actions{gap:16px}.hero-art img{width:115%;max-width:none}.features{gap:24px}.plan{padding:30px 20px 22px}.setup{gap:45px}.faq{gap:40px}h2{font-size:37px}}@media(max-width:720px){.wrap{padding-inline:22px}header{height:80px;gap:12px;position:relative}.brand{font-size:21px}.brand img{width:29px;height:37px}header .small{margin-left:auto;font-size:11px;padding:8px 10px;min-height:38px}.menu{display:block;background:none;border:1px solid #26384b;border-radius:6px;color:white;padding:4px 10px;font-size:20px}header nav{display:none;position:absolute;top:79px;left:0;right:0;margin:0;padding:22px;background:#0b1523;z-index:10;border-bottom:1px solid #243247;font-size:15px}header nav.open{display:flex;flex-direction:column;gap:18px}.hero{grid-template-columns:1fr;padding-top:45px;min-height:0}.hero-copy{position:relative;z-index:2}h1{font-size:clamp(48px,11.4vw,70px);letter-spacing:-2.8px}.hero .eyebrow{font-size:10px;margin-bottom:22px}.lead{font-size:16px;margin-bottom:25px}.actions{gap:20px;flex-wrap:wrap}.button{padding:13px 20px;font-size:14px}.hero-meta{margin-top:25px;font-size:11px}.hero-art{height:370px;margin-top:6px}.hero-art img{height:370px;width:370px;max-width:100%;object-fit:contain}.coordinate{top:15%;font-size:9px;right:0}.art-caption{bottom:5%;font-size:8px;letter-spacing:2px}.section-line{font-size:9px;letter-spacing:1px;gap:15px;padding-top:17px}.section{padding-top:62px;padding-bottom:64px}h2{font-size:33px;letter-spacing:-1.3px}.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:18px}.features{grid-template-columns:1fr;gap:30px;margin-top:30px}.features article{padding-top:20px;display:grid;grid-template-columns:55px 1fr;column-gap:15px}.feature-number{grid-column:1/-1;margin-bottom:14px}.symbol{grid-column:1;grid-row:2/4;margin:0;font-size:36px}.features h3,.features p{grid-column:2}.features p{font-size:14px}.split{display:block}.note{margin:0 0 30px;font-size:12px}.plans{grid-template-columns:1fr;gap:26px;margin-top:35px}.plan{padding:28px}.price{font-size:43px}.plan ul{font-size:14px;padding-bottom:20px}.plan-label{font-size:9px}.setup,.faq{grid-template-columns:1fr;gap:30px}.setup h2{margin-bottom:20px}.setup .muted br{display:none}.steps article{padding-block:22px}.questions details{padding:19px 0}summary{font-size:15px}.closing{padding-top:20px;padding-bottom:65px}.closing h2{font-size:50px}footer{flex-wrap:wrap;gap:10px 25px;padding-top:24px;padding-bottom:28px}footer p{margin:0}footer>span{margin:0;width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.closing{display:none!important}.hero-art img{filter:saturate(.78) brightness(.9);opacity:.92}.hero-art .aura{opacity:.45;background:radial-gradient(ellipse,#0069d918,transparent 66%);filter:blur(18px)}.symbol{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:700;color:var(--cyan)}
header .brand{font-size:46px;gap:14px;flex-shrink:0}header .brand img{width:65px;height:82px}header{gap:24px;height:120px}header nav{gap:20px}header .brand-light{font-weight:500}@media(max-width:1100px) and (min-width:721px){header{flex-wrap:wrap;height:auto;padding-block:18px;gap:14px 24px}header nav{order:4;width:100%;justify-content:center;margin:0}header .small{margin-left:auto}header .brand{font-size:42px}header .brand img{width:58px;height:72px}}@media(max-width:720px){header{height:auto;min-height:132px;display:grid;grid-template-columns:1fr auto;gap:8px 12px;padding-block:10px}header .brand{grid-column:1/-1;font-size:36px;gap:8px;justify-content:center}header .brand img{width:45px;height:56px}header .small{grid-column:1;grid-row:2;margin:0;justify-self:start;font-size:13px;padding:9px 15px;min-height:42px}header .menu{grid-column:2;grid-row:2;min-height:42px}header nav{top:100%;left:0;right:0}header nav.open{display:flex}}@media(max-width:360px){header .brand{font-size:32px}header .brand img{width:39px;height:49px}}

footer .legal-links{display:flex;position:static;flex:0 0 100%;gap:12px 24px;flex-wrap:wrap;font-size:14px;line-height:1.6;width:100%;margin:18px 0 0;padding:22px 0 0;border-top:1px solid var(--border);background:transparent}.legal-links a{color:#9acbe6}footer{flex-wrap:wrap}

/* Existing Flask application. No remote fonts or analytics. */
:root{color-scheme:dark}body{overflow-wrap:break-word}img{max-width:100%;height:auto}main{min-width:0}.site-header{max-width:1240px;width:100%;margin:auto;position:relative;z-index:5}.site-header .brand{white-space:nowrap}.site-header nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.site-header .session-nav{margin-left:auto}.brand img{width:52px;height:64px;object-fit:contain}.site-header .button{white-space:nowrap}.site-header .menu{display:none}.site-footer{height:auto!important;display:flex;align-items:start;flex-wrap:wrap;gap:24px;padding-top:40px;padding-bottom:40px;margin-top:40px;border-top:1px solid var(--border)}.site-footer .legal-links{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;flex-basis:100%}.site-footer span[aria-disabled]{color:var(--muted)}.site-footer p{margin:0}.app-main{max-width:1200px;margin:auto;padding:44px;min-height:55vh}.app-main.narrow{max-width:600px}.app-main h1{font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-1px;margin:0 0 16px}.app-main h2{font-size:24px;line-height:1.3;letter-spacing:-.4px;margin:0 0 14px}.app-main h3{font-size:18px}.card,.panel{background:var(--panel);border:1px solid var(--border);border-radius:18px;padding:24px;margin:18px 0;min-width:0}.card>p:first-child{margin-top:0}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.cards .card{margin:0}.button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:650;text-align:center}.button.secondary,.button.outline{color:var(--white);background:#111c2a;border:1px solid #30445f}.button:disabled,button[disabled]{cursor:not-allowed;opacity:.6;box-shadow:none}.beta{display:inline-flex;font-size:11px;letter-spacing:.1em;font-weight:700;color:var(--cyan);border:1px solid #22566c;background:#0b202c;border-radius:999px;padding:5px 10px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;border:1px solid var(--border);font-size:12px;background:#132033;color:#c6d4ea}.badge.active,.badge.ready{background:#102b23;border-color:#235740;color:#88e5b4}.badge.expired,.badge.revoked,.badge.error{background:#351e28;border-color:#684048;color:#ffb3ba}.muted,.label,small{color:var(--muted)}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.field{margin:16px 0}.field label{display:block;margin-bottom:7px;font-size:14px;color:#b4c2d5}.field input,.field select,.field textarea,input[readonly],.app-main select,.app-main textarea,.app-main input:not([type=checkbox]):not([type=hidden]):not([type=radio]){background:#080f1a;border:1px solid #2a3c53;color:var(--white);border-radius:10px;padding:12px;width:100%;font:inherit;min-height:46px;max-width:100%;box-sizing:border-box}.field input:focus,.field select:focus{outline:2px solid var(--blue);outline-offset:2px}.password-field{position:relative}.password-field input{padding-right:54px!important}.password-toggle{position:absolute;right:7px;top:7px;min-width:36px;height:34px;border:0;border-radius:7px;background:transparent;color:var(--muted)}.password-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}.password-toggle .icon-eye-off{display:none}.password-toggle[aria-pressed=true] .icon-eye{display:none}.password-toggle[aria-pressed=true] .icon-eye-off{display:block}.auth-card{margin:20px auto 0;max-width:450px}.auth-card .button[type=submit]{width:100%;margin-top:10px}.auth-card .bottom{font-size:13px;margin-top:20px}.error,.alert{padding:14px;border:1px solid #6c3d46;border-radius:10px;background:#2b1721;color:#ffb5bf}.data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.data-grid div{min-width:0}.data-grid dt{font-size:12px;color:var(--muted)}.data-grid dd{margin:4px 0 0;overflow-wrap:anywhere}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:end}.filters .field{margin:0}.table-wrap{overflow:auto}.users{border-collapse:collapse;width:100%;font-size:14px}.users td,.users th{padding:16px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.users th{font-size:11px;color:var(--muted);letter-spacing:.07em;text-transform:uppercase}.users .user-link{font-weight:650;color:var(--white)}.users .muted{font-size:12px}.pager{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:24px}.state-line{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.lead-small{font-size:18px;color:var(--muted)}.qr-image{background:white;padding:14px;border-radius:14px;max-width:300px}.app-main form label{margin:10px 0;display:block}.app-main form button:not(.password-toggle){min-height:44px;padding:10px 18px;border-radius:10px;border:1px solid #304a6d;background:#176bcb;color:white;font:inherit;cursor:pointer}.app-main form button:disabled{cursor:not-allowed}.app-main article,.app-main section{min-width:0}.app-main form input[type=hidden]{display:none}.app-main input[readonly]{overflow:hidden}#subscription-qr{background:white;padding:12px;max-width:320px}.site-footer a:hover,.app-main a:not(.button):hover{text-decoration:underline}.beta-panel{border-color:#22516e}.hero-art img{object-fit:contain}.hero-meta{max-width:100%;flex-wrap:wrap}.skip-link{position:absolute;left:16px;top:-90px;z-index:50;background:#1687ff;padding:12px}.skip-link:focus{top:10px}.legal-status{display:grid;gap:12px}.legal-status li{padding:12px;border-bottom:1px solid var(--border)}
@media(max-width:760px){.wrap{padding-left:20px;padding-right:20px}.site-header{height:auto;min-height:82px;padding-top:12px;padding-bottom:12px;gap:12px;flex-wrap:wrap}.site-header .brand{font-size:22px}.site-header .brand img{width:36px;height:45px}.site-header nav{display:none!important;width:100%;order:4;gap:12px;flex-direction:column;align-items:stretch;margin:0}.site-header nav.is-open{display:flex!important}.site-header .menu{display:block;margin-left:auto;width:44px;height:44px;border-radius:10px;border:1px solid var(--border);color:var(--white);background:var(--panel)}.site-header .session-nav{margin-left:auto}.site-header .session-nav .button{padding:10px 14px;font-size:13px}.app-main{padding:28px 18px}.cards,.data-grid{grid-template-columns:1fr}.card,.panel{padding:20px}.filters{grid-template-columns:1fr 1fr}.filters .search{grid-column:1/-1}.users,.users tbody,.users tr,.users td{display:block;width:100%;min-width:0}.users thead{display:none}.users tr{border-bottom:1px solid var(--border);padding:12px 0}.users td{border:0;padding:7px 0;display:flex;justify-content:space-between;gap:16px;text-align:right;overflow-wrap:anywhere}.users td:before{content:attr(data-label);font-size:12px;color:var(--muted);text-align:left;flex-shrink:0}.users td:first-child{display:block;text-align:left}.users td:first-child:before{display:none}.site-footer{margin-top:20px;gap:14px}.site-footer .legal-links{flex-direction:column;gap:9px}.hero h1{font-size:clamp(48px,11vw,80px)}.hero{padding-top:46px;gap:20px}.hero-art{min-height:280px;height:320px}.hero-art img{max-height:310px}.hero-meta{font-size:11px}.app-main .actions>.button{flex:1 1 auto}.header,.top{flex-wrap:wrap}input,select,textarea{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
