*{margin:0;box-sizing:border-box}html,body,#app{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,system-ui,sans-serif;color:#fffffff5;background:radial-gradient(ellipse 90% 70% at 50% -10%,rgba(64,96,160,.22),transparent),radial-gradient(ellipse 70% 60% at 85% 100%,rgba(90,60,130,.16),transparent),#0a0c12;overflow:hidden;-webkit-font-smoothing:antialiased}#app{position:relative}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff29;border-radius:99px;border:3px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#ffffff52;background-clip:padding-box}::-webkit-scrollbar-corner{background:transparent}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.24) transparent}}.orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.5;pointer-events:none}.o1{width:560px;height:560px;left:-140px;top:-180px;background:#23416e}.o2{width:480px;height:480px;right:-120px;top:28%;background:#3b2a56}.o3{width:540px;height:420px;left:28%;bottom:-200px;background:#16403c}.glass{background:#ffffff14;backdrop-filter:blur(26px) saturate(1.6);-webkit-backdrop-filter:blur(26px) saturate(1.6);border:1px solid rgba(255,255,255,.15);box-shadow:0 24px 60px #00000073,inset 0 1px #fff3}#chip{position:absolute;top:22px;left:50%;transform:translate(-50%);display:flex;gap:12px;align-items:center;padding:10px 22px;border-radius:99px;font-size:13.5px;font-weight:500;color:#ffffffbf;z-index:9;white-space:nowrap}#chip .sep{opacity:.3}#chip .listen{color:#ffcf8a}#chip .listen:before{content:"● ";font-size:9px;vertical-align:1px;animation:pulse 2.2s infinite}#chip .mcp{color:#ffffff73}#camera-toggle,#controller-toggle,#glasses-toggle{border:0;border-radius:99px;padding:5px 11px;margin:-5px -10px -5px 0;color:#ffffff9e;background:#ffffff14;font:inherit;font-size:12px;cursor:pointer}#camera-toggle:hover,#controller-toggle:hover,#glasses-toggle:hover{color:#fff;background:#ffffff26}#camera-toggle.on,#controller-toggle.on,#glasses-toggle.on{color:#9ef3c9;background:#50dc9624}#glasses-toggle.hint{position:relative;color:#9be9dc;background:#5eead41f;animation:glasses-nudge 2.4s ease-in-out infinite}#glasses-hint{position:absolute;top:calc(100% + 10px);right:0;padding:4px 9px;border-radius:8px;white-space:nowrap;font-size:11px;letter-spacing:.06em;color:#9be9dc;background:#0a101ad9;border:1px solid rgba(94,234,212,.35);pointer-events:none}@keyframes glasses-nudge{0%,to{box-shadow:0 0 #5eead400}50%{box-shadow:0 0 0 5px #5eead424}}@media(prefers-reduced-motion:reduce){#glasses-toggle.hint{animation:none}}#camera-toggle:disabled{opacity:.5;cursor:wait}@keyframes pulse{50%{opacity:.45}}#camera-panel{position:absolute;right:26px;top:82px;width:224px;padding:7px;border-radius:20px;z-index:12;overflow:hidden}#camera-panel[hidden]{display:none}#camera-frame{position:relative;border-radius:14px;overflow:hidden}#camera-video{display:block;width:100%;aspect-ratio:16 / 10;object-fit:cover;transform:scaleX(-1);background:#0000004d}#camera-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:scaleX(-1);pointer-events:none}#camera-status{display:block;padding:7px 4px 2px;text-align:center;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#ffffff7a}#camera-status[data-state=ready]{color:#9ef3c9}#camera-status[data-state=track]{color:#ffcf8a}#camera-status[data-state=error]{color:#ffb4ac}#gesture-hints{list-style:none;margin:6px 2px 2px;padding:6px 8px 2px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;line-height:1.9;color:#ffffff9e}#gesture-hints b{font-weight:400;margin-right:6px}#gesture-hints i{font-style:normal;color:#9ef3c9}#controller-panel{position:absolute;left:26px;top:82px;width:330px;padding:22px;border-radius:24px;z-index:14}#controller-panel[hidden]{display:none}.controller-head{display:flex;align-items:flex-start;justify-content:space-between}.controller-head span{font-size:10px;letter-spacing:.18em;color:#9ec8ff9e}.controller-head h2{margin-top:3px;font-size:20px;letter-spacing:-.02em}#controller-close{width:30px;height:30px;border:0;border-radius:50%;color:#fff9;background:#ffffff17;font-size:19px;line-height:1;cursor:pointer}#controller-status{margin:15px 0 12px;font-size:12.5px;color:#ffcf8a;line-height:1.45}.controller-steps{display:grid;gap:8px;margin:0;padding:0;list-style:none}.controller-steps li{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:9px;padding:10px;border-radius:13px;background:#ffffff0e;border:1px solid transparent;color:#ffffff9e}.controller-steps li.current{border-color:#ffcf8a8c;background:#ffcf8a14}.controller-steps li.learned{color:#ffffffe6}.step-number{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#ffffff1a;font-size:11px;font-weight:700}.controller-steps li.learned .step-number{color:#10251b;background:#9ef3c9}.controller-steps li.optional:not(.current):not(.learned){opacity:.62}.controller-steps b{font-size:13px}.controller-steps b small{margin-left:4px;font-size:9.5px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#ffffff61}.controller-binding{font-size:11px;color:#ffffff6b}.controller-mode{display:flex;justify-content:space-between;align-items:center;margin-top:13px;padding:11px 2px;cursor:pointer}.controller-mode b,.controller-mode small{display:block}.controller-mode b{font-size:13px}.controller-mode small{margin-top:2px;color:#fff6;font-size:10.5px}.controller-mode input{width:34px;height:20px;accent-color:#75dfae}.controller-actions{display:flex;gap:8px}.controller-actions button{flex:1;padding:10px 12px;border:1px solid rgba(255,255,255,.14);border-radius:12px;color:#ffffffd6;background:#ffffff17;font:inherit;font-size:12px;cursor:pointer}.controller-actions button:hover{background:#ffffff26}#controller-reset{flex:0 0 auto;color:#ffbeb4bf}.controller-note{margin-top:13px;font-size:10.5px;line-height:1.5;color:#ffffff5c}#swipe-pulse{position:absolute;top:50%;z-index:20;opacity:0;pointer-events:none;font-size:84px;font-weight:300;color:#ffffffd1;text-shadow:0 0 32px rgba(150,205,255,.8)}#swipe-pulse.left{left:10%;--swipe-x: -14px}#swipe-pulse.right{right:10%;--swipe-x: 14px}#swipe-pulse.show{animation:swipe-flash .42s ease-out}@keyframes swipe-flash{0%{opacity:0;transform:translate(0) scale(.8)}30%{opacity:1}to{opacity:0;transform:translate(var(--swipe-x, 14px)) scale(1.1)}}#stage{position:absolute;top:86px;right:0;bottom:118px;left:0;perspective:1600px}#stage.is-transitioning{overflow:hidden}.stage-motion-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transform-origin:50% 50%}.stage-motion-layer.incoming{z-index:2}.stage-motion-layer.outgoing{z-index:1;pointer-events:none}.hello{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);text-align:center;padding:46px 64px;border-radius:34px}.hello h1{font-size:40px;font-weight:750;letter-spacing:-.02em}.hello p{margin-top:14px;color:#ffffff8c;font-size:16px;line-height:1.6}.hello.welcome{max-width:640px;text-align:left}.hello.welcome h1{background:linear-gradient(100deg,#9be9dc,#7cc0ff);-webkit-background-clip:text;background-clip:text;color:transparent}.hello.welcome .tagline{margin-top:6px;color:#ffffffb8;font-size:17px}.hello.welcome .steps{margin-top:22px;list-style:none;display:grid;gap:14px}.hello.welcome .steps li{display:grid;grid-template-columns:96px 1fr;gap:12px;align-items:baseline;font-size:14.5px;line-height:1.55;color:#ffffff9e}.hello.welcome .steps .k{color:#9be9dc;font-size:12px;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.hello.welcome .steps b{color:#ffffffe6;font-weight:640}.hello.welcome .fallback{margin-top:20px;font-size:12.5px;color:#ffffff61}.hello.welcome .fallback code{font-family:inherit;color:#ffffff8c}body:is(.glasses-on,.compact) .hello.welcome{max-width:none}body:is(.glasses-on,.compact) .hello.welcome .tagline{font-size:13px}body:is(.glasses-on,.compact) .hello.welcome .steps{margin-top:12px;gap:8px}body:is(.glasses-on,.compact) .hello.welcome .steps li{grid-template-columns:94px 1fr;font-size:11.5px}body:is(.glasses-on,.compact) .hello.welcome .steps .k{letter-spacing:.06em}body:is(.glasses-on,.compact) .hello.welcome .fallback{display:none}.hello.welcome h1{animation:hud-title-in 1s cubic-bezier(.16,.8,.24,1) both}.hello.welcome .tagline,.hello.welcome .steps li,.hello.welcome .fallback{animation:hud-rise-in .6s cubic-bezier(.22,.7,.25,1) both}.hello.welcome .tagline{animation-delay:.3s}.hello.welcome .steps li:nth-child(1){animation-delay:.45s}.hello.welcome .steps li:nth-child(2){animation-delay:.57s}.hello.welcome .steps li:nth-child(3){animation-delay:.69s}.hello.welcome .fallback{animation-delay:.85s}@keyframes hud-title-in{0%{opacity:0;letter-spacing:.4em;filter:blur(8px)}55%{opacity:1}to{opacity:1;letter-spacing:-.02em;filter:blur(0)}}@keyframes hud-rise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.deck{position:relative;height:100%}.card{position:absolute;top:50%;left:50%;width:min(500px,68%);min-height:330px;margin-top:-185px;padding:30px 34px;border-radius:30px;transition:transform .32s cubic-bezier(.22,1,.36,1),opacity .28s ease,filter .28s ease;transform-style:preserve-3d;will-change:transform,opacity}.deck.gesture-tracking .card{transition:none}.card.focus{transform:translate(-50%);z-index:5;background:#ffffff1f}.card.prev{transform:translate(-140%) rotateY(16deg) scale(.86);opacity:.42;filter:brightness(.75);z-index:2}.card.next{transform:translate(40%) rotateY(-16deg) scale(.86);opacity:.42;filter:brightness(.75);z-index:2}.card.far-left{transform:translate(-235%) scale(.7);opacity:0;z-index:1}.card.far-right{transform:translate(135%) scale(.7);opacity:0;z-index:1}.k{display:flex;gap:9px;align-items:center;font-size:11.5px;font-weight:650;letter-spacing:.16em;text-transform:uppercase;color:#ffffff7a;margin-bottom:20px}.ic{display:inline-grid;place-items:center;width:27px;height:27px;border-radius:9px;background:#ffffff21;box-shadow:inset 0 1px #ffffff38}.ic svg{width:15px;height:15px}.badge{margin-left:auto;letter-spacing:.08em;background:#ffffff1a;border-radius:99px;padding:4px 11px;color:#ffffff8c;font-size:11px}.card h2{font-size:27px;font-weight:720;letter-spacing:-.02em;line-height:1.18;margin-bottom:8px}.card .sub,.reader .sub{font-size:14.5px;font-weight:550;color:#96c8ffeb;margin-bottom:16px}.card .prevw{font-size:15px;line-height:1.65;color:#fff9}.card-facts{display:grid;gap:7px;margin-top:18px}.card-facts div{display:flex;justify-content:space-between;gap:20px;padding-top:7px;border-top:1px solid rgba(255,255,255,.09)}.card-facts dt{color:#ffffff6b;font-size:12px}.card-facts dd{color:#ffffffd1;font-size:12.5px;font-weight:650;text-align:right}.counter{position:absolute;bottom:6px;left:50%;transform:translate(-50%);font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:#ffffff59}.reader{position:absolute;top:47%;left:50%;transform:translate(-50%,-47%);width:min(760px,86%);max-height:92%;overflow:auto;padding:42px 48px;border-radius:34px;background:#ffffff1c}.reader h1{font-size:31px;font-weight:750;letter-spacing:-.02em;line-height:1.15;margin-bottom:8px}.reader .body{font-size:16.5px;line-height:1.75;color:#ffffffc7;white-space:pre-wrap;margin-top:20px}.rhint{margin-top:30px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#ffffff52}.calwrap{height:100%;padding:0 46px;display:flex;flex-direction:column}.calhead{text-align:center;font-size:16px;font-weight:600;letter-spacing:.01em;color:#ffffffa6;margin-bottom:18px}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:13px;flex:1;min-height:0}.day{border-radius:22px;padding:15px 13px;overflow:hidden}.day.today{background:#96c8ff21;border-color:#96c8ff61}.dh{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px}.dh .wd{font-size:11.5px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:#ffffff73}.dh .dn{font-size:21px;font-weight:700;letter-spacing:-.02em}.day.today .dn{color:#9ec8ff}.ev{background:#ffffff1a;border:1px solid rgba(255,255,255,.09);border-radius:11px;padding:8px 10px;font-size:12.5px;line-height:1.35;margin-top:8px;color:#ffffffd9}.ev b{display:block;font-weight:650;color:#96c8fff2;font-size:11.5px;margin-bottom:2px}.mhead{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-bottom:8px}.mhead span{font-size:11px;font-weight:650;letter-spacing:.14em;text-transform:uppercase;color:#ffffff61;text-align:center}.month{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;flex:1;min-height:0;grid-auto-rows:1fr}.mcell{border-radius:16px;padding:9px 11px;overflow:hidden}.mcell.empty{background:none;border:none;box-shadow:none}.mcell.today{background:#96c8ff21;border-color:#96c8ff61}.mcell .dn{font-size:13.5px;font-weight:650;color:#ffffffb3}.mcell.today .dn{color:#9ec8ff}.mdots{display:flex;gap:4px;align-items:center;margin-top:7px}.mdots .dot{width:5px;height:5px;border-radius:50%;background:#96c8ffd9}.mdots .more{font-size:10px;color:#fff6}#dock{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:6px;padding:8px;border-radius:26px;z-index:9}.dock-item{display:flex;gap:9px;align-items:center;padding:10px 18px;border-radius:18px;border:none;background:none;font-family:inherit;font-size:13.5px;font-weight:600;color:#ffffff94;cursor:pointer;transition:background .25s ease,color .25s ease}.dock-item:hover{color:#ffffffd9}.dock-item.on{background:#ffffff29;color:#fff;box-shadow:inset 0 1px #ffffff40}.dock-item .ic{width:24px;height:24px;border-radius:8px}.dock-item .ic svg{width:13.5px;height:13.5px}#dock.picking{border-color:#ffcf8a59;box-shadow:0 10px 40px #00000073,0 0 0 1px #ffcf8a1f}.dock-item.pick{color:#fff;background:#ffcf8a29;box-shadow:inset 0 0 0 1.5px #ffcf8ad9,0 4px 18px #ffb04038;transform:translateY(-2px)}.dock-item{transition:background .25s ease,color .25s ease,transform .22s cubic-bezier(.3,1.4,.4,1),box-shadow .22s ease}.dock-hint{position:absolute;top:-25px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#ffcf8ac7}#hint{position:absolute;right:28px;bottom:32px;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:#ffffff47;z-index:8}#feed{position:absolute;left:28px;bottom:28px;width:320px;list-style:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;line-height:1.5;color:#ffffff4d;z-index:8;mask-image:linear-gradient(to bottom,#000 45%,transparent);-webkit-mask-image:linear-gradient(to bottom,#000 45%,transparent)}#feed li{margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#feed li:first-child{color:#ffffff8c}.calnote{display:inline-block;margin-left:14px;padding:4px 13px;border-radius:99px;background:#ffcf8a24;border:1px solid rgba(255,207,138,.3);color:#ffcf8a;font-size:12px;font-weight:600;letter-spacing:.04em}.day.hasprop,.mcell.hasprop{border-color:#ffcf8a8c;box-shadow:0 0 0 1px #ffcf8a40,0 0 34px #ffbe6424,inset 0 1px #fff3}.slot{position:relative;margin-top:8px;padding:9px 10px 9px 34px;border-radius:11px;font-size:12.5px;line-height:1.35;background:#ffcf8a21;border:1px solid rgba(255,207,138,.4);animation:slotin .6s cubic-bezier(.22,1,.36,1)}.slot b{display:block;font-weight:650;color:#ffcf8a;font-size:11.5px;margin-bottom:2px}.slot span:not(.n){color:#fff9;font-size:11.5px}.slot .n,.mprop .n{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#ffcf8a;color:#2a1f0e;font-size:11.5px;font-weight:750}.slot .n{position:absolute;left:8px;top:9px}.mprop{display:flex;gap:5px;margin-top:7px}@keyframes slotin{0%{opacity:0;transform:translateY(8px)}}.card.opt{min-height:0;padding-bottom:24px}.card.sel{border-color:#8cffbe80}.chosen{margin-left:auto;display:flex;gap:5px;align-items:center;color:#8cffbe;letter-spacing:.08em;font-size:11px}.chosen svg{width:13px;height:13px}.oname{margin-top:14px;text-align:center;font-size:13.5px;font-weight:600;color:#fff9}.poster{border-radius:18px;overflow:hidden;aspect-ratio:4 / 5;max-height:46vh;margin:0 auto;display:flex;flex-direction:column;justify-content:space-between;padding:24px;position:relative}.poster.lg{aspect-ratio:4 / 5;max-height:64vh;padding:34px}.poster .plogo{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:.22em;padding:6px 12px;border-radius:8px}.poster .ptitle{font-weight:800;letter-spacing:-.02em;line-height:1.08;font-size:clamp(22px,3.2vw,40px)}.poster.lg .ptitle{font-size:clamp(30px,4vw,52px)}.poster .pdate{margin-top:12px;font-size:15px;font-weight:650}.poster .pvenue{margin-top:5px;font-size:13.5px;opacity:.85}.poster .ptag{font-size:12.5px;font-style:italic;opacity:.75}.poster.aurora{color:#fff;background:radial-gradient(ellipse 120% 90% at 15% 0%,color-mix(in srgb,var(--accent) 85%,#fff 15%),transparent 60%),radial-gradient(ellipse 100% 80% at 100% 100%,color-mix(in srgb,var(--accent) 55%,#04102e 45%),transparent 70%),linear-gradient(160deg,#17123a,#0a0c1e);text-shadow:0 2px 18px rgba(0,0,0,.35)}.poster.aurora .plogo{background:#fff3}.poster.aurora .ptitle{font-family:Georgia,Times New Roman,serif}.poster.mono{color:#17181c;background:#f4f2ec}.poster.mono .plogo{background:#17181c;color:#f4f2ec}.poster.mono .ptitle{letter-spacing:-.03em}.poster.mono .pdate{color:var(--accent)}.poster.mono .pmid{border-top:2px solid #17181c;padding-top:16px}.poster.neon{color:#fff;background:linear-gradient(170deg,#0b0d14,#101725);border:1px solid color-mix(in srgb,var(--accent) 60%,transparent);box-shadow:inset 0 0 60px color-mix(in srgb,var(--accent) 14%,transparent)}.poster.neon .plogo{border:1px solid var(--accent);color:var(--accent)}.poster.neon .ptitle{color:var(--accent);text-shadow:0 0 26px color-mix(in srgb,var(--accent) 70%,transparent)}.poster.neon .ptag{color:#fff9}.optreader{display:flex;flex-direction:column}.optreader .poster{width:100%;max-width:440px}.gridwrap{height:100%;padding:0 46px;display:flex;flex-direction:column;overflow:hidden}.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:13px;align-content:start;overflow:auto;padding-bottom:12px}.pchip{display:flex;gap:12px;align-items:center;padding:13px 15px;border-radius:18px;animation:slotin .5s cubic-bezier(.22,1,.36,1) backwards}.pchip:nth-child(2){animation-delay:.04s}.pchip:nth-child(3){animation-delay:.08s}.pchip:nth-child(4){animation-delay:.12s}.pchip:nth-child(5){animation-delay:.16s}.pchip:nth-child(6){animation-delay:.2s}.pchip:nth-child(7){animation-delay:.24s}.pchip:nth-child(8){animation-delay:.28s}.pchip:nth-child(n+9){animation-delay:.32s}.pchip.focus{background:#ffffff26;border-color:#ffffff59}.pchip .av{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:linear-gradient(150deg,#96c8ff59,#8c6edc59);font-size:13.5px;font-weight:700;flex:none}.pinfo{min-width:0}.pinfo b{display:block;font-size:14.5px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pinfo span{font-size:12px;color:#ffffff80;white-space:nowrap}.pchip .badge{flex:none}.present{height:100%;padding:0 46px 8px;display:flex;flex-direction:column;min-height:0}.present-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:18px}.present-head>div{min-width:0}.present-head h1{margin-top:5px;font-size:25px;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purpose{color:#9ec8ff;font-size:10px;font-weight:750;letter-spacing:.18em;text-transform:uppercase}.present-note{color:#ffffff61;font-size:11.5px;white-space:nowrap}.comparison{justify-content:center;padding-bottom:58px}.comparison .present-head{flex:none}.compare-table{flex:0 1 auto;min-height:0;max-height:70%;overflow:auto;border-radius:25px;padding:6px}.compare-table table{width:100%;border-collapse:collapse}.compare-table th,.compare-table td{padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;font-size:13.5px}.compare-table thead th{position:sticky;top:0;color:#ffffff6b;background:#10141ff0;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;z-index:1}.compare-table tbody th{min-width:190px}.compare-table tbody th b{display:block;font-size:15px}.compare-table tbody th span{display:block;margin-top:3px;color:#ffffff6b;font-weight:400;font-size:11.5px}.compare-table tbody tr.focus{background:#9ec8ff17}.compare-table tbody tr:last-child th,.compare-table tbody tr:last-child td{border-bottom:0}.compare-cards{display:none;flex:1;min-height:0;position:relative}.list-rows{flex:1;min-height:0;overflow:auto;display:grid;align-content:start;gap:9px}.list-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:13px;padding:13px 16px;border-radius:17px;transition:background .24s ease,border-color .24s ease,transform .28s cubic-bezier(.22,1,.36,1),opacity .24s ease}.list-row.focus{background:#9ec8ff21;border-color:#9ec8ff5c}.list-row.selected{border-color:#8cffbe66;background:#8cffbe14}.list-index{color:#ffffff47;font:11px ui-monospace,SFMono-Regular,Menlo,monospace}.list-copy h2{font-size:14.5px}.list-copy span{color:#9ec8ffc2;font-size:11.5px}.list-copy p{margin-top:3px;color:#ffffff75;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.triage-state{display:flex;align-items:center;gap:5px;color:#8cffbe;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.triage-state svg{width:13px;height:13px}.summary-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:13px;align-content:stretch}.summary-card{min-height:0;padding:22px;border-radius:23px;overflow:hidden;transition:background .24s ease,border-color .24s ease,transform .28s cubic-bezier(.22,1,.36,1),opacity .24s ease}.summary-card.focus{background:#9ec8ff21;border-color:#9ec8ff5c}.summary-card .k{margin-bottom:14px}.summary-card h2{font-size:19px;line-height:1.2}.summary-card .sub{margin-top:5px;color:#9ec8ff;font-size:12px}.summary-card .prevw{margin-top:12px;color:#ffffff94;font-size:13px;line-height:1.5}.done{position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);text-align:center}.done .ring{width:96px;height:96px;margin:0 auto 26px;border-radius:50%;display:grid;place-items:center;color:#8cffbe;background:#8cffbe1a;border:1.5px solid rgba(140,255,190,.45);box-shadow:0 0 60px #8cffbe2e;animation:ringin .7s cubic-bezier(.22,1,.36,1)}.done .ring svg{width:44px;height:44px}.done h1{font-size:36px;font-weight:750;letter-spacing:-.02em}.done p{margin-top:10px;font-size:16px;color:#fff9}.done .rhint{margin-top:26px}@keyframes ringin{0%{opacity:0;transform:scale(.7)}}.poster{isolation:isolate}.pimg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2}.pscrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(to bottom,#080a1226,#080a1247 55%,#080a12b8)}.poster.has-img{color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.55)}.poster.has-img .plogo,.poster.mono.has-img .plogo{background:#ffffff38;color:#fff}.poster.mono.has-img .pmid{border-top-color:#ffffffd9}.poster.mono.has-img .pdate{color:#fff}.card .thumb{width:100%;max-height:180px;object-fit:cover;border-radius:14px;margin-bottom:16px;border:1px solid rgba(255,255,255,.14)}.rimg{width:100%;max-height:56vh;object-fit:contain;border-radius:16px;margin-top:20px;background:#00000040}#glasses-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;overflow:hidden;background:#05070d}#glasses-backdrop[hidden]{display:none}#glasses-backdrop img{-webkit-user-select:none;user-select:none}#glasses-backdrop .ambient{position:absolute;top:-8%;right:-8%;bottom:-8%;left:-8%;width:116%;height:116%;object-fit:cover;object-position:center;filter:blur(44px) saturate(.6) brightness(.62)}#glasses-backdrop .pov{position:absolute;filter:saturate(.82) brightness(.9);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 11%,#000 89%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 11%,#000 89%,transparent 100%)}body.glasses-on #app{z-index:5;border-radius:46px;overflow:hidden;outline:1px solid rgba(170,225,255,.4);box-shadow:0 0 80px #78c3ff47,0 0 14px #aae1ff59,0 30px 80px #00000080;background:#070a12db}body:is(.glasses-on,.compact) #chip{top:12px;gap:9px;padding:7px 15px;font-size:11.5px}body:is(.glasses-on,.compact) #chip .mcp,body:is(.glasses-on,.compact) #chip .mcp+.sep{display:none}body:is(.glasses-on,.compact) #camera-toggle,body:is(.glasses-on,.compact) #controller-toggle,body:is(.glasses-on,.compact) #glasses-toggle{font-size:11px;padding:4px 9px}body:is(.glasses-on,.compact) #stage{top:56px;right:0;bottom:86px;left:0}body:is(.glasses-on,.compact) .hello{top:50%;max-height:100%;overflow-y:auto;padding:28px 36px;border-radius:26px}body:is(.glasses-on,.compact) .hello h1{font-size:26px}body:is(.glasses-on,.compact) .hello p{font-size:13.5px;margin-top:9px}body:is(.glasses-on,.compact) .card{width:min(400px,82%);min-height:272px;margin-top:-150px;padding:22px 26px;border-radius:24px}body:is(.glasses-on,.compact) .reader{width:min(520px,90%);padding:26px 30px;border-radius:26px}body:is(.glasses-on,.compact) .reader h1{font-size:23px}body:is(.glasses-on,.compact) .reader .body{font-size:14px;line-height:1.65;margin-top:14px}body:is(.glasses-on,.compact) .rhint{margin-top:18px;font-size:10.5px}body:is(.glasses-on,.compact) .calwrap{padding:0 20px}body:is(.glasses-on,.compact) .calhead{font-size:13.5px;margin-bottom:10px}body:is(.glasses-on,.compact) .week{gap:7px}body:is(.glasses-on,.compact) .day{border-radius:15px;padding:10px 9px}body:is(.glasses-on,.compact) .dh{margin-bottom:7px}body:is(.glasses-on,.compact) .dh .wd{font-size:9px;letter-spacing:.1em}body:is(.glasses-on,.compact) .dh .dn{font-size:15px}body:is(.glasses-on,.compact) .ev{border-radius:8px;padding:5px 7px;font-size:10px;margin-top:5px}body:is(.glasses-on,.compact) .ev b{font-size:9.5px}body:is(.glasses-on,.compact) .mhead{gap:6px;margin-bottom:5px}body:is(.glasses-on,.compact) .mhead span{font-size:9px}body:is(.glasses-on,.compact) .month{gap:6px}body:is(.glasses-on,.compact) .mcell{border-radius:11px;padding:6px 8px}body:is(.glasses-on,.compact) .mcell .dn{font-size:11px}body:is(.glasses-on,.compact) .mdots{margin-top:4px}body:is(.glasses-on,.compact) .present{padding:0 18px 5px}body:is(.glasses-on,.compact) .present-head{align-items:flex-start;margin-bottom:10px;gap:10px}body:is(.glasses-on,.compact) .present-head h1{font-size:18px;margin-top:2px}body:is(.glasses-on,.compact) .present-note{display:none}body:is(.glasses-on,.compact) .purpose{font-size:8.5px}body:is(.glasses-on,.compact) .compare-table{display:none}body:is(.glasses-on,.compact) .comparison{justify-content:flex-start;padding-bottom:5px}body:is(.glasses-on,.compact) .compare-cards{display:block}body:is(.glasses-on,.compact) .compare-cards .card{width:min(390px,88%);min-height:252px;margin-top:-132px}body:is(.glasses-on,.compact) .present-list .list-rows{display:block;position:relative;overflow:visible}body:is(.glasses-on,.compact) .present-list .list-row{display:none}body:is(.glasses-on,.compact) .present-list .list-row.focus{display:grid;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);width:min(390px,90%);min-height:220px;grid-template-columns:30px minmax(0,1fr);align-content:center;padding:24px;border-radius:24px}body:is(.glasses-on,.compact) .present-list .list-row.focus .badge{grid-column:2;margin:8px 0 0;justify-self:start}body:is(.glasses-on,.compact) .present-list .list-row.focus .triage-state{grid-column:2;margin-top:10px}body:is(.glasses-on,.compact) .present-list .list-copy h2{font-size:21px}body:is(.glasses-on,.compact) .present-list .list-copy p{margin-top:12px;white-space:normal;font-size:13px;line-height:1.5}body:is(.glasses-on,.compact) .summary-grid{display:block;position:relative}body:is(.glasses-on,.compact) .summary-card{display:none}body:is(.glasses-on,.compact) .summary-card.focus{display:block;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%);width:min(390px,90%);max-height:100%;padding:24px}body:is(.glasses-on,.compact) #dock{bottom:14px;padding:6px;border-radius:20px}body:is(.glasses-on,.compact) .dock-item{padding:7px 12px;font-size:11.5px;gap:7px;border-radius:14px}body:is(.glasses-on,.compact) .dock-item .ic{width:19px;height:19px;border-radius:6px}body:is(.glasses-on,.compact) .dock-item .ic svg{width:11px;height:11px}body:is(.glasses-on,.compact) .dock-hint{top:-19px;font-size:8.5px;letter-spacing:.1em}body:is(.glasses-on,.compact) #hint{display:none}body:is(.glasses-on,.compact) #feed{left:18px;bottom:16px;width:220px;font-size:9.5px}body:is(.glasses-on,.compact) #swipe-pulse{font-size:44px}#glasses-chrome{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none}#glasses-chrome[hidden]{display:none}.glasses-label{position:absolute;left:50%;bottom:24px;transform:translate(-50%);font-size:11px;letter-spacing:.22em;color:#ffffffbf;text-shadow:0 1px 10px rgba(0,0,0,.8);white-space:nowrap}#glasses-exit{position:absolute;top:22px;right:26px;pointer-events:auto;border:1px solid rgba(255,255,255,.3);border-radius:99px;padding:7px 14px;font:inherit;font-size:12px;cursor:pointer;color:#ffffffe6;background:#0a0e168c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#glasses-exit:hover{color:#fff;background:#0a0e16cc}#glasses-boot{position:fixed;z-index:6;pointer-events:none;border-radius:46px;overflow:hidden}#glasses-boot[hidden]{display:none}#glasses-boot .boot-strip{position:absolute;left:5%;right:5%;top:50%;height:2px;transform:translateY(-50%) scaleX(0);opacity:0;border-radius:99px;background:linear-gradient(90deg,transparent,rgba(190,230,255,.95) 18%,#fff 50%,rgba(190,230,255,.95) 82%,transparent);box-shadow:0 0 24px #96d2ffe6,0 0 90px #78beff8c}#glasses-boot .boot-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;opacity:0}#glasses-boot .boot-name{font-size:clamp(26px,6vh,38px);font-weight:700;color:#eaf6ff;text-shadow:0 0 18px rgba(140,205,255,.8),0 0 60px rgba(120,190,255,.45)}#glasses-boot .boot-tag{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:#bee1ffb8;text-align:center}#glasses-boot .boot-scan{position:absolute;left:0;right:0;top:-14%;height:12%;opacity:0;background:linear-gradient(to bottom,transparent,rgba(170,215,255,.14) 42%,rgba(225,242,255,.32) 50%,rgba(170,215,255,.14) 58%,transparent)}body.glasses-booting #glasses-backdrop .pov{animation:boot-pov 3.4s ease both}@keyframes boot-pov{0%,22%{filter:saturate(.55) brightness(.42)}42%{filter:saturate(.68) brightness(.58)}80%,to{filter:saturate(.82) brightness(.9)}}body.glasses-booting #glasses-backdrop .ambient{animation:boot-ambient 3.4s ease both}@keyframes boot-ambient{0%,22%{filter:blur(44px) saturate(.4) brightness(.28)}80%,to{filter:blur(44px) saturate(.6) brightness(.62)}}body.glasses-booting #glasses-boot{animation:boot-ring 3.4s ease both}@keyframes boot-ring{0%,20%{outline:1px solid rgba(190,235,255,0);box-shadow:0 0 #8ccdff00}28%{outline:1px solid rgba(210,240,255,.85);box-shadow:0 0 110px #8ccdff8c,0 0 22px #c8eeffb3}55%{outline:1px solid rgba(180,230,255,.5);box-shadow:0 0 70px #82c8ff59,0 0 14px #b4e6ff66}to{outline:1px solid rgba(170,225,255,.4);box-shadow:0 0 80px #78c3ff47,0 0 14px #aae1ff59}}body.glasses-booting #glasses-boot .boot-strip{animation:boot-strip 3.4s cubic-bezier(.6,0,.2,1) both}@keyframes boot-strip{0%,21%{transform:translateY(-50%) scaleX(0);opacity:0}25%{opacity:1}31%{transform:translateY(-50%) scaleX(1);opacity:.95}40%{opacity:.35}48%,to{transform:translateY(-50%) scaleX(1);opacity:0}}body.glasses-booting #glasses-boot .boot-mark{animation:boot-mark 3.4s ease both}@keyframes boot-mark{0%,29%{opacity:0;filter:blur(0)}40%{opacity:1}56%{opacity:1;filter:blur(0)}66%,to{opacity:0;filter:blur(7px)}}body.glasses-booting #glasses-boot .boot-name{animation:boot-name 3.4s cubic-bezier(.2,.8,.2,1) both}@keyframes boot-name{0%,29%{letter-spacing:.85em;text-indent:.85em}62%,to{letter-spacing:.3em;text-indent:.3em}}body.glasses-booting #glasses-boot .boot-scan{animation:boot-scan 3.4s linear both}@keyframes boot-scan{0%,58%{top:-14%;opacity:0}61%{opacity:1}74%{top:104%;opacity:.9}76%,to{top:104%;opacity:0}}body.glasses-booting #app{animation:boot-app 3.4s cubic-bezier(.22,.7,.25,1) both}@keyframes boot-app{0%,58%{opacity:0;filter:blur(14px) brightness(1.8);transform:scale(.94)}74%{opacity:.55;filter:blur(5px) brightness(1.3);transform:scale(.985)}90%,to{opacity:1;filter:blur(0) brightness(1);transform:scale(1)}}body.glasses-booting #glasses-chrome{animation:boot-chrome 3.4s ease both}@keyframes boot-chrome{0%,84%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}.mapstage{position:relative;height:100%;padding:0 46px}.map-canvas{position:absolute;top:0;right:46px;bottom:0;left:46px;border-radius:28px;overflow:hidden;border:1px solid rgba(255,255,255,.14);box-shadow:0 24px 70px #00000080,inset 0 1px #ffffff14;background:#0b0e14}.map-live{width:100%;height:100%;background:#0b0e14}.map-live .leaflet-container{background:#0b0e14;font-family:inherit}.map-live .leaflet-control-attribution{background:#0a0c1299;color:#ffffff59;font-size:9px}.map-live .leaflet-control-attribution a{color:#ffffff80}.map-pin{width:30px;height:30px;border-radius:50% 50% 50% 4px;transform:rotate(-45deg);background:#181c28eb;border:1.5px solid rgba(255,255,255,.45);display:grid;place-items:center;box-shadow:0 4px 14px #0000008c;transition:background .25s ease,border-color .25s ease,transform .25s cubic-bezier(.3,1.4,.4,1)}.map-pin span{transform:rotate(45deg);font-size:12px;font-weight:700;color:#ffffffd9}.map-pin.focus{background:#ffcf8a;border-color:#ffe9c4;transform:rotate(-45deg) scale(1.22);box-shadow:0 6px 22px #ffb04073}.map-pin.focus span{color:#201607}.map-pin.sel{border-color:#9ef3c9}.map-you{width:16px;height:16px;border-radius:50%;background:#5aa9ff;border:2.5px solid #fff;box-shadow:0 0 #5aa9ff80;animation:youpulse 2.4s ease-out infinite}.map-you-label{position:absolute;top:20px;left:50%;transform:translate(-50%);white-space:nowrap;font-size:10px;font-weight:600;color:#ffffffbf;background:#0a0c12b3;padding:2px 7px;border-radius:8px}@keyframes youpulse{0%{box-shadow:0 0 #5aa9ff80}70%{box-shadow:0 0 0 14px #5aa9ff00}to{box-shadow:0 0 #5aa9ff00}}.map-dest-pulse{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,207,138,.9);animation:destpulse 1.6s ease-out infinite}@keyframes destpulse{0%{transform:scale(.4);opacity:1}to{transform:scale(1.25);opacity:0}}.route-glow{stroke:#ffb04038;stroke-linecap:round;stroke-linejoin:round}.route-main{stroke:#ffcf8a;stroke-linecap:round;stroke-linejoin:round}.route-main.fallback{stroke-dasharray:6 10}.route-flow{stroke:#ffffffe6;stroke-linecap:round;stroke-dasharray:2 16;animation:routeflow 1.1s linear infinite}@keyframes routeflow{to{stroke-dashoffset:-18}}@media(prefers-reduced-motion:reduce){.route-flow,.map-you,.map-dest-pulse{animation:none}}.map-overlay{position:absolute;left:72px;bottom:26px;z-index:500;max-width:340px;padding:18px 20px;border-radius:22px}.map-overlay h2{font-size:20px;letter-spacing:-.02em;margin:6px 0 2px}.map-overlay .sub{font-size:12.5px;color:#ffffff8c}.map-overlay .prevw{margin-top:7px;font-size:12px;line-height:1.5;color:#ffffff9e}.map-n{display:inline-grid;place-items:center;min-width:19px;height:19px;padding:0 4px;border-radius:7px;background:#ffcf8a29;color:#ffcf8a;font-size:11px;font-weight:700}.map-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:11px}.route-chip{padding:4px 10px;border-radius:11px;font-size:11.5px;font-weight:600;background:#ffcf8a29;color:#ffcf8a;border:1px solid rgba(255,207,138,.3)}.route-chip.dim{background:#ffffff12;color:#fff9;border-color:transparent}.route-chip.approx{border-style:dashed}.route-chip.pending{display:inline-flex;align-items:center;gap:7px;background:#ffffff12;color:#ffffffa6;border-color:transparent;animation:pending-pulse 1.4s ease-in-out infinite}@keyframes pending-pulse{50%{opacity:.55}}.map-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:800;display:grid;place-items:center;pointer-events:none;opacity:0;animation:map-loading-in .4s ease .6s forwards}.map-loading .pill{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:#10141eb8;border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa6}@keyframes map-loading-in{to{opacity:1}}.mlspin{width:13px;height:13px;border-radius:50%;flex:none;border:2px solid rgba(255,255,255,.2);border-top-color:#ffcf8ae6;animation:mlspin .8s linear infinite}@keyframes mlspin{to{transform:rotate(360deg)}}.map-fact{padding:4px 10px;border-radius:11px;font-size:11px;background:#ffffff0f;color:#fff9}.map-fact b{font-weight:600;color:#ffffff61;margin-right:4px}.mapstage .counter{z-index:500}.map-counter-title:after{content:" · "}body:is(.glasses-on,.compact) .mapstage{padding:0 10px}body:is(.glasses-on,.compact) .map-canvas{top:0;right:10px;bottom:0;left:10px;border-radius:18px}body:is(.glasses-on,.compact) .map-overlay{left:24px;bottom:16px;max-width:250px;padding:12px 14px;border-radius:16px}body:is(.glasses-on,.compact) .map-overlay h2{font-size:15px}body:is(.glasses-on,.compact) .map-overlay .prevw{display:none}body:is(.glasses-on,.compact) .map-fact{display:none}body:is(.glasses-on,.compact) .map-counter{top:10px;right:22px;bottom:auto;left:auto;transform:none;padding:4px 9px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:#0c1018ad;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}body:is(.glasses-on,.compact) .map-counter-title{display:none}.map-live .map-dark-tiles{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.92) saturate(.35)}@media(max-width:700px){body.compact #chip{max-width:calc(100vw - 16px);gap:7px;padding:6px 11px}body.compact #chip #chip-date,body.compact #chip #chip-date+.sep{display:none}body.compact .hello{width:min(92vw,560px);padding:24px 22px}body.compact .hello.welcome .steps li{grid-template-columns:1fr;gap:3px}body.compact .calwrap{overflow-x:auto;overflow-y:hidden}body.compact .week,body.compact .month,body.compact .mhead{min-width:560px}body.compact .dock-item{padding:7px 9px}body.compact .dock-item span:not(.ic){max-width:96px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.compact .dock-item:not(.on):not(.pick) span:not(.ic){display:none}body.compact #feed{display:none}body.compact .hello{max-height:100%;overflow-y:auto}body.compact .compare-cards .card,body.compact .present-list .list-row.focus,body.compact .summary-card.focus{width:min(92vw,390px)}body.compact .card{width:min(92vw,400px);min-height:0;margin-top:-136px;max-height:calc(100% + 60px);overflow-y:auto}body.compact .reader{width:min(94vw,520px);padding:22px 20px}body.compact #camera-panel{right:12px;top:70px;width:190px}body.compact .map-overlay{left:14px;bottom:14px;max-width:min(250px,calc(100vw - 28px))}body.compact .map-counter{right:18px;font-size:10.5px}}
