:root{--ink:#100e0c;--paper:#1a1612;--paper-2:#231e18;--text:#f0e6d4;--muted:#9a8d78;--line:#3a3228;--gold:#e0b04a;--gold-dim:#e0b04a29;--leaf:#6ecf8a;--coral:#e88a5a;--danger:#e07070;--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(880px 420px at 88% -8%, #e0b04a1a, transparent 52%), radial-gradient(720px 360px at 6% 0%, #c4a57414, transparent 50%), var(--ink);min-width:320px;min-height:100vh;margin:0}#root{min-height:100vh}button,input{font-family:inherit}button{cursor:pointer}.app{width:min(860px,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{z-index:20;flex-wrap:wrap;gap:8px;display:flex;position:relative}.ghost,.tiny,.solid{color:var(--text);border:1px solid var(--line);background:0 0;border-radius:999px;padding:7px 14px;font-size:.86rem}.ghost:hover,.tiny: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{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)}.solid.leaf{background:var(--leaf);border-color:var(--leaf);color:#102014}.tiny{padding:4px 10px;font-size:.74rem}.blurb{color:var(--muted);max-width:52rem;margin:14px 0 0;font-size:.92rem}.empty{color:var(--muted);margin:0;font-size:.92rem}.notice{background:var(--gold-dim);color:var(--gold);border:1px solid #e0b04a66;border-radius:12px;margin:14px 0 0;padding:10px 14px;font-size:.92rem}.notice.ok{color:var(--leaf);background:#6ecf8a1a;border-color:#6ecf8a59}.kicker{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);margin:0 0 10px;font-size:.72rem}.counts{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.counts li{border:1px solid var(--line);background:var(--paper);color:var(--muted);border-radius:999px;padding:6px 12px;font-size:.82rem}.counts strong{font-variant-numeric:tabular-nums;color:var(--text);margin-right:4px}.counts .hot{color:var(--leaf);border-color:#6ecf8a47}.counts .now{color:var(--gold);border-color:#e0b04a66}.stage{background:var(--paper);border:1px solid var(--line);text-align:center;border-radius:22px;justify-items:center;gap:18px;margin-top:22px;padding:28px 22px 24px;display:grid}.stage.due{box-shadow:0 0 0 4px var(--gold-dim);border-color:#e0b04a8c}.clock-wrap{width:176px;height:176px;position:relative}.clock{width:176px;height:176px}.clock .track{fill:none;stroke:var(--paper-2);stroke-width:10px}.clock .fill{fill:none;stroke:var(--gold);stroke-width:10px;stroke-linecap:round}.clock.urgent .fill{stroke:var(--coral)}.clock-num{letter-spacing:-.04em;font-variant-numeric:tabular-nums;place-items:center;font-family:Palatino,Iowan Old Style,Times New Roman,serif;font-size:2.6rem;font-weight:650;display:grid;position:absolute;inset:0}.clock-num.urgent{color:var(--coral)}.move-name{letter-spacing:-.03em;margin:0;font-family:Palatino,Iowan Old Style,Times New Roman,serif;font-size:clamp(1.4rem,3.2vw,2.1rem);font-weight:650}.move-reps{color:var(--gold);margin:0;font-size:1.05rem;font-weight:650}.hint{color:var(--muted);max-width:28rem;margin:0;font-size:.92rem}.banner{background:#e0b04a1a;border:1px solid #e0b04a8c;border-radius:16px;width:min(560px,100%);padding:16px 18px;animation:1.6s ease-in-out infinite pulse}.banner h2{letter-spacing:-.02em;margin:0;font-size:1.35rem}.banner p{color:var(--gold);margin:4px 0 0;font-size:1.02rem}@keyframes pulse{0%,to{box-shadow:0 0 #e0b04a2e}50%{box-shadow:0 0 0 8px #e0b04a00}}.actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.toggles{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.toggle{border:1px solid var(--line);background:var(--paper-2);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:6px 12px;font-size:.84rem;display:inline-flex}.toggle input{accent-color:var(--gold)}.section{margin-top:28px}.list{gap:10px;display:grid}.card{background:var(--paper);border:1px solid var(--line);border-radius:16px;grid-template-columns:1fr auto;align-items:center;gap:12px 16px;padding:14px 16px;display:grid}.card.next{background:#e0b04a0f;border-color:#e0b04a73}.card h2{margin:0;font-size:1.02rem;font-weight:650}.card .meta{color:var(--muted);margin:4px 0 0;font-size:.84rem}.reps{font-variant-numeric:tabular-nums;color:var(--gold);font-size:.92rem;font-weight:650}.badge{letter-spacing:.1em;text-transform:uppercase;color:var(--gold);border:1px solid #e0b04a66;border-radius:999px;padding:2px 8px;font-size:.68rem}.pick-row{background:var(--paper);border:1px solid var(--line);border-radius:16px;grid-template-columns:1fr auto;align-items:start;gap:10px 16px;padding:14px 16px;display:grid}.pick-row h3{margin:0;font-size:.98rem;font-weight:600}.pick-meta{color:var(--muted);flex-wrap:wrap;gap:10px;margin:4px 0 0;font-size:.84rem;display:flex}.choice{font-weight:650}.choice.done{color:var(--leaf)}.choice.skip{color:var(--muted);font-style:italic;font-weight:500}.when{font-variant-numeric:tabular-nums}.foot{color:var(--muted);margin-top:22px;font-size:.8rem}button:focus,input:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--focus-ring);outline:none}@media (width<=560px){.card,.pick-row{grid-template-columns:1fr}.clock-wrap,.clock{width:148px;height:148px}.clock-num{font-size:2.2rem}}.card-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.empty-bar{width:100%;min-height:56px;color:var(--danger);cursor:pointer;z-index:50;background:#e0707029;border:1px solid #e0707073;border-radius:12px;margin:14px 0 0;font-size:1.05rem;font-weight:650;display:block;position:relative}.empty-bar.sample{color:var(--gold);background:#e0b04a24;border-color:#e0b04a73}.card.out{background:#e88a5a0f;border-color:#e88a5a66}.card-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.card-head h2{margin:0;font-size:1.08rem;font-weight:650}.badge{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.68rem}.badge.code{color:var(--gold);border-color:#e0b04a66}.badge.in{color:var(--leaf);border-color:#6ecf8a59}.badge.out{color:var(--coral);border-color:#e88a5a66}.meta{color:var(--muted);flex-wrap:wrap;gap:12px;margin:6px 0 0;font-size:.84rem;display:flex}.composer{background:var(--paper);border:1px solid var(--line);border-radius:16px;margin-top:18px;padding:16px}.composer-grid{grid-template-columns:1.2fr 1fr 1fr auto;align-items:end;gap:8px;display:grid}.composer-grid label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);gap:4px;font-size:.72rem;display:grid}input[type=text]{background:var(--paper-2);border:1px solid var(--line);width:100%;min-width:0;color:var(--text);border-radius:12px;padding:9px 12px;font-size:1rem}.hint{color:var(--muted);margin:10px 0 0;font-size:.84rem}.draft{gap:8px;max-width:28rem;margin-top:12px;display:grid}.draft label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);gap:4px;font-size:.72rem;display:grid}.blurb code{color:var(--gold);font-size:.86em}.tiny.solid{padding:5px 12px}.qr-card-wrap{z-index:80;background:#080604b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.qr-card{color:#16110c;text-align:center;background:#f4ead6;border-radius:20px;justify-items:center;gap:10px;width:min(420px,100%);padding:22px 20px 20px;display:grid}.qr-card .kicker{color:#8a7040;margin:0}.qr-card h2{color:#16110c;margin:0;font-family:Palatino,Iowan Old Style,Times New Roman,serif;font-size:1.35rem}.qr-card .hint{color:#5c4e3a}.qr-card .ghost{color:#16110c;border-color:#c4b59a}.qr-frame{background:#fff;border-radius:8px;width:min(280px,72vw);padding:10px}.qr-frame svg{width:100%;height:auto;display:block}.qr-payload{letter-spacing:.04em;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:1rem;font-weight:650}@media (width<=760px){.composer-grid{grid-template-columns:1fr 1fr}.composer-grid .solid{grid-column:1/-1}}
