.landing{overflow-x:clip}.landing .wrap{width:min(1160px,100% - 32px);margin-inline:auto}.l-section{padding-top:clamp(80px,11vw,140px)}.l-head{display:grid;gap:14px;max-width:720px;margin-bottom:44px}.l-head.center{margin-inline:auto;text-align:center;justify-items:center}.l-head h2{font-size:clamp(32px,4.6vw,54px);font-weight:700;letter-spacing:-.05em;line-height:1.02}.l-head p{font-size:17px;color:var(--text-2);max-width:600px}.l-nav{position:sticky;top:12px;z-index:40;width:min(1160px,100% - 24px);margin:12px auto 0}.l-nav-inner{display:flex;align-items:center;gap:6px;padding:7px 7px 7px 20px;border-radius:999px;background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hairline-hi),var(--shadow-md)}.l-links{display:flex;gap:2px;margin-left:20px}.l-links a{padding:8px 12px;font-size:14px;font-weight:500;color:var(--text-2);border-radius:999px;transition:color .15s,background-color .15s}.l-links a:hover{color:var(--text);background:var(--bg-2)}.l-hero{position:relative;isolation:isolate;padding-top:clamp(64px,10vw,120px);text-align:center}.aurora{position:absolute;inset:-160px 0 auto;height:900px;z-index:-1;pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(#000 50%,transparent);mask-image:linear-gradient(#000 50%,transparent)}.aurora i{position:absolute;opacity:.7;will-change:translate;animation:drift 18s ease-in-out infinite alternate}.aurora i:nth-child(1){width:900px;height:640px;left:-2%;top:20px;background:radial-gradient(closest-side,oklch(.6 .24 292 / .8),transparent)}.aurora i:nth-child(2){width:800px;height:600px;right:-4%;top:-40px;background:radial-gradient(closest-side,oklch(.6 .2 330 / .5),transparent);animation-duration:22s;animation-delay:-6s}.aurora i:nth-child(3){width:720px;height:500px;left:30%;top:260px;background:radial-gradient(closest-side,oklch(.75 .13 210 / .4),transparent);animation-duration:26s;animation-delay:-12s}[data-theme=light] .aurora i{opacity:.3}@keyframes drift{50%{translate:60px 40px}to{translate:-40px 20px}}.gridlines{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 60% 50% at 50% 20%,#000,transparent 75%);mask-image:radial-gradient(ellipse 60% 50% at 50% 20%,#000,transparent 75%)}.live-pill{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 6px;font-size:13px;color:var(--text-2);border-radius:999px;background:var(--glass);border:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.live-pill b{font:500 10.5px/1 var(--font-mono);letter-spacing:.08em;padding:5px 9px;border-radius:999px;color:var(--accent-ink);background:var(--accent-soft)}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--success);animation:ping 2s infinite}@keyframes ping{0%{box-shadow:0 0 0 0 var(--success)}70%,to{box-shadow:0 0 0 7px transparent}}.l-hero h1{margin:28px auto 0;max-width:980px;font-size:clamp(46px,8.6vw,108px);font-weight:700;letter-spacing:-.06em;line-height:.94}.rot{display:inline-grid;vertical-align:bottom;text-align:left}.rot span{grid-area:1 / 1;opacity:0;translate:0 50%;filter:blur(8px);animation:rot 12s infinite}.rot span:nth-child(2){animation-delay:3s}.rot span:nth-child(3){animation-delay:6s}.rot span:nth-child(4){animation-delay:9s}@keyframes rot{0%{opacity:0;translate:0 50%;filter:blur(8px)}5%,21%{opacity:1;translate:0 0;filter:blur(0)}26%,to{opacity:0;translate:0 -50%;filter:blur(8px)}}.lede{max-width:620px;margin:26px auto 34px;font-size:clamp(16px,1.6vw,19px);line-height:1.55;color:var(--text-2)}.proof{display:flex;gap:8px 22px;justify-content:center;flex-wrap:wrap;margin:26px 0 0;padding:0;list-style:none;font-size:13px;color:var(--text-3)}.proof li{display:inline-flex;align-items:center;gap:7px}.proof svg{color:var(--success)}.stage{perspective:1600px;margin-top:clamp(56px,8vw,88px)}.stage:after{content:"";display:block;height:1px;max-width:900px;margin:0 auto;background:linear-gradient(90deg,transparent,var(--accent),transparent);box-shadow:0 0 40px 10px var(--glow);opacity:.5}.mock{max-width:1060px;margin-inline:auto;overflow:hidden;text-align:left;border-radius:22px;background:var(--bg);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hairline-hi),0 0 0 8px color-mix(in oklab,var(--surface) 40%,transparent),0 60px 120px -40px var(--glow),var(--shadow-lg);transform-origin:50% 0}@supports (animation-timeline: view()){.mock{animation:tilt linear both;animation-timeline:view();animation-range:entry 0% cover 45%}@keyframes tilt{0%{transform:rotateX(22deg) scale(.93);opacity:.5}}}.mock-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-2)}.mock-bar i{width:11px;height:11px;border-radius:50%;background:var(--border-strong)}.mock-bar .url{margin:0 auto;padding:5px 40px;font:400 12px/1 var(--font-mono);color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:8px}.mock-app{display:grid;grid-template-columns:200px minmax(0,1fr);min-height:470px}.mock-side{display:flex;flex-direction:column;gap:3px;padding:18px 12px;border-right:1px solid var(--border);background:color-mix(in oklab,var(--surface) 55%,transparent)}.mock-side>.logo{margin:0 8px 14px}.mock-side>span{display:flex;align-items:center;gap:10px;padding:8px 10px;font-size:13px;color:var(--text-2);border-radius:9px}.mock-side>span.on{color:var(--text);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border)}.mock-side>span.on svg{color:var(--accent-ink)}.mock-search{margin-bottom:8px;border:1px solid var(--border);background:var(--bg-2);color:var(--text-3)!important}.mock-search kbd{margin-left:auto}.mock-xp{margin-top:auto;display:grid!important;gap:6px!important;border:1px solid var(--border);background:var(--surface);font-size:12px!important}.mock-xp .mono{font-size:10.5px;color:var(--text-3)}.mock-main{padding:26px 28px;display:grid;gap:10px;align-content:start;min-width:0}.mock-main h3{font-size:26px;font-weight:700;letter-spacing:-.04em}.mock-sub{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:14px;font-weight:600}.mock-now{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.mock-card{display:flex;gap:10px;padding:10px;border-radius:14px;background:radial-gradient(200px 80px at 0 0,color-mix(in oklab,var(--s-playing) 12%,transparent),transparent 70%),var(--surface);border:1px solid var(--border);min-width:0}.mock-card .cover{width:50px;flex-shrink:0;border-radius:8px}.mock-card>div{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}.mock-card b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px}.mock-btn{display:inline-flex;align-items:center;gap:4px;width:fit-content;margin-top:auto;padding:4px 9px;font-size:10.5px;font-weight:600;color:#fff;border-radius:999px;background:var(--accent)}.mock-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.mock-grid .cover{border-radius:9px}.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.tile-b{position:relative;display:flex;flex-direction:column;gap:8px;min-height:280px;padding:28px;overflow:hidden;border-radius:24px;background:var(--surface);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hairline-hi);transition:border-color .3s}.tile-b:hover{border-color:var(--border-strong)}.tile-b h3{font-size:21px;letter-spacing:-.03em}.tile-b p{font-size:14.5px;color:var(--text-2);max-width:46ch}.tile-ic{display:grid;place-items:center;width:38px;height:38px;margin-bottom:6px;border-radius:12px;color:var(--accent-ink);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-line)}.viz{margin-top:auto;padding-top:24px}.b-7{grid-column:span 7}.b-5{grid-column:span 5}.b-tall{grid-row:span 2}.shelf-viz{display:grid;gap:10px}.row-b{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:16px;background:radial-gradient(200px 70px at 0 0,color-mix(in oklab,var(--c) 14%,transparent),transparent 70%),var(--bg-2);border:1px solid var(--border)}.row-label{font-size:13.5px;font-weight:600;min-width:74px}.mini-covers{display:flex;gap:8px;margin-left:auto}.mini-covers .cover{width:52px;border-radius:8px}.log-viz{display:grid;gap:14px}.log-viz .chip{cursor:default}.log-viz .chip.on{color:var(--accent-ink);border-color:var(--accent-line);background:var(--accent-soft)}.find-viz{display:grid;gap:16px}.fake-search{display:flex;align-items:center;gap:10px;padding:11px 14px;font-size:14px;border-radius:12px;background:var(--bg-2);border:1px solid var(--border);color:var(--text)}.fake-search svg{color:var(--text-3)}.caret{width:1.5px;height:16px;margin-left:-8px;background:var(--accent);animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.fan{position:relative;height:150px}.fan .cover{position:absolute;bottom:0;left:50%;width:98px;border-radius:12px;box-shadow:0 20px 40px -16px #000000b3;transform-origin:50% 120%;translate:-50% 0;transition:rotate .5s var(--ease-spring),translate .5s var(--ease-spring)}.fan .cover:nth-child(1){rotate:-15deg}.fan .cover:nth-child(2){z-index:2}.fan .cover:nth-child(3){rotate:15deg}.tile-b:hover .fan .cover:nth-child(1){rotate:-24deg}.tile-b:hover .fan .cover:nth-child(3){rotate:24deg}.tile-b:hover .fan .cover:nth-child(2){translate:-50% -8px}.journal-viz{display:flex;align-items:center;gap:24px}.journal-viz .ring-label b{font-size:18px}.mini-heat{flex:1;display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,1fr);gap:4px}.ladder-l{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}.ladder-l li{position:relative;display:grid;gap:6px;align-content:start;padding:18px 16px;border-radius:18px;background:var(--surface);border:1px solid var(--border)}.ladder-l li:nth-child(n+4){background:radial-gradient(200px 100px at 50% 0,var(--accent-soft),transparent 70%),var(--surface)}.ladder-l li:last-child{border-color:var(--accent-line);box-shadow:0 0 40px -16px var(--glow)}.lvl-n{font-size:12px;color:var(--accent-ink)}.ladder-l b{font-size:16px;letter-spacing:-.02em}.ladder-l .mono{color:var(--text-2)}.xp-rules-l{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:28px 0 0;padding:0;list-style:none}.xp-rules-l li{display:inline-flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;font-size:13.5px;background:var(--surface);border:1px solid var(--border);border-radius:999px}.xp-rules-l b{font:600 12px/1 var(--font-mono);padding:6px 9px;border-radius:999px;color:var(--accent-ink);background:var(--accent-soft)}.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.trio-item{display:grid;gap:8px;align-content:start;padding:26px;border-radius:22px;background:var(--surface);border:1px solid var(--border)}.trio-item>svg{color:var(--success);margin-bottom:14px}.trio-item h3{font-size:18px}.trio-item p{font-size:14.5px;color:var(--text-2)}.faq{display:grid;gap:10px;max-width:780px;margin-inline:auto}.faq details{border-radius:18px;background:var(--surface);border:1px solid var(--border);transition:border-color .2s}.faq details[open]{border-color:var(--border-strong)}.faq summary{display:flex;align-items:center;gap:16px;padding:18px 22px;cursor:pointer;list-style:none;font-size:16px;font-weight:550;letter-spacing:-.01em}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";margin-left:auto;font:300 22px/1 var(--font-mono);color:var(--text-3);transition:rotate .3s var(--ease-out)}.faq details[open] summary:after{rotate:45deg}.faq details::details-content{block-size:0;overflow:clip;transition:block-size .35s var(--ease-out),content-visibility .35s allow-discrete}.faq details[open]::details-content{block-size:auto}.faq details p{padding:0 22px 20px;font-size:15px;color:var(--text-2)}.l-cta{position:relative;isolation:isolate;overflow:hidden;display:grid;justify-items:center;gap:16px;margin-top:clamp(80px,11vw,140px);padding:clamp(56px,8vw,96px) 24px;text-align:center;border-radius:32px;border:1px solid var(--border);background:radial-gradient(760px 380px at 50% 118%,oklch(.6 .24 292 / .7),transparent 70%),radial-gradient(500px 240px at 10% -20%,oklch(.75 .13 210 / .18),transparent 70%),var(--surface)}.l-cta .gridlines{-webkit-mask-image:radial-gradient(ellipse 60% 70% at 50% 100%,#000,transparent 75%);mask-image:radial-gradient(ellipse 60% 70% at 50% 100%,#000,transparent 75%)}.l-cta h2{font-size:clamp(40px,6vw,72px);font-weight:700;letter-spacing:-.055em;line-height:1}.l-cta p{max-width:460px;font-size:17px;color:var(--text-2);margin-bottom:10px}.cta-flame{color:var(--s-playing);filter:drop-shadow(0 0 16px var(--s-playing))}.l-foot{margin-top:80px;padding:28px 0 36px;border-top:1px solid var(--border)}.foot-row{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.foot-row nav{margin-left:auto;gap:18px;font-size:13.5px;color:var(--text-2)}.foot-row nav a:hover,.foot-row a:hover{color:var(--text)}.foot-row .tiny a{text-decoration:underline;text-underline-offset:3px}@supports (animation-timeline: view()){.reveal{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 60%}@keyframes reveal{0%{opacity:0;translate:0 32px;filter:blur(6px)}}}@media(max-width:960px){.l-links{display:none}.b-7,.b-5{grid-column:span 12}.b-tall{grid-row:auto}.mock-app{grid-template-columns:minmax(0,1fr)}.mock-side{display:none}.mock-now{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mock-now>:nth-child(3){display:none}.ladder-l{grid-template-columns:repeat(3,minmax(0,1fr))}.trio{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.mock-main{padding:18px}.mock-now{grid-template-columns:minmax(0,1fr)}.mock-now>:nth-child(2){display:none}.mock-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.mock-grid>:nth-child(n+5){display:none}.mock-bar .url{padding-inline:14px}.mini-covers .cover:nth-child(n+3){display:none}.ladder-l{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tile-b{padding:22px}.foot-row nav{margin-left:0}}@media(prefers-reduced-motion:reduce){.rot span{animation:none}.rot span:first-child{opacity:1;translate:none;filter:none}.mock,.reveal{animation:none!important}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2) format("woff2-variations");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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,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}@view-transition{navigation:auto}:root{color-scheme:dark;interpolate-size:allow-keywords;--accent: oklch(.6 .24 292);--accent-2: oklch(.74 .16 300);--accent-3: oklch(.82 .11 210);--accent-ink: light-dark(oklch(.5 .23 292), oklch(.8 .13 296));--accent-soft: light-dark(oklch(.95 .035 292), oklch(.6 .24 292 / .16));--accent-softer: light-dark(oklch(.98 .015 292), oklch(.6 .24 292 / .08));--accent-line: light-dark(oklch(.84 .08 292), oklch(.6 .24 292 / .45));--glow: oklch(.6 .24 292 / .5);--bg: light-dark(oklch(.985 .004 290), oklch(.135 .012 285));--bg-2: light-dark(oklch(.962 .006 290), oklch(.172 .014 285));--surface: light-dark(oklch(1 0 0), oklch(.163 .013 285));--surface-2: light-dark(oklch(.975 .005 290), oklch(.2 .015 285));--glass: light-dark(oklch(1 0 0 / .75), oklch(.15 .012 285 / .7));--border: light-dark(oklch(.91 .008 290), oklch(.26 .016 285));--border-strong: light-dark(oklch(.84 .012 290), oklch(.35 .02 285));--hairline-hi: light-dark(oklch(1 0 0 / .9), oklch(1 0 0 / .06));--text: light-dark(oklch(.2 .02 285), oklch(.97 .004 285));--text-2: light-dark(oklch(.46 .02 285), oklch(.74 .014 285));--text-3: light-dark(oklch(.5 .016 285), oklch(.66 .014 285));--success: light-dark(oklch(.56 .15 155), oklch(.78 .16 160));--warning: light-dark(oklch(.62 .15 65), oklch(.83 .15 80));--error: light-dark(oklch(.56 .21 25), oklch(.72 .17 22));--info: light-dark(oklch(.56 .18 255), oklch(.75 .13 250));--s-playing: oklch(.72 .18 50);--s-backlog: oklch(.7 .17 292);--s-finished: oklch(.8 .15 95);--s-parked: oklch(.75 .11 220);--font: "Geist Variable", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--r-sm: 8px;--r: 12px;--r-lg: 18px;--r-xl: 24px;--shadow-sm: 0 1px 2px light-dark(oklch(.2 .02 285 / .06), oklch(0 0 0 / .5));--shadow-md: 0 1px 2px light-dark(oklch(.2 .02 285 / .05), oklch(0 0 0 / .4)), 0 12px 28px -14px light-dark(oklch(.2 .02 285 / .22), oklch(0 0 0 / .7));--shadow-lg: 0 2px 4px light-dark(oklch(.2 .02 285 / .04), oklch(0 0 0 / .4)), 0 40px 80px -28px light-dark(oklch(.3 .06 290 / .32), oklch(0 0 0 / .85));--ring: 0 0 0 3px var(--accent-soft);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.34, 1.4, .64, 1)}[data-theme=light]{color-scheme:light}[data-theme=dark]{color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scrollbar-gutter:stable}body{margin:0;min-height:100dvh;font:400 15px/1.55 var(--font);color:var(--text);background:var(--bg);font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{isolation:isolate}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}p{text-wrap:pretty;margin:0}h1,h2,h3,h4{margin:0;text-wrap:balance;font-weight:650;letter-spacing:-.025em;line-height:1.15}button{font:inherit;color:inherit}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent-ink);outline-offset:3px;border-radius:6px}*{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}.eyebrow{font:500 11px/1.3 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:13px}.tiny{font-size:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.grad-text{background:linear-gradient(100deg,var(--accent-ink),oklch(.78 .16 330) 45%,var(--accent-3));-webkit-background-clip:text;background-clip:text;color:transparent}.btn{--_bg: var(--surface);--_fg: var(--text);--_bd: var(--border);display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:40px;padding:0 16px;border-radius:999px;font:550 14px/1 var(--font);letter-spacing:-.005em;white-space:nowrap;color:var(--_fg);background:var(--_bg);border:1px solid var(--_bd);box-shadow:inset 0 1px 0 var(--hairline-hi);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform .15s var(--ease-out),box-shadow .2s,background-color .2s,border-color .2s,color .2s}.btn:hover{--_bg: var(--surface-2);--_bd: var(--border-strong)}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn.primary{--_fg: #fff;--_bd: transparent;background:linear-gradient(180deg,oklch(.66 .23 292),var(--accent));box-shadow:inset 0 1px #ffffff40,inset 0 -1px #00000026,0 8px 22px -10px var(--glow)}.btn.primary:hover{box-shadow:inset 0 1px #ffffff4d,0 12px 30px -10px var(--glow),0 0 0 4px #8a54ff24;box-shadow:inset 0 1px #ffffff4d,0 12px 30px -10px var(--glow),0 0 0 4px oklch(.6 .24 292 / .14)}.btn.quiet{--_bg: transparent;--_bd: transparent;box-shadow:none;color:var(--text-2)}.btn.quiet:hover{--_bg: var(--bg-2);color:var(--text)}.btn.danger{--_fg: var(--error)}.btn.danger:hover{--_bd: color-mix(in oklab, var(--error) 50%, transparent);--_bg: color-mix(in oklab, var(--error) 8%, var(--surface))}.btn.sm{min-height:32px;padding:0 12px;font-size:13px;gap:6px}.btn.lg{min-height:50px;padding:0 26px;font-size:15.5px}.btn.icon{width:40px;padding:0}.btn.icon.sm{width:32px}.btn.block{width:100%}.input,.textarea,.select{width:100%;min-height:42px;padding:10px 14px;font:400 14.5px/1.4 var(--font);color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--r);outline:none;transition:border-color .15s,box-shadow .15s}.textarea{field-sizing:content;min-width:0;min-height:5lh;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--text-3)}.input:hover,.textarea:hover,.select:hover{border-color:var(--border-strong)}.input:focus,.textarea:focus,.select:focus{border-color:var(--accent);box-shadow:var(--ring)}.select{appearance:none;padding-right:36px;cursor:pointer;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center}.field{display:grid;gap:6px}.field>span{font-size:13px;font-weight:550;color:var(--text-2)}input[type=range]{width:100%;accent-color:var(--accent)}.seg{display:inline-flex;gap:2px;padding:3px;max-width:100%;overflow-x:auto;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;scrollbar-width:none}.seg button,.seg a{display:inline-flex;align-items:center;gap:7px;min-height:32px;padding:0 12px;white-space:nowrap;font:550 13px/1 var(--font);color:var(--text-2);background:none;border:0;border-radius:9px;cursor:pointer;transition:color .15s,background-color .15s}.seg button:hover,.seg a:hover{color:var(--text)}.seg [aria-pressed=true],.seg [aria-current=page]{color:var(--text);background:var(--surface);box-shadow:0 1px 2px #00000026,inset 0 0 0 1px var(--border)}.seg .count{font:500 11px/1 var(--font-mono);color:var(--text-3)}.chip{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;white-space:nowrap;font:500 12.5px/1 var(--font);color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:999px;cursor:pointer;transition:color .15s,border-color .15s,background-color .15s}button.chip:hover{color:var(--text);border-color:var(--border-strong)}.chip[aria-pressed=true]{color:var(--accent-ink);border-color:var(--accent-line);background:var(--accent-soft)}.chips{display:flex;flex-wrap:wrap;gap:6px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:inset 0 1px 0 var(--hairline-hi),var(--shadow-sm)}.pad{padding:20px}.skel{background:linear-gradient(90deg,var(--bg-2) 25%,var(--surface-2) 50%,var(--bg-2) 75%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--r)}@keyframes shimmer{to{background-position:-200% 0}}::view-transition-old(root){animation:.14s ease-in both vt-out}::view-transition-new(root){animation:.2s ease-out both vt-fade}::view-transition-old(page){animation:.12s ease-in both vt-out}::view-transition-new(page){animation:.26s var(--ease-out) both vt-in}@keyframes vt-fade{0%{opacity:0}}@keyframes vt-out{to{opacity:0}}@keyframes vt-in{0%{opacity:0;translate:0 6px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.skip-link{position:fixed;top:10px;left:10px;z-index:1000;padding:10px 16px;font-weight:600;color:var(--accent-ink);background:var(--surface);border:1px solid var(--accent-line);border-radius:var(--r);box-shadow:var(--ring);transform:translateY(-160%);transition:transform .15s}.skip-link:focus-visible{transform:none}h1[tabindex="-1"]:focus{outline:none}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row.center{justify-content:center}.row.end{justify-content:flex-end}.stack{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;align-content:start}.grow{flex:1;min-width:0}.center{text-align:center}.link{display:inline-block;margin-top:10px}.link:hover{color:var(--text)}kbd{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;font:500 10.5px/1 var(--font-mono);color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-bottom-width:2px;border-radius:5px}code{font:500 .9em var(--font-mono);padding:1px 5px;border-radius:5px;background:var(--bg-2);border:1px solid var(--border)}.logo{display:inline-flex;align-items:center}.logo img{height:100%;width:auto}.logo-light,[data-theme=light] .logo-dark{display:none}[data-theme=light] .logo-light{display:block}.s-playing{--c: var(--s-playing)}.s-backlog{--c: var(--s-backlog)}.s-finished{--c: var(--s-finished)}.s-parked{--c: var(--s-parked)}.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--c, var(--accent));box-shadow:0 0 8px color-mix(in oklab,var(--c, var(--accent)) 60%,transparent)}.s-ic{color:var(--c, var(--accent-ink))}.s-playing-c{color:var(--s-playing)}.s-finished-c{color:var(--s-finished)}.xp-pill{display:inline-flex;align-items:center;flex-shrink:0;padding:3px 8px;font:600 11px/1 var(--font-mono);color:var(--accent-ink);background:var(--accent-soft);border-radius:999px}.xp-bar{display:block;height:6px;overflow:hidden;border-radius:99px;background:var(--bg-2);box-shadow:inset 0 0 0 1px var(--border)}.xp-bar i,.progress i,.log-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),oklch(.75 .16 330),var(--accent-3));box-shadow:0 0 10px var(--glow);transition:width .6s var(--ease-out)}.progress,.log-bar{display:block;height:6px;overflow:hidden;border-radius:99px;background:var(--bg-2)}.progress i,.log-bar i{background:linear-gradient(90deg,var(--s-playing),oklch(.78 .16 70));box-shadow:none}.avatar{display:inline-grid;place-items:center;flex-shrink:0;border-radius:50%;font-family:var(--font-mono);font-weight:600;color:#fff;background:linear-gradient(135deg,oklch(.62 .2 var(--h)),oklch(.55 .2 calc(var(--h) + 40)));box-shadow:inset 0 1px #ffffff4d}.spinner{width:16px;height:16px;flex-shrink:0;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{rotate:360deg}}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100dvh}.side{position:sticky;top:0;height:100dvh;overflow-y:auto;z-index:5;display:flex;flex-direction:column;gap:18px;padding:22px 14px 14px;background:color-mix(in oklab,var(--surface) 55%,transparent);border-right:1px solid var(--border)}.side-logo{padding:2px 10px;width:fit-content}.side-search{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 8px 0 12px;cursor:pointer;font:400 13.5px/1 var(--font);color:var(--text-3);background:var(--bg-2);border:1px solid var(--border);border-radius:11px;transition:border-color .15s,color .15s}.side-search:hover{border-color:var(--border-strong);color:var(--text-2)}.side-search kbd{margin-left:auto}.side-nav{display:grid;gap:2px}.side-nav a,.side-shelves a{position:relative;display:flex;align-items:center;gap:12px;min-height:40px;padding:0 12px;border-radius:11px;font-size:14.5px;font-weight:500;color:var(--text-2);transition:color .15s,background-color .15s}.side-nav a svg{opacity:.8}.side-nav a:hover,.side-shelves a:hover{color:var(--text);background:var(--bg-2)}.side-nav a.active{color:var(--text);background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--border),inset 0 1px 0 var(--hairline-hi)}.side-nav a.active svg{opacity:1;color:var(--accent-ink)}.side-nav a.active:before{content:"";position:absolute;left:-14px;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--accent);box-shadow:0 0 12px var(--glow)}.side-shelves{display:grid;gap:1px}.side-shelves .eyebrow{padding:0 12px 6px;color:var(--text-3)}.side-shelves a{min-height:34px;font-size:13.5px;gap:10px}.side-shelves a .dot{width:6px;height:6px;--c: var(--text-3);box-shadow:none}.side-shelves a .mono{margin-left:auto;font-size:11px}.side-foot{margin-top:auto;display:grid;gap:8px}.xp-card{display:grid;gap:8px;padding:14px;border-radius:14px;background:radial-gradient(200px 80px at 0 0,var(--accent-soft),transparent 70%),var(--surface);border:1px solid var(--border);transition:border-color .2s}.xp-card:hover{border-color:var(--accent-line)}.xp-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:13.5px}.xp-card-top .mono{font-size:11.5px;color:var(--text-2)}.side-you{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:12px;transition:background-color .15s}.side-you:hover,.side-you.active{background:var(--bg-2)}.side-you>span:last-child{display:grid;min-width:0;font-size:13.5px}.side-you b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.main{min-width:0;view-transition-name:page}.mtop,.tabbar{display:none}.page{width:100%;max-width:1280px;margin:0 auto;padding:40px clamp(16px,4vw,48px) 96px}.page.narrow{max-width:760px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:32px}.page-head h1{font-size:clamp(30px,4vw,46px);font-weight:700;letter-spacing:-.045em;line-height:1.05;margin-top:6px}.page-head p.muted{margin-top:8px}.section{margin-top:44px}.page-head+.section,.page-head+.search-big+.section{margin-top:0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.section-head.wrap{flex-wrap:wrap}.section-head h2{display:flex;align-items:center;gap:10px;font-size:19px}.inline-empty{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:22px 24px;color:var(--text-2);background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-lg)}.inline-empty a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.inline-empty.err{border-color:color-mix(in oklab,var(--error) 45%,transparent);color:var(--text)}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 32px;align-items:start}.split.wide-left{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.center-page{min-height:70vh;display:grid;place-content:center;justify-items:center;gap:12px;text-align:center}.center-page h1{font-size:40px;letter-spacing:-.04em}.cover{position:relative;aspect-ratio:3 / 4;overflow:hidden;border-radius:12px;background:var(--bg-2);box-shadow:0 0 0 1px light-dark(oklch(0 0 0 / .06),oklch(1 0 0 / .06))}.cover img{width:100%;height:100%;object-fit:cover}.cover-gen{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:9% 9% 10%;container-type:inline-size;color:oklch(.97 .02 var(--h));background:linear-gradient(to bottom,oklch(0 0 0 / .25),transparent 28%),radial-gradient(120% 80% at 100% 0%,oklch(.62 .17 calc(var(--h) + 50) / .9),transparent 60%),radial-gradient(90% 70% at 0% 100%,oklch(.35 .12 calc(var(--h) - 30)),transparent 70%),linear-gradient(160deg,oklch(.42 .14 var(--h)),oklch(.2 .06 var(--h)))}.cover-gen:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.35;mix-blend-mode:overlay;background:repeating-linear-gradient(135deg,oklch(1 0 0 / .08) 0 1px,transparent 1px 9px)}.cg-top{display:flex;justify-content:space-between;gap:6px;font:500 max(9px,7cqi)/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;opacity:1}.cg-top span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cg-title{position:relative;z-index:1;font-weight:750;letter-spacing:-.05em;line-height:.92;text-wrap:balance;overflow-wrap:anywhere;text-shadow:0 2px 20px oklch(0 0 0 / .3)}.t-lg .cg-title{font-size:20cqi}.t-md .cg-title{font-size:15cqi}.t-sm .cg-title{font-size:12.5cqi}.t-xs .cg-title{font-size:10cqi}.cover.xs{width:44px;border-radius:7px;flex-shrink:0}.cover.xxs{width:30px;border-radius:5px;flex-shrink:0}.cover.xs .cover-gen,.cover.xxs .cover-gen{padding:10%}.cover.xs .cg-top,.cover.xxs .cg-top{display:none}.cover.xs .cg-title,.cover.xxs .cg-title{font-size:22cqi}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:24px 18px}.card-row{scrollbar-width:none;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,172px);gap:18px;overflow-x:auto;padding:4px 4px 14px;margin:-4px -4px 0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}.card-row>*{scroll-snap-align:start}.gcard{position:relative;min-width:0}.gcard-link{display:grid;gap:4px}.gcard .cover{transition:translate .3s var(--ease-out),box-shadow .3s var(--ease-out)}.gcard .cover img{transition:scale .6s var(--ease-out)}.gcard-link:hover .cover{translate:0 -4px;box-shadow:0 0 0 1px var(--accent-line),0 20px 36px -18px var(--glow)}.gcard-link:hover .cover img{scale:1.04}.gcard-link:focus-visible{outline:none}.gcard-link:focus-visible .cover{outline:2px solid var(--accent-ink);outline-offset:3px}.gcard-title{margin-top:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;letter-spacing:-.01em}.gcard-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;color:var(--text-3)}.gcard-reason{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:500 11px/1.3 var(--font-mono);color:var(--accent-ink)}.shelf-tag,.gcard-score,.quick-add{position:absolute;top:8px;display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;font:600 11px/1 var(--font);color:#fff;border-radius:999px;background:#0b0a13a6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid oklch(1 0 0 / .14);pointer-events:none}.shelf-tag{left:8px}.shelf-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--c);box-shadow:0 0 6px var(--c)}.gcard-score{right:8px;font-family:var(--font-mono)}.quick-add{right:8px;width:30px;height:30px;padding:0;justify-content:center;pointer-events:auto;cursor:pointer;opacity:0;scale:.9;transition:opacity .2s,scale .2s var(--ease-spring),background-color .2s}.gcard:hover .quick-add,.quick-add:focus-visible{opacity:1;scale:1}.quick-add:hover{background:var(--accent)}@media(hover:none){.quick-add{opacity:1;scale:1}}.now-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:14px}.now-card{display:flex;gap:16px;padding:14px;border-radius:var(--r-xl);background:radial-gradient(300px 120px at 0 0,color-mix(in oklab,var(--s-playing) 12%,transparent),transparent 70%),var(--surface);border:1px solid var(--border);box-shadow:inset 0 1px 0 var(--hairline-hi),var(--shadow-sm)}.now-cover{width:92px;flex-shrink:0}.now-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.now-title{display:block;font-size:16.5px;font-weight:650;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.now-title:hover{color:var(--accent-ink)}.now-body .progress{margin-top:6px}.now-actions{display:flex;gap:6px;margin-top:auto;padding-top:8px;flex-wrap:wrap}.custom-shelves{margin:-4px 0 20px}.chip.dashed{border-style:dashed;background:transparent}.chip.static{cursor:default}.chip .mono{font-size:11px}.custom-head{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:-6px 0 20px}.custom-head p{margin-right:auto}.sort .select{min-height:36px;padding-block:6px;font-size:13px;width:auto}.hero-empty{max-width:560px;margin:8vh auto 0;display:grid;justify-items:center;gap:14px;text-align:center}.hero-empty h1{font-size:clamp(34px,5vw,52px);letter-spacing:-.05em;font-weight:700}.hero-empty .row{margin-top:12px}.hero-empty-art{position:relative;width:220px;height:150px;margin-bottom:12px}.ghost-cover{position:absolute;bottom:0;left:50%;width:82px;aspect-ratio:3 / 4;border-radius:12px;border:1px dashed color-mix(in oklab,var(--c) 70%,transparent);background:color-mix(in oklab,var(--c) 14%,var(--surface));translate:calc(-50% + (var(--i) - 1.5) * 46px) 0;rotate:calc((var(--i) - 1.5) * 9deg);transform-origin:50% 140%;animation:bob 4s ease-in-out infinite;animation-delay:calc(var(--i) * -1s)}@keyframes bob{50%{translate:calc(-50% + (var(--i) - 1.5) * 46px) -6px}}.search-big{position:relative;display:flex;align-items:center;margin-bottom:36px}.search-big>svg{position:absolute;left:18px;color:var(--text-3);pointer-events:none}.search-big .input{min-height:56px;padding-left:50px;padding-right:48px;font-size:17px;border-radius:16px;box-shadow:var(--shadow-sm)}.search-big .btn{position:absolute;right:10px}.search-big input::-webkit-search-cancel-button{display:none}.results-count{margin-bottom:16px}.release-list{display:grid;gap:4px;margin:0;padding:0;list-style:none}.release-row{display:flex;align-items:center;gap:12px;padding:8px 10px 8px 8px;border-radius:14px;transition:background-color .15s}.release-row:hover{background:var(--surface)}.release-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.release-text{display:grid;min-width:0}.release-text b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600}.countdown{padding:4px 8px;font-size:11px;color:var(--accent-ink);background:var(--accent-soft);border-radius:999px}.game-page{position:relative;padding-top:24px}.game-backdrop{position:absolute;inset:0 0 auto;height:520px;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(800px 400px at 30% 0,oklch(.5 .16 var(--h) / .45),transparent 70%);-webkit-mask-image:linear-gradient(#000 30%,transparent);mask-image:linear-gradient(#000 30%,transparent)}.game-backdrop img{width:100%;height:100%;object-fit:cover;opacity:.35;filter:blur(28px) saturate(1.3);scale:1.15}[data-theme=light] .game-backdrop img{opacity:.25}.back{margin:0 0 20px -10px}.game-hero{display:flex;gap:clamp(20px,4vw,40px);align-items:flex-end;margin-bottom:36px}.game-cover{width:clamp(130px,18vw,220px);flex-shrink:0;border-radius:16px;box-shadow:0 0 0 1px #ffffff14,var(--shadow-lg)}.game-title{display:grid;gap:8px;min-width:0}.game-title h1{font-size:clamp(32px,5.4vw,64px);font-weight:700;letter-spacing:-.05em;line-height:.98;overflow-wrap:anywhere}.critic{display:flex;align-items:center;gap:10px;margin-top:4px}.critic-score{display:grid;place-items:center;width:44px;height:44px;font-size:16px;font-weight:600;border-radius:12px;color:var(--success);background:color-mix(in oklab,var(--success) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--success) 35%,transparent)}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.game-main{display:grid;gap:0;min-width:0}.game-side{display:grid;gap:16px}.game-main .section{margin-top:40px}.game-main .section h2,.about h2{font-size:18px;margin-bottom:12px}.label{display:block;margin-bottom:10px;font:500 11px/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}h2.label{font-weight:500;letter-spacing:.12em}.your{display:grid;gap:22px}.your h2{font-size:18px}.your-head{display:flex;align-items:center;justify-content:space-between}.fav.on{color:#ff5f77;color:oklch(.7 .2 15);border-color:color-mix(in oklab,oklch(.7 .2 15) 40%,transparent);background:color-mix(in oklab,oklch(.7 .2 15) 10%,var(--surface))}.fav.on svg{fill:currentColor}.shelf-seg{width:100%}.shelf-seg button{flex:1;justify-content:center}.your-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:16px;align-items:center;padding:16px;border-radius:14px;background:var(--bg-2)}.your-stats>div{display:grid;gap:2px}.your-stats b{font-size:17px;font-weight:600}.your-block .row{gap:14px}.your-block .textarea{margin-bottom:8px}.your.add{gap:8px}.shelf-pick{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:10px}.shelf-btn{position:relative;display:grid;gap:3px;justify-items:start;padding:14px 16px;text-align:left;cursor:pointer;background:radial-gradient(200px 80px at 0 0,color-mix(in oklab,var(--c) 14%,transparent),transparent 70%),var(--bg-2);border:1px solid var(--border);border-radius:14px;transition:border-color .2s,translate .2s var(--ease-out)}.shelf-btn:hover{border-color:color-mix(in oklab,var(--c) 60%,transparent);translate:0 -2px}.shelf-btn .dot{margin-bottom:6px}.shelf-btn b{font-size:15px}.shelf-btn .xp-pill{position:absolute;top:12px;right:12px}.prose{max-width:70ch;font-size:15.5px;line-height:1.75;color:var(--text-2);white-space:pre-line}.prose.clamp{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.about .btn{margin:8px 0 0 -12px}.shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.shots button{padding:0;border:0;border-radius:12px;overflow:hidden;cursor:zoom-in;background:var(--bg-2)}.shots img{width:100%;aspect-ratio:16 / 9;object-fit:cover;transition:scale .5s var(--ease-out)}.shots button:hover img{scale:1.04}.details dl{display:grid;gap:12px;margin:0 0 14px}.details dl div{display:grid;gap:2px}.details dt{font-size:12px;color:var(--text-3)}.details dd{margin:0;font-size:14px}.details a{text-decoration:underline;text-underline-offset:3px}.mini-timeline{display:grid;gap:14px;margin:0;padding:0;list-style:none}.mini-timeline li{position:relative;display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:12px;align-items:start;font-size:13.5px}.mini-timeline li:not(:last-child):after{content:"";position:absolute;left:4px;top:16px;bottom:-14px;width:1px;background:var(--border)}.mini-timeline li>span:nth-child(2){display:grid;gap:2px}.mini-timeline b{font-weight:550}.tl-dot{width:9px;height:9px;margin-top:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tl-note{font-size:13px;font-style:italic;color:var(--text-2)}.journal-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px}.level-card{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px 24px;align-items:center;background:radial-gradient(400px 200px at 0 0,var(--accent-soft),transparent 70%),var(--surface)}.level-text{display:grid;gap:6px}.level-text h2{font-size:30px;letter-spacing:-.04em;font-weight:700}.ring{position:relative;flex-shrink:0}.ring svg{display:block}.ring-arc{transition:stroke-dashoffset 1s var(--ease-out);filter:drop-shadow(0 0 8px var(--glow))}.ring-label{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;line-height:1;gap:4px}.ring-label b{font-size:26px;font-weight:600;letter-spacing:-.03em}.ladder{grid-column:1 / -1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin:4px 0 0;padding:0;list-style:none}.ladder li{display:grid;gap:4px;justify-items:start;padding:10px;border-radius:12px;font-size:12.5px;font-weight:550;background:var(--bg-2);border:1px solid var(--border)}.ladder li.locked{color:var(--text-3);background:transparent;border-style:dashed}.ladder li.now{border-color:var(--accent-line);background:var(--accent-softer);box-shadow:0 0 24px -8px var(--glow)}.ladder-dot{display:grid;place-items:center;width:20px;height:20px;font:600 10.5px/1 var(--font-mono);border-radius:6px;color:#fff;background:var(--accent)}.ladder li.locked .ladder-dot{color:var(--text-3);background:var(--bg-2)}.stat-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.stat{display:grid;gap:2px;align-content:start;padding:18px}.stat-ic{display:grid;place-items:center;width:32px;height:32px;margin-bottom:10px;border-radius:10px;color:var(--accent-ink);background:var(--accent-soft)}.stat b{font-size:26px;font-weight:650;letter-spacing:-.035em}.heat-card{overflow-x:auto}.heat{display:grid;grid-auto-flow:column;grid-template-rows:repeat(7,auto);grid-auto-columns:minmax(10px,1fr);gap:3px;min-width:700px}.heat i,.heat-legend i,.mini-heat i{aspect-ratio:1;border-radius:3px;background:color-mix(in oklab,var(--text) 7%,transparent)}.h1{background:#8a54ff4d!important;background:oklch(.6 .24 292 / .3)!important}.h2{background:#8a54ff8c!important;background:oklch(.6 .24 292 / .55)!important}.h3{background:#8a54ffcc!important;background:oklch(.6 .24 292 / .8)!important}.h4{background:var(--accent-2)!important;box-shadow:0 0 8px var(--glow)}.heat i.future{background:transparent}.heat-legend{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:12px}.heat-legend i{width:11px}.heat-legend span{margin:0 4px}.timeline{display:grid;gap:26px}.tl-date{margin-bottom:8px;font:500 11px/1.3 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.tl-day ul{display:grid;gap:2px;margin:0;padding:0;list-style:none}.tl-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:8px 10px 8px 8px;border-radius:12px;font-size:14px;transition:background-color .15s}.tl-item:hover{background:var(--surface)}.tl-text{display:grid;gap:2px;min-width:0}.tl-text>span:first-child{overflow:hidden;text-overflow:ellipsis}.timeline>.btn{justify-self:start}.bar-row{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;align-items:center;padding:6px 0;font-size:13.5px}.bar-row>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar{height:8px;overflow:hidden;border-radius:99px;background:var(--bg-2)}.bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-2))}.xp-rules{display:grid;gap:10px;margin:0;list-style:none}.xp-rules li{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px}.profile-card{display:flex;gap:24px;align-items:flex-start}.swatches{display:flex;gap:8px;flex-wrap:wrap}.swatches button{width:28px;height:28px;padding:0;border-radius:50%;cursor:pointer;border:2px solid transparent;background:linear-gradient(135deg,oklch(.62 .2 var(--h)),oklch(.55 .2 calc(var(--h) + 40)));transition:scale .15s var(--ease-spring)}.swatches button:hover{scale:1.1}.swatches button[aria-checked=true]{border-color:var(--bg);box-shadow:0 0 0 2px var(--text)}.settings-group{margin-top:36px}.settings-group>h2{margin-bottom:12px;font-size:16px}.setting{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.setting>div:first-child{flex:1;min-width:220px}.setting.bordered{border-top:1px solid var(--border)}.status-line{display:flex;gap:12px;align-items:flex-start}.status-line>svg{margin-top:2px;color:var(--accent-ink);flex-shrink:0}.status-line.ok>svg{color:var(--success)}.setup-steps{display:grid;gap:6px;margin:12px 0 0;padding-left:18px;color:var(--text-2)}.setup-steps a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.kbd-list{display:grid;gap:12px}.kbd-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px}.kbd-list kbd{margin-left:3px}.about-line{margin-top:40px}.about-line a{text-decoration:underline;text-underline-offset:3px}.welcome{min-height:100dvh;padding:0 clamp(16px,4vw,40px) 120px;background:radial-gradient(900px 500px at 50% -10%,oklch(.6 .24 292 / .22),transparent 70%)}.welcome-top{display:flex;align-items:center;gap:16px;max-width:1100px;margin:0 auto;padding:22px 0}.steps{display:flex;gap:6px;margin:0 auto}.steps i{width:36px;height:4px;border-radius:99px;background:var(--border);transition:background-color .3s}.steps i.on{background:linear-gradient(90deg,var(--accent),var(--accent-2))}.welcome-card{max-width:560px;margin:10vh auto 0;display:grid;gap:20px}.welcome-card h1,.welcome-head h1{font-size:clamp(34px,5vw,54px);font-weight:700;letter-spacing:-.05em;line-height:1.02}.input.big{min-height:56px;font-size:18px;border-radius:14px}.welcome-wide{max-width:1100px;margin:4vh auto 0}.welcome-head{display:grid;gap:10px;margin-bottom:28px;max-width:640px}.pick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:18px 14px}.pick{position:relative;display:grid;gap:6px;padding:0;text-align:left;cursor:pointer;background:none;border:0}.pick .cover{transition:box-shadow .2s,scale .2s var(--ease-spring),opacity .2s}.pick:hover .cover{scale:1.03}.pick.on .cover{box-shadow:0 0 0 3px var(--accent),0 16px 32px -14px var(--glow)}.pick-check{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#fff;background:var(--accent);scale:0;transition:scale .25s var(--ease-spring)}.pick.on .pick-check{scale:1}.pick-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:550}.pick-bar{position:fixed;left:50%;bottom:20px;z-index:10;translate:-50% 0;display:flex;align-items:center;gap:10px;width:min(560px,calc(100% - 32px));padding:10px 10px 10px 20px;border-radius:999px;background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.dialog{width:min(520px,calc(100% - 32px));max-height:min(86dvh,760px);padding:0;overflow:auto;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow-lg)}.dialog[open]{animation:dialog-in .25s var(--ease-out)}.dialog::backdrop{background:#0303068c;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.dialog[open]::backdrop{animation:fade-in .2s ease-out}@keyframes dialog-in{0%{opacity:0;scale:.96}}@keyframes fade-in{0%{opacity:0}}.dialog-body{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;padding:22px}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:-4px}.dialog-head h2{font-size:18px}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}fieldset.field{margin:0;padding:0;border:0}fieldset.field legend{padding:0;margin-bottom:8px;font-size:13px;font-weight:550;color:var(--text-2)}.log-form{display:grid;grid-template-columns:minmax(0,1fr);gap:20px}.log-game{display:flex;align-items:center;gap:12px}.log-game b{font-size:16px}.hours-custom{display:inline-flex;align-items:center;gap:6px}.hours-custom .input{width:76px;min-height:30px;padding:4px 10px;border-radius:999px;font-size:13px}.finish-toggle{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;cursor:pointer;background:var(--bg-2);border:1px solid var(--border);transition:border-color .2s,background-color .2s}.finish-toggle>span{display:grid;gap:2px}.finish-toggle input{width:18px;height:18px;accent-color:var(--accent)}.finish-toggle>svg{color:var(--s-finished)}.finish-toggle.on{border-color:color-mix(in oklab,var(--s-finished) 55%,transparent);background:color-mix(in oklab,var(--s-finished) 10%,var(--surface))}.lightbox{width:min(1100px,calc(100% - 32px));background:var(--bg)}.lightbox img{width:100%;border-radius:12px}.palette{width:min(620px,calc(100% - 32px));margin-top:12vh;max-height:70dvh}.palette[open]{display:flex;flex-direction:column}.palette .dialog-body{padding:0;gap:0;display:flex;flex-direction:column;min-height:0;flex:1}.palette-input{display:flex;align-items:center;gap:12px;padding:6px 16px;border-bottom:1px solid var(--border)}.palette-input>svg{color:var(--text-3);flex-shrink:0}.palette-input .input{min-height:54px;padding:0;font-size:16.5px;border:0;background:none;box-shadow:none}.palette-list{flex:1;overflow-y:auto;margin:0;padding:8px;list-style:none}.palette-list li{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 10px;border-radius:12px;cursor:pointer;font-size:14.5px}.palette-list li.on{background:var(--accent-soft)}.pi-icon{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border-radius:8px;color:var(--text-2);background:var(--bg-2)}.pi-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.pi-hint{font-size:12.5px;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}.pi-enter{color:var(--text-3);flex-shrink:0}.pi-error{padding:10px;color:var(--error);cursor:default!important}.palette-foot{display:flex;gap:16px;padding:10px 18px;border-top:1px solid var(--border)}.palette-foot kbd{margin-right:2px}.palette-foot span:last-child:not(:first-child){margin-left:auto}.toasts{position:fixed;left:50%;bottom:24px;z-index:100;translate:-50% 0;display:grid;gap:8px;justify-items:center;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 12px 10px 18px;max-width:min(460px,calc(100vw - 32px));font-size:13.5px;font-weight:500;color:#fff;border-radius:999px;background:#191924f0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid oklch(1 0 0 / .1);box-shadow:var(--shadow-lg);animation:toast-in .4s var(--ease-spring)}.toast>span:first-child,.toast>span:nth-child(2):not(.xp-pill){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.toast .xp-pill{color:#fff;background:var(--accent)}.toast.err{background:color-mix(in oklab,var(--error) 75%,black)}@keyframes toast-in{0%{opacity:0;translate:0 12px;scale:.95}}.stars{display:inline-flex;gap:2px;color:#f3ba25}.star{position:relative;width:var(--s);height:var(--s)}.star svg{width:100%;height:100%}.stars:not(.ro) .star{cursor:pointer}.half{position:absolute;top:0;bottom:0;width:50%;padding:0;border:0;background:none;cursor:pointer}.half.l{left:0}.half.r{right:0}.half:focus-visible{outline:2px solid var(--accent-ink);outline-offset:0;border-radius:4px}@media(max-width:1100px){.game-grid,.journal-top{grid-template-columns:minmax(0,1fr)}}@media(max-width:900px){.shell{grid-template-columns:minmax(0,1fr)}.side{display:none}.mtop{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;padding:10px 12px 10px 18px;padding-top:max(10px,env(safe-area-inset-top));background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);border-bottom:1px solid color-mix(in oklab,var(--border) 70%,transparent)}.mtop-xp{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:12px;color:var(--text-2)}.mtop-xp .xp-bar{width:52px}.tabbar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom));z-index:20;display:flex;padding:6px;border-radius:24px;background:var(--glass);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.tabbar a{flex:1;display:grid;justify-items:center;align-content:center;gap:3px;min-height:54px;font-size:11px;font-weight:600;color:var(--text-3);border-radius:18px;transition:color .15s,background-color .15s}.tabbar a.active{color:var(--accent-ink);background:var(--accent-soft)}.page{padding-top:24px;padding-bottom:120px}.toasts{bottom:96px}.split,.split.wide-left{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.page-head{margin-bottom:24px}.page-head>.btn{display:none}.now-grid{grid-template-columns:minmax(0,1fr)}.now-cover{width:76px}.card-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:18px 12px}.card-row{grid-auto-columns:128px;gap:12px}.gcard-title{font-size:13px}.game-hero{flex-direction:column;align-items:flex-start}.your-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.your-stats .btn{grid-column:1 / -1}.shelf-pick{grid-template-columns:minmax(0,1fr)}.shelf-seg button{padding:0 8px;font-size:12.5px}.shelf-seg .dot{display:none}.level-card{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.ladder{grid-template-columns:repeat(3,minmax(0,1fr))}.profile-card{flex-direction:column;align-items:stretch}.pick-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.dialog.sheet{width:100%;max-width:none;margin:auto 0 0;border-radius:24px 24px 0 0;max-height:92dvh}.dialog.sheet[open]{animation:sheet-in .3s var(--ease-out)}@keyframes sheet-in{0%{translate:0 40px}}.palette{margin-top:8px;max-height:80dvh}.pi-hint{display:none}}.storage-banner{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px clamp(16px,4vw,48px) 0;padding:12px 16px;font-size:13.5px;border-radius:var(--r);color:var(--text);background:color-mix(in oklab,var(--warning) 12%,var(--surface));border:1px solid color-mix(in oklab,var(--warning) 45%,transparent)}.storage-banner>svg{color:var(--warning);flex-shrink:0}.storage-banner span{flex:1;min-width:200px}.storage-banner a{font-weight:600;text-decoration:underline;text-underline-offset:3px}.meter{display:block;height:6px;margin-top:8px;overflow:hidden;border-radius:99px;background:var(--bg-2)}.meter i{display:block;height:100%;border-radius:inherit;background:var(--accent)}.meter.warn i{background:var(--warning)}.crash{min-height:100dvh;display:grid;place-items:center;padding:24px 16px}.crash-card{width:min(560px,100%);display:grid;gap:16px}.crash-card h1{font-size:clamp(30px,5vw,42px);font-weight:700;letter-spacing:-.045em}.crash-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;color:var(--warning);background:color-mix(in oklab,var(--warning) 14%,transparent)}.crash-details summary{cursor:pointer;font-size:13px;color:var(--text-2)}.crash-details pre{max-height:240px;overflow:auto;margin:10px 0 0;padding:12px;font:12px/1.5 var(--font-mono);white-space:pre-wrap;border-radius:var(--r);background:var(--bg-2);border:1px solid var(--border)}.toast{pointer-events:auto}.toast-action{margin-left:2px;padding:5px 12px;font:600 12.5px/1 var(--font);color:#fff;cursor:pointer;background:#ffffff24;border:1px solid oklch(1 0 0 / .2);border-radius:999px}.toast-action:hover{background:#ffffff3d}.timer-dot{width:8px;height:8px;flex-shrink:0;border-radius:50%;background:var(--error);box-shadow:0 0 0 0 var(--error);animation:rec 1.6s infinite}.timer-dot.off,.timer-controls.stopped .timer-dot{background:var(--text-3);animation:none}@keyframes rec{0%{box-shadow:0 0 color-mix(in oklab,var(--error) 60%,transparent)}70%,to{box-shadow:0 0 0 6px transparent}}.timer-controls{display:inline-flex;align-items:center;gap:8px;padding:2px 2px 2px 10px;border-radius:999px;background:var(--bg-2);border:1px solid var(--border)}.timer-controls .mono{font-size:13px;font-variant-numeric:tabular-nums}.your-timer{margin-top:-12px}.timer-pill{position:fixed;right:20px;bottom:20px;z-index:25;display:flex;align-items:center;gap:10px;max-width:min(420px,calc(100vw - 32px));padding:6px 6px 6px 14px;border-radius:999px;background:var(--glass);border:1px solid var(--border);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);animation:toast-in .4s var(--ease-spring)}.timer-pill-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:600}.timer-pill .mono{font-size:13px;font-variant-numeric:tabular-nums;color:var(--text-2)}.tl-entry{display:grid;gap:2px;min-width:0;padding:4px 6px;margin:-4px -6px;text-align:left;font:inherit;color:inherit;cursor:pointer;background:none;border:0;border-radius:8px}.tl-entry:hover{background:var(--bg-2)}.mini-timeline .tl-entry{font-size:13.5px}.field-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:12px}.dialog-actions.spread{justify-content:flex-start}.run-badge{margin-left:10px;vertical-align:middle;font-size:12px}.choice-row .chips{margin:0}.runs{display:grid;gap:10px;margin:0;padding:0;list-style:none}.runs li{display:grid;gap:2px;font-size:13.5px}[data-drop-over]{outline:2px dashed var(--accent);outline-offset:3px;background:var(--accent-softer)}.drop-zone[data-drop-over]{border-radius:var(--r-xl)}.gcard[draggable=true]{cursor:grab}.gcard[draggable=true]:active{cursor:grabbing}.gcard button.gcard-link{width:100%;padding:0;font:inherit;color:inherit;text-align:left;background:none;border:0;cursor:pointer;position:relative}.select-box{position:absolute;top:8px;left:8px;display:grid;place-items:center;width:24px;height:24px;border-radius:7px;color:transparent;background:#0b0a138c;border:1.5px solid oklch(1 0 0 / .7);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.gcard.selected .select-box{color:#fff;background:var(--accent);border-color:var(--accent)}.gcard.selected .cover{box-shadow:0 0 0 3px var(--accent),0 16px 32px -14px var(--glow)}.select-bar{position:fixed;left:50%;bottom:20px;z-index:26;translate:-50% 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:min(760px,calc(100% - 32px));padding:8px 8px 8px 18px;border-radius:22px;background:var(--glass);border:1px solid var(--border);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8)}.shell:has(.timer-pill) .select-bar{bottom:80px}.select-bar .select{width:auto;min-height:34px;padding-block:4px;font-size:13px}@media(max-width:900px){.timer-pill{right:50%;translate:50% 0;bottom:calc(88px + env(safe-area-inset-bottom))}.select-bar{bottom:calc(88px + env(safe-area-inset-bottom))}.shell:has(.timer-pill) .select-bar{bottom:calc(148px + env(safe-area-inset-bottom))}}@media(max-width:640px){.field-row{grid-template-columns:minmax(0,1fr)}.select-bar{padding-left:14px}}.page:has(.select-bar){padding-bottom:200px}.goal-line{display:flex;align-items:center;gap:6px;margin-top:8px;color:var(--accent-ink);font-weight:550}.level-text{position:relative}.level-share{position:absolute;top:-4px;right:-4px}.year-strip{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:16px;margin-top:16px}.goal-card,.review-card{display:grid;gap:10px;align-content:start}.goal-card.has-goal{grid-template-columns:auto 1fr;align-items:center;gap:20px}.goal-card h2,.review-card h2{font-size:20px;letter-spacing:-.03em}.goal-text{display:grid;gap:6px;justify-items:start}.goal-text .btn{margin-left:-12px}.goal-form{display:grid;gap:12px}.goal-form .input{max-width:160px}.pace-good{color:var(--success);font-weight:550}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin:0;padding:0;list-style:none}.badge-grid li{display:flex;gap:12px;align-items:flex-start;padding:14px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border)}.badge-grid li>span:nth-child(2){display:grid;gap:2px;min-width:0}.badge-grid li.earned{background:radial-gradient(180px 80px at 0 0,var(--accent-soft),transparent 70%),var(--surface);border-color:var(--accent-line)}.badge-grid li.locked{border-style:dashed}.badge-grid li.locked b{color:var(--text-2)}.badge-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border-radius:14px;color:#fff;background:linear-gradient(135deg,var(--accent),oklch(.62 .2 330));box-shadow:0 8px 20px -10px var(--glow)}.badge-icon.locked{color:var(--text-3);background:var(--bg-2);box-shadow:inset 0 0 0 1px var(--border)}.insights{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px;align-items:start}.month-bars,.rating-bars,.review-months{display:flex;align-items:flex-end;gap:6px;height:150px}.month-bar,.rating-bar,.review-months>div{flex:1;display:grid;grid-template-rows:1fr auto;gap:6px;height:100%;text-align:center;min-width:0}.month-bar i,.rating-bar i,.review-months i{align-self:end;display:block;width:100%;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,var(--accent-2),var(--accent))}.month-bar i.empty,.rating-bar i.empty{background:var(--bg-2)}.rating-bars{height:110px;gap:4px}.insight-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start}.insight-facts>div{display:grid;gap:2px}.insight-facts b{font-size:22px;font-weight:650;letter-spacing:-.03em}.waiting{display:grid;gap:10px;margin:0;padding:0;list-style:none}.waiting li{display:flex;gap:12px;align-items:center}.waiting li>span{display:grid;min-width:0;font-size:14px}.waiting b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.celebration{width:min(480px,calc(100% - 32px));overflow:hidden;text-align:center}.celebration .dialog-body{position:relative;padding:36px 28px 28px}.celebration-body{position:relative;z-index:1;display:grid;gap:14px;justify-items:center}.celebration-body h2{font-size:30px;font-weight:700;letter-spacing:-.04em}.celebration-covers{display:flex;justify-content:center;margin-bottom:4px}.celebration-covers .cover{width:110px;box-shadow:var(--shadow-lg);animation:pop .6s var(--ease-spring) both}.celebration-covers .cover+.cover{margin-left:-36px;rotate:8deg}.celebration-covers .cover:first-child:not(:only-child){rotate:-6deg}.celebration-level{display:grid;place-items:center;width:112px;height:112px;padding:12px;border-radius:32px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#fff;background:linear-gradient(135deg,var(--accent),oklch(.62 .2 330));box-shadow:0 20px 50px -14px var(--glow);animation:pop .6s var(--ease-spring) both}.celebration-badges{display:grid;gap:8px;width:100%;margin:0;padding:0;list-style:none;text-align:left}.celebration-badges li{display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;background:var(--bg-2)}.celebration-badges li>span:last-child{display:grid}.celebration .row{margin-top:8px}@keyframes pop{0%{scale:.6;opacity:0}}.confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-12px;left:var(--x);width:8px;height:14px;border-radius:2px;opacity:0;background:oklch(.75 .17 calc(var(--i) * 47));animation:fall 1.8s var(--d) ease-in forwards}@keyframes fall{0%{opacity:1;translate:0 0;rotate:0deg}to{opacity:0;translate:calc(var(--drift) * 9px) 420px;rotate:calc(var(--spin) * 90deg)}}@media(prefers-reduced-motion:reduce){.confetti{display:none}}.share-dialog{width:min(460px,calc(100% - 32px))}.share-body{display:grid;gap:14px}.share-preview{display:grid;place-items:center;overflow:hidden;border-radius:14px;background:var(--bg-2);aspect-ratio:4 / 5}.share-preview img{width:100%;height:100%;object-fit:contain}.share-preview .skel{width:100%;height:100%}.btn.disabled{opacity:.45;pointer-events:none}.picker{width:min(560px,calc(100% - 32px))}.picker-body{display:grid;gap:16px}.picker-body .chips{margin:0}.picker-body .sort .select{width:auto}.picker-result{display:grid;grid-template-columns:150px minmax(0,1fr);gap:20px;align-items:start;padding:16px;border-radius:var(--r-lg);background:var(--bg-2);animation:pop .35s var(--ease-out)}.picker-result h3{font-size:22px;letter-spacing:-.03em;margin:2px 0 6px}.picker-result>div{display:grid;gap:4px}.picker-result .row{margin-top:10px}.review{max-width:960px}.review-hero{display:grid;gap:18px;justify-items:start;padding:6vh 0 4vh}.review-hero h1{font-size:clamp(48px,9vw,104px);font-weight:700;letter-spacing:-.06em;line-height:.92}.review-slide{padding:48px 0;border-top:1px solid var(--border)}.review-slide h2{font-size:clamp(28px,4.4vw,46px);font-weight:700;letter-spacing:-.045em;margin:8px 0 20px}.review-slide.numbers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.review-slide.numbers>div{display:grid;gap:4px}.review-slide.numbers b{font-size:clamp(40px,6vw,72px);font-weight:650;letter-spacing:-.05em;line-height:1}.review-slide.numbers span{color:var(--text-2)}.review-slide.spotlight{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;align-items:center}.review-top{display:grid;gap:12px;margin:0;padding:0;list-style:none}.review-top li{display:grid;grid-template-columns:32px 64px minmax(0,1fr);gap:16px;align-items:center}.review-top .rank{font-size:22px;color:var(--accent-ink)}.review-top li>span:last-child{display:grid;gap:4px}.review-top b{font-size:18px;letter-spacing:-.02em}.review-months{height:220px;gap:10px}.review-months>div:not(.best) i{opacity:.45}.review-slide.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.review-slide.facts h2{margin-bottom:0}.review-slide.outro{display:grid;justify-items:center;gap:8px;text-align:center}.review-slide.outro .row{margin-top:16px}@media(max-width:900px){.year-strip,.insights{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.goal-card.has-goal{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}.goal-text{justify-items:center}.insight-facts,.picker-result{grid-template-columns:minmax(0,1fr)}.picker-result .cover{width:120px}.review-slide.numbers,.review-slide.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.review-slide.spotlight{grid-template-columns:120px minmax(0,1fr);gap:18px}}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:20px}.filter .select{width:auto;max-width:100%;min-height:36px;padding-block:6px;font-size:13px;border-radius:999px}.filter.on .select{color:var(--accent-ink);border-color:var(--accent-line);background-color:var(--accent-soft)}.chunk-gap{margin-top:16px}.load-more{display:flex;justify-content:center;margin-top:28px}a.chip{text-decoration:none}a.chip:hover{color:var(--text);border-color:var(--border-strong)}.browse-label{margin:18px 0 10px}.browse-label:first-of-type{margin-top:4px}.platform-links a{color:inherit;text-decoration:none}.platform-links a:hover{color:var(--text);text-decoration:underline}.btn.remind-on{color:var(--accent-ink);border-color:var(--accent-line);background:var(--accent-soft)}.month-nav{flex-wrap:nowrap}.cal{display:grid;gap:6px;margin:0;padding:0;list-style:none}.cal-day{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:10px 0;border-top:1px solid var(--border)}.cal-day:first-child{border-top:0}.cal-day.past{opacity:.62}.cal-date{display:grid;align-content:start;justify-items:start;gap:2px;padding-top:10px;margin:0;font-size:inherit}.cal-num{font-size:26px;font-weight:600;line-height:1;letter-spacing:-.02em}.cal-day.today .cal-num{color:var(--accent)}.out-now{display:grid;gap:8px;margin-bottom:24px}.out-now-row{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--accent-line);border-radius:var(--r-lg);background:var(--accent-softer);animation:pop .35s var(--ease-out)}.out-now-row p{flex:1;min-width:0;margin:0}.out-now-row a{color:var(--text)}.out-now-ic{flex:none;color:var(--accent)}@media(max-width:640px){.out-now-row{flex-wrap:wrap}.out-now-row .row{width:100%;justify-content:flex-end}.cal-day{grid-template-columns:44px minmax(0,1fr);gap:6px}.cal-num{font-size:21px}}.offline-banner{display:flex;align-items:center;gap:10px;margin:12px clamp(16px,4vw,48px) 0;padding:10px 14px;font-size:13px;color:var(--text-2);border-radius:var(--r);background:var(--surface);border:1px dashed var(--border-strong)}.offline-banner svg{flex:none;color:var(--text-3)}.you-foot{margin-top:32px;text-align:center}.you-foot a{color:inherit;text-decoration:underline;text-underline-offset:3px}.doc-page{min-height:100dvh;background:var(--bg)}.doc-top{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:760px;margin:0 auto;padding:20px 16px}.doc-top nav{gap:18px;font-size:14px;color:var(--text-2)}.doc-top nav a:hover{color:var(--text)}.doc{max-width:680px;margin:0 auto;padding:8px 16px 80px;line-height:1.65}.doc h1{font-size:clamp(32px,6vw,46px);letter-spacing:-.03em;line-height:1.1;margin:6px 0 18px}.doc h2{font-size:19px;margin:36px 0 8px}.doc .lede{max-width:none;margin:0;font-size:18px;color:var(--text-2)}.doc p,.doc li{color:var(--text-2)}.doc b{color:var(--text)}.doc ul{display:grid;gap:10px;padding-left:20px}.doc a{color:var(--accent-ink);text-decoration:underline;text-underline-offset:3px}.doc .back{margin-bottom:20px;color:var(--text-2);text-decoration:none}.tl-day{content-visibility:auto;contain-intrinsic-size:auto 180px}.route-progress{position:fixed;inset:0 0 auto;z-index:999;height:3px;overflow:hidden;pointer-events:none;animation:fade-in .2s .25s both}.route-progress:after{content:"";position:absolute;inset:0 auto 0 0;width:40%;background:var(--accent);animation:route-progress 1.1s var(--ease-out) infinite}@keyframes route-progress{0%{transform:translate(-100%)}to{transform:translate(260%)}}.steam-import-covers{display:flex;gap:8px;overflow:hidden}.steam-import-covers .cover{flex:none}.steam-import-plan{display:grid;gap:6px;margin:0;padding:12px 14px 12px 30px;border-radius:var(--r);background:var(--accent-softer);color:var(--text-2)}.steam-import-short{display:flex;align-items:center;gap:10px;color:var(--text-2);cursor:pointer}.nudges{position:fixed;right:20px;bottom:20px;z-index:30;display:grid;gap:10px;width:min(400px,calc(100vw - 32px))}body:has(.timer-pill) .nudges{bottom:84px}.nudge{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:start;padding:14px 40px 14px 14px;border-radius:var(--r-lg);background:var(--glass);border:1px solid var(--accent-line);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(20px) saturate(1.8);backdrop-filter:blur(20px) saturate(1.8);animation:toast-in .4s var(--ease-spring)}.nudge-body{display:grid;gap:10px;min-width:0}.nudge-body p{margin:0;font-size:14px;line-height:1.4}.nudge-body .xp-pill{margin-left:8px;vertical-align:1px}.nudge-actions{display:flex;flex-wrap:wrap;gap:6px}.nudge-close{position:absolute;top:8px;right:8px}@media(max-width:900px){.nudges{right:16px;bottom:96px}}.auto-chip{display:inline-flex;align-items:center;gap:4px;margin-left:6px;padding:1px 7px;font-size:11px;font-weight:600;vertical-align:1px;color:var(--accent-ink);background:var(--accent-soft);border-radius:999px}.pc-path{font-family:var(--font-mono);overflow-wrap:anywhere}.pc-warn{color:var(--warning)}.on-pc{display:grid;gap:8px}.on-pc .label{margin-bottom:0}.switch{position:relative;flex-shrink:0;width:46px;height:28px;padding:0;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-2);cursor:pointer;transition:background .2s}.switch-knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:var(--text-3);transition:translate .2s,background .2s}.switch[aria-checked=true]{border-color:transparent;background:var(--accent)}.switch[aria-checked=true] .switch-knob{translate:18px 0;background:#fff}.switch:focus-visible{outline:2px solid var(--accent-ink);outline-offset:2px}
