.game-library{padding-bottom:2rem}.library-hero{justify-content:space-between;align-items:center;gap:1.5rem;padding:2rem 0 1.75rem;display:flex}.library-eyebrow{color:var(--brand-strong);letter-spacing:.1em;align-items:center;gap:.45rem;margin:0 0 .65rem;font-size:.65rem;font-weight:800;display:flex}.library-hero h1{letter-spacing:-.065em;flex-wrap:wrap;align-items:center;gap:0 .22em;margin:0;font-size:clamp(2.1rem,3.4vw,3.3rem);font-weight:900;line-height:1.15;display:flex}.library-hero h1>span:first-child{color:var(--brand)}.library-hero .library-total{border:1px solid var(--line);color:var(--brand-strong);background:var(--surface);letter-spacing:0;border-radius:.7rem;margin-left:.5rem;padding:.35rem .65rem;font-size:.85rem;font-weight:750}.library-hero-copy>p:not(.library-eyebrow){color:var(--muted);margin:.7rem 0;font-size:.85rem}.library-hero-details{color:var(--muted);flex-wrap:wrap;gap:.45rem 1rem;font-size:.67rem;display:flex}.library-hero-details span{align-items:center;gap:.4rem;display:inline-flex}.library-hero-details span:before{content:"";background:var(--brand);border-radius:50%;width:.3rem;height:.3rem}.library-hero-side{align-items:center;gap:1.5rem;display:flex}.library-controller{width:7rem;height:7rem;color:var(--brand);background:var(--brand-soft);border-radius:2rem;place-items:center;display:grid;position:relative;transform:rotate(-9deg)}.library-controller>span{color:var(--warm);font-size:2rem;position:absolute;top:-.5rem;right:-.3rem}.library-controller>i{color:var(--hot);font-size:2rem;font-style:normal;font-weight:800;position:absolute;bottom:-.6rem;left:-.45rem}.library-random{background:var(--play);min-height:2.85rem;color:var(--play-ink);border:1px solid #ebbc40;border-radius:.85rem;flex-shrink:0;justify-content:center;align-items:center;gap:.55rem;padding:.65rem 1rem;font-size:.8rem;font-weight:800;display:inline-flex;box-shadow:0 3px #cf9f2926}.library-random:hover{background:#ffd976}.library-random[aria-disabled=true]{opacity:.5;cursor:default}.library-controls{z-index:15;background:var(--paper);padding-block:.3rem .9rem;position:sticky;top:4.35rem}.library-search-bar{border:1px solid var(--line);background:var(--surface);border-radius:1rem;align-items:center;gap:1rem;padding:.45rem .55rem .45rem .95rem;display:flex;box-shadow:0 3px #20326305}.library-search{min-width:0;color:var(--muted);flex:1;align-items:center;gap:.65rem;display:flex}.library-search>svg{flex-shrink:0}.library-search input{width:100%;min-width:0;min-height:2.6rem;color:var(--ink);font:inherit;background:0 0;border:0;outline:none;font-size:.8rem}.library-search input::placeholder{color:var(--muted)}.library-search-bar:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.library-sort{border-left:1px solid var(--line);color:var(--muted);flex-shrink:0;align-items:center;gap:.55rem;padding-left:1rem;font-size:.7rem;display:flex}.library-sort select{background-color:var(--surface-soft);max-width:9rem;min-height:2.6rem;color:var(--ink);font:inherit;cursor:pointer;border:0;border-radius:.6rem;padding:.45rem 1.8rem .45rem .6rem;font-size:.75rem;font-weight:700}.library-categories{scrollbar-width:thin;scrollbar-color:var(--line) transparent;overscroll-behavior-inline:contain;gap:.45rem;padding:.85rem .15rem .25rem;display:flex;overflow-x:auto}.library-category{border:1px solid var(--line);background:var(--surface);min-height:2.6rem;color:var(--muted);white-space:nowrap;border-radius:.75rem;flex-shrink:0;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.72rem;font-weight:700;display:inline-flex}.library-category b{background:var(--surface-soft);text-align:center;font-variant-numeric:tabular-nums;border-radius:.3rem;min-width:1.2rem;padding:.1rem .3rem;font-size:.62rem}.library-category:hover{border-color:var(--brand);color:var(--brand-strong)}.library-category[aria-current=page]{border-color:var(--brand);background:var(--brand);color:var(--brand-ink)}.library-category[aria-current=page] b{background:color-mix(in srgb, var(--brand-ink) 18%, transparent)}.library-results{min-height:25rem;padding-top:.5rem}.library-results-head{flex-wrap:wrap;align-items:baseline;gap:.4rem .75rem;min-height:2.6rem;padding-block:.25rem .85rem;display:flex}.library-results-head h2{letter-spacing:-.03em;margin:0;font-size:1.05rem;font-weight:800}.library-results-head p{color:var(--muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:.72rem}.library-reset{color:var(--brand-strong);margin-left:auto;font-size:.7rem;font-weight:700}.library-reset span{padding-left:.3rem;font-size:1rem}.library-reset:hover{text-decoration:underline}.library-tile{min-width:0}.library-tile>.game-card-wrap{height:100%}.game-library [hidden]{display:none!important}.library-empty{border:1px dashed var(--line);background:var(--surface);text-align:center;border-radius:1.1rem;justify-items:center;gap:.75rem;padding:3rem 1rem;display:grid}.library-empty-icon{width:4.5rem;height:4.5rem;color:var(--brand);background:var(--brand-soft);border-radius:1.2rem;place-items:center;display:grid}.library-empty h3{margin:0;font-size:1.25rem}.library-empty p{max-width:22rem;color:var(--muted);margin:0 0 .4rem;font-size:.85rem}@media (width<=75rem){.library-controller{display:none}}@media (width<=42rem){.library-hero{align-items:flex-start;gap:.85rem;padding-block:1.4rem 1.15rem}.library-hero h1{font-size:2rem}.library-hero .library-total{margin-left:.25rem;padding:.3rem .45rem;font-size:.7rem}.library-hero-copy>p:not(.library-eyebrow){max-width:16rem;font-size:.76rem;line-height:1.65}.library-eyebrow{font-size:.58rem}.library-hero-details{gap:.4rem .6rem;font-size:.6rem}.library-hero-side{align-self:flex-end}.library-random{gap:.35rem;min-height:2.65rem;padding:.55rem .7rem;font-size:.67rem}.library-controls{padding-bottom:.7rem;top:4.25rem}.library-search-bar{gap:.5rem;padding-left:.7rem}.library-search{gap:.45rem}.library-search input{font-size:.75rem}.library-sort{padding-left:.5rem}.library-sort>span{display:none}.library-sort select{max-width:6.4rem;padding-inline:.5rem 1.1rem;font-size:.7rem}.library-results-head{gap:.3rem .6rem}.library-results-head p{font-size:.67rem}.library-category{padding-inline:.65rem;font-size:.68rem}}@media (width<=30rem){.library-hero{flex-wrap:wrap}.library-hero-side{width:100%}.library-random{min-height:2.4rem}}
