:root{color-scheme:light dark;--bg: #f4f3f8;--card: #ffffff;--ink: #1b1d2a;--muted: #6b6e80;--accent: #5b5bd6;--done: #2f8a5b;--danger: #c0392b;--line: #e2e1ea}@media(prefers-color-scheme:dark){:root{--bg: #12131b;--card: #1e2030;--ink: #ecebf5;--muted: #9a9cb0;--accent: #8b8bf0;--done: #5fc48d;--line: #2e3045}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.4 -apple-system,BlinkMacSystemFont,system-ui,sans-serif}main{max-width:560px;margin:0 auto;padding:16px 16px 48px;padding-top:max(16px,env(safe-area-inset-top))}header{display:flex;align-items:center;gap:12px;margin-bottom:12px}header h1{flex:1;margin:0;font-size:26px}h2{margin:0 0 8px;font-size:18px}.card{background:var(--card);border-radius:14px;padding:16px;margin-bottom:12px}.center{text-align:center;margin-top:30vh}.muted{color:var(--muted);font-size:14px}.big{font-size:18px;margin:0 0 12px}.big .muted{display:block}.error{background:var(--danger);color:#fff;padding:10px 14px;border-radius:10px}.row{display:flex;gap:8px}.row>*{flex:1}.wrap{flex-wrap:wrap}.wrap>*{flex:0 1 auto}.running{border-left:4px solid var(--accent);padding-left:12px;margin-top:8px}.running p{margin:0 0 10px}button{font:inherit;padding:12px 16px;border-radius:10px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;min-height:46px}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.done{border-color:var(--done);color:var(--done)}button.done small{color:var(--muted)}button.link{border:0;padding:4px;min-height:0;color:var(--accent)}button:disabled{opacity:.5}.form{display:grid;gap:10px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}label{display:grid;gap:4px;font-size:14px;color:var(--muted)}label.check{display:flex;align-items:center;gap:8px;color:var(--ink)}input,select{font:inherit;font-size:16px;padding:10px;border-radius:8px;border:1px solid var(--line);background:var(--bg);color:var(--ink);width:100%;min-width:0}input[type=checkbox]{width:auto}header select{width:auto}.med{padding:8px 0;border-top:1px solid var(--line)}.med:first-of-type{border-top:0}.med p{margin:0 0 8px}.log{list-style:none;margin:0;padding:0}.log li{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--line)}.log li:first-child{border-top:0}.log .time{font-variant-numeric:tabular-nums;color:var(--muted)}.log .what{flex:1}footer{margin-top:24px;display:grid;gap:8px}
