@font-face{font-family:Atkinson Hyperlegible Next;src:url(/assets/atkinson-hyperlegible-next-latin-BcXVPD7q.woff2)format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Atkinson Hyperlegible Mono;src:url(/assets/atkinson-hyperlegible-mono-latin-CoA7y8X5.woff2)format("woff2");font-weight:200 800;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0e1b1e;--shelf:#142629;--raised:#1b3236;--dock:#172c30;--line:#23393e;--line-strong:#2e4a50;--text:#e4eeec;--muted:#a3b8b6;--faint:#879d9c;--accent:#5ed3c3;--accent-ink:#062523;--accent-soft:#5ed3c324;--accent-line:#5ed3c380;--lilac:#b3a6f2;--lilac-soft:#b3a6f224;--coral:#f59b7f;--coral-soft:#f59b7f24;--shadow:0 18px 40px #030a0c8c;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--font:"Atkinson Hyperlegible Next", -apple-system, "Segoe UI", system-ui, sans-serif;--mono:"Atkinson Hyperlegible Mono", ui-monospace, Menlo, Consolas, monospace;--dock-bottom:calc(12px + env(safe-area-inset-bottom));--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font);color:var(--text);background:var(--bg);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-size:15px;line-height:20px}*{box-sizing:border-box}html,body,#root{background:var(--bg);overscroll-behavior:none;height:100%;margin:0}body{-webkit-tap-highlight-color:transparent}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3,p{margin:0}code,.mono{font-family:var(--mono)}.muted{color:var(--muted)}.center{text-align:center;justify-content:center}.truncate{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.tabular{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{max-width:640px;height:100svh;margin:0 auto;position:relative;overflow:hidden}.page{flex-direction:column;display:flex;position:absolute;inset:0}.scroll{-webkit-overflow-scrolling:touch;min-height:0;padding:16px 16px calc(32px + env(safe-area-inset-bottom));flex:1;overflow-y:auto}.scroll.with-dock{padding-bottom:calc(132px + env(safe-area-inset-bottom))}.scroll.with-dock.tall{padding-bottom:calc(196px + env(safe-area-inset-bottom))}.bar{min-height:calc(56px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 8px 0 4px;border-bottom:1px solid var(--raised);flex:none;align-items:center;gap:4px;display:flex}.bar-home{justify-content:space-between;gap:12px;padding-left:16px}.bar-center{grid-template-columns:44px 1fr 44px;padding-left:8px;display:grid}.bar-center .bar-name{justify-self:center}.bar-title{flex-direction:column;flex:1;min-width:0;display:flex}.bar-name{font-size:17px;font-weight:700;line-height:22px}.bar-sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:18px;overflow:hidden}.bar-sub.mono{color:var(--faint)}.bar-actions{align-items:center;gap:2px;display:flex}.icon-btn{width:44px;height:44px;color:var(--muted);border-radius:14px;flex:none;justify-content:center;align-items:center;display:flex}.bar .icon-btn:first-child{color:var(--text)}.text-size{font-size:16px;font-weight:700}.logo{align-items:center;gap:10px;display:flex}.logo-word{letter-spacing:-.01em;font-size:19px;font-weight:700;line-height:24px}.conn-pill{height:44px;color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:0 12px;display:flex}.conn-dot{background:var(--accent);border-radius:999px;width:8px;height:8px;transition:background-color .3s}.conn-connecting .conn-dot{background:var(--lilac);animation:1s ease-in-out infinite alternate blink}.conn-offline .conn-dot{background:var(--coral)}.offline{z-index:30;top:calc(env(safe-area-inset-top) + 64px);color:var(--coral);box-shadow:var(--shadow);animation:drop-in .3s var(--ease-out) both;background:#33241f;border-radius:999px;padding:8px 14px;font-size:14px;font-weight:700;position:absolute;left:50%;translate:-50%}.title{letter-spacing:-.01em;padding:0 4px;font-size:28px;font-weight:700;line-height:34px}.lead{color:var(--muted);margin:8px 4px 16px;font-size:16px;line-height:22px}.section{margin-top:20px}.section-title{color:var(--muted);align-items:center;gap:8px;margin:0 0 8px;padding:0 4px;font-size:15px;font-weight:700;line-height:20px;display:flex}.fine{color:var(--muted);align-items:flex-start;gap:8px;font-size:13px;line-height:18px;display:flex}.fine .icon{flex:none;margin-top:1px}.press{transition:transform .16s var(--ease-out)}.press:active:not(:disabled){transform:scale(.97)}.press-row{transition:background-color .12s}.press-row:active:not(:disabled){background:#e4eeec0a}.btn{white-space:nowrap;height:44px;transition:transform .16s var(--ease-out), background-color .2s ease, opacity .2s ease;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:0 14px;font-size:15px;font-weight:500;line-height:20px;display:inline-flex}.btn:disabled{opacity:.45}.btn-primary{background:var(--accent);color:var(--accent-ink);font-weight:700}.btn-soft{background:var(--raised)}.btn-outline{border-color:var(--line-strong);font-weight:700}.btn-lg{border-radius:16px;height:54px;font-size:17px;font-weight:700;line-height:22px}.btn-dock{border-radius:18px;width:100%;height:52px;font-size:17px;font-weight:700;line-height:22px}.danger{color:var(--coral)}.armed{background:var(--coral-soft);border-color:#0000}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.link-btn{width:100%;height:44px;color:var(--muted);font-size:15px;font-weight:500}.chip-btn{background:var(--raised);border-radius:14px;flex:none;align-items:center;gap:6px;height:44px;padding:0 12px;font-size:14px;font-weight:600;line-height:18px;display:flex}.chip{border-radius:12px;flex:none;align-items:center;height:36px;padding:0 14px;font-weight:700;display:flex}.chip-coral{background:var(--coral-soft);color:var(--coral)}.tag{background:var(--raised);color:var(--text);border-radius:999px;flex:none;padding:2px 8px;font-size:12px;font-weight:700;line-height:16px}.group{background:var(--shelf);border:1px solid var(--line);border-radius:20px;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.row{align-items:center;display:flex}.row+.row{border-top:1px solid var(--line)}.row-main{text-align:left;flex:1;align-items:center;gap:14px;min-width:0;padding:14px 12px 14px 16px;display:flex}.row-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.row-title{align-items:center;gap:8px;font-size:17px;font-weight:700;line-height:22px;display:flex}.row-detail{color:var(--muted);font-size:15px;line-height:20px}.row-detail.mono{font-size:14px}.chev{color:var(--faint);flex:none;display:flex}.play-ring{border:1.5px solid var(--accent-line);width:44px;height:44px;color:var(--accent);transition:transform .16s var(--ease-out), background-color .2s ease, border-color .2s ease;border-radius:999px;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.play-ring.is-active{background:var(--accent-soft);border-color:#0000}.play-ring .ring{width:calc(100% + 4px);height:calc(100% + 4px);position:absolute;inset:-2px}.answer-ctl{flex:none;align-items:center;gap:8px;margin-right:14px;display:flex}.stop-btn{background:var(--raised);width:40px;height:40px;color:var(--muted);animation:pop .22s var(--ease-out) both;border-radius:999px;flex:none;justify-content:center;align-items:center;display:flex}.skill-row{gap:12px;padding:9px 10px 9px 16px}.skill-name{font-size:15px;line-height:20px}.skill-row .row-detail{font-size:13px;line-height:18px}.avatar{background:var(--raised);color:var(--text);border-radius:14px;flex:none;justify-content:center;align-items:center;font-weight:700;display:flex;position:relative}.avatar-md{width:44px;height:44px;font-size:15px}.avatar-md .icon{color:var(--muted)}.avatar-sm{border-radius:10px;width:32px;height:32px;font-size:13px}.dot{border:3px solid var(--shelf);box-sizing:content-box;width:10px;height:10px;animation:dot-in .3s var(--ease-out) both;border-radius:999px;position:absolute;bottom:-3px;right:-3px}.dot-coral{background:var(--coral)}.dot-lagoon{background:var(--accent)}.dot-lilac{background:var(--lilac)}.dot-muted{background:#4b6164}.dot-coral:after{content:"";background:var(--coral);animation:ping 1.2s var(--ease-out) 2;border-radius:999px;position:absolute;inset:0}.status{align-items:center;gap:6px;font-size:15px;font-weight:500;line-height:20px;display:flex}.tone-coral{color:var(--coral)}.tone-lagoon{color:var(--accent)}.tone-lilac{color:var(--lilac)}.tone-muted{color:var(--faint)}.icon{flex:none}.spinner{animation:.9s linear infinite spin}.bars line{transform-box:fill-box;transform-origin:50%}.bars.live line{animation:.8s ease-in-out infinite alternate eq}.bars.live line:nth-child(2){animation-delay:-.3s}.bars.live line:nth-child(3){animation-delay:-.55s}.bars.live line:nth-child(4){animation-delay:-.15s}.bars.live line:nth-child(5){animation-delay:-.45s}.card{background:var(--shelf);border:1px solid var(--line);border-radius:22px;flex-direction:column;gap:12px;padding:16px;display:flex}.tile{background:var(--raised);width:44px;height:44px;color:var(--muted);border-radius:14px;flex:none;justify-content:center;align-items:center;display:flex}.tile-accent{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px}.tile-coral{background:var(--coral-soft);width:48px;height:48px;color:var(--coral)}.kv{grid-template-columns:72px minmax(0,1fr);gap:10px 12px;margin:0;font-size:15px;line-height:21px;display:grid}.kv dt{color:var(--muted)}.kv dd{overflow-wrap:anywhere;margin:0}.kv dd.mono{font-size:14px}.empty{text-align:center;animation:rise .4s var(--ease-out) both;flex-direction:column;align-items:center;gap:8px;padding:56px 24px;display:flex}.empty h2{margin-top:12px;font-size:19px;line-height:24px}.empty p{max-width:34ch;color:var(--muted);font-size:15px;line-height:22px}.sk{background:var(--raised);border-radius:6px;height:14px;animation:1.1s ease-in-out infinite alternate breathe-sk;display:block}.sk-title{width:42%;height:16px}.sk-line{width:72%}.skeleton .row{gap:14px;padding:16px}.skeleton .avatar{animation:1.1s ease-in-out infinite alternate breathe-sk}.dock{z-index:10;left:12px;right:12px;bottom:var(--dock-bottom);background:var(--dock);border:1px solid var(--line);box-shadow:var(--shadow);animation:dock-in .38s var(--ease-out) 60ms both;border-radius:26px;flex-direction:column;gap:8px;padding:8px;display:flex;position:absolute}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.dock{-webkit-backdrop-filter:blur(20px)saturate(140%);backdrop-filter:blur(20px)saturate(140%);background:#172c30db}}.dock-split{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mini{animation:rise .3s var(--ease-out) both;align-items:center;gap:12px;display:flex}.ring-btn{width:48px;height:48px;color:var(--accent);border-radius:999px;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.ring{position:absolute;inset:0}.ring-track,.ring-fill{fill:none;stroke-width:3px}.ring-track{stroke:var(--line)}.ring-fill{stroke:var(--accent);stroke-linecap:round;transition:stroke-dasharray .5s linear}.mini-text{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mini-text strong{font-size:16px;line-height:20px}.mini-text span{color:var(--muted);font-size:14px;line-height:18px}.swap{display:inline-grid}.swap>span{transition:opacity .16s var(--ease-out), transform .16s var(--ease-out);grid-area:1/1;display:flex}.swap .swap-a,.swap.on .swap-b{opacity:0;transform:scale(.6)}.swap.on .swap-a,.swap .swap-b{opacity:1;transform:none}.dock.player{border-radius:28px;gap:14px;padding:14px 16px 16px}.player-top{align-items:center;gap:8px;display:flex}.player-top .status{flex:1;min-width:0;font-weight:700}.progress-track{background:var(--line);border-radius:2px;height:4px;position:relative}.progress-fill{background:var(--accent);transform-origin:0;border-radius:2px;transition:transform .5s linear;position:absolute;inset:0}.progress-knob-wrap{transition:transform .5s linear;position:absolute;inset:0}.progress-knob{background:var(--text);width:14px;height:14px;box-shadow:0 0 0 3px var(--dock);border-radius:999px;position:absolute;top:-5px;left:-7px}.progress-meta{color:var(--muted);justify-content:space-between;margin-top:9px;font-size:13px;line-height:16px;display:flex}.controls{justify-content:space-between;align-items:center;padding:0 2px;display:flex}.ctl{width:44px;height:44px;color:var(--muted);transition:transform .16s var(--ease-out), opacity .2s ease;border-radius:999px;justify-content:center;align-items:center;display:flex}.ctl-md{width:52px;height:52px;color:var(--text)}.ctl:disabled{opacity:.35}.ctl-main{background:var(--accent);width:68px;height:68px;color:var(--accent-ink);border-radius:999px;justify-content:center;align-items:center;display:flex;position:relative}.ctl-main:before{content:"";z-index:-1;background:var(--accent-soft);border-radius:999px;position:absolute;inset:-6px}.ctl-main.is-playing:before{animation:1.6s ease-in-out infinite alternate halo}.reader{padding:16px 20px calc(290px + env(safe-area-inset-bottom));color:var(--text);font-size:21px;line-height:34px}.reader.size-s{font-size:17px;line-height:27px}.reader.size-l{font-size:25px;line-height:39px}.reader p{margin:0 0 18px}.reader-h{font-weight:700}.reader-li{padding-left:1em;position:relative}.reader-li:before{content:"";background:var(--faint);border-radius:999px;width:.3em;height:.3em;position:absolute;top:.68em;left:.15em}.reader code{background:var(--raised);border-radius:6px;padding:1px 5px;font-size:.86em}.sent{cursor:pointer;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:6px;transition:color .25s,background-color .25s,box-shadow .25s}.is-reading .sent{color:var(--muted)}.is-reading .sent.past{color:var(--faint)}.sent.now,.is-reading .sent.now{color:var(--text);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent-line)}.code-fig{background:var(--shelf);border:1px solid var(--line);cursor:pointer;border-radius:16px;margin:0 0 18px;padding:14px 16px;transition:border-color .25s,box-shadow .25s}.code-fig.now{border-color:var(--accent-line);box-shadow:0 0 0 3px var(--accent-soft)}.code-fig figcaption{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;font-size:14px;line-height:18px;display:flex}.code-label{align-items:center;gap:8px;display:flex}.code-fig pre{color:var(--text);margin:10px 0 0;font-size:13px;line-height:20px;overflow-x:auto}.to-row{align-items:center;gap:12px;padding:0 4px;display:flex}.to-btn{background:var(--shelf);border:1px solid var(--line);min-width:0;height:44px;color:var(--muted);border-radius:14px;align-items:center;gap:10px;padding:0 12px 0 6px;display:flex}.to-name{color:var(--text);font-size:17px;font-weight:700;line-height:22px}.to-status{color:var(--faint);flex:none;margin-left:auto}.talk-input{width:100%;color:var(--text);resize:none;background:0 0;border:0;outline:none;margin:14px 0 0;padding:0 4px;font-size:26px;line-height:36px}.talk-input::placeholder{color:#4f6669}.hint{color:var(--faint);align-items:center;gap:8px;padding:8px 4px 0;font-size:14px;line-height:20px;display:flex}.route-card{animation:rise .26s var(--ease-out) both;margin-top:18px}.route-card .section-title{margin:0;padding:0}.route-body{background:var(--raised);overflow-wrap:anywhere;border-radius:14px;padding:14px 16px;font-size:17px;line-height:24px}.route-note{color:var(--lilac);font-size:14px;line-height:20px}.fade-in{animation:.2s both fade}.chips{flex-wrap:wrap;gap:8px;display:flex}.skill-chip{background:var(--shelf);border:1px solid var(--line);height:44px;transition:transform .16s var(--ease-out), background-color .2s ease, border-color .2s ease, color .2s ease;border-radius:12px;padding:0 14px;font-size:14px;line-height:20px}.skill-chip.on{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.chip-row{display:flex}.state-chip{border-radius:999px;align-items:center;gap:8px;height:32px;padding:0 12px;font-size:14px;font-weight:700;line-height:18px;display:inline-flex}.state-chip.sm{height:24px;padding:0 10px;font-size:13px}.chip-lilac{background:var(--lilac-soft);color:var(--lilac)}.chip-muted{background:var(--raised);color:var(--muted)}.chip-lagoon{background:var(--accent-soft);color:var(--accent)}.goal{margin-top:16px}.goal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.goal-head .section-title{margin:0;padding:0}.goal-text{font-size:17px;line-height:25px}.goal-empty{color:var(--muted);font-size:15px;line-height:22px}.field{border:1px solid var(--line);background:var(--bg);width:100%;min-height:48px;color:var(--text);border-radius:14px;padding:0 14px;font-size:17px}textarea.field{resize:vertical;padding:12px 14px;line-height:24px}.answer-card{flex-direction:row;align-items:center;gap:12px;padding:14px 0 14px 16px}.answer-open{text-align:left;flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.answer-snippet{-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:15px;line-height:22px;display:-webkit-box;overflow:hidden}.answer-meta{color:var(--muted);font-size:13px;line-height:18px}.activity{margin:0;padding:0 4px;list-style:none}.act{min-height:32px;color:var(--muted);animation:rise .26s var(--ease-out) both;align-items:center;gap:12px;font-size:15px;line-height:20px;display:flex}.act .icon{color:var(--faint)}.act-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.act-text .mono{color:var(--text);font-size:14px}.act-running{color:var(--text)}.act-running .icon{color:var(--lilac)}.act-failed .icon{color:var(--coral)}.act-now{color:var(--lilac);flex:none;font-size:13px;font-weight:700;line-height:18px}.connect .scroll{padding-top:20px}.pc-card{border-radius:22px}.pc-row{align-items:center;gap:14px;display:flex}.pc-text{flex-direction:column;gap:2px;display:flex}.pc-text strong{font-size:17px;line-height:22px}.pc-text span{color:var(--muted);font-size:14px}.code-box{background:var(--bg);border:1px solid var(--line);letter-spacing:.1em;text-align:center;width:100%;height:72px;color:var(--text);border-radius:16px;justify-content:center;align-items:center;font-size:30px;font-weight:500;display:flex}.code-box::placeholder{font-family:var(--font);letter-spacing:0;color:#4f6669;font-size:19px}.note{color:var(--muted);align-items:flex-start;gap:10px;margin:18px 4px;font-size:15px;line-height:22px;display:flex}.note .icon{color:var(--accent);margin-top:3px}.tip{border-radius:20px;flex-direction:row;align-items:flex-start;gap:14px}.tip strong{font-size:16px;line-height:22px;display:block}.tip p{color:var(--muted);margin-top:4px;font-size:15px;line-height:21px}.form-error{color:var(--coral);margin:16px 4px 0;font-size:15px;line-height:21px}.connect-btn{width:100%;margin-top:24px}.connect-btn.is-done{opacity:1}.connect-btn.is-done .icon{animation:pop .32s var(--ease-out) both}.connect .mark path{stroke-dasharray:1;stroke-dashoffset:1px;animation:draw .7s var(--ease-out) .12s forwards}.connect .mark .mark-b{animation-delay:.3s}.sheet-layer{z-index:40;position:fixed;inset:0}.scrim{opacity:var(--scrim,1);transition:opacity .3s var(--ease-out);background:#040a0cb8;position:absolute;inset:0}@starting-style{.scrim{opacity:0}}.sheet-layer[data-closing] .scrim{opacity:0;transition-duration:.26s}.sheet{background:var(--shelf);border-top:1px solid var(--line);max-width:640px;max-height:90svh;padding-bottom:env(safe-area-inset-bottom);transition:transform .45s var(--ease-drawer);border-radius:28px 28px 0 0;outline:none;flex-direction:column;margin:0 auto;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translateY(0);box-shadow:0 -16px 48px #00000073}@starting-style{.sheet{transform:translateY(100%)}}.sheet-grab{touch-action:none;cursor:grab;flex:none;justify-content:center;padding:10px 0 8px;display:flex}.sheet-handle{background:var(--line-strong);border-radius:3px;width:40px;height:5px}.sheet-body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:4px 20px 24px;display:flex;overflow-y:auto}.sheet-title{font-size:22px;font-weight:700;line-height:28px}.sheet .group{border-radius:18px}.approval-head{align-items:center;gap:14px;display:flex}.approval-head p{margin-top:2px}.cmd-box{background:var(--bg);border:1px solid var(--line);overflow-wrap:anywhere;border-radius:16px;padding:16px;font-size:17px;line-height:24px}.approval-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.confirm-echo{font-size:19px;line-height:28px}.stack{flex-direction:column;gap:10px;display:flex}.field-group{flex-direction:column;gap:8px;display:flex}.field-label{color:var(--muted);font-weight:700}.sheet-section{margin-top:8px;font-size:15px}.segmented{background:var(--bg);border:1px solid var(--line);border-radius:14px;gap:3px;padding:3px;display:flex}.segmented button{height:40px;color:var(--muted);border-radius:11px;flex:1;font-weight:500;transition:background-color .2s,color .2s}.segmented button.on{background:var(--raised);color:var(--text);font-weight:700}.select-row{gap:8px;display:flex}.toggle{cursor:pointer;align-items:center;gap:12px;min-height:44px;display:flex}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-track{background:var(--raised);border-radius:999px;flex:none;width:51px;height:31px;transition:background-color .2s;position:relative}.toggle-track:after{content:"";background:var(--text);width:27px;height:27px;transition:transform .22s var(--ease-out);border-radius:999px;position:absolute;top:2px;left:2px;box-shadow:0 2px 6px #0000004d}.toggle input:checked+.toggle-track{background:var(--accent)}.toggle input:checked+.toggle-track:after{transform:translate(20px)}.toggle input:focus-visible+.toggle-track{outline:2px solid var(--accent);outline-offset:2px}.info{border-radius:18px;padding:14px 16px}.toasts{z-index:50;top:calc(env(safe-area-inset-top) + 10px);pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:12px;right:12px}.toast{pointer-events:auto;border:1px solid var(--line);max-width:520px;box-shadow:var(--shadow);text-align:left;transition:transform .32s var(--ease-out), opacity .32s var(--ease-out);background:#1b3236f5;border-radius:16px;align-items:center;gap:10px;padding:12px 16px;font-size:15px;line-height:20px;display:flex}@starting-style{.toast{opacity:0;transform:translateY(-16px)scale(.97)}}.toast.leaving{opacity:0;transition-duration:.22s;transform:translateY(-16px)scale(.97)}.toast-warn .icon,.toast-error .icon{color:var(--coral)}.toast-error{border-color:#f59b7f66}.page-forward{animation:from-right .3s var(--ease-out) both}.page-back{animation:from-left .3s var(--ease-out) both}.page-up{animation:from-below .34s var(--ease-drawer) both}.stagger{animation:rise .36s var(--ease-out) both;animation-delay:calc(var(--i,0) * 45ms)}@keyframes from-right{0%{opacity:0;transform:translate(32px)}}@keyframes from-left{0%{opacity:0;transform:translate(-32px)}}@keyframes from-below{0%{opacity:0;transform:translateY(28px)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}}@keyframes fade{0%{opacity:0}}@keyframes dock-in{0%{opacity:0;transform:translateY(16px)}}@keyframes drop-in{0%{opacity:0;transform:translateY(-8px)}}@keyframes dot-in{0%{opacity:0;transform:scale(.5)}}@keyframes ping{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes eq{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}@keyframes halo{0%{opacity:1;transform:scale(1)}to{opacity:.55;transform:scale(1.1)}}@keyframes blink{to{opacity:.35}}@keyframes breathe-sk{0%{opacity:.55}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.6)}}@keyframes draw{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.page-forward,.page-back,.page-up,.stagger,.empty,.mini,.stop-btn,.act,.route-card,.dock{animation:.18s both fade}.spinner,.bars.live line,.ctl-main.is-playing:before,.dot-coral:after,.conn-connecting .conn-dot,.sk,.skeleton .avatar{animation:none}.connect .mark path{stroke-dashoffset:0;animation:none}.press:active:not(:disabled){transform:none}.sheet{transition:opacity .2s}@starting-style{.sheet{opacity:0;transform:none}}.toast{transition:opacity .2s}@starting-style{.toast{transform:none}}.toast.leaving{transform:none}}@media (prefers-reduced-transparency:reduce){.dock{background:var(--dock);-webkit-backdrop-filter:none;backdrop-filter:none}}
