:root{--table: #e3eae1;--card: #fbfcf7;--soft: #eef2eb;--line: #c6d1c3;--line-strong: #a8b8a6;--ink: #1d2b2a;--muted: #4e5d57;--faint: #6b7a73;--cta: #26598f;--cta-hover: #1c456f;--cta-ink: #ffffff;--warn: #9a4a26;--display: "Bricolage Grotesque", "Avenir Next", "Segoe UI", system-ui, sans-serif;--body: "Inter", "Segoe UI", system-ui, sans-serif;--mark: #c08a1e;--gutter: 20px;--tap: 44px;--speed: .18s;color-scheme:light}:root{--pawn-1: #2e6cae;--pawn-2: #c9a227;--pawn-3: #c4473b;--pawn-4: #3a8a5c;--pawn-5: #77509e;--pawn-6: #c9682e;--pawn-7: #2b8584;--pawn-8: #b5456f;--pawn-9: #6a9a4b;--pawn-10: #4a5a78}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--table);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{display:block;max-width:100%}button,input,select{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer}h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.15;letter-spacing:-.02em}a{color:var(--cta);text-underline-offset:3px}a:hover{color:var(--cta-hover)}:focus-visible{outline:3px solid var(--cta);outline-offset:2px;border-radius:6px}:focus:not(:focus-visible){outline:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.wrap{max-width:1180px;margin-inline:auto;padding:18px var(--gutter) 56px}.masthead{margin-bottom:20px}.masthead-title{font-family:var(--display);font-weight:800;font-size:clamp(2.1rem,8vw,3.2rem);line-height:.95;letter-spacing:-.03em}.masthead-nowrap{white-space:nowrap}.masthead-mark{display:inline-block;color:var(--mark);transform:rotate(12deg) translateY(-.04em);margin-left:.04em}.masthead-shelf{color:var(--muted);font-size:.95rem;margin-top:8px}.summary-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:12px;margin-inline:calc(var(--gutter) * -1);padding:8px var(--gutter);background:var(--card);border-block:1px solid var(--line)}.summary-text{flex:1;min-width:0;color:var(--muted);font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layout{display:grid;gap:28px;grid-template-columns:minmax(0,1fr);margin-top:16px}@media(min-width:920px){.layout{margin-top:0}}.result{min-width:0}.controls{display:none}.count{margin-bottom:12px}.count-link,.count-plain{font-family:var(--display);font-weight:700;font-size:1.1rem;color:var(--muted);letter-spacing:-.01em}.count-link{padding:0;text-decoration:underline;text-decoration-color:var(--line-strong);text-decoration-thickness:2px;text-underline-offset:4px}.count-link:hover{color:var(--ink);text-decoration-color:var(--cta)}.section-heading{font-family:var(--display);font-weight:700;font-size:1.25rem;margin:30px 0 12px}.footer{margin-top:40px;padding-top:16px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}@media(min-width:920px){:root{--gutter: 24px}.layout{grid-template-columns:364px minmax(0,1fr);align-items:start}.controls{display:block;position:sticky;top:16px;background:var(--card);border:1px solid var(--line);border-radius:22px;padding:14px 17px 16px;max-height:calc(100vh - 32px);overflow-y:auto}.masthead{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:6px 24px;margin-bottom:14px}.masthead-shelf{margin-top:0}.count-link,.count-plain{font-size:1rem}}.count-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}.count{margin-bottom:0;min-width:0}.count-row .linkbtn{flex:none}.q-block+.q-block{margin-top:6px;padding-top:5px;border-top:1px dashed var(--line)}.q-title{font-family:var(--display);font-weight:700;font-size:1rem;letter-spacing:-.01em;margin-bottom:7px}.hint{color:var(--faint);font-size:.78rem;margin-top:6px}.linkbtn{padding:0;color:var(--cta);text-decoration:underline;text-underline-offset:3px;font-size:.85rem}.seg{display:flex;flex-wrap:wrap;gap:4px}.pill{border:1.5px solid var(--line);border-radius:999px;padding:5px 11px;font-size:.85rem;line-height:1.2;transition:background-color var(--speed) ease,border-color var(--speed) ease,color var(--speed) ease}.pill:hover{border-color:var(--line-strong);background:var(--soft)}.pill[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--card)}.pill[aria-pressed=true]:hover{background:var(--muted);border-color:var(--muted)}.count-readout{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.count-num{font-family:var(--display);font-weight:800;font-size:1.85rem;line-height:1;letter-spacing:-.04em}.count-word{color:var(--muted);font-size:.95rem}.meeples{display:flex;align-items:center;gap:2px;margin-bottom:8px}.meeple{display:grid;place-items:center;padding:2px 0;flex:1 1 0;min-width:0}.meeple svg{width:100%;max-width:23px;height:auto;display:block;transition:transform var(--speed) ease}.meeple path{fill:transparent;stroke:var(--line-strong);stroke-width:1.6;transition:fill var(--speed) ease,stroke var(--speed) ease}.meeple.is-on path{fill:var(--pawn, var(--ink));stroke:transparent}.meeple:hover svg{transform:translateY(-2px)}.meeple[aria-pressed=true] svg{transform:translateY(-2px)}.kids{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.stepper{display:flex;align-items:center;border:1.5px solid var(--line);border-radius:999px}.stepper-button{min-width:34px;min-height:32px;font-size:1rem;font-weight:700}.stepper-button:disabled{opacity:.35;cursor:not-allowed}.stepper-value{min-width:3.6rem;text-align:center;font-size:.85rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;padding:12px 18px;min-height:var(--tap);font-weight:700;font-size:1rem;transition:background-color var(--speed) ease,border-color var(--speed) ease}.btn-primary{background:var(--cta);color:var(--cta-ink)}.btn-primary:hover:not(:disabled){background:var(--cta-hover)}.btn-quiet{border:1.5px solid var(--line)}.btn-quiet:hover:not(:disabled){border-color:var(--line-strong);background:var(--soft)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-small{padding:8px 14px;font-size:.9rem;border-radius:999px}.btn-block{width:100%}.game-art{display:grid;place-items:center;background:var(--soft);overflow:hidden}.game-art img{max-height:100%;max-width:100%;width:auto;object-fit:contain}.game-art.is-missing{font-family:var(--display);font-weight:800;font-size:2rem;color:var(--faint)}.game-art-pick{aspect-ratio:1 / 1;border-radius:18px;padding:30px;overflow:visible}.game-art-pick img{border-radius:4px;transform:rotate(-3deg);box-shadow:0 1px 2px #141e1947,0 10px 18px -8px #141e196b,0 28px 48px -20px #141e1980;animation:drop .42s cubic-bezier(.2,.9,.25,1.15)}@keyframes drop{0%{transform:rotate(-9deg) translateY(-26px) scale(1.06);opacity:0}to{transform:rotate(-3deg);opacity:1}}.game-art-alternative{aspect-ratio:4 / 3;border-radius:10px;padding:8px}.game-art-alternative img{border-radius:3px}.game-art-row{width:56px;height:56px;flex:none;border-radius:8px;padding:4px}.pick{background:var(--card);border:1px solid var(--line);border-radius:28px;padding:clamp(18px,3.5vw,36px);display:grid;gap:clamp(18px,3vw,40px);grid-template-columns:minmax(0,1fr)}@media(min-width:640px){.pick{grid-template-columns:minmax(180px,38%) minmax(0,1fr);align-items:center}}.pick-eyebrow{color:var(--muted);font-size:.9rem;margin-bottom:4px}.pick-name{font-family:var(--display);font-weight:800;font-size:clamp(1.8rem,4.5vw,2.9rem);line-height:1.02;letter-spacing:-.025em;text-wrap:balance}.pick-name a{color:inherit;text-decoration:none}.pick-name a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px}.pick-year{font-family:var(--display);font-weight:500;color:var(--muted);margin-top:2px}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:18px 0}@media(min-width:560px){.facts{grid-template-columns:repeat(4,minmax(0,1fr))}}.fact{background:var(--soft);border-radius:12px;padding:9px 10px 8px}.fact dt{font-size:.78rem;color:var(--muted)}.fact dd{font-family:var(--display);font-weight:700;font-size:1.1rem;line-height:1.15;margin-top:1px}.fact-detail{display:block;font-family:var(--body);font-weight:400;font-size:.75rem;color:var(--muted)}.pick-why{font-size:1.05rem;line-height:1.45}.pick-caution{color:var(--warn);font-size:.88rem;margin-top:6px}.pick-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.alternatives-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;list-style:none;padding:0}.alternatives-row>li{display:flex;min-width:0}.alternative{display:flex;flex-direction:column;gap:8px;width:100%;height:100%;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:10px 10px 12px;transition:border-color var(--speed) ease}.alternative:hover{border-color:var(--line-strong)}.alternative-name{font-family:var(--display);font-weight:700;font-size:.95rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.alternative-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.matches-controls{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.field-inline{display:flex;align-items:center;gap:8px;flex:1 1 12rem}.field-inline label{font-size:.85rem;color:var(--muted)}.text-field,.select-field{min-height:var(--tap);width:100%;padding:0 12px;border:1.5px solid var(--line);border-radius:12px;background:var(--card)}.select-field{width:auto;flex:1}.match-grid{display:grid;gap:8px;list-style:none;padding:0}.match-grid>li{min-width:0}.match{display:flex;min-width:0;align-items:center;gap:12px;width:100%;min-height:var(--tap);padding:8px;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:14px;transition:border-color var(--speed) ease}.match:hover{border-color:var(--line-strong)}.match-body{flex:1;min-width:0}.match-name{display:block;font-family:var(--display);font-weight:700;font-size:.95rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matches-empty{color:var(--muted);padding-block:16px}.no-matches{background:var(--card);border:2px dashed var(--line);border-radius:28px;padding:32px clamp(20px,4vw,44px)}.no-matches-heading{font-family:var(--display);font-weight:800;font-size:1.7rem;letter-spacing:-.02em}.no-matches-text{color:var(--muted);max-width:52ch;margin-top:8px}.no-matches-options{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin-top:18px}.no-matches-count{color:var(--muted);font-weight:400;font-size:.85rem}.sheet-layer{position:fixed;inset:0;z-index:50;display:flex;flex-direction:column;justify-content:flex-end}.sheet-backdrop{position:absolute;inset:0;background:#0a140f80}.sheet{position:relative;max-height:88vh;display:flex;flex-direction:column;background:var(--table);border-top-left-radius:24px;border-top-right-radius:24px;border-top:1px solid var(--line)}.sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px var(--gutter);border-bottom:1px solid var(--line)}.sheet-heading{font-family:var(--display);font-weight:800;font-size:1.4rem}.sheet-body{flex:1;overflow-y:auto;padding:16px var(--gutter);overscroll-behavior:contain}.sheet-foot{padding:12px var(--gutter);padding-bottom:max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--card)}.toast{position:fixed;left:var(--gutter);right:var(--gutter);bottom:max(16px,env(safe-area-inset-bottom));z-index:40;max-width:30rem;margin-inline:auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-radius:16px;background:var(--ink);color:var(--card)}.toast-text{flex:1 1 12rem;font-size:.88rem}.toast-actions{display:flex;gap:14px}.toast-link{min-height:32px;color:var(--card);font-weight:700;font-size:.88rem;text-decoration:underline;text-underline-offset:3px}.refresh-action{display:flex;align-items:center;gap:12px;margin-top:8px}.refresh-error{margin-top:8px;color:var(--warn)}.spinner{width:1rem;height:1rem;border:2px solid var(--line);border-top-color:var(--cta);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@media(min-width:920px){.match-grid{grid-template-columns:repeat(auto-fill,minmax(17rem,1fr))}}.meeple-number{display:block;font-size:.62rem;font-weight:700;line-height:1;color:var(--faint);margin-top:1px}.meeple.is-on .meeple-number{color:var(--ink)}.pick-learn{margin-top:14px;font-size:.9rem}.pick-learn a{text-decoration:underline;text-underline-offset:3px}.sheet:focus,.sheet:focus-visible{outline:none}.controls::-webkit-scrollbar{width:8px}.controls::-webkit-scrollbar-button,.controls::-webkit-scrollbar-button:start:decrement,.controls::-webkit-scrollbar-button:end:increment{display:none;width:0;height:0}.controls::-webkit-scrollbar-track,.controls::-webkit-scrollbar-corner{background:transparent}.controls::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px;border:2px solid var(--card);background-clip:padding-box}.controls::-webkit-scrollbar-thumb:hover{background:var(--faint);background-clip:padding-box}@supports not selector(::-webkit-scrollbar){.controls{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}}@media(pointer:coarse){.pill{min-height:var(--tap);padding:0 16px;font-size:.95rem}.seg{gap:8px}.meeple{min-height:var(--tap)}.meeple svg{max-width:30px}.stepper-button{min-width:var(--tap);min-height:var(--tap)}.linkbtn,.toast-link,.count-link{display:inline-flex;align-items:center;min-height:var(--tap)}}.pick-blurb{margin-top:10px;color:var(--muted);font-size:1rem;line-height:1.45;max-width:48ch;text-wrap:pretty}.pill-any{flex:none;margin-left:6px;padding:4px 10px;font-size:.8rem;align-self:center}.pick-tags{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin-top:-8px;margin-bottom:16px}.tag{padding:3px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.78rem;line-height:1.3}.card-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 12px;margin-top:3px;font-size:.78rem;line-height:1.45}.card-fact{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-fact-label{color:var(--faint)}.alternative-facts{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:1px 8px;margin-top:auto;padding-top:6px;color:var(--muted);font-size:.78rem;line-height:1.4}.alternative-facts>span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
