:root{--accent:#2563eb;--accent-g:linear-gradient(135deg, #4f46e5 0%, #2563eb 50%, #0ea5e9 100%);--violet:#8b5cf6;--red:#e11d48;--amber:#f59e0b;--green:#10b981;--bg:#f5f7fb;--card:#ffffffb8;--surface:#1118270d;--line:#1118271a;--text:#1a1a2e;--muted:#4b5563;--a1:#a855f74d;--a2:#0ea5e947;--a3:#ec489938;--a4:#22c55e29;--blue:#2563eb;--run:#d1fae5;--soon:#fef3c7;--late:#ffe4e6;--shadow:0 4px 16px #0000000f;--pop:0 12px 34px #10182829;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{background:radial-gradient(50% 60% at 15% 10%, var(--a1), transparent 60%), radial-gradient(45% 55% at 85% 20%, var(--a2), transparent 60%), radial-gradient(50% 60% at 80% 90%, var(--a3), transparent 60%), radial-gradient(45% 55% at 10% 85%, var(--a4), transparent 60%), var(--bg);background-attachment:fixed}.glass{background:var(--card);-webkit-backdrop-filter:blur(20px)saturate(140%);border:1px solid var(--line);box-shadow:var(--shadow)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{color:var(--text);margin:0;font:17px/1.4 Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}button,input{font:inherit;color:inherit}.app{max-width:560px;min-height:100dvh;padding-bottom:calc(110px + env(safe-area-inset-bottom));margin:0 auto}.top{z-index:5;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:color-mix(in srgb, var(--bg) 70%, transparent);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex;position:sticky;top:0}.top .brand{flex-direction:column;flex:1;min-width:0;display:flex}.top .brand b{white-space:nowrap;text-overflow:ellipsis;font-size:19px;overflow:hidden}.top .brand small{color:var(--muted);font-size:12px}.logo{border-radius:10px;width:36px;height:36px}.icon{border:1px solid var(--line);background:var(--card);border-radius:12px;place-items:center;width:44px;height:44px;display:grid}.tools{gap:8px;padding:10px 16px 0;display:flex;overflow-x:auto}.tools button{border:1px solid var(--line);background:var(--card);white-space:nowrap;border-radius:22px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:0 12px;font-size:15px;font-weight:600;display:flex}main{flex-direction:column;gap:12px;padding:12px 16px;display:flex}h2{margin:2px 0 8px;font-size:26px;line-height:1.15}h3{margin:10px 0 6px;font-size:17px}.title{margin:0}.muted{color:var(--muted);margin:4px 0}.small{font-size:13px}.center{text-align:center}.warn{color:var(--amber);margin:6px 0;font-weight:600}.row{flex-wrap:wrap;gap:8px;display:flex}.row>.btn{flex:1}.spread{justify-content:space-between;align-items:center;gap:8px;display:flex}.link{color:var(--blue);background:0 0;border:0;min-height:44px;padding:8px 0;font-weight:600}.btn{border:1px solid var(--line);background:var(--surface);text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:10px 14px;font-weight:600;transition:transform .1s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.55}.btn.big{border-radius:18px;width:100%;min-height:64px;font-size:19px}.btn.big small{opacity:.85;font-size:12px;font-weight:500;display:block}.btn.left{text-align:left;justify-content:flex-start;font-size:17px}.btn.go{background:var(--accent-g);color:#fff;border-color:#0000;box-shadow:0 6px 18px #2563eb59}.btn.green{background:var(--green);border-color:var(--green);color:#fff}.btn.red{background:var(--red);border-color:var(--red);color:#fff}.btn.amber{background:var(--amber);border-color:var(--amber);color:#111}.btn.violet{background:var(--violet);border-color:var(--violet);color:#fff}.btn.dark{color:#fff;background:#111827}.btn.dim{opacity:.45}.btn.chip-btn{flex:1;min-height:52px}.is-hit{animation:.6s hit}@keyframes hit{0%{box-shadow:0 0 #16a34ae6}to{box-shadow:0 0 0 16px #16a34a00}}.tile{border:1px solid var(--line);background:var(--card);text-align:left;border-radius:20px;flex-direction:column;align-items:flex-start;gap:4px;width:100%;min-height:104px;padding:16px;display:flex}.tile small{color:var(--muted);font-size:13px}.tile.hero,.tile.red{color:#fff;background:linear-gradient(135deg,#f43f5e,#e11d48 45%,#9f1239);border:0;flex-direction:row;align-items:center;gap:14px;min-height:116px;box-shadow:0 12px 30px #e11d4859}.tile.hero b{font-size:24px;display:block}.tile.hero small{color:#ffffffd9}.tiles{grid-template-columns:1fr 1fr;gap:10px;display:grid}.running{background:var(--soon);border:1px solid var(--amber);border-radius:18px;flex-direction:column;gap:10px;padding:14px;display:flex}.running small{color:var(--muted);display:block}.step{background:var(--card);border:2px solid var(--line);border-radius:22px;flex-direction:column;gap:8px;padding:16px;display:flex}.step>small{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.step ul{margin:0 0 6px;padding-left:20px}.step li{margin:4px 0;font-size:17px}.step.enter{animation:.25s enter}@keyframes enter{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.step.is-red{border-color:var(--red)}.step.is-amber,.step.is-due{border-color:var(--amber);background:var(--soon)}.step.is-run{border-color:var(--green)}.step.is-soon{border-color:var(--amber)}.step.is-late{border-color:var(--red)}.step .ask{margin:6px 0 0;font-size:20px}.choices{flex-direction:column;gap:10px;display:flex}.choices.two{grid-template-columns:1fr 1fr;display:grid}.crumbs{color:var(--muted);flex-wrap:wrap;gap:4px;font-size:12px;display:flex}.crumbs span:not(:last-child):after{content:" ›"}.countdown{text-align:center;font-variant-numeric:tabular-nums;margin:4px 0 8px;font-size:64px;font-weight:800;line-height:1}.todo{flex-direction:column;gap:8px;display:flex}.swap{background:var(--surface);border-radius:14px;flex-direction:column;gap:8px;padding:10px;display:flex}.boxes{grid-template-columns:1fr 1fr;gap:10px;display:grid}.box{background:var(--card);border:2px solid var(--line);border-radius:18px;flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.step .box{background:var(--surface)}.box header{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.box header small{color:var(--muted);font-size:13px;font-weight:600}.box header b{font-variant-numeric:tabular-nums;font-size:20px}.box p{flex:1;margin:0;font-size:14px}.box .btn{width:100%}.box.is-run{border-color:var(--green);background:var(--run)}.box.is-due{border-color:var(--amber);background:var(--soon)}.box.is-late{border-color:var(--red);background:var(--late);animation:1s infinite alternate blink}@keyframes blink{to{border-color:#0000}}.ends{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.list{flex-direction:column;gap:8px;display:flex}.item{background:var(--card);border:1px solid var(--line);text-align:left;border-radius:16px;flex-direction:column;gap:6px;padding:12px 14px;display:flex}.item small{color:var(--muted)}.item.tap{justify-content:center;min-height:56px}.item.on{border-color:var(--green);background:var(--run)}.item.role input{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex:2;min-width:0;min-height:48px;padding:0 12px}.field{flex-direction:column;gap:4px;display:flex}.field input{border:1px solid var(--line);background:var(--surface);border-radius:14px;min-height:52px;padding:0 14px}.why{background:var(--surface);border-radius:12px;flex-direction:column;gap:2px;margin:0;padding:10px;display:flex}.why span{color:var(--green);font-weight:600}.sheet-bg{z-index:20;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);width:100%;max-width:560px;max-height:85dvh;box-shadow:var(--pop);padding:8px 16px calc(16px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;flex-direction:column;gap:8px;animation:.2s up;display:flex;overflow-y:auto}@keyframes up{0%{opacity:0;transform:translateY(40px)}}.grab{background:var(--line);border-radius:3px;width:44px;height:5px;margin:4px auto}.dose{background:var(--card);border:1px solid var(--line);border-radius:14px;flex-direction:column;padding:10px 12px;display:flex}.dose span{color:var(--muted)}.log{flex-direction:column;gap:6px;display:flex}.entry{background:var(--card);border:1px solid var(--line);border-radius:12px;align-items:center;gap:10px;padding:8px 10px;display:flex}.entry time{font-variant-numeric:tabular-nums;flex-direction:column;min-width:88px;font-size:13px;display:flex}.entry time small{color:var(--muted)}.entry span{flex:1}.entry button{color:var(--muted);background:0 0;border:0;min-width:40px;min-height:40px}.entry.new{border-color:var(--green);animation:.35s enter}.entry.struck span{opacity:.5;text-decoration:line-through}.toast{left:50%;top:calc(70px + env(safe-area-inset-top));z-index:30;background:var(--green);color:#fff;border-radius:18px;align-items:center;gap:10px;width:calc(100% - 32px);max-width:528px;padding:12px 14px;animation:.3s cubic-bezier(.2,1.4,.4,1) toast;display:flex;position:fixed;transform:translate(-50%);box-shadow:0 10px 30px #00000059}.toast span{flex-direction:column;flex:1;display:flex}.toast small{opacity:.9}.toast button{color:#fff;background:0 0;border:1px solid #ffffff80;border-radius:12px;align-items:center;gap:4px;min-height:44px;padding:0 12px;font-weight:600;display:flex}@keyframes toast{0%{opacity:0;transform:translate(-50%,-20px)scale(.9)}}.cert{color:#111;text-align:center;background:#fff;border:6px double #a855f7;border-radius:16px;flex-direction:column;align-items:center;gap:4px;padding:24px 18px;display:flex}.cert h1{color:#6b21a8;margin:6px 0;font-size:28px}.cert h2{font-size:22px}.cert p{margin:2px 0}.cert .spread{color:#555;width:100%;margin-top:14px}@media print{.top,.tools,.noprint,.toast{display:none!important}body{background:#fff}.cert{border-color:#6b21a8}}.tile{background:var(--card)}.tile .ic{background:var(--accent-g);color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:6px;display:grid}.tiles.three{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.tile.sm{flex-direction:row;align-items:center;gap:8px;min-height:64px;padding:12px}.seg{border-radius:999px;grid-template-columns:1fr 1fr;gap:4px;padding:4px;display:grid}.seg button{min-height:46px;color:var(--muted);background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;font-weight:600;display:flex}.seg button.on{background:var(--accent-g);color:#fff;box-shadow:0 6px 18px #2563eb59}.sec{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:6px 2px 0;font-size:13px}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:0 14px;font-size:15px;font-weight:600;display:inline-flex}.weight{border-radius:18px;grid-template-columns:1fr 1fr;gap:8px;padding:10px;display:grid}.weight.need{border-color:var(--amber)}.weight label{background:var(--surface);border-radius:12px;align-items:center;gap:6px;padding:0 10px;display:flex}.weight label span{color:var(--muted);white-space:nowrap;font-size:13px}.weight input{background:0 0;border:0;outline:none;width:100%;min-width:0;min-height:48px;font-size:20px;font-weight:700}.weight em{color:var(--muted);font-size:13px;font-style:normal}.running{border-radius:18px}.step,.box{border-width:1.5px}.step.is-red{box-shadow:0 0 0 1px var(--red), var(--shadow)}.tools button{background:var(--card);-webkit-backdrop-filter:blur(20px)}.dock-space{height:46dvh}.dock{z-index:10;border:1px solid var(--line);background:var(--bg);-webkit-backdrop-filter:blur(22px)saturate(140%);border-bottom:0;border-radius:22px 22px 0 0;flex-direction:column;width:100%;max-width:560px;height:44dvh;animation:.2s dockup;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -10px 30px #00000059}@keyframes dockup{0%{opacity:0;transform:translate(-50%,40px)}}.dock header{align-items:center;gap:8px;padding:8px 12px 6px 16px;display:flex}.dock header b{flex:1;align-items:center;gap:6px;font-size:15px;display:flex}.dock header small{color:var(--muted);font-weight:700}.dock header .icon{width:40px;height:40px}.dock-grid{padding:2px 12px calc(12px + env(safe-area-inset-bottom));flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:8px;display:grid;overflow-y:auto}.cause{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:14px;flex-direction:column;gap:2px;min-height:74px;padding:8px 10px 8px 34px;display:flex;position:relative}.cause b{font-size:15px;line-height:1.2}.cause small{color:var(--muted);font-size:12px;line-height:1.25}.cause .letter{color:#fff;background:var(--accent-g);border-radius:6px;place-items:center;width:20px;height:20px;font-size:12px;font-weight:800;display:grid;position:absolute;top:8px;left:8px}.cause.looked{border-color:var(--amber);background:var(--soon)}.cause.treated{border-color:var(--green);background:var(--run)}.cause.treated small{color:var(--text)}.dock-pill{right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:10;background:var(--accent-g);color:#fff;border:0;border-radius:999px;align-items:center;gap:8px;min-height:52px;padding:0 16px;font-weight:700;display:flex;position:fixed;box-shadow:0 10px 24px #2563eb73}.ac-chart h2{margin:0 0 10px;font-size:22px}.ac-flow{flex-direction:column;display:flex}.ac-flow-item{flex-direction:column;align-items:stretch;display:flex}.ac-flow-item+.ac-flow-item:before{content:"";background:#94a3b8;width:2px;height:14px;margin:0 auto;display:block}.ac-box{border:1.5px solid var(--line);background:#f1f5f9;border-radius:14px;padding:10px 12px;font-size:15px}.ac-box b{font-size:15.5px;display:block}.ac-box ul{margin:4px 0 0;padding-left:18px}.ac-box.is-red{background:#fff1f2;border-color:#e11d48}.ac-box.is-amber{background:#fffbeb;border-color:#f59e0b}.ac-box.is-green{background:#ecfdf5;border-color:#10b981}.ac-box.is-blue{background:#eff6ff;border-color:#2563eb}.ac-branches{gap:10px;margin-top:12px;display:grid;grid-template-columns:1fr!important}.ac-branch{border-left:3px solid #cbd5e1;padding-left:8px}.ac-branch-label{color:#3730a3;background:#e0e7ff;border-radius:10px;margin-bottom:6px;padding:6px 10px;font-size:14px;font-weight:700}.ac-chart-doses{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-top:14px;padding:10px 12px;font-size:15px}.ac-chart-doses h4{margin:0 0 6px;font-size:15px}.ac-chart-doses>div{border-bottom:1px solid var(--line);padding:4px 0}.ac-chart-doses ul{margin:0;padding-left:18px}.ac-chart-refs{color:var(--muted);margin-top:10px;font-size:12px}.chart-tabs{gap:6px;display:flex;overflow-x:auto}.chart-search{border:1px solid var(--line);background:var(--card);border-radius:14px;width:100%;min-height:50px;padding:0 14px;font-size:17px}.on-chip{color:#fff;background:var(--accent-g)!important}.chart-tabs .chip{white-space:nowrap}
