@property --accent{syntax: "<color>"; inherits: true; initial-value: #ffb547;}:root{color-scheme:dark;--bg: #0b0d14;--surface: #151925;--surface-2: #1c2130;--surface-3: #272d40;--line: rgba(255, 255, 255, .08);--line-2: rgba(255, 255, 255, .15);--text: #f4f2ec;--muted: #a4a9bb;--faint: #8086a0;--brand: #ffb547;--brand-hover: #ffc56e;--brand-ink: #1b1306;--heart: #ff5d7a;--accent: var(--brand);--ease: cubic-bezier(.2, .8, .2, 1);--gutter: clamp(16px, 4vw, 48px);--pad-l: max(var(--gutter), env(safe-area-inset-left));--pad-r: max(var(--gutter), env(safe-area-inset-right));--header-h: 68px;--dock-space: 0px;--max: 1560px;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + env(safe-area-inset-top) + 12px);scroll-padding-bottom:calc(var(--dock-space) + 16px)}:lang(zh-CN){font-family:system-ui,-apple-system,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,Noto Sans CJK SC,sans-serif}:lang(zh-TW){font-family:system-ui,-apple-system,PingFang TC,Microsoft JhengHei,Noto Sans TC,Noto Sans CJK TC,sans-serif}:lang(ja){font-family:-apple-system,Hiragino Sans,Hiragino Kaku Gothic ProN,Yu Gothic UI,Yu Gothic,Meiryo,Noto Sans JP,Noto Sans CJK JP,sans-serif}:lang(ko){font-family:-apple-system,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Noto Sans CJK KR,sans-serif}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;padding-bottom:var(--dock-space)}body:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(900px 520px at 85% 110%,rgba(110,120,255,.08),transparent 70%),radial-gradient(700px 480px at 0% 60%,rgba(255,181,71,.05),transparent 70%)}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}button,a{touch-action:manipulation}button:disabled{cursor:default}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}kbd{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:6px;border:1px solid var(--line-2);border-bottom-width:2px;font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted)}:focus-visible{outline:2px solid var(--brand);outline-offset:3px}.pad .nav-item:focus{outline:3px solid var(--brand);outline-offset:3px}.nav-item{scroll-margin:calc(var(--header-h) + env(safe-area-inset-top) + 12px) 16px calc(var(--dock-space) + 16px)}.sprite{position:absolute;width:0;height:0;overflow:hidden}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.touch .key-hint,[hidden]{display:none!important}html:not(.ready) body>:not(dialog){visibility:hidden;animation:reveal 0s 3s forwards}@keyframes reveal{to{visibility:visible}}.skip-link{position:fixed;z-index:100;left:12px;top:calc(env(safe-area-inset-top) + 8px);padding:10px 16px;border-radius:12px;background:var(--brand);color:var(--brand-ink);font-weight:700;text-decoration:none;transform:translateY(-160%)}.skip-link:focus{transform:none}.topbar{position:fixed;z-index:30;inset:0 0 auto;height:calc(var(--header-h) + env(safe-area-inset-top));padding:env(safe-area-inset-top) var(--pad-r) 0 var(--pad-l);display:flex;align-items:center;gap:20px;background:linear-gradient(to bottom,#0b0d14c7,#0b0d1400);transition:background-color .3s,box-shadow .3s}.scrolled .topbar,html:not([data-view=discover]) .topbar{background:#0b0d14;box-shadow:0 1px 0 var(--line)}.brand{display:inline-flex;align-items:center;gap:10px;flex:none;padding:4px 6px 4px 2px;border-radius:12px;color:var(--text);text-decoration:none}.brand-mark{width:36px;height:36px;color:var(--brand);filter:drop-shadow(0 4px 14px rgba(255,181,71,.35))}.wordmark{font:850 21px/1 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;letter-spacing:.01em;white-space:nowrap}.wordmark b{color:var(--brand);font-weight:inherit}.wordmark-local{display:none;padding-left:10px;border-left:1px solid var(--line);color:var(--muted);font-size:14px;font-weight:700;letter-spacing:.12em;white-space:nowrap}html[lang^=zh] .wordmark-local{display:inline}.tabs{display:flex;gap:2px;padding:4px;border-radius:999px;background:#ffffff0d;border:1px solid var(--line)}.tab{position:relative;display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 15px 0 12px;border-radius:999px;color:var(--muted);font-weight:650;white-space:nowrap;transition:color .2s,background-color .2s}.tab svg{width:18px;height:18px}.tab:hover{color:var(--text)}.tab[aria-current=page]{background:var(--text);color:var(--bg)}.badge{min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--heart);color:#fff;font-size:11px;font-weight:800;line-height:18px;text-align:center;font-variant-numeric:tabular-nums}.actions{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0}.search-trigger{display:flex;align-items:center;gap:10px;width:clamp(200px,20vw,300px);height:42px;padding:0 8px 0 14px;border-radius:999px;border:1px solid var(--line);background:#ffffff0f;color:var(--muted);transition:border-color .2s,background-color .2s}.search-trigger:hover{border-color:var(--line-2);background:#ffffff17}.search-trigger svg{width:18px;height:18px}.search-text{flex:1;min-width:0;text-align:start;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon-button{display:grid;place-items:center;width:42px;height:42px;flex:none;border-radius:999px;border:1px solid var(--line);background:#ffffff0f;color:var(--text);transition:background-color .2s,border-color .2s,transform .15s}.icon-button:hover{background:#ffffff1f;border-color:var(--line-2)}.icon-button:active{transform:scale(.94)}.icon-button.small{width:36px;height:36px}.icon-button.small svg{width:18px;height:18px}.lang-button{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 15px 0 12px;flex:none;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:linear-gradient(180deg,#ffffff24,#ffffff0d),#0b0d1480;box-shadow:inset 0 1px #ffffff29,0 6px 20px #00000040;font-weight:650;white-space:nowrap;transition:background-color .2s,transform .15s}.lang-button:hover{background-color:#ffffff14}.lang-button:active{transform:scale(.97)}.lang-button svg{width:18px;height:18px}.stage{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(560px,86svh,860px);padding-top:calc(var(--header-h) + env(safe-area-inset-top));touch-action:pan-y;transition:--accent .8s}.stage:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(50% 55% at 14% 78%,color-mix(in srgb,var(--accent) 24%,transparent),transparent 70%);-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent);mask-image:linear-gradient(to bottom,#000 60%,transparent)}.stage-media{position:absolute;inset:0;z-index:-2;overflow:hidden;background:var(--surface)}.stage-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s var(--ease)}.stage-img.on{opacity:1}.stage.quick .stage-img{transition-duration:.3s}.stage-scrim{position:absolute;inset:0;background:linear-gradient(90deg,#0b0d14f0,#0b0d14b3 30%,#0b0d141f 62%,#0b0d1400 80%),linear-gradient(0deg,var(--bg) 0%,rgba(11,13,20,.7) 16%,rgba(11,13,20,0) 46%),linear-gradient(180deg,#0b0d148c,#0b0d1400 22%)}.stage-body{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--pad-r) clamp(28px,5vh,56px) var(--pad-l);display:flex;align-items:flex-end;justify-content:space-between;gap:40px}.stage-copy{display:flex;flex-direction:column;justify-content:flex-end;max-width:640px;min-width:0}.stage-copy.enter>*{animation:copy-in .6s var(--ease) both}.stage-copy.enter>:nth-child(2){animation-delay:.05s}.stage-copy.enter>:nth-child(3){animation-delay:.1s}.stage-copy.enter>:nth-child(4){animation-delay:.15s}@keyframes copy-in{0%{opacity:0;transform:translateY(14px)}}.kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:14px;color:var(--accent);font-size:13px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}:lang(zh-CN) .kicker,:lang(zh-TW) .kicker,:lang(ja) .kicker,:lang(ko) .kicker{letter-spacing:.08em}.kicker-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 14px var(--accent)}.dim-tag{padding:3px 7px;border-radius:6px;border:1px solid rgba(255,255,255,.35);color:var(--text);font-size:11px;font-weight:750;letter-spacing:.08em;line-height:1}.stage-title{margin-bottom:14px;font-size:clamp(38px,5.6vw,80px);font-weight:850;line-height:1.02;letter-spacing:-.025em;text-wrap:balance;overflow-wrap:break-word;text-shadow:0 4px 40px rgba(0,0,0,.45)}:lang(zh-CN) .stage-title,:lang(zh-TW) .stage-title,:lang(ja) .stage-title,:lang(ko) .stage-title{letter-spacing:0;line-height:1.12}.stage-desc{max-width:48ch;margin-bottom:26px;color:#f4f2ecd6;font-size:clamp(15px,1.2vw,18px);line-height:1.6;text-shadow:0 1px 12px rgba(0,0,0,.5)}.stage-actions{display:flex;align-items:center;gap:12px}.play-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 30px 0 24px;border-radius:999px;background:var(--brand);color:var(--brand-ink);font-size:17px;font-weight:800;text-decoration:none;white-space:nowrap;box-shadow:0 12px 32px -10px #ffb547bf,inset 0 1px #ffffff73;transition:transform .15s var(--ease),background-color .2s,box-shadow .2s}.play-button:hover{background:var(--brand-hover);transform:translateY(-1px);box-shadow:0 16px 36px -10px #ffb547e6,inset 0 1px #ffffff73}.play-button:active{transform:scale(.97)}.play-button svg{width:18px;height:18px}.fav-button{display:grid;place-items:center;color:var(--text);transition:transform .15s,background-color .2s,color .2s}.fav-button.round{width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:#2e323eb8}.fav-button.round:hover{background:#464a56cc}.fav-button:active{transform:scale(.9)}.fav-button[aria-pressed=true] svg{fill:var(--heart);stroke:var(--heart)}.fav-button.pop svg{animation:pop .45s var(--ease)}@keyframes pop{40%{transform:scale(1.35)}}.rail{display:flex;flex-direction:column;gap:4px;width:300px;flex:none;padding:6px;border-radius:20px;background:#0b0d14d6;box-shadow:inset 0 0 0 1px var(--line),0 20px 50px -20px #0009}.rail-item{position:relative;display:grid;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:12px;padding:6px;border-radius:14px;color:var(--muted);text-align:start;overflow:hidden;transition:background-color .25s,color .25s}.rail-item .cover{width:96px;height:54px;border-radius:9px;object-fit:cover;opacity:.7;transition:opacity .25s}.rail-name{font-size:14px;font-weight:650;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rail-item:hover{color:var(--text);background:#ffffff0f}.rail-item:hover .cover{opacity:1}.rail-item.active{color:var(--text);background:#ffffff17}.rail-item.active .cover{opacity:1;box-shadow:0 0 0 2px var(--accent)}.rail-progress{position:absolute;left:0;bottom:0;width:100%;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left}.stage.autoplay .rail-item.active .rail-progress{animation:fill 8s steps(40) forwards}.stage.paused .rail-item .rail-progress{animation-play-state:paused}.stage:not(.autoplay) .rail-item.active .rail-progress{transform:none}@keyframes fill{to{transform:scaleX(1)}}.shelf,.library{max-width:var(--max);margin:0 auto;padding-left:var(--pad-l);padding-right:var(--pad-r)}.shelf{padding-top:8px}.library{padding-top:40px;padding-bottom:72px;outline:none}html:not([data-view=discover]) main{padding-top:calc(var(--header-h) + env(safe-area-inset-top))}html:not([data-view=discover]) .library{padding-top:32px}.section-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 14px;margin-bottom:16px}.section-head h2{font-size:clamp(21px,2vw,28px);font-weight:800;letter-spacing:-.01em}.count{color:var(--faint);font-weight:600;font-variant-numeric:tabular-nums}.shelf .section-head{justify-content:space-between}.text-button{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border-radius:10px;color:var(--muted);font-weight:600;text-decoration:none;transition:color .2s,background-color .2s}.text-button:hover{color:var(--text);background:#ffffff0f}.text-button svg{width:18px;height:18px}.shelf-row{display:flex;gap:16px;margin:0 calc(var(--pad-r) * -1) 0 calc(var(--pad-l) * -1);padding:4px var(--pad-r) 12px var(--pad-l);overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad-l);scrollbar-width:none;overscroll-behavior-x:contain}.shelf-row::-webkit-scrollbar{display:none}.shelf-card{flex:none;width:clamp(210px,21vw,280px);scroll-snap-align:start;color:inherit;text-decoration:none;border-radius:14px}.shelf-media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;border-radius:14px;background:var(--surface);transition:transform .25s var(--ease),box-shadow .25s}.shelf-media .cover{width:100%;height:100%;object-fit:cover}.shelf-play{position:absolute;left:10px;bottom:10px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--brand);color:var(--brand-ink);box-shadow:0 6px 16px #00000059}.shelf-play svg{width:15px;height:15px;margin-left:2px}.shelf-card:hover .shelf-media,.shelf-card:focus-visible .shelf-media{transform:translateY(-3px);box-shadow:0 0 0 2px var(--accent),0 14px 32px -12px color-mix(in srgb,var(--accent) 60%,transparent)}.shelf-text{display:flex;flex-direction:column;gap:1px;padding:10px 2px 0}.shelf-title{min-width:0;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shelf-time{color:var(--faint);font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}.chip{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border-radius:999px;border:1px solid var(--line-2);color:var(--muted);font-weight:650;white-space:nowrap;transition:color .2s,background-color .2s,border-color .2s}.chip:hover:not(:disabled){color:var(--text);border-color:#ffffff4d}.chip[aria-pressed=true]{background:var(--text);border-color:transparent;color:var(--bg)}.chip:disabled{opacity:.35}.chip-count{font-size:12px;opacity:.6;font-variant-numeric:tabular-nums}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 24px}.card{position:relative;view-transition-name:var(--vt, none)}.card-link{display:block;border-radius:16px;color:inherit;text-decoration:none}.card-link:focus-visible{outline-offset:6px}.card-media{position:relative;display:block;aspect-ratio:16 / 9;overflow:hidden;border-radius:16px;background:var(--surface);box-shadow:0 0 0 1px var(--line);transition:transform .3s var(--ease),box-shadow .3s var(--ease)}.card-media .cover{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.cover.placeholder{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(135deg,color-mix(in srgb,var(--accent) 50%,#151925),#151925);color:#ffffffd9;font-size:40px;font-weight:850}.card-play{position:absolute;left:14px;bottom:14px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:var(--brand);color:var(--brand-ink);box-shadow:0 8px 22px #0006;opacity:0;transform:translateY(8px) scale(.9);transition:opacity .25s,transform .3s var(--ease)}.card-play svg{width:17px;height:17px;margin-left:2px}.card-dim{position:absolute;left:12px;top:12px;border:0;background:#0b0d14cc;padding:5px 8px}.card-link:hover .card-media,.card-link:focus-visible .card-media{transform:translateY(-5px);box-shadow:0 0 0 2px var(--accent),0 22px 44px -16px color-mix(in srgb,var(--accent) 60%,transparent)}.card-link:hover .card-media .cover,.card-link:focus-visible .card-media .cover{transform:scale(1.05)}.card-link:hover .card-play,.card-link:focus-visible .card-play{opacity:1;transform:none}.card-body{display:block;padding:14px 4px 0}.card-title{display:block;font-size:18px;font-weight:750;line-height:1.3;overflow-wrap:break-word}.card-meta{display:flex;align-items:center;gap:7px;margin-top:3px;color:var(--muted);font-size:13px;font-weight:600}.card-meta:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}.card-desc{margin-top:8px;color:var(--faint);font-size:14px;line-height:1.55;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.card-fav{position:absolute;top:10px;right:10px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.16);background:#0b0d14bd;color:#fff;opacity:.9}.card-fav svg{width:18px;height:18px}.card-fav:hover{background:#0b0d14cc;opacity:1}.card:hover .card-fav{transform:translateY(-5px)}.empty{display:flex;flex-direction:column;align-items:center;gap:16px;padding:64px 16px 48px;text-align:center;color:var(--muted)}.empty-icon{width:54px;height:54px;stroke-width:1.4;color:var(--faint)}.empty p{max-width:36ch;font-size:16px}.ghost-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border-radius:999px;border:1px solid var(--line-2);background:#ffffff0f;color:var(--text);font-weight:700;white-space:nowrap;transition:background-color .2s,border-color .2s}.ghost-button:hover{background:#ffffff1f;border-color:#ffffff4d}.ghost-button svg{width:18px;height:18px}.footer{border-top:1px solid var(--line);background:#ffffff04}.footer-inner{max-width:var(--max);margin:0 auto;padding:32px var(--pad-r) calc(32px + env(safe-area-inset-bottom)) var(--pad-l);display:flex;align-items:center;flex-wrap:wrap;gap:12px 28px}.footer-brand .brand-mark{width:30px;height:30px}.footer-brand .wordmark{font-size:18px}.tagline{flex:1 1 280px;color:var(--muted)}.footer-links{display:flex;flex-wrap:wrap;gap:4px}.copyright{color:var(--faint);font-size:13px}.dock{display:none}.dock-item{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;height:100%;color:var(--faint);font-size:11px;font-weight:650;line-height:1.1;transition:color .2s}.dock-item>span[data-i18n]{display:block;max-width:100%;padding:0 2px;overflow:hidden;white-space:nowrap}.dock-item svg{width:22px;height:22px}.dock-item[aria-current=page]{color:var(--brand)}.dock-item[aria-current=page] svg{stroke-width:2.3}.dock-item .badge{position:absolute;top:5px;left:calc(50% + 13px)}.dice-orb{display:grid;place-items:center;width:54px;height:54px;margin-top:-22px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffd08a,var(--brand) 60%,#f09a23);color:var(--brand-ink);box-shadow:0 10px 26px -6px #ffb547b3,0 0 0 5px var(--bg);transition:transform .2s var(--ease)}.dice-orb svg{width:26px;height:26px}.dock-dice:active .dice-orb{transform:scale(.92) rotate(-12deg)}.toast{position:fixed;z-index:60;left:50%;bottom:calc(24px + var(--dock-space) + env(safe-area-inset-bottom));max-width:min(480px,calc(100vw - 32px));padding:12px 18px;border-radius:16px;background:#272d40f7;box-shadow:0 12px 32px #00000073,inset 0 0 0 1px var(--line-2);font-weight:600;text-align:center;opacity:0;pointer-events:none;transform:translate(-50%,12px);transition:opacity .25s,transform .3s var(--ease)}.toast.show{opacity:1;transform:translate(-50%)}.toast:empty{display:none}dialog.sheet{width:min(560px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding:0;border:0;border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 40px 100px #0009,inset 0 0 0 1px var(--line-2);overflow:auto;overscroll-behavior:contain}dialog.sheet[open]{animation:sheet-in .32s var(--ease)}dialog::backdrop{background:#05060a9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@keyframes sheet-in{0%{opacity:0;transform:translateY(16px) scale(.98)}}html:has(dialog[open]){overflow:hidden}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 20px 0 24px}.dialog-head h2{font-size:22px;font-weight:800}dialog.palette{margin-top:max(10vh,24px);width:min(640px,calc(100vw - 32px))}.palette-field{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:12px;padding:12px 12px 12px 20px;background:var(--surface);border-bottom:1px solid var(--line)}.palette-field>svg{color:var(--muted)}.palette-field input{flex:1;min-width:0;height:44px;border:0;background:none;font-size:18px;outline:none}.palette-field input::placeholder{color:var(--faint)}.palette-field input::-webkit-search-cancel-button{display:none}.palette-results{display:flex;flex-direction:column;gap:2px;padding:8px}.result{display:grid;grid-template-columns:88px minmax(0,1fr) auto;align-items:center;gap:14px;padding:7px 10px 7px 7px;border-radius:14px;color:inherit;text-decoration:none}.result .cover{width:88px;height:50px;border-radius:9px;object-fit:cover}.result .cover.placeholder{font-size:20px}.result-text{display:flex;flex-direction:column;min-width:0}.result-name{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-meta{color:var(--faint);font-size:13px}.result-go{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--brand-ink);background:var(--brand);opacity:0;transition:opacity .15s}.result-go svg{width:14px;height:14px;margin-left:2px}.result[aria-selected=true]{background:var(--surface-3);box-shadow:inset 3px 0 0 var(--accent)}.result[aria-selected=true] .result-go{opacity:1}.palette-status{padding:0 20px 4px;color:var(--faint);font-size:13px}.palette-status.empty{padding:28px 20px 32px;color:var(--muted);font-size:15px;text-align:center}.palette-hint{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:12px 20px 16px;border-top:1px solid var(--line);color:var(--faint);font-size:13px}.palette-hint kbd+kbd{margin-left:-2px}.palette-hint kbd:not(:first-child){margin-left:8px}.palette-hint kbd+kbd:not(:first-child){margin-left:0}dialog.dice{width:min(460px,calc(100vw - 32px))}.dice-text{padding:6px 24px 0;color:var(--muted)}.reel{position:relative;margin:18px 24px 0;aspect-ratio:16 / 9;overflow:hidden;border-radius:18px;background:var(--bg);box-shadow:0 0 0 1px var(--line-2),0 0 0 6px #ffffff08,0 18px 50px -14px color-mix(in srgb,var(--accent) 55%,transparent);transition:box-shadow .5s}.reel:before,.reel:after{content:"";position:absolute;z-index:1;top:50%;width:0;height:0;border:9px solid transparent;transform:translateY(-50%)}.reel:before{left:0;border-left-color:var(--brand)}.reel:after{right:0;border-right-color:var(--brand)}.reel-strip{display:flex;flex-direction:column;transition:transform 2.6s cubic-bezier(.1,.7,.12,1)}.reel-cell{display:block;aspect-ratio:16 / 9;flex:none}.reel-cell .cover{width:100%;height:100%;object-fit:cover}.spinning .reel-cell .cover{filter:blur(1.5px) brightness(.85)}.dice-result{min-height:112px;padding:18px 24px 0;text-align:center;opacity:0;transform:translateY(8px);transition:opacity .35s,transform .4s var(--ease)}.dice-result.show{opacity:1;transform:none}.dice-label{color:var(--accent);font-size:12px;font-weight:750;letter-spacing:.14em;text-transform:uppercase}.dice-name{margin-top:4px;font-size:26px;font-weight:850;line-height:1.15}.dice-desc{margin-top:6px;color:var(--muted);font-size:14px}.dice-actions{display:flex;flex-wrap:wrap;gap:10px;padding:20px 24px 24px}.dice-actions>*{flex:1 1 0;min-width:0;height:52px;padding-left:14px;padding-right:16px}.spinning #dice-play{opacity:.5;pointer-events:none}dialog.lang-panel{width:min(760px,calc(100vw - 32px))}.lang-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:20px 24px 24px}.lang-option{position:relative;display:flex;align-items:center;justify-content:center;gap:6px;min-height:52px;padding:8px 10px;border-radius:16px;font-size:14px;border:1px solid var(--line-2);background:var(--surface-2);font-weight:650;text-align:center;transition:background-color .2s,border-color .2s}.lang-option:hover{background:var(--surface-3)}.lang-option svg{display:none;position:absolute;top:6px;right:6px;width:14px;height:14px;stroke-width:2.8}.lang-option[aria-selected=true]{background:var(--brand);border-color:transparent;color:var(--brand-ink);font-weight:800;box-shadow:0 10px 24px -10px #ffb547cc,inset 0 1px #ffffff73}.lang-option[aria-selected=true] svg{display:block}.feedback form,.feedback-success{padding:8px 24px 24px}.feedback-intro{color:var(--muted);margin-bottom:18px}.field{display:flex;flex-direction:column;gap:8px;margin:0 0 16px;padding:0;border:0;min-width:0;position:relative}.field-label{padding:0;color:var(--text);font-size:14px;font-weight:650}legend.field-label{margin-bottom:8px}.select-button,.field textarea,.field input{width:100%;min-height:46px;padding:11px 14px;border-radius:14px;border:1px solid var(--line-2);background:var(--bg);font-size:16px}.field textarea{resize:vertical;min-height:112px;line-height:1.5}.field textarea:focus,.field input:focus,.select-button:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #ffb54733}.field [aria-invalid=true]{border-color:var(--heart)}.select-button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:start}.select-button svg{color:var(--muted)}.feedback-games{display:flex;flex-direction:column;max-height:240px;overflow:auto;padding:6px;border-radius:14px;border:1px solid var(--line-2);background:var(--surface-2)}.feedback-games button{padding:10px 12px;border-radius:10px;text-align:start}.feedback-games button:hover,.feedback-games button:focus-visible{background:var(--surface-3);outline:none}.feedback-games button[aria-pressed=true]{color:var(--brand);font-weight:700}.segmented{display:flex;flex-wrap:wrap;gap:8px}.segmented label{flex:1 1 auto}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border-radius:12px;border:1px solid var(--line-2);color:var(--muted);font-weight:650;white-space:nowrap;cursor:pointer}.segmented input:checked+span{background:var(--text);color:var(--bg);border-color:transparent}.segmented input:focus-visible+span{outline:2px solid var(--brand);outline-offset:2px}.feedback-counter{display:block;margin:-10px 0 14px;color:var(--faint);font-size:12px;text-align:end}.check{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;color:var(--muted);font-size:14px;cursor:pointer}.check input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--brand);flex:none}.feedback-privacy{color:var(--faint);font-size:12px;line-height:1.55;margin-bottom:14px}.feedback-status{margin-bottom:14px;padding:10px 14px;border-radius:12px;background:#ff5d7a1f;color:#ffb3c1;font-size:14px}.feedback-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px}.feedback-actions .play-button{height:50px;font-size:16px}.feedback-success{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:24px;text-align:center}.feedback-success>svg{width:56px;height:56px;color:#6fe3a1;stroke-width:1.6}.feedback-success p{color:var(--muted)}::view-transition-old(root),::view-transition-new(root){animation-duration:.22s}@media(max-width:1239px){.search-trigger{width:42px;padding:0;justify-content:center}.search-trigger .search-text,.search-trigger kbd{display:none}}@media(max-width:1100px){.rail{width:250px}.rail-item{grid-template-columns:80px minmax(0,1fr)}.rail-item .cover{width:80px;height:45px}.grid{gap:28px 18px}}@media(max-width:899px)and (min-height:501px){:root{--header-h: 60px;--dock-space: calc(84px + env(safe-area-inset-bottom)) }.tabs,.actions>.search-trigger,.desk-only{display:none}.dock{position:fixed;z-index:30;left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,minmax(0,1fr));height:64px;padding:0 4px;border-radius:24px;background:#151925f5;box-shadow:0 16px 40px #00000080,inset 0 0 0 1px var(--line-2)}.footer-inner{padding-bottom:28px}}@media(max-width:899px){.stage-body{flex-direction:column;align-items:stretch;gap:22px}.rail{flex-direction:row;width:auto;gap:10px;padding:0;background:none;box-shadow:none}.rail-item{flex:1;display:block;padding:0;border-radius:12px;background:none!important;box-shadow:none!important}.rail-item .cover{width:100%;height:auto;aspect-ratio:16 / 9;border-radius:12px}.rail-item.active .cover{box-shadow:0 0 0 2px var(--text)}.rail-name{display:none}.rail-progress{left:6px;right:6px;bottom:6px;width:auto;height:3px;border-radius:3px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:699px){.grid{grid-template-columns:minmax(0,1fr);gap:10px}.card-link{display:grid;grid-template-columns:124px minmax(0,1fr);align-items:center;gap:14px;padding:6px;border-radius:18px}.card-link:hover .card-media,.card-link:focus-visible .card-media{transform:none}.card-link:focus-visible{outline-offset:2px}.card-media{border-radius:12px}.card-play,.card-dim{display:none}.card-body{padding:0 44px 0 0}.card-title{font-size:16px}.card-meta{font-size:12px;margin-top:1px}.card-desc{margin-top:4px;font-size:13px;line-height:1.45}.card-fav{top:50%;right:4px;margin-top:-20px;background:transparent;border-color:transparent;color:var(--muted)}.card:hover .card-fav{transform:none}.chips{flex-wrap:nowrap;overflow-x:auto;margin:0 calc(var(--pad-r) * -1) 18px calc(var(--pad-l) * -1);padding:2px var(--pad-r) 4px var(--pad-l);scrollbar-width:none;scroll-padding-inline:var(--pad-l)}.chips::-webkit-scrollbar{display:none}.chip{flex:none;height:38px;padding:0 14px}.footer-inner{flex-direction:column;align-items:flex-start}.tagline{flex:none}}@media(max-width:599px){body{font-size:15px}.topbar{gap:10px}.wordmark{font-size:19px}.brand-mark{width:32px;height:32px}html[lang] .topbar .wordmark-local{display:none}.actions{gap:6px}.icon-button,.lang-button{height:40px}.icon-button{width:40px}.lang-button{padding:0 12px 0 10px;gap:6px}.stage{display:block;min-height:0;padding-top:0}.stage-media{inset:0 0 auto;height:min(112vw,60svh)}.stage-scrim{background:linear-gradient(0deg,var(--bg) 0%,rgba(11,13,20,.86) 18%,rgba(11,13,20,0) 55%),linear-gradient(180deg,#0b0d14b3,#0b0d1400 26%)}.stage:after{background:radial-gradient(90% 40% at 20% 60%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 70%)}.stage-body{padding-top:calc(min(112vw,60svh) - 128px);padding-bottom:8px;gap:18px}.kicker{font-size:12px;margin-bottom:10px}.stage-title{font-size:clamp(30px,9vw,40px);margin-bottom:10px}.stage-desc{font-size:15px;margin-bottom:18px}.stage-actions .play-button{flex:1;height:52px}.stage-actions .fav-button.round{width:52px;height:52px}.rail{gap:6px}.rail-item{height:28px}.rail-item .cover{display:none}.rail-item:before{content:"";position:absolute;left:0;right:0;top:12px;height:4px;border-radius:4px;background:#fff3}.rail-item.active:before{background:#ffffff59}.rail-progress{inset:12px 0 auto;height:4px;border-radius:4px;background:var(--text)}.shelf{padding-top:22px}.library{padding-top:30px;padding-bottom:40px}.shelf-card{width:64vw;max-width:260px}dialog.sheet:not(.palette){width:100%;max-height:calc(100dvh - env(safe-area-inset-top) - 24px);margin:auto 0 0;border-radius:24px 24px 0 0;padding-bottom:env(safe-area-inset-bottom)}dialog.sheet:not(.palette)[open]{animation-name:sheet-up}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}}dialog.palette{width:100%;max-height:calc(100dvh - env(safe-area-inset-top));margin:env(safe-area-inset-top) 0 auto;border-radius:0 0 24px 24px}.palette-results{max-height:none}.lang-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px 20px 20px}.dialog-head{padding:18px 16px 0 20px}.dice-text{padding:6px 20px 0}.reel{margin:16px 20px 0}.dice-result{padding:16px 20px 0;min-height:104px}.dice-actions{padding:18px 20px 20px}.feedback form,.feedback-success{padding:8px 20px 20px}}@media(max-width:599px)and (max-height:700px){.stage-media{height:min(100vw,56svh)}.stage-body{padding-top:calc(min(100vw,56svh) - 118px)}.stage-title{font-size:clamp(28px,8.4vw,36px)}.stage-desc{font-size:14px;line-height:1.5;margin-bottom:16px}.reel{width:min(100% - 40px,270px);margin-inline:auto}.dice-result{min-height:96px}}@media(max-width:899px)and (max-height:500px){:root{--header-h: 56px}.topbar{gap:12px}.tabs{padding:3px}.tab{height:34px;min-width:40px;padding:0 11px;gap:6px;justify-content:center}.tab>span:not(.badge){display:none}.stage{min-height:100svh}.stage-body{flex-direction:row;align-items:flex-end;padding-bottom:18px;gap:20px}.stage-title{font-size:clamp(26px,4.6vw,36px);margin-bottom:8px}.kicker{margin-bottom:8px;font-size:12px}.stage-desc{font-size:14px;line-height:1.45;margin-bottom:14px;max-width:44ch}.play-button{height:46px;font-size:16px}.fav-button.round{width:46px;height:46px}.rail{display:grid;grid-template-columns:repeat(3,72px);gap:6px;flex:none}.rail-item{flex:none}.rail-item .cover{border-radius:8px}.rail-progress{left:4px;right:4px;bottom:4px;height:2px}dialog.sheet{max-height:calc(100dvh - 16px)}dialog.palette{margin-top:8px}.palette-results{max-height:none}.reel{width:min(100% - 48px,300px);margin-inline:auto}.dice-result{min-height:0}}@media(hover:none){.card-link:hover .card-media{transform:none;box-shadow:0 0 0 1px var(--line)}.card-link:hover .card-media .cover{transform:none}.card-link:hover .card-play{opacity:0}.card:hover .card-fav{transform:none}.card-link:active .card-media{transform:scale(.98)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
