/* Lynx glass tokens. Opaque surfaces are the baseline; blur is progressive. */
:root{color-scheme:dark;--bg:#09111e;--sidebar:#101c2e;--panel:#142137;--panel2:#1b2a43;--surface:#142137;--surface-high:#1b2a43;--glass:rgba(21,35,57,.76);--glass-high:rgba(34,49,77,.8);--line:rgba(185,207,247,.18);--shine:rgba(224,236,255,.14);--text:#edf3ff;--muted:#b0bdd3;--accent:#b2c7ff;--accent2:#8bdedb;--action:#b2c7ff;--action-text:#102140;--good:#8ee3c3;--warn:#f5d19b;--bad:#ffafbc;--shadow:0 16px 44px rgba(0,7,23,.18);--radius:24px;--ease:cubic-bezier(.2,.7,.2,1)}
@media(prefers-color-scheme:light){:root{color-scheme:light;--bg:#edf2fa;--sidebar:#f6f9fe;--panel:#f9fbff;--panel2:#e8effa;--surface:#f9fbff;--surface-high:#e8effa;--glass:rgba(250,253,255,.8);--glass-high:rgba(230,239,253,.86);--line:rgba(31,63,112,.18);--shine:rgba(255,255,255,.9);--text:#172640;--muted:#53627b;--accent:#365bba;--accent2:#137e81;--action:#3156bb;--action-text:#fff;--good:#176b51;--warn:#8a5813;--bad:#ac2948;--shadow:0 16px 44px rgba(42,67,108,.08)}}
html{scroll-behavior:smooth;scrollbar-gutter:stable;-webkit-text-size-adjust:100%}
*,*:before,*:after{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at 8% 0%,rgba(112,145,228,.16),transparent 45%),radial-gradient(ellipse at 100% 45%,rgba(108,193,191,.08),transparent 46%),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}
a{color:inherit;text-underline-offset:4px}button{cursor:pointer}button:disabled{cursor:not-allowed}
[hidden],.hidden{display:none!important}.muted,.tiny,.meta{color:var(--muted)}
h1,h2,h3{color:var(--text);text-wrap:balance;line-height:1.2}p{line-height:1.7}::selection{background:rgba(131,166,245,.35)}
:is(button,a,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
:is(.btn,.button,.logout,.icon-button){position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;border:1px solid transparent;border-radius:15px;padding:11px 20px;background:var(--action);color:var(--action-text);text-decoration:none;font-weight:650;letter-spacing:-.015em;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 5px 16px rgba(0,9,30,.08);transition:transform .18s var(--ease),background .18s,border-color .18s,box-shadow .18s,opacity .18s;isolation:isolate}
:is(.btn,.button).secondary,.logout,.icon-button{background:var(--surface-high);border-color:var(--line);color:var(--text);box-shadow:inset 0 1px 0 var(--shine)}
:is(.btn,.button).danger{background:rgba(170,52,76,.12);border-color:rgba(215,99,125,.36);color:var(--bad)}
:is(.btn,.button).good{background:rgba(45,159,125,.12);border-color:rgba(65,163,134,.3);color:var(--good)}
@media(hover:hover){:is(.btn,.button,.logout,.icon-button):not(:disabled):not([aria-busy=true]):hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 var(--shine),0 8px 22px rgba(0,9,30,.15);filter:none;border-color:var(--accent)}}
:is(.btn,.button,.logout,.icon-button):not(:disabled):active{transform:translateY(0) scale(.98)}
:is(.btn,.button,.logout,.icon-button):disabled,:is(.btn,.button)[aria-disabled=true]{opacity:.46;filter:none;transform:none;box-shadow:none}
:is(.btn,.button)[aria-busy=true]{color:transparent!important;cursor:wait;pointer-events:none;opacity:.82}
:is(.btn,.button)[aria-busy=true]>svg{opacity:0}
:is(.btn,.button)[aria-busy=true]::after{content:"";position:absolute;left:calc(50% - 9px);top:calc(50% - 9px);width:18px;height:18px;border:2px solid var(--action-text);border-right-color:transparent;border-radius:50%;animation:lynx-spin .7s linear infinite}
.btn.secondary[aria-busy=true]::after{border-color:var(--text);border-right-color:transparent}
:is(.btn,.button)[data-state=success]{outline:2px solid var(--good);outline-offset:2px}
:is(.btn,.button)[data-state=error]{outline:2px solid var(--bad);outline-offset:2px}
:is(.input,.select,textarea,form input:not([type=checkbox]):not([type=radio]),form select,form textarea){width:100%;max-width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-high);box-shadow:inset 0 1px 4px rgba(0,6,24,.05);color:var(--text);outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
:is(input,textarea)::placeholder{color:var(--muted);opacity:.85}
:is(.input,.select,form input,form select,form textarea):focus{border-color:var(--accent);box-shadow:0 0 0 4px rgba(130,164,245,.14);outline:2px solid transparent}
:is(input,textarea,select)[aria-invalid=true],:is(input,textarea,select):user-invalid{border-color:var(--bad)}
select option{background:var(--surface);color:var(--text)}textarea{resize:vertical}label{display:block;margin:0 0 8px;font-size:13px;font-weight:600;color:var(--text)}
.error{color:var(--bad);line-height:1.5}.notice{color:var(--text);background:var(--surface-high);border:1px solid var(--line);border-radius:16px;padding:16px}.notice.warn{background:rgba(190,145,65,.09);border-color:rgba(190,145,65,.25);color:var(--warn)}
.logo svg,.brand-mark svg{display:block;width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@supports((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.glass-surface{background:var(--glass);-webkit-backdrop-filter:blur(22px) saturate(1.15);backdrop-filter:blur(22px) saturate(1.15)}}
@keyframes lynx-spin{to{transform:rotate(360deg)}}@keyframes lynx-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:760px){:is(.input,.select,form input,form select,form textarea){font-size:16px}:is(.btn,.button,.logout){min-height:46px}h1,h2{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Public pages retain release data and download URLs. No external fonts or assets. */
.wrap{max-width:1240px;margin:auto;padding-inline:40px}.nav{min-height:100px;border-bottom:1px solid var(--line);gap:24px;padding-block:24px}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);font-size:17px;font-weight:650;letter-spacing:-.04em;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(145deg,rgba(160,186,247,.27),rgba(155,211,229,.1));border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--shine);color:var(--text)}.nav-links{gap:25px;color:var(--muted);font-size:12px}.nav-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;transition:color .18s}.nav-links a:hover{color:var(--text)}.nav-links [data-open-request]{border:1px solid var(--line);border-radius:12px;padding:8px 14px;color:var(--text);background:var(--surface-high)}
.hero{padding:92px 0 80px;grid-template-columns:1.1fr 1fr;gap:52px;align-items:center}.hero h1{font-size:clamp(52px,6.7vw,82px);font-weight:600;line-height:1.04;letter-spacing:-.065em;margin:27px 0}.hero h1 span{background:linear-gradient(100deg,var(--accent),var(--accent2));background-clip:text;-webkit-background-clip:text;color:transparent}.lead{font-size:18px;line-height:1.8;color:var(--muted)}.eyebrow{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.dot{width:7px;height:7px;border-radius:50%;background:var(--accent2);box-shadow:0 0 0 5px rgba(112,197,199,.09)}.buttons{gap:12px;margin-top:32px;flex-wrap:wrap}.button{font-size:13px;min-height:50px;padding:13px 22px}.button svg{width:18px;height:18px;flex:none}.release{margin-top:22px;gap:10px;font-size:12px;color:var(--muted)}.release b{font-weight:500;color:var(--text)}
.phone-scene{isolation:isolate;min-height:588px}.halo{inset:12% 0 16%;width:auto;height:auto;filter:none;background:radial-gradient(ellipse,rgba(124,159,229,.18),transparent 68%);border-radius:50%;z-index:-1;animation:none}.phone{background:#101b2c;color:#eef4ff;border:6px solid #2b3b53;border-radius:42px;width:280px;height:554px;box-shadow:inset 0 0 0 1px #c5d9ff17,0 36px 64px rgba(0,7,23,.22);transform:rotate(-4deg);margin-top:8px}.phone-head{background:#18243a;color:#eef4ff}.phone-top{color:#b1c0d8}.search{background:#1c2940;color:#adbbd3;border:1px solid #ffffff0d}.tabs{color:#9aaeca}.tabs b{color:#d5e3ff;border-color:#adc4ff}.chat{border-color:#dae7ff0a}.chat-title{color:#eaf1ff}.chat-title time{color:#9caec8}.chat-preview{color:#a9bbd3}.ava{background:#354263;color:#e0e8ff}.ava.blue{background:#294c67;color:#bce6fa}.ava.green{background:#274c47;color:#bce5d9}.ava.story{border-color:#a6baff;background:#37445f}.unread{color:#b9ccff}.wave{color:#9cc5e6}.phone-bottom{background:rgba(35,49,73,.94);border-color:#cbdcff20;color:#b8c5dc}.phone-bottom .chosen{color:#c3d6ff}.float{bottom:110px;right:0;max-width:calc(100% - 20px);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:20px;padding:18px 22px;box-shadow:inset 0 1px 0 var(--shine),var(--shadow);transform:rotate(3deg)}.float svg{color:var(--accent)}.float small{color:var(--muted);font-size:11px}.caption{color:var(--muted);font-size:10px;bottom:0}.divider{background:var(--line)}
.section{padding-block:58px;scroll-margin-top:32px}.section h2,.access h2,.download-panel h2{font-size:clamp(28px,3.3vw,40px);letter-spacing:-.045em;font-weight:600;line-height:1.16}.section-lead{font-size:16px;line-height:1.7;color:var(--muted)}.features{gap:18px;margin-top:34px}.feature,.access,.download-panel,.release-card{background:var(--surface);border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--shine),var(--shadow);border-radius:26px}.feature{padding:32px;transition:transform .2s var(--ease),border-color .2s}.feature:hover{transform:translateY(-4px);border-color:var(--accent)}.feature h3{font-size:19px;font-weight:600;letter-spacing:-.035em;margin:28px 0 14px}.feature p{font-size:14px;line-height:1.8;color:var(--muted)}.icon{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;border:1px solid var(--line);background:var(--surface-high);color:var(--accent)}.icon svg{width:23px;height:23px}.access{padding:46px;gap:52px;background:linear-gradient(130deg,var(--surface-high),var(--surface))}.access p{color:var(--muted);font-size:14px;line-height:1.8}.access .button{margin-top:12px}.steps{gap:24px}.step{gap:17px}.step-number{border:1px solid var(--line);background:var(--surface);color:var(--accent);border-radius:13px;min-width:36px;width:36px;height:36px;box-shadow:inset 0 1px 0 var(--shine)}.step strong{color:var(--text);font-size:14px;font-weight:600}.step span{color:var(--muted);font-size:12px;line-height:1.7}.download-panel{padding:36px 40px;gap:28px}.download-panel h2{font-size:29px}.download-panel p{font-size:13px;color:var(--muted)}.check{color:var(--muted)}.check svg{color:var(--good)}
.footer{padding:34px 0 40px;margin-top:48px;border-color:var(--line);gap:20px;flex-wrap:wrap;color:var(--muted);font-size:12px}.footer a{text-decoration:none;min-height:36px;display:inline-flex;align-items:center}.footer a:hover{color:var(--text)}.inner{max-width:860px;margin:65px auto 90px}.inner h1{font-size:clamp(34px,5vw,52px);font-weight:600;letter-spacing:-.05em}.release-card{padding:30px;margin-block:22px}.release-card h2{font-size:23px;letter-spacing:-.03em}.notes li{border-color:var(--line);color:var(--text)}.meta{font-size:12px;line-height:1.7}.notes .sign{background:var(--surface-high);color:var(--accent);border-radius:10px}.notes .remove{color:var(--bad)}
body.request-open{overflow:hidden}.request-dialog{width:min(600px,calc(100vw - 32px));max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:30px;background:var(--surface);color:var(--text);box-shadow:inset 0 1px 0 var(--shine),0 32px 120px rgba(0,0,0,.3)}.request-dialog[open]{animation:lynx-appear .22s var(--ease)}.request-dialog.closing{opacity:0;transform:translateY(8px);transition:opacity .15s,transform .15s}.request-dialog::backdrop{background:rgba(3,9,22,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.request-dialog .dialog-body{padding:32px}.request-dialog h2{font-size:30px;font-weight:600;letter-spacing:-.05em;margin:14px 40px 12px 0}.request-dialog .dialog-intro{color:var(--muted);font-size:13px;margin-bottom:24px}.dialog-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:40px;height:40px;min-height:40px;padding:0;border-radius:13px;font-size:23px;font-weight:400;z-index:1}.request-dialog label{margin-top:20px}.request-dialog .form-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.request-dialog .button{width:100%;margin-top:18px}.request-dialog .result{min-height:55px;padding-top:14px;font-size:13px;line-height:1.6;color:var(--muted)}.result[data-state=success]{color:var(--good)}.result[data-state=error]{color:var(--bad)}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0;pointer-events:none}.request-dialog .privacy-note{font-size:11px;color:var(--muted);margin-top:18px;line-height:1.7}.request-dialog textarea{min-height:100px;max-height:260px}.request-dialog select{width:100%}
@supports((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.feature,.release-card,.download-panel,.float,.request-dialog{background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(1.12);backdrop-filter:blur(20px) saturate(1.12)}}
@media(max-width:1000px){.wrap{padding-inline:28px}.hero{gap:25px}.hero h1{font-size:clamp(48px,6.7vw,70px)}.features{gap:13px}.feature{padding:25px}.access{padding:32px;gap:28px}.nav-links{gap:16px}.nav-links [data-open-request]{padding-inline:10px}}
@media(max-width:760px){.wrap{padding-inline:max(18px,env(safe-area-inset-left)) max(18px,env(safe-area-inset-right))}.nav{padding-block:20px;gap:16px;min-height:0;flex-wrap:wrap}.brand{font-size:16px}.nav-links{width:100%;gap:20px;overflow:auto;padding-bottom:2px;scrollbar-width:thin}.nav-links a,.nav-links a:first-child{display:inline-flex;flex:none;white-space:nowrap;font-size:11px}.hero{grid-template-columns:minmax(0,1fr);padding:48px 0 35px;gap:38px}.hero h1{font-size:clamp(48px,12vw,66px);letter-spacing:-.065em;margin:25px 0}.hero .lead{font-size:16px}.buttons{gap:10px;margin-top:28px}.buttons .button{font-size:12px;padding-inline:16px}.release{font-size:11px}.phone-scene{width:100%;max-width:390px;margin:auto;min-height:584px}.phone{max-width:calc(100% - 30px)}.float{right:0;padding:15px 18px;bottom:106px}.section{padding-block:35px}.features{grid-template-columns:1fr;gap:14px}.feature{padding:26px}.feature h3{margin-top:24px}.access{display:grid;grid-template-columns:minmax(0,1fr);padding:28px 24px;gap:32px;border-radius:24px}.steps{gap:23px}.download-panel{padding:28px 24px;flex-direction:column;align-items:flex-start;border-radius:24px}.download-panel h2{font-size:29px}.footer{margin-top:28px;padding-block:26px;gap:8px 22px;font-size:11px}.footer>div{width:100%;margin-bottom:8px}.inner{margin-block:40px 60px}.release-card{padding:23px}.request-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:25px}.request-dialog .dialog-body{padding:27px 22px}.request-dialog h2{font-size:27px}.request-dialog .form-grid{grid-template-columns:minmax(0,1fr);gap:0}.request-dialog .dialog-close{right:12px;top:12px}.request-dialog label{font-size:12px}.request-dialog .privacy-note{font-size:11px}}
