:root{color-scheme:light;font-family:Trebuchet MS,Segoe UI,sans-serif;line-height:1.5;color:#162032;background:radial-gradient(circle at top right,rgba(197,111,58,.18),transparent 28%),linear-gradient(180deg,#f5eee5,#edf1f5 48%,#f8fafc);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}a{color:inherit}button,input,textarea,select{font:inherit}.app-shell{min-height:100vh}.page{max-width:920px;margin:0 auto;padding:1rem 1rem 6rem}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:.9rem 1rem;background:#12304aeb;color:#f8fafc;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar__brand{font-size:1.05rem;font-weight:700;letter-spacing:.04em}.topbar__actions{display:flex;align-items:center;gap:.6rem}.segmented{display:inline-flex;padding:.18rem;border-radius:999px;background:#ffffff29}.segmented button{border:0;border-radius:999px;padding:.35rem .7rem;background:transparent;color:inherit}.segmented button[data-active=true]{background:#f4efe7;color:#12304a}.hero{padding:1rem 0 .2rem}.hero h1{margin:0;font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:-.04em}.hero p{margin:.6rem 0 0;color:#55606f}.card-grid{display:grid;gap:1rem}.card{border:1px solid rgba(18,48,74,.08);border-radius:1.25rem;padding:1rem;background:#ffffffe6;box-shadow:0 14px 40px #12304a14}.card h2,.card h3{margin-top:0}.pill{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border-radius:999px;background:#eef3fb;color:#12304a;font-size:.85rem;font-weight:700}.pill--alert{background:#f9e3d3;color:#8a471e}.stack{display:grid;gap:.75rem}.field{display:grid;gap:.35rem}.field input,.field textarea,.field select{width:100%;padding:.9rem 1rem;border:1px solid rgba(18,48,74,.12);border-radius:.9rem;background:#fff}.button-row{display:flex;flex-wrap:wrap;gap:.75rem}.button{border:0;border-radius:.95rem;padding:.95rem 1.15rem;background:#12304a;color:#f7f5f2;font-weight:700}.button--secondary{background:#e6edf5;color:#12304a}.button--ghost{background:transparent;color:#12304a;border:1px solid rgba(18,48,74,.12)}.list{display:grid;gap:.75rem}.task-row{display:grid;gap:.7rem;padding:1rem;border-radius:1rem;background:#fbfcfd;border:1px solid rgba(18,48,74,.08)}.task-row__head{display:flex;justify-content:space-between;gap:.75rem}.task-row__toggle{display:inline-flex;align-items:center;gap:.45rem}.note{color:#697484;font-size:.93rem}.split{display:grid;gap:1rem}.admin-links{display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.nav-card{padding:1rem;border-radius:1rem;background:#163a59;color:#fff;text-decoration:none}.signature-pad{border-radius:1rem;border:1px dashed rgba(18,48,74,.18);background:#fff}.signature-pad canvas{width:100%;height:220px;display:block}.plan-layout{display:grid;gap:1rem}.plan-list__header,.plan-editor__header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.plan-list__item{width:100%;display:grid;gap:.3rem;text-align:left;border:1px solid rgba(18,48,74,.1);border-radius:1rem;padding:.95rem 1rem;background:#fbfcfd;color:inherit}.plan-list__item--active{border-color:#12304a59;background:#eef3fb}.plan-matrix-wrap{overflow-x:auto;margin:0 -1rem;padding:0 1rem}.plan-matrix{width:100%;min-width:1180px;border-collapse:collapse}.plan-matrix th,.plan-matrix td{vertical-align:top;padding:.55rem;border-bottom:1px solid rgba(18,48,74,.08)}.plan-matrix th{position:sticky;top:0;background:#f5f8fb;color:#516173;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em}.plan-matrix input,.plan-matrix textarea{width:100%;padding:.7rem .8rem;border:1px solid rgba(18,48,74,.12);border-radius:.8rem;background:#fff}.plan-matrix textarea{min-height:4.6rem;resize:vertical}.plan-matrix__stack{display:grid;gap:.45rem}.plan-matrix__checkbox{display:inline-grid;justify-items:center;gap:.3rem;color:#516173;font-size:.85rem}.month-toggle{min-width:3.4rem;border:1px solid rgba(18,48,74,.12);border-radius:.8rem;padding:.65rem .4rem;background:#f5f8fb;color:#12304a;font-weight:700}.month-toggle--active{background:#12304a;border-color:#12304a;color:#f7f5f2}@media(min-width:768px){.split{grid-template-columns:1.1fr .9fr}.plan-layout{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}}
