:root{--bg:#f6f4f9;--card:#fff;--soft:#efecf4;--line:#ddd7e6;--ink:#1c1823;--ink2:#524b62;--muted:#7f7891;--accent:#5a3db5;--accent-soft:#ebe5fa;--good:#1d7a45;--good-soft:#e1f2e7;--warn:#8a5a00;--warn-soft:#f8ecd2;--crit:#b8322f;--crit-soft:#f8dedd;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--bg:#121017;--card:#1c1924;--soft:#252130;--line:#363044;--ink:#f1eef7;--ink2:#c4bed3;--muted:#8f89a2;--accent:#b8a4ff;--accent-soft:#2a2341;--good:#58c487;--good-soft:#173324;--warn:#e3b04b;--warn-soft:#3a2d12;--crit:#f07a74;--crit-soft:#3d1c1b;color-scheme:dark}}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;-webkit-text-size-adjust:100%}
main{max-width:560px;margin:0 auto;padding:calc(14px + env(safe-area-inset-top,0px)) 16px calc(40px + env(safe-area-inset-bottom,0px));display:grid;gap:14px}
h1{font-size:28px;margin:0;letter-spacing:-.01em} h2{font-size:19px;margin:0} h3{font-size:16px;margin:0}
p{margin:0}.muted{color:var(--muted)}.sm{font-size:14px}.center{text-align:center}
.top{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.top .role{margin-left:auto;font-size:13px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 10px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;display:grid;gap:10px}
.card.info{background:var(--accent-soft);border-color:transparent}.card.warn{background:var(--warn-soft);border-color:transparent}.card.calm{background:var(--good-soft);border-color:transparent}.card.crit{background:var(--crit-soft);border-color:transparent}
.label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}
button,.btn{font:inherit;font-weight:650;border-radius:14px;border:1px solid var(--line);background:var(--card);color:var(--ink);padding:12px 14px;min-height:48px;cursor:pointer;text-align:center;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}
button.primary,.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}
@media (prefers-color-scheme:dark){button.primary,.btn.primary{color:#15111d}}
button.quiet{background:transparent;border-color:transparent;color:var(--accent);min-height:40px;padding:8px}
button.danger{color:var(--crit)}
button:disabled{opacity:.5}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.dose{display:grid;grid-template-columns:1fr auto;gap:2px 10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.dose:first-of-type{border-top:0}
.dose .n{font-weight:650}.dose .d{font-size:13.5px;color:var(--muted)}
.dose .st{grid-row:span 2;font-size:13px;font-weight:700;border-radius:999px;padding:6px 12px;border:1px solid var(--line);background:var(--card);color:var(--ink);min-height:36px}
.st.done{background:var(--good-soft);color:var(--good);border-color:transparent}.st.skipped{background:var(--soft);color:var(--muted);border-color:transparent}.st.late{background:var(--warn-soft);color:var(--warn);border-color:transparent}.st.now{background:var(--accent);color:#fff;border-color:var(--accent)}
.slot-h{display:flex;justify-content:space-between;align-items:center;gap:8px}
.faces{display:flex;justify-content:space-between;gap:6px}
.faces button{flex:1;min-height:56px;padding:6px;font-size:28px;line-height:1;border-radius:14px}
.faces button[aria-pressed=true],.chips button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips+.chips{margin-top:16px}
#luchips:not([data-show~=lugood]) #lugood,#luchips:not([data-show~=luhard]) #luhard{display:none}
#luchips[data-show=luhard] #luhard{margin-top:0}
#luchips[data-show=""]{display:none}
.chips button{min-height:40px;padding:8px 12px;border-radius:999px;font-weight:600;font-size:15px}
input,textarea,select{font:inherit;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:10px 12px;width:100%;min-height:46px}
textarea{min-height:84px;resize:vertical}
.row{display:flex;gap:10px;align-items:center}.row>*{flex:1}
.list{display:grid;gap:0}
.item{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding:10px 0;border-top:1px solid var(--line)}
.item:first-child{border-top:0}.item .t{font-size:13.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.nav{display:flex;flex-wrap:wrap;gap:8px}.nav a{color:var(--accent);font-weight:650;text-decoration:none;padding:6px 2px}
.call{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:12px 14px;border-radius:14px;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;min-height:56px}
.call b{color:var(--accent);font-variant-numeric:tabular-nums}
#sheet-bg{position:fixed;inset:0;background:rgba(10,8,14,.45);z-index:10}
#sheet{position:fixed;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;background:var(--bg);border-radius:20px 20px 0 0;padding:16px 16px calc(24px + env(safe-area-inset-bottom,0px));z-index:11;display:grid;gap:12px;max-width:560px;margin:0 auto}
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--ink);color:var(--bg);border-radius:999px;padding:10px 18px;font-weight:650;z-index:20;max-width:90vw;text-align:center}
#toast.err{background:var(--crit);color:#fff}
table{border-collapse:collapse;width:100%;font-size:13px}th,td{border-bottom:1px solid var(--line);padding:5px 4px;text-align:left;vertical-align:top}th{color:var(--muted);font-weight:650}
.tblwrap{overflow-x:auto}
@media print{body{background:#fff;color:#000}.noprint,#toast{display:none!important}main{max-width:none;padding:0}.card{border:1px solid #ccc;break-inside:avoid}}
.printonly{display:none}@media print{.printonly{display:block}}
