:root{--bg: #f4f3ee;--surface: #ffffff;--surface-2: #faf9f6;--border: #e6e4dc;--border-strong: #d5d3c9;--text: #33322e;--text-2: #66645c;--muted: #96948a;--accent-bg: #e6efe8;--accent-border: #9fbcab;--accent-text: #3a5a48;--danger: #8a4b42;--radius: 10px}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;font-size:16px}#root{max-width:480px;margin:0 auto;min-height:100vh}button{font-family:inherit;cursor:pointer}.screen{padding:20px 16px calc(76px + env(safe-area-inset-bottom))}.screen-title{margin:0 0 14px;font-size:20px;font-weight:600}.eyebrow{font-size:12px;color:var(--muted);margin:0}.today-header{display:flex;align-items:baseline;justify-content:space-between;margin:2px 0 14px}.today-header h1{margin:0;font-size:20px;font-weight:600}.saved-indicator{font-size:12px;color:var(--muted);white-space:nowrap}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;margin-bottom:12px}.card-title{font-size:14px;font-weight:500;margin:0 0 10px}.card-title .optional{font-weight:400;color:var(--muted)}.seg{display:flex;gap:5px}.seg-btn{flex:1 1 0;min-width:0;min-height:52px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);padding:7px 2px;text-align:center}.seg-btn.on{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent-text)}.seg-btn .num{display:block;font-size:15px;font-weight:600}.seg-btn .lbl{display:block;font-size:10px;line-height:1.25;margin-top:2px;overflow-wrap:break-word}.seg-btn .word{display:block;font-size:13px;line-height:1.3}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--border-strong);border-radius:999px;background:var(--surface-2);color:var(--text-2);padding:9px 14px;font-size:13px}.chip.on{background:var(--accent-bg);border-color:var(--accent-border);color:var(--accent-text)}.chip.static{cursor:default}.dose-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.dose-label{font-size:13px;color:var(--text-2);width:52px;flex-shrink:0}.dose-row input[type=time]{width:116px;padding:6px 8px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-family:inherit;font-size:14px}.dose-remove{margin-left:auto;border:none;background:none;color:var(--muted);font-size:12px;padding:6px 4px}.dose-extra{margin-top:14px;padding-top:12px;border-top:1px solid var(--border)}.add-dose{width:100%;margin-top:12px;padding:10px;border:1px dashed var(--border-strong);border-radius:var(--radius);background:none;color:var(--text-2);font-size:13px}textarea{width:100%;min-height:56px;padding:10px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-family:inherit;font-size:14px;resize:vertical}textarea+textarea{margin-top:8px}.footnote{text-align:center;font-size:12px;color:var(--muted);margin:4px 0 12px}.history-row{display:flex;align-items:center;gap:8px;padding:12px 4px;border-bottom:1px solid var(--border)}.history-main{flex:1;text-align:left;background:none;border:none;padding:0;color:inherit;display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:44px}.history-date{font-size:14px;font-weight:500;margin:0}.history-daytype{font-weight:400;color:var(--muted);font-size:12px}.history-doses{font-size:12px;color:var(--text-2);margin:2px 0 0}.history-scores{text-align:right;flex-shrink:0}.history-scores p{margin:0;font-size:13px}.history-scores .sub{font-size:12px;color:var(--muted);margin-top:2px}.history-delete{border:none;background:none;color:var(--muted);font-size:16px;padding:10px 6px;line-height:1}.back-link{border:none;background:none;color:var(--accent-text);font-size:14px;padding:4px 0;margin-bottom:6px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.stat-grid .card{margin:0}.stat-label{font-size:12px;color:var(--muted);margin:0}.stat-value{font-size:22px;font-weight:600;margin:4px 0 0}.stat-value .denom{font-size:12px;font-weight:400;color:var(--muted)}.pattern-row{display:flex;justify-content:space-between;gap:8px;font-size:13px;padding:7px 0;border-bottom:1px solid var(--border)}.pattern-row:last-of-type{border-bottom:none}.pattern-row .stats{color:var(--text-2);white-space:nowrap}.observation{font-size:13px;color:var(--text-2);margin:0 0 8px;line-height:1.5}.observation strong{color:var(--text);font-weight:500}.disclaimer{font-size:12px;color:var(--muted);font-style:italic;margin:8px 0 0;line-height:1.5}.wide-btn{width:100%;padding:12px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-2);color:var(--text);font-size:14px}.wide-btn+.wide-btn{margin-top:8px}.about-text{font-size:13px;color:var(--text-2);line-height:1.6;margin:0}.empty-state{text-align:center;color:var(--muted);font-size:14px;padding:32px 16px;line-height:1.6}.nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--surface);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom)}.nav-btn{flex:1;padding:8px 0 10px;background:none;border:none;color:var(--muted);font-size:11px}.nav-btn svg{display:block;margin:0 auto 3px}.nav-btn.on{color:var(--accent-text)}@media print{.nav,.no-print{display:none!important}html,body{background:#fff}.screen{padding:0}.card{break-inside:avoid}}
