.auth-page,.dashboard-shell{min-block-size:100dvh}.auth-page{display:grid;place-items:center;padding:var(--page-pad)}.auth-card,.dashboard-panel,.form-panel,.table-wrap{border:1px solid var(--line);border-radius:var(--radius);background:hsla(0,0%,100%,.94);box-shadow:0 18px 48px rgba(16,45,118,.08)}.auth-card{inline-size:min(100%,30rem);border:1px solid #d9e1ec;box-shadow:none;padding:clamp(1.25rem,4vw,2rem)}.auth-card .brand{justify-self:center}.auth-card .brand img{inline-size:min(13rem,70vw)}.not-found-section{min-block-size:min(38rem,calc(100dvh - 11rem));display:grid;grid-template-columns:minmax(8rem,.35fr) minmax(0,.65fr);grid-gap:clamp(1.5rem,5vw,4rem);gap:clamp(1.5rem,5vw,4rem);align-items:center}.not-found-mark{color:var(--gold-500);font-family:var(--display-font);font-size:clamp(5rem,16vw,12rem);font-weight:800;line-height:.85}.not-found-copy{display:grid;grid-gap:1rem;gap:1rem;max-inline-size:42rem}.not-found-copy h1{margin:0;color:var(--blue-950);font-size:clamp(2.35rem,5vw,4.8rem);line-height:.98}.not-found-copy p:not(.eyebrow){max-inline-size:35rem;color:var(--muted);font-size:1.03rem;line-height:1.75}.auth-card>div:first-of-type{text-align:center}.stack{display:grid;grid-gap:1rem;gap:1rem}.compact-stack{display:grid;grid-gap:.65rem;gap:.65rem}.field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));grid-column-gap:clamp(1.4rem,2vw,2rem);column-gap:clamp(1.4rem,2vw,2rem);grid-row-gap:1.15rem;row-gap:1.15rem;align-items:start}.dashboard-panel,.form-panel{padding:1.25rem}.form-panel{inline-size:100%;overflow:hidden}.auth-card label,.form-panel label{display:grid;grid-gap:.4rem;gap:.4rem;min-inline-size:0;color:var(--blue-950);font-size:.82rem;font-weight:820}.auth-card input,.auth-card select,.auth-card textarea,.form-panel input,.form-panel select,.form-panel textarea{inline-size:100%;max-inline-size:100%;min-block-size:2.45rem;border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);padding:.52rem .68rem;background:#fcfdff;color:var(--ink)}.dashboard-shell{display:grid;grid-template-columns:17rem minmax(0,1fr);background:var(--surface-soft)}.dashboard-sidebar{position:-webkit-sticky;position:sticky;inset-block-start:0;display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem;-webkit-border-end:1px solid var(--line);border-inline-end:1px solid var(--line);background:var(--surface)}.dashboard-brand img{inline-size:12rem}.dashboard-nav{display:grid;grid-gap:.25rem;gap:.25rem}.dashboard-nav a,.dashboard-nav button{display:flex;align-items:center;justify-content:flex-start;min-block-size:2.65rem;border:0;padding:.6rem .75rem;background:transparent;color:var(--blue-950);font-weight:700;cursor:pointer}.dashboard-nav a:hover,.dashboard-nav a[aria-current=page],.dashboard-nav button:hover{background:var(--surface-blue);color:var(--blue-800)}.dashboard-main{min-inline-size:0;padding:1.5rem}.dashboard-header{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;-webkit-margin-after:1.25rem;margin-block-end:1.25rem}.dashboard-header h1{font-size:clamp(1.7rem,1.4rem + .8vw,2.35rem);max-inline-size:none}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.metric{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.metric strong{display:block;color:var(--blue-950);font-size:1.8rem;line-height:1}.table-wrap{overflow-x:auto}.data-table{inline-size:100%;border-collapse:collapse;min-inline-size:48rem}.data-table td,.data-table th{-webkit-border-after:1px solid var(--line);border-block-end:1px solid var(--line);padding:.8rem;text-align:start;vertical-align:top}.data-table th{color:var(--blue-950);font-size:.78rem;text-transform:uppercase}.data-table td{color:var(--ink)}.status-pill{display:inline-flex;align-items:center;min-block-size:1.8rem;border-radius:999px;padding:.25rem .65rem;background:var(--surface-blue);color:var(--blue-900);font-size:.78rem;font-weight:800;text-transform:capitalize}.row-actions{display:flex;flex-wrap:wrap;gap:.5rem}.compact-actions-trigger{display:inline-flex;align-items:center;gap:.35rem;justify-content:center}.booking-actions-modal{max-inline-size:24rem}.booking-actions-modal .modal-close{border-color:#cbd5e1;background:#fff;color:var(--dash-ink);box-shadow:0 1px 2px rgba(15,23,42,.08)}.booking-actions-modal .modal-close:focus-visible,.booking-actions-modal .modal-close:hover{border-color:#94a3b8;background:#f1f5f9;color:var(--dash-ink)}.booking-actions-summary{display:grid;grid-gap:.15rem;gap:.15rem;border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;background:#f8fafc}.booking-actions-summary small{color:var(--muted)}.booking-actions-list{display:grid;grid-gap:.8rem;gap:.8rem}.booking-action-group{display:grid;grid-gap:.45rem;gap:.45rem}.booking-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.5rem;gap:.5rem}.booking-actions-list .inline-button,.booking-actions-list form{inline-size:100%}.booking-actions-list .inline-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-block-size:2.5rem}.booking-action-danger-zone{-webkit-border-before:1px solid var(--line);border-block-start:1px solid var(--line);-webkit-margin-before:.15rem;margin-block-start:.15rem;-webkit-padding-before:.85rem;padding-block-start:.85rem;background:transparent}.booking-action-danger-zone .mini-label{color:#9f1239}.booking-action-danger-zone .inline-button.danger-action{background:#fff1f2}.booking-action-danger-zone .inline-button.danger-action:focus-visible,.booking-action-danger-zone .inline-button.danger-action:hover{background:#ffe4e6}.booking-actions-list .booking-status-complete-action{border-color:rgba(15,118,110,.28);background:#ecfdf5;color:#0f766e;box-shadow:none}.booking-actions-list .booking-status-complete-action:focus-visible,.booking-actions-list .booking-status-complete-action:hover{border-color:rgba(15,118,110,.42);background:#d1fae5;color:#0f766e}.inline-button{border:1px solid var(--line);border-radius:var(--radius);padding:.45rem .65rem;background:var(--surface);color:var(--blue-950);font-size:.85rem;font-weight:800;cursor:pointer}.inline-button.primary-action{border-color:var(--blue-900);background:var(--blue-900);color:#fff}.section-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);grid-gap:1rem;gap:1rem;align-items:start}.items-grid{display:grid;grid-gap:.85rem;gap:.85rem}.invoice-item-row{display:grid;grid-template-columns:minmax(10rem,1fr) 5rem 7rem;grid-gap:.85rem;gap:.85rem;align-items:end;border:1px solid var(--dash-border);border-radius:var(--radius);padding:.75rem;background:#fbfcff}.notice{border:1px solid var(--line);border-radius:var(--radius);padding:.75rem;background:var(--surface-blue);color:var(--blue-950)}.blog-list{display:grid;grid-gap:1rem;gap:1rem;padding-block:0 3rem}.dashboard-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.65rem}.dashboard-actions .button{min-block-size:2.35rem;padding:.5rem .75rem;font-size:.86rem}.dashboard-actions .button .icon{inline-size:.9rem;block-size:.9rem}.form-narrow{max-inline-size:none;inline-size:100%}.form-fieldset{display:grid;grid-gap:1.15rem;gap:1.15rem;min-inline-size:0;border:0;-webkit-border-before:1px solid var(--line);border-block-start:1px solid var(--line);margin:0;padding:1rem 0 0}.form-fieldset>label{max-inline-size:100%}.form-fieldset:first-child{-webkit-border-before:0;border-block-start:0;-webkit-padding-before:0;padding-block-start:0}.form-fieldset legend{padding:0 .45rem 0 0;color:var(--blue-950);font-size:.82rem;font-weight:850;text-transform:uppercase}.form-panel input[type=checkbox]{inline-size:1rem;min-block-size:1rem;margin:0;accent-color:var(--blue-900)}.form-panel input[type=file]{padding-block:.55rem}.form-panel textarea{min-block-size:7rem;resize:vertical}.form-panel label span{display:inline-flex;align-items:center;gap:.55rem;min-block-size:2.75rem}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.panel-heading h2{-webkit-margin-after:.2rem;margin-block-end:.2rem}.metric-grid-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.revenue-filter{display:grid;grid-gap:.55rem;gap:.55rem;justify-items:end}.revenue-filter label{color:var(--blue-950);font-size:.78rem;font-weight:800}.revenue-filter input,.revenue-filter select{min-block-size:2.35rem;border:1px solid var(--line);border-radius:var(--radius);padding:.46rem .62rem;background:#fff;color:var(--ink)}.auth-card select,.form-panel select,.revenue-filter select{-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-padding-end:2.35rem;padding-inline-end:2.35rem;background-image:linear-gradient(45deg,transparent 50%,#667085 0),linear-gradient(135deg,#667085 50%,transparent 0);background-position:calc(100% - 1rem) 50%,calc(100% - .72rem) 50%;background-size:.32rem .32rem,.32rem .32rem;background-repeat:no-repeat}.table-wrap{content-visibility:auto;contain-intrinsic-size:auto 34rem}.data-table caption{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.editor-form{max-inline-size:none;inline-size:100%}.editor-shell{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.editor-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem;-webkit-border-after:1px solid var(--line);border-block-end:1px solid var(--line);background:var(--surface-soft)}.editor-toolbar button{min-inline-size:2.35rem;min-block-size:2.25rem;border:1px solid var(--line);border-radius:calc(var(--radius) - 2px);background:#fff;color:var(--blue-950);font-size:.82rem;font-weight:850;cursor:pointer}.editor-toolbar button:focus-visible,.editor-toolbar button:hover{border-color:var(--blue-900);color:var(--blue-900)}.rich-editor{min-block-size:22rem;padding:1rem;outline:none;color:var(--ink);line-height:1.75}.rich-editor:focus{box-shadow:inset 0 0 0 2px rgba(19,91,203,.22)}.article-content h2,.rich-editor h2{margin-block:1.4rem .45rem;color:var(--blue-950);font-size:1.6rem}.article-content h3,.rich-editor h3{margin-block:1.15rem .35rem;color:var(--blue-950);font-size:1.25rem}.article-content p,.rich-editor p{margin-block:0 .85rem}.article-content ol,.article-content ul,.rich-editor ol,.rich-editor ul{-webkit-padding-start:1.4rem;padding-inline-start:1.4rem}.article-content blockquote,.rich-editor blockquote{-webkit-border-start:3px solid var(--blue-900);border-inline-start:3px solid var(--blue-900);margin:1rem 0;padding:.35rem 0 .35rem 1rem;color:var(--blue-950);background:var(--surface-blue)}.article-content img,.rich-editor img{display:block;max-inline-size:100%;block-size:auto;border-radius:var(--radius);margin-block:1rem}.article-content a,.rich-editor a{color:var(--blue-900);font-weight:800;text-decoration:underline;text-underline-offset:.18em}.article-content b,.article-content strong,.rich-editor b,.rich-editor strong{font-weight:800}.blog-reader .article-content{display:block}.blog-reader .article-content>*{margin-block:0}.blog-reader .article-content>*+*{-webkit-margin-before:1rem;margin-block-start:1rem}.blog-reader .article-content>h2{-webkit-margin-before:2.25rem;margin-block-start:2.25rem}.blog-reader .article-content>h3{-webkit-margin-before:1.75rem;margin-block-start:1.75rem}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.dashboard-shell{--dash-bg:#f7f8fc;--dash-panel:#fff;--dash-border:#e5e9f2;--dash-muted:#6b7280;--dash-ink:#111827;--dash-accent:#0f62c9;--dash-success:#0f766e;--dash-warn:#a16207;grid-template-columns:18rem minmax(0,1fr);column-gap:1rem;block-size:100dvh;min-block-size:0;overflow:hidden;background:linear-gradient(180deg,rgba(15,98,201,.07),hsla(0,0%,100%,0) 18rem),var(--dash-bg)}.dashboard-sidebar{position:fixed;inset-block:0;inset-inline-start:0;inline-size:18rem;block-size:100dvh;display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;grid-gap:.7rem;gap:.7rem;padding:.8rem;-webkit-border-end:1px solid hsla(0,0%,100%,.1);border-inline-end:1px solid hsla(0,0%,100%,.1);background:linear-gradient(180deg,#091531,#101827 58%,#151a23);color:#fff}.dashboard-sidebar-head{display:grid;grid-gap:.35rem;gap:.35rem;padding:.2rem .25rem .55rem;-webkit-border-after:1px solid hsla(0,0%,100%,.12);border-block-end:1px solid hsla(0,0%,100%,.12)}.dashboard-sidebar-head p{color:hsla(0,0%,100%,.64);font-size:.78rem;font-weight:850;text-transform:uppercase}.dashboard-brand{display:inline-flex;inline-size:-moz-fit-content;inline-size:fit-content;border-radius:var(--radius)}.dashboard-brand img{inline-size:8.8rem;filter:brightness(0) invert(1)}.dashboard-user-card{display:grid;grid-gap:.2rem;gap:.2rem;padding:.65rem;border:1px solid hsla(0,0%,100%,.12);border-radius:var(--radius);background:hsla(0,0%,100%,.08)}.dashboard-user-card strong{color:#fff;line-height:1.2}.dashboard-user-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.dashboard-user-meta>span{inline-size:-moz-fit-content;inline-size:fit-content;border:1px solid hsla(0,0%,100%,.12);border-radius:999px;padding:.18rem .55rem;color:#d9e4ff;font-size:.76rem;font-weight:850;text-transform:capitalize}.dashboard-user-meta>.impersonation-flag{border-color:rgba(219,166,55,.5);background:rgba(219,166,55,.18);color:#f7e4b2;text-transform:uppercase}.dashboard-user-card.is-impersonating{border-color:rgba(219,166,55,.42);background:rgba(219,166,55,.14)}.dashboard-user-card form{display:inline-flex}.impersonation-exit{position:relative;display:inline-flex;align-items:center;justify-content:center;inline-size:1.9rem;block-size:1.9rem;border:1px solid hsla(0,0%,100%,.18);border-radius:999px;padding:0;background:hsla(0,0%,100%,.1);color:#fff}.impersonation-exit:hover{background:hsla(0,0%,100%,.16)}.impersonation-exit:after{content:attr(aria-label);position:absolute;inset-inline-start:50%;inset-block-end:calc(100% + .45rem);transform:translateX(-50%);inline-size:max-content;max-inline-size:11rem;border-radius:var(--radius);padding:.35rem .5rem;background:#111827;color:#fff;font-size:.72rem;font-weight:800;line-height:1.2;opacity:0;pointer-events:none;text-align:center;transition:opacity .15s ease,transform .15s ease;white-space:normal;z-index:20}.impersonation-exit:focus-visible:after,.impersonation-exit:hover:after{opacity:1;transform:translateX(-50%) translateY(-.1rem)}.dashboard-nav{min-block-size:0;overflow-y:auto;gap:.2rem;-webkit-padding-after:.25rem;padding-block-end:.25rem;scrollbar-width:none}.dashboard-nav::-webkit-scrollbar{display:none}.dashboard-nav form{display:grid}.dashboard-nav a,.dashboard-nav button{gap:.62rem;min-block-size:2.35rem;border-radius:var(--radius);padding:.46rem .62rem;color:hsla(0,0%,100%,.78);font-size:.86rem;font-weight:760}.dashboard-nav a:hover,.dashboard-nav a[aria-current=page],.dashboard-nav button:hover{background:hsla(0,0%,100%,.11);color:#fff}.dashboard-nav a[aria-current=page]{box-shadow:inset 3px 0 0 var(--gold-500)}.nav-marker{inline-size:.6rem;block-size:.6rem;border-radius:999px;background:hsla(0,0%,100%,.28);box-shadow:0 0 0 3px hsla(0,0%,100%,.06)}.dashboard-nav a[aria-current=page] .nav-marker{background:var(--gold-500)}.dashboard-main{position:relative;isolation:isolate;grid-column:2;-webkit-margin-start:1rem;margin-inline-start:1rem;min-block-size:0;block-size:100dvh;overflow-y:auto;scrollbar-width:none;padding:0 clamp(1rem,2vw,2rem) clamp(1rem,2vw,2rem)}.dashboard-main::-webkit-scrollbar,.table-wrap::-webkit-scrollbar{display:none}.table-wrap{scrollbar-width:none}.dashboard-header{position:-webkit-sticky;position:sticky;inset-block-start:0;z-index:70;isolation:isolate;overflow:hidden;align-items:center;-webkit-margin-after:1.1rem;margin-block-end:1.1rem;border:1px solid var(--dash-border);border-radius:var(--radius);border-start-start-radius:0;border-start-end-radius:0;padding:clamp(1rem,2vw,1.45rem);background:linear-gradient(135deg,rgba(15,98,201,.1),rgba(15,118,110,.07)),#fff;box-shadow:0 16px 45px rgba(17,24,39,.06);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.dashboard-header:after{position:absolute;inset:0;z-index:-1;content:"";background:#fff}.dashboard-header:before{position:absolute;inset:0 0 auto;z-index:1;block-size:4px;content:"";background:linear-gradient(90deg,var(--dash-accent),var(--dash-success),var(--gold-500))}.dashboard-header h1{color:var(--dash-ink);font-size:clamp(1.55rem,1.25rem + .9vw,2.2rem)}.dashboard-header p{max-inline-size:58rem;color:var(--dash-muted)}.dashboard-header-tools{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:flex-start;gap:.75rem}.auth-card,.dashboard-panel,.form-panel,.table-wrap{position:relative;z-index:1;border-color:var(--dash-border);background:hsla(0,0%,100%,.98);box-shadow:0 12px 34px rgba(17,24,39,.055)}.dashboard-panel,.form-panel{padding:clamp(1.25rem,2.2vw,2rem)}.metric-grid{grid-template-columns:repeat(4,minmax(12rem,1fr))}.metric{position:relative;overflow:hidden;display:grid;grid-gap:.65rem;gap:.65rem;min-block-size:8.25rem;padding:1rem;border-color:var(--dash-border);background:linear-gradient(180deg,#fff,#fbfcff);box-shadow:0 10px 30px rgba(17,24,39,.045)}.metric:before{inline-size:2.6rem;block-size:.32rem;border-radius:999px;content:"";background:var(--dash-accent)}.metric:nth-child(2n):before{background:var(--dash-success)}.metric:nth-child(3n):before{background:var(--gold-700)}.metric p{color:var(--dash-muted);font-size:.86rem;font-weight:780}.metric strong{color:var(--dash-ink);font-size:clamp(1.55rem,1.3rem + .8vw,2.15rem);letter-spacing:0}.dashboard-panel h2,.panel-heading h2{color:var(--dash-ink);font-size:clamp(1.05rem,.95rem + .35vw,1.35rem)}.table-wrap{border-radius:var(--radius)}.data-table{border-collapse:separate;border-spacing:0}.data-table th{background:#f9fafc;color:#475467;font-size:.72rem;letter-spacing:.04em}.data-table td,.data-table th{-webkit-border-after:1px solid var(--dash-border);border-block-end:1px solid var(--dash-border)}.data-table td{color:var(--dash-ink)}.data-table tbody tr:hover{background:#fbfdff}.status-pill{min-block-size:1.65rem;border:1px solid #cfe1ff;background:#edf5ff;color:var(--dash-accent)}.row-actions{align-items:center}.button.secondary,.inline-button{border-color:var(--dash-border);background:#fff;color:var(--dash-ink);box-shadow:0 1px 2px rgba(17,24,39,.05)}.button.secondary:hover,.inline-button:hover{border-color:#b9c6d8;background:#f8fafc}.inline-button.danger-action{border-color:rgba(190,18,60,.22);color:#be123c}.inline-button.danger-action:hover{border-color:rgba(190,18,60,.34);background:#fff1f2}.dashboard-shell .button.primary,.form-panel .button.primary,.inline-button.primary-action{border-color:var(--dash-accent);background:var(--dash-accent);color:#fff;box-shadow:0 10px 24px rgba(15,98,201,.22)}.dashboard-shell .button.primary:hover,.form-panel .button.primary:hover,.inline-button.primary-action:hover{background:#0b55b3}.dashboard-shell .availability-range-selection .availability-confirm-button,.dashboard-shell .availability-range-selection .availability-confirm-button:not(:disabled){border-color:#9bc4ff;background:#dbeafe;color:#0b55b3;box-shadow:none}.dashboard-shell .availability-range-selection .availability-confirm-button:focus-visible,.dashboard-shell .availability-range-selection .availability-confirm-button:hover{border-color:#7db2ff;background:#bfdbfe;color:#0a4a9f}.dashboard-shell .availability-range-selection .availability-confirm-button:disabled{border-color:#cfe1ff;background:#eff6ff;color:var(--dash-accent);box-shadow:none}.button.danger-button{border-color:#be123c;background:#be123c;color:#fff}.button.danger-button:focus-visible,.button.danger-button:hover{border-color:#9f1239;background:#9f1239;color:#fff}.auth-card input,.auth-card select,.auth-card textarea,.form-panel input,.form-panel select,.form-panel textarea,.revenue-filter input,.revenue-filter select{border-color:#d6dce8;background:#fcfdff;box-shadow:inset 0 1px 0 rgba(17,24,39,.02)}.auth-card select,.form-panel select,.revenue-filter select{border-color:#cfd8e6;background-color:#f8fafc;color:var(--dash-ink);font-weight:760}.auth-card input:focus-visible,.auth-card select:focus-visible,.auth-card textarea:focus-visible,.form-panel input:focus-visible,.form-panel select:focus-visible,.form-panel textarea:focus-visible,.revenue-filter input:focus-visible,.revenue-filter select:focus-visible{border-color:var(--dash-accent);outline:0;box-shadow:0 0 0 1px rgba(15,98,201,.22)}.form-fieldset{grid-template-columns:1fr;border-block-start-color:var(--dash-border)}.form-fieldset legend{color:#475467;letter-spacing:.06em}.revenue-filter{padding:.35rem;background:#f9fafc}.dashboard-date-filter,.revenue-filter{border:1px solid var(--dash-border);border-radius:var(--radius)}.dashboard-date-filter{display:grid;grid-gap:.45rem;gap:.45rem;inline-size:min(100%,38rem);padding:.45rem;background:rgba(248,250,252,.94);box-shadow:0 10px 24px rgba(17,24,39,.05)}.dashboard-date-filter-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-inline-size:0;padding-inline:.25rem}.dashboard-date-filter-head span{color:#64748b;font-size:.68rem;font-weight:860;letter-spacing:.08em;text-transform:uppercase}.dashboard-date-filter-head strong{overflow:hidden;color:var(--dash-ink);font-size:.8rem;font-weight:850;text-align:end;text-overflow:ellipsis;white-space:nowrap}.dashboard-date-filter-controls{display:flex;align-items:center;justify-content:space-between;gap:.45rem}.dashboard-date-filter .range-tabs{min-inline-size:0}.dashboard-date-filter .range-tab{min-block-size:2rem;padding:.34rem .54rem;font-size:.76rem}.dashboard-date-nav{display:inline-flex;align-items:center;gap:.28rem}.dashboard-date-filter .range-nav-button{min-block-size:2rem;padding:.34rem .48rem}.dashboard-date-filter .range-nav-button[aria-label]{inline-size:2rem;padding-inline:0}.dashboard-custom-range{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.45rem;gap:.45rem;-webkit-border-before:1px solid var(--dash-border);border-block-start:1px solid var(--dash-border);-webkit-padding-before:.45rem;padding-block-start:.45rem}.dashboard-custom-range label{display:grid;grid-gap:.2rem;gap:.2rem;color:#64748b;font-size:.7rem;font-weight:850;text-transform:uppercase}.dashboard-custom-range input{min-block-size:2rem;border:1px solid #cfd8e6;border-radius:calc(var(--radius) - 2px);padding:.35rem .5rem;background:#fff;color:var(--dash-ink);font-size:.78rem;font-weight:760}.range-tabs{display:flex;flex-wrap:wrap;gap:.25rem}.range-tab{display:inline-flex;align-items:center;justify-content:center;min-block-size:2.2rem;border:1px solid transparent;border-radius:calc(var(--radius) - 2px);padding:.42rem .68rem;background:transparent;color:#475467;font-size:.82rem;font-weight:850;cursor:pointer}.range-tab:hover{background:#fff;color:var(--dash-ink)}.range-tab[aria-pressed=true]{border-color:#cfe1ff;background:#fff;color:var(--dash-accent);box-shadow:0 1px 2px rgba(17,24,39,.04)}.range-navigator{display:grid;grid-template-columns:auto minmax(10rem,1fr) auto;align-items:center;grid-gap:.45rem;gap:.45rem;inline-size:100%;-webkit-border-before:1px solid var(--dash-border);border-block-start:1px solid var(--dash-border);-webkit-padding-before:.45rem;padding-block-start:.45rem}.range-nav-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-block-size:2rem;border:1px solid var(--dash-border);border-radius:calc(var(--radius) - 2px);padding:.35rem .55rem;background:#fff;color:var(--dash-ink);font-size:.78rem;font-weight:850}.range-nav-button:hover{border-color:#cfe1ff;color:var(--dash-accent)}.range-nav-button.is-disabled{background:#f1f4f8;cursor:not-allowed}.range-nav-button.is-disabled,.range-nav-button.is-disabled:hover{border-color:var(--dash-border);color:#98a2b3}.range-nav-button .icon{inline-size:.9rem;block-size:.9rem}.range-nav-next .icon{transform:rotate(180deg)}.range-current{overflow:hidden;color:#475467;font-size:.78rem;font-weight:780;text-align:center;text-overflow:ellipsis;white-space:nowrap}.custom-range-fields{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:.5rem;-webkit-padding-before:.2rem;padding-block-start:.2rem}.custom-range-fields label{display:grid;grid-gap:.2rem;gap:.2rem}.editor-shell{border-color:var(--dash-border);box-shadow:0 10px 30px rgba(17,24,39,.04)}.editor-toolbar{background:#f9fafc}.editor-toolbar button{border-color:var(--dash-border);color:var(--dash-ink)}.rich-editor{background:linear-gradient(180deg,#fff,#fcfdff)}.media-uploader{display:grid;grid-gap:.75rem;gap:.75rem}.media-drop{display:grid;place-items:center;min-block-size:8rem;border:1px dashed #bcc8da;border-radius:var(--radius);background:#f8fafc;color:var(--dash-ink);cursor:pointer}.media-drop:hover{border-color:var(--dash-accent);background:#f5f9ff}.media-drop input{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;opacity:0;pointer-events:none}.media-drop-copy{display:inline-flex;align-items:center;gap:.55rem;color:var(--dash-accent);font-size:.9rem;font-weight:850}.image-preview{display:grid;grid-gap:.45rem;gap:.45rem;margin:0}.image-preview img{inline-size:min(100%,34rem);aspect-ratio:16/9;object-fit:cover;border:1px solid var(--dash-border);border-radius:var(--radius);background:#f8fafc}.field-error,.image-preview figcaption{color:#667085;font-size:.78rem}.field-error{color:#b42318;font-weight:760}.client-form{gap:1.5rem}.client-contact-grid,.client-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-record-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,22rem);grid-gap:clamp(1.4rem,2vw,2rem);gap:clamp(1.4rem,2vw,2rem);align-items:start}.client-record-grid>*{min-inline-size:0}.client-record-grid .compact-stack{inline-size:100%;min-inline-size:0;gap:1rem}.client-record-grid input,.client-record-grid select,.client-record-grid textarea,.notification-row{max-inline-size:100%}.notification-row{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.85rem;inline-size:-moz-fit-content;inline-size:fit-content;border:1px solid var(--dash-border);border-radius:var(--radius);padding:.55rem .75rem;background:#f8fafc}.notification-title{color:#475467;font-size:.78rem;font-weight:850;text-transform:uppercase}.notification-row label{display:inline-flex;align-items:center;gap:.45rem;color:var(--dash-ink);font-size:.86rem;font-weight:820}.notification-row input[type=checkbox]{inline-size:1rem;block-size:1rem;min-block-size:1rem;accent-color:var(--dash-accent)}.notification-channel-line,.notification-primary-line{display:flex;flex-basis:100%;flex-wrap:wrap;align-items:center;gap:.85rem}.notification-channel-line{-webkit-padding-start:0;padding-inline-start:0}.notification-row-break{flex-basis:100%}.form-footer{display:flex;justify-content:flex-end;-webkit-border-before:1px solid var(--dash-border);border-block-start:1px solid var(--dash-border);-webkit-padding-before:1rem;padding-block-start:1rem}.form-footer .button,.form-panel>.button{min-inline-size:10rem}.form-panel>.button{justify-self:end;inline-size:auto}.modal-backdrop{position:fixed;inset-block:0;inset-inline-start:19rem;inset-inline-end:0;z-index:80;display:grid;align-items:safe center;justify-items:center;padding:clamp(1rem,3vw,2rem);background:rgba(10,24,48,.34);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-backdrop,.modal-panel{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.modal-panel{inline-size:min(100%,34rem);min-block-size:min(31rem,calc(100dvh - 2rem));max-block-size:calc(100dvh - 2rem);border:1px solid rgba(198,211,230,.86);border-radius:calc(var(--radius) + 2px);background:#fff;box-shadow:0 28px 90px rgba(9,27,58,.2)}.modal-backdrop::-webkit-scrollbar,.modal-form::-webkit-scrollbar,.modal-panel .modern-select-menu::-webkit-scrollbar,.modal-panel::-webkit-scrollbar{display:none}.modal-panel .modern-select-menu{scrollbar-width:none}.delete-confirm-modal{inline-size:min(100%,28rem);min-block-size:auto}.delete-confirm-copy{margin:0;color:#667085;font-size:.9rem;font-weight:700}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;-webkit-border-after:1px solid var(--dash-border);border-block-end:1px solid var(--dash-border);padding:1.15rem 1.25rem}.modal-header h2{margin:0;color:var(--blue-950);font-size:1rem;line-height:1.2}.modal-header p{margin:.28rem 0 0;color:var(--muted);font-size:.84rem}.modal-close{display:inline-grid;place-items:center;flex:0 0 auto;inline-size:2rem;block-size:2rem;border:1px solid var(--dash-border);border-radius:999px;background:#f8fbff;color:var(--blue-950);cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.modal-close:focus-visible,.modal-close:hover{border-color:rgba(26,93,171,.42);background:var(--surface-blue);color:var(--dash-accent)}.modal-close .icon{inline-size:.9rem;block-size:.9rem}.modal-form{padding:1.25rem}.modal-form label:not(.modern-field){gap:.5rem;color:var(--dash-muted);font-size:.78rem;font-weight:850;letter-spacing:0}.modal-form label:not(.modern-field) input:not([type=checkbox]),.modal-form label:not(.modern-field) select{min-block-size:3rem;border-color:transparent;border-radius:.75rem;padding:.78rem .9rem;background-color:#f4f7fb;color:var(--dash-ink);font-size:.94rem;font-weight:720;box-shadow:inset 0 0 0 1px rgba(203,213,225,.82)}.modal-form label:not(.modern-field) select{background-color:#f4f7fb}.modal-form label:not(.modern-field) input:not([type=checkbox]):hover,.modal-form label:not(.modern-field) select:hover{border-color:transparent;background-color:#f4f7fb;box-shadow:inset 0 0 0 1px rgba(203,213,225,.82)}.modal-form label:not(.modern-field) input:not([type=checkbox]):focus-visible,.modal-form label:not(.modern-field) select:focus-visible{border-color:transparent;background-color:#fff;box-shadow:inset 0 0 0 1px var(--dash-accent),0 0 0 3px rgba(15,98,201,.12)}.modern-field{display:grid;grid-gap:.38rem;gap:.38rem;min-inline-size:0;border:1px solid #dbe3ef;border-radius:.95rem;padding:.72rem .9rem .78rem;background:#f8fafc;box-shadow:0 1px 2px rgba(15,23,42,.03)}.modern-field:focus-within{border-color:rgba(15,98,201,.72);background:#fff;box-shadow:0 0 0 3px rgba(15,98,201,.1)}.modern-field span{color:#667085;font-size:.72rem;font-weight:860;line-height:1}.modern-field input,.modern-field select,.modern-field textarea{min-block-size:1.55rem;border:0;border-radius:0;padding:0;background-color:transparent;color:var(--dash-ink);font-size:.96rem;font-weight:740;line-height:1.35;box-shadow:none}.modern-field textarea{resize:vertical;min-block-size:2.5rem;max-block-size:5rem}.modern-select-wrap{position:relative;display:grid;align-items:center}.modern-select-wrap select{-webkit-appearance:none;-moz-appearance:none;appearance:none;inline-size:100%;-webkit-padding-end:1.65rem;padding-inline-end:1.65rem;background-image:none;cursor:pointer}.modern-select-wrap .icon{position:absolute;inset-inline-end:0;inline-size:1rem;block-size:1rem;color:#667085;pointer-events:none}.modern-role-field{position:relative}.modern-role-field.is-open{z-index:6}.modern-select-button{display:flex;align-items:center;justify-content:space-between;gap:.6rem;inline-size:100%;min-block-size:1.6rem;border:0;padding:0;background:transparent;color:var(--dash-ink);text-align:start;cursor:pointer}.modern-select-button>span,.modern-select-menu button>span{display:grid;grid-gap:.06rem;gap:.06rem}.modern-select-button strong,.modern-select-menu strong{color:var(--dash-ink);font-size:.9rem;font-weight:780;line-height:1.2}.modern-select-button small,.modern-select-menu small{color:#667085;font-size:.68rem;font-weight:680;line-height:1.2}.modern-select-button .icon{flex:0 0 auto;inline-size:1rem;block-size:1rem;color:#667085;transition:transform .16s ease}.modern-select-button[aria-expanded=true] .icon{transform:rotate(180deg)}.modern-select-button:focus-visible{outline:0}.modern-select-button:disabled{cursor:not-allowed;opacity:.62}.modern-select-menu{position:absolute;inset-block-start:calc(100% + .35rem);inset-inline:0;z-index:5;display:grid;grid-gap:.22rem;gap:.22rem;border:1px solid #dbe3ef;border-radius:.78rem;padding:.3rem;background:#fff;box-shadow:0 18px 42px rgba(15,23,42,.16)}.modern-select-search{padding:.2rem}.modern-select-search input{inline-size:100%;min-block-size:2.1rem;border:1px solid #dbe3ef;border-radius:.58rem;padding:.45rem .58rem;background:#f8fafc;color:var(--dash-ink);font-size:.84rem;font-weight:720;outline:0}.modern-select-search input:focus{border-color:rgba(15,98,201,.62);background:#fff;box-shadow:0 0 0 2px rgba(15,98,201,.1)}.modern-select-empty{margin:0;padding:.7rem .58rem;color:#667085;font-size:.78rem;font-weight:740}.modern-select-menu button{display:flex;align-items:center;justify-content:space-between;gap:.55rem;inline-size:100%;border:0;border-radius:.58rem;min-block-size:3.1rem;padding:.64rem .66rem;background:transparent;color:var(--dash-ink);text-align:start;cursor:pointer}.modern-select-menu button.is-selected,.modern-select-menu button:focus-visible,.modern-select-menu button:hover{background:#f4f7fb;outline:0}.modern-select-menu button.is-selected{box-shadow:inset 0 0 0 1px rgba(15,98,201,.12)}.modern-select-menu .icon{inline-size:.86rem;block-size:.86rem;color:var(--dash-accent)}.modern-field input::placeholder,.modern-field textarea::placeholder{color:#98a2b3;font-weight:620}.modern-field input:focus-visible,.modern-field input:hover,.modern-field select:focus-visible,.modern-field select:hover,.modern-field textarea:focus-visible,.modern-field textarea:hover{border:0;background-color:transparent;outline:0;box-shadow:none}.modern-picker-control{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;grid-gap:.45rem;gap:.45rem;min-block-size:1.6rem}.modern-picker-field{position:relative}.modern-picker-field.is-open{z-index:8}.modern-picker-display{min-inline-size:0;border:0;padding:0;background:transparent;color:var(--dash-ink);font-size:.96rem;font-weight:740;line-height:1.35;text-align:start;cursor:pointer}.modern-picker-display.is-placeholder{color:#98a2b3;font-weight:680}.modern-picker-button{display:inline-grid;place-items:center;inline-size:1.65rem;block-size:1.65rem;border:0;border-radius:.5rem;background:rgba(15,118,110,.1);color:var(--dash-success);cursor:pointer;transition:background .16s ease,color .16s ease,transform .16s ease}.modern-picker-button:focus-visible,.modern-picker-button:hover,.modern-picker-field:focus-within .modern-picker-button,.modern-picker-field:hover .modern-picker-button{background:rgba(15,118,110,.18);color:#0b5f59;outline:0}.modern-picker-field.is-open .modern-picker-button{background:rgba(15,118,110,.22);color:#064e3b}.modern-picker-button:active{transform:scale(.96)}.modern-picker-button:disabled{cursor:not-allowed;opacity:.62}.modern-picker-button .icon{inline-size:.95rem;block-size:.95rem}.modern-picker-popover{position:absolute;inset-block-start:calc(100% + .42rem);inset-inline:0;z-index:7;display:grid;grid-gap:.55rem;gap:.55rem;border:1px solid rgba(15,118,110,.18);border-radius:.9rem;padding:.65rem;background:#fff;box-shadow:0 20px 46px rgba(15,23,42,.16)}.modern-calendar-head{display:grid;grid-template-columns:2rem minmax(0,1fr) 2rem;align-items:center;grid-gap:.45rem;gap:.45rem}.modern-calendar-head strong{color:var(--dash-ink);font-size:.9rem;font-weight:820;text-align:center}.modern-calendar-head button{display:inline-grid;place-items:center;inline-size:2rem;block-size:2rem;border:0;border-radius:.55rem;background:rgba(15,118,110,.08);color:var(--dash-success);cursor:pointer}.modern-calendar-head button:focus-visible,.modern-calendar-head button:hover{background:var(--dash-success);color:#fff;outline:0}.modern-calendar-head .icon{inline-size:.9rem;block-size:.9rem}.modern-calendar-next .icon{transform:rotate(180deg)}.modern-calendar-grid,.modern-calendar-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-gap:.25rem;gap:.25rem}.modern-calendar-weekdays span{color:#667085;font-size:.64rem;font-weight:860;text-align:center}.modern-calendar-grid button,.modern-time-list button{border:0;border-radius:.55rem;background:transparent;color:var(--dash-ink);font-size:.82rem;font-weight:780;cursor:pointer}.modern-calendar-grid button{aspect-ratio:1}.modern-calendar-grid button.is-muted{color:#98a2b3}.modern-calendar-grid button:focus-visible,.modern-calendar-grid button:hover,.modern-time-list button:focus-visible,.modern-time-list button:hover{background:#ecfdf5;color:var(--dash-success);outline:0}.modern-calendar-grid button.is-selected,.modern-calendar-grid button.is-selected:focus-visible,.modern-calendar-grid button.is-selected:hover,.modern-time-list button.is-selected,.modern-time-list button.is-selected:focus-visible,.modern-time-list button.is-selected:hover{background:var(--dash-success);color:#fff}.modern-time-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.35rem;gap:.35rem;max-block-size:14rem;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(15,118,110,.42) transparent}.modern-time-list button{min-block-size:2rem}.list-controls{display:grid;grid-gap:.85rem;gap:.85rem;-webkit-margin-after:1rem;margin-block-end:1rem}.list-filter-row{display:flex;align-items:center;gap:.75rem;justify-content:space-between;overflow-x:auto;-webkit-padding-after:.2rem;padding-block-end:.2rem}.list-search-form{display:flex;align-items:center;gap:.65rem;flex:0 0 min(100%,28rem);min-inline-size:min(100%,22rem);-webkit-margin-start:auto;margin-inline-start:auto}.list-search-input{display:flex;align-items:center;gap:.5rem;flex:1 1;min-inline-size:0;min-block-size:2.55rem;padding-inline:.85rem;border:1px solid var(--dash-border);border-radius:8px;background:#fff}.list-search-input input{flex:1 1;min-inline-size:0;border:0;outline:0;color:var(--dash-ink);font:inherit}.list-search-clear{display:inline-grid;place-items:center;inline-size:1.8rem;block-size:1.8rem;border-radius:999px;color:var(--muted)}.list-search-clear:hover{color:var(--dash-ink);background:rgba(15,23,42,.08)}.list-status-row{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;grid-gap:.65rem;gap:.65rem;flex:1 1 auto;min-inline-size:0}.list-status-button{display:inline-flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.55rem .75rem;border:1px solid var(--dash-border);border-radius:8px;color:var(--dash-ink);background:#fff;text-decoration:none;white-space:nowrap}.list-search-form>.inline-button,.list-status-button{min-block-size:2.55rem}.list-search-form>.inline-button[aria-disabled=true]{cursor:default;opacity:.48}.list-status-button strong{color:var(--muted)}.list-status-button.is-active,.list-status-button:hover{border-color:#9bc4ff;box-shadow:0 10px 24px rgba(37,99,235,.1)}.list-status-button.is-active{border-color:var(--dash-accent);color:#fff;background:var(--dash-accent)}.list-status-button.is-active strong{color:inherit}.list-load-more{display:flex;justify-content:center;-webkit-margin-before:1rem;margin-block-start:1rem}.case-list-filter-row{display:flex;align-items:stretch;gap:.75rem;-webkit-margin-after:1rem;margin-block-end:1rem;overflow-x:auto;-webkit-padding-after:.25rem;padding-block-end:.25rem}.case-list-filter-row .list-controls{flex:0 0 min(100%,28rem);-webkit-margin-after:0;margin-block-end:0}.case-list-filter-row .list-search-form{flex-basis:100%}.case-summary-grid{display:grid;grid-auto-flow:column;grid-auto-columns:max-content;grid-gap:.65rem;gap:.65rem;flex:1 1 auto;min-inline-size:0;-webkit-margin-after:1rem;margin-block-end:1rem;overflow-x:auto;-webkit-padding-after:.25rem;padding-block-end:.25rem}.case-list-filter-row .case-summary-grid{-webkit-margin-after:0;margin-block-end:0;overflow:visible;-webkit-padding-after:0;padding-block-end:0}.case-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));grid-gap:1rem;gap:1rem;-webkit-margin-after:1rem;margin-block-end:1rem}.case-summary-card{text-decoration:none;transition:border-color .16s ease,box-shadow .16s ease}.case-summary-card.is-active,.case-summary-card:hover{border-color:#9bc4ff;box-shadow:0 10px 24px rgba(37,99,235,.1)}.case-summary-card.is-active{border-color:var(--dash-accent);color:#fff;background:var(--dash-accent)}.mini-label,.muted-copy{margin:0;color:var(--muted);font-size:.84rem;font-weight:760}.table-subtext{display:block;-webkit-margin-before:.2rem;margin-block-start:.2rem;color:var(--muted);font-size:.76rem;font-weight:700;line-height:1.35}.case-modal{display:flex;flex-direction:column;inline-size:min(100%,48rem);overflow:hidden}.case-modal .modal-form{display:flex;flex:1 1 auto;min-block-size:0;flex-direction:column;overflow:auto;-webkit-padding-after:0;padding-block-end:0;scrollbar-width:none}.case-modal .form-footer{position:-webkit-sticky;position:sticky;inset-block-end:-1.25rem;z-index:2;margin-inline:-1.25rem;-webkit-margin-after:-1.25rem;margin-block-end:-1.25rem;-webkit-margin-before:1rem;margin-block-start:1rem;padding:1rem 1.25rem 1.25rem;background:#fff}.case-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.booking-create-modal{inline-size:min(100%,44rem);min-block-size:auto;max-block-size:calc(100dvh - 2rem)}.booking-create-modal .modal-header{padding:.85rem 1rem}.booking-create-modal .modal-form{gap:.65rem;overflow:auto;padding:.9rem 1rem 0;scrollbar-width:none}.booking-create-modal .case-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.62rem}.booking-create-modal .modern-field{border-radius:.72rem;padding:.52rem .66rem .58rem}.booking-create-modal .modern-field textarea{min-block-size:2.1rem;max-block-size:3rem}.booking-create-modal .booking-time-row{gap:.62rem}.booking-create-modal .booking-availability-summary{padding:.6rem .7rem}.booking-create-modal .notification-row{gap:.55rem;padding:.62rem .7rem}.booking-create-modal .form-footer{position:static;margin:0 -1rem;padding:.72rem 1rem .9rem}.case-modal-span{grid-column:1/-1}.case-section{-webkit-margin-before:1rem;margin-block-start:1rem}.case-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));grid-gap:.75rem;gap:.75rem}.case-facts div,.case-next-item,.case-timeline-entry{border:1px solid var(--dash-border);border-radius:.75rem;padding:.85rem;background:#f8fafc}.case-facts span,.case-next-item small,.case-timeline-entry span{display:block;color:var(--muted);font-size:.76rem;font-weight:760;line-height:1.45}.case-facts strong,.case-next-item strong{display:block;-webkit-margin-before:.18rem;margin-block-start:.18rem;color:var(--dash-ink);font-size:.92rem;line-height:1.3}.case-notes{margin:0;color:var(--muted);font-size:.9rem;line-height:1.65}.case-next-list,.case-timeline{display:grid;grid-gap:.7rem;gap:.7rem}.case-next-item{display:grid;grid-gap:.3rem;gap:.3rem}.case-timeline-entry strong{display:block;-webkit-margin-before:.22rem;margin-block-start:.22rem;color:var(--dash-ink)}.case-timeline-entry p{margin:.32rem 0 0;color:var(--muted);font-size:.87rem;line-height:1.55}.inline-complete-form{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.inline-complete-form input{min-inline-size:11rem;min-block-size:2rem;border:1px solid var(--dash-border);border-radius:999px;padding:0 .7rem;color:var(--dash-ink);font-size:.82rem;font-weight:720}.availability-controls{-webkit-margin-after:1rem;margin-block-end:1rem}.availability-filter{display:grid;grid-template-columns:minmax(0,1fr) minmax(12rem,.4fr) auto;grid-gap:.8rem;gap:.8rem;align-items:end}.availability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));grid-gap:.9rem;gap:.9rem}.availability-widget{-webkit-margin-before:1rem;margin-block-start:1rem;scroll-margin-block-start:1rem}.availability-widget-heading{align-items:flex-start}.availability-heading-copy{display:grid;grid-gap:.35rem;gap:.35rem;flex:1 1 auto;min-inline-size:0}.availability-heading-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem .7rem;min-inline-size:0}.availability-heading-row h2{min-inline-size:0}.availability-heading-row .availability-legend{-webkit-margin-start:auto;margin-inline-start:auto}.availability-toolbar{justify-content:space-between;gap:.65rem}.availability-legend,.availability-toolbar{display:flex;flex-wrap:wrap;align-items:center}.availability-legend{gap:.45rem}.availability-week-slider{display:grid;grid-template-columns:minmax(6.75rem,auto) minmax(16rem,1fr) minmax(6.75rem,auto);align-items:center;grid-gap:.55rem;gap:.55rem;flex:1 1 38rem;min-inline-size:min(100%,34rem);border:1px solid var(--dash-border);border-radius:.85rem;padding:.42rem;background:linear-gradient(180deg,#fff,#f8fafc)}.availability-week-slider strong{color:var(--dash-ink)}.availability-legend-item{display:inline-flex;align-items:center;gap:.36rem;min-block-size:1.85rem;border:1px solid var(--dash-border);border-radius:999px;padding:.28rem .62rem;color:var(--dash-muted);font-size:.72rem;font-weight:820}.availability-legend-item:before{inline-size:.55rem;block-size:.55rem;border-radius:999px;content:"";background:#94a3b8}.availability-legend-item.is-available:before{background:#16a34a}.availability-legend-item.is-booked:before{background:#f97316}.availability-legend-item.is-tentative:before{background:#ca8a04}.availability-legend-item.is-blocked:before{background:#64748b}.availability-widget.is-compact .availability-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,9.5rem),1fr));gap:.62rem}.availability-widget.is-compact .availability-day{border-radius:.75rem;box-shadow:0 8px 20px rgba(16,45,118,.05)}.availability-widget.is-compact .availability-day header{padding:.58rem .65rem}.availability-widget.is-compact .availability-day header strong{font-size:.82rem}.availability-widget.is-compact .availability-day header span{border-radius:999px;padding:.18rem .42rem;background:#ecfdf5;color:#047857;font-size:.66rem}.availability-widget.is-compact .availability-slot-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem;padding:.5rem}.availability-widget.is-compact .availability-slot{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-content:center;min-block-size:2.25rem;border:1px solid transparent;border-radius:.55rem;padding:.36rem .42rem .36rem .68rem}.availability-widget.is-compact .availability-slot:before{position:absolute;inset-block:.46rem;inset-inline-start:.34rem;inline-size:.22rem;border-radius:999px;content:"";background:#94a3b8}.availability-widget.is-compact .availability-slot span{grid-row:auto;color:var(--dash-ink);font-size:.7rem;line-height:1.1}.availability-widget.is-compact .availability-slot strong{overflow:hidden;color:inherit;font-size:.58rem;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.availability-widget.is-compact .availability-slot small{display:none}.availability-widget.is-compact .availability-slot.is-available{border-color:#bbf7d0;background:#ecfdf5}.availability-widget.is-compact .availability-slot.is-available:before{background:#16a34a}.availability-widget.is-compact .availability-slot.is-booked{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.availability-widget.is-compact .availability-slot.is-booked:before{background:#f97316}.availability-widget.is-compact .availability-slot.is-tentative{border-color:#fde68a;background:#fefce8;color:#854d0e}.availability-widget.is-compact .availability-slot.is-tentative:before{background:#ca8a04}.availability-widget.is-compact .availability-slot.is-blocked,.availability-widget.is-compact .availability-slot.is-unavailable{border-color:#e2e8f0;background:#f8fafc;color:#475569}.availability-widget.is-compact .availability-slot.is-blocked:before,.availability-widget.is-compact .availability-slot.is-unavailable:before{background:#64748b}.availability-widget.is-calendar .availability-toolbar{align-items:stretch}.availability-widget.is-calendar .availability-week-slider{flex-basis:100%}.availability-calendar-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:.75rem;gap:.75rem}.availability-month{overflow:hidden;border:1px solid var(--dash-border);border-radius:.85rem;background:#fff;box-shadow:0 10px 26px rgba(16,45,118,.06)}.availability-month>header{-webkit-border-after:1px solid var(--dash-border);border-block-end:1px solid var(--dash-border);padding:.62rem .75rem;color:var(--dash-ink);font-size:.88rem;font-weight:880}.availability-month-days,.availability-month-weekdays{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.availability-month-weekdays{-webkit-border-after:1px solid #edf1f7;border-block-end:1px solid #edf1f7;background:#f8fafc}.availability-month-weekdays span{padding:.42rem .2rem;color:var(--muted);font-size:.66rem;font-weight:850;text-align:center}.availability-calendar-day{position:relative;display:grid;align-content:start;grid-gap:.18rem;gap:.18rem;min-block-size:4.35rem;border:1px solid #d9e1ec;padding:.42rem;background:#fff;color:var(--dash-ink);font:inherit;text-align:start}button.availability-calendar-day{cursor:pointer}button.availability-calendar-day:focus-visible,button.availability-calendar-day:hover{z-index:1;outline:0;box-shadow:inset 0 0 0 1px rgba(37,99,235,.2)}.availability-calendar-day.is-selected{align-content:center;z-index:1;outline:0;background:#fff;box-shadow:inset 0 0 0 1px rgba(37,99,235,.2)}.availability-calendar-day.is-selected.is-available,.availability-calendar-day.is-selected.is-blocked,.availability-calendar-day.is-selected.is-booked,.availability-calendar-day.is-selected.is-tentative{background:#fff}.availability-calendar-day.is-selected:after{content:none}.availability-calendar-day strong{color:var(--dash-ink);font-size:.78rem;line-height:1}.availability-calendar-day span{color:var(--dash-muted);font-size:.62rem;font-weight:780;line-height:1.15}.availability-calendar-day.is-available{background:#ecfdf5}.availability-calendar-day.is-booked{background:#fff7ed}.availability-calendar-day.is-tentative{background:#fefce8}.availability-calendar-day.is-blocked{background:#f8fafc}.availability-calendar-day.is-blank,.availability-calendar-day.is-closed,.availability-calendar-day.is-weekend{border:1px solid #d9e1ec;background:#fbfdff;color:#cbd5e1}.availability-calendar-day.is-weekend{background:#f8fafc}.availability-calendar-day.is-blank{min-block-size:4.35rem}.availability-day-dots{display:flex;align-items:center;gap:.16rem;-webkit-margin-before:auto;margin-block-start:auto}.availability-day-dots i{inline-size:.42rem;block-size:.42rem;border-radius:999px;background:#94a3b8}.availability-day-dots .is-available{background:#16a34a}.availability-day-dots .is-booked{background:#f97316}.availability-day-dots .is-tentative{background:#ca8a04}.availability-day-dots .is-blocked{background:#64748b}.availability-inline-slots{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));grid-gap:.14rem;gap:.14rem;block-size:100%;min-block-size:3.5rem}.availability-inline-slot{position:relative;display:flex;align-items:center;justify-content:center;min-block-size:0;border:1px solid transparent;border-radius:.28rem;padding:.04rem;background:#fff}.availability-inline-slot b{overflow:hidden;color:inherit;font-size:.58rem;font-weight:900;line-height:1;text-overflow:ellipsis;white-space:nowrap}.availability-inline-slot.is-available{border-color:#bbf7d0;background:#ecfdf5;color:#047857}.availability-inline-slot.is-booked{border-color:#fed7aa;background:#fff7ed;color:#9a3412}.availability-inline-slot.is-tentative{border-color:#fde68a;background:#fefce8;color:#854d0e}.availability-inline-slot.is-blocked,.availability-inline-slot.is-unavailable{border-color:#cbd5e1;background:#eef2f7;color:#334155}.scheduling-calendar{overflow:hidden}.scheduling-calendar-heading{align-items:flex-start}.scheduling-controls{display:grid;grid-template-columns:minmax(13rem,1fr) auto;grid-gap:.65rem;gap:.65rem;align-items:end}.scheduling-toolbar{align-items:center;gap:.8rem}.scheduling-toolbar .availability-legend{flex:0 1 auto;justify-content:flex-end}.scheduling-weekbar{display:grid;grid-template-columns:minmax(6.75rem,auto) minmax(16rem,1fr) minmax(6.75rem,auto);align-items:center;grid-gap:.55rem;gap:.55rem;flex:1 1 38rem;min-inline-size:min(100%,34rem);border:1px solid var(--dash-border);border-radius:.85rem;padding:.42rem;background:linear-gradient(180deg,#fff,#f8fafc)}.scheduling-range-label{display:grid;grid-gap:.05rem;gap:.05rem;min-inline-size:0;text-align:center}.scheduling-range-label span{color:#64748b;font-size:.68rem;font-weight:860;letter-spacing:.08em;line-height:1.2;text-transform:uppercase}.scheduling-range-label strong{overflow:hidden;color:var(--dash-ink);font-size:.96rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.scheduling-nav-button{justify-content:center;min-block-size:2.35rem;min-inline-size:6.75rem;border-radius:calc(var(--radius) - 2px)}.scheduling-nav-next .icon{transform:rotate(180deg)}.schedule-grid{display:grid;grid-template-columns:4.4rem repeat(var(--schedule-days),minmax(8.5rem,1fr));overflow:auto;max-inline-size:100%;border:1px solid var(--dash-border);border-radius:var(--radius);background:#fff;box-shadow:0 14px 34px rgba(16,45,118,.06)}.schedule-row{display:contents}.schedule-corner,.schedule-day-head,.schedule-time{position:-webkit-sticky;position:sticky;z-index:2;background:#f8fafc}.schedule-corner{inset-inline-start:0;z-index:4}.schedule-corner,.schedule-day-head{inset-block-start:0;min-block-size:4.1rem;-webkit-border-end:1px solid var(--dash-border);border-inline-end:1px solid var(--dash-border);-webkit-border-after:1px solid var(--dash-border);border-block-end:1px solid var(--dash-border)}.schedule-day-head{display:grid;align-content:center;grid-gap:.16rem;gap:.16rem;padding:.72rem}.schedule-day-head:last-of-type{-webkit-border-end:0;border-inline-end:0}.schedule-day-head strong{color:var(--dash-ink);font-size:.86rem;line-height:1.2}.schedule-day-head span{color:var(--muted);font-size:.7rem;font-weight:820}.schedule-time{inset-inline-start:0;z-index:3;align-items:start;-webkit-border-end:1px solid var(--dash-border);border-inline-end:1px solid var(--dash-border);-webkit-border-after:1px solid #edf1f7;border-block-end:1px solid #edf1f7;padding:.7rem .55rem;color:var(--muted);font-size:.73rem;font-weight:850}.schedule-cell,.schedule-time{display:grid;min-block-size:4.7rem}.schedule-cell{align-content:start;grid-gap:.2rem;gap:.2rem;border:0;-webkit-border-end:1px solid #edf1f7;border-inline-end:1px solid #edf1f7;-webkit-border-after:1px solid #edf1f7;border-block-end:1px solid #edf1f7;padding:.62rem .68rem;background:#fff;color:var(--dash-ink);text-align:start;text-decoration:none}.schedule-cell strong{color:inherit;font-size:.76rem;font-weight:880;line-height:1.15}.schedule-cell span{display:-webkit-box;overflow:hidden;color:var(--muted);font-size:.68rem;font-weight:720;line-height:1.25;-webkit-box-orient:vertical;-webkit-line-clamp:2}.schedule-cell.is-available{position:relative;background:#fff}.schedule-cell.is-available:before{position:absolute;inset-block:.62rem;inset-inline-start:0;inline-size:.18rem;border-radius:999px;content:"";background:#16a34a}.schedule-cell.is-available:focus-visible,.schedule-cell.is-available:hover{background:#f0fdf4;outline:0;box-shadow:inset 0 0 0 2px rgba(22,163,74,.28)}.schedule-cell.is-booked{-webkit-border-start:.22rem solid #f97316;border-inline-start:.22rem solid #f97316;background:#fff7ed}.schedule-cell.is-tentative{-webkit-border-start:.22rem solid #ca8a04;border-inline-start:.22rem solid #ca8a04;background:#fefce8}.schedule-cell.is-blocked,.schedule-cell.is-unavailable{-webkit-border-start:.22rem solid #64748b;border-inline-start:.22rem solid #64748b;background:#f1f5f9}.schedule-cell.is-empty{background:#f8fafc}.availability-day{overflow:hidden;border:1px solid var(--dash-border);border-radius:var(--radius);background:#fff;box-shadow:0 14px 34px rgba(16,45,118,.07)}.availability-day header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;-webkit-border-after:1px solid var(--dash-border);border-block-end:1px solid var(--dash-border);padding:.8rem}.availability-day header strong{color:var(--dash-ink);font-size:.92rem}.availability-day header span{color:var(--muted);font-size:.72rem;font-weight:820}.availability-slot-list{display:grid}.availability-slot{display:grid;grid-template-columns:3.4rem minmax(0,1fr);grid-gap:.1rem .55rem;gap:.1rem .55rem;min-block-size:4rem;-webkit-border-after:1px solid #edf1f7;border-block-end:1px solid #edf1f7;padding:.58rem .75rem;background:#fff}.availability-slot:last-child{-webkit-border-after:0;border-block-end:0}.availability-slot span{grid-row:span 2;color:var(--muted);font-size:.75rem;font-weight:820}.availability-slot strong{color:var(--dash-ink);font-size:.82rem}.availability-slot small{min-inline-size:0;color:var(--muted);font-size:.7rem;font-weight:700;line-height:1.25}.availability-slot.is-available{background:#f0fdf4}.availability-slot.is-booked{background:#fff7ed}.availability-slot.is-blocked,.availability-slot.is-unavailable{background:#f8fafc}.availability-slot.is-tentative{background:#fefce8}.booking-availability-picker{display:grid;grid-gap:.75rem;gap:.75rem;border:1px solid #dbe3ef;border-radius:.95rem;padding:.85rem;background:#fbfdff}.booking-time-row{display:grid;grid-template-columns:minmax(12rem,1.4fr) minmax(0,1fr) minmax(0,1fr);grid-gap:.85rem;gap:.85rem}.booking-availability-summary{display:flex;align-items:center;justify-content:space-between;gap:.85rem;border:1px solid #dbe3ef;border-radius:.95rem;padding:.85rem .9rem;background:#fbfdff}.booking-availability-summary>div{display:grid;grid-gap:.18rem;gap:.18rem;min-inline-size:0}.booking-availability-summary strong{color:var(--dash-ink);font-size:.94rem;line-height:1.2}.booking-availability-summary small{color:var(--muted);font-size:.76rem;font-weight:720;line-height:1.3}.booking-availability-summary .field-error-text{color:#b42318}.booking-availability-summary .inline-button{flex:0 0 auto}.nested-modal-backdrop{z-index:100}.availability-modal-panel{inline-size:min(100%,42rem);min-block-size:auto;overflow:hidden}.availability-modal-panel .booking-availability-picker{position:relative;border:0;border-radius:0;max-block-size:min(70dvh,34rem);overflow:auto;-webkit-padding-after:0;padding-block-end:0;scrollbar-width:none}.availability-modal-panel .booking-availability-picker::-webkit-scrollbar,.booking-slot-days::-webkit-scrollbar{display:none}.availability-modal-panel .booking-availability-picker:after,.availability-modal-panel .booking-availability-picker:before{position:-webkit-sticky;position:sticky;z-index:3;display:block;block-size:1rem;pointer-events:none;content:""}.availability-modal-panel .booking-availability-picker:before{inset-block-start:0;-webkit-margin-after:-1rem;margin-block-end:-1rem;background:linear-gradient(#fff,hsla(0,0%,100%,0))}.availability-modal-panel .booking-availability-picker:after{inset-block-end:0;-webkit-margin-before:-1rem;margin-block-start:-1rem;background:linear-gradient(hsla(0,0%,100%,0),#fff)}.availability-load-more{display:grid;place-items:center;grid-gap:.6rem;gap:.6rem;padding:.5rem 0 .2rem}.availability-load-more .notice{margin:0;inline-size:100%}.booking-availability-picker header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.booking-availability-picker h3{display:inline-flex;align-items:center;gap:.48rem;margin:0;color:var(--dash-ink);font-size:.9rem;line-height:1.2}.booking-availability-picker h3 .icon{color:var(--dash-accent)}.booking-availability-picker p{margin:.22rem 0 0;color:var(--muted);font-size:.75rem;font-weight:760}.availability-range-selection{position:-webkit-sticky;position:sticky;inset-block-end:0;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:.55rem;gap:.55rem;align-items:end;margin:.85rem -1rem -1rem;-webkit-border-before:1px solid #cfe1ff;border-block-start:1px solid #cfe1ff;padding:.75rem 1rem;background:hsla(0,0%,100%,.96);box-shadow:0 -14px 30px rgba(15,23,42,.08);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.availability-selected-summary{display:grid;grid-gap:.35rem;gap:.35rem}.booking-availability-picker .availability-range-hint{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.45rem;gap:.45rem;margin:0;border:1px solid #cfe1ff;border-radius:.75rem;min-block-size:3rem;padding:.5rem .62rem;background:#dbeafe}.booking-availability-picker .availability-range-hint span{display:grid;grid-gap:.08rem;gap:.08rem;min-inline-size:0}.booking-availability-picker .availability-range-hint small{color:#64748b;font-size:.62rem;font-weight:850;letter-spacing:.04em;line-height:1.1;text-transform:uppercase}.booking-availability-picker .availability-range-hint strong{overflow:hidden;color:var(--dash-accent);font-size:.78rem;font-weight:860;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}.availability-range-selection .inline-button{justify-content:center;min-block-size:3rem;min-inline-size:8.5rem}.availability-range-selection .availability-confirm-button{border-color:#9bc4ff;background:#dbeafe;color:#0b55b3;box-shadow:none}.availability-range-selection .availability-confirm-button:focus-visible,.availability-range-selection .availability-confirm-button:hover{border-color:#7db2ff;background:#bfdbfe;color:#0a4a9f}.availability-range-selection .availability-confirm-button:disabled{border-color:#cfe1ff;background:#eff6ff;color:var(--dash-accent);box-shadow:none}.availability-load-more .inline-button:disabled{cursor:not-allowed}.availability-load-more .inline-button.primary-action{border-color:#cfe1ff;background:#eff6ff;color:var(--dash-accent)}.booking-slot-days{display:grid;grid-gap:.6rem;gap:.6rem;max-block-size:18rem;overflow:auto;-webkit-padding-end:.15rem;padding-inline-end:.15rem;scrollbar-width:none}.booking-slot-day{display:grid;grid-template-columns:5.4rem minmax(0,1fr);grid-gap:.55rem;gap:.55rem;align-items:start}.booking-slot-day>strong{position:-webkit-sticky;position:sticky;inset-block-start:0;color:var(--dash-ink);font-size:.78rem;line-height:2.2rem}.booking-slot-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(5.2rem,1fr));grid-gap:.42rem;gap:.42rem}.booking-slot-button{display:grid;grid-gap:.08rem;gap:.08rem;min-inline-size:0;min-block-size:3.05rem;border:1px solid #dbe3ef;border-radius:.7rem;padding:.5rem .44rem;background:#fff;color:var(--dash-ink);text-align:center;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.booking-slot-button span{color:inherit;font-size:.76rem;font-weight:850;line-height:1.15}.booking-slot-button small{color:var(--muted);font-size:.62rem;font-weight:760;line-height:1.15}.booking-slot-button.is-available{border-color:#dbe3ef;background:#fff}.booking-slot-button.is-booked{border-color:#f97316;background:#fff7ed}.booking-slot-button.is-blocked,.booking-slot-button.is-unavailable{background:#f1f5f9}.booking-slot-button.is-tentative{border-color:#ca8a04;background:#fefce8}.booking-slot-button.is-booked small{color:#c2410c}.booking-slot-button.is-tentative small{color:#854d0e}.booking-slot-button:focus-visible,.booking-slot-button:hover{border-color:#bbf7d0;background:#f0fdf4;outline:0;box-shadow:0 0 0 3px rgba(15,118,110,.1)}.booking-slot-button.is-selected{border-color:#86efac;background:#dcfce7;color:var(--dash-success);outline:0;box-shadow:inset 0 0 0 1px rgba(15,118,110,.16),0 0 0 3px rgba(15,118,110,.12)}.booking-slot-button.is-selected small{color:var(--dash-success)}.booking-slot-button:disabled{cursor:not-allowed;opacity:.72}.priority-urgent{color:#9a3412}.priority-critical{color:#991b1b}@media (max-width:720px){.availability-filter,.booking-slot-day,.case-form-grid{grid-template-columns:1fr}.availability-range-selection{grid-template-columns:1fr;margin-inline:-.75rem;padding-inline:.75rem}.availability-range-selection .availability-confirm-button{inline-size:100%}.scheduling-controls{grid-template-columns:1fr}.scheduling-toolbar .availability-legend{justify-content:flex-start}.availability-week-slider,.scheduling-weekbar{grid-template-columns:repeat(2,minmax(0,1fr));min-inline-size:0}.scheduling-range-label{grid-column:1/-1;grid-row:1}.scheduling-nav-button{min-inline-size:0}.schedule-grid{grid-template-columns:4.2rem repeat(var(--schedule-days),minmax(8rem,72vw))}.booking-slot-day>strong{position:static;line-height:1.2}}.modal-form .form-footer{gap:.65rem;align-items:center}.modal-form .form-footer .button{min-inline-size:8rem}.client-create-modal{inline-size:min(100%,44rem)}.client-create-form{gap:1rem}.client-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem;gap:.8rem}.client-modal-span{grid-column:1/-1}.invoice-create-modal{inline-size:min(100%,56rem)}.invoice-create-form{gap:.9rem}.invoice-modal-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.invoice-modal-grid>:first-child,.invoice-modal-grid>:nth-child(2){grid-column:span 3}.invoice-modal-grid>:nth-child(3),.invoice-modal-grid>:nth-child(4),.invoice-modal-grid>:nth-child(5){grid-column:span 2}.invoice-create-modal .modern-select-menu{max-block-size:14rem;overflow-y:auto}.invoice-items-panel{display:grid;grid-gap:.65rem;gap:.65rem;border:1px solid #dbe3ef;border-radius:.95rem;padding:.75rem;background:#fff}.invoice-items-head,.invoice-total-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.invoice-totals{display:grid}.invoice-totals .invoice-total-row{min-block-size:2.35rem}.invoice-totals .invoice-grand-total{color:var(--dash-ink);font-size:.86rem}.invoice-totals .invoice-grand-total strong{font-size:1.08rem}.subscription-vat-summary{border:1px solid #dbe3ef;border-radius:.95rem;padding:.25rem .75rem .65rem;background:#fff}.field-help{margin:0;color:#667085;font-size:.78rem;line-height:1.5}.invoice-items-head h3{margin:0;color:var(--dash-ink);font-size:.88rem;line-height:1.2}.invoice-items-head .inline-button{min-block-size:2rem;padding:.42rem .6rem}.invoice-modal-items{display:grid;grid-gap:.55rem;gap:.55rem}.invoice-modal-item{display:grid;grid-template-columns:minmax(0,1fr) 5.8rem 8rem 2rem;grid-gap:.55rem;gap:.55rem;align-items:end}.invoice-modal-item .modern-field{padding:.62rem .75rem}.invoice-item-remove{align-self:center;inline-size:2rem;block-size:2rem}.invoice-item-remove:disabled{cursor:not-allowed;opacity:.42}.invoice-total-row{-webkit-border-before:1px solid #edf1f7;border-block-start:1px solid #edf1f7;-webkit-padding-before:.65rem;padding-block-start:.65rem;color:#667085;font-size:.78rem;font-weight:850}.invoice-total-row strong{color:var(--dash-ink);font-size:1rem}.invoice-delivery-row{display:grid;grid-template-columns:minmax(12rem,16rem);grid-gap:.75rem;gap:.75rem;align-items:stretch}.modal-notification-row{inline-size:100%;-webkit-margin-before:0;margin-block-start:0;border:0;border-radius:0;background:transparent;min-block-size:100%;padding:0}.subscription-create-modal{inline-size:min(100%,46rem)}.subscription-create-form{gap:.9rem}.subscription-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.subscription-delivery-row{display:grid;grid-template-columns:minmax(10rem,12rem) minmax(10rem,13rem);grid-gap:.75rem;gap:.75rem;align-items:stretch}.subscription-create-modal .modern-select-menu{max-block-size:14rem;overflow-y:auto}.subscription-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.user-form-grid{grid-template-columns:1fr;max-inline-size:46rem}.auth-card .button.primary{inline-size:100%;background:var(--dash-accent,var(--blue-800));color:#fff}.auth-card .button.primary:focus-visible,.auth-card .button.primary:hover{background:#0b55b3;color:#fff}.button:disabled,.inline-button:disabled,.inline-button[aria-disabled=true]{cursor:wait;opacity:.78}.button-spinner{inline-size:1rem;block-size:1rem;border:2px solid;border-block-start-color:transparent;border-radius:999px;animation:button-spin .75s linear infinite}.dashboard-shell .booking-availability-picker .availability-confirm-button:not(:disabled){border-color:#9bc4ff;background:#dbeafe;color:#0b55b3;-webkit-text-fill-color:#0b55b3;box-shadow:none;opacity:1}.dashboard-shell .booking-availability-picker .availability-confirm-button:not(:disabled):focus-visible,.dashboard-shell .booking-availability-picker .availability-confirm-button:not(:disabled):hover{border-color:#7db2ff;background:#bfdbfe;color:#0a4a9f;-webkit-text-fill-color:#0a4a9f}.dashboard-shell .booking-availability-picker .availability-confirm-button:disabled{border-color:#cfe1ff;background:#eff6ff;color:var(--dash-accent);-webkit-text-fill-color:var(--dash-accent);box-shadow:none}.skeleton{position:relative;overflow:hidden;border-radius:var(--radius);background:#e8edf5}.skeleton:after{position:absolute;inset:0;content:"";background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.72),transparent);transform:translateX(-100%);animation:skeleton-sweep 1.25s ease-in-out infinite}.dashboard-loading{display:grid;grid-gap:1rem;gap:1rem}.loading-header{block-size:7rem}.loading-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.loading-card{block-size:8.25rem}.loading-table{block-size:22rem}@keyframes button-spin{to{transform:rotate(1turn)}}@keyframes skeleton-sweep{to{transform:translateX(100%)}}.icon{flex:0 0 auto;inline-size:1.05rem;block-size:1.05rem;fill:currentColor}.button,.dashboard-nav a,.dashboard-nav button,.dashboard-panel h2,.inline-button{display:inline-flex;align-items:center;gap:.55rem}.heading-icon{color:var(--dash-accent)}.overview-revenue-row{display:grid;grid-template-columns:minmax(22rem,.95fr) minmax(34rem,1.45fr);grid-gap:1rem;gap:1rem;align-items:stretch}.overview-panel,.revenue-panel{min-block-size:100%}.overview-metric-grid,.revenue-metric-grid{display:grid;grid-gap:.85rem;gap:.85rem}.overview-metric-grid,.revenue-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-overview{display:grid;grid-gap:1rem;gap:1rem}.overview-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(18rem,.85fr);grid-gap:clamp(1rem,2vw,1.5rem);gap:clamp(1rem,2vw,1.5rem);align-items:stretch;border:1px solid rgba(207,225,255,.9);border-radius:var(--radius);padding:clamp(1rem,2.2vw,1.65rem);background:linear-gradient(135deg,rgba(7,26,68,.96),rgba(16,45,118,.93) 55%,rgba(15,118,110,.9)),#071a44;box-shadow:0 22px 55px rgba(17,24,39,.12)}.overview-hero:before{position:absolute;inset-inline:0;inset-block-start:0;block-size:4px;content:"";background:linear-gradient(90deg,var(--gold-500),#5eead4,#93c5fd)}.overview-hero-main,.overview-hero-stats{position:relative;z-index:1}.overview-hero-main{display:grid;align-content:center;grid-gap:.8rem;gap:.8rem;min-inline-size:0}.overview-eyebrow,.overview-list-heading span,.revenue-range-card>span,.revenue-total-card span{color:#64748b;font-size:.74rem;font-weight:860;letter-spacing:.08em;text-transform:uppercase}.overview-hero .overview-eyebrow{color:#f3d978}.overview-hero h2{color:#fff;font-size:clamp(1.8rem,1.35rem + 1.8vw,3rem);line-height:1}.overview-hero p{max-inline-size:46rem;color:hsla(0,0%,100%,.76);font-size:1rem}.overview-quick-actions{display:flex;flex-wrap:wrap;gap:.55rem;-webkit-padding-before:.15rem;padding-block-start:.15rem}.overview-hero .inline-button{border-color:hsla(0,0%,100%,.16);background:hsla(0,0%,100%,.1);color:#fff}.overview-hero .inline-button:hover{background:hsla(0,0%,100%,.16)}.overview-hero .inline-button.primary-action{border-color:#fff;background:#fff;color:var(--dash-ink);box-shadow:none}.overview-hero-stats{display:grid;grid-gap:.7rem;gap:.7rem}.overview-hero-stats div{display:grid;grid-gap:.25rem;gap:.25rem;min-inline-size:0;border:1px solid hsla(0,0%,100%,.14);border-radius:var(--radius);padding:.9rem;background:hsla(0,0%,100%,.09)}.overview-hero-stats span{color:hsla(0,0%,100%,.58);font-size:.73rem;font-weight:850;text-transform:uppercase}.overview-hero-stats strong{overflow:hidden;color:#fff;font-size:.95rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.overview-hero-stats .sensitive-value{display:inline-flex;align-items:center;gap:.45rem}.sensitive-value-toggle{display:inline-grid;place-items:center;inline-size:1.55rem;block-size:1.55rem;border:1px solid hsla(0,0%,100%,.18);border-radius:999px;background:hsla(0,0%,100%,.1);color:#fff;cursor:pointer}.sensitive-value-toggle .icon{inline-size:.9rem;block-size:.9rem}.sensitive-value-toggle:focus-visible,.sensitive-value-toggle:hover{background:hsla(0,0%,100%,.18);outline:0}.overview-hero-stats small{color:hsla(0,0%,100%,.66);font-size:.78rem;line-height:1.4}.overview-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.85rem;gap:.85rem}.overview-kpi{min-block-size:8rem;color:inherit;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.overview-kpi:hover{border-color:#c0d5f2;box-shadow:0 16px 36px rgba(17,24,39,.08);transform:translateY(-1px)}.overview-kpi.is-wide{grid-column:span 2;background:linear-gradient(135deg,rgba(15,118,110,.1),rgba(255,251,235,.72)),#fff}.overview-main-grid{display:grid;grid-template-columns:minmax(16rem,1fr) minmax(0,2fr);grid-gap:1rem;gap:1rem;align-items:stretch}.overview-main-grid>.overview-schedule-card:only-child,.overview-main-grid>.overview-table-section:only-child{grid-column:1/-1}.overview-revenue-card,.overview-schedule-card,.overview-table-section{min-inline-size:0}.overview-main-grid>.overview-schedule-card{min-block-size:18rem}.revenue-insight-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(12rem,.8fr);grid-gap:.85rem;gap:.85rem}.revenue-range-card,.revenue-total-card{display:grid;grid-gap:.45rem;gap:.45rem;border:1px solid var(--dash-border);border-radius:var(--radius);padding:1rem;background:#f8fafc}.revenue-total-card{align-content:center;min-block-size:9.5rem;background:linear-gradient(135deg,rgba(15,98,201,.08),rgba(15,118,110,.08)),#f8fafc}.revenue-total-card strong{color:var(--dash-ink);font-size:clamp(1.7rem,1.25rem + 1.4vw,2.65rem);line-height:1}.revenue-range-card small,.revenue-total-card small{color:var(--dash-muted);font-size:.78rem;font-weight:760}.revenue-range-card{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center}.revenue-range-card>span{grid-column:1/-1}.revenue-range-card div{display:grid;grid-gap:.12rem;gap:.12rem}.revenue-range-card strong{color:var(--dash-ink);font-size:1.45rem;line-height:1}.overview-list-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.85rem;gap:.85rem;align-items:start}.overview-list{display:grid;grid-gap:.65rem;gap:.65rem;min-inline-size:0}.overview-schedule-list{display:grid;grid-gap:.7rem;gap:.7rem}.overview-schedule-item{grid-template-columns:auto minmax(0,1fr);align-items:center}.overview-schedule-item .status-pill{justify-self:start}.overview-schedule-item div{min-inline-size:0}.overview-list-heading{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-block-size:2rem}.overview-list-heading strong{display:inline-flex;align-items:center;justify-content:center;min-inline-size:1.9rem;block-size:1.9rem;border:1px solid #cfe1ff;border-radius:999px;background:#eff6ff;color:var(--dash-accent);font-size:.86rem}.overview-empty{display:flex;align-items:center;gap:.65rem;min-block-size:4.75rem;border:1px dashed #cbd5e1;border-radius:var(--radius);padding:.85rem;background:#f8fafc}.overview-empty .icon{inline-size:1.4rem;block-size:1.4rem;color:#94a3b8}.overview-empty p{color:var(--dash-muted);font-size:.88rem;font-weight:760}.overview-empty.is-table-empty{justify-content:center;min-block-size:5.5rem;border:0;background:transparent}.metric{grid-template-columns:1fr auto;align-items:start}.metric:before{display:none}.metric p,.metric strong{grid-column:1}.metric-icon{grid-column:2;grid-row:1/span 2;inline-size:2.45rem;block-size:2.45rem;border-radius:var(--radius);padding:.62rem;background:#eff6ff;color:var(--dash-accent)}.metric:nth-child(2n) .metric-icon{background:#ecfdf5;color:var(--dash-success)}.metric:nth-child(3n) .metric-icon{background:#fffbeb;color:var(--gold-700)}.dashboard-nav .icon{inline-size:1.1rem;block-size:1.1rem;color:hsla(0,0%,100%,.66)}.dashboard-nav a:hover .icon,.dashboard-nav a[aria-current=page] .icon,.dashboard-nav button:hover .icon{color:var(--gold-500)}.button .icon,.inline-button .icon{inline-size:1rem;block-size:1rem}@media (max-width:980px){.dashboard-shell{grid-template-columns:1fr;block-size:auto;overflow:visible}.dashboard-sidebar{position:static;inline-size:auto;block-size:auto;overflow:visible}.dashboard-main{grid-column:auto;-webkit-margin-start:0;margin-inline-start:0;block-size:auto;overflow:visible}.modal-backdrop{inset-inline-start:0}.dashboard-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.field-grid,.metric-grid,.metric-grid-compact,.section-grid{grid-template-columns:1fr}.dashboard-header,.panel-heading{align-items:stretch;flex-direction:column}.dashboard-header{inset-block-start:0}.dashboard-header-tools{justify-content:stretch}.dashboard-date-filter{inline-size:100%}.overview-hero,.overview-main-grid,.overview-revenue-row{grid-template-columns:1fr}.overview-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-kpi.is-wide{grid-column:span 1}.not-found-section{grid-template-columns:1fr}.loading-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-actions,.revenue-filter{justify-content:flex-start}}@media (max-width:640px){.dashboard-main{padding:0 1rem 1rem}.not-found-section{align-items:start;min-block-size:auto}.invoice-item-row{grid-template-columns:1fr}.dashboard-date-filter-controls,.revenue-filter{display:grid;grid-template-columns:1fr}.dashboard-date-filter-head{align-items:flex-start;flex-direction:column;gap:.18rem}.dashboard-date-filter-head strong{text-align:start;white-space:normal}.dashboard-date-filter .range-nav-button:not([aria-label]),.dashboard-date-nav{inline-size:100%}.dashboard-date-nav{justify-content:stretch}.dashboard-date-filter .range-nav-button{flex:1 1}.dashboard-custom-range{grid-template-columns:1fr}.case-list-filter-row,.list-filter-row{align-items:stretch;flex-direction:column;overflow-x:visible}.case-list-filter-row .case-summary-grid,.case-list-filter-row .list-controls,.list-status-row{inline-size:100%}.list-search-form{align-items:stretch;flex-direction:column;inline-size:100%;min-inline-size:0;-webkit-margin-start:0;margin-inline-start:0}.list-search-form .inline-button{justify-content:center;inline-size:100%}.range-navigator{grid-template-columns:1fr}.range-current{order:-1;white-space:normal}.booking-create-modal .case-form-grid,.booking-time-row,.client-contact-grid,.client-identity-grid,.client-record-grid,.loading-grid,.overview-kpi-grid,.overview-list-columns,.overview-metric-grid,.revenue-insight-grid,.revenue-metric-grid,.subscription-grid,.user-form-grid{grid-template-columns:1fr}.overview-hero{padding:1rem}.overview-hero h2{font-size:1.8rem}.overview-hero-stats strong{white-space:normal}.booking-availability-summary{align-items:stretch;flex-direction:column}.booking-availability-summary .inline-button{justify-content:center;inline-size:100%}.overview-quick-actions .inline-button{flex:1 1 9rem;justify-content:center}.form-footer{justify-content:stretch}.form-footer .button{inline-size:100%}.client-modal-grid{grid-template-columns:1fr}.modal-backdrop{align-items:start;padding:.75rem}.modal-panel{min-block-size:auto;max-block-size:calc(100dvh - 1.5rem)}.invoice-delivery-row,.invoice-modal-grid,.invoice-modal-item,.subscription-delivery-row,.subscription-modal-grid{grid-template-columns:1fr}.invoice-modal-grid>:nth-child(n){grid-column:auto}.invoice-item-remove{justify-self:end}}