:root{--ink-900:oklch(14.5% .008 62);--ink-850:oklch(16.8% .009 62);--ink-800:oklch(19.6% .01 62);--ink-700:oklch(24.5% .012 62);--ink-600:oklch(30% .013 62);--line:oklch(27.5% .01 62);--line-soft:oklch(22.5% .009 62);--text:oklch(96% .005 72);--text-dim:oklch(70% .011 72);--text-faint:oklch(54.5% .011 72);--ember:oklch(78.5% .15 68);--ember-dim:oklch(62% .12 68);--ember-wash:oklch(78.5% .15 68/.12);--deal:oklch(80% .185 142);--deal-wash:oklch(80% .185 142/.14);--danger:oklch(66% .195 26);--danger-wash:oklch(66% .195 26/.14);--font-display:"Archivo", "Archivo Expanded", system-ui, sans-serif;--font-body:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.9375rem;--text-lg:1.125rem;--text-xl:1.5rem;--text-2xl:2rem;--text-hero:clamp(1.75rem, 5vw, 3.25rem);--s-1:.25rem;--s-2:.5rem;--s-3:.75rem;--s-4:1rem;--s-5:1.5rem;--s-6:2rem;--s-7:3rem;--r-sm:4px;--r-md:8px;--r-lg:12px;--r-pill:999px;--capsule-ratio:460 / 215;--shadow-card:0 1px 2px oklch(0% 0 0/.4), 0 4px 16px oklch(0% 0 0/.25);--shadow-lift:0 4px 8px oklch(0% 0 0/.45), 0 12px 32px oklch(0% 0 0/.35);--shadow-dialog:0 24px 64px oklch(0% 0 0/.6);--ease-out:cubic-bezier(.2, .8, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.34s;--container:1360px;--header-h:56px}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-slow:0s}}*,:before,:after{box-sizing:border-box}html,body,h1,h2,h3,h4,h5,h6,p,figure,blockquote,dl,dd,ul,ol{margin:0;padding:0}ul,ol{list-style:none}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-text-size-adjust:100%}body{background:var(--ink-900);min-height:100dvh;color:var(--text);font-family:var(--font-body);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;line-height:1.5}img,svg,video,canvas{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}:where(a){color:inherit}::selection{background:var(--ember-wash);color:var(--text)}.u-focus-ring:focus-visible,:where(button,a[href],input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--ember);outline-offset:2px;border-radius:var(--r-sm)}.u-display{font-family:var(--font-display);font-variation-settings:"wdth" 118, "wght" 800;text-transform:uppercase;letter-spacing:-.015em;font-weight:800;line-height:1.02}.u-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;letter-spacing:-.01em}.u-btn-reset{appearance:none;font:inherit;color:inherit;text-align:inherit;line-height:inherit;cursor:pointer;background:0 0;border:0;margin:0;padding:0}.u-btn-reset:disabled{cursor:not-allowed}.u-sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.u-container{width:100%;max-width:var(--container);padding-inline:max(var(--s-4), env(safe-area-inset-left));margin-inline:auto}@keyframes u-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.u-stagger-in{animation:u-fade-in var(--dur-slow) var(--ease-out) both;animation-delay:var(--stagger,0s)}*{scrollbar-width:thin;scrollbar-color:var(--ink-600) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--ink-850)}::-webkit-scrollbar-thumb{background:var(--ink-600);border:2px solid var(--ink-850);border-radius:var(--r-pill)}::-webkit-scrollbar-thumb:hover{background:var(--ember-dim)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.u-stagger-in{opacity:1;animation:none;transform:none}*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.header{z-index:50;background:color-mix(in oklab, var(--ink-900) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft);position:sticky;top:0}.header-inner{height:var(--header-h);max-width:var(--container);padding:0 var(--s-4);align-items:center;gap:var(--s-4);margin:0 auto;display:flex}.header-brand{align-items:center;gap:var(--s-2);min-width:0;display:flex}.header-mark{width:var(--s-2);height:var(--s-4);background:var(--ember);border-radius:var(--r-sm);flex:none}.header-wordmark{font-family:var(--font-display);font-variation-settings:"wdth" 120;font-weight:800;font-size:var(--text-base);letter-spacing:.02em;text-transform:uppercase;color:var(--text);white-space:nowrap}.header-scope{gap:var(--s-1);padding:var(--s-1);background:var(--ink-850);border:1px solid var(--line-soft);border-radius:var(--r-pill);margin-left:auto;display:flex}.header-scope-btn{padding:var(--s-1) var(--s-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-dim);border-radius:var(--r-pill);cursor:pointer;white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:none}.header-scope-btn:hover{color:var(--text)}.header-scope-btn[aria-pressed=true]{color:var(--ink-900);background:var(--ember);font-weight:600}.header-actions{align-items:center;gap:var(--s-2);display:flex}.header-add{align-items:center;gap:var(--s-2);height:var(--s-6);padding:0 var(--s-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);background:var(--ink-700);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);font-weight:600;display:inline-flex}.header-add:hover{background:var(--ink-600);border-color:var(--ink-600)}.header-login{height:var(--s-6);padding:0 var(--s-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ember);background:var(--ember-wash);border:1px solid var(--ember-dim);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out);font-weight:600}.header-login:hover{background:color-mix(in oklab, var(--ember) 20%, transparent)}.header-user{align-items:center;gap:var(--s-2);display:flex}.header-chip{width:var(--s-6);height:var(--s-6);font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ember);background:var(--ember-wash);border:1px solid var(--ember-dim);border-radius:var(--r-pill);flex:none;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.header-logout{align-items:center;gap:var(--s-2);height:var(--s-6);padding:0 var(--s-2);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-dim);border-radius:var(--r-md);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;display:inline-flex}.header-logout:hover{color:var(--text);background:var(--ink-700)}.header-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.header-scope-btn:focus-visible,.header-add:focus-visible,.header-login:focus-visible,.header-logout:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (width<=720px){.header-inner{gap:var(--s-3);padding:0 var(--s-3)}.header-logout-label{display:none}.header-scope-btn{padding:var(--s-1) var(--s-3)}}@media (width<=480px){.header-wordmark{font-size:var(--text-sm)}.header-add-label{display:none}.header-add{width:var(--s-6);justify-content:center;padding:0}.header-scope{margin-left:var(--s-1)}.header-scope-btn{padding:var(--s-1) var(--s-2);font-size:var(--text-xs)}}@media (width<=380px){.header-brand{gap:var(--s-1)}.header-mark{width:var(--s-1)}}@media (pointer:coarse){.header-scope-btn,.header-login,.header-add,.header-user{min-height:44px}.header-scope-btn{padding-inline:var(--s-4)}}.header-actions{flex:none}.header-wordmark{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@media (width<=560px){.header-wordmark{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}}.toaster{right:var(--s-4);bottom:var(--s-4);z-index:200;width:min(22rem, calc(100vw - var(--s-6)));pointer-events:none;position:fixed}.toaster-list{gap:var(--s-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.toaster-item{align-items:flex-start;gap:var(--s-3);padding:var(--s-3) var(--s-3) var(--s-3) var(--s-4);pointer-events:auto;background:var(--ink-800);border:1px solid var(--line);border-left:3px solid var(--text-dim);border-radius:var(--r-md);box-shadow:var(--shadow-card);animation:toaster-in var(--dur-base) var(--ease-out);display:flex}.toaster-item-success{border-left-color:var(--deal)}.toaster-item-error{border-left-color:var(--danger)}.toaster-item-info{border-left-color:var(--text-dim)}.toaster-text{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);flex:1;margin:0;line-height:1.45}.toaster-dismiss{width:var(--s-5);height:var(--s-5);color:var(--text-faint);border-radius:var(--r-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.toaster-dismiss:hover{color:var(--text)}.toaster-dismiss:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@keyframes toaster-in{0%{opacity:0;transform:translateY(var(--s-2))}to{opacity:1;transform:none}}@media (width<=480px){.toaster{right:var(--s-3);left:var(--s-3);bottom:var(--s-3);width:auto}}@media (prefers-reduced-motion:reduce){.toaster-item{animation:none}}.dialog-backdrop{z-index:100;padding:var(--s-5) var(--s-4);background:color-mix(in oklab, var(--ink-900) 78%, transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:dialog-fade var(--dur-base) var(--ease-out);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog-panel{width:100%;max-height:calc(100dvh - var(--s-6));background:var(--ink-800);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-dialog);animation:dialog-rise var(--dur-base) var(--ease-out);flex-direction:column;margin:auto;display:flex;position:relative}.dialog-panel:focus{outline:none}.dialog-panel:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.dialog-panel-sm{max-width:24rem}.dialog-panel-md{max-width:34rem}.dialog-panel-lg{max-width:52rem}.dialog-head{justify-content:space-between;align-items:center;gap:var(--s-3);padding:var(--s-4) var(--s-5);border-bottom:1px solid var(--line-soft);display:flex}.dialog-head-bare{border-bottom:0;justify-content:flex-end;padding-bottom:0}.dialog-title{font-family:var(--font-display);font-variation-settings:"wdth" 112;font-weight:700;font-size:var(--text-lg);letter-spacing:-.01em;color:var(--text);margin:0}.dialog-close{width:var(--s-6);height:var(--s-6);color:var(--text-dim);border-radius:var(--r-md);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.dialog-close:hover{color:var(--text);background:var(--ink-700)}.dialog-close:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.dialog-body{padding:var(--s-5);overflow-y:auto}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}@keyframes dialog-rise{0%{opacity:0;transform:translateY(var(--s-3))}to{opacity:1;transform:none}}@media (width<=480px){.dialog-backdrop{padding:var(--s-3)}.dialog-head{padding:var(--s-3) var(--s-4)}.dialog-body{padding:var(--s-4)}}@media (prefers-reduced-motion:reduce){.dialog-backdrop,.dialog-panel{animation:none}}.authdialog-tabs{gap:var(--s-1);padding:var(--s-1);margin-bottom:var(--s-5);background:var(--ink-850);border:1px solid var(--line-soft);border-radius:var(--r-md);display:flex}.authdialog-tab{padding:var(--s-2) var(--s-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-dim);border-radius:var(--r-sm);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:1}.authdialog-tab:hover{color:var(--text)}.authdialog-tab[aria-pressed=true]{color:var(--text);background:var(--ink-700);font-weight:600}.authdialog-form{gap:var(--s-4);flex-direction:column;display:flex}.authdialog-field{gap:var(--s-2);flex-direction:column;display:flex}.authdialog-label{font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-dim)}.authdialog-input{width:100%;padding:var(--s-2) var(--s-3);font-family:var(--font-body);font-size:var(--text-base);color:var(--text);background:var(--ink-850);border:1px solid var(--line);border-radius:var(--r-md);transition:border-color var(--dur-fast) var(--ease-out)}.authdialog-input:hover{border-color:var(--ink-600)}.authdialog-input:focus{border-color:var(--ember-dim);outline:none}.authdialog-input:focus-visible{outline:2px solid var(--ember);outline-offset:1px}.authdialog-input:disabled{color:var(--text-faint);cursor:not-allowed}.authdialog-input[aria-invalid=true]{border-color:var(--danger)}.authdialog-hint{font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-faint);margin:0}.authdialog-error{font-family:var(--font-body);font-size:var(--text-xs);color:var(--danger);margin:0}.authdialog-alert{padding:var(--s-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);background:var(--danger-wash);border-left:3px solid var(--danger);border-radius:var(--r-sm);margin:0;line-height:1.45}.authdialog-submit{margin-top:var(--s-1);padding:var(--s-3) var(--s-4);font-family:var(--font-body);font-size:var(--text-base);color:var(--ink-900);background:var(--ember);border:1px solid var(--ember);border-radius:var(--r-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);font-weight:600}.authdialog-submit:hover:not(:disabled){background:var(--ember-dim);border-color:var(--ember-dim)}.authdialog-submit:disabled{color:var(--text-dim);background:var(--ink-700);border-color:var(--line);cursor:progress}.authdialog-tab:focus-visible,.authdialog-submit:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.voterchips{padding:var(--s-1);margin:calc(var(--s-1) * -1);border-radius:var(--r-pill);cursor:pointer;background:0 0;border:0;align-items:center;line-height:1;display:inline-flex}.voterchips:disabled{cursor:default}.voterchips:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.voterchips-chip{inline-size:var(--s-5);block-size:var(--s-5);border:1px solid var(--ink-600);border-radius:var(--r-pill);background:var(--ink-700);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-xs);box-shadow:0 0 0 2px var(--ink-800);transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex:none;place-items:center;font-weight:600;line-height:1;display:grid;position:relative}.voterchips-chip+.voterchips-chip{margin-inline-start:calc(var(--s-2) * -1)}.voterchips-chip--mine{border-color:var(--ember);background:var(--ember-wash);color:var(--ember);z-index:1}.voterchips-chip--empty{border-style:dashed;border-color:var(--line);color:var(--text-faint);background:0 0;font-weight:500}.voterchips:not(:disabled):hover .voterchips-chip--empty,.voterchips:not(:disabled):focus-visible .voterchips-chip--empty{border-color:var(--ember);color:var(--ember)}.voterchips-chip--more{inline-size:auto;min-inline-size:var(--s-5);padding-inline:var(--s-1);background:var(--ink-850);color:var(--text-faint);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.voterchips:not(:disabled):hover .voterchips-chip{border-color:var(--ink-600)}.voterchips:not(:disabled):hover .voterchips-chip--mine{border-color:var(--ember)}.voterchips:not(:disabled):active .voterchips-chip{transform:scale(.96)}@keyframes voterchips-pop{0%{opacity:0;transform:scale(.35)}to{opacity:1;transform:scale(1)}}.voterchips-chip--pop{animation:voterchips-pop var(--dur-base) var(--ease-spring) both}@media (prefers-reduced-motion:reduce){.voterchips-chip{transition:none}.voterchips-chip--pop{animation:none}.voterchips:not(:disabled):active .voterchips-chip{transform:none}}@media (pointer:coarse){.voterchips{min-width:44px;min-height:44px}}.pricetag{align-items:baseline;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap;line-height:1.2;display:inline-flex}.pricetag--plain{color:var(--text)}.pricetag--free{color:var(--text);font-family:var(--font-body);font-size:var(--text-sm)}.pricetag--none{color:var(--text-faint);cursor:help}.pricetag-original{color:var(--text-faint);font-size:var(--text-xs);text-decoration:line-through;text-decoration-thickness:1px}.pricetag-final{color:var(--deal);font-weight:600}.pricetag-sr{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skeleton-shimmer{background-color:var(--ink-850);background-image:linear-gradient(90deg, var(--ink-850) 0%, var(--ink-700) 50%, var(--ink-850) 100%);animation:skeleton-slide calc(var(--dur-slow) * 4) linear infinite;background-repeat:no-repeat;background-size:200% 100%}@keyframes skeleton-slide{0%{background-position:150% 0}to{background-position:-50% 0}}.skeleton-card{border:1px solid var(--line-soft);border-radius:var(--r-lg);background:var(--ink-800);flex-direction:column;display:flex;overflow:hidden}.skeleton-art{aspect-ratio:var(--capsule-ratio);inline-size:100%}.skeleton-info{gap:var(--s-2);padding:var(--s-3);flex-direction:column;padding-block-start:var(--s-4);display:flex}.skeleton-title{justify-content:center;gap:var(--s-2);font-size:var(--text-base);flex-direction:column;block-size:2.6em;display:flex}.skeleton-bar{border-radius:var(--r-sm);block-size:.7em;inline-size:100%}.skeleton-bar--short{inline-size:55%}.skeleton-meta{font-size:var(--text-xs);align-items:center;block-size:1.75em;display:flex}.skeleton-bar--pill{border-radius:var(--r-pill);block-size:1.5em;inline-size:40%}.skeleton-bottom{justify-content:space-between;align-items:center;gap:var(--s-2);block-size:var(--s-5);display:flex}.skeleton-chips{inline-size:30%;block-size:var(--s-5);border-radius:var(--r-pill)}.skeleton-price{inline-size:22%;block-size:var(--s-4);border-radius:var(--r-sm)}.skeleton-hero{inline-size:100%;aspect-ratio:var(--capsule-ratio);border-radius:var(--r-lg);max-block-size:20rem}.skeleton-textline{border-radius:var(--r-sm);block-size:.8em;inline-size:100%}.skeleton-textline:last-child:not(:only-child){inline-size:60%}@media (prefers-reduced-motion:reduce){.skeleton-shimmer{background-image:none;background-color:var(--ink-700);animation:none}}.hero{isolation:isolate;min-height:clamp(180px,22vw,288px);padding:var(--s-5);border:1px solid var(--line-soft);border-radius:var(--r-lg);background:linear-gradient(160deg, var(--ink-800), var(--ink-850));box-shadow:var(--shadow-card);align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero-art{z-index:0;object-fit:cover;filter:blur(24px)saturate(1.15)brightness(.85);width:100%;height:100%;position:absolute;inset:0;transform:scale(1.18)}.hero-scrim{z-index:1;background:linear-gradient(to top, color-mix(in oklab, var(--ink-900) 94%, transparent) 0%, color-mix(in oklab, var(--ink-900) 72%, transparent) 55%, color-mix(in oklab, var(--ink-900) 46%, transparent) 100%), linear-gradient(to right, color-mix(in oklab, var(--ink-900) 80%, transparent) 0%, color-mix(in oklab, var(--ink-900) 24%, transparent) 78%);position:absolute;inset:0}.hero-body{z-index:2;gap:var(--s-2);opacity:1;width:100%;max-width:62ch;transition:opacity var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:relative}.hero-body--leaving{opacity:0}.hero-eyebrow{color:var(--ember);font-family:var(--font-display);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.2em;font-variation-settings:"wdth" 120;margin:0;font-weight:700;line-height:1}.hero-title{color:var(--text);font-family:var(--font-display);font-size:var(--text-hero);text-transform:uppercase;letter-spacing:-.015em;text-wrap:balance;font-variation-settings:"wdth" 115;text-shadow:0 2px 12px color-mix(in oklab, var(--ink-900) 70%, transparent);margin:0;font-weight:800;line-height:.98}.hero-body .hero-title--empty{font-size:var(--text-2xl);text-transform:none;letter-spacing:-.01em}.hero-lead{margin:var(--s-1) 0 0;color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-base)}.hero-meta{align-items:center;gap:var(--s-3);margin-top:var(--s-1);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.hero-chips{align-items:center;display:inline-flex}.hero-meta-item{align-items:center;gap:var(--s-2);display:inline-flex}.hero-meta-item+.hero-meta-item:before{content:"·";color:var(--text-faint)}.hero-num{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text);font-variant-numeric:tabular-nums}.hero-actions{gap:var(--s-2);margin-top:var(--s-3);flex-wrap:wrap;display:flex}.hero-btn{appearance:none;min-height:36px;padding:var(--s-2) var(--s-4);border:1px solid var(--line);border-radius:var(--r-pill);background:color-mix(in oklab, var(--ink-800) 82%, transparent);color:var(--text);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.hero-btn:hover{background:var(--ink-700);border-color:var(--ink-600)}.hero-btn:active{transform:translateY(1px)}.hero-btn:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.hero-btn--primary{background:var(--ember);border-color:var(--ember);color:var(--ink-900)}.hero-btn--primary:hover{background:color-mix(in oklab, var(--ember) 86%, var(--text));border-color:color-mix(in oklab, var(--ember) 86%, var(--text))}@media (width<=560px){.hero{padding:var(--s-4);min-height:180px}.hero-meta{gap:var(--s-2)}}@media (prefers-reduced-motion:reduce){.hero-body,.hero-btn{transition:none}.hero-btn:active{transform:none}}@media (pointer:coarse){.hero-btn{min-height:44px}}.multiselect{display:inline-flex;position:relative}.multiselect-trigger{align-items:center;gap:var(--s-2);min-height:var(--multiselect-h,2.25rem);padding:0 var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-800);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);line-height:1;display:inline-flex}.multiselect-trigger:hover{background:var(--ink-700);color:var(--text)}.multiselect-trigger:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.multiselect-trigger.is-active{background:var(--ember-wash);border-color:var(--ember);color:var(--text)}.multiselect-label{font-weight:500}.multiselect-count{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;min-width:1.25rem;padding:var(--s-1) var(--s-1);text-align:center;border-radius:var(--r-pill);background:var(--ember);color:var(--ink-900);line-height:1}.multiselect-caret{border-inline:4px solid #0000;opacity:.75;width:0;height:0;transition:transform var(--dur-fast) var(--ease-out);border-top:5px solid}.multiselect-trigger[aria-expanded=true] .multiselect-caret{transform:rotate(180deg)}.multiselect-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.multiselect-popover{z-index:80;min-width:13rem;padding:var(--s-1);border:1px solid var(--ink-600);border-radius:var(--r-md);background:var(--ink-800);box-shadow:var(--shadow-dialog);animation:multiselect-in var(--dur-fast) var(--ease-out);flex-direction:column;display:flex;position:fixed}@keyframes multiselect-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.multiselect-list{overscroll-behavior:contain;flex-direction:column;gap:1px;display:flex;overflow-y:auto}.multiselect-option{align-items:center;gap:var(--s-2);width:100%;padding:var(--s-2);border-radius:var(--r-sm);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0;display:flex}.multiselect-option:hover{background:var(--ink-700);color:var(--text)}.multiselect-option:focus-visible{outline:2px solid var(--ember);outline-offset:-2px}.multiselect-option[aria-selected=true]{color:var(--text)}.multiselect-option-label{overflow-wrap:anywhere;flex:auto;min-width:0}.multiselect-check{border:1px solid var(--ink-600);border-radius:var(--r-sm);background:var(--ink-850);width:1rem;height:1rem;color:var(--ink-900);flex:none;place-items:center;display:grid}.multiselect-option[aria-selected=true] .multiselect-check{background:var(--ember);border-color:var(--ember)}.multiselect-check-mark{width:.875rem;height:.875rem}.multiselect-footer{margin-top:var(--s-1);padding-top:var(--s-1);border-top:1px solid var(--line-soft)}.multiselect-clear{width:100%;padding:var(--s-2);border-radius:var(--r-sm);color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-xs);text-align:left;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:0}.multiselect-clear:hover{background:var(--ink-700);color:var(--text)}.multiselect-clear:focus-visible{outline:2px solid var(--ember);outline-offset:-2px}@media (prefers-reduced-motion:reduce){.multiselect-popover{animation:none}.multiselect-trigger,.multiselect-option,.multiselect-clear,.multiselect-caret{transition:none}}.filterbar{--filterbar-h:2.25rem;--multiselect-h:var(--filterbar-h);background:var(--ink-850);border-bottom:1px solid var(--line-soft);padding:var(--s-3) var(--s-4)}.filterbar-inner{gap:var(--s-3);width:100%;max-width:var(--container);flex-direction:column;margin-inline:auto;display:flex}.filterbar-sr{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.filterbar-search{align-items:center;gap:var(--s-2);min-height:var(--filterbar-h);padding-inline:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-800);color:var(--text-faint);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);display:flex}.filterbar-search:focus-within{outline:2px solid var(--ember);outline-offset:2px;border-color:var(--ember)}.filterbar-search.is-active{background:var(--ember-wash);border-color:var(--ember);color:var(--text)}.filterbar-search-icon{flex:none;width:1rem;height:1rem}.filterbar-search-input{min-width:0;padding-block:var(--s-2);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);background:0 0;border:0;flex:auto}.filterbar-search-input::placeholder{color:var(--text-faint)}.filterbar-search-input:focus{outline:none}.filterbar-search-clear{border-radius:var(--r-pill);width:1.5rem;height:1.5rem;color:var(--text-dim);cursor:pointer;background:0 0;border:0;flex:none;place-items:center;display:grid}.filterbar-search-clear:hover{background:var(--ink-700);color:var(--text)}.filterbar-search-clear:focus-visible{outline:2px solid var(--ember);outline-offset:1px}.filterbar-clear-icon{width:.875rem;height:.875rem}.filterbar-controls{align-items:center;gap:var(--s-2);overscroll-behavior-inline:contain;padding-bottom:var(--s-1);scrollbar-width:thin;scrollbar-color:var(--ink-600) transparent;flex-wrap:nowrap;display:flex;overflow-x:auto}@media (width<=720px){.filterbar-controls{row-gap:var(--s-2);flex-wrap:wrap;overflow-x:visible}}@media (width>=721px){.filterbar-controls{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000 100%);mask-image:linear-gradient(90deg,#000 calc(100% - 28px),#0000 100%)}}.filterbar-control{flex:none}.filterbar-tail{align-items:center;gap:var(--s-2);flex:none;display:inline-flex}.filterbar-select-wrap{align-items:center;gap:var(--s-2);display:inline-flex;position:relative}.filterbar-select-wrap:after{content:"";top:50%;right:var(--s-3);border-inline:4px solid #0000;border-top:5px solid var(--text-dim);pointer-events:none;width:0;height:0;position:absolute;transform:translateY(-50%)}.filterbar-sort-label{font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap}.filterbar-select{appearance:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:var(--filterbar-h);padding-inline:var(--s-3) var(--s-6);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-800);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}.filterbar-select:hover{background:var(--ink-700);color:var(--text)}.filterbar-select:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.filterbar-select.is-active{background:var(--ember-wash);border-color:var(--ember);color:var(--text)}.filterbar-select option{background:var(--ink-800);color:var(--text)}.filterbar-toggle{align-items:center;gap:var(--s-2);min-height:var(--filterbar-h);padding-inline:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-800);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);line-height:1;display:inline-flex}.filterbar-toggle:hover{background:var(--ink-700);color:var(--text)}.filterbar-toggle:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.filterbar-toggle[aria-pressed=true]{background:var(--ember-wash);border-color:var(--ember);color:var(--text)}.filterbar-box{border:1px solid var(--ink-600);border-radius:var(--r-sm);background:var(--ink-850);width:.875rem;height:.875rem;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);flex:none}.filterbar-toggle[aria-pressed=true] .filterbar-box{background:var(--ember);border-color:var(--ember)}.filterbar-clear{align-items:center;gap:var(--s-2);min-height:var(--filterbar-h);padding-inline:var(--s-3);border-radius:var(--r-md);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:1px solid #0000;display:inline-flex}.filterbar-clear:hover{background:var(--ink-700);color:var(--text)}.filterbar-clear:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.filterbar-clear-count{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;min-width:1.25rem;padding:var(--s-1);text-align:center;border-radius:var(--r-pill);background:var(--ink-700);color:var(--text);line-height:1}@media (width>=900px){.filterbar{top:var(--header-h);z-index:30;position:sticky}.filterbar-inner{align-items:center;gap:var(--s-3);flex-flow:wrap}.filterbar-search{flex:14rem;max-width:22rem}.filterbar-controls{flex-wrap:wrap;flex:auto;padding-bottom:0;overflow-x:visible}.filterbar-tail{margin-left:auto}}@media (prefers-reduced-motion:reduce){.filterbar-search,.filterbar-select,.filterbar-toggle,.filterbar-box,.filterbar-clear{transition:none}}@media (pointer:coarse){.filterbar-control,.filterbar-select,.filterbar-toggle,.filterbar-clear{min-height:44px}}.statuspill-wrap{align-items:center;display:inline-flex;position:relative}.statuspill{max-inline-size:100%;padding:var(--s-1) var(--s-2);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--ink-850);color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-xs);white-space:nowrap;align-items:center;line-height:1.35;display:inline-flex}.statuspill--select{appearance:none;cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out);padding-inline-end:var(--s-5)}.statuspill--select:hover{border-color:var(--ink-600);background:var(--ink-800)}.statuspill--select:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.statuspill--select option{background:var(--ink-800);color:var(--text)}.statuspill-caret{pointer-events:none;color:var(--text-faint);font-size:var(--text-xs);line-height:1;position:absolute;inset-block-start:50%;inset-inline-end:var(--s-2);transform:translateY(-50%)}.statuspill--wishlist{color:var(--text-dim)}.statuspill--playing{color:var(--ember);border-color:var(--ember-dim);background:var(--ember-wash)}.statuspill--playing.statuspill--select:hover{background:var(--ember-wash);border-color:var(--ember)}.statuspill--finished{color:var(--text-faint);border-color:var(--line-soft);background:0 0}.statuspill--dropped{color:var(--text-faint);border-color:var(--line-soft);background:0 0;text-decoration:line-through;text-decoration-thickness:1px}@media (prefers-reduced-motion:reduce){.statuspill--select{transition:none}}.card{border:1px solid var(--line-soft);border-radius:var(--r-lg);background:var(--ink-800);block-size:100%;box-shadow:var(--shadow-card);cursor:pointer;transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.card:hover{border-color:var(--line);box-shadow:var(--shadow-lift)}.card:focus-within{border-color:var(--ink-600)}.card-art{aspect-ratio:var(--capsule-ratio);background:var(--ink-850);inline-size:100%;position:relative}.card-media{position:absolute;inset:0;overflow:hidden}.card-img,.card-placeholder{block-size:100%;inline-size:100%;transition:transform var(--dur-base) var(--ease-out), filter var(--dur-base) var(--ease-out);display:block}.card-img{object-fit:cover;background:var(--ink-850)}.card:hover .card-img,.card:hover .card-placeholder{filter:brightness(1.08);transform:translateY(-2px)scale(1.02)}.card-placeholder{background-image:radial-gradient(120% 140% at 18% 0%, var(--ink-700), transparent 62%), linear-gradient(140deg, var(--ink-800), var(--ink-850));place-items:center;display:grid}.card-initials{font-family:var(--font-display);font-variation-settings:"wdth" 118;font-size:var(--text-2xl);letter-spacing:.06em;color:var(--text-faint);font-weight:800}.card-sale{z-index:2;padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);background:var(--deal);box-shadow:var(--shadow-card);position:absolute;inset-block-end:0;inset-inline-start:var(--s-3);transform:translateY(50%)}.card-sale-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--text-xs);color:var(--ink-900);font-weight:600;line-height:1}.card-remove{z-index:3;inline-size:var(--s-5);block-size:var(--s-5);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--ink-850);color:var(--text-dim);font-size:var(--text-base);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);place-items:center;padding:0;line-height:1;display:grid;position:absolute;inset-block-start:var(--s-2);inset-inline-end:var(--s-2)}.card:hover .card-remove,.card:focus-within .card-remove,.card-remove:focus-visible{opacity:1}.card-remove:hover{background:var(--danger-wash);border-color:var(--danger);color:var(--danger)}.card-remove:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (hover:none){.card-remove{opacity:1}}.card-info{gap:var(--s-2);padding:var(--s-3);flex-direction:column;flex:1;padding-block-start:var(--s-4);display:flex}.card-heading{font-size:var(--text-base);margin:0;font-weight:600}.card-title{-webkit-line-clamp:2;line-clamp:2;inline-size:100%;font:inherit;font-family:var(--font-body);color:var(--text);text-align:start;cursor:pointer;background:0 0;border:0;-webkit-box-orient:vertical;min-block-size:2.6em;margin:0;padding:0;line-height:1.3;display:-webkit-box;overflow:hidden}.card-title:focus-visible{outline:2px solid var(--ember);outline-offset:2px;border-radius:var(--r-sm)}.card-meta{align-items:center;gap:var(--s-2);font-size:var(--text-xs);color:var(--text-faint);flex-wrap:wrap;min-inline-size:0;display:flex}.card-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-dim)}.card-genre{text-overflow:ellipsis;white-space:nowrap;min-inline-size:0;overflow:hidden}.card-dot{color:var(--line)}.card-bottom{justify-content:space-between;align-items:center;gap:var(--s-2);margin-block-start:auto;padding-block-start:var(--s-1);display:flex}@media (width<=480px){.card-info{padding:var(--s-3);padding-block-start:var(--s-4)}}@media (prefers-reduced-motion:reduce){.card,.card-img,.card-placeholder,.card-remove{transition:none}.card:hover .card-img,.card:hover .card-placeholder{transform:none}}.grid{gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));align-items:stretch;display:grid}.grid-item{min-inline-size:0;display:grid}.grid-empty{padding:var(--s-7) var(--s-4);border:1px dashed var(--line-soft);border-radius:var(--r-lg);background:var(--ink-850);place-items:center;display:grid}.grid-empty-text{max-inline-size:42ch;color:var(--text-dim);font-size:var(--text-base);text-align:center;text-wrap:balance;margin:0}.grid-sr{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.commentthread{gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--line-soft);font-family:var(--font-body);flex-direction:column;display:flex}.commentthread-label{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-dim);margin:0;display:flex}.commentthread-count-badge{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint)}.commentthread-empty,.commentthread-signedout{font-size:var(--text-sm);color:var(--text-faint);margin:0}.commentthread-failed{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.commentthread-list{gap:var(--s-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.commentthread-item{gap:var(--s-3);align-items:flex-start;display:flex}.commentthread-initial{width:var(--s-6);height:var(--s-6);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--ink-850);font-family:var(--font-display);font-size:var(--text-xs);color:var(--text-dim);text-transform:uppercase;flex:none;place-items:center;font-weight:700;display:grid}.commentthread-main{gap:var(--s-1);flex-direction:column;flex:auto;min-width:0;display:flex}.commentthread-meta{align-items:baseline;gap:var(--s-2);flex-wrap:wrap;display:flex}.commentthread-author{font-size:var(--text-sm);color:var(--text);font-weight:600}.commentthread-time{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-faint)}.commentthread-body{font-size:var(--text-base);color:var(--text-dim);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.55}.commentthread-confirm{gap:var(--s-2);flex-wrap:wrap;display:inline-flex}.commentthread-delete,.commentthread-cancel,.commentthread-confirmdelete,.commentthread-retry{padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);font-family:var(--font-body);font-size:var(--text-xs);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);background:0 0}.commentthread-delete{color:var(--text-faint);border:1px solid #0000}.commentthread-delete:hover{color:var(--danger)}.commentthread-confirmdelete{border:1px solid var(--danger);background:var(--danger-wash);color:var(--danger)}.commentthread-confirmdelete:hover:not(:disabled){background:var(--danger);color:var(--ink-900)}.commentthread-cancel,.commentthread-retry{border:1px solid var(--line);color:var(--text-dim)}.commentthread-cancel:hover,.commentthread-retry:hover{background:var(--ink-700);color:var(--text)}.commentthread-composer{gap:var(--s-2);flex-direction:column;display:flex}.commentthread-input{width:100%;max-height:15rem;min-height:var(--s-7);padding:var(--s-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-850);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);resize:none;line-height:1.5;overflow-y:auto}.commentthread-input::placeholder{color:var(--text-faint)}.commentthread-input:focus-visible{outline:2px solid var(--ember);outline-offset:2px;border-color:var(--ember-dim)}.commentthread-input:disabled{opacity:.6}.commentthread-composerfoot{align-items:center;gap:var(--s-3);flex-wrap:wrap;display:flex}.commentthread-counter{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-faint)}.commentthread-counter--over{color:var(--danger)}.commentthread-hint{font-size:var(--text-xs);color:var(--text-faint);flex:auto}.commentthread-submit{padding:var(--s-2) var(--s-4);border:1px solid var(--ember-dim);border-radius:var(--r-md);background:var(--ember-wash);color:var(--ember);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);font-weight:600}.commentthread-submit:hover:not(:disabled){background:var(--ember);color:var(--ink-900)}.commentthread-submit:disabled{border-color:var(--line);color:var(--text-faint);cursor:not-allowed;background:0 0}.commentthread-delete:focus-visible,.commentthread-cancel:focus-visible,.commentthread-confirmdelete:focus-visible,.commentthread-retry:focus-visible,.commentthread-submit:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (width<=480px){.commentthread-composerfoot{gap:var(--s-2)}.commentthread-hint{flex-basis:100%;order:3}}@media (prefers-reduced-motion:reduce){.commentthread-delete,.commentthread-cancel,.commentthread-confirmdelete,.commentthread-retry,.commentthread-submit{transition:none}}.gamedialog{gap:var(--s-5);color:var(--text);font-family:var(--font-body);font-size:var(--text-base);flex-direction:column;display:flex}.gamedialog-art{width:100%;aspect-ratio:var(--capsule-ratio);border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--ink-850);position:relative;overflow:hidden}.gamedialog-artimg{object-fit:cover;width:100%;height:100%;display:block}.gamedialog-artfallback{width:100%;height:100%;padding:var(--s-4);font-family:var(--font-display);font-variation-settings:"wdth" 112;text-transform:uppercase;letter-spacing:-.01em;text-align:center;color:var(--text-faint);place-items:center;font-weight:700;display:grid}.gamedialog-head{gap:var(--s-1);flex-direction:column;display:flex}.gamedialog-title{font-family:var(--font-display);font-size:var(--text-2xl);font-variation-settings:"wdth" 115;text-transform:uppercase;letter-spacing:-.015em;color:var(--text);margin:0;font-weight:800;line-height:1.05}.gamedialog-addedby{font-size:var(--text-sm);color:var(--text-faint);margin:0}.gamedialog-facts{gap:var(--s-2) var(--s-5);padding:var(--s-3) 0;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);flex-wrap:wrap;margin:0;display:flex}.gamedialog-fact{gap:var(--s-1);flex-direction:column;min-width:0;display:flex}.gamedialog-factlabel{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.gamedialog-factvalue{font-size:var(--text-base);color:var(--text);margin:0}.gamedialog-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.gamedialog-factsuffix{margin-left:var(--s-1);font-family:var(--font-body);font-size:var(--text-xs);color:var(--text-faint)}.gamedialog-chips{gap:var(--s-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.gamedialog-chip{padding:var(--s-1) var(--s-3);border:1px solid var(--line);border-radius:var(--r-pill);background:var(--ink-850);font-size:var(--text-xs);color:var(--text-dim)}.gamedialog-platforms{align-items:baseline;gap:var(--s-2);flex-wrap:wrap;margin:0;display:flex}.gamedialog-platformlist{font-size:var(--text-sm);color:var(--text-dim)}.gamedialog-summary{max-width:68ch;font-size:var(--text-base);color:var(--text-dim);margin:0;line-height:1.6}.gamedialog-actions{gap:var(--s-5);padding:var(--s-4);border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--ink-850);flex-wrap:wrap;align-items:flex-start;display:flex}.gamedialog-block{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.gamedialog-stores{gap:var(--s-2);flex-direction:column;display:flex}.gamedialog-storelinks{gap:var(--s-2);flex-wrap:wrap;display:flex}.gamedialog-store{padding:var(--s-2) var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-800);color:var(--text);font-size:var(--text-sm);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:inline-flex}.gamedialog-store:hover{border-color:var(--ember-dim);background:var(--ink-700)}.gamedialog-store:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.gamedialog-danger{align-items:center;gap:var(--s-3);padding-top:var(--s-4);border-top:1px solid var(--line-soft);flex-wrap:wrap;display:flex}.gamedialog-dangertext{font-size:var(--text-sm);color:var(--text-dim);flex:12rem;margin:0}.gamedialog-remove,.gamedialog-keep,.gamedialog-removeconfirm{padding:var(--s-2) var(--s-4);border-radius:var(--r-md);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out)}.gamedialog-remove{color:var(--text-faint);background:0 0;border:1px solid #0000}.gamedialog-remove:hover{border-color:var(--danger);color:var(--danger)}.gamedialog-removeconfirm{border:1px solid var(--danger);background:var(--danger-wash);color:var(--danger)}.gamedialog-removeconfirm:hover{background:var(--danger);color:var(--ink-900)}.gamedialog-keep{border:1px solid var(--line);background:var(--ink-800);color:var(--text-dim)}.gamedialog-keep:hover{background:var(--ink-700);color:var(--text)}.gamedialog-remove:focus-visible,.gamedialog-keep:focus-visible,.gamedialog-removeconfirm:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (width<=480px){.gamedialog{gap:var(--s-4)}.gamedialog-title{font-size:var(--text-xl)}.gamedialog-actions{gap:var(--s-4);padding:var(--s-3);flex-direction:column}.gamedialog-facts{gap:var(--s-3) var(--s-4)}}@media (prefers-reduced-motion:reduce){.gamedialog-store,.gamedialog-remove,.gamedialog-keep,.gamedialog-removeconfirm{transition:none}}.addgame{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.addgame-label{color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.addgame-input{width:100%;min-width:0;padding:var(--s-3) var(--s-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--ink-850);color:var(--text);font-family:var(--font-body);font-size:var(--text-base)}.addgame-input::placeholder{color:var(--text-faint)}.addgame-input:focus-visible{outline:2px solid var(--ember);outline-offset:2px;border-color:var(--ember-dim)}.addgame-scope,.addgame-hint{color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-sm);margin:0}.addgame-hint{padding:var(--s-4) 0}.addgame-error{padding:var(--s-3);border:1px solid color-mix(in oklab, var(--danger) 45%, transparent);border-radius:var(--r-md);background:var(--danger-wash);color:var(--text);font-family:var(--font-body);font-size:var(--text-sm);margin:0}.addgame-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.addgame-loading{gap:var(--s-3);padding-top:var(--s-2);flex-direction:column;display:flex}.addgame-results{gap:var(--s-1);overscroll-behavior:contain;flex-direction:column;max-height:min(52vh,26rem);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.addgame-row{align-items:center;gap:var(--s-3);padding:var(--s-2);border-radius:var(--r-md);border:1px solid #0000;grid-template-columns:104px minmax(0,1fr) auto;display:grid}.addgame-row:hover{background:var(--ink-800);border-color:var(--line-soft)}.addgame-art{aspect-ratio:var(--capsule-ratio);border-radius:var(--r-sm);background:var(--ink-850);width:100%;overflow:hidden}.addgame-img{object-fit:cover;width:100%;height:100%;display:block}.addgame-info{min-width:0}.addgame-name{color:var(--text);font-family:var(--font-body);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:600;overflow:hidden}.addgame-sub{margin:var(--s-1) 0 0;align-items:baseline;gap:var(--s-2);color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;display:flex;overflow:hidden}.addgame-year{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.addgame-add{appearance:none;min-height:32px;padding:var(--s-2) var(--s-3);border:1px solid var(--line);border-radius:var(--r-pill);color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-sm);white-space:nowrap;cursor:default;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;font-weight:600}.addgame-add--go{background:var(--ember-wash);border-color:color-mix(in oklab, var(--ember) 45%, transparent);color:var(--ember);cursor:pointer}.addgame-add--go:hover:not(:disabled){background:var(--ember);border-color:var(--ember);color:var(--ink-900)}.addgame-add--go:disabled{opacity:.6;cursor:default}.addgame-add:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (width<=480px){.addgame-row{gap:var(--s-2);grid-template-columns:72px minmax(0,1fr) auto}}@media (prefers-reduced-motion:reduce){.addgame-add{transition:none}}.activityfeed{gap:var(--s-3);font-family:var(--font-body);flex-direction:column;display:flex}.activityfeed-label{font-size:var(--text-sm);color:var(--text-dim);margin:0}.activityfeed-empty{font-size:var(--text-sm);color:var(--text-faint);margin:0}.activityfeed-loading{gap:var(--s-2);flex-direction:column;display:flex}.activityfeed-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.activityfeed-item{align-items:center;gap:var(--s-3);padding:var(--s-2) 0;border-bottom:1px solid var(--line-soft);display:flex}.activityfeed-item:last-child{border-bottom:none}.activityfeed-thumb{width:calc(var(--s-7) + var(--s-5));aspect-ratio:var(--capsule-ratio);border:1px solid var(--line-soft);border-radius:var(--r-sm);background:var(--ink-850);flex:none;overflow:hidden}.activityfeed-img{object-fit:cover;width:100%;height:100%;display:block}.activityfeed-text{min-width:0;font-size:var(--text-sm);color:var(--text-dim);overflow-wrap:anywhere;flex:auto;line-height:1.45}.activityfeed-time{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;color:var(--text-faint);white-space:nowrap;flex:none}@media (width<=480px){.activityfeed-item{gap:var(--s-2) var(--s-3);flex-wrap:wrap}.activityfeed-text{flex:8rem}.activityfeed-time{padding-left:calc(var(--s-7) + var(--s-5) + var(--s-3));flex:100%}}.trending{--trending-card-w:232px;gap:var(--s-3);flex-direction:column;display:flex}.trending-head{justify-content:space-between;align-items:center;gap:var(--s-3);display:flex}.trending-label{color:var(--text-dim);font-family:var(--font-display);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.2em;font-variation-settings:"wdth" 120;margin:0;font-weight:700;line-height:1}.trending-nav{gap:var(--s-2);display:flex}.trending-arrow{appearance:none;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--ink-850);width:28px;height:28px;color:var(--text-dim);font-family:var(--font-body);font-size:var(--text-lg);cursor:pointer;transition:opacity var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.trending-arrow:hover:not(:disabled){background:var(--ink-700);color:var(--text)}.trending-arrow:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.trending-arrow:disabled{opacity:0;pointer-events:none}.trending-scroller{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:var(--s-2);overflow-x:auto}.trending-scroller:focus-visible{outline:2px solid var(--ember);outline-offset:4px;border-radius:var(--r-md)}.trending-track{gap:var(--s-3);margin:0;padding:0;list-style:none;display:flex}.trending-track--loading>*{flex:0 0 var(--trending-card-w);width:var(--trending-card-w)}.trending-card{flex:0 0 var(--trending-card-w);width:var(--trending-card-w);gap:var(--s-2);padding:var(--s-2);scroll-snap-align:start;border:1px solid var(--line-soft);border-radius:var(--r-md);background:var(--ink-800);flex-direction:column;display:flex}.trending-art{aspect-ratio:var(--capsule-ratio);border-radius:var(--r-sm);background:var(--ink-850);width:100%;overflow:hidden}.trending-img{object-fit:cover;width:100%;height:100%;display:block}.trending-name{color:var(--text);font-family:var(--font-body);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:600;overflow:hidden}.trending-stats{align-items:baseline;gap:var(--s-2);color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-xs);flex-wrap:wrap;margin:0;display:flex}.trending-stat+.trending-stat:before{content:"·";margin-right:var(--s-2);color:var(--text-faint)}.trending-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-dim)}.trending-add{appearance:none;min-height:28px;padding:var(--s-1) var(--s-3);border:1px solid color-mix(in oklab, var(--ember) 45%, transparent);border-radius:var(--r-pill);background:var(--ember-wash);color:var(--ember);font-family:var(--font-body);font-size:var(--text-xs);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);align-self:flex-start;font-weight:600}.trending-add:hover:not(:disabled){background:var(--ember);border-color:var(--ember);color:var(--ink-900)}.trending-add:disabled{border-color:var(--line);color:var(--text-faint);cursor:default;background:0 0}.trending-add:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.trending-locked{padding:var(--s-1) 0;color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-xs);align-self:flex-start}@media (hover:none),(pointer:coarse){.trending-nav{display:none}}@media (width<=480px){.trending{--trending-card-w:196px}}@media (prefers-reduced-motion:reduce){.trending-scroller{scroll-behavior:auto}.trending-arrow,.trending-add{transition:none}}.deck{gap:var(--s-4);padding-block:var(--s-5);flex-direction:column;display:flex}.deck-heading{align-items:baseline;gap:var(--s-2) var(--s-3);flex-wrap:wrap;display:flex}.deck-title{font-size:var(--text-lg);color:var(--text)}.deck-sub{font-size:var(--text-sm);color:var(--text-faint)}.deck-stack{width:100%;max-width:440px;min-height:340px;margin-inline:auto;position:relative}.deck-card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--ink-800);box-shadow:var(--shadow-card);touch-action:pan-y;cursor:grab;-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;position:relative;overflow:hidden}.deck-card.is-dragging{cursor:grabbing;box-shadow:var(--shadow-lift)}.deck-card--behind{opacity:.5;filter:saturate(.6);pointer-events:none;box-shadow:none;position:absolute;inset:0;transform:scale(.955)translateY(10px)}.deck-art{inline-size:100%;aspect-ratio:var(--capsule-ratio);background:var(--ink-850);flex:none;position:relative;overflow:hidden}.deck-img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}.deck-art--empty{background:linear-gradient(135deg, var(--ink-700), var(--ink-850));place-items:center;display:grid}.deck-initials{font-family:var(--font-display);font-size:var(--text-2xl);font-variation-settings:"wdth" 115, "wght" 800;color:var(--text-faint);letter-spacing:.08em}.deck-stamp{top:var(--s-4);font-family:var(--font-display);font-size:var(--text-xl);font-variation-settings:"wdth" 118, "wght" 800;text-transform:uppercase;letter-spacing:.08em;padding:var(--s-1) var(--s-3);border-radius:var(--r-sm);background:oklch(0% 0 0/.55);border:2px solid;position:absolute}.deck-stamp--add{right:var(--s-4);color:var(--deal);transform:rotate(9deg)}.deck-stamp--skip{left:var(--s-4);color:var(--danger);transform:rotate(-9deg)}.deck-body{gap:var(--s-2);padding:var(--s-4);flex-direction:column;display:flex}.deck-name{font-size:var(--text-lg);color:var(--text);font-weight:600;line-height:1.25}.deck-meta{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--text-dim);flex-wrap:wrap;display:flex}.deck-match{color:var(--ember);font-weight:600}.deck-dot{color:var(--text-faint)}.deck-price{margin-left:auto}.deck-reasons{gap:var(--s-2);margin-top:var(--s-1);flex-wrap:wrap;list-style:none;display:flex}.deck-reason{font-size:var(--text-xs);color:var(--text-dim);background:var(--ink-700);border:1px solid var(--line-soft);border-radius:var(--r-pill);padding:.2rem var(--s-3)}.deck-actions{justify-content:center;align-items:center;gap:var(--s-3);display:flex}.deck-btn{min-width:112px;min-height:44px;padding-inline:var(--s-5);border-radius:var(--r-pill);font-family:var(--font-body);font-size:var(--text-base);cursor:pointer;transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);font-weight:600}.deck-btn:disabled{opacity:.5;cursor:default}.deck-btn:not(:disabled):active{transform:scale(.97)}.deck-btn--skip{border:1px solid var(--line);background:var(--ink-800);color:var(--text-dim)}.deck-btn--skip:not(:disabled):hover{border-color:var(--danger);color:var(--text)}.deck-btn--add{border:1px solid var(--ember);background:var(--ember);color:var(--ink-900)}.deck-btn--add:not(:disabled):hover{background:var(--ember-dim);border-color:var(--ember-dim)}.deck-btn:focus-visible,.deck-undo:focus-visible{outline:2px solid var(--ember);outline-offset:2px}.deck-undo{min-height:44px;padding-inline:var(--s-3);color:var(--text-faint);font-family:var(--font-body);font-size:var(--text-sm);cursor:pointer;background:0 0;border:0;text-decoration:underline}.deck-undo:hover{color:var(--text)}.deck-hint{text-align:center;font-size:var(--text-xs);color:var(--text-faint)}.deck-empty{align-items:center;gap:var(--s-2);padding:var(--s-6) var(--s-4);border:1px dashed var(--line);border-radius:var(--r-lg);text-align:center;flex-direction:column;display:flex}.deck-empty-title{font-size:var(--text-base);color:var(--text)}.deck-empty-lead{font-size:var(--text-sm);color:var(--text-faint);max-width:40ch}@media (width<=480px){.deck-stack{min-height:300px}.deck-btn{flex:1 1 0;min-width:0}}@media (prefers-reduced-motion:reduce){.deck-card,.deck-card--behind{transition:none!important}}.app-shell{background:var(--ink-900);min-height:100dvh;color:var(--text);flex-direction:column;display:flex}.app-skip{left:var(--s-4);top:var(--s-2);z-index:300;padding:var(--s-2) var(--s-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-900);background:var(--ember);border-radius:var(--r-md);position:absolute;transform:translateY(-200%)}.app-skip:focus-visible{outline:2px solid var(--text);outline-offset:2px;transform:none}.app-main{width:100%;max-width:var(--container);padding:var(--s-5) var(--s-4) var(--s-7);gap:var(--s-5);flex-direction:column;flex:1;margin:0 auto;display:flex}.app-columns{gap:var(--s-6);grid-template-columns:minmax(0,1fr) 19rem;align-items:start;display:grid}.app-primary{gap:var(--s-4);flex-direction:column;min-width:0;display:flex}.app-side{gap:var(--s-5);flex-direction:column;min-width:0;display:flex}.app-section-row{align-items:baseline;gap:var(--s-2);padding-bottom:var(--s-2);border-bottom:1px solid var(--line-soft);display:flex}.app-section-label{font-family:var(--font-display);font-variation-settings:"wdth" 118;font-weight:700;font-size:var(--text-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--text-dim);margin:0}.app-section-dot{color:var(--text-faint)}.app-section-count{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ember)}.app-section-add{padding:var(--s-1) var(--s-3);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text-dim);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);background:0 0;margin-left:auto}.app-section-add:hover{color:var(--text);border-color:var(--ink-600)}.app-error{align-items:center;gap:var(--s-3);padding:var(--s-3) var(--s-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);background:var(--danger-wash);border-left:3px solid var(--danger);border-radius:var(--r-sm);flex-wrap:wrap;margin:0;display:flex}.app-error-text{flex:1;min-width:0}.app-gate{max-width:32rem;margin:var(--s-7) auto;padding:var(--s-6);text-align:center;background:var(--ink-800);border:1px solid var(--line-soft);border-radius:var(--r-lg)}.app-gate-title{margin:0 0 var(--s-3);font-family:var(--font-display);font-variation-settings:"wdth" 118;font-weight:800;font-size:var(--text-xl);letter-spacing:.02em;text-transform:uppercase;color:var(--text)}.app-gate-text{margin:0 0 var(--s-5);font-family:var(--font-body);font-size:var(--text-base);color:var(--text-dim);line-height:1.55}.app-gate-actions{gap:var(--s-3);flex-wrap:wrap;justify-content:center;display:flex}.app-btn-primary{padding:var(--s-2) var(--s-5);font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-900);background:var(--ember);border:1px solid var(--ember);border-radius:var(--r-md);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out);font-weight:600}.app-btn-primary:hover{background:var(--ember-dim);border-color:var(--ember-dim)}.app-btn-quiet{padding:var(--s-2) var(--s-4);font-family:var(--font-body);font-size:var(--text-sm);color:var(--text);background:var(--ink-700);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out)}.app-btn-quiet:hover{background:var(--ink-600)}.app-skip:focus-visible,.app-section-add:focus-visible,.app-btn-primary:focus-visible,.app-btn-quiet:focus-visible{outline:2px solid var(--ember);outline-offset:2px}@media (width<=1040px){.app-columns{gap:var(--s-5);grid-template-columns:minmax(0,1fr)}}@media (width<=480px){.app-main{padding:var(--s-4) var(--s-3) var(--s-6);gap:var(--s-4)}.app-gate{margin:var(--s-5) auto;padding:var(--s-5) var(--s-4)}}
