:root{--text:#5f4b36;--text-h:#241608;--text-muted:#8a7663;--text-faint:#ab9578;--bg:#fff;--surface:#fff;--surface-hi:#fff9e6;--border:#f8e3b5;--code-bg:#fff6d9;--accent:#facc15;--accent-2:#f97316;--accent-3:#a16207;--accent-ink:#854d0e;--accent-soft:#fef3c7;--grad:linear-gradient(140deg, #fde047, #f59e0b);--grad-strong:linear-gradient(140deg, #fbbf24, #f59e0b);--shadow:0 10px 30px #ca8a041f;--sans:"Segoe UI", system-ui, Roboto, sans-serif;--display:"Trebuchet MS", "Segoe UI", system-ui, sans-serif;--mono:ui-monospace, Consolas, monospace;font:16px/160% var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);min-height:100vh;margin:0}#root{flex-direction:column;min-height:100vh;display:flex}h1,h2,h3{color:var(--text-h);font-family:var(--display);letter-spacing:-.02em;font-weight:700;line-height:1.15}a{color:var(--accent-3)}code{font-family:var(--mono);background:var(--code-bg);border-radius:4px;padding:1px 5px}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}.app{box-sizing:border-box;text-align:left;flex-direction:column;flex:1;width:100%;max-width:1000px;margin:0 auto;padding:2.5rem 1.5rem 3rem;display:flex}main{flex-direction:column;flex:1;display:flex}header{background:var(--accent);box-shadow:0 2px 16px #ca8a0447}.header-inner{justify-content:space-between;align-items:center;gap:1.5rem;max-width:1000px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.brand{align-items:center;gap:.65rem;text-decoration:none;display:flex}.brand-mark{box-sizing:content-box;background:var(--surface);border-radius:999px;flex-shrink:0;width:2rem;height:2rem;padding:.3rem;transition:transform .15s}.brand:hover .brand-mark{transform:rotate(-8deg)scale(1.05)}.brand-name{font-family:var(--display);letter-spacing:.01em;color:var(--text-h);font-size:1.3rem;font-weight:700}nav{gap:.4rem;display:flex}nav a{color:var(--accent-ink);border-radius:999px;padding:.4rem 1rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s}nav a:hover{color:var(--text-h);background:#ffffff59}nav a.active{background:var(--surface);color:var(--accent-ink)}.hero{text-align:center;padding:1rem 0 3.5rem}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--accent-3);margin:0 0 .75rem;font-size:.78rem;font-weight:700}.hero h2{max-width:16ch;margin:0 auto 1rem;font-size:clamp(2.25rem,6vw,3.5rem)}.lede{max-width:46ch;margin:0 auto;font-size:1.05rem}.ask{border:1px solid var(--border);background:var(--surface);width:min(100%,34rem);box-shadow:var(--shadow);border-radius:999px;align-items:center;gap:.5rem;margin:2rem auto .75rem;padding:.4rem;display:flex}.ask input{min-width:0;color:var(--text-h);font:inherit;background:0 0;border:0;border-radius:999px;flex:1;padding:.7rem 1rem}.ask input::placeholder{color:var(--text-faint)}.ask input:focus{outline:none}.ask:focus-within{border-color:var(--accent-2);box-shadow:0 0 0 3px #facc1559, var(--shadow)}.ask button,.button{background:var(--grad-strong);color:var(--text-h);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:.7rem 1.6rem;font-weight:700;text-decoration:none;transition:transform .12s,box-shadow .12s}.ask button:hover:not(:disabled),.button:hover{transform:translateY(-1px);box-shadow:0 8px 22px #f59e0b66}.ask button:disabled{opacity:.55;cursor:default}.hint{color:var(--text-muted);margin:0;font-size:.9rem}.categories h3{margin:0 0 1.25rem;font-size:1.35rem}.category-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.category-card{border:1px solid var(--border);background:var(--surface);border-radius:16px;flex-direction:column;gap:.3rem;padding:1.25rem;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.category-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-3px)}.category-icon{font-size:1.7rem}.category-name{color:var(--text-h);font-weight:700}.category-count{color:var(--text-muted);font-size:.85rem}.stats{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:3rem;display:flex}.stat{border:1px solid var(--border);background:var(--surface-hi);text-align:center;border-radius:16px;flex:8rem;padding:1.25rem}.stat strong{font-family:var(--display);color:var(--accent-2);font-size:1.9rem;display:block}.stat span{letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.panel{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:20px;padding:2rem}.panel+.panel,.panel+.categories{margin-top:2rem}.panel.center{text-align:center}.panel h2{margin:0 0 .5rem;font-size:clamp(1.8rem,4vw,2.4rem)}.panel .lede{margin:0 0 1.5rem}.panel.center .lede{margin-inline:auto}.set-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.set-card{border:1px solid var(--border);background:var(--surface-hi);border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.set-card>div{flex:1;min-width:0}.set-card strong{color:var(--text-h)}.set-thumb{object-fit:cover;border-radius:12px;flex-shrink:0;width:3.25rem;height:3.25rem}.set-banner{object-fit:cover;border-radius:16px;width:100%;max-height:220px;margin:0 0 1.25rem;display:block}.set-card p{margin:.15rem 0 0;font-size:.9rem}.pill{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;flex-shrink:0;padding:.3rem .8rem;font-size:.8rem;font-weight:600}.set-link{color:inherit;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s}.set-link:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.set-row{align-items:center;gap:.75rem;display:flex}.set-row .set-card{flex:1;min-width:0}.set-edit{flex-shrink:0;padding:.55rem 1.1rem;font-size:.9rem}.set-button{width:100%;font:inherit;text-align:left;cursor:pointer}.chosen-game{margin-bottom:1.25rem}.muted{color:var(--text-muted)}.game-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.game-head-main{align-items:center;gap:.85rem;min-width:0;display:flex}.game-head .eyebrow{letter-spacing:-.015em;text-transform:none;color:#000;margin-bottom:.5rem;font-size:clamp(1.25rem,2.4vw,1.6rem);font-weight:800;line-height:1.1}.game-progress{margin:0;font-size:.9rem}.game-clock{font-variant-numeric:tabular-nums;font-weight:700}.pill.danger{color:#b42318;background:#fdf0f0}.game-controls{flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:1rem;font-size:1.05rem;display:flex}.game-controls .button,.game-controls .pill{font-size:inherit}.game-controls .button{padding:.5rem 1rem}.game-controls .pill{padding:.35rem .9rem}.game-status{align-items:center;gap:.6rem;margin-left:auto;display:flex}.panel.game{flex-direction:column;display:flex}.play-stage{border:1px solid var(--border);border-radius:14px;margin-top:1.25rem;display:flex;overflow:hidden}.play-frame{border:0;width:100%;height:32rem;display:block}.button.ghost{background:var(--surface-hi);border:1px solid var(--border);color:var(--text)}.button.ghost:hover{box-shadow:var(--shadow)}.button.danger{color:#b42318;background:#fdf0f0;border:1px solid #f3c2c2}.button.danger:hover{color:#fff;background:#b42318;border-color:#b42318;box-shadow:0 8px 22px #b423184d}.empty{border:1px dashed var(--border);background:var(--surface-hi);text-align:center;border-radius:16px;padding:2.5rem 1rem}.empty p{margin:.25rem 0}.empty-icon{margin-bottom:.5rem;font-size:2rem;display:block}.empty strong{color:var(--text-h)}.error{color:#b42318;background:#fdf0f0;border:1px solid #f3c2c2;border-radius:12px;padding:.85rem 1.1rem}.editor-layout{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:start;gap:1.5rem;width:calc(100vw - 3rem);margin-inline:calc(50% - 50vw + 1.5rem);display:grid}.editor-layout .panel+.panel{margin-top:0}.panel.preview{position:sticky;top:1.5rem}.preview-head{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.preview-head .eyebrow,.preview-head h2{margin-bottom:.25rem}.preview-actions{flex-shrink:0;align-items:center;gap:.6rem;display:flex}.preview-actions .field-expand{margin-bottom:0}.panel.preview.expanded{z-index:60;box-sizing:border-box;box-shadow:none;background:var(--bg);border:0;border-radius:0;flex-direction:column;padding:1.25rem 1.5rem 1.5rem;display:flex;position:fixed;inset:0}.panel.preview.expanded .preview-stage{flex:1;place-items:stretch stretch;min-height:0}.panel.preview.expanded .preview-frame{min-height:0}.preview-stage{border:1px dashed var(--border);border-radius:14px;place-items:center;min-height:28rem;margin-top:1rem;display:grid;overflow:hidden}.preview-frame{border:0;width:100%;height:100%;min-height:28rem;display:block}.field{display:block}.field-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.4rem;font-size:.78rem;font-weight:700;display:block}.field textarea,.field input{box-sizing:border-box;border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text-h);font:inherit;resize:vertical;border-radius:14px;padding:.85rem 1rem;display:block}.field textarea:focus,.field input:focus{border-color:var(--accent-2);outline:none;box-shadow:0 0 0 3px #facc1559}.field textarea.code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;line-height:1.5}.field-head{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.field-expand{border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font:inherit;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:999px;flex-shrink:0;margin-bottom:.4rem;padding:.15rem .65rem;font-size:.72rem;font-weight:700}.field-expand:hover{border-color:var(--accent);color:var(--accent-ink)}.field.expanded{z-index:60;box-sizing:border-box;background:var(--bg);flex-direction:column;padding:1.25rem 1.5rem 1.5rem;display:flex;position:fixed;inset:0}.field.expanded .field-head{margin-bottom:.1rem}.field.expanded textarea{resize:none;overscroll-behavior:contain;border-radius:16px;flex:1;min-height:0}.prompt-field{margin-bottom:1rem}.editor-actions{align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.editor-actions .button:disabled{opacity:.55;cursor:not-allowed}.save-actions{flex-wrap:wrap;margin-top:1.5rem;margin-bottom:0}.editor-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1.25rem;display:grid}footer{border-top:1px solid var(--border);text-align:center;letter-spacing:.05em;color:var(--text-muted);margin-top:4rem;padding-top:1.5rem;font-size:.85rem}@media (width<=900px){.editor-layout{grid-template-columns:1fr}.panel.preview{position:static}}@media (width<=540px){.header-inner{flex-direction:column;gap:.75rem}.set-row{flex-direction:column;align-items:stretch}.set-edit{text-align:center}}
