
:root{color-scheme:light;--cream:#fbf6ee;--paper:#fffdf8;--ink:#242923;--muted:#626154;--line:#d9ceba;--gold:#77510b;--soft:#f0e6d4}
*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 system-ui,-apple-system,sans-serif}a{color:var(--gold);text-underline-offset:.2em}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #977023;outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default}[hidden]{display:none!important}.catalog-wrap{max-width:1180px;margin:0 auto;padding:28px 26px 64px}.catalog-head{display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:4px 0 20px}.catalog-brand{font-size:1.5rem;font-weight:850;text-decoration:none;letter-spacing:-.06em}.catalog-head nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.88rem}.catalog-hero{padding:48px 0 24px;max-width:830px}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--gold)}h1{font-size:clamp(2.2rem,5vw,3.7rem);line-height:1.09;letter-spacing:-.055em;margin:12px 0 18px}h2{font-size:1.5rem;line-height:1.25;letter-spacing:-.025em}h3{font-size:1.05rem;line-height:1.35;margin:0 0 8px}.lede{font-size:1.1rem;color:var(--muted);max-width:76ch}.catalog-note{padding:19px 22px;border:1px solid var(--line);border-radius:14px;background:var(--soft);margin:16px 0}.catalog-note p{margin:6px 0}.muted{color:var(--muted)}.small{font-size:.84rem}.catalog-actions{display:flex;gap:9px;flex-wrap:wrap;margin:15px 0}.catalog-actions a,.catalog-actions button,.filters button{border:1px solid var(--line);border-radius:8px;background:var(--paper);padding:8px 12px;font-size:.87rem;font-weight:650;color:var(--ink);text-decoration:none}.catalog-actions a:hover,.catalog-actions button:hover,.filters button:hover{border-color:var(--gold)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.filters [aria-pressed=true]{background:var(--gold);color:white;border-color:var(--gold)}.catalog-tools{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:24px 0 14px}.catalog-tools label{display:grid;gap:6px;font-size:.85rem;font-weight:650;flex:1;min-width:220px}.catalog-tools input,.catalog-tools select{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--paper);color:var(--ink);min-width:0;width:100%}.catalog-tools p{margin:0;font-size:.86rem}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.game-card{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:18px;min-width:0}.game-card .eyebrow{font-size:.64rem;letter-spacing:.08em}.game-card h3{margin-top:8px}.game-card p{color:var(--muted);font-size:.9rem;margin:8px 0}.game-card .mode{font-size:.77rem;color:#53462e;padding-top:10px;border-top:1px solid #e9e0d1;margin-top:14px}.game-card details{font-size:.87rem}.game-card summary{cursor:pointer;color:var(--gold);font-weight:700;padding:7px 0}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:25px 0}.gallery figure{margin:0}.gallery img{display:block;width:100%;height:auto;border-radius:13px}.gallery figcaption{color:var(--muted);font-size:.75rem;margin-top:6px}.status-key{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.status{display:inline-block;border-radius:7px;padding:4px 8px;font-size:.77rem;font-weight:700;line-height:1.4}.tested{background:#2b704e;color:white}.local{background:#d7eddd;color:#16452e}.building{background:#e8bd45;color:#4b3500}.unavailable{background:#80514b;color:white}.reviewed{background:#ede9e0;color:#514d42}.free{color:#216040;font-weight:700}.paid{color:#8c3430;font-weight:700}.section-nav{display:flex;gap:7px;flex-wrap:wrap;padding:20px 0}.section-nav a{border:1px solid var(--line);border-radius:8px;padding:7px 10px;font-size:.81rem;text-decoration:none;background:var(--paper)}.feature-section{border:1px solid var(--line);border-radius:14px;background:var(--paper);margin:14px 0;overflow:hidden;scroll-margin-top:20px}.feature-section>summary{padding:20px 22px;cursor:pointer;display:list-item;list-style-position:inside;font-size:1.1rem;font-weight:800;line-height:1.4}.feature-section>summary small{display:block;color:var(--muted);font-size:.86rem;font-weight:400;margin:5px 0 0 21px}.section-body{padding:0 22px 23px}.section-intro{border-top:1px solid var(--line);padding-top:15px;margin:0 0 20px;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 26px}.capability{padding:18px 0;border-top:1px solid #e7dece;min-width:0}.capability p{font-size:.91rem;color:var(--muted);margin:7px 0}.capability .where{font-size:.81rem;color:#53462e}.capability .status{margin:0 0 8px}.spec-table{border-collapse:collapse;width:100%;font-size:.86rem;margin:18px 0}.spec-table th,.spec-table td{padding:11px;text-align:left;border-bottom:1px solid var(--line)}.spec-table th{background:var(--soft)}.table-scroll{overflow-x:auto}.layout-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:0;list-style:none}.layout-list li{border:1px solid var(--line);border-radius:9px;padding:12px;background:var(--cream)}.layout-list strong{display:block;font-size:.9rem}.layout-list p{font-size:.8rem;margin:5px 0}.catalog-footer{border-top:1px solid var(--line);padding-top:23px;margin-top:42px;font-size:.85rem;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap;justify-content:space-between}.catalog-footer p{width:100%;margin:8px 0 0}.search-empty{border:1px solid var(--line);border-radius:10px;padding:20px}.progress-note{font-size:.82rem;margin:5px 0 16px;color:var(--muted)}
@media(max-width:850px){.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.layout-list{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.catalog-wrap{padding:18px 17px 45px}.catalog-head{align-items:flex-start}.catalog-head nav{gap:8px 13px;justify-content:flex-end}.catalog-hero{padding-top:30px}.catalog-grid,.feature-grid{grid-template-columns:1fr}.gallery{gap:8px}.gallery figcaption{font-size:.68rem}.feature-section>summary{padding:17px 15px}.section-body{padding:0 15px 18px}.catalog-note{padding:15px}.layout-list{grid-template-columns:1fr}.catalog-tools p{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
