:root{--bg: #f7f4ef;--panel: #fffdfa;--panel-2: #f2ede4;--ink: #241f1a;--ink-2: #5d554b;--ink-3: #8d8377;--line: #e3dbcd;--accent: #b4652a;--accent-soft: #f0dcc5;--good: #3f7d4f;--warn: #b8862a;--bad: #a8452f;--radius: 10px;--shadow: 0 1px 2px rgba(60, 45, 25, .06), 0 8px 24px -16px rgba(60, 45, 25, .25);--serif: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--sans: ui-rounded, "SF Pro Rounded", -apple-system, "Segoe UI", Inter, system-ui, sans-serif;--mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.5 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;margin:0}h1{font-size:20px}h2{font-size:16px}h3{font-size:13px;font-family:var(--sans);font-weight:650}button,input,select,textarea{font:inherit;color:inherit}.shell{display:grid;grid-template-columns:380px minmax(0,1fr);min-height:100vh}.rail{border-right:1px solid var(--line);background:var(--panel);padding:18px 18px 60px;display:flex;flex-direction:column;gap:18px;max-height:100vh;overflow-y:auto;position:sticky;top:0}.brand{display:flex;align-items:baseline;gap:8px}.brand .dot{width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f0c463,var(--accent));box-shadow:0 0 0 3px var(--accent-soft);flex:none}.brand small{color:var(--ink-3);font-size:11px;display:block}.main{padding:22px 26px 80px;min-width:0}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}.card+.card{margin-top:16px}.card>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.card>header p{margin:2px 0 0;color:var(--ink-3);font-size:11.5px}.field{display:block;margin-bottom:10px}.field>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin-bottom:4px}.field input[type=text],.field input[type=number],.field input[type=url],.field select,.field textarea{width:100%;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:#fff}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.row{display:flex;gap:8px}.row>*{flex:1;min-width:0}button.primary{width:100%;padding:10px 12px;border:0;border-radius:8px;background:var(--accent);color:#fff;font-weight:650;cursor:pointer}button.primary:hover{background:#9c5522}button.primary:disabled{background:var(--ink-3);cursor:progress}button.ghost{padding:6px 10px;border:1px solid var(--line);border-radius:7px;background:var(--panel-2);cursor:pointer}button.ghost:hover{border-color:var(--accent);color:var(--accent)}button.ghost[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:#7d4318}.chips{display:flex;flex-wrap:wrap;gap:5px}.chip{padding:3px 8px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:11.5px;cursor:pointer}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:#d8a677;color:#7d4318;font-weight:600}.slider{display:grid;grid-template-columns:1fr 42px;gap:8px;align-items:center;margin-bottom:7px}.slider label{font-size:11.5px;color:var(--ink-2)}.slider input[type=range]{width:100%;accent-color:var(--accent)}.slider output{font:11.5px var(--mono);color:var(--ink-3);text-align:right}.note{font-size:11.5px;color:var(--ink-2);background:var(--panel-2);border-left:2px solid var(--warn);padding:7px 9px;border-radius:0 6px 6px 0}.note.error{border-color:var(--bad);color:var(--bad)}.muted{color:var(--ink-3)}.mono{font-family:var(--mono)}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}.metric{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.metric .k{font-size:10.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3)}.metric .v{font:600 24px/1.2 var(--serif);margin-top:3px;font-variant-numeric:tabular-nums}.metric .s{font-size:11px;color:var(--ink-3);margin-top:2px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th{text-align:left;font-size:10.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);font-weight:600;padding:5px 8px;border-bottom:1px solid var(--line)}td{padding:6px 8px;border-bottom:1px solid #efe9df}tbody tr:hover{background:var(--panel-2)}td.num,th.num{text-align:right}.pill{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:600}.pill.up{background:#e4f0e5;color:var(--good)}.pill.down{background:#f7e3de;color:var(--bad)}.pill.flat{background:var(--panel-2);color:var(--ink-3)}.funnel-row{display:grid;grid-template-columns:190px minmax(0,1fr) 96px;gap:10px;align-items:center;padding:5px 0}.funnel-row .label{font-size:12px}.funnel-row .label small{display:block;color:var(--ink-3);font-size:10.5px}.bar{position:relative;height:22px;border-radius:5px;background:var(--panel-2);overflow:hidden}.bar .fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#d79a5a,var(--accent))}.bar .lost{position:absolute;inset:0 auto 0 0;background:repeating-linear-gradient(45deg,#eddcd4,#eddcd4 4px,#f6ebe6 4px 8px)}.bar span{position:absolute;right:6px;top:3px;font:11px var(--mono);color:#fff;mix-blend-mode:difference}.session{border:1px solid var(--line);border-radius:8px;padding:10px 12px;background:var(--panel)}.session+.session{margin-top:8px}.session .who{font-weight:650}.session .quote{font-family:var(--serif);font-size:14px;color:var(--ink);margin:6px 0}.session .steps{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.step-tag{font:10.5px var(--mono);padding:2px 6px;border-radius:5px;background:var(--panel-2);color:var(--ink-2)}.step-tag.pass{background:#e4f0e5;color:var(--good)}.step-tag.fail{background:#f7e3de;color:var(--bad)}.tabs{display:flex;gap:4px;margin-bottom:14px;flex-wrap:wrap}.tabs button{padding:6px 12px;border:1px solid transparent;border-radius:999px;background:none;cursor:pointer;color:var(--ink-2)}.tabs button[aria-selected=true]{background:var(--panel);border-color:var(--line);color:var(--ink);font-weight:650;box-shadow:var(--shadow)}.empty{text-align:center;padding:60px 20px;color:var(--ink-3)}.empty h2{color:var(--ink);margin-bottom:6px}.provenance{font-size:11px;color:var(--ink-3);margin-top:10px;line-height:1.6}@media(max-width:900px){.shell{grid-template-columns:1fr}.rail{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--line)}}
