@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap");:root,[data-theme=light]{--font-display:"Cormorant Garamond",Georgia,serif;--font-body:"Manrope",-apple-system,BlinkMacSystemFont,sans-serif;--text-xs:clamp(0.75rem,0.72rem + 0.2vw,0.875rem);--text-sm:clamp(0.9rem,0.84rem + 0.25vw,1rem);--text-base:clamp(1rem,0.96rem + 0.2vw,1.125rem);--text-lg:clamp(1.2rem,1rem + 0.6vw,1.5rem);--text-xl:clamp(1.7rem,1.2rem + 1.2vw,2.5rem);--text-2xl:clamp(2.4rem,1.8rem + 2.4vw,3.75rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--color-bg:#f6f0ea;--color-surface:#fbf6f1;--color-surface-2:#fffaf6;--color-surface-offset:#efe5dc;--color-border:#dfd1c5;--color-divider:#e7ddd4;--color-text:#241917;--color-text-muted:#85756d;--color-text-faint:#b8aaa1;--color-text-inverse:#fffaf7;--color-primary:#bf562b;--color-primary-hover:#a84823;--color-primary-highlight:#f0d8c8;--color-secondary:#dfab77;--color-secondary-highlight:#f3e2cf;--color-success:#647642;--color-success-highlight:#dbe0cd;--color-warning:#98603b;--color-warning-highlight:#e8d7c8;--color-error:#a13a2e;--color-error-highlight:#f1d9d3;--radius-sm:.4rem;--radius-md:.75rem;--radius-lg:1rem;--radius-xl:1.35rem;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(52,33,24,.04),0 8px 24px rgba(52,33,24,.04);--shadow-md:0 2px 6px rgba(52,33,24,.05),0 18px 40px rgba(52,33,24,.08);--sidebar:272px;--color-seasonal-accent:var(--color-primary);--color-seasonal-highlight:var(--color-primary-highlight)}[data-theme=dark]{--color-bg:#1d1714;--color-surface:#251f1b;--color-surface-2:#2b241f;--color-surface-offset:#342a24;--color-border:#493b33;--color-divider:#3a2f29;--color-text:#efe4da;--color-text-muted:#c3b2a6;--color-text-faint:#8b786d;--color-text-inverse:#201714;--color-primary:#d77747;--color-primary-hover:#e38b60;--color-primary-highlight:#4b3429;--color-secondary:#ebb67b;--color-secondary-highlight:#4b3a2b;--color-success:#93a96a;--color-success-highlight:#36402d;--color-warning:#cf9167;--color-warning-highlight:#4d392f;--color-error:#d9705f;--color-error-highlight:#4a2b26;--shadow-sm:0 1px 2px rgba(0,0,0,.22);--shadow-md:0 12px 32px rgba(0,0,0,.34)}[data-season=halloween]{--color-seasonal-accent:#a8541f;--color-seasonal-highlight:#ead2b3}[data-season=christmas]{--color-seasonal-accent:#7a4a3a;--color-seasonal-highlight:#e3d6c4}[data-season=thanksgiving]{--color-seasonal-accent:#b9682f;--color-seasonal-highlight:#f0ddc4}[data-season=new_year]{--color-seasonal-accent:#ab8b4e;--color-seasonal-highlight:#ece0c4}[data-season=easter]{--color-seasonal-accent:#c48a7a;--color-seasonal-highlight:#f4e3dc}[data-season=spring]{--color-seasonal-accent:#8a9b5e;--color-seasonal-highlight:#e4e9d5}[data-season=summer]{--color-seasonal-accent:#d99a4e;--color-seasonal-highlight:#f5e4c8}[data-season=fall]{--color-seasonal-accent:#a8541f;--color-seasonal-highlight:#ead2b3}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;scroll-behavior:smooth}body{min-height:100vh;font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);font-size:var(--text-base);line-height:1.6}h1,h2,h3{font-family:var(--font-display);font-weight:600;line-height:1.15}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}img,svg{display:block;max-width:100%}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{max-width:1200px;margin:0 auto;padding-inline:var(--space-4)}.section{padding:var(--space-12) 0}.grid{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}.stack{display:grid;grid-gap:1rem;gap:1rem}.two-col{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:1.5rem;gap:1.5rem}.muted{color:var(--color-text-muted)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.pill{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .85rem;border-radius:var(--radius-full);background:var(--color-primary-highlight);color:var(--color-primary-hover);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.pill-seasonal{background:var(--color-seasonal-highlight);color:var(--color-seasonal-accent)}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.85rem 1.15rem;border-radius:var(--radius-full);font-weight:700;border:1px solid transparent;transition:all .18s ease;cursor:pointer;font-size:var(--text-sm)}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-secondary{background:var(--color-surface-2)}.btn-ghost,.btn-secondary{border-color:var(--color-border);color:var(--color-text)}.btn-ghost{background:transparent}.btn-sm{min-height:36px;padding:.55rem .9rem;font-size:var(--text-xs)}.input,.select,.textarea{width:100%;padding:.85rem 1rem;border-radius:var(--radius-lg);border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text)}.input:disabled,.select:disabled,.textarea:disabled{opacity:.7}.label{display:grid;grid-gap:.4rem;gap:.4rem;font-weight:600;font-size:var(--text-sm)}.field-note{font-size:var(--text-xs);color:var(--color-text-muted)}.field-error{font-size:var(--text-xs);color:var(--color-error)}.field-success{font-size:var(--text-xs);color:var(--color-success)}.page-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:-webkit-sticky;position:sticky;top:0;height:100vh;padding:var(--space-6) var(--space-5);background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;gap:var(--space-6);overflow-y:auto}.content{padding:var(--space-6);max-width:1180px}.nav-group{display:grid;grid-gap:.25rem;gap:.25rem}.nav-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-faint);padding:0 .75rem;margin-bottom:.25rem}.nav-link{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:var(--radius-md);color:var(--color-text-muted);font-weight:600;font-size:var(--text-sm)}.nav-link:hover{background:var(--color-surface-offset);color:var(--color-text)}.nav-link.active{background:var(--color-primary-highlight);color:var(--color-primary-hover)}.stat{padding:var(--space-5);border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid var(--color-border)}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:.9rem 1rem;border-bottom:1px solid var(--color-border);text-align:left;font-size:var(--text-sm);vertical-align:top}.table th{color:var(--color-text-muted);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:var(--space-8);gap:var(--space-8);align-items:center}.app-topbar,.marketing-nav{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}.nav-links{display:flex;gap:var(--space-5);flex-wrap:wrap;align-items:center}.calendar{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:var(--space-3);gap:var(--space-3)}.calendar-day{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--color-surface-2);min-height:120px;border:1px solid var(--color-border)}.calendar-day-label{font-size:var(--text-xs);color:var(--color-text-faint);font-weight:700;text-transform:uppercase}.notice{padding:var(--space-4);background:var(--color-primary-highlight)}.banner,.notice{border-radius:var(--radius-lg)}.banner{padding:1rem 1.1rem;border:1px solid var(--color-border);font-size:var(--text-sm)}.banner-success{background:color-mix(in srgb,var(--color-success) 12%,var(--color-surface));color:var(--color-success);border-color:transparent}.banner-error{background:color-mix(in srgb,var(--color-error) 12%,var(--color-surface));color:var(--color-error);border-color:transparent}.banner-warning{background:color-mix(in srgb,var(--color-warning) 12%,var(--color-surface));color:var(--color-warning);border-color:transparent}.tabs{display:flex;gap:.6rem;flex-wrap:wrap}.tab{padding:.6rem .95rem;border-radius:var(--radius-full);background:var(--color-surface-2);border:1px solid var(--color-border);font-size:var(--text-xs);font-weight:600;cursor:pointer}.tab-active{background:var(--color-primary-highlight);color:var(--color-primary-hover);border-color:transparent}.flow-list{display:grid;grid-gap:.75rem;gap:.75rem}.flow-item{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-2);font-size:var(--text-sm)}.empty-state,.error-state,.loading-state{display:grid;grid-gap:.75rem;gap:.75rem;align-items:start;padding:1.5rem;border-radius:var(--radius-xl);background:var(--color-surface-2);border:1px dashed var(--color-border);text-align:center;justify-items:center}.skeleton{height:1rem;border-radius:999px;background:linear-gradient(90deg,var(--color-surface-offset) 25%,var(--color-border) 50%,var(--color-surface-offset) 75%);background-size:200% 100%;animation:shimmer 1.5s linear infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.chart-wrap{padding:var(--space-5);border-radius:var(--radius-xl);background:var(--color-surface);border:1px solid var(--color-border)}.season-icon{position:absolute;opacity:.35;pointer-events:none}@media (max-width:960px){.page-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-right:none;border-bottom:1px solid var(--color-border)}.hero-grid,.two-col{grid-template-columns:1fr}.calendar{grid-template-columns:1fr 1fr}}@media (max-width:640px){.content{padding:var(--space-4)}.section{padding:var(--space-8) 0}.calendar{grid-template-columns:1fr}.app-topbar,.marketing-nav{align-items:flex-start;flex-direction:column}.table{display:block;overflow-x:auto}}