:root{color-scheme:light;--bg: #f5f7fb;--bg-muted: #eef2f8;--surface: #ffffff;--surface-soft: #f8fafc;--border: #d9e1ec;--text: #172033;--text-muted: #5f6f86;--primary: #3366ff;--primary-strong: #2954d1;--positive: #1f8f5f;--negative: #c74a4a;--shadow: 0 14px 32px rgba(17, 24, 39, .08);font-family:Inter,Segoe UI,sans-serif;line-height:1.5;font-weight:400;background:var(--bg);color:var(--text)}:root[data-theme=dark]{color-scheme:dark;--bg: #0f1722;--bg-muted: #162132;--surface: #111b29;--surface-soft: #162132;--border: #243248;--text: #e7ecf5;--text-muted: #a4b0c2;--primary: #7aa2ff;--primary-strong: #8bb0ff;--positive: #54c78a;--negative: #ff7c7c;--shadow: 0 18px 40px rgba(0, 0, 0, .28)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg);color:var(--text)}body,button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.app-root{min-height:100vh;background:linear-gradient(180deg,var(--bg-muted),var(--bg) 220px)}.app-header{position:sticky;top:0;z-index:10;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.header-inner,.page-shell{width:min(1180px,calc(100% - 2rem));margin:0 auto}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.95rem 0}.brand{display:flex;align-items:center;min-width:0}.brand-copy{display:flex;flex-direction:column;justify-content:center}.brand-name,.brand-tagline,.eyebrow,.stat-label,.tier-cadence{margin:0}.brand-name{font-weight:700}.brand-tagline{color:var(--text-muted);font-size:.88rem}.header-nav-group{display:flex;flex-direction:column;align-items:center;gap:.55rem}.header-nav{display:flex;align-items:center;flex-wrap:wrap;gap:1.25rem;color:var(--text-muted);justify-content:center}.header-nav-workspace{gap:.75rem}.header-nav a:hover,.nav-button:hover,.secondary-link:hover{color:var(--text)}.header-nav a.item-calendar,.header-nav a.item-reports,.nav-button.item-primary{padding:.65rem .95rem;border-radius:.8rem;font-weight:600;color:#fff}.header-nav a.item-calendar{background:#6d4ae6}.header-nav a.item-calendar:hover{background:color-mix(in srgb,#6d4ae6 82%,black);color:#fff}.header-nav a.item-reports{background:#c74a4a}.header-nav a.item-reports:hover{background:color-mix(in srgb,#c74a4a 82%,black);color:#fff}.nav-button{border:0;background:transparent;color:inherit;padding:0}.nav-button.item-primary{border:1px solid var(--positive);background:var(--positive);color:#fff;padding:.65rem .95rem;border-radius:.8rem;font-weight:600}.nav-button.item-primary:hover{border-color:color-mix(in srgb,var(--positive) 82%,black);background:color-mix(in srgb,var(--positive) 82%,black);color:#fff}.header-actions{display:flex;align-items:center;gap:.75rem}.auth-stack{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap;justify-content:end}.auth-user{color:var(--text);font-size:.9rem;font-weight:600}.auth-user-block{display:flex;flex-direction:column;align-items:end;line-height:1.1}.auth-mode{color:var(--text-muted);font-size:.9rem}.control-button,.primary-button,.relationship-switcher select{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:.8rem;padding:.65rem .95rem;transition:background .12s ease,border-color .12s ease,color .12s ease}.control-button:hover,.relationship-switcher select:hover{background:var(--surface-soft)}.theme-toggle{border:0;background:transparent;padding:0;color:inherit}.theme-toggle-track{position:relative;display:inline-flex;align-items:center;justify-content:space-between;width:4.5rem;padding:.28rem .4rem;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 92%,var(--bg-muted));box-shadow:inset 0 1px #ffffff1f}.theme-toggle-icon{position:relative;z-index:1;display:inline-grid;place-items:center;width:1.35rem;height:1.35rem;color:var(--text-muted)}.theme-toggle-icon .material-symbols-outlined{display:block;font-family:Material Symbols Outlined;font-size:1rem;line-height:1;font-weight:400;font-style:normal;letter-spacing:normal;white-space:nowrap;font-feature-settings:"liga";font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 20}.theme-toggle-icon-sun{color:#d28a00}.theme-toggle-icon-moon{color:#5f6fdd}.theme-toggle-thumb{position:absolute;top:.18rem;left:.2rem;width:1.8rem;height:1.8rem;border-radius:999px;background:linear-gradient(180deg,var(--surface),color-mix(in srgb,var(--surface-soft) 82%,var(--bg-muted)));border:1px solid color-mix(in srgb,var(--border) 82%,white);box-shadow:0 4px 12px #11182724;transition:transform .18s ease}.theme-toggle.is-dark .theme-toggle-thumb{transform:translate(2rem)}.primary-button{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.primary-button:hover{background:var(--primary-strong);border-color:var(--primary-strong)}.danger-button{border-color:color-mix(in srgb,var(--negative) 55%,var(--border));color:var(--negative)}.danger-button:hover{background:color-mix(in srgb,var(--negative) 10%,var(--surface-soft));border-color:var(--negative)}.page-shell{padding:2rem 0 4rem}.hero-panel,.content-grid,.pricing-grid,.dashboard-grid{display:grid;gap:1.25rem}.hero-panel{grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);align-items:stretch;margin-bottom:1.5rem}.hero-copy,.section-card{background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:var(--shadow)}.hero-copy{padding:2rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--primary);font-size:.76rem;font-weight:700}h1,h2,h3,p,ul{margin-top:0}h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.02;margin-bottom:1rem}.hero-text{max-width:42rem;color:var(--text-muted);font-size:1.05rem}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;margin-top:1.5rem}.secondary-link{color:var(--text-muted);font-weight:600}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0f172273;padding:1rem;z-index:30}.modal-card{width:min(100%,640px);background:var(--surface);border:1px solid var(--border);border-radius:1.25rem;box-shadow:var(--shadow);padding:1.5rem}.modal-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.modal-header h2{margin-bottom:0}.modal-copy{color:var(--text-muted)}.modal-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}.selection-card{display:grid;gap:.45rem;text-align:left;background:var(--surface-soft);color:var(--text);border:1px solid var(--border);border-radius:1rem;padding:1rem}.selection-card:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface))}.selection-card span{color:var(--text-muted)}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem}.field{display:grid;gap:.35rem;color:var(--text-muted);font-size:.92rem}.field input,.field select,.field textarea{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:.8rem;padding:.7rem .85rem}.field-wide{grid-column:1 / -1}.section-card{padding:1.5rem}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:1.5rem}.section-heading{margin-bottom:1rem}.pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:1.5rem}.feature-list{margin-bottom:0;padding-left:1.1rem;color:var(--text-muted)}.tier-price{font-size:2rem;font-weight:700;margin-bottom:.15rem}.tier-cadence{color:var(--text-muted);margin-bottom:1rem}.legal-page{max-width:860px}.legal-card{padding:2rem}.legal-meta{color:var(--text-muted);font-size:.95rem;margin-bottom:1.2rem}.legal-card h2{margin-top:1.8rem;margin-bottom:.75rem;font-size:1.2rem}.legal-links{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;color:var(--text-muted);margin-bottom:0}.contact-form{display:grid;gap:1rem}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.contact-meta,.contact-success{color:var(--text-muted);margin-bottom:0}.contact-success{color:var(--positive);font-weight:600}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.dashboard-heading{display:flex;align-items:baseline;gap:.9rem;flex-wrap:wrap;min-width:0}.dashboard-heading h1,.dashboard-heading .dashboard-subtitle{margin-bottom:0}.dashboard-heading h1{min-width:0}.dashboard-grid{grid-template-columns:minmax(0,1.7fr) minmax(280px,.9fr)}.dashboard-main{display:grid;gap:1rem}.dashboard-subtitle{color:var(--text-muted);margin-bottom:0}.dashboard-side{display:grid;gap:1rem}.relationship-switcher{display:grid;gap:.35rem;min-width:12rem;color:var(--text-muted);font-size:.92rem}.relationship-switcher span{font-weight:600}.relationship-switcher-trigger{justify-self:start}.relationship-switcher-button{border-color:#c89d1e;background:#f2c94c;color:#3d2c00;font-weight:600}.relationship-switcher-button:hover{background:#e5bc3f;border-color:#b88f19}.relationship-switcher-modal{max-width:32rem}.switcher-list{display:grid;gap:.75rem}.switcher-option{display:grid;gap:.2rem;text-align:left;border:1px solid var(--border);border-radius:1rem;background:var(--surface-soft);color:var(--text);padding:1rem;transition:border-color .12s ease,background .12s ease,transform .12s ease}.switcher-option:hover{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 8%,var(--surface-soft))}.switcher-option.selected{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,var(--surface-soft))}.switcher-option span{color:var(--text-muted);text-transform:capitalize}.workspace-card{display:grid;gap:.9rem}.field-group-inline{display:flex;align-items:center;gap:.75rem}.compact-input{flex:1;min-width:0;border:1px solid var(--border);border-radius:.9rem;background:var(--surface-soft);color:var(--text);padding:.8rem .95rem}.stack-list{display:grid;gap:.8rem}.inline-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface-soft)}.locked-panel{opacity:.48;filter:grayscale(.8);pointer-events:none}.locked-action{opacity:.45;filter:grayscale(.9)}.calendar-card{padding:1.1rem;min-width:0}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.calendar-header h2{margin-bottom:0}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.6rem}.calendar-weekdays{color:var(--text-muted);font-size:.82rem;margin-bottom:.6rem}.calendar-day{min-height:7.5rem;border:1px solid var(--border);border-radius:1rem;background:var(--surface-soft);padding:.75rem;text-align:left}.calendar-day.has-entries{border-color:color-mix(in srgb,var(--primary) 45%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--surface-soft))}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.6rem}.calendar-day-number{display:block;font-weight:700}.calendar-day-count{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;border-radius:999px;background:var(--primary);color:#fff;font-size:.72rem;font-weight:700}.calendar-day-entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(1.9rem,1.9rem));justify-content:start;gap:.35rem;min-height:2rem}.entry-chip{display:inline-grid;place-items:center;width:1.9rem;height:1.9rem;border-radius:999px}.entry-chip.positive{background:color-mix(in srgb,var(--positive) 24%,var(--surface));color:var(--positive)}.entry-chip.negative{background:color-mix(in srgb,var(--negative) 24%,var(--surface));color:var(--negative)}.entry-chip.neutral{background:color-mix(in srgb,#f5cf62 32%,var(--surface));color:#c89a17}.entry-chip .material-symbols-outlined{display:block;font-family:Material Symbols Outlined;font-size:1.15rem;line-height:1;font-weight:400;font-style:normal;letter-spacing:normal;text-transform:none;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;font-feature-settings:"liga";font-variation-settings:"FILL" 1,"wght" 400,"GRAD" 0,"opsz" 24}.empty-state{color:var(--text-muted)}.health-card{background:color-mix(in srgb,var(--primary) 9%,var(--surface))}.health-graph{display:grid;gap:.65rem;margin:.85rem 0 1rem}.health-graph svg{width:100%;height:auto;overflow:visible}.health-line{fill:none;stroke-width:3;stroke-linecap:round}.health-line.positive,.health-point.positive,.legend-item.positive:before{stroke:var(--positive);fill:var(--positive)}.health-line.neutral,.health-point.neutral,.legend-item.neutral:before{stroke:#c89a17;fill:#c89a17}.health-line.negative,.health-point.negative,.legend-item.negative:before{stroke:var(--negative);fill:var(--negative)}.health-legend{display:flex;flex-wrap:wrap;gap:.9rem;color:var(--text-muted);font-size:.82rem}.legend-item{display:inline-flex;align-items:center;gap:.35rem}.legend-item:before{content:"";width:.65rem;height:.65rem;border-radius:999px}.health-score,.stat-value{font-size:2rem;font-weight:700;margin-bottom:.35rem}.health-trend,.stat-detail{color:var(--text-muted)}@media(max-width:960px){.hero-panel,.dashboard-grid,.pricing-grid,.content-grid{grid-template-columns:1fr}.header-inner{flex-direction:column;align-items:stretch}.header-nav-group{align-items:stretch}.header-nav{width:100%;overflow-x:visible;justify-content:flex-start;gap:.75rem}.header-actions{justify-content:space-between;flex-wrap:wrap}.relationship-switcher{min-width:0;width:auto}.dashboard-toolbar{align-items:flex-start}.dashboard-heading{width:100%}}@media(max-width:640px){.page-shell{width:min(100% - 1rem,1180px);padding-top:1.25rem}.header-inner{width:min(100% - 1rem,1180px)}.header-nav{gap:.55rem}.header-nav a,.nav-button{white-space:nowrap}.hero-copy,.section-card{padding:1.1rem}.hero-actions,.header-actions,.dashboard-toolbar,.form-actions,.field-group-inline,.inline-card{flex-direction:column;align-items:stretch}.auth-stack,.auth-user-block{align-items:flex-start;justify-content:flex-start}.modal-header,.calendar-header{flex-direction:column;align-items:stretch}.calendar-weekdays,.calendar-grid{gap:.4rem}.calendar-card{overflow-x:auto}.calendar-weekdays,.calendar-grid{min-width:28rem}.calendar-day{min-height:5.5rem;padding:.5rem}.calendar-day-entries{grid-template-columns:repeat(auto-fit,minmax(1.6rem,1.6rem));gap:.25rem}.entry-chip{width:1.6rem;height:1.6rem}.entry-chip .material-symbols-outlined{font-size:1rem}.dashboard-heading{gap:.4rem .7rem}.dashboard-heading h1{font-size:1.5rem}.dashboard-subtitle{font-size:.95rem}.modal-options,.form-grid{grid-template-columns:1fr}}
