:root{color-scheme:light;--bg: #f4f6f2;--bg-accent: #edf2ea;--panel: rgba(255, 255, 255, .88);--panel-strong: #ffffff;--border: rgba(51, 68, 56, .12);--border-strong: rgba(51, 68, 56, .2);--text: #172019;--text-soft: #5f6e61;--text-muted: #7a877c;--primary: #224735;--primary-strong: #183526;--primary-soft: #e2ede4;--danger: #b53f3f;--danger-soft: #fdeeee;--success: #2f6f4f;--success-soft: #e7f5eb;--warning: #946200;--warning-soft: #fff4d6;--info: #235d69;--info-soft: #e6f6f8;--shadow-lg: 0 24px 60px rgba(20, 28, 21, .12);--shadow-md: 0 18px 40px rgba(20, 28, 21, .08);--radius-xl: 24px;--radius-lg: 18px;--radius-md: 14px;--radius-sm: 10px;font-family:Manrope,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--text);background:radial-gradient(circle at top left,rgba(153,197,168,.2),transparent 32%),radial-gradient(circle at top right,rgba(89,152,179,.18),transparent 30%),linear-gradient(180deg,#f8faf7 0%,var(--bg) 100%)}body,input,button{font:inherit}button,input{outline:none}a{color:inherit;text-decoration:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:999px;font-weight:700;cursor:pointer;transition:transform .14s ease,background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{opacity:.6;cursor:not-allowed}.button-sm{min-height:2.25rem;padding:0 .9rem}.button-md{min-height:2.75rem;padding:0 1rem}.button-lg{min-height:3rem;padding:0 1.2rem}.button-primary{background:var(--primary);color:#fff;box-shadow:var(--shadow-md)}.button-primary:hover:not(:disabled){background:var(--primary-strong)}.button-secondary{background:var(--panel-strong);border-color:var(--border);color:var(--text)}.button-ghost{background:transparent;color:var(--text-soft)}.button-danger{background:var(--danger);color:#fff}.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border-radius:999px;font-size:.78rem;font-weight:700;letter-spacing:.02em}.badge-default{background:var(--primary-soft);color:var(--primary)}.badge-success{background:var(--success-soft);color:var(--success)}.badge-warning{background:var(--warning-soft);color:var(--warning)}.badge-info{background:var(--info-soft);color:var(--info)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.card-header,.card-content,.card-footer{padding:1.4rem 1.5rem}.card-header-inline,.card-header-split,.card-header-actions{display:flex;align-items:center;gap:.75rem}.card-header-inline,.card-header-split{justify-content:space-between}.card-header-actions{flex-wrap:wrap}.card-header{display:flex;flex-direction:column;gap:.6rem}.card-title{margin:0;font-size:1.2rem;line-height:1.2}.stat-value{font-size:1.9rem}.card-description{margin:0;color:var(--text-soft);line-height:1.55}.card-content{padding-top:0}.field{display:flex;flex-direction:column;gap:.45rem}.field-label{font-size:.92rem;font-weight:700}.field-hint,.field-error{font-size:.82rem}.field-hint{color:var(--text-muted)}.field-error{color:var(--danger)}.input{min-height:2.9rem;width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffffeb;padding:.8rem .95rem;color:var(--text);transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.input:focus{border-color:#22473573;box-shadow:0 0 0 4px #2247351f}.input-error{border-color:#b53f3f59}.select-input,.text-area{width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:#ffffffeb;padding:.8rem .95rem;color:var(--text);transition:border-color .14s ease,box-shadow .14s ease,background-color .14s ease}.select-input{min-height:2.9rem}.text-area{resize:vertical;min-height:7rem}.select-input:focus,.text-area:focus{border-color:#22473573;box-shadow:0 0 0 4px #2247351f}.form-banner{margin:0;border-radius:var(--radius-md);padding:.8rem .95rem;font-size:.92rem}.form-banner-error{background:var(--danger-soft);color:var(--danger)}.form-banner-warning{background:#fff4d6e6;color:#73520a}.login-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;min-height:100vh;padding:2rem;align-items:center}.login-intro{padding:3rem}.login-title{margin:1rem 0;max-width:12ch;font-size:clamp(2.8rem,5vw,4.8rem);line-height:.95}.login-copy{max-width:42rem;color:var(--text-soft);font-size:1.05rem;line-height:1.7}.login-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.login-highlight{padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffff80}.login-highlight-value{display:block;font-size:1.1rem;font-weight:800}.login-highlight-label{display:block;margin-top:.35rem;color:var(--text-soft)}.login-card{max-width:30rem;width:100%;justify-self:end}.login-form,.dialog-form{display:flex;flex-direction:column;gap:1rem}.demo-account{margin-top:1.5rem;border-top:1px solid var(--border);padding-top:1.25rem}.demo-account-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.9rem}.demo-account-title{font-size:.9rem;font-weight:700;color:var(--text-soft)}.demo-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:0 0 .9rem}.demo-account-field dt{margin:0 0 .15rem;color:var(--text-muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}.demo-account-field dd{margin:0;font-weight:700;font-family:SFMono-Regular,Consolas,monospace}.dashboard-shell{display:flex;height:100vh;overflow:hidden}.sidebar-overlay{display:none}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;justify-content:space-between;width:18rem;height:100vh;overflow-y:auto;padding:1.5rem;background:#141f17fa;color:#eef6ef}.sidebar-brand{display:flex;justify-content:center;align-items:center;padding:1.5rem 1rem}.sidebar-logo{width:180px;height:auto;object-fit:contain}.sidebar-brand-mark{display:grid;place-items:center;width:3rem;height:3rem;border-radius:1rem;background:linear-gradient(135deg,#9cc6aa,#5c8f7a);color:#122117;font-weight:900}.sidebar-eyebrow{margin:0 0 .2rem;color:#eef6efa8;font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.sidebar-title{margin:0;font-size:1.1rem}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem;margin:2rem 0}.sidebar-link{display:flex;align-items:center;justify-content:space-between;border-radius:var(--radius-md);padding:.9rem 1rem;color:#eef6efc7;transition:background-color .14s ease,color .14s ease}.sidebar-link:hover,.sidebar-link-active{background:#ffffff14;color:#fff}.sidebar-footer{display:flex;flex-direction:column;gap:.9rem}.sidebar-org{margin:0;color:#eef6efad;font-size:.82rem;font-weight:700;line-height:1.6}.dashboard-main{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0}.navbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-bottom:1px solid var(--border);background:#f4f6f2c7;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.navbar-main,.navbar-actions{display:flex;align-items:center;gap:.75rem}.navbar-title{margin:0;font-size:1rem;font-weight:800}.navbar-subtitle{margin:.15rem 0 0;color:var(--text-soft);font-size:.9rem}.navbar-profile{display:flex;flex-direction:column;align-items:flex-end}.navbar-profile-name{font-size:.92rem;font-weight:800}.navbar-profile-meta{color:var(--text-soft);font-size:.8rem}.notification-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:1px solid var(--border);border-radius:999px;color:var(--text);background:#ffffffb3;text-decoration:none}.notification-dot{position:absolute;top:-.3rem;right:-.3rem;display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;border-radius:999px;background:var(--danger);color:#fff;font-size:.68rem;font-weight:800;line-height:1}.navbar-menu{display:none}.dashboard-content{flex:1;min-height:0;overflow-y:auto;padding:1.5rem}.dashboard-content>*+*{margin-top:1.25rem}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.page-eyebrow{margin:0 0 .4rem;color:var(--text-soft);font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.page-title{font-size:clamp(1.7rem,3vw,2.3rem)}.page-actions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.toolbar-inline{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.toolbar-field{min-width:16rem}.toolbar-select-wrap{display:flex;flex-direction:column;gap:.35rem}.toolbar-label{color:var(--text-soft);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.stats-grid,.content-grid{display:grid;gap:1.25rem}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:1.25rem}.content-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-span-2{grid-column:span 2}.stat-footnote,.empty-state,.activity-meta,.summary-label{color:var(--text-soft)}.mini-stat-card{padding:1rem 1.2rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffffb8;box-shadow:var(--shadow-md)}.mini-stat-card strong{display:block;margin-top:.35rem;font-size:1.15rem}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table-head,.table-cell{padding:.9rem .7rem;text-align:left;border-bottom:1px solid var(--border)}.table-head{color:var(--text-soft);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.table-sort-button{border:none;background:transparent;padding:0;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer}.table-sort-button:hover{color:var(--text)}.table-row:last-child .table-cell{border-bottom:none}.table-actions{display:flex;gap:.35rem;flex-wrap:wrap}.stack-list{display:flex;flex-direction:column;gap:.85rem}.activity-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);padding:.95rem 1rem;background:#ffffff9e}.notification-read{opacity:.78}.activity-title{margin:0 0 .2rem;font-weight:700}.activity-meta{margin:0;font-size:.88rem}.activity-amount{font-weight:800}.activity-trailing{display:flex;align-items:center;gap:.6rem}.notification-main,.notification-actions,.notification-meta-row{display:flex;gap:.6rem}.notification-main{flex:1;min-width:0;flex-direction:column}.notification-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}.notification-meta-row{align-items:center;flex-wrap:wrap}.summary-grid{display:grid;gap:.85rem}.summary-item{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;background:#ffffff9e}.availability-grid,.services-grid,.preference-stack{display:grid;gap:.9rem}.availability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.availability-card,.service-option,.preference-item{border:1px solid var(--border);border-radius:var(--radius-lg);background:#ffffff9e}.availability-card{padding:1rem}.availability-day{margin:0 0 .75rem;font-weight:800}.availability-slots{display:flex;gap:.5rem;flex-wrap:wrap}.availability-chip,.service-option,.preference-item{transition:border-color .14s ease,background-color .14s ease,transform .14s ease}.availability-chip{border:1px solid var(--border);border-radius:999px;background:#ffffffdb;padding:.55rem .8rem;text-transform:capitalize;cursor:pointer}.availability-chip.active,.service-option.active,.preference-item.active{border-color:#22473559;background:var(--primary-soft)}.service-option,.preference-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem;cursor:pointer;text-align:left}.service-option:hover,.preference-item:hover,.availability-chip:hover{transform:translateY(-1px)}.table-cell-stack{display:flex;flex-direction:column;gap:.25rem}.empty-state-block{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:1rem;background:#ffffff85}.empty-state-block.compact{padding:.85rem}.empty-state-title{margin:0 0 .35rem;font-weight:800}.empty-state-description{margin:0;color:var(--text-soft);line-height:1.55}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:1.5rem;background:#0f171173;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:50}.dialog{width:min(32rem,100%);border:1px solid var(--border);border-radius:var(--radius-xl);background:var(--panel-strong);box-shadow:var(--shadow-lg)}.dialog-header,.dialog-content,.dialog-footer{padding:1.25rem 1.5rem}.dialog-header,.dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem}.dialog-title{margin:0;font-size:1.2rem}.dialog-description{margin:.35rem 0 0;color:var(--text-soft)}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:1px solid var(--border);border-radius:999px;background:transparent;cursor:pointer}.tabs{display:flex;gap:1.5rem;border-bottom:1px solid var(--border)}.tab{border:none;background:transparent;padding:0 0 .75rem;color:var(--text-soft);font-weight:700;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tab-active{color:var(--text);border-bottom-color:var(--primary)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--border)}.switch-row:last-child{border-bottom:none}.switch-copy{display:flex;flex-direction:column;gap:.2rem}.switch-label{font-weight:700}.switch-description{color:var(--text-soft);font-size:.86rem}.switch{position:relative;flex-shrink:0;width:2.75rem;height:1.6rem;border:1px solid var(--border);border-radius:999px;background:#33443829;cursor:pointer;transition:background-color .14s ease}.switch-thumb{position:absolute;top:.15rem;left:.15rem;width:1.15rem;height:1.15rem;border-radius:999px;background:#fff;box-shadow:0 1px 3px #141c154d;transition:transform .14s ease}.switch-active{background:var(--primary)}.switch-active .switch-thumb{transform:translate(1.15rem)}.settings-section{display:flex;flex-direction:column}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.bar-chart{display:flex;align-items:flex-end;gap:.6rem;height:12rem;padding-top:1.5rem}.bar-chart-column{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;gap:.5rem;height:100%;cursor:default}.bar-chart-value{font-size:.8rem;font-weight:800;color:var(--text)}.bar-chart-track{display:flex;align-items:flex-end;width:100%;max-width:1.5rem;height:100%;border-bottom:1px solid var(--border)}.bar-chart-fill{width:100%;min-height:2px;border-radius:4px 4px 0 0}.bar-chart-label{color:var(--text-soft);font-size:.72rem;white-space:nowrap}.bar-chart-tooltip{position:absolute;bottom:calc(100% + .4rem);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.1rem;padding:.4rem .6rem;border-radius:var(--radius-sm);background:var(--primary-strong);color:#fff;font-size:.76rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .12s ease;z-index:5}.bar-chart-tooltip strong{font-size:.86rem}.bar-chart-column:hover .bar-chart-tooltip,.bar-chart-column:focus-visible .bar-chart-tooltip{opacity:1}.filter-chips{display:flex;flex-wrap:wrap;gap:.5rem}.filter-chip{border:1px solid var(--border);border-radius:999px;background:#ffffffb3;padding:.45rem .9rem;color:var(--text-soft);font-size:.82rem;font-weight:700;cursor:pointer}.filter-chip-active{border-color:#22473559;background:var(--primary-soft);color:var(--primary)}.date-range-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}@media (max-width: 1100px){.login-layout,.stats-grid,.content-grid,.availability-grid,.form-grid{grid-template-columns:1fr}.login-card{justify-self:stretch;max-width:none}.content-span-2{grid-column:span 1}}@media (max-width: 920px){.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10181259;opacity:0;pointer-events:none;transition:opacity .14s ease;z-index:29}.sidebar-overlay.is-open{display:block;opacity:1;pointer-events:auto}.sidebar{position:fixed;left:0;z-index:30;transform:translate(-100%);transition:transform .18s ease}.sidebar.is-open{transform:translate(0)}.navbar{padding-inline:1rem}.navbar-menu{display:inline-flex}}@media (max-width: 720px){.login-layout{padding:1rem}.login-intro{padding:1rem .25rem}.login-highlights{grid-template-columns:1fr}.page-header,.navbar,.navbar-main,.navbar-actions,.dialog-footer,.card-header-split{flex-direction:column;align-items:flex-start}.toolbar-field{min-width:100%}.notification-actions{justify-content:flex-start}.navbar-profile{align-items:flex-start}.dashboard-content{padding:1rem}.dialog{width:100%}}
