:root{--ground:#f3f6f6;--surface:#fff;--raised:#f4f6f8;--active:#ebedee;--border:#e8eaec;--control:#cdced1;--text:#131416;--muted:#5d5f60;--accent:#1b6c80;--twin-a:#1b6c80;--twin-b:#a86f0c;--positive:#1e7b4f;--negative:#c4242a;--pill-positive-bg:#dcfae5;--pill-positive-ink:#04250e;--pill-negative-bg:#ffedea;--pill-negative-ink:#831c1e;--pill-neutral-bg:#ebedee;--pill-neutral-ink:#353736;--radius-card:8px;--radius-control:6px;--radius-sheet:16px;--gap:24px;--fs-title:22px;--fs-section:16px;--fs-kpi:28px;--fs-body:14px;--fs-small:12px;--ease:cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html,body{margin:0}body{font:400 var(--fs-body)/1.5 "IBM Plex Sans", Inter, system-ui, sans-serif;color:var(--text);background:var(--ground);grid-template:"top top"48px"side sheet"1fr"side foot"/228px 1fr;min-height:100vh;display:grid}h1,h2{margin:0;font-weight:600}h2{font-size:var(--fs-section)}.mono,code{font-family:IBM Plex Mono,ui-monospace,monospace}.muted{color:var(--muted)}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.topbar{grid-area:top;align-items:center;gap:24px;padding:0 16px;display:flex}.brand{color:var(--text);align-items:center;gap:8px;width:196px;font-size:16px;font-weight:600;text-decoration:none;display:flex}.level-title{align-items:center;gap:8px;font-size:16px;display:flex}.topbar-right{align-items:center;gap:12px;margin-left:auto;display:flex}.name-field{color:var(--muted);align-items:center;gap:8px;display:flex}.name-field input{font:inherit;color:var(--text);border:1px solid var(--control);border-radius:var(--radius-control);background:var(--surface);width:140px;height:32px;padding:0 10px}.pill{font-size:var(--fs-small);background:var(--pill-neutral-bg);color:var(--pill-neutral-ink);border-radius:999px;padding:2px 8px;font-weight:500}.pill.ok{background:var(--pill-positive-bg);color:var(--pill-positive-ink)}.pill.bad{background:var(--pill-negative-bg);color:var(--pill-negative-ink)}.btn{font:500 var(--fs-body) "IBM Plex Sans", system-ui, sans-serif;border-radius:var(--radius-control);background:var(--text);color:#fff;cursor:pointer;height:32px;transition:transform .12s var(--ease), background .12s;border:0;padding:0 14px}.btn:hover{background:#2a2d31}.btn:active{transform:scale(.97)}.btn.ghost{background:var(--active);color:var(--text)}.btn.ghost:hover{background:#e0e2e4}.btn.danger{background:var(--negative)}.btn:disabled{opacity:.5;cursor:default}.sidebar{grid-area:side;padding:8px 12px 24px 16px;overflow-y:auto}.sidebar h2{font-size:var(--fs-small);color:var(--muted);margin:16px 8px 6px;font-weight:600}.level-list{margin:0;padding:0;list-style:none}.level-list button{all:unset;box-sizing:border-box;border-radius:var(--radius-control);cursor:pointer;width:100%;height:36px;color:var(--text);align-items:center;gap:10px;padding:0 8px;display:flex}.level-list button:hover{background:var(--active)}.level-list button[aria-current=true]{background:var(--active);font-weight:600}.level-list .n{width:18px;color:var(--muted);font-variant-numeric:tabular-nums}.level-list .t{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.level-list .s{font-size:var(--fs-small);color:var(--muted);font-variant-numeric:tabular-nums}.level-list .s.done{color:var(--positive);font-weight:500}.level-list .empty{color:var(--muted);font-size:var(--fs-small);padding:6px 8px}.sheet{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sheet);grid-area:sheet;grid-template-columns:1fr 360px;min-height:0;margin:0 8px 0 0;display:grid;overflow:hidden}.board-area{padding:var(--gap);flex-direction:column;gap:16px;min-width:0;display:flex}.board-well{background:var(--raised);touch-action:none;border-radius:12px;flex:1;place-items:center;min-height:360px;display:grid}#board{display:block}.board-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.rule-line{flex-wrap:wrap;align-items:center;gap:4px 16px;margin:0;font-size:15px;display:flex}.rule-line>span{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.rule-line .goal{color:var(--muted);white-space:normal}.dot{border-radius:4px;width:12px;height:12px;display:inline-block}.dot.a{background:var(--twin-a)}.dot.b{background:var(--twin-b)}.board-actions{gap:8px;display:flex}.side{border-left:1px solid var(--border);padding:var(--gap);gap:var(--gap);flex-direction:column;display:flex;overflow-y:auto}.stats{grid-template-columns:repeat(3,1fr);gap:12px;margin:10px 0 0;display:grid}.stats dt{font-size:var(--fs-small);color:var(--muted)}.stats dd{font-size:var(--fs-kpi);font-variant-numeric:tabular-nums;margin:0;line-height:1.2}.receipt{border-radius:var(--radius-card);background:var(--raised);margin-top:10px;padding:14px 16px;transition:background .2s}.receipt p{margin:0}.receipt.idle{color:var(--muted)}.receipt.pending{background:var(--raised)}.receipt.ok{background:#e9f6ef}.receipt.bad{background:#fdeceb}.receipt .head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:15px;font-weight:600;display:flex}.receipt dl{grid-template-columns:auto 1fr;gap:4px 12px;margin:0;font-size:13px;display:grid}.receipt dt{color:var(--muted)}.receipt dd{text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.receipt .log{color:var(--pill-negative-ink);white-space:pre-wrap;word-break:break-word;margin-top:8px;font-size:12px}.stamp{animation:stamp .42s var(--ease)}@keyframes stamp{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:none}}.receipt .next{width:100%;margin-top:12px}.tamper{margin-top:12px}.tamper summary{cursor:pointer;color:var(--muted);font-size:13px}.tamper p{color:var(--muted);margin:8px 0;font-size:13px}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:10px}th{text-align:left;font-size:var(--fs-small);color:var(--muted);padding:0 0 6px;font-weight:500}td{border-top:1px solid var(--border);height:40px;padding:0}td.num,th.num{text-align:right;padding-right:16px}td a{font-size:12px}td.me{font-weight:600}#btn-watch{margin-top:12px}.foot{font-size:var(--fs-small);color:var(--muted);grid-area:foot;padding:10px 8px 10px 0}.foot p{margin:0}dialog{border-radius:var(--radius-sheet);border:0;width:min(920px,96vw);padding:0;box-shadow:0 24px 64px #0000002e}dialog::backdrop{background:#13141666}.editor header,.editor footer{justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;display:flex}.editor footer p{margin:0}.editor-body{grid-template-columns:200px 1fr;gap:24px;padding:0 24px;display:grid}.palette{flex-direction:column;gap:6px;display:flex}.palette button{font:inherit;text-align:left;border-radius:var(--radius-control);background:var(--raised);cursor:pointer;border:0;height:34px;padding:0 10px}.palette button.sel{background:var(--text);color:#fff}.palette label{color:var(--muted);justify-content:space-between;align-items:center;gap:8px;margin-top:4px;display:flex}.palette input{font:inherit;border:1px solid var(--control);border-radius:var(--radius-control);width:64px;height:30px;padding:0 8px}.palette input#ed-name{width:120px}.ed-grid-wrap{background:var(--raised);border-radius:12px;place-items:center;min-height:420px;padding:16px;display:grid}.ed-grid{gap:3px;display:grid}.ed-grid button{cursor:pointer;color:#fff;background:#fff;border:0;border-radius:8px;width:48px;height:48px;font:600 14px IBM Plex Sans,sans-serif}.ed-grid button.c1{background:#2a2d31}.ed-grid button{position:relative}.ed-grid button.c4:after{content:"";background:#131416;border-radius:50%;position:absolute;inset:12px}.ed-grid button.c2{outline:4px solid var(--twin-a);outline-offset:-4px;background:#d6e8ec}.ed-grid button.c3{outline:4px solid var(--twin-b);outline-offset:-4px;background:#f3e6cf}.ed-grid button.ta{background:var(--twin-a)}.ed-grid button.tb{background:var(--twin-b)}@media (width<=900px){body{grid-template:"top"48px"side""sheet""foot"/1fr;min-height:0}.brand span,.name-field .lbl,.sidebar h2{display:none}.level-list{gap:4px;padding-bottom:4px;display:flex;overflow-x:auto}.level-list li{flex:none}.level-list button{background:var(--surface);width:auto;padding:0 12px}.level-list .s{display:none}#community-list{margin-top:6px}.topbar{gap:12px}.level-title .pill{display:none}.brand{width:auto}.level-title{font-size:14px}.sheet{border-left:0;border-right:0;border-radius:0;grid-template-columns:1fr;margin:0}.side{border-left:0;border-top:1px solid var(--border)}.board-well{flex:none;height:min(78vw,360px);min-height:0}.board-area,.side{padding:16px}.foot{padding:12px 16px 24px}.sidebar{padding:8px 16px}.name-field input{width:104px}.topbar .btn{padding:0 10px}.editor-body{grid-template-columns:1fr}.ed-grid button{width:38px;height:38px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
