:root{--ink:#120e0a;--paper:#1c1610;--paper-2:#261e16;--text:#f4ead8;--muted:#9a8b74;--line:#3a2f22;--gold:#e0b04a;--gold-dim:#e0b04a29;--cream:#f0e2c4;--danger:#e07070;--done:#7d8f6e;--focus-ring:#e0b04a61;color:var(--text);background:var(--ink);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Segoe UI,Avenir Next,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{background:radial-gradient(720px 380px at 6% -8%, #e0b04a24, transparent 55%), radial-gradient(640px 360px at 100% 0%, #f0e2c414, transparent 50%), var(--ink);min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}button,input,textarea{font-family:inherit}button{cursor:pointer}input,textarea{color:var(--text)}.app{width:min(760px,100% - 32px);margin:0 auto;padding:28px 0 72px}.top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.brand{align-items:center;gap:12px;display:flex}.mark{flex:none;width:48px;height:48px}h1{letter-spacing:-.03em;margin:0;font-family:Palatino,Iowan Old Style,Times New Roman,serif;font-size:1.9rem;font-weight:650}.tag{color:var(--muted);margin:2px 0 0;font-size:.98rem}.tools{flex-wrap:wrap;gap:8px;display:flex}.ghost,.tiny,.solid,.chip{color:var(--text);border:1px solid var(--line);background:0 0;border-radius:999px;padding:7px 14px;font-size:.86rem}.ghost:hover,.tiny:hover,.chip:hover{background:var(--paper)}.ghost.danger,.tiny.danger{color:var(--danger)}.ghost.warn,.tiny.warn{color:var(--danger);background:#e070701f;border-color:#e0707073}.ghost:disabled,.tiny:disabled,.solid:disabled,.chip:disabled{opacity:.4;cursor:not-allowed}.solid{background:var(--gold);border-color:var(--gold);color:#1a140c;font-weight:650}.solid:hover:not(:disabled){filter:brightness(1.05)}.blurb{color:var(--muted);max-width:44rem;margin:14px 0 0;font-size:.92rem}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin:0 0 8px;font-size:.72rem}.focus-slot{background:linear-gradient(180deg, #e0b04a14, transparent 40%), var(--paper);border:1px solid var(--line);box-shadow:0 0 0 1px #e0b04a14, 12px 16px 0 -6px var(--paper-2);border-radius:18px;margin-top:22px;padding:22px 22px 20px}.focus-title{letter-spacing:-.03em;margin:0 0 8px;font-family:Palatino,Iowan Old Style,Times New Roman,serif;font-size:clamp(1.6rem,4vw,2.15rem);font-weight:600;line-height:1.2}.note-btn,.note-edit{text-align:left;width:100%;color:var(--muted);background:0 0;border:none;padding:0;font-size:.95rem;display:block}.note-btn{margin-bottom:10px}.note-edit{border:1px solid var(--line);background:var(--paper-2);resize:vertical;border-radius:10px;margin-bottom:10px;padding:8px 10px}.note-edit:focus,input:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.unlocks{color:var(--cream);margin:0 0 16px;font-size:.92rem}.unlocks.muted{color:var(--muted)}.focus-actions{flex-wrap:wrap;gap:8px;display:flex}.empty-focus{padding:8px 0 4px}.empty-title{margin:0 0 4px;font-size:1.2rem}.empty-hint{color:var(--muted);margin:0}.composer{background:var(--paper);border:1px solid var(--line);border-radius:16px;gap:10px;margin-top:22px;padding:16px;display:grid}.composer-row{gap:8px;display:flex}input[type=text]{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;flex:1;min-width:0;padding:9px 12px;font-size:1rem}.deps{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.deps-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-right:4px;font-size:.75rem}.chip.on{background:var(--gold-dim);border-color:var(--gold);color:var(--cream)}.chip.mini{padding:3px 8px;font-size:.74rem}.graph{background:var(--paper);border:1px solid var(--line);border-radius:16px;margin-top:22px;padding:14px 16px}.chain-list,.lane-list{margin:0;padding:0;list-style:none}.chain-row{border-top:1px solid #3a2f22b3;flex-wrap:wrap;align-items:baseline;gap:8px;padding:7px 0;font-size:.92rem;display:flex}.chain-row:first-child{border-top:none}.dot{background:var(--muted);border-radius:2px;flex:none;width:8px;height:8px}.chain-row.focus .dot{background:var(--gold)}.chain-row.inbox .dot{background:var(--cream)}.chain-row.blocked .dot{background:#6a5c4a}.chain-row.done .dot,.chain-row.done .chain-title{opacity:.5}.chain-title{font-weight:600}.chain-status{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem}.chain-next{color:var(--gold);font-size:.86rem}.lane{margin-top:22px}.lane h3{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:.78rem}.count{color:var(--cream)}.lane-empty{color:var(--muted);margin:0;font-size:.92rem}.row{background:var(--paper);border:1px solid var(--line);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;padding:12px 14px;display:flex}.row.done{opacity:.72}.row-title{margin:0;font-weight:600}.row.done .row-title{text-decoration:line-through}.row-note,.row-wait{color:var(--muted);margin:4px 0 0;font-size:.86rem}.row-deps{flex-wrap:wrap;gap:5px;margin-top:8px;display:flex}.tiny{flex:none;padding:5px 10px}@media (width<=560px){.composer-row{flex-direction:column}.focus-slot{box-shadow:8px 10px 0 -5px var(--paper-2)}}
