:root{--bg: #f6f5f1;--surface: #ffffff;--surface-2: #efede7;--text: #1f1e1b;--muted: #74716a;--border: #e0ddd5;--accent: #2f6fdb;--accent-text: #ffffff;--danger: #c43d3a;--warn: #b7791f;--warn-bg: #fdf4e3;--ok: #2f8f6b;--radius: 10px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #17171a;--surface: #212125;--surface-2: #2a2a2f;--text: #ecebe8;--muted: #9b9890;--border: #36363c;--accent: #5b93f0;--danger: #e26a66;--warn: #e0a84a;--warn-bg: #3a2f1c;--ok: #4cbf92;color-scheme:dark}}:root[data-theme=dark]{--bg: #17171a;--surface: #212125;--surface-2: #2a2a2f;--text: #ecebe8;--muted: #9b9890;--border: #36363c;--accent: #5b93f0;--danger: #e26a66;--warn: #e0a84a;--warn-bg: #3a2f1c;--ok: #4cbf92;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 -apple-system,BlinkMacSystemFont,PingFang TC,Noto Sans TC,sans-serif}h1{font-size:24px;margin:0}h2{font-size:16px;margin:0 0 10px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}h3{font-size:15px;margin:0 0 8px}p{margin:4px 0}.muted{color:var(--muted)}small{font-size:12px}.bad{color:var(--danger);font-weight:600}.warn-text{color:var(--warn)}button,input,select{font:inherit;color:inherit}button{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:5px 12px;cursor:pointer}button:hover:not(:disabled){background:var(--surface-2)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button.primary:hover:not(:disabled){filter:brightness(1.08);background:var(--accent)}button.danger{color:var(--danger)}button.ghost{border-color:transparent;background:transparent;color:var(--muted)}input,select{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:5px 8px;min-width:0}input[type=number]{width:76px}input[type=color]{width:40px;height:32px;padding:2px}.nav{display:flex;gap:4px;align-items:center;padding:calc(10px + env(safe-area-inset-top)) calc(16px + env(safe-area-inset-right)) 10px calc(16px + env(safe-area-inset-left));background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.brand{font-weight:700;margin-right:12px}.nav a{color:var(--muted);text-decoration:none;padding:5px 10px;border-radius:8px;display:inline-flex;gap:6px;align-items:center}.nav a.active{color:var(--text);background:var(--surface-2);font-weight:600}.dot{background:var(--danger);color:#fff;border-radius:99px;font-size:11px;padding:0 6px}.page{max-width:820px;margin:0 auto;padding:20px calc(16px + env(safe-area-inset-right)) calc(60px + env(safe-area-inset-bottom)) calc(16px + env(safe-area-inset-left));display:flex;flex-direction:column;gap:16px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card,.zone,.prompts{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.zone-compounding{border-left:4px solid #2f8f6b}.zone-deadline{border-left:4px solid #d9534f}.zone-free{border-left:4px solid var(--accent)}.empty{font-size:14px}.badge{display:inline-block;font-size:12px;font-weight:600;padding:1px 8px;border-radius:99px;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}.tag{font-size:12px;color:var(--muted);border:1px solid var(--border);border-radius:99px;padding:0 6px}.capacity-text{margin-bottom:6px}.bar{height:8px;background:var(--surface-2);border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:var(--accent);transition:width .3s}.prompts{border-color:var(--warn)}.prompt{padding:8px 0;border-top:1px solid var(--border)}.prompt:first-of-type{border-top:none}.prompt.warn p b{color:var(--danger)}.actions{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.stack{display:flex;flex-direction:column;gap:8px;max-width:360px}.plan-card{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.zone h2+.plan-card,.zone h2+.empty{border-top:none}.plan-card.done{opacity:.65}.plan-main{flex:1 1 260px;min-width:0}.plan-side{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.title{font-weight:600}.meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px;color:var(--muted)}.inline{display:inline-flex;align-items:center;gap:4px;font-size:14px}.inline input{width:64px}.timer{font-variant-numeric:tabular-nums;color:var(--ok);font-weight:600}.err{width:100%;color:var(--danger);font-size:13px}.note{background:var(--warn-bg);padding:8px 12px;border-radius:8px}.free-picker{display:flex;gap:6px;flex-wrap:wrap;align-items:center;padding-top:10px}.free-picker select{flex:1 1 200px}.group{display:flex;flex-direction:column;gap:6px}.group>button.ghost{align-self:flex-start;padding-left:0}.task-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px}.task-row.paused,.task-row.closed{opacity:.6}.task-main{flex:1 1 300px;min-width:0}.form{display:flex;flex-direction:column;gap:14px}.form label,.row3 label,.week-grid label{display:flex;flex-direction:column;gap:4px}.form label>span,.row3 label>span,.week-grid label>span{font-size:13px;color:var(--muted)}.form input:not([type=checkbox]){width:100%}fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}legend{font-size:13px;color:var(--muted);padding:0;margin-bottom:2px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.row3 input{width:100%}.seg{display:flex;gap:6px}.seg button.on{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.checks{display:flex;flex-wrap:wrap;gap:4px 14px}label.check{display:inline-flex;flex-direction:row;align-items:center;gap:6px;font-size:14px;color:var(--text)}.form-foot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;align-items:center}.week-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.week-grid input{width:100%}.cat-row{display:flex;gap:8px;align-items:center;padding:6px 0;flex-wrap:wrap}.cat-row>input:not([type=color]){flex:1 1 140px}table.log{width:100%;border-collapse:collapse;font-size:13px}table.log td{padding:6px 8px;border-top:1px solid var(--border);vertical-align:top}@media (pointer: coarse){input,select{font-size:16px}button{min-height:38px}.nav a{padding:8px 12px}}body{-webkit-tap-highlight-color:transparent}@media (max-width: 600px){.row2,.row3{grid-template-columns:1fr}.week-grid{grid-template-columns:repeat(4,1fr)}.page-head h1{font-size:21px}}.nav a.sync-pill{margin-left:auto;font-size:12px;padding:2px 10px;border:1px solid var(--border);border-radius:99px;background:transparent;font-weight:400}.sync-idle{color:var(--ok)!important}.sync-syncing{color:var(--accent)!important}.sync-offline,.sync-off{color:var(--muted)!important}.sync-error{color:var(--danger)!important}
