@font-face{font-family:Alegreya;src:url(/fonts/alegreya-700-latin.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Alegreya;src:url(/fonts/alegreya-700-latin-ext.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-400-latin.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-400-latin-ext.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-500-latin.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-500-latin-ext.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-700-latin.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Alegreya Sans;src:url(/fonts/alegreya-sans-700-latin-ext.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap;unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}:root{--v-950:#100b15;--v-900:#16101b;--v-850:#1f1826;--v-800:#2c2135;--v-700:#55207f;--v-600:#6d28a8;--v-500:#8433c9;--v-400:#b98bdd;--v-300:#c9a3ea;--v-200:#d9c2f0;--v-100:#ece0f7;--v-050:#f7f3f8;--apricot:#e8a34a;--font-display:"Alegreya","Iowan Old Style",Palatino,Georgia,serif;--font-body:"Alegreya Sans",-apple-system,"SF Pro Text","Segoe UI",system-ui,sans-serif;--radius:16px;--radius-sm:11px;--shell:620px;color-scheme:light;--bg:var(--v-050);--bg-bloom:none;--panel:#fffdff;--panel-2:#f4eff7;--panel-edge:rgba(255,255,255,0.9);--ink:#221a29;--ink-soft:#6a5f73;--ink-faint:#857a8e;--rule:#ebe3ef;--rule-strong:#ddd2e3;--accent:var(--v-600);--accent-hover:var(--v-500);--accent-ink:#ffffff;--accent-quiet:rgba(109,40,168,0.08);--accent-glow:rgba(109,40,168,0.2);--accent-ring:rgba(109,40,168,0.3);--on-accent-rule:rgba(255,255,255,0.26);--warn:#9c5f14;--warn-bg:#fdf1e0;--warn-edge:#f0cd9d;--danger:#9c2c22;--danger-ink:#ffffff;--danger-bg:#fdf0ee;--danger-edge:#f0c2ba;--ok:#1c6b45;--ok-rgb:28,107,69;--ok-bg:#edf7f1;--ok-edge:#b6ddc6;--shadow-card:0 1px 2px rgba(34,26,41,0.04),0 8px 22px -16px rgba(34,26,41,0.24);--shadow-pop:0 18px 48px -14px rgba(34,26,41,0.3),0 2px 8px rgba(34,26,41,0.07);--scrim:rgba(34,26,41,0.42)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:var(--v-900);--bg-bloom:none;--panel:var(--v-850);--panel-2:#251d2d;--panel-edge:rgba(217,194,240,0.07);--ink:#f3eef6;--ink-soft:#b0a5b9;--ink-faint:#8b8194;--rule:#2c2434;--rule-strong:#3a3044;--accent:var(--v-400);--accent-hover:var(--v-300);--accent-ink:#ffffff;--accent-quiet:rgba(185,139,221,0.14);--accent-glow:rgba(185,139,221,0.22);--accent-ring:rgba(185,139,221,0.42);--on-accent-rule:rgba(255,255,255,0.2);--warn:#e3a961;--warn-bg:#2a1f12;--warn-edge:#6a4a1e;--danger:#f39d92;--danger-ink:#2b1211;--danger-bg:#2e1618;--danger-edge:#74332f;--ok:#7fd6a6;--ok-rgb:127,214,166;--ok-bg:#12261c;--ok-edge:#2c5740;--shadow-card:0 1px 0 rgba(255,255,255,0.03) inset,0 10px 30px -18px rgba(0,0,0,0.9);--shadow-pop:0 24px 60px -18px rgba(0,0,0,0.86),0 0 0 1px rgba(217,194,240,0.08);--scrim:rgba(10,6,14,0.66)}}:root[data-theme=dark]{color-scheme:dark;--bg:var(--v-900);--bg-bloom:none;--panel:var(--v-850);--panel-2:#251d2d;--panel-edge:rgba(217,194,240,0.07);--ink:#f3eef6;--ink-soft:#b0a5b9;--ink-faint:#8b8194;--rule:#2c2434;--rule-strong:#3a3044;--accent:var(--v-400);--accent-hover:var(--v-300);--accent-ink:#ffffff;--accent-quiet:rgba(185,139,221,0.14);--accent-glow:rgba(185,139,221,0.22);--accent-ring:rgba(185,139,221,0.42);--on-accent-rule:rgba(255,255,255,0.2);--warn:#e3a961;--warn-bg:#2a1f12;--warn-edge:#6a4a1e;--danger:#f39d92;--danger-ink:#2b1211;--danger-bg:#2e1618;--danger-edge:#74332f;--ok:#7fd6a6;--ok-rgb:127,214,166;--ok-bg:#12261c;--ok-edge:#2c5740;--shadow-card:0 1px 0 rgba(255,255,255,0.03) inset,0 10px 30px -18px rgba(0,0,0,0.9);--shadow-pop:0 24px 60px -18px rgba(0,0,0,0.86),0 0 0 1px rgba(217,194,240,0.08);--scrim:rgba(10,6,14,0.66)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;padding:0;min-height:100dvh;background:var(--bg-bloom),var(--bg);background-repeat:no-repeat;background-attachment:fixed;color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none;text-rendering:optimizeLegibility}::selection{background:var(--accent-quiet);color:var(--ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}main{max-width:var(--shell);margin:0 auto;padding:28px 18px 96px}header.top{justify-content:space-between;gap:12px;margin-bottom:10px}.wordmark,header.top{display:flex;align-items:center}.wordmark{gap:10px;min-width:0}.seal{color:var(--accent);flex-shrink:0;transform-origin:50% 35%;transition:transform .16s ease-out;will-change:transform}@media (prefers-reduced-motion:reduce){.seal{transition:none}}header.top h1{font-family:var(--font-display);font-weight:700;font-size:1.56rem;line-height:1.1;margin:0;letter-spacing:0;color:var(--ink)}header.top nav{display:flex;align-items:center;gap:4px;flex-shrink:0}header.top nav a{color:var(--ink-faint);font-size:.86rem;font-weight:500;text-decoration:none;padding:6px 10px;border-radius:999px;transition:color .16s,background-color .16s}header.top nav a:hover{color:var(--accent);background:var(--accent-quiet)}.chord{height:1px;border:0;margin:0 0 16px;background:var(--rule)}.sub{color:var(--ink-soft);font-size:.95rem;margin:0 0 24px}.theme-toggle{display:inline-grid;place-items:center;width:34px;height:34px;padding:0;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--ink-faint);transition:color .16s,background-color .16s,border-color .16s}.theme-toggle:hover:not(:disabled){filter:none;color:var(--accent);background:var(--accent-quiet);border-color:var(--rule)}.theme-toggle svg{width:17px;height:17px;display:block}.card{position:relative;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);padding:17px;margin-bottom:16px;box-shadow:var(--shadow-card)}.card h2{font-size:.78rem;letter-spacing:.01em;color:var(--ink-faint);margin:0 0 13px;font-weight:700}.nowplaying-head{display:flex;align-items:center;gap:8px;margin:0 0 13px}.nowplaying-head h2{flex:1 1;min-width:0;margin:0}.share-btn{display:inline-grid;place-items:center;flex-shrink:0;width:34px;height:34px;padding:0;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--ink-faint);box-shadow:none}.share-btn:hover:not(:disabled){filter:none;color:var(--accent);background:var(--accent-quiet);border-color:var(--rule)}.share-btn svg{width:17px;height:17px;display:block}input[type=search],input[type=text]{width:100%;padding:13px 14px;font-family:inherit;font-size:16px;background:var(--panel-2);color:var(--ink);border:1px solid var(--rule);border-radius:var(--radius-sm);outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;transition:border-color .16s,box-shadow .16s,background-color .16s}input[type=search]:focus,input[type=text]:focus{border-color:var(--accent);background:var(--panel);box-shadow:0 0 0 3px var(--accent-ring);outline:none}input::placeholder{color:var(--ink-faint)}input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.btn,button{font-family:inherit;font-size:.97rem;font-weight:700;cursor:pointer;border-radius:var(--radius-sm);border:1px solid var(--rule-strong);background:var(--panel-2);color:var(--ink);padding:12px 16px;transition:transform .12s,box-shadow .16s,filter .16s,background-color .16s,border-color .16s,color .16s}.btn:hover,button:hover:not(:disabled){filter:brightness(1.04);border-color:var(--accent);color:var(--accent)}.btn:active,button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.45;cursor:not-allowed}.btn.primary,button.primary{background:linear-gradient(165deg,var(--v-500) 0,var(--v-600) 100%);color:var(--accent-ink);border-color:transparent;box-shadow:0 1px 0 var(--on-accent-rule) inset,0 6px 18px -8px var(--accent-glow)}.btn.primary:hover,button.primary:hover:not(:disabled){filter:brightness(1.11);color:var(--accent-ink);border-color:transparent;box-shadow:0 1px 0 var(--on-accent-rule) inset,0 8px 22px -8px var(--accent-glow)}.btn.ghost,button.ghost{background:transparent;border-color:var(--rule);color:var(--ink-soft)}.btn.ghost:hover,button.ghost:hover:not(:disabled){color:var(--accent);border-color:var(--rule-strong);background:var(--accent-quiet);filter:none}.btn.ghost.destructive:hover,button.ghost.destructive:hover:not(:disabled){color:var(--danger);border-color:var(--danger-edge);background:var(--danger-bg)}.btn.quiet,button.quiet{background:transparent;border-color:var(--rule-strong);color:var(--ink-soft)}.btn.disclosure,button.disclosure{display:block;width:100%;padding:2px 0 16px;background:none;border:none;border-radius:0;box-shadow:none;color:var(--ink-faint);font-size:.83rem;font-weight:400}.btn.disclosure:hover,button.disclosure:hover:not(:disabled){color:var(--accent);border-color:transparent;background:none;filter:none}.btn.danger,button.danger{background:var(--danger);border-color:transparent;color:var(--danger-ink)}.btn.danger:hover,button.danger:hover:not(:disabled){color:var(--danger-ink);border-color:transparent;filter:brightness(1.08)}.btn.block,button.block{width:100%}button.swap{display:grid;align-items:center;justify-items:center}button.swap>.dots,button.swap>.label{grid-area:1/1}button.swap>.dots{display:flex;align-items:center;gap:4px;opacity:0}button.swap[data-busy]>.label{opacity:0}button.swap[data-busy]>.dots{opacity:1}button.swap[data-busy]:disabled{opacity:1;cursor:progress}button.swap>.dots i{width:4px;height:4px;border-radius:50%;background:currentColor;animation:dots 1.05s ease-in-out infinite}button.swap>.dots i:nth-child(2){animation-delay:.14s}button.swap>.dots i:nth-child(3){animation-delay:.28s}@keyframes dots{0%,68%,to{opacity:.45;transform:translateY(0)}34%{opacity:1;transform:translateY(-3px)}}a.btn{display:inline-grid;place-items:center;text-decoration:none;text-align:center}ul.list{list-style:none;margin:0;padding:0}ul.list li{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--rule)}ul.list li:last-child{border-bottom:none}ul.list img{width:44px;height:44px;border-radius:5px;object-fit:cover;flex-shrink:0;background:var(--panel-2);box-shadow:0 0 0 1px var(--rule)}.rowtext{min-width:0;flex:1 1}.rowtext .t{font-weight:700;font-size:.97rem;letter-spacing:-.005em}.rowtext .a,.rowtext .t{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rowtext .a{color:var(--ink-soft);font-size:.88rem}.rowtext .by{color:var(--ink-faint);font-size:.79rem}.rowtext .by strong{color:var(--accent);font-weight:700}.rowtext .waiting{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:4px;background:var(--warn-bg);border:1px solid var(--warn-edge);color:var(--warn);font-size:.68rem;font-weight:700;letter-spacing:.01em;vertical-align:1px}ul.list button{padding:9px 15px;font-size:.9rem;flex-shrink:0}ul.list li.frozen{opacity:.55}ul.list.divided li:last-child{border-bottom:1px solid var(--rule)}.code{margin:4px 0 8px;font-family:var(--font-display);font-size:2.4rem;font-weight:700;letter-spacing:.22em;text-indent:.22em;text-align:center;color:var(--ink)}.hint{margin:-4px 0 12px;color:var(--ink-faint);font-size:.83rem}ul.list+.hint{margin-top:12px}.hint.spaced{margin-top:14px}ul.list.sortable li{position:relative;background:var(--panel);cursor:-webkit-grab;cursor:grab;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}ul.list.sortable li button{cursor:pointer}ul.list.sortable[data-dragging] li{transition:transform .17s cubic-bezier(.2,.8,.2,1)}ul.list.sortable[data-dragging] li[data-grabbed]{transition:none;z-index:3;cursor:-webkit-grabbing;cursor:grabbing;border-bottom-color:transparent;border-radius:var(--radius-sm);padding-left:10px;padding-right:10px;margin-left:-10px;margin-right:-10px;box-shadow:0 2px 4px rgba(0,0,0,.12),0 10px 26px var(--accent-glow)}.rowactions{display:flex;gap:6px;flex-shrink:0}.rowactions button{padding:9px 13px;min-width:42px}.blocked{position:relative;display:inline-flex;flex-shrink:0}.blocked-btn{opacity:.38;cursor:not-allowed}.blocked-note{position:absolute;right:0;bottom:calc(100% + 8px);z-index:5;width:max-content;max-width:15rem;padding:9px 11px;border-radius:var(--radius-sm);background:var(--panel-2);border:1px solid var(--rule-strong);color:var(--ink-soft);box-shadow:var(--shadow-pop);font-size:.78rem;line-height:1.35;text-align:left;text-transform:none;letter-spacing:normal;opacity:0;visibility:hidden;transform:translateY(3px);transition:opacity .14s ease,transform .14s ease,visibility .14s;pointer-events:none}.blocked:focus-within .blocked-note,.blocked:hover .blocked-note,.blocked[data-open] .blocked-note{opacity:1;visibility:visible;transform:none}@media (prefers-reduced-motion:reduce){.blocked-note{transition:none}}.nowplaying button{flex-shrink:0}.banner{border-radius:var(--radius-sm);padding:12px 14px;font-size:.92rem;margin-bottom:16px;border:1px solid}.banner.warn{background:var(--warn-bg);border-color:var(--warn-edge);color:var(--warn)}.banner.err{background:var(--danger-bg);border-color:var(--danger-edge);color:var(--danger)}.banner.ok{background:var(--ok-bg);border-color:var(--ok-edge);color:var(--ok)}.empty{color:var(--ink-faint);font-size:.92rem;text-align:center;padding:24px 0 20px}.empty .seal{display:block;margin:0 auto 12px;opacity:.66}.spin{font-size:.9rem;padding:14px 0}.footnote,.spin{color:var(--ink-faint);text-align:center}.footnote{font-size:.8rem;margin:14px 0 0}.boot{display:grid;place-content:center;justify-items:center;grid-gap:10px;gap:10px;min-height:100dvh;margin:-28px 0 -96px;color:var(--ink-faint)}.boot .spin{margin:0;padding:0}.boot .seal{animation:pluck 1.9s ease-in-out infinite}@keyframes pluck{0%,to{opacity:.4;transform:translateY(1px) scale(.97)}50%{opacity:1;transform:translateY(-1px) scale(1.03)}}.nowplaying{display:flex;gap:14px;align-items:center}.card h2 .playstate{display:inline-flex;align-items:center;margin-left:8px;vertical-align:-1px;opacity:.75}.card h2 .playstate svg{width:10px;height:10px}.card h2 .playstate.paused{color:var(--ink-soft);opacity:1}.nowplaying img{width:66px;height:66px;border-radius:10px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 1px var(--rule),0 8px 20px -12px rgba(0,0,0,.45)}.progress{display:flex;align-items:center;gap:10px;margin-top:14px}.progress .clock{font-size:.74rem;color:var(--ink-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.progress .bar{flex:1 1;height:4px;border-radius:999px;background:var(--rule);overflow:hidden}.progress .bar>span{display:block;height:100%;border-radius:999px;background:var(--accent);transition:width 1s linear}@media (prefers-reduced-motion:reduce){.progress .bar>span{transition:none}}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:middle}.dot.on{background:var(--ok);box-shadow:0 0 0 0 currentColor;animation:pulse 2.4s ease-out infinite;color:var(--ok)}.dot.off{background:var(--warn)}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(var(--ok-rgb),.5)}70%{box-shadow:0 0 0 7px rgba(var(--ok-rgb),0)}to{box-shadow:0 0 0 0 rgba(var(--ok-rgb),0)}}ol.steps{margin:0 0 16px;padding:0;list-style:none;counter-reset:step;color:var(--ink-soft);font-size:.95rem}ol.steps li{counter-increment:step;position:relative;padding:0 0 0 34px;margin-bottom:11px}ol.steps li:last-child{margin-bottom:0}ol.steps li:before{content:counter(step);position:absolute;left:0;top:1px;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;background:var(--accent-quiet);color:var(--accent);font-weight:700;font-size:.72rem}.scrim{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px;background:var(--scrim);-webkit-backdrop-filter:blur(3px) saturate(.85);backdrop-filter:blur(3px) saturate(.85);animation:scrim-in .16s ease-out}@keyframes scrim-in{0%{opacity:0}}.modal{width:100%;max-width:400px;background:var(--panel);border:1px solid var(--rule);border-radius:var(--radius);box-shadow:var(--shadow-pop);padding:22px;overflow:hidden;position:relative;animation:modal-in .19s cubic-bezier(.2,.9,.3,1)}.modal:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--accent),transparent 82%)}.modal[data-tone=danger]:before{background:linear-gradient(90deg,var(--danger),var(--danger-edge) 62%,transparent)}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.975)}}.modal h2{font-family:var(--font-display);font-size:1.08rem;font-weight:700;letter-spacing:.02em;margin:2px 0 8px;color:var(--ink);text-transform:none}.modal p{margin:0;color:var(--ink-soft);font-size:.96rem}.modal .actions{display:flex;gap:9px;margin-top:20px}.modal .actions button{flex:1 1}.scrim.sheet-scrim{place-items:end center;padding:0}.sheet{width:min(100%,var(--shell));background:var(--panel);border:1px solid var(--rule);border-bottom:0;box-shadow:var(--shadow-pop);padding:10px 22px calc(18px + env(safe-area-inset-bottom));position:relative;animation:sheet-in .22s cubic-bezier(.2,.9,.3,1)}.sheet,.sheet:before{border-radius:var(--radius) var(--radius) 0 0}.sheet:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,var(--accent),transparent 82%)}@keyframes sheet-in{0%{opacity:0;transform:translateY(18px)}}.sheet-handle{width:36px;height:4px;border-radius:2px;background:var(--rule-strong);margin:8px auto 14px}.sheet h2{font-family:var(--font-display);font-size:1.08rem;font-weight:700;letter-spacing:.02em;margin:0 0 6px;color:var(--ink);text-transform:none}.sheet p{margin:0;color:var(--ink-soft);font-size:.96rem}.sheet p.sheet-lead{margin-top:8px;font-size:.9rem;color:var(--ink-faint)}.sheet-links{display:flex;flex-direction:column;gap:8px;margin-top:16px}a.listen{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:13px 14px;border-radius:var(--radius-sm);border:1px solid var(--rule-strong);background:var(--panel-2);color:var(--ink);text-decoration:none;font-weight:700;transition:border-color .16s,color .16s,background-color .16s}a.listen:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-quiet)}.listen-name{min-width:0}.listen-hint{flex-shrink:0;font-size:.78rem;font-weight:400;color:var(--ink-faint);letter-spacing:.02em}a.listen:hover .listen-hint{color:var(--accent)}.sheet-close{display:block;width:100%;margin-top:12px}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.toasts{position:fixed;z-index:100;left:50%;transform:translateX(-50%);bottom:max(18px,env(safe-area-inset-bottom));width:min(100% - 24px,var(--shell));display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid var(--rule);background:var(--panel);color:var(--ink);font-size:.93rem;box-shadow:var(--shadow-pop);animation:toast-in .22s cubic-bezier(.2,.9,.3,1)}.toast[data-leaving=true]{animation:toast-out .18s ease-in forwards}@keyframes toast-in{0%{opacity:0;transform:translateY(14px) scale(.97)}}@keyframes toast-out{to{opacity:0;transform:translateY(8px) scale(.98)}}.toast .glyph{flex-shrink:0;width:18px;height:18px;margin-top:1px}.toast .glyph svg{width:100%;height:100%;display:block}.toast[data-tone=ok]{border-color:var(--ok-edge)}.toast[data-tone=ok] .glyph{color:var(--ok)}.toast[data-tone=warn]{border-color:var(--warn-edge)}.toast[data-tone=warn] .glyph{color:var(--warn)}.toast[data-tone=err]{border-color:var(--danger-edge)}.toast[data-tone=err] .glyph{color:var(--danger)}.toast[data-tone=info] .glyph{color:var(--accent)}.toast .body{flex:1 1;min-width:0}.toast .dismiss{flex-shrink:0;padding:0;width:22px;height:22px;display:grid;place-items:center;border:0;background:transparent;color:var(--ink-faint);font-size:1rem;line-height:1;border-radius:5px}.toast .dismiss:hover:not(:disabled){color:var(--ink);background:var(--panel-2);border-color:transparent;filter:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}