:root{color-scheme:light;--ink:#1B1B1F;--ink-2:#4C4C56;--ink-3:#7C7C88;--paper:#FFFDF7;--paper-fade:rgba(255,253,247,0);--header-bg:rgba(255,253,247,.93);--card:#FFFFFF;--line:#E6E3DA;--line-2:#F1EEE6;--line-strong:#C9C6BE;--line-dash:#B6B3AB;--edge:#1B1B1F;--bw:2px;--sh-sm:2px 2px 0 var(--edge);--sh:3px 3px 0 var(--edge);--sh-lg:5px 5px 0 var(--edge);--on-tile:#1B1B1F;--on-tile-2:#55555F;--sun:#FFD66B;--sky:#A9D8FF;--peach:#FFB8A3;--lime:#CFF08A;--lilac:#D9CCFF;--panel:#FFF7E6;--panel-line:var(--edge);--acc:#2B6CB5;--acc-soft:#DCEDFF;--acc-line:var(--edge);--acc-ink:#1C4E85;--warn:#9A5A18;--warn-soft:#FFE6C9;--warn-line:var(--edge);--ok-soft:#DFF4B8;--ok-line:var(--edge);--ok-ink:#3C6018;--danger:#B03018;--danger-soft:#FFD5C9;--danger-line:var(--edge);--danger-ink:#96311B;--btn-hover:#000000;--btn-disabled:#D8D5CD;--m5:#4E9B6A;--r:22px;--r-sm:14px;--sp:16px;--tabbar-h:64px;--g-neuro:#8E6BB5;--g-normo:#3E8C8C;--g-anti:#C39A2E;--g-anx:#7FA33F;--g-sleep:#5B7FB5;--g-other:#9B9B9B;--font-disp:Unbounded,"Inter Tight",system-ui,sans-serif}:root[data-theme=dark]{color-scheme:dark;--ink:#EDEDF1;--ink-2:#B7B7C1;--ink-3:#8A8A95;--paper:#131316;--paper-fade:rgba(19,19,22,0);--header-bg:rgba(19,19,22,.93);--card:#1D1D22;--line:#2E2E35;--line-2:#26262C;--line-strong:#43434E;--line-dash:#4A4A55;--edge:#5A5A68;--on-tile:#F2F2F6;--on-tile-2:#C6C6D0;--sun:#5F4F20;--sky:#24445C;--peach:#5C3B2F;--lime:#3A4A1E;--lilac:#413864;--panel:#22222A;--acc:#7AAEE8;--acc-soft:#1E3348;--acc-ink:#9CC6F2;--warn:#E0A96B;--warn-soft:#3A2C18;--ok-soft:#2A3A18;--ok-ink:#A9D06F;--danger:#E58A72;--danger-soft:#3E241C;--danger-ink:#E9A493;--btn-hover:#FFFFFF;--btn-disabled:#3A3A44;--m5:#5FB37E}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:Inter Tight,Inter,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased;padding-bottom:calc(var(--tabbar-h) + 32px + env(safe-area-inset-bottom))}body:has(.save){padding-bottom:calc(var(--tabbar-h) + 132px + env(safe-area-inset-bottom))}.wrap{max-width:780px;margin:0 auto;padding:0 var(--sp)}header{position:sticky;top:0;z-index:40;background:var(--header-bg);-webkit-backdrop-filter:saturate(1.3) blur(10px);backdrop-filter:saturate(1.3) blur(10px);border-bottom:var(--bw) solid var(--edge)}.hd{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:16px 0 12px;gap:10px 12px}.hd h1{font-family:var(--font-disp);font-weight:700;font-size:23px;letter-spacing:-.03em;margin:0}.hd .sub{font-size:12px;font-weight:600;color:var(--on-tile);background:var(--sun);border:var(--bw) solid var(--edge);border-radius:999px;padding:6px 12px;line-height:1.25;text-align:right}header nav,.subnav{display:flex;gap:7px;padding-bottom:12px;overflow-x:auto;scrollbar-width:none}header nav::-webkit-scrollbar,.subnav::-webkit-scrollbar{display:none}header nav button,.subnav button{font:inherit;font-size:13px;font-weight:600;border:var(--bw) solid var(--edge);background:var(--card);color:var(--ink);padding:8px 14px;border-radius:999px;cursor:pointer;transition:.12s;white-space:nowrap}header nav button:hover,.subnav button:hover{transform:translate(-1px,-1px);box-shadow:var(--sh-sm)}header nav button[aria-selected=true],.subnav button[aria-selected=true]{background:var(--ink);color:var(--paper);box-shadow:var(--sh-sm)}header nav button:focus-visible,.subnav button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.card{background:var(--card);border:var(--bw) solid var(--edge);border-radius:var(--r);box-shadow:var(--sh);padding:20px;margin:16px 0}.eyebrow{font-family:var(--font-disp);font-weight:500;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);margin-bottom:12px}h2{font-family:var(--font-disp);font-weight:700;font-size:19px;margin:0 0 4px;letter-spacing:-.02em}.muted{color:var(--ink-3);font-size:13px}.err-msg{color:var(--danger);font-size:13px;font-weight:500}.card:has(>.gcheck){background:var(--sky)}.card:has(>.check){background:var(--sun)}.card:has(>.chips){background:var(--lime)}.card:has(>#freeText){background:var(--peach)}.card:has(>.gcheck),.card:has(>.check),.card:has(>.chips),.card:has(>#freeText){color:var(--on-tile)}.card:has(>.gcheck)>.eyebrow,.card:has(>.check)>.eyebrow,.card:has(>.chips)>.eyebrow,.card:has(>#freeText)>.eyebrow{color:var(--on-tile-2)}.card:has(>.gcheck) .hint,.card:has(>.chips) .hint{color:var(--on-tile-2)}.cheat{border:var(--bw) solid var(--edge);border-radius:var(--r);background:var(--lilac);color:var(--on-tile);box-shadow:var(--sh);margin-bottom:16px;overflow:hidden}.cheat>summary{cursor:pointer;list-style:none;padding:15px 18px;font-size:14px;font-weight:600;display:flex;justify-content:space-between;align-items:center}.cheat>summary::-webkit-details-marker{display:none}.cheat>summary:after{content:"+";font-family:var(--font-disp);font-size:16px}.cheat[open]>summary:after{content:"−"}.cheat[open]>summary{border-bottom:var(--bw) solid var(--edge)}.lv{display:flex;gap:14px;padding:14px 18px;border-top:1px solid var(--edge);opacity:.95}.lv:first-of-type{border-top:0}.lv .num{flex:0 0 32px;height:32px;border-radius:10px;border:var(--bw) solid var(--edge);display:flex;align-items:center;justify-content:center;color:#fff;font-family:var(--font-disp);font-size:13px;font-weight:700}.lv .nm{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;display:block;margin-bottom:5px;color:var(--on-tile)}.lv .ds{font-size:12.5px;color:var(--on-tile-2);line-height:1.5;display:block}.scale{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin:4px 0 10px}.sw{aspect-ratio:1/1.3;border:var(--bw) solid var(--edge);border-radius:12px;cursor:pointer;transition:.12s;font:inherit;font-family:var(--font-disp);font-size:11px;font-weight:700;color:#fff;display:flex;align-items:flex-end;justify-content:center;padding-bottom:5px;opacity:.45}.sw:hover{opacity:.8;transform:translate(-1px,-1px)}.sw[aria-pressed=true]{opacity:1;transform:translate(-2px,-2px);box-shadow:var(--sh)}.sw:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.scale-ends{display:flex;justify-content:space-between;font-size:11px;color:var(--ink-3);font-weight:500}.echo{margin-top:14px;min-height:54px}.echo .nm{font-family:var(--font-disp);font-weight:700;font-size:16px;letter-spacing:-.02em}.echo .ds{font-size:13px;color:var(--ink-2);line-height:1.5;margin-top:5px}.echo .empty{font-size:13px;color:var(--ink-3)}textarea,input[type=text],input[type=date],input[type=number],select{width:100%;font:inherit;font-size:16px;line-height:1.5;border:var(--bw) solid var(--edge);border-radius:var(--r-sm);padding:11px 13px;background:var(--card);color:var(--ink)}textarea{resize:vertical}textarea:focus,input:focus,select:focus{outline:0;box-shadow:var(--sh-sm)}#freeText{min-height:160px}.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width:640px){.duo{grid-template-columns:1fr}}.duo>.card{margin:0}.gcheck{display:flex;flex-wrap:wrap;gap:7px}.gc{font:inherit;font-size:13px;font-weight:500;border:var(--bw) solid var(--edge);background:var(--card);color:var(--ink);padding:8px 13px 8px 10px;border-radius:999px;cursor:pointer;transition:.12s;display:flex;align-items:center;gap:8px}.gc i{width:10px;height:10px;border-radius:4px;border:1px solid var(--edge);flex:0 0 auto;opacity:.5;transition:.12s}.gc:hover{transform:translate(-1px,-1px);box-shadow:var(--sh-sm)}.gc[aria-pressed=true]{background:var(--ink);border-color:var(--edge);color:var(--paper);box-shadow:var(--sh-sm)}.gc[aria-pressed=true] i{opacity:1;border-color:var(--paper)}.gc:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.mgroup{margin-top:16px;padding-top:14px;border-top:var(--bw) dashed var(--edge)}.mghead{display:flex;align-items:center;gap:8px;font-family:var(--font-disp);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--on-tile-2);margin-bottom:9px;font-weight:500}.mghead i{width:10px;height:10px;border-radius:3px;border:1px solid var(--edge);flex:0 0 auto}.medrow{display:grid;grid-template-columns:1fr 78px 62px 36px;gap:6px;margin-bottom:6px;align-items:center}.medrow input,.medrow select{padding:9px 10px;font-size:16px}.medrow .x{width:36px;height:38px;border:var(--bw) solid var(--edge);background:var(--card);border-radius:11px;color:var(--ink-2);cursor:pointer;font-size:15px;padding:0}.medrow .x:hover{color:var(--danger);background:var(--danger-soft)}@media (max-width:520px){.medrow{grid-template-columns:1fr 66px 56px 34px;gap:5px}}.addrow{display:flex;gap:7px;margin-top:12px;flex-wrap:wrap}.tbtn{font:inherit;font-size:12.5px;font-weight:600;border:var(--bw) solid var(--edge);background:var(--card);color:var(--ink);padding:8px 14px;border-radius:999px;cursor:pointer;transition:.12s}.tbtn:hover{transform:translate(-1px,-1px);box-shadow:var(--sh-sm)}.tbtn:active{transform:translate(1px,1px);box-shadow:none}.tbtn:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.tbtn.on{background:var(--ink);color:var(--paper);box-shadow:var(--sh-sm)}.hint{font-size:11.5px;color:var(--ink-3);margin-top:12px;line-height:1.45}.check{display:flex;align-items:center;gap:11px;cursor:pointer;font:inherit;background:none;border:0;padding:0;text-align:left;color:inherit}.check .box{width:24px;height:24px;border-radius:8px;border:var(--bw) solid var(--edge);background:var(--card);flex:0 0 auto;display:flex;align-items:center;justify-content:center;font-size:13px;color:transparent;transition:.12s}.check[aria-pressed=true] .box{background:var(--ink);color:var(--paper)}.check span:last-child{font-size:14.5px;font-weight:500}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.chip{font:inherit;font-size:12.5px;font-weight:500;border:var(--bw) solid var(--edge);background:var(--card);color:var(--ink);padding:7px 12px;border-radius:999px;cursor:pointer;transition:.12s}.chip:hover{transform:translate(-1px,-1px);box-shadow:var(--sh-sm)}.chip[aria-pressed=true]{background:var(--ink);color:var(--paper);box-shadow:var(--sh-sm)}.chip:focus-visible{outline:2px solid var(--acc);outline-offset:2px}details.fold{border:var(--bw) solid var(--edge);border-radius:var(--r);background:var(--card);box-shadow:var(--sh);margin:16px 0}details.fold>summary{cursor:pointer;list-style:none;padding:16px 18px;font-size:14.5px;font-weight:600;display:flex;justify-content:space-between;align-items:center;gap:12px}details.fold>summary::-webkit-details-marker{display:none}details.fold>summary:after{content:"+";font-family:var(--font-disp);font-size:16px;color:var(--ink-2)}details.fold[open]>summary:after{content:"−"}details.fold>summary small{display:block;font-weight:400;color:var(--ink-3);font-size:12.5px;margin-top:2px}.fold-body{padding:0 18px 18px}.sliders{display:grid;gap:16px}.sl label{display:flex;justify-content:space-between;font-size:13px;font-weight:500;margin-bottom:6px}.sl label b{font-family:var(--font-disp);font-weight:500;font-size:12px;color:var(--ink)}input[type=range]{width:100%;accent-color:var(--ink);height:24px}details.err{border-top:1px dashed var(--line-strong);padding:11px 0}details.err:first-of-type{border-top:0}details.err summary{cursor:pointer;font-size:13.5px;font-weight:500;list-style:none;display:flex;gap:9px;align-items:baseline}details.err summary::-webkit-details-marker{display:none}details.err summary .n{font-family:var(--font-disp);font-size:11px;color:var(--ink-3);flex:0 0 22px}details.err p{margin:7px 0 0 31px;font-size:13px;color:var(--ink-2);line-height:1.5}details.err[open] summary{color:var(--acc)}.save{position:fixed;left:0;right:0;z-index:50;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom));background:linear-gradient(to top,var(--paper) 62%,var(--paper-fade));padding:22px var(--sp) 14px}.save-in{max-width:780px;margin:0 auto}.btn{width:100%;font:inherit;font-family:var(--font-disp);font-size:14.5px;font-weight:700;letter-spacing:-.01em;background:var(--ink);color:var(--paper);border:var(--bw) solid var(--edge);border-radius:999px;padding:14px;cursor:pointer;box-shadow:var(--sh);transition:.12s}.btn:not(:disabled):hover{background:var(--btn-hover);transform:translate(-1px,-1px);box-shadow:var(--sh-lg)}.btn:not(:disabled):active{transform:translate(2px,2px);box-shadow:none}.btn:disabled{background:transparent;color:var(--ink-3);border-style:dashed;border-color:var(--line-strong);box-shadow:none;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--acc);outline-offset:3px}.period{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-bottom:16px}.period input[type=date]{width:auto;padding:7px 11px;font-size:16px}.rowlab{font-family:var(--font-disp);font-size:10px;color:var(--ink-3);letter-spacing:.06em;margin:18px 0 7px;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(28,1fr);gap:4px}@media (max-width:600px){.grid{grid-template-columns:repeat(14,1fr);gap:4px}}.cell{aspect-ratio:1;border-radius:6px;border:1px solid var(--edge);padding:0;cursor:pointer;transition:.12s;position:relative}.cell:hover{transform:scale(1.18);z-index:2}.cell:focus-visible{outline:2px solid var(--acc);outline-offset:2px;z-index:2}.cell.sel{box-shadow:0 0 0 2px var(--card),0 0 0 4px var(--edge);z-index:2}.cell.none{background:transparent;border:1.5px dashed var(--line-dash)}.cell.none:hover{border-color:var(--acc);background:var(--acc-soft)}.cell.vis{box-shadow:0 0 0 2px var(--acc);z-index:1}.cell.vis.sel{box-shadow:0 0 0 2px var(--acc),0 0 0 4px var(--card),0 0 0 6px var(--edge)}.visrow{height:14px;position:relative;margin-top:3px}.vmark{position:absolute;transform:translate(-50%);font-family:var(--font-disp);font-size:9px;color:var(--acc);white-space:nowrap;display:flex;flex-direction:column;align-items:center;line-height:1;cursor:pointer;background:none;border:0;padding:0}.vmark:before{content:"▲";font-size:7px;display:block;margin-bottom:1px}.legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11.5px;color:var(--ink-2);margin-top:18px;font-weight:500}.legend i{display:inline-block;width:12px;height:12px;border-radius:4px;border:1.5px solid var(--edge);margin-right:6px;vertical-align:-2px}.legend i.dash{background:transparent;border:1.5px dashed var(--line-dash)}.legend i.v{background:var(--acc-soft);border-color:var(--acc);box-shadow:0 0 0 1.5px var(--acc)}.detail{border-top:var(--bw) dashed var(--edge);margin-top:18px;padding-top:16px}.detail-actions{display:flex;justify-content:flex-end;margin-bottom:8px}.detail .row{display:flex;gap:10px;margin-bottom:8px;font-size:13.5px}.detail .k{color:var(--ink-3);min-width:100px;flex:0 0 auto}.detail .v{color:var(--ink-2)}.quote{font-size:14.5px;line-height:1.55;color:var(--ink-2);background:var(--panel);border:var(--bw) solid var(--edge);border-radius:16px;padding:14px 16px;margin-top:14px}.mtag{display:inline-block;font-size:11.5px;font-weight:500;padding:3px 10px;border-radius:999px;border:1.5px solid var(--edge);margin:0 4px 4px 0}.vcard{border:var(--bw) solid var(--edge);border-radius:18px;background:var(--card);box-shadow:var(--sh-sm);padding:14px 16px;margin-bottom:14px}.vdate{font-family:var(--font-disp);font-size:11px;color:var(--acc);letter-spacing:.04em}.vdoc{font-family:var(--font-disp);font-weight:700;font-size:16px;letter-spacing:-.02em;margin:4px 0 9px}.vrow{display:flex;gap:10px;font-size:13.5px;margin-bottom:6px}.vrow .k{color:var(--ink-3);min-width:80px;flex:0 0 auto}.tagline{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px}.tg{font-size:12px;font-weight:500;padding:3px 10px;border-radius:999px;border:1.5px solid var(--edge)}.tg.add{background:var(--ok-soft);color:var(--ok-ink)}.tg.rm{background:var(--danger-soft);color:var(--danger-ink);text-decoration:line-through}.tg.dose{background:var(--acc-soft);color:var(--acc-ink)}.fld{margin-bottom:14px}.fld label{display:block;font-size:12.5px;font-weight:500;color:var(--ink-2);margin-bottom:6px}.fld label em{font-style:normal;color:var(--ink-3);font-weight:400}.chgrow{display:grid;grid-template-columns:1fr 78px 62px 36px;gap:6px;margin-bottom:6px;align-items:center}.chgrow.dose{grid-template-columns:1fr 64px 64px 52px 36px}.chgrow input,.chgrow select{padding:9px 10px;font-size:16px}.chgrow .x{width:36px;height:38px;border:var(--bw) solid var(--edge);background:var(--card);border-radius:11px;color:var(--ink-2);cursor:pointer;font-size:15px;padding:0}.chgrow .x:hover{color:var(--danger);background:var(--danger-soft)}@media (max-width:520px){.chgrow{grid-template-columns:1fr 66px 56px 34px}.chgrow.dose{grid-template-columns:1fr 54px 54px 46px 32px}}.seg{display:flex;gap:6px;margin-bottom:18px}.seg button{flex:1;font:inherit;font-size:13px;font-weight:600;border:var(--bw) solid var(--edge);background:var(--card);color:var(--ink);padding:10px 8px;border-radius:999px;cursor:pointer;transition:.12s}.seg button[aria-selected=true]{background:var(--ink);color:var(--paper);box-shadow:var(--sh-sm)}.seg button:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.conf{display:flex;align-items:center;gap:12px;background:var(--lime);color:var(--on-tile);border:var(--bw) solid var(--edge);border-radius:18px;box-shadow:var(--sh);padding:14px 16px;font-size:13px;margin-bottom:16px}.conf b{font-weight:700}.conf .muted{color:var(--on-tile-2)}.conf .bars{display:flex;gap:3px;flex:0 0 auto}.conf .bars s{width:9px;height:22px;border-radius:4px;border:1.5px solid var(--edge);background:var(--card);display:block}.conf .bars s.f{background:var(--edge)}.card:has(>.stat){display:grid;grid-template-columns:repeat(2,1fr);gap:10px;align-items:stretch}.card:has(>.stat)>:not(.stat){grid-column:1/-1}.card>.stat{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:10px;min-height:98px;border:var(--bw) solid var(--edge);border-radius:16px;padding:13px 14px;color:var(--on-tile)}.card>.stat:nth-of-type(4n+1){background:var(--sun)}.card>.stat:nth-of-type(4n+2){background:var(--sky)}.card>.stat:nth-of-type(4n+3){background:var(--lime)}.card>.stat:nth-of-type(4n){background:var(--lilac)}.stat .lb{font-size:13px;font-weight:600;color:var(--on-tile)}.stat .lb small{display:block;color:var(--on-tile-2);font-size:11.5px;font-weight:400;margin-top:3px;line-height:1.35}.stat .vl{font-family:var(--font-disp);font-size:25px;font-weight:700;letter-spacing:-.03em;white-space:nowrap;margin-top:auto;color:var(--on-tile)}.locked{opacity:.45}.locked .vl{font-size:13px;font-family:Inter Tight,sans-serif;font-weight:500}.dist{display:flex;flex-direction:column;gap:5px;margin-top:4px}.dist .r{display:flex;align-items:center;gap:9px;font-size:12.5px}.dist .n{font-family:var(--font-disp);font-size:11px;width:18px;flex:0 0 auto;color:var(--ink-2);text-align:right}.dist .bar{height:16px;border-radius:6px;border:1.5px solid var(--edge);min-width:10px}.dist .c{color:var(--ink-2);font-family:var(--font-disp);font-size:11px}.ai{background:var(--lilac);color:var(--on-tile);border:var(--bw) solid var(--edge);border-radius:var(--r);box-shadow:var(--sh);padding:20px;margin:16px 0}.ai .t{font-family:var(--font-disp);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-tile-2);margin-bottom:12px;display:block}.ai h3{font-family:var(--font-disp);font-weight:700;font-size:18px;margin:0 0 12px;letter-spacing:-.02em;line-height:1.25}.ai p{margin:0 0 13px;font-size:14.5px;line-height:1.6;color:var(--on-tile)}.ai p:last-child{margin-bottom:0}.ai b{font-weight:700}.ai-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.ai-head .t{margin-bottom:0}.ai-date{font-size:11.5px;color:var(--on-tile-2);margin-bottom:10px}.ai-sub{font-family:var(--font-disp);font-weight:700;font-size:15px;margin:18px 0 4px;letter-spacing:-.02em}.stale-note{font-size:12.5px;color:var(--on-tile);background:var(--sun);border:1.5px solid var(--edge);border-radius:12px;padding:9px 12px;margin-bottom:12px}.flag{background:var(--peach);color:var(--on-tile);border:var(--bw) solid var(--edge);border-radius:16px;padding:14px 16px;margin:18px 0 0}.flag .ft{font-family:var(--font-disp);font-size:10px;font-weight:500;color:var(--on-tile);letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px}.flag ul{margin:0;padding:0;list-style:none}.flag li{font-size:13.5px;line-height:1.5;color:var(--on-tile);padding:8px 0 8px 18px;position:relative;border-top:1px solid var(--edge)}.flag li:first-child{border-top:0;padding-top:0}.flag li:before{content:"·";position:absolute;left:5px;font-weight:700}.qlist{list-style:none;padding:0;margin:8px 0 0}.qlist li{font-size:13.5px;color:var(--on-tile);padding:10px 0 10px 20px;border-top:1px solid var(--edge);position:relative;line-height:1.45}.qlist li:first-child{border-top:0;padding-top:2px}.qlist li:before{content:"—";position:absolute;left:0;color:var(--on-tile-2)}.disc{font-size:12px;color:var(--on-tile-2);line-height:1.5;margin-top:16px;padding-top:14px;border-top:1px solid var(--edge)}.note{font-size:12.5px;color:var(--ink-3);line-height:1.5;border-left:var(--bw) solid var(--line-strong);padding-left:12px;margin-top:14px}@media (max-width:520px){.hd h1{font-size:20px}.card,details.fold,.ai{padding:16px;border-radius:18px}.scale{gap:5px}.detail .k{min-width:88px}:root{--sh:2px 2px 0 var(--edge);--sh-lg:4px 4px 0 var(--edge)}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}@media print{header,.save,.tabbar,.no-print,.visit-form-wrap{display:none!important}body{padding:0;background:#fff}.card,.ai,details.fold{box-shadow:none;break-inside:avoid}}.center-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:24px;text-align:center}.center-screen h1{font-family:var(--font-disp);font-weight:700;font-size:26px;letter-spacing:-.03em;margin:0}.center-screen p{color:var(--ink-2);font-size:14px;max-width:320px;margin:0}.spinner{width:26px;height:26px;border:3px solid var(--line-strong);border-top-color:var(--ink);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.savebar-status{text-align:center;font-size:12.5px;font-weight:500;color:var(--ink-2);margin-top:8px;min-height:16px}.savebar-status.error{color:var(--danger)}.placeholder{color:var(--ink-3);font-size:14px;line-height:1.5}.retro-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--sky);color:var(--on-tile);border:var(--bw) solid var(--edge);border-radius:16px;box-shadow:var(--sh-sm);padding:12px 15px;margin:16px 0;font-size:13px}.retro-banner b{font-weight:700}.retro-banner button{font:inherit;font-size:12.5px;font-weight:600;color:var(--on-tile);background:none;border:0;cursor:pointer;text-decoration:underline;padding:0;flex:0 0 auto}.hd .user{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap;justify-content:flex-end}.hd .user button{font:inherit;font-size:12px;color:var(--ink-3);background:none;border:0;cursor:pointer;padding:0;text-decoration:underline}.access-warn{background:var(--warn-soft);color:var(--on-tile);border:var(--bw) solid var(--edge);border-radius:16px;padding:13px 15px;font-size:13px;line-height:1.5}.access-warn b{font-weight:700}.invite-box{margin-top:16px;padding:18px;border:var(--bw) solid var(--edge);border-radius:18px;background:var(--sun);color:var(--on-tile);box-shadow:var(--sh-sm);text-align:center}.invite-code{font-family:var(--font-disp);font-size:24px;font-weight:700;letter-spacing:.12em;margin-bottom:10px}.invite-link{font-size:14px;font-weight:600;margin-bottom:12px;word-break:break-all}.linklike{font:inherit;font-size:13px;font-weight:500;color:inherit;background:none;border:0;cursor:pointer;text-decoration:underline;padding:0}.access-accept{display:flex;gap:8px;align-items:center}.access-accept input{flex:1}.access-accept .tbtn{flex:0 0 auto;padding:11px 16px}.patient-row{display:flex;flex-direction:column;gap:4px;width:100%;text-align:left;font:inherit;background:var(--card);border:var(--bw) solid var(--edge);border-radius:16px;padding:13px 15px;margin-bottom:10px;cursor:pointer;transition:.12s}.patient-row:hover{transform:translate(-1px,-1px);box-shadow:var(--sh-sm)}.pl-name{font-size:15px;color:var(--ink);font-weight:600}.pl-name small{color:var(--ink-3);font-weight:400;font-size:12.5px}.pl-meta{font-size:12.5px;color:var(--ink-3)}.patient-row.on{background:var(--sky);color:var(--on-tile);box-shadow:var(--sh-sm)}.patient-row.on .pl-name{color:var(--on-tile)}.patient-row.on .pl-meta{color:var(--on-tile-2)}.subnav{margin:14px 0 0;padding-bottom:0}.fc-work{background:var(--sky)}.fc-life{background:var(--peach)}.fc-health{background:var(--lime)}.fc-money{background:var(--sun)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;background:var(--card);border-top:var(--bw) solid var(--edge);padding-bottom:env(safe-area-inset-bottom)}.tabbar button{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;height:var(--tabbar-h);padding:6px 3px;font:inherit;font-size:11px;font-weight:600;color:var(--ink);background:var(--card);border:0;border-left:var(--bw) solid var(--edge);cursor:pointer;transition:.12s}.tabbar button:first-child{border-left:0}.tabbar button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tabbar svg{width:23px;height:23px;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.tabbar button[aria-selected=true]{background:var(--lime);color:var(--on-tile)}.tabbar button:focus-visible{outline:2px solid var(--acc);outline-offset:-3px}.capture{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.capture input{flex:1 1 150px;min-width:130px;width:auto}.capture select{width:auto;flex:0 0 auto}.capture .w-sum{flex:0 0 96px;min-width:0}.capture .w-day{flex:0 0 92px;min-width:0}.folders{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:16px}.folder{background:none;border:0;padding:8px 4px;display:flex;flex-direction:column;align-items:center;gap:9px;border-radius:14px;cursor:pointer;font:inherit;color:var(--ink)}.folder:hover .fic{transform:translate(-2px,-2px)}.folder:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.fic{width:76px;height:54px;border:var(--bw) solid var(--edge);border-radius:4px 12px 12px;position:relative;box-shadow:var(--sh);transition:transform .12s;display:flex;align-items:flex-end;justify-content:flex-end;padding:5px 7px}.fic:before{content:"";position:absolute;top:-12px;left:-2px;width:34px;height:12px;background:inherit;border:var(--bw) solid var(--edge);border-bottom:0;border-radius:5px 9px 0 0}.fic b{font-size:12.5px;font-weight:700;color:var(--ink);background:var(--card);border:1.5px solid var(--edge);border-radius:999px;padding:0 7px;line-height:1.5}.folder-name{font-weight:600;font-size:14px;text-align:center;color:var(--ink)}.folder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.folder-head h2{margin:0}.task{border:var(--bw) solid var(--edge);border-radius:16px;padding:12px 13px;margin-bottom:10px;background:var(--card);display:flex;gap:11px;align-items:flex-start}.task.is-done{background:var(--line-2)}.task.is-done .t-title{text-decoration:line-through;color:var(--ink-3)}.t-body{flex:1;min-width:0}.t-title{font-weight:600;font-size:15px}.t-meta{font-size:12.5px;color:var(--ink-3);margin-top:5px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.t-meta .linklike{font-size:12.5px;color:var(--ink-2)}.dot{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--edge);display:inline-block;margin-right:6px;vertical-align:-1px}.tcheck{width:26px;height:26px;flex:0 0 auto;border:var(--bw) solid var(--edge);border-radius:9px;background:var(--card);padding:0;font-size:14px;line-height:1;cursor:pointer;color:var(--ink)}.tcheck[aria-pressed=true]{background:var(--lime);color:var(--on-tile)}.tcheck:focus-visible{outline:2px solid var(--acc);outline-offset:2px}.steps{margin:9px 0 0;padding:0 0 0 12px;list-style:none;border-left:var(--bw) dashed var(--edge)}.steps li{font-size:14px;padding:4px 0;display:flex;gap:9px;align-items:center}.steps input{width:17px;height:17px;accent-color:var(--ink)}.step-done{text-decoration:line-through;color:var(--ink-3)}.cal-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:16px}.cal-head h2{margin:0;font-size:19px;text-transform:none}.nav-btn{width:40px;height:40px;flex:0 0 auto;border:var(--bw) solid var(--edge);border-radius:12px;background:var(--card);box-shadow:var(--sh-sm);font-size:17px;line-height:1;padding:0;cursor:pointer;color:var(--ink)}.nav-btn:active{transform:translate(2px,2px);box-shadow:none}.cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.wd{font-size:11px;font-weight:700;text-transform:uppercase;text-align:center;color:var(--ink-3);padding-bottom:4px}.day{display:block;width:100%;text-align:left;overflow:hidden;cursor:pointer;border:1.5px solid var(--edge);border-radius:10px;background:var(--card);min-height:62px;padding:5px;font:inherit;color:var(--ink)}.day.pad{border:0;background:transparent;min-height:0;pointer-events:none}.day .n{display:block;font-weight:700;font-size:13px;line-height:1.1}.day.weekend .n{color:var(--ink-3)}.day.today{background:var(--lilac);color:var(--on-tile)}.day.sel{box-shadow:0 0 0 2.5px var(--edge) inset}.day:focus-visible{outline:2px solid var(--acc);outline-offset:1px}.ev{display:block;margin-top:4px;height:7px;border-radius:3px;border:1.5px solid var(--edge);font-size:0;overflow:hidden}.more{display:block;font-size:10px;font-weight:700;color:var(--ink-3);margin-top:3px}@media (min-width:620px){.day{min-height:96px;padding:7px}.day .n{font-size:14px}.ev{height:auto;font-size:10.5px;font-weight:600;line-height:1.5;color:var(--on-tile);padding:1px 5px;border-radius:6px;white-space:nowrap;text-overflow:ellipsis}}.daybox{border:var(--bw) solid var(--edge);border-radius:16px;padding:14px;margin-top:16px;background:var(--lilac);color:var(--on-tile)}.daybox h3{margin:0 0 10px;font-family:var(--font-disp);font-weight:700;font-size:15px;letter-spacing:-.02em}.daylist{list-style:none;padding:0;margin:0 0 12px}.daylist li{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:14px;padding:6px 0;border-top:1px solid var(--edge)}.daylist li:first-child{border-top:0}.daylist-actions{display:flex;gap:12px;align-items:center;flex:0 0 auto}.daylist-actions .linklike{position:relative;overflow:hidden;display:inline-block}.move-date{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;width:100%;height:100%;padding:0;border:0;cursor:pointer}.reclist{list-style:none;padding:0;margin:0}.reclist li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line-2)}.reclist li:first-child{border-top:0}.rec-title{font-size:14.5px;font-weight:600}.rec-title small{display:block;font-weight:400;font-size:12.5px;color:var(--ink-3);margin-top:2px}.mstats{display:grid;gap:10px}@media (min-width:620px){.mstats{grid-template-columns:repeat(3,1fr)}}.mstat{border:var(--bw) solid var(--edge);border-radius:16px;padding:14px;color:var(--on-tile)}.mstat.a{background:var(--lime)}.mstat.b{background:var(--sun)}.mstat.c{background:var(--peach)}.money-big{font-family:var(--font-disp);font-weight:700;font-size:25px;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.money-sub{font-size:13px;color:var(--on-tile-2);margin-top:6px}.pay{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:var(--bw) dashed var(--line-strong)}.pay:last-of-type{border-bottom:0}.pay .nm{flex:1;min-width:0;font-size:15px;font-weight:600}.pay .nm small{display:block;font-weight:400;font-size:12px;color:var(--ink-3);margin-top:2px}.pay .sum{font-weight:700;font-variant-numeric:tabular-nums;flex:0 0 auto}.day-badge{flex:0 0 auto;width:34px;height:34px;border:var(--bw) solid var(--edge);border-radius:10px;background:var(--card);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;font-variant-numeric:tabular-nums}.day-badge.soon{background:var(--sun);color:var(--on-tile)}.pay.done .day-badge{opacity:.45}.pay.done .nm,.pay.done .sum{color:var(--ink-3)}.pay.done .nm{text-decoration:line-through}.pay.done .nm small{text-decoration:none}.pay .linklike{text-decoration:none;font-size:19px;line-height:1;color:var(--ink-3);flex:0 0 auto;padding:0 2px}.pay .linklike:hover{color:var(--danger)}@media (max-width:520px){.tabbar button{font-size:10px;gap:4px}.tabbar svg{width:21px;height:21px}.folders{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:12px}.fic{width:68px;height:48px}.cal{gap:4px}.pay{gap:8px}.pay .nm{font-size:14px}}
