:root{--font:"Segoe UI", system-ui, -apple-system, sans-serif;--font-display:var(--font);--text:#1c1917;--muted:#6b645c;--bg:#f4f1ea;--bg-2:#ebe6dc;--surface:#fffcf7;--surface-2:#f7f2e9;--border:#ddd4c6;--accent:#2f5bff;--accent-2:#1e3fb3;--accent-text:#fff;--ok:#1f7a4d;--ok-bg:#e4f6ec;--warn:#b42318;--warn-bg:#fdeceb;--planned:#8a8378;--shadow:0 10px 30px #1c19170f;--radius:1.25rem;--radius-sm:.85rem;--pad:1.1rem;--max:36rem;--tabbar:4.4rem;--safe-bottom:env(safe-area-inset-bottom,0px);font-size:18px;line-height:1.4}[data-theme=aurora]{--font:"Segoe UI", ui-rounded, system-ui, sans-serif;--font-display:var(--font);--text:#16181d;--muted:#667085;--bg:#eef2f8;--bg-2:#e3e9f4;--surface:#fff;--surface-2:#f5f7fb;--border:#d9e0ea;--accent:#3b6cff;--accent-2:#1d4ed8;--accent-text:#fff;--ok:#0f7a4a;--ok-bg:#e6f7ee;--warn:#c2410c;--warn-bg:#fff1e8;--planned:#98a2b3;--shadow:0 12px 32px #3b6cff1f;--radius:1.4rem}[data-theme=night]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font:system-ui, "Segoe UI", sans-serif;--font-display:var(--font);--text:#f4efe9;--muted:#b3aaa2;--bg:#121212;--bg-2:#1a1a1a;--surface:#1c1c1e;--surface-2:#262628;--border:#3a3532;--accent:#e8a598;--accent-2:#c47c70;--accent-text:#1a1210;--ok:#8fd6a8;--ok-bg:#173524;--warn:#ff8a80;--warn-bg:#3b1f1c;--planned:#8a837c;--shadow:none;--radius:1.05rem}[data-theme=linen]{--font:"Iowan Old Style", Palatino, "Palatino Linotype", Georgia, serif;--font-display:"Iowan Old Style", Palatino, Georgia, serif;--text:#2b2418;--muted:#7a6f5d;--bg:#f3ecdf;--bg-2:#e9dfcc;--surface:#fbf6ec;--surface-2:#f1e8d6;--border:#d3c6ae;--accent:#9a4a28;--accent-2:#6f3018;--accent-text:#fbf6ec;--ok:#3d6b3a;--ok-bg:#e7f0df;--warn:#8c2f22;--warn-bg:#f5e4dc;--planned:#9a8f7a;--shadow:none;--radius:.2rem;--max:32rem}[data-theme=clinic]{--font:"Segoe UI", system-ui, sans-serif;--font-display:var(--font);--text:#134e4a;--muted:#5b7c78;--bg:#e7f4f1;--bg-2:#d5ebe6;--surface:#fff;--surface-2:#f3fbf9;--border:#c5ddd8;--accent:#0f766e;--accent-2:#115e59;--accent-text:#f0fdfa;--ok:#047857;--ok-bg:#d1fae5;--warn:#b45309;--warn-bg:#fef3c7;--planned:#94a3b8;--shadow:0 8px 24px #0f766e1a;--radius:1.6rem}[data-theme=folio]{--font:"Segoe UI", Helvetica, Arial, sans-serif;--font-display:"Segoe UI", Helvetica, Arial, sans-serif;--text:#141414;--muted:#5c5c5c;--bg:#f6f4ef;--bg-2:#ece8df;--surface:#fffcf7;--surface-2:#f3efe6;--border:#141414;--accent:#1f6b4a;--accent-2:#154c35;--accent-text:#f7f4ee;--ok:#1f6b4a;--ok-bg:#e4f3ea;--warn:#9f1239;--warn-bg:#fde8ee;--planned:#6b6b6b;--shadow:none;--radius:.28rem;--max:52rem}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--text);background:var(--bg);font-family:var(--font);margin:0}h1,h2,h3,.brand{font-family:var(--font-display)}button,input,textarea,select{font:inherit}a{color:var(--accent)}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-frame{background:var(--bg);min-height:100dvh;display:flex}.rail{display:none}.column{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{max-width:var(--max);justify-content:space-between;align-items:center;gap:.6rem;width:100%;margin:0 auto;padding:.7rem 1rem .4rem;display:flex}.brand{letter-spacing:-.03em;color:var(--text);font-size:1.15rem;font-weight:750;text-decoration:none}.topbar-tools{align-items:center;gap:.5rem;display:flex}.theme-switcher{background:var(--surface);border:1px solid var(--border);border-radius:999px;gap:.28rem;padding:.18rem;display:flex}.theme-dot{cursor:pointer;border:1px solid #0000001f;border-radius:999px;width:1.05rem;height:1.05rem;min-height:0;padding:0}.theme-dot-aurora{background:#3b6cff}.theme-dot-night{background:#1c1c1e}.theme-dot-linen{background:#c4a574}.theme-dot-clinic{background:#0f766e}.theme-dot-folio{background:#1f6b4a}.theme-dot.is-on{outline:2px solid var(--text);outline-offset:1px}.page-motion{flex-direction:column;flex:1;min-width:0;display:flex}.page{width:100%;max-width:var(--max);padding:.4rem var(--pad) calc(var(--tabbar) + var(--safe-bottom) + 1.2rem);flex:1;margin:0 auto}.column:not(:has(.tabbar)) .page{padding-bottom:2.2rem}.page-narrow{max-width:26rem}h1{letter-spacing:-.03em;margin:.2rem 0 .4rem;font-size:1.7rem;line-height:1.15}h2{margin:1.6rem 0 .6rem;font-size:1.05rem}h3{justify-content:space-between;gap:.5rem;margin:0;font-size:1rem;display:flex}.lead,.hint,.tag{color:var(--muted)}.hint,.tag{font-size:.88rem}.banner{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:start;gap:.6rem;margin:.6rem 0 1rem;padding:.7rem .85rem;font-size:.9rem;display:flex}.hero{margin:1.2rem 0 1.4rem}.column:not(:has(.topbar)) .page-narrow{flex-direction:column;justify-content:center;padding-top:2.4rem;display:flex}.column:not(:has(.topbar)) .hero{margin:0 0 1.6rem}.column:not(:has(.topbar)) .hero h1{font-size:2.15rem}.hero p{color:var(--muted);margin:.4rem 0 0}.stack{flex-direction:column;gap:.75rem;display:flex}.row{gap:.75rem;display:flex}.row>*{flex:1;min-width:0}form{flex-direction:column;gap:.75rem;display:flex}label{flex-direction:column;gap:.28rem;font-size:.92rem;font-weight:600;display:flex}select,input,textarea{font:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);min-height:2.8rem;padding:.7rem .8rem}textarea{resize:vertical;min-height:5.5rem}input[type=checkbox]{width:1.2rem;height:1.2rem;min-height:0}fieldset{border:0;flex-wrap:wrap;gap:.4rem;margin:0;padding:0;display:flex}legend{margin-bottom:.4rem;padding:0;font-weight:600}.day-chip{border:1px solid var(--border);background:var(--surface);min-width:2.5rem;min-height:2.5rem;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;justify-content:center;align-items:center;padding:0 .45rem;font-weight:600;display:inline-flex}.day-chip input{opacity:0;pointer-events:none;position:absolute}.day-chip.is-on{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.day-chip:has(input:checked){background:var(--accent);border-color:var(--accent);color:var(--accent-text)}button,.button{font:inherit;background:var(--accent);min-height:2.9rem;color:var(--accent-text);cursor:pointer;text-align:center;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.55rem 1rem;font-weight:650;text-decoration:none;display:inline-flex}button.secondary,.button.secondary{background:var(--surface);color:var(--text);border-color:var(--border)}button.ghost,.button.ghost,button.link{color:var(--accent);background:0 0;border:0;min-height:0;padding:.2rem .15rem;font-weight:600;text-decoration:none}button:disabled{opacity:.55;cursor:default}.error{color:var(--warn);font-weight:650}.ok{color:var(--ok);font-weight:650}ul.cards,ul.entries,ul.plain{flex-direction:column;gap:.65rem;margin:.8rem 0;padding:0;list-style:none;display:flex}.card,.panel,.item,.question{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.95rem 1rem}.card{color:var(--text);flex-direction:column;gap:.2rem;text-decoration:none;display:flex}.card strong{font-size:1.05rem}.week-strip{grid-template-columns:repeat(7,1fr);gap:.3rem;margin:.8rem 0 1rem;display:grid}.week-day{color:var(--muted);background:0 0;border:0;border-radius:.9rem;flex-direction:column;align-items:center;gap:.15rem;min-height:0;padding:.45rem .1rem;font-weight:600;display:flex}.week-day .num{color:var(--text);font-size:1.05rem}.week-day.is-on{background:var(--text);color:var(--bg)}.week-day.is-on .num{color:inherit}.day-nav{text-align:center;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.day-title{text-transform:capitalize;font-weight:700}.progress{background:var(--bg-2);border-radius:999px;height:.4rem;margin:.3rem 0 1rem;overflow:hidden}.progress>span{background:var(--ok);height:100%;display:block}.stats{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:.4rem 0 1rem;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);text-align:center;padding:.65rem .5rem}.stat b{font-size:1.2rem;display:block}.stat span{color:var(--muted);font-size:.75rem}.entry{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-direction:column;gap:.7rem;padding:.95rem 1rem;display:flex}.entry-main{grid-template-columns:auto 1fr auto;align-items:center;gap:0 .75rem;display:grid}.entry-time{font-variant-numeric:tabular-nums;letter-spacing:-.04em;font-size:1.35rem;font-weight:750}.entry-label{font-weight:650}.entry-state{color:var(--muted);grid-column:2;font-size:.88rem}.badge{letter-spacing:.02em;text-transform:uppercase;background:var(--surface-2);color:var(--muted);white-space:nowrap;border-radius:999px;padding:.22rem .5rem;font-size:.72rem;font-weight:700}.entry-marked{background:var(--ok-bg);border-color:#0000}.entry-marked .badge{background:var(--ok);color:#fff}.entry-no-mark{background:var(--warn-bg);border-color:#0000}.entry-no-mark .badge{background:var(--warn);color:#fff}.entry-actions{flex-wrap:wrap;align-items:end;gap:.5rem;display:flex}.mark-btn{width:100%}.tabbar{padding:.35rem .6rem calc(.35rem + var(--safe-bottom));background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);gap:.2rem;display:grid;position:sticky;bottom:0}.tab{min-height:0;color:var(--muted);background:0 0;border:0;border-radius:.8rem;flex-direction:column;align-items:center;gap:.1rem;padding:.35rem .2rem;font-size:.72rem;font-weight:650;text-decoration:none;display:flex}.tab.is-on{color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent)}.tab svg{width:1.35rem;height:1.35rem}.fab-wrap{justify-content:flex-end;margin-top:1rem;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.1rem}.split-actions{flex-direction:column;gap:.55rem;display:flex}.back{color:var(--muted);align-items:center;gap:.25rem;margin-bottom:.5rem;font-weight:600;text-decoration:none;display:inline-flex}.toolbar{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;display:flex}.question{flex-direction:column;gap:.35rem;display:flex}.question-asked .question-text{color:var(--muted)}.item-fields{flex-direction:column;gap:.6rem;display:flex}.empty{color:var(--muted);text-align:center;padding:1.4rem .4rem}.wip{opacity:.92;margin:0 0 1.2rem}.wip-head{justify-content:space-between;align-items:center;gap:.6rem;margin-bottom:.4rem;display:flex}.wip-head h2{margin:0}.wip-badge{letter-spacing:.04em;text-transform:uppercase;background:var(--warn-bg);color:var(--warn);border-radius:999px;flex-shrink:0;padding:.22rem .5rem;font-size:.72rem;font-weight:700}.wip-drop{border:1.5px dashed var(--border);border-radius:var(--radius-sm);color:var(--muted);pointer-events:none;-webkit-user-select:none;user-select:none;flex-direction:column;align-items:center;gap:.2rem;margin-top:.7rem;padding:1.1rem .8rem;display:flex}.wip-drop em{font-size:.82rem;font-style:normal}[data-theme=linen] .tabbar{display:none}[data-theme=linen] .page{padding-bottom:2.5rem}[data-theme=linen] button,[data-theme=linen] .button{border-radius:.15rem}[data-theme=linen] .card,[data-theme=linen] .entry,[data-theme=linen] .panel,[data-theme=linen] .auth-card{box-shadow:none;background:0 0;border-top:0;border-left:0;border-right:0;border-radius:0;padding-left:0;padding-right:0}[data-theme=linen] .week-day.is-on{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);background:0 0}[data-theme=night] .tabbar{background:#161616}[data-theme=clinic] .card,[data-theme=clinic] .entry{border:0}[data-theme=folio] .theme-switcher,[data-theme=night] .theme-switcher,[data-theme=linen] .theme-switcher{border-color:var(--border)}@media (width>=720px){:root{font-size:19px}.stats{gap:.75rem}.page{padding-top:.8rem}}@media (width>=960px){[data-theme=folio] .app-frame:not(.guest){grid-template-columns:15.5rem 1fr;display:grid}[data-theme=folio] .rail{color:#f4efe6;background:#141414;flex-direction:column;gap:.4rem;padding:1.3rem 1rem;display:flex}[data-theme=folio] .rail .brand,[data-theme=folio] .rail a{color:#f4efe6;text-decoration:none}[data-theme=folio] .rail-nav{flex-direction:column;gap:.2rem;margin-top:1.4rem;display:flex}[data-theme=folio] .rail-nav a{border-radius:.25rem;padding:.55rem .7rem}[data-theme=folio] .rail-nav a.is-on{background:#1f6b4a}[data-theme=folio] .tabbar{display:none}[data-theme=folio] .page{max-width:44rem;padding-bottom:3rem}[data-theme=aurora] .page,[data-theme=clinic] .page,[data-theme=night] .page{max-width:40rem}}@media (width<=480px){:root{font-size:17px}.row{flex-direction:column}.entry-time{font-size:1.2rem}}.tab{font-size:.62rem}.linen-nav{flex:1;gap:.7rem;font-size:.88rem;display:flex;overflow-x:auto}.linen-nav a{color:var(--muted);white-space:nowrap;padding-bottom:.15rem;text-decoration:none}.linen-nav a.is-on{color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.dash-grid{grid-template-columns:1fr 1fr;gap:.7rem;margin:.8rem 0 1.2rem;display:grid}.tile{background:var(--surface);border-radius:var(--radius);color:var(--text);box-shadow:var(--shadow);flex-direction:column;justify-content:space-between;min-height:6.2rem;padding:1rem .9rem;text-decoration:none;display:flex}.tile b{font-size:1.15rem}.tile span{color:var(--muted);font-size:.85rem}.night-callout{gap:.45rem}.night-callout .button,.night-callout button{margin-top:.4rem}.timeline{margin:0;padding:0;list-style:none}.timeline>li{border-left:2px solid var(--border);margin-bottom:1.2rem;padding-left:.9rem}.journal-table{border-collapse:collapse;width:100%;font-size:.92rem}.journal-table th,.journal-table td{text-align:left;border-bottom:1px solid var(--border);padding:.45rem .4rem}.achievement-on{background:var(--ok-bg)}.lede{color:var(--muted);font-size:1.05rem}.demo-banner{max-width:var(--max);width:calc(100% - 2rem);margin:0 auto .4rem}@media (prefers-reduced-motion:no-preference){.card,.tile,.entry,.tab{transition:transform .18s,box-shadow .18s}.card:active,.tile:active,.tab:active{transform:scale(.98)}button,.button{transition:transform .15s,background-color .15s,opacity .15s}}[data-theme=aurora] .home h1{font-size:2rem}[data-theme=night] .home h1{font-size:2.1rem}[data-theme=clinic] .dash-grid .tile{border:0}[data-theme=linen] .topbar{flex-wrap:wrap}[data-theme=folio] .journal-table{border:1px solid var(--border)}
