:root{--ink:#193b50;--muted:#657985;--cream:#f8f6f2;--blue:#c5dfee;--lav:#e6dcf1;--sage:#e2ebdb;--peach:#f8dfd0;--border:#e1e6e7;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream)}*{box-sizing:border-box}body{margin:0;display:grid;grid-template-columns:245px 1fr}aside{padding:28px 18px;background:#fffdf9;border-right:1px solid var(--border);height:100vh;position:sticky;top:0;overflow:auto}.brand{display:flex;gap:12px;align-items:center;font:28px Georgia;text-decoration:none;color:var(--ink);letter-spacing:2px;margin:0 8px 30px}.brand b{background:#969f86;color:#fffbe9;border:3px double #eee9d2;border-radius:12px;width:48px;height:53px;text-align:center;font:40px Georgia}.brand small{font:9px Arial;letter-spacing:3px;display:block;margin-top:7px}nav details{padding:7px 0;border-bottom:1px solid var(--border)}nav summary{font-size:10px;font-weight:bold;letter-spacing:1px;text-transform:uppercase;padding:10px 4px;cursor:pointer}nav a{display:flex;align-items:center;gap:10px;padding:8px;text-decoration:none;color:var(--ink);font-size:12px;border-radius:9px;margin:3px 0}.navicon{display:grid;place-items:center;width:29px;height:29px;border-radius:9px;flex-shrink:0;font-size:16px;background:var(--blue)}nav a.active{background:#e6eff3;box-shadow:inset 3px 0 #46738c;font-weight:bold}.sidenote{font:18px/1.7 Georgia;margin:25px 12px}main{padding:28px 4%;max-width:1500px;width:100%;min-width:0}header{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:30px 0}.eyebrow{letter-spacing:2px;font-size:10px;color:var(--muted)}h1{font:40px Georgia;margin:12px 0 8px}h2{font-size:18px;margin:0 0 12px}h3{font-size:15px;margin:0 0 8px}p{line-height:1.7}header p,.muted{color:var(--muted);font-size:13px}header p{margin:0}.demo-banner{border:1px solid #d5e3d0;background:#edf2e9;border-radius:10px;padding:12px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}.demo-banner.real{background:#eaf0f5;border-color:#d5e3ed}.hero{padding:28px;background:var(--blue);border-radius:18px;margin-bottom:22px}.hero h2{font:29px Georgia}.hero p{max-width:650px;font-size:14px}.tag{font-size:10px;font-weight:bold;letter-spacing:1.5px}.card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:22px;margin-bottom:20px;min-width:0}.grid{display:grid;grid-template-columns:1.25fr 1fr;gap:20px}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:22px}.stat{background:#fff;border:1px solid var(--border);border-top:4px solid var(--blue);padding:20px;border-radius:13px}.stat:nth-child(2){border-top-color:#a7bf98}.stat:nth-child(3){border-top-color:#c3abd9}.stat:nth-child(4){border-top-color:#e4b79a}.stat strong{display:block;font:29px Georgia;margin:10px 0}.stat span{font-size:11px;color:var(--muted)}button,.button{display:inline-block;text-decoration:none;border:1px solid transparent;background:var(--ink);color:white;border-radius:8px;padding:11px 15px;font:12px Arial;cursor:pointer}button.secondary,.button.secondary{background:#fff;color:var(--ink);border-color:#d4dfe4}button.soft,.button.soft{background:#edf2f4;color:var(--ink)}button.danger{background:#fae6df;color:#893d35}button:hover,.button:hover{filter:brightness(.95)}.row{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.actions{margin-top:13px}input,textarea,select{width:100%;border:1px solid #cfdadd;border-radius:8px;padding:11px;font:14px Arial;color:var(--ink);background:white}textarea{min-height:95px;resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--ink);flex-shrink:0}label{display:block;font-size:12px;font-weight:bold;margin:12px 0 6px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px}.wide{grid-column:1/-1}.task{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #edf0ef;align-items:center}.task:last-child{border:0}.grow{flex:1;min-width:0;overflow-wrap:anywhere}.task small{display:block;font-size:11px;color:var(--muted);margin:7px 0;line-height:1.5}.done .grow{text-decoration:line-through;color:var(--muted)}.task button{font-size:11px;padding:7px 9px}.empty{padding:20px 0;font-size:13px;color:var(--muted);line-height:1.8}.entry{border-bottom:1px solid var(--border);padding:18px 0;break-inside:avoid;overflow-wrap:anywhere}.entry:last-child{border:0}.entry p{font-size:13px;white-space:pre-wrap}.entry.done h3{text-decoration:line-through}.progress{height:8px;background:#edf0ec;border-radius:8px;overflow:hidden;margin:10px 0}.progress>div{height:100%;background:#8faa7e}.bar-row{display:grid;grid-template-columns:minmax(75px,130px) 1fr 58px;gap:12px;align-items:center;margin:16px 0;font-size:12px}.bar-track{height:20px;background:#eef3f5;border-radius:5px;overflow:hidden}.bar-fill{background:#a8cce0;height:100%;border-radius:5px}.bar-row:nth-child(2n) .bar-fill{background:#c8b4de}.bar-value{text-align:right}.chart-caption{color:var(--muted);font-size:11px;line-height:1.7}.vertical-chart{height:180px;display:flex;align-items:flex-end;gap:12px;padding-top:20px}.v-col{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;gap:7px;font-size:10px;min-width:0}.v-col b{font-size:10px;font-weight:normal}.v-bar{width:80%;max-width:42px;background:#a7cce0;border-radius:5px 5px 0 0;min-height:0}.v-col:nth-child(2n) .v-bar{background:#c9b6df}.v-col span{height:20px;font-size:9px}.ring{width:235px;height:235px;border-radius:50%;padding:12px;background:conic-gradient(#719bb1 var(--angle,0deg),#e5edf0 0);margin:25px auto}.ring-inner{height:100%;border-radius:50%;background:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center}.clock{font:43px Georgia;font-variant-numeric:tabular-nums}.ring small{font-size:10px;color:var(--muted);margin-top:10px}.cal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.cal .card{padding:15px;margin:0}.cal .task{display:block}.cal .task small{font-size:10px}.cal h2{font-size:13px}.links{display:flex;gap:8px;flex-wrap:wrap;padding:12px 0 25px}.links a{background:#eaf0f2;padding:8px 11px;border-radius:8px;font-size:11px;text-decoration:none;color:var(--ink)}.print-menu{position:relative}.print-menu>summary{list-style:none;cursor:pointer;font-size:12px;padding:9px 13px;border:1px solid var(--border);border-radius:8px;background:white;white-space:nowrap}.print-menu>div{position:absolute;right:0;top:40px;padding:18px;width:260px;background:white;border:1px solid var(--border);box-shadow:0 8px 30px #193b5015;z-index:10;border-radius:12px}.print-menu p{font-size:12px}.heat{display:flex;gap:6px;margin:10px 0}.heat span{width:26px;height:26px;display:grid;place-items:center;border-radius:6px;background:#edf0ed;font-size:10px}.heat .yes{background:#b9d1a9;color:#284525}.notice{padding:13px 16px;background:#fff0df;border-radius:9px;font-size:12px;line-height:1.8;margin-bottom:14px}footer{display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--border);padding:20px 0;font-size:11px;color:var(--muted);margin-top:25px}a{color:var(--ink)}:focus-visible{outline:3px solid #7699b2;outline-offset:3px}.compact .card{padding:15px}.compact .task{padding:9px 0}@media(max-width:1000px){body{grid-template-columns:205px 1fr}.stats{grid-template-columns:1fr 1fr}.grid{grid-template-columns:1fr}.cal{grid-template-columns:1fr 1fr}aside{padding:22px 12px}}@media(max-width:620px){body{display:block}aside{position:static;height:auto;padding:18px}nav{max-height:200px;overflow:auto}.brand{margin-bottom:15px}.sidenote{display:none}main{padding:20px 16px}h1{font-size:32px}.form-grid{grid-template-columns:1fr}.cal{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:15px}.stat strong{font-size:24px}.task{flex-wrap:wrap}header{align-items:flex-start}footer{flex-wrap:wrap}.bar-row{grid-template-columns:90px 1fr 45px}}@media print{@page{size:A4;margin:15mm}body{display:block;background:white}aside,.demo-banner,#utilities,footer,.actions,.links,.entry-form,.filters,button,.button,#status,.noprint{display:none!important}main{padding:0;max-width:none}header{margin:0 0 20px}h1{font-size:28px}.card,.entry,.stat{break-inside:avoid;box-shadow:none}.grid{display:block}.stats{grid-template-columns:repeat(4,1fr)}.task input{display:none}.single-print .entry:not(.print-selected){display:none!important}.single-print .chart-card,.single-print .stats{display:none!important}*{print-color-adjust:exact;-webkit-print-color-adjust:exact}}
.record-options{position:relative;font-size:12px}.record-options summary{cursor:pointer;padding:7px 12px;border-radius:8px;background:#edf2f4;list-style:none}.record-options button{position:absolute;right:0;top:32px;white-space:nowrap;z-index:3;box-shadow:0 5px 15px #193b5015}@media print{.record-options{display:none!important}}
#license-panel[hidden]{display:none!important}#license-panel{position:fixed;inset:0;z-index:1000;background:#f8f6f2f5;display:flex;align-items:center;justify-content:center;padding:24px;overflow:auto}.license-box{background:#fff;border:1px solid var(--border);border-radius:20px;padding:32px;max-width:560px;width:100%;box-shadow:0 15px 70px #193b5014}.license-box h1{font-size:31px}.license-box p{font-size:13px}.license-locked{overflow:hidden}#license-message{color:#89442c;min-height:20px}@media print{#license-panel{display:none!important}.license-locked main,.license-locked aside{display:none!important}}
.mobile-menu,.mobile-shade{display:none}html{overflow-x:hidden}main,.card,.grow,.grid>*,.form-grid>*{min-width:0}input,textarea,select{max-width:100%}.entry p{overflow-wrap:anywhere}.navicon{line-height:1}@media(max-width:760px){body{display:block}.mobile-menu{display:block;position:sticky;top:0;z-index:80;border-radius:0;width:100%;min-height:48px;text-align:left;padding:14px 20px;border-bottom:1px solid #ffffff30}.mobile-shade{position:fixed;inset:48px 0 0;z-index:85;background:#193b5066;border:0;border-radius:0}.nav-open .mobile-shade{display:block}aside{position:fixed;left:0;top:48px;bottom:0;height:calc(100dvh - 48px);width:min(310px,85vw);z-index:90;transform:translateX(-105%);transition:transform .18s ease;overflow-y:auto;overscroll-behavior:contain;padding:22px 16px;box-shadow:5px 0 25px #193b5015}.nav-open aside{transform:translateX(0)}.nav-open{overflow:hidden}aside nav{max-height:none;overflow:visible}aside .brand{font-size:25px;margin-bottom:20px}aside nav a{min-height:44px;font-size:14px}aside summary{min-height:44px;display:flex;align-items:center}.sidenote{display:none}main{padding:18px 14px}header{margin:24px 0;gap:10px;flex-wrap:wrap}header h1{font-size:31px}#utilities{margin-left:auto}.demo-banner{padding:13px;gap:10px}.demo-banner>span{flex:1 1 210px;font-size:12px;line-height:1.6}.demo-banner button{min-height:44px}.grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.stat{padding:14px}.stat strong{font-size:26px}.card{padding:18px;margin-bottom:15px}.hero{padding:22px}.cal{grid-template-columns:1fr}.task{flex-wrap:wrap;align-items:flex-start;gap:12px}.task>.grow{flex:1 1 calc(100% - 40px)}.task>button{margin-left:30px}.task input[type=checkbox]{width:22px;height:22px}.actions button,.actions .button,.row>button{min-height:44px}.actions{gap:8px}.actions>*{max-width:100%}input,select,textarea{font-size:16px;min-height:46px}input[type=checkbox]{min-height:22px}label{line-height:1.6}.ring{width:210px;height:210px}.clock{font-size:40px}.bar-row{grid-template-columns:minmax(70px,100px) 1fr 40px;gap:8px;font-size:11px}.bar-row>span:first-child{overflow-wrap:anywhere}.heat{flex-wrap:wrap}.heat span{width:30px;height:30px}.links a{min-height:40px;display:flex;align-items:center}.print-menu>summary{min-height:44px;display:flex;align-items:center}.print-menu>div{max-width:calc(100vw - 28px)}.record-options summary{min-height:44px;min-width:44px;display:grid;place-items:center}.license-box{padding:24px 20px}.license-box h1{font-size:27px}.license-box .row>button{flex:1 1 180px}.license-locked .mobile-menu,.license-locked .mobile-shade{display:none!important}.license-locked #side-panel{transform:translateX(-105%)}footer{font-size:11px;line-height:1.8;flex-wrap:wrap}.vertical-chart{gap:6px}}@media(prefers-reduced-motion:reduce){aside{transition:none}}@media print{.mobile-menu,.mobile-shade{display:none!important}}

@media(max-width:760px){aside{visibility:hidden}.nav-open aside{visibility:visible}}
/* v0.6.1: persistent top navigation for mobile Safari and Chrome. */
@media(max-width:760px){
 body{padding-top:calc(52px + env(safe-area-inset-top,0px))}
 #mobile-menu{position:fixed!important;inset:0 0 auto 0!important;width:100%;height:calc(52px + env(safe-area-inset-top,0px));min-height:52px;padding:calc(14px + env(safe-area-inset-top,0px)) 20px 14px;z-index:1200;display:block;background:#193b50;color:#fff;border-radius:0;margin:0;box-shadow:0 2px 8px #193b5014}
 #mobile-shade{top:calc(52px + env(safe-area-inset-top,0px));z-index:1100}
 #side-panel{top:calc(52px + env(safe-area-inset-top,0px));height:calc(100dvh - 52px - env(safe-area-inset-top,0px));z-index:1150;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px))}
 .license-locked{padding-top:0}
 #license-panel{z-index:1300}
}
@media print{body{padding-top:0!important}}
