:root{color-scheme:light;--bg: #f4efe6;--ink: #2a2723;--muted: #6a6258;--accent: #b35a3a;--accent-2: #2f6b7a;--card: #fff7eb;--surface: #fff;--border: #e2d6c4;--shadow: 0 20px 60px rgba(44, 42, 38, .12);--on-accent: #fff;--hero-bg: linear-gradient(135deg, #fff4e5, #f2e3d1);--page-bg: radial-gradient(circle at 15% 20%, rgba(179, 90, 58, .18), transparent 50%), radial-gradient(circle at 80% 10%, rgba(47, 107, 122, .2), transparent 45%), radial-gradient(circle at 30% 80%, rgba(207, 173, 133, .2), transparent 50%), linear-gradient(180deg, #f7f2e8 0%, #efe5d7 100%);--callout-bg: rgba(179, 90, 58, .08);--assist-bg: rgba(47, 107, 122, .08);--assist-border: rgba(47, 107, 122, .2);--green-bg: rgba(46, 125, 50, .08);--green-border: rgba(46, 125, 50, .3);--yellow-bg: rgba(245, 158, 11, .08);--yellow-border: rgba(245, 158, 11, .3);--red-bg: rgba(220, 38, 38, .08);--red-border: rgba(220, 38, 38, .3);--radius: 20px;--radius-sm: 12px;--pad-lg: 36px;--font-title: "Fraunces", "Iowan Old Style", "Georgia", serif;--font-body: "IBM Plex Sans", "Avenir Next", "Helvetica Neue", sans-serif}[data-theme=dark]{color-scheme:dark;--bg: #14110f;--ink: #f4eadf;--muted: #c4b7a8;--accent: #e18a66;--accent-2: #7fc4d3;--card: #211b17;--surface: #171310;--border: #3b3028;--shadow: 0 20px 60px rgba(0, 0, 0, .35);--on-accent: #1d120d;--hero-bg: linear-gradient(135deg, #2a211b, #1b1715);--page-bg: radial-gradient(circle at 15% 20%, rgba(225, 138, 102, .18), transparent 50%), radial-gradient(circle at 80% 10%, rgba(127, 196, 211, .16), transparent 45%), radial-gradient(circle at 30% 80%, rgba(207, 173, 133, .1), transparent 50%), linear-gradient(180deg, #15110f 0%, #0f0d0c 100%);--callout-bg: rgba(225, 138, 102, .12);--assist-bg: rgba(127, 196, 211, .1);--assist-border: rgba(127, 196, 211, .24);--green-bg: rgba(74, 222, 128, .1);--green-border: rgba(74, 222, 128, .28);--yellow-bg: rgba(251, 191, 36, .12);--yellow-border: rgba(251, 191, 36, .28);--red-bg: rgba(248, 113, 113, .12);--red-border: rgba(248, 113, 113, .28)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--bg);min-height:100vh}button,input{font:inherit}.bg{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--page-bg);z-index:-1}.app{max-width:980px;margin:0 auto;padding:48px 20px 64px;display:grid;gap:24px}.hero{padding:36px;border-radius:var(--radius);background:var(--hero-bg);box-shadow:var(--shadow);border:1px solid var(--border)}.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.theme-toggle{flex:0 0 auto}h1,h2{font-family:var(--font-title)}h1{font-size:clamp(28px,4vw,44px);margin:0 0 12px}.lede,.rules p,.muted,.step-desc,.footer{color:var(--muted)}.lede{font-size:18px;max-width:700px}.hero-actions,.legend,.row-actions,.filter-list,.filters-header{display:flex;gap:12px;flex-wrap:wrap}.hero-actions{margin-top:20px}.card{background:var(--card);border-radius:var(--radius);padding:var(--pad-lg);border:1px solid var(--border);box-shadow:var(--shadow)}.legend{margin:12px 0 4px}.filters-header{align-items:flex-start;justify-content:space-between;margin-bottom:16px}.filters-count{color:var(--muted);font-size:14px;white-space:nowrap}.filter-list{gap:10px}.chip{padding:6px 10px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);font-size:13px}.chip-button{cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.chip-button.active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip.green{border-color:var(--green-border);background:var(--green-bg)}.chip.yellow{border-color:var(--yellow-border);background:var(--yellow-bg)}.chip.red{border-color:var(--red-border);background:var(--red-bg)}.callout,.prompt,.option,.assist{border-radius:var(--radius-sm)}.callout{margin-top:16px;padding:16px;border:1px dashed var(--accent);background:var(--callout-bg);display:grid;gap:6px}.stage{min-height:280px}.step-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.step-badge{background:var(--accent);color:#fff;padding:6px 12px;border-radius:999px;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.prompt{margin:18px 0 16px;padding:16px;background:var(--surface);border:1px solid var(--border);display:grid;gap:10px}.scenario,.target,.score{margin:0}.inputs,.options,.input-row{display:grid;gap:12px}.input-row label{font-weight:600}.option{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border);background:var(--surface)}.assist{margin-top:14px;padding:12px 14px;background:var(--assist-bg);border:1px solid var(--assist-border);font-size:14px}.row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:18px}.row-compact{margin-top:0;justify-content:flex-end}.toggle{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--muted)}.toggle input{accent-color:var(--accent-2)}.btn{border:1px solid var(--border);background:transparent;padding:10px 18px;border-radius:12px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 25px #2c2a261f}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn.primary{background:var(--accent);color:var(--on-accent);border-color:transparent}.btn.ghost{color:var(--accent-2);border-color:#2f6b7a66}.empty-state{display:grid;gap:8px}.empty-state h2{margin:0}.footer{text-align:center;font-size:14px;padding-bottom:20px}@media (max-width: 720px){.hero,.card{padding:24px}.hero-top,.row,.row-actions{flex-direction:column;align-items:stretch}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.step{animation:fadeInUp .35s ease both}
