:root{--brand-dark:#3c005a;--brand-mid:#5a0080;--brand-light:#fff2ed;--brand-text:#7a2200;--brand-primary:#fe5b1b;--col-header-bg:#f3eef7;--col-header-txt:#3c005a;--status-overdue:#c24632;--status-overdue-chip:#a5402f;--status-overdue-bg:#fef8f6;--status-overdue-tint:211,84,66;--status-today:#a97a28;--status-today-chip:#8f6a24;--status-today-bg:#fdf7ef;--status-today-tint:196,146,58;--status-ok:#15803d;--status-ok-chip:#11692f;--status-ok-bg:#eefaf1;--status-ok-tint:21,128,61;--surface-dark:#1d150f;--surface-dark-2:#12100c;--bg-page:#f5f1ea;--bg-card:#fffdfb;--border:#eee6da;--text-main:#241d17;--text-sub:#8a7a6d;--text-muted:#a89d8f;--font-sans:'Manrope',Arial,'Helvetica Neue',sans-serif;--radius-card:18px;--radius-btn:12px;--shadow-card:0 1px 2px rgba(30,20,10,.05),0 4px 14px rgba(30,20,10,.06);--max-width:clamp(56.25rem,5.9211rem + 89.47vw,77.5rem);--fs-2xs:clamp(0.5625rem,0.5208rem + 0.185vw,0.625rem);--fs-xs:clamp(0.625rem,0.5833rem + 0.185vw,0.6875rem);--fs-sm:clamp(0.6875rem,0.6042rem + 0.37vw,0.8125rem);--fs-base:clamp(0.8125rem,0.7292rem + 0.37vw,0.9375rem);--fs-md:clamp(0.875rem,0.7917rem + 0.37vw,1rem);--fs-lg:clamp(1rem,0.7917rem + 0.93vw,1.3125rem);--fs-xl:clamp(1.125rem,0.875rem + 1.11vw,1.5rem);--fs-2xl:clamp(1.75rem,1.5rem + 1.11vw,2.125rem);--space-1:clamp(0.375rem,0.2917rem + 0.37vw,0.5rem);--space-2:clamp(0.5rem,0.4167rem + 0.37vw,0.625rem);--space-3:clamp(0.625rem,0.4583rem + 0.74vw,0.875rem);--space-4:clamp(0.875rem,0.7083rem + 0.74vw,1.125rem);--space-5:clamp(1rem,0.6667rem + 1.48vw,1.5rem);--tap-min:44px;--tap-size:clamp(2.75rem,2.5833rem + 0.74vw,3.25rem);--bar-thin:clamp(0.5rem,0.25rem + 1.11vw,0.875rem)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-size:16px;background:#dde1e7;scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg-page);color:var(--text-main);min-height:100vh;max-width:var(--max-width);margin:0 auto;box-shadow:0 0 40px rgba(0,0,0,.08);position:relative}@media (max-width:320px){html{font-size:14px}}button,input,textarea{font-family:var(--font-sans);-webkit-appearance:none}button:focus-visible,input:focus-visible,[role="button"]:focus-visible,[role="link"]:focus-visible{outline:2px solid var(--brand-dark);outline-offset:2px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}