@import"https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&family=Space+Mono:wght@400;700&display=swap";:root{--k4-bg: #f2ebdd;--k4-bg2: #fbf7f0;--k4-sunken: #eae2d2;--k4-card: #ffffff;--k4-card2: #fbf8f2;--k4-bd: #eae0cf;--k4-bd2: #ded2bd;--k4-tx: #221f19;--k4-dim: #8b8478;--k4-mut: #b2a99a;--k4-pri: #ec5e2a;--k4-pri-soft: #fbe6da;--k4-pri-tx: #c04a1c;--k4-pri-grad: linear-gradient(135deg, #ec5e2a, #c9952b);--k4-grn: #1c7a52;--k4-grn-soft: #e0f0e7;--k4-grn-tx: #156540;--k4-red: #cf3d3d;--k4-red-soft: #fae4e1;--k4-amb: #d2880c;--k4-amb-soft: #f8edcf;--k4-blu: #2a62c6;--k4-blu-soft: #e2ebfa;--k4-on-color: #ffffff;--k4-font-display: "Sora", system-ui, sans-serif;--k4-font-body: "Sora", system-ui, sans-serif;--k4-font-label: "Space Grotesk", "Sora", sans-serif;--k4-font-mono: "Space Mono", ui-monospace, monospace;--k4-text-display: 30px;--k4-text-h1: 19px;--k4-text-h2: 18px;--k4-text-h3: 14.5px;--k4-text-body: 13px;--k4-text-sm: 12px;--k4-text-xs: 11px;--k4-text-eyebrow: 10px;--k4-track-tight: -.02em;--k4-track-eyebrow: .08em;--k4-radius-chip: 9px;--k4-radius-btn: 11px;--k4-radius-card-sm: 14px;--k4-radius-card: 16px;--k4-radius-sheet: 22px;--k4-radius-pill: 999px;--k4-shadow: 0 16px 40px -18px rgba(70, 48, 18, .3);--k4-shadow-sm: 0 2px 8px -4px rgba(70, 48, 18, .2);--k4-shadow-glow-pri: 0 6px 16px -8px var(--k4-pri);--k4-shadow-glow-grn: 0 6px 16px -8px var(--k4-grn)}*{box-sizing:border-box;margin:0}:root{color-scheme:dark;--k4-bg: #15120D;--k4-bg2: #1B1610;--k4-sunken: #100D09;--k4-card: #241E16;--k4-card2: #1E1810;--k4-bd: #352D22;--k4-bd2: #43392C;--k4-tx: #F4EFE6;--k4-dim: #A89E8D;--k4-mut: #6E665A;--k4-pri: #F2682C;--k4-pri-soft: #3A2113;--k4-pri-tx: #F2A05C;--k4-grn: #4FBF7F;--k4-grn-soft: #16301F;--k4-grn-tx: #6FD699;--k4-red: #E8736B;--k4-red-soft: #3A1F1C;--k4-amb: #E6A93C;--k4-amb-soft: #352818;--k4-blu: #6AA0F5;--k4-blu-soft: #1B2740;--k4-shadow: 0 18px 46px -16px rgba(0, 0, 0, .7);--k4-shadow-sm: 0 4px 14px -6px rgba(0, 0, 0, .55)}body{font-family:var(--k4-font-body);background:var(--k4-bg);color:var(--k4-tx)}h1,h2{font-family:var(--k4-font-display);letter-spacing:var(--k4-track-tight);font-weight:800}.center-screen{min-height:100vh;display:grid;place-items:center}.panel{display:flex;flex-direction:column;gap:12px;width:min(420px,92vw);padding:28px;background:var(--k4-card);border:1px solid var(--k4-bd);border-radius:var(--k4-radius-card);box-shadow:var(--k4-shadow)}.panel h1{font-size:1.4rem}input{font-size:1.2rem;padding:12px;border-radius:var(--k4-radius-btn);border:1px solid var(--k4-bd2);background:var(--k4-sunken);color:inherit;font-family:var(--k4-font-mono)}input:focus{outline:none;border-color:var(--k4-pri)}button{font-size:1.2rem;padding:14px;border:1px solid transparent;border-radius:var(--k4-radius-btn);background:var(--k4-pri);color:#fff;font-family:var(--k4-font-body);font-weight:700;cursor:pointer;box-shadow:var(--k4-shadow-glow-pri);transition:filter .15s ease}button:hover:not(:disabled){filter:brightness(1.06)}button:disabled{opacity:.5}button.ghost{background:transparent;border:1px solid var(--k4-bd2);color:var(--k4-dim);font-size:.9rem;padding:8px 12px;box-shadow:none}.error{color:var(--k4-red)}.board{min-height:100vh;display:flex;flex-direction:column}.board header{display:flex;align-items:center;gap:16px;padding:12px 20px;background:var(--k4-bg2);border-bottom:1px solid var(--k4-bd)}.board header h1{font-size:1.3rem;margin-right:auto}.dot:before{content:"● "}.dot.on{color:var(--k4-grn)}.dot.off{color:var(--k4-amb)}.board main{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:14px;align-items:start}.board section{background:var(--k4-bg2);border:1px solid var(--k4-bd);border-radius:var(--k4-radius-card);padding:12px;display:flex;flex-direction:column;gap:12px;min-height:70vh}.board h2{font-family:var(--k4-font-label);font-size:1rem;text-transform:uppercase;letter-spacing:var(--k4-track-eyebrow);color:var(--k4-mut)}.board h2 em{font-style:normal;float:right;font-family:var(--k4-font-mono);color:var(--k4-tx)}.card{background:var(--k4-card);border:1px solid var(--k4-bd);border-radius:var(--k4-radius-card-sm);padding:14px;display:flex;flex-direction:column;gap:10px;font-size:1.15rem;border-left:6px solid transparent;box-shadow:var(--k4-shadow-sm)}.card.urgency-green{border-left-color:var(--k4-grn)}.card.urgency-green .age{color:var(--k4-grn)}.card.urgency-yellow{border-left-color:var(--k4-amb)}.card.urgency-red{border-left-color:var(--k4-red);background:var(--k4-red-soft)}.card.urgency-red .age{color:var(--k4-red);font-weight:700}.card-head{display:flex;align-items:center;gap:10px}.card-head strong{font-family:var(--k4-font-mono);font-size:1.3rem}.badge{font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:var(--k4-radius-pill);background:var(--k4-blu-soft);color:var(--k4-blu);text-transform:uppercase;letter-spacing:.02em}.age{margin-left:auto;font-family:var(--k4-font-mono);color:var(--k4-amb);font-variant-numeric:tabular-nums}.card ul{list-style:none;display:flex;flex-direction:column;gap:4px}.card small{color:var(--k4-dim)}.notes{color:var(--k4-amb);font-size:1rem}.empty{color:var(--k4-mut);text-align:center}select.ghost{background:none;border:1px solid var(--k4-mut);border-radius:8px;color:inherit;font:inherit;padding:6px 10px}.item-status{background:none;border:1px solid var(--k4-mut);border-radius:6px;color:inherit;cursor:pointer;font-size:1rem;line-height:1;margin-right:6px;min-width:34px;padding:4px 6px}.item-in_progress .item-status{border-color:var(--k4-amb);color:var(--k4-amb)}.item-done .item-status{border-color:var(--k4-grn);color:var(--k4-grn)}.item-done{opacity:.65;text-decoration:line-through}.station{border:1px solid var(--k4-mut);border-radius:6px;margin-left:6px;padding:1px 6px;text-transform:uppercase}.eta{color:var(--k4-dim);font-variant-numeric:tabular-nums}.eta.late{color:var(--k4-red);font-weight:700}.card.all-done{outline:2px solid var(--k4-grn)}.all-done-hint{color:var(--k4-grn);font-weight:600}.store-badge{margin-left:10px;padding:2px 10px;border-radius:999px;background:var(--k4-card, #222);border:1px solid var(--k4-bd, #444);font-size:.5em;vertical-align:middle}
