:root{color:#17221f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#17221f;--muted:#65706b;--canvas:#f3f4ef;--paper:#fff;--pine:#123f3a;--pine-soft:#1d514b;--gold:#c89d53;--gold-soft:#f2e7d2;--line:#dfe3dc;--danger:#a13c3c;--focus:#1c67d2;--border-color:var(--line);--text-muted:var(--muted);--surface-color:var(--paper);background:#f3f4ef;font-family:Segoe UI Variable,Segoe UI,sans-serif}.patient-profile-short-number{border:1px solid var(--border-color);width:-moz-fit-content;width:fit-content;color:var(--text-muted);border-radius:999px;margin-top:.2rem;padding:.24rem .58rem;font-size:.82rem;font-weight:700;display:inline-flex}.patient-profile-actions{align-items:center;gap:.65rem;margin-left:auto;display:flex}.patient-created-confirmation{border:1px solid color-mix(in srgb, var(--success-color,#267a52) 35%, transparent);background:color-mix(in srgb, var(--success-color,#267a52) 9%, transparent);color:var(--text-color);border-radius:10px;grid-column:1/-1;padding:.68rem .85rem;font-weight:700}.patient-operational-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-bottom:1rem;display:grid}.patient-appointment-summary-grid{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.patient-appointment-summary>strong,.patient-appointment-summary>p{margin:.35rem 0;display:block}.patient-appointment-summary dl,.patient-operational-facts dl,.patient-operational-finance dl,.patient-operational-debt dl,.patient-statistics-dates{gap:.48rem;margin:.65rem 0;display:grid}.patient-appointment-summary dl div,.patient-operational-facts dl div,.patient-operational-finance dl div,.patient-operational-debt dl div,.patient-statistics-dates div{justify-content:space-between;gap:1rem;display:flex}.patient-inline-state{border:1px solid var(--border-color);background:var(--surface-color);border-radius:12px;grid-column:1/-1;align-items:center;gap:.6rem;min-height:70px;padding:1rem;display:flex}.patient-inline-state--error{border-color:color-mix(in srgb, var(--danger-color,#b53b3b) 35%, transparent)}.patient-appointment-history>header,.patient-statistics>header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.patient-appointment-history__list{gap:.85rem;display:grid}.patient-appointment-history__list>article{border:1px solid var(--border-color);background:var(--surface-color);border-radius:14px;padding:1rem}.patient-appointment-history__list>article>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.patient-appointment-history__list>article>header div,.patient-appointment-history__list>article>header span{gap:.2rem;display:grid}.patient-appointment-history__list dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem 1rem;margin:.85rem 0;display:grid}.patient-appointment-history__list dl div{justify-content:space-between;gap:.8rem;display:flex}.patient-appointment-history__list nav{flex-wrap:wrap;gap:.7rem;display:flex}.patient-appointment-history__list nav a{font-weight:700}.patient-statistics-grid,.analytics-patient-metrics{grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:.75rem;display:grid}.patient-statistics-grid article,.analytics-patient-metrics article{border:1px solid var(--border-color);background:var(--surface-color);border-radius:12px;gap:.35rem;min-height:92px;padding:.9rem;display:grid}.patient-statistics-grid strong,.analytics-patient-metrics strong{font-size:1.18rem}.analytics-filter-bar{border:1px solid var(--border-color);background:var(--surface-color);border-radius:14px;flex-wrap:wrap;align-items:flex-end;gap:.72rem;margin-bottom:1rem;padding:.9rem;display:flex}.analytics-filter-bar label{gap:.3rem;min-width:150px;display:grid}.analytics-filter-bar label span{color:var(--text-muted);font-size:.78rem;font-weight:700}.analytics-filter-bar select,.analytics-filter-bar input{max-width:230px;min-height:40px}.analytics-filter-note,.analytics-filter-bar .field-error{flex-basis:100%;margin:0}.analytics-table-wrap{border:1px solid var(--border-color);background:var(--surface-color);border-radius:14px;max-width:100%;overflow-x:auto}.analytics-core-table{border-collapse:collapse;width:100%;min-width:1120px}.analytics-core-table th,.analytics-core-table td{border-bottom:1px solid var(--border-color);text-align:left;white-space:nowrap;padding:.72rem}.analytics-core-table tbody th{white-space:normal;max-width:250px}.analytics-footnote{color:var(--text-muted);margin:0;padding:.75rem}.analytics-frequency{border:1px solid var(--border-color);background:var(--surface-color);border-radius:14px;margin-top:1rem;padding:1rem}.analytics-frequency dl{flex-wrap:wrap;gap:1rem;display:flex}.analytics-frequency dl div{gap:.45rem;display:flex}@media (max-width:760px){.patient-profile-actions,.patient-appointment-history__list>article>header{flex-direction:column;align-items:stretch}.patient-operational-summary,.patient-appointment-summary-grid,.patient-appointment-history__list dl{grid-template-columns:1fr}.analytics-filter-bar label,.analytics-filter-bar select,.analytics-filter-bar input{width:100%;max-width:none}}*{box-sizing:border-box}html{background:var(--canvas);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 72%, transparent);outline-offset:3px}.skip-link{z-index:100;color:#fff;background:var(--focus);border-radius:7px;padding:10px 14px;text-decoration:none;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:#65706b;letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-weight:700}.brand{align-items:center;gap:12px;display:flex}.brand strong,.brand small{display:block}.brand strong{color:#f8f6ef;letter-spacing:.16em;font-size:.82rem}.brand small{color:#9cb7b1;margin-top:4px;font-size:.72rem}.brand-mark{border:1px solid #ffffff59;border-radius:50%;flex:0 0 38px;width:38px;height:38px;position:relative}.brand-mark:before,.brand-mark:after,.brand-mark span:before,.brand-mark span:after{content:"";background:var(--gold);position:absolute}.brand-mark:before{border-radius:2px;width:3px;top:8px;bottom:8px;left:17px}.brand-mark:after{border-radius:2px;height:3px;top:17px;left:8px;right:8px}.brand-mark span:before{transform-origin:100%;width:9px;height:2px;top:9px;left:9px;transform:rotate(45deg)}.brand-mark span:after{transform-origin:0;width:9px;height:2px;bottom:9px;right:9px;transform:rotate(45deg)}.login-page{background:var(--paper);grid-template-columns:minmax(410px,.92fr) minmax(520px,1.08fr);min-height:100vh;display:grid}.login-story{color:#f7f7f2;background:radial-gradient(circle at 85% 18%,#cda66040,#0000 23%),linear-gradient(145deg,#0e3531 0%,#174941 53%,#102f2d 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:46px clamp(38px,5vw,80px) 42px;display:flex;position:relative;overflow:hidden}.login-story:before{content:"";border:1px solid #d4b57938;border-radius:50%;width:520px;height:520px;position:absolute;bottom:-190px;right:-180px;box-shadow:0 0 0 76px #ffffff06,0 0 0 150px #ffffff05}.brand--light{z-index:1;position:relative}.login-story-copy{z-index:1;max-width:570px;margin-block:80px;position:relative}.phase-chip{color:#e3c58c;letter-spacing:.1em;text-transform:uppercase;background:#04211e40;border:1px solid #dec08566;border-radius:999px;align-items:center;min-height:30px;padding:5px 12px;font-size:.7rem;font-weight:700;display:inline-flex}.login-story h1{letter-spacing:-.035em;max-width:540px;margin:24px 0 18px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.7rem,5vw,5.4rem);font-weight:400;line-height:1.06}.login-story-copy>p{color:#c9d8d4;max-width:490px;margin:0;font-size:clamp(1rem,1.45vw,1.16rem);line-height:1.75}.login-story ul{color:#dae5e2;gap:13px;margin:34px 0 0;padding:0;list-style:none;display:grid}.login-story li{align-items:center;gap:10px;font-size:.88rem;display:flex}.login-story li svg{color:var(--gold)}.login-story-note{z-index:1;color:#789a94;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;position:relative}.login-panel{background-color:#fbfbf8;background-image:linear-gradient(#123f3a09 1px,#0000 1px),linear-gradient(90deg,#123f3a09 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:46px 46px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;place-items:center;min-height:100vh;padding:56px clamp(30px,8vw,118px);display:grid}.login-card{width:min(100%,440px)}.login-card h2{color:var(--ink);margin:12px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,2.75rem);font-weight:400;line-height:1.15}.login-intro{color:var(--muted);margin:0 0 36px;line-height:1.6}.login-card form{flex-direction:column;display:flex}.login-card label{color:#37423e;margin:19px 0 8px;font-size:.78rem;font-weight:700}.login-card input{width:100%;min-height:52px;color:var(--ink);background:#fffffff0;border:1px solid #ccd2cc;border-radius:7px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.login-card input:hover{border-color:#9ba8a2}.login-card input[aria-invalid=true]{border-color:var(--danger)}.field-error{color:var(--danger);margin-top:7px;font-size:.76rem}.request-error{border-left:3px solid var(--danger);color:#7e2d2d;background:#f9eaea;margin-top:20px;padding:11px 13px;font-size:.82rem;line-height:1.45}.primary-button,.secondary-button{cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 18px;font-weight:700;text-decoration:none;display:inline-flex}.primary-button{color:#fff;background:var(--pine);margin-top:28px;box-shadow:0 12px 28px #123f3a2e}.primary-button:hover:not(:disabled){background:var(--pine-soft)}.primary-button:disabled{cursor:wait;opacity:.65}.secondary-button{color:var(--pine);background:#fff;border:1px solid #bfc8c3}.security-caption{color:#7b8581;text-align:center;margin:25px 0 0;font-size:.72rem;line-height:1.55}.local-entry-card{min-height:290px}.local-startup-status{color:var(--muted);align-items:center;gap:14px;margin-top:28px;display:flex}.local-startup-status p{margin:0;line-height:1.55}.local-entry-actions{gap:12px;margin-top:26px;display:grid}.local-entry-actions .primary-button{margin-top:0}.app-frame{background:var(--canvas);grid-template-columns:256px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{color:#dce7e4;background:radial-gradient(circle at 15% 86%,#c79d5329,#0000 23%),linear-gradient(#123f3a 0%,#0c312e 100%);flex-direction:column;height:100vh;padding:31px 22px 24px;display:flex;position:sticky;top:0}.primary-navigation{gap:5px;margin-top:50px;display:grid}.primary-navigation a{color:#b8cbc6;border-radius:7px;align-items:center;gap:13px;min-height:46px;padding:11px 13px;font-size:.86rem;text-decoration:none;transition:color .14s,background .14s;display:flex}.primary-navigation a:hover{color:#fff;background:#ffffff0f}.primary-navigation a.active{color:#fff;box-shadow:inset 3px 0 var(--gold);background:#ffffff1a}.primary-navigation a.active svg{color:var(--gold)}.sidebar-footnote{color:#7fa29b;border-top:1px solid #ffffff1a;align-items:center;gap:9px;margin-top:auto;padding:20px 8px 0;font-size:.7rem;display:flex}.workspace{min-width:0}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;justify-content:space-between;align-items:center;gap:24px;min-height:82px;padding:14px clamp(24px,3.4vw,52px);display:flex}.topbar>div:first-child{gap:5px;display:grid}.topbar time{color:var(--muted);font-size:.75rem}.topbar-actions{align-items:center;gap:18px;display:flex}.global-context-navigation{z-index:1100;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8faf8f5;align-items:center;min-height:54px;padding:6px clamp(24px,4.5vw,68px);display:flex;position:sticky;top:0}.global-context-back{min-width:112px;min-height:42px;color:var(--pine);font:inherit;cursor:pointer;background:#fff;border:1px solid #cfd8d2;border-radius:8px;justify-content:center;align-items:center;gap:9px;padding:9px 16px;font-size:.84rem;font-weight:800;display:inline-flex}.global-context-back:hover:not(:disabled){background:#f4f8f4;border-color:#9caf9f}.global-context-back:focus-visible{outline-offset:2px;outline:3px solid #ae833b61}.global-context-back:disabled{color:#89948f;cursor:not-allowed;opacity:.78;background:#eef1ef}.connection-status{border-radius:999px;align-items:center;gap:7px;min-height:30px;padding:6px 10px;font-size:.68rem;font-weight:700;display:inline-flex}.connection-status--checking{color:#6f694f;background:#f1eddd}.connection-status--online{color:#2f6755;background:#e2f0e9}.connection-status--offline{color:#8d3d3d;background:#f7e6e4}.user-summary{align-items:center;gap:10px;display:flex}.user-summary>span:last-child{gap:2px;display:grid}.user-summary strong{text-overflow:ellipsis;white-space:nowrap;max-width:190px;font-size:.76rem;overflow:hidden}.user-summary small{color:var(--muted);font-size:.67rem}.avatar{width:36px;height:36px;color:var(--pine);background:var(--gold-soft);border-radius:50%;place-items:center;font-size:.82rem;font-weight:800;display:grid}.icon-button{color:#4c5954;cursor:pointer;background:#fff;border:1px solid #d7ddd8;border-radius:7px;place-items:center;width:42px;height:42px;display:grid}.icon-button:hover{color:var(--danger);background:#fff8f7;border-color:#e2c6c3}.main-content{min-height:calc(100vh - 136px);padding:clamp(30px,4vw,58px) clamp(24px,4.5vw,68px)}.placeholder-page{max-width:1180px;margin:0 auto}.page-heading{justify-content:space-between;align-items:flex-start;gap:40px;display:flex}.page-heading h1{letter-spacing:-.035em;margin:10px 0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.15rem,4vw,3.8rem);font-weight:400}.page-heading p{max-width:720px;color:var(--muted);margin:0;font-size:.94rem;line-height:1.65}.page-icon{width:58px;height:58px;color:var(--pine);background:#fff;border:1px solid #d8ddd7;border-radius:50%;flex:0 0 58px;place-items:center;display:grid;box-shadow:0 9px 24px #23352f0f}.foundation-banner{background:#ffffffbf;border:1px solid #d9ded8;border-radius:10px;align-items:center;gap:28px;margin-top:42px;padding:21px 23px;display:flex}.foundation-banner p{color:#505b57;margin:0;font-size:.82rem;line-height:1.55}.status-seal{border-radius:999px;flex:none;align-items:center;gap:8px;padding:8px 12px;font-size:.72rem;font-weight:800;display:inline-flex}.status-seal--ready{color:#28634f;background:#e1f0e8}.status-seal--gap{color:#8a5334;background:#f4e7d9}.placeholder-grid{grid-template-columns:minmax(0,1.45fr) minmax(270px,.75fr);gap:22px;margin-top:28px;display:grid}.scope-card,.contract-card{background:#fff;border:1px solid #dfe3dd;border-radius:11px;box-shadow:0 16px 45px #2b3a350b}.scope-card{padding:28px}.scope-card-title{color:var(--pine);align-items:center;gap:10px;display:flex}.scope-card h2{margin:0;font-size:.94rem}.scope-card ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 30px;margin:24px 0 0;padding:0;list-style:none;display:grid}.scope-card li{color:#4e5b56;border-bottom:1px solid #edf0ec;padding:10px 0 10px 18px;font-size:.79rem;position:relative}.scope-card li:before{background:var(--gold);content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:16px;left:0}.contract-card{color:#e6eeeb;background:linear-gradient(145deg,#153f3a,#0e312e);flex-direction:column;padding:28px;display:flex}.contract-card>span{color:#98b4ad;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:700}.contract-card>strong{margin-top:10px;font-family:Georgia,Times New Roman,serif;font-size:1.45rem;font-weight:400}.contract-card>p{color:#a9bfba;margin:17px 0 30px;font-size:.77rem;line-height:1.65}.contract-card>div{color:#d9bd88;border-top:1px solid #ffffff1f;justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;font-size:.72rem;font-weight:700;display:flex}.route-state{min-height:calc(100vh - 180px);color:var(--pine);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}.route-state h1{color:var(--ink);margin:12px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:2.2rem;font-weight:400}.route-state p{color:var(--muted);margin:0 0 24px}.route-state .eyebrow{margin-top:18px}.loading-ring{border:3px solid #d8e1dc;border-top-color:var(--pine);border-radius:50%;width:34px;height:34px;animation:.75s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1020px){.login-page{grid-template-columns:minmax(340px,.8fr) minmax(440px,1.2fr)}.login-story h1{font-size:3.2rem}.app-frame{grid-template-columns:220px minmax(0,1fr)}.sidebar{padding-inline:16px}.connection-status span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:820px){.login-page{background:#fbfbf8;display:block}.login-story{min-height:350px;padding:30px 28px}.login-story-copy{margin:54px 0 20px}.login-story h1{font-size:clamp(2.3rem,9vw,3.5rem)}.login-story ul,.login-story-note{display:none}.login-panel{min-height:auto;padding:45px 24px 64px}.app-frame{display:block}.sidebar{width:100%;height:auto;padding:20px;position:relative}.primary-navigation{margin-top:22px;padding-bottom:4px;display:flex;overflow-x:auto}.primary-navigation a{flex:none}.sidebar-footnote{display:none}.topbar{align-items:flex-start;padding:18px 22px}.topbar>div:first-child{display:none}.topbar-actions{justify-content:flex-end;width:100%}.connection-status{margin-right:auto}.placeholder-grid{grid-template-columns:1fr}}@media (max-width:560px){.topbar-actions{gap:9px}.user-summary strong{max-width:115px}.foundation-banner{flex-direction:column;align-items:flex-start;gap:14px}.scope-card ul{grid-template-columns:1fr}.page-icon{display:none}}.calendar-workspace-body.has-detail-pane{grid-template-columns:218px minmax(0,1fr) clamp(340px,25vw,400px)}.calendar-workspace-body.is-detail-collapsed{grid-template-columns:218px minmax(0,1fr) 44px}.calendar-entry-detail-pane{background:#fff;border:1px solid #d9dfda;border-radius:10px;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;box-shadow:0 14px 34px #2b3a3514}.calendar-entry-detail-pane.is-collapsed{align-items:center;padding:6px 4px}.calendar-detail-collapse-button{color:#40524b;cursor:pointer;writing-mode:vertical-rl;background:#f8faf8;border:1px solid #d9dfda;border-radius:7px;align-items:center;gap:5px;min-width:34px;min-height:34px;padding:7px;display:flex}.calendar-detail-collapse-button span{font-size:.62rem;font-weight:850}.calendar-entry-detail-header{background:#fbfcfb;border-bottom:1px solid #e3e8e5;flex:none;justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:10px 12px;display:flex}.calendar-entry-detail-header>div:first-child{gap:2px;min-width:0;display:grid}.calendar-entry-detail-header>div:first-child>span{color:#78847f;letter-spacing:.08em;text-transform:uppercase;font-size:.56rem;font-weight:850}.calendar-entry-detail-header h2{color:#2e423b;text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:inherit;font-size:.88rem;overflow:hidden}.calendar-entry-detail-header h2:focus-visible{outline-offset:3px;outline:3px solid #ba87376b}.calendar-entry-detail-header>div:last-child{flex:none;gap:4px;display:flex}.calendar-entry-detail-header button,.calendar-detail-feedback button,.calendar-detail-action-grid button,.calendar-detail-confirmation button,.calendar-detail-related button{color:#3b4e47;font:inherit;cursor:pointer;background:#fff;border:1px solid #d6ddd8;border-radius:7px;justify-content:center;align-items:center;gap:6px;padding:7px 9px;font-size:.66rem;font-weight:820;display:inline-flex}.calendar-entry-detail-header button{width:32px;height:32px;padding:0}.calendar-entry-detail-header button:focus-visible,.calendar-detail-feedback button:focus-visible,.calendar-detail-action-grid button:focus-visible,.calendar-detail-confirmation button:focus-visible,.calendar-detail-related button:focus-visible,.calendar-entry-detail-pane a:focus-visible{outline-offset:2px;outline:3px solid #ba87376b}.calendar-entry-detail-scroll{overscroll-behavior:contain;scrollbar-width:thin;flex:auto;min-height:0;padding:11px;overflow-y:auto}.calendar-detail-neutral,.calendar-detail-feedback{color:#6f7d77;text-align:center;align-content:center;place-items:center;gap:10px;min-height:180px;padding:20px;display:grid}.calendar-detail-neutral p,.calendar-detail-feedback p{max-width:270px;margin:0;font-size:.72rem;line-height:1.45}.calendar-detail-feedback h3{color:#4b5b55;margin:0;font-size:.82rem}.calendar-appointment-detail,.calendar-time-block-detail{gap:10px;display:grid}.calendar-detail-status-line{background:#f6f8f6;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 9px;display:flex}.calendar-detail-status-line>strong{color:#40514a;text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.calendar-detail-status-badge{color:#2f5b4d;background:#e9f3ee;border-radius:999px;align-items:center;gap:5px;min-width:0;padding:5px 8px;font-size:.62rem;font-weight:850;display:inline-flex}.calendar-detail-status-badge.is-block{color:#4e5d67;background:#e9edf0}.calendar-detail-patient{border:1px solid #dfe5e1;border-radius:9px;grid-template-columns:42px minmax(0,1fr);gap:9px;padding:10px;display:grid}.calendar-detail-avatar{color:#fff;background:#607b70;border-radius:50%;place-items:center;width:42px;height:42px;font-size:.68rem;font-weight:900;display:grid}.calendar-detail-patient>div{gap:2px;min-width:0;display:grid}.calendar-detail-patient>div>span,.calendar-detail-section dt{color:#77837e;font-size:.58rem;font-weight:800}.calendar-detail-patient h3{color:#30453e;text-overflow:ellipsis;margin:0;font-size:.77rem;overflow:hidden}.calendar-detail-patient a{color:#315f50;font-size:.65rem;font-weight:780}.calendar-detail-patient>a{grid-column:1/-1;align-items:center;gap:5px;display:inline-flex}.calendar-detail-section{border:1px solid #e1e6e3;border-radius:9px;gap:8px;padding:10px;display:grid}.calendar-detail-section>h3{color:#3b4e47;margin:0;font-size:.7rem}.calendar-detail-section dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;display:grid}.calendar-detail-section dl>div{gap:2px;min-width:0;display:grid}.calendar-detail-section dd{overflow-wrap:anywhere;color:#354841;margin:0;font-size:.66rem;font-weight:750}.calendar-detail-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.calendar-detail-action-grid button{text-align:left;justify-content:flex-start;min-width:0;min-height:34px}.calendar-detail-action-grid button.is-primary{color:#fff;background:#315f50;border-color:#315f50}.calendar-detail-action-grid button.is-danger,.calendar-detail-confirmation button.is-danger{color:#8b3f3f;background:#fff7f7;border-color:#e6caca}.calendar-detail-action-grid button:disabled,.calendar-detail-confirmation button:disabled{cursor:not-allowed;opacity:.55}.calendar-detail-confirmation{color:#714545;background:#fff8f8;border:1px solid #e6caca;border-radius:8px;gap:7px;padding:8px;display:grid}.calendar-detail-confirmation p,.calendar-detail-status-message{margin:0;font-size:.64rem;line-height:1.4}.calendar-detail-confirmation>div{justify-content:flex-end;gap:6px;display:flex}.calendar-detail-status-message{color:#3f6859;font-weight:750}.calendar-detail-related>div{border-top:1px solid #edf0ee;grid-template-columns:18px minmax(0,1fr);gap:3px 6px;padding-top:7px;display:grid}.calendar-detail-related>div>svg{color:#65766f;grid-row:1/span 3}.calendar-detail-related>div>span{color:#52635c;font-size:.64rem;font-weight:850}.calendar-detail-related a,.calendar-detail-related button,.calendar-detail-related small{color:#315f50;grid-column:2;justify-self:start;font-size:.62rem;font-weight:780}.calendar-detail-related button{padding:4px 7px}.appointment-card.is-selected,.calendar-block-card.is-selected{outline-offset:2px;outline:3px solid #c18a35;box-shadow:0 0 0 5px #c18a3533,0 8px 18px #2b3a3529}@media (max-width:1280px){.calendar-workspace-body.has-detail-pane,.calendar-workspace-body.is-detail-collapsed{grid-template-columns:218px minmax(0,1fr)}.calendar-entry-detail-pane{z-index:80;width:min(390px,100% - 228px);position:absolute;top:0;bottom:0;right:0;box-shadow:-18px 0 45px #1a302933}.calendar-entry-detail-pane.is-collapsed{width:44px;height:auto;top:8px;bottom:auto;right:8px;box-shadow:0 10px 28px #1a302924}}@media (max-width:1020px){.calendar-workspace-body.has-detail-pane,.calendar-workspace-body.is-detail-collapsed{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.calendar-entry-detail-pane{width:min(390px,100% - 12px)}}@media (max-width:560px){.calendar-entry-detail-pane{border-radius:8px;width:100%;left:0}.calendar-entry-detail-pane.is-collapsed{width:44px;left:auto}.calendar-detail-section dl,.calendar-detail-action-grid{grid-template-columns:1fr}}.appointment-status-bar{background:#fff;border:1px solid #d8e1dc;border-radius:10px;gap:11px;padding:13px 14px;display:grid}.appointment-status-bar>header{justify-content:space-between;align-items:center;gap:14px;display:flex}.appointment-status-bar>header>div,.appointment-status-bar>header span,.appointment-status-bar>header strong{align-items:center;display:flex}.appointment-status-bar>header>div{gap:9px}.appointment-status-bar>header span,.appointment-status-bar>header small,.appointment-status-bar>p{color:var(--muted);font-size:.65rem;font-weight:750}.appointment-status-bar>header strong{color:#264e40;background:#e7f0eb;border-radius:999px;gap:6px;padding:5px 9px;font-size:.72rem}.appointment-status-bar>header strong i{font-style:normal}.appointment-status-controls{grid-template-columns:repeat(8,minmax(92px,1fr));gap:6px;padding-bottom:2px;display:grid;overflow-x:auto}.appointment-status-button{color:#344a42;min-height:36px;font:inherit;white-space:nowrap;cursor:pointer;background:#f9fbfa;border:1px solid #cdd8d2;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:6px 8px;font-size:.64rem;font-weight:800;display:inline-flex}.appointment-status-button:hover:not(:disabled),.appointment-status-button:focus-visible:not(:disabled){border-color:var(--accent);background:#edf4f0}.appointment-status-button[aria-pressed=true]{color:#fff;background:#2e6552;border-color:#2e6552;box-shadow:0 0 0 2px #2e655229}.appointment-status-button:disabled:not([aria-pressed=true]){color:#8b9691;cursor:not-allowed;opacity:.68;background:#f2f4f3}.appointment-status-button--no_show:not(:disabled),.appointment-status-button--declined:not(:disabled),.appointment-status-button--cancelled:not(:disabled){color:#7b4138;background:#fff8f6;border-color:#d9b5ae}.appointment-status-success{background:#e4f2e9;border-radius:6px;margin:0;padding:7px 9px;color:#2f654c!important}.appointment-status-confirmation h3{margin:9px 0 0;font-size:1rem}.appointment-status-confirmation dl{gap:9px;margin:16px 0 0;display:grid}.appointment-status-confirmation dl>div{border-top:1px solid #e5e9e6;grid-template-columns:minmax(110px,.35fr) 1fr;gap:10px;padding-top:8px;display:grid}.appointment-status-confirmation dt,.appointment-status-confirmation dd{margin:0;font-size:.75rem}.appointment-status-confirmation dt{color:var(--muted);font-weight:750}.appointment-status-confirmation dd{font-weight:800}.appointment-card .appointment-card-status{max-width:calc(100% - 8px);color:inherit;opacity:1;text-overflow:ellipsis;white-space:nowrap;background:#ffffffd1;border:1px solid #2a363138;border-radius:999px;align-items:center;gap:3px;padding:1px 4px;font-size:.49rem;font-weight:850;line-height:1.25;display:inline-flex;position:absolute;bottom:2px;right:3px;overflow:hidden}.appointment-card-status i{flex:none;font-style:normal}.appointment-card--confirmed{box-shadow:inset 0 0 0 1px #1e524057,0 3px 10px #2b3a351a}.appointment-card--arrived{outline-offset:-3px;outline:1px dashed #2a4f438a}.appointment-card--in_progress{box-shadow:inset 0 0 0 2px #275c498c,0 3px 10px #2b3a351a}.appointment-card--completed{box-shadow:inset 0 -3px #2365428a,0 3px 10px #2b3a351a}.appointment-card--no_show{background-image:repeating-linear-gradient(135deg,#0000,#0000 6px,#743e2e21 6px 10px)}.appointment-card--declined{opacity:.82;background-image:repeating-linear-gradient(0deg,#0000,#0000 7px,#61463e1f 7px 9px)}.appointment-card--cancelled .appointment-card-status{text-decoration:none}@media (max-width:1180px){.appointment-status-controls{grid-template-columns:repeat(4,minmax(118px,1fr))}}@media (max-width:560px){.appointment-status-bar>header,.appointment-status-confirmation dl>div{flex-direction:column;grid-template-columns:1fr;align-items:flex-start}.appointment-status-controls{flex-wrap:wrap;display:flex;overflow:visible}.appointment-status-button{flex:132px}}.calendar-number-search{align-items:end;gap:6px;min-width:300px;display:flex}.calendar-number-search label{flex:1;min-width:0}.calendar-number-search input{width:100%;min-height:34px;font:inherit;text-transform:uppercase;background:#fff;border:1px solid #cad3cd;border-radius:7px;padding:6px 9px}.calendar-number-search .secondary-button{min-height:34px;padding:6px 10px}.calendar-lookup-feedback{color:#70451c;background:#fff9f2;border:1px solid #e2c9b0;border-radius:8px;padding:7px 10px;font-size:.75rem}.clinic-calendar-settings>header .eyebrow{margin-bottom:4px;display:block}.clinic-settings-feedback{color:#36463f;background:#f7faf8;border:1px solid #d9dfda;border-radius:9px;margin-bottom:16px;padding:10px 12px}.clinic-grouping-control{background:#f8faf8;border:1px solid #dce3de;border-radius:11px;grid-template-columns:minmax(260px,1fr) minmax(180px,260px) auto;align-items:end;gap:14px;padding:16px;display:grid}.clinic-grouping-control h3,.clinic-grouping-control p,.clinic-color-section h3,.clinic-color-section p{margin:0}.clinic-grouping-control p,.clinic-color-section p{color:var(--muted);margin-top:4px;font-size:.72rem}.clinic-grouping-control select{background:#fff;border:1px solid #cad3cd;border-radius:8px;width:100%;min-height:40px;padding:8px 10px}.settings-readonly-badge{color:#56635e;background:#edf1ee;border-radius:999px;align-self:center;padding:7px 11px;font-size:.72rem;font-weight:800}.clinic-color-section{border-top:1px solid #e2e7e3;margin-top:18px;padding-top:18px}.clinic-color-section>header{align-items:flex-start;gap:10px;display:flex}.clinic-color-list{gap:8px;margin-top:12px;display:grid}.clinic-color-row{background:#fff;border:1px solid #e2e7e3;border-radius:9px;grid-template-columns:26px minmax(220px,1fr) 44px 110px auto;align-items:center;gap:10px;padding:9px 10px;display:grid}.clinic-color-row>div{min-width:0;display:grid}.clinic-color-row>div strong,.clinic-color-row>div small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clinic-color-row>div small{color:var(--muted)}.clinic-color-row input[type=color]{background:0 0;border:0;width:40px;height:34px;padding:0}.clinic-color-row input:not([type=color]){text-transform:uppercase;border:1px solid #cad3cd;border-radius:7px;min-width:0;padding:7px 8px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.clinic-color-preview{border:1px solid #0000002e;border-radius:6px;width:24px;height:24px}.finance-table td a small{color:var(--muted);margin-top:3px;display:block}@media (max-width:1280px){.calendar-number-search{min-width:260px}}@media (max-width:920px){.clinic-grouping-control,.clinic-color-row{grid-template-columns:1fr}.clinic-color-preview{display:none}}.patient-visits{background:#fff;border:1px solid #dce5e0;border-radius:12px;margin-top:22px;overflow:hidden}.patient-visits>header,.appointment-clinical>header,.clinical-editor>header{justify-content:space-between;align-items:center;gap:18px;display:flex}.patient-visits>header{background:#f9fbfa;border-bottom:1px solid #e7ece9;padding:19px 21px}.patient-visits>header>div,.clinical-editor>header>div,.appointment-clinical>header>span{align-items:center;gap:11px;display:flex}.patient-visits h2,.clinical-editor h2{margin:0;font-size:1rem}.patient-visits header p,.clinical-editor header p{color:var(--muted);margin:3px 0 0;font-size:.72rem}.patient-visits header button,.appointment-clinical header button,.clinical-feedback button,.clinical-inline-feedback button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;padding:7px 9px;font-size:.72rem;font-weight:800;display:inline-flex}.patient-visits-state{min-height:118px;color:var(--muted);justify-content:center;align-items:center;gap:13px;padding:23px;display:flex}.patient-visits-state strong,.patient-visits-state p{margin:0;display:block}.patient-visits-state p{margin-top:4px;font-size:.75rem}.patient-visits-state--forbidden,.patient-visits-state--error{color:#6a542c;background:#fffaf0}.patient-visits-list{margin:0;padding:0;list-style:none}.patient-visits-list li{border-bottom:1px solid #edf1ef;grid-template-columns:auto minmax(180px,1fr) auto minmax(190px,auto);align-items:center;gap:15px;padding:16px 20px;display:grid}.patient-visit-icon{width:38px;height:38px;color:var(--accent);background:#edf5f1;border-radius:10px;place-items:center;display:grid}.patient-visit-summary,.patient-visit-links{flex-direction:column;gap:3px;display:flex}.patient-visit-summary span,.patient-visit-summary small,.patient-visit-links a{color:var(--muted);font-size:.7rem}.patient-visit-links{align-items:flex-end}.patient-visit-open{align-items:center;gap:4px;font-weight:850;display:inline-flex;color:var(--accent)!important}.clinical-status{color:#295543;background:#e6f3ed;border-radius:999px;width:max-content;padding:6px 10px;font-size:.68rem;font-weight:850;display:inline-flex}.patient-visits-more{width:100%;color:var(--accent);font:inherit;cursor:pointer;background:#fbfcfb;border:0;border-top:1px solid #e7ece9;padding:13px;font-size:.73rem;font-weight:800}.appointment-clinical{background:#f7fbf9;border:1px solid #d8e5df;border-radius:10px;grid-column:1/-1;padding:15px}.appointment-clinical>header{margin-bottom:11px;font-size:.78rem;font-weight:850}.appointment-clinical>p,.appointment-clinical-empty p,.appointment-clinical-empty span,.clinical-inline-feedback p{color:var(--muted);margin:5px 0;font-size:.72rem;line-height:1.5}.appointment-clinical-summary{grid-template-columns:repeat(2,minmax(0,1fr)) auto;align-items:center;gap:12px;display:grid}.appointment-clinical-summary div{gap:3px;display:grid}.appointment-clinical-summary span{color:var(--muted);font-size:.64rem}.appointment-clinical-summary strong{font-size:.76rem}.appointment-clinical-summary a{color:var(--accent);align-items:center;gap:6px;font-size:.72rem;font-weight:850;display:inline-flex}.appointment-clinical-empty .primary-button{margin-top:9px}.clinical-inline-feedback{border-left:3px solid #bd8b35;padding-left:12px}.clinical-visit-page{width:min(1180px,100%);margin:0 auto}.clinical-navigation{flex-wrap:wrap;align-items:center;gap:10px 18px;margin-bottom:19px;display:flex}.clinical-navigation a{color:var(--accent);align-items:center;gap:6px;font-size:.74rem;font-weight:800;display:inline-flex}.clinical-visit-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.clinical-visit-heading h1{margin:4px 0;font-size:clamp(1.7rem,3vw,2.25rem)}.clinical-visit-heading p{color:var(--muted);margin:0;font-weight:750}.clinical-visit-metadata{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:20px 0;display:grid}.clinical-visit-metadata div{background:#fff;border:1px solid #e0e7e3;border-radius:9px;gap:6px;padding:13px 14px;display:grid}.clinical-visit-metadata span{color:var(--muted);font-size:.65rem;font-weight:700}.clinical-visit-metadata strong{overflow-wrap:anywhere;font-size:.78rem}.clinical-success,.clinical-feedback{border-radius:9px;margin-bottom:16px;padding:13px 15px}.clinical-success{color:#285743;background:#eaf5ef;font-size:.76rem;font-weight:800}.clinical-feedback{color:#624c24;background:#fff8e8;gap:11px;display:flex}.clinical-feedback strong,.clinical-feedback p{margin:0;display:block}.clinical-feedback p{margin-top:3px;font-size:.74rem;line-height:1.5}.clinical-editor{background:#fff;border:1px solid #dae4df;border-radius:12px;overflow:hidden}.clinical-editor>header{background:#fafcfb;border-bottom:1px solid #e8edea;padding:18px 20px}.clinical-editor>header>span{color:#4e6c5f;font-size:.68rem;font-weight:800}.clinical-editor>header .clinical-unsaved{color:#8b6022}.clinical-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;padding:20px;display:grid}.clinical-editor-grid label{gap:7px;min-width:0;display:grid}.clinical-editor-grid label>span{font-size:.75rem;font-weight:850}.clinical-editor-grid textarea{resize:vertical;width:100%;min-width:0;color:var(--text);font:inherit;background:#fff;border:1px solid #cdd8d2;border-radius:9px;padding:12px;font-size:.8rem;line-height:1.55}.clinical-editor-grid textarea:read-only{color:#495a52;background:#f4f7f5}.clinical-editor-grid textarea:focus{border-color:var(--accent);outline:3px solid #dcece5}.clinical-editor-grid small{color:var(--muted);justify-self:end;font-size:.63rem}.clinical-editor>footer{background:#fafbf9;border-top:1px solid #e8edea;justify-content:space-between;align-items:center;gap:20px;padding:17px 20px;display:flex}.clinical-editor>footer p{max-width:620px;color:var(--muted);margin:0;font-size:.65rem;line-height:1.55}.clinical-editor>footer>div{flex-shrink:0;gap:10px;display:flex}.clinical-page-state{text-align:center;align-content:center;place-items:center;gap:10px;min-height:430px;display:grid}.clinical-page-state h1,.clinical-page-state p{margin:0}.clinical-page-state p{max-width:560px;color:var(--muted)}.clinical-page-state>div{gap:10px;margin-top:10px;display:flex}@media (max-width:920px){.clinical-visit-metadata,.clinical-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-visits-list li{grid-template-columns:auto minmax(0,1fr) auto}.patient-visit-links{flex-direction:row;grid-column:2/-1;align-items:flex-start;gap:15px}}@media (max-width:620px){.clinical-visit-heading,.clinical-editor>footer,.patient-visits>header{flex-direction:column;align-items:stretch}.clinical-visit-metadata,.clinical-editor-grid,.appointment-clinical-summary{grid-template-columns:1fr}.clinical-editor>footer>div{flex-direction:column-reverse;width:100%}.patient-visits-list li{grid-template-columns:auto minmax(0,1fr)}.patient-visits-list .clinical-status,.patient-visit-links{grid-column:2}.patient-visit-links{flex-direction:column}}.settings-page{width:min(1180px,100%);margin:0 auto}.settings-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.settings-heading h1,.settings-page>h1{color:var(--ink);margin:7px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3rem);font-weight:400}.settings-heading p,.settings-page>p{color:var(--muted);margin:0;line-height:1.55}.settings-security-badge{color:#285e4d;background:#e8f2ed;border:1px solid #b9d4c8;border-radius:999px;flex:none;align-items:center;gap:7px;padding:8px 12px;font-size:.7rem;font-weight:800;display:inline-flex}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:24px;display:grid}.settings-card{border:1px solid var(--line);background:#ffffffe6;border-radius:12px;min-width:0;padding:22px;box-shadow:0 14px 38px #2b3a350b}.settings-card--wide{grid-column:1/-1}.settings-card>header{color:var(--pine);align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.settings-card>header svg{flex:none}.settings-card h2,.settings-card header p{margin:0}.settings-card h2{color:var(--ink);font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:400}.settings-card header p,.settings-card>small{color:var(--muted);margin-top:4px;font-size:.69rem;line-height:1.45}.settings-feedback,.settings-action{border-radius:8px;align-items:center;gap:10px;margin-top:20px;padding:13px 15px;display:flex}.settings-feedback{color:var(--pine);background:#edf4f0}.settings-action--success{color:#285e4d;background:#e5f1eb}.settings-action--error{color:#813d3d;background:#f8e7e5}.settings-facts{gap:9px;margin:0;display:grid}.settings-facts div{border-bottom:1px solid #edf0ed;grid-template-columns:minmax(125px,.7fr) minmax(0,1.3fr);gap:12px;padding-bottom:8px;display:grid}.settings-facts dt{color:var(--muted);font-size:.68rem}.settings-facts dd{min-width:0;color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:.75rem;font-weight:700}.settings-facts--system{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-canonical-id{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.settings-contract-gap,.settings-local-note{color:#5d5131;overflow-wrap:anywhere;background:#f7f1df;border-left:3px solid #a5873c;margin:18px 0 0;padding:11px 13px;font-size:.68rem;line-height:1.55}.settings-local-note{color:#31564f;background:#eaf2ef;border-left-color:#4a7d74}.settings-form{align-items:end;gap:12px;display:grid}.settings-password-form{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.settings-device-form,.settings-preferences-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto}.settings-form label{color:#4c5c56;gap:6px;font-size:.68rem;font-weight:800;display:grid}.settings-form input,.settings-form select{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #ced6d0;border-radius:7px;padding:8px 10px}.settings-form .primary-button,.settings-form .secondary-button,.settings-card>.danger-button{white-space:nowrap;min-height:40px}.danger-button{color:#893f3f;cursor:pointer;background:#fff8f7;border:1px solid #d9b8b4;border-radius:7px;min-height:34px;padding:7px 11px;font-size:.68rem;font-weight:800}.danger-button:disabled{cursor:wait;opacity:.55}.settings-list{gap:8px;margin:14px 0;display:grid}.settings-list-row{background:#fbfcfa;border:1px solid #e2e7e3;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:11px 12px;display:flex}.settings-list-row.is-read{opacity:.66}.settings-list-row>div{min-width:0}.settings-list-row strong,.settings-list-row small{display:block}.settings-list-row p{color:#43534d;margin:5px 0;font-size:.72rem;line-height:1.45}.settings-list-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;font-size:.63rem}.settings-current-pill{color:#2f6654;background:#e3f0e9;border-radius:999px;margin-left:8px;padding:2px 7px;font-size:.58rem;font-weight:800;display:inline-block}@media (max-width:920px){.settings-grid,.settings-password-form,.settings-device-form,.settings-preferences-form,.settings-facts--system{grid-template-columns:1fr}.settings-card--wide{grid-column:auto}}@media (max-width:600px){.settings-heading,.settings-list-row{flex-direction:column;align-items:stretch}.settings-security-badge{align-self:flex-start}.settings-card{padding:18px}.settings-facts div{grid-template-columns:1fr;gap:3px}}.finance-page,.finance-detail-page{min-width:0}.finance-heading,.finance-detail-heading,.finance-back-nav,.finance-tabs,.finance-filters,.finance-state-actions,.finance-success,.finance-truth-badge,.non-fiscal-notice,.appointment-finance header,.appointment-finance header span,.appointment-finance header button,.finance-card dd a{align-items:center;display:flex}.finance-heading,.finance-detail-heading{justify-content:space-between;gap:24px}.finance-heading h1,.finance-detail-heading h1{letter-spacing:-.04em;margin:6px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.2rem);font-weight:500}.finance-heading p,.finance-detail-heading p{color:var(--muted);margin:0}.finance-truth-badge{color:var(--pine);background:#edf6f3;border:1px solid #bed4ce;border-radius:999px;flex:none;gap:9px;padding:10px 14px;font-size:.75rem;font-weight:750}.finance-tabs{border:1px solid var(--line);background:#fff;border-radius:10px;gap:4px;width:-moz-fit-content;width:fit-content;margin:28px 0 18px;padding:4px}.finance-tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:10px 18px;font-weight:750;display:flex}.finance-tabs button[aria-selected=true]{color:#fff;background:var(--pine)}.finance-filters{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:end;gap:12px;margin-bottom:18px;padding:14px}.finance-filters label{flex:1;gap:6px;min-width:150px;display:grid}.finance-filters label span,.finance-card dt,.appointment-finance-summary span{color:var(--muted);letter-spacing:.04em;font-size:.68rem;font-weight:750}.finance-filters input,.finance-filters select,.finance-card--payment-action select{width:100%;min-height:42px;color:var(--ink);background:#fff;border:1px solid #cfd7d2;border-radius:7px;padding:8px 10px}.finance-filters .secondary-button{white-space:nowrap;min-height:42px}.finance-state{text-align:center;background:#ffffff8f;border:1px dashed #ccd5d0;border-radius:12px;align-content:center;place-items:center;gap:10px;min-height:310px;padding:36px;display:grid}.finance-state h1,.finance-state h2,.finance-state p{margin:0}.finance-state p{max-width:560px;color:var(--muted);line-height:1.6}.finance-state--forbidden,.finance-state--error,.finance-state--not_found{color:var(--danger);background:#fff8f5;border-color:#dfc5bd}.finance-state-actions{gap:10px;margin-top:12px}.finance-state-actions a{text-decoration:none}.finance-table-wrap{border:1px solid var(--line);background:#fff;border-radius:11px;max-width:100%;overflow-x:auto}.finance-table{border-collapse:collapse;width:100%;min-width:1050px}.finance-table th,.finance-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #e7ebe7;padding:13px 12px;font-size:.76rem}.finance-table th{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;background:#f8faf7;font-size:.66rem}.finance-table tbody tr:last-child td{border-bottom:0}.finance-table tbody tr:hover{background:#fafbf8}.finance-table td>strong,.finance-table td>small{display:block}.finance-table td>small{max-width:190px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.finance-table a{color:var(--pine);font-weight:700}.finance-open-link{background:#edf3f0;border-radius:50%;place-items:center;width:34px;height:34px;text-decoration:none;display:grid}.finance-status,.non-fiscal-label{white-space:nowrap;border-radius:999px;width:-moz-fit-content;width:fit-content;padding:5px 9px;font-size:.67rem;font-weight:800;display:inline-flex}.finance-status--issued{color:#745414;background:#f6ecd5}.finance-status--paid,.finance-status--completed{color:#17614e;background:#e2f2ec}.finance-status--cancelled{color:#7c3434;background:#f5e3e3}.non-fiscal-label{color:#3c5e72;background:#e7f0f5}.finance-load-more{color:var(--pine);cursor:pointer;background:#fff;border:1px solid #bdcac4;border-radius:8px;margin:18px auto 0;padding:10px 18px;font-weight:750;display:block}.finance-back-nav{flex-wrap:wrap;gap:10px 18px;margin-bottom:22px}.finance-back-nav a{color:var(--pine);align-items:center;gap:7px;font-size:.76rem;font-weight:750;text-decoration:none;display:inline-flex}.finance-success{color:#155843;background:#eef8f4;border:1px solid #b8d8cd;border-radius:8px;gap:9px;margin-top:18px;padding:12px 14px;font-size:.8rem;font-weight:700}.finance-inline-feedback{background:#fff8f2;border:1px solid #e0c8b9;border-radius:8px;margin-top:18px;padding:13px 15px}.finance-inline-feedback strong,.finance-inline-feedback p{margin:0;display:block}.finance-inline-feedback p{color:var(--muted);margin-top:5px;font-size:.76rem;line-height:1.5}.finance-inline-feedback button{color:var(--pine);cursor:pointer;background:0 0;border:0;margin-top:9px;padding:0;font-weight:750}.finance-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px;display:grid}.finance-card{border:1px solid var(--line);background:#fff;border-radius:11px;min-width:0;padding:20px}.finance-card--wide{grid-column:1/-1}.finance-card h2{margin:0 0 16px;font-size:1rem}.finance-card dl{gap:12px;margin:0;display:grid}.finance-card dl>div{border-bottom:1px solid #eef0ed;justify-content:space-between;align-items:baseline;gap:20px;padding-bottom:10px;display:flex}.finance-card dl>div:last-child{border-bottom:0;padding-bottom:0}.finance-card dd{overflow-wrap:anywhere;text-align:right;min-width:0;margin:0;font-weight:750}.finance-card dd a{color:var(--pine);justify-content:flex-end;gap:5px}.finance-card .finance-balance dd{color:var(--pine);font-size:1.2rem}.finance-snapshot{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-snapshot>div{justify-content:initial!important;display:grid!important}.finance-snapshot dd{text-align:left}.invoice-lines{gap:6px;margin-top:18px;display:grid}.invoice-lines>div{background:#f7f9f6;border-radius:7px;grid-template-columns:.65fr 1.7fr 1fr 1fr;gap:12px;padding:10px 12px;font-size:.75rem;display:grid}.invoice-lines>div :last-child{text-align:right}.finance-detail-grid--payments{align-items:start}.finance-card--payment-action form,.finance-card--payment-action label{gap:10px;display:grid}.finance-card--payment-action form>p{color:var(--muted);margin:0;line-height:1.55}.non-fiscal-notice{color:#2f5367;background:#edf5f8;border-radius:8px;align-items:flex-start;gap:11px;padding:13px}.non-fiscal-notice strong,.non-fiscal-notice h2,.non-fiscal-notice p{margin:0}.non-fiscal-notice p{margin-top:4px;font-size:.72rem;line-height:1.5}.non-fiscal-notice--detail{padding:18px}.invoice-paid{color:#17614e;text-align:center;place-items:center;min-height:180px;display:grid}.finance-card--history ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.finance-card--history li{border:1px solid #e4e9e5;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;display:flex}.finance-card--history li strong,.finance-card--history li span,.finance-card--history li time{display:block}.finance-card--history li span,.finance-card--history li time{color:var(--muted);margin-top:3px;font-size:.68rem}.finance-card--history li a{color:var(--pine);flex:none;font-size:.72rem;font-weight:750}.appointment-finance{background:#f3faf7;border:1px solid #cbded8;border-radius:9px;grid-column:1/-1;padding:14px}.appointment-finance header{justify-content:space-between;gap:12px}.appointment-finance header span,.appointment-finance header button{gap:7px}.appointment-finance header span{color:var(--pine);font-size:.76rem;font-weight:800}.appointment-finance header button{color:var(--pine);cursor:pointer;background:0 0;border:0;padding:0;font-size:.7rem;font-weight:750}.appointment-finance>p,.appointment-finance-empty p,.appointment-finance-empty span{color:var(--muted);margin:10px 0 0;font-size:.73rem}.appointment-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:12px;margin-top:12px;display:grid}.appointment-finance-summary strong,.appointment-finance-summary span{display:block}.appointment-finance-summary strong{overflow-wrap:anywhere;margin-top:4px;font-size:.75rem}.appointment-finance-summary a{color:var(--pine);align-items:center;gap:6px;font-size:.72rem;font-weight:800;display:inline-flex}.appointment-finance-empty .primary-button{margin-top:12px}@media (max-width:1020px){.finance-filters{flex-wrap:wrap}.finance-filters label{min-width:calc(50% - 12px)}}@media (max-width:820px){.finance-heading,.finance-detail-heading{flex-direction:column;align-items:flex-start}.finance-detail-grid,.finance-snapshot{grid-template-columns:1fr}.finance-card--wide{grid-column:auto}.appointment-finance-summary{grid-template-columns:1fr 1fr}}@media (max-width:560px){.finance-tabs,.finance-tabs button,.finance-filters label,.finance-filters .secondary-button{width:100%}.finance-tabs button{justify-content:center}.finance-filters{flex-direction:column;align-items:stretch}.invoice-lines>div,.appointment-finance-summary{grid-template-columns:1fr}.invoice-lines>div :last-child{text-align:left}}.services-registry,.service-detail{gap:24px;min-width:0;display:grid}.services-heading,.service-detail__heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.services-toolbar{align-items:center;gap:14px;min-width:0;display:flex}.services-search{flex:1}.services-status-filter{color:#47554f;white-space:nowrap;background:#fff;border:1px solid #d8dfda;border-radius:7px;align-items:center;gap:9px;min-height:44px;padding:9px 13px;font-size:.73rem;font-weight:800;display:inline-flex}.services-status-filter input{width:16px;height:16px;accent-color:var(--accent)}.service-state{min-height:250px;color:var(--muted);text-align:center;background:#fbfcfb;border:1px dashed #ccd6d0;border-radius:11px;align-content:center;place-items:center;gap:11px;padding:38px;display:grid}.service-state p,.service-state h1{margin:0}.service-state--error{color:#893f3a;background:#fff9f8;border-color:#e3c0bb}.service-state>div,.service-detail-state>div{gap:10px;display:flex}.service-list{gap:10px;min-width:0;display:grid}.service-list article{background:#fff;border:1px solid #dfe5e1;border-radius:9px;grid-template-columns:minmax(190px,1.5fr) minmax(180px,1fr) auto auto;align-items:center;gap:18px;min-width:0;padding:16px 18px;display:grid;box-shadow:0 4px 13px #28372f0a}.service-list article.service-list__inactive{opacity:.82;background:#f6f7f6;border-style:dashed}.service-list__identity,.service-list__metrics{gap:5px;min-width:0;display:grid}.service-list__identity strong,.service-list__identity small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.service-code{color:#547066;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.68rem;font-weight:800}.service-list__metrics span{align-items:center;gap:7px;font-size:.76rem;font-weight:750;display:inline-flex}.service-status{border-radius:999px;align-items:center;width:-moz-fit-content;width:fit-content;min-height:28px;padding:5px 10px;font-size:.66rem;font-weight:850;display:inline-flex}.service-status--active{color:#2f694f;background:#e8f5ed}.service-status--inactive{color:#795e4a;background:#f1ebe5}.service-list__actions{flex-wrap:wrap;justify-content:flex-end;gap:7px;display:flex}.service-list__actions .secondary-button{min-height:36px;padding:7px 10px;font-size:.68rem}.service-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.service-detail-price{color:var(--ink);margin:16px 0 7px;font-size:1.35rem;display:block}.service-dialog{width:min(760px,100%)}.service-form__identity{grid-template-columns:minmax(160px,.7fr) minmax(260px,1.5fr)}.service-form label small{color:var(--muted);font-size:.66rem;line-height:1.4}.service-lifecycle,.service-deactivate-confirmation{background:#f9faf9;border:1px solid #dfe5e1;border-radius:9px;align-items:center;gap:13px;padding:14px;display:flex}.service-lifecycle>div,.service-deactivate-confirmation>div{flex:1}.service-lifecycle p,.service-deactivate-confirmation p{color:var(--muted);margin:4px 0 0;font-size:.72rem;line-height:1.45}.service-deactivate-confirmation{color:#863d38;background:#fff8f7;border-color:#e2beb8}@media (max-width:1080px){.service-list article{grid-template-columns:minmax(170px,1.4fr) minmax(170px,1fr) auto}.service-list__actions{grid-column:1/-1;justify-content:flex-start}}@media (max-width:760px){.services-heading,.service-detail__heading,.services-toolbar,.service-lifecycle,.service-deactivate-confirmation{flex-direction:column;align-items:stretch}.service-list article,.service-detail-grid,.service-form__identity{grid-template-columns:1fr}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.patient-registry,.patient-card{gap:22px;display:grid}.patient-heading,.patient-card__heading{align-items:end}.patient-toolbar{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #dde4df;border-radius:10px;justify-content:space-between;align-items:center;gap:18px;padding:14px;display:flex}.patient-search{min-width:min(100%,440px);color:var(--muted);background:#fbfcfb;border:1px solid #cbd5cf;border-radius:8px;align-items:center;gap:10px;padding:0 11px;display:flex}.patient-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #1e69521f}.patient-search input{min-height:43px;color:var(--ink);background:0 0;border:0;outline:0;flex:1}.patient-search button{color:var(--muted);cursor:pointer;background:0 0;border:0;place-items:center;padding:4px;display:inline-grid}.patient-count{color:var(--muted);white-space:nowrap;font-size:.74rem;font-weight:800}.patient-state,.patient-card-state{min-height:280px;color:var(--muted);text-align:center;background:#fafbf9;border:1px dashed #ccd6cf;border-radius:12px;align-content:center;place-items:center;gap:10px;padding:40px 24px;display:grid}.patient-state strong,.patient-card-state h1{color:var(--ink);margin:0}.patient-state p,.patient-card-state p{max-width:520px;margin:0}.patient-state--error,.patient-card-state--error{color:#974b45;background:#fff9f8;border-color:#dfc4c1}.patient-card-state>div{gap:10px;margin-top:10px;display:flex}.patient-list{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #dce4df;border-radius:12px;display:grid;overflow:hidden}.patient-list>a{color:inherit;border-bottom:1px solid #e8ece9;grid-template-columns:auto minmax(180px,1fr) minmax(160px,.7fr) auto;align-items:center;gap:14px;padding:17px 19px;text-decoration:none;display:grid}.patient-list>a:last-child{border-bottom:0}.patient-list>a:hover{background:#f4f8f5}.patient-avatar{color:#fff;background:#396d5b;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:900;display:grid}.patient-list__identity,.patient-list__doctor{gap:4px;display:grid}.patient-list__identity small,.patient-list__doctor small{color:var(--muted);font-size:.69rem}.patient-list__doctor strong{font-size:.75rem}.patient-pagination{justify-content:center;align-items:center;gap:16px;display:flex}.patient-pagination span{min-width:90px;color:var(--muted);text-align:center;font-size:.72rem;font-weight:800}.patient-back{color:#396d5b;align-items:center;gap:7px;width:max-content;font-size:.74rem;font-weight:800;text-decoration:none;display:inline-flex}.patient-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.patient-info-card{min-height:210px;box-shadow:var(--shadow-soft);background:#fff;border:1px solid #dce4df;border-radius:11px;padding:20px;position:relative}.patient-info-card>header{color:#396d5b;align-items:center;gap:9px;margin-bottom:18px;display:flex}.patient-info-card h2{color:var(--ink);margin:0;font-size:.88rem}.patient-info-card dl{gap:12px;margin:0;display:grid}.patient-info-card dl>div{grid-template-columns:minmax(110px,.45fr) 1fr;gap:12px;display:grid}.patient-info-card dt,.patient-info-card small{color:var(--muted);font-size:.68rem}.patient-info-card dd{overflow-wrap:anywhere;margin:0;font-size:.78rem;font-weight:750}.patient-info-card p{color:#425149;margin:0 0 14px;line-height:1.6}.patient-contact-icons{color:#8da097;gap:7px;display:flex;position:absolute;bottom:16px;right:17px}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0c1c1685;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0;overflow-y:auto}.appointment-dialog.patient-dialog{background:#fff;border-radius:13px;width:min(100%,570px);max-height:calc(100vh - 48px);padding:24px;overflow-y:auto;box-shadow:0 24px 70px #051a1247}.appointment-dialog__header{border-bottom:1px solid #e3e8e5;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:17px;display:flex}.appointment-dialog__header h2{font-family:var(--font-display);margin:4px 0 0;font-size:1.35rem}.appointment-form{gap:16px;margin-top:20px;display:grid}.appointment-form>label{color:#47554f;gap:7px;font-size:.72rem;font-weight:800;display:grid}.appointment-form input{min-height:44px;color:var(--ink);background:#fff;border:1px solid #cbd5cf;border-radius:7px;padding:9px 11px}.appointment-form input:focus{border-color:var(--accent);outline:0;box-shadow:0 0 0 3px #1e69521f}.mutation-message{color:#785d1f;background:#fffaf0;border:1px solid #e1c992;border-radius:8px;gap:10px;padding:12px;display:flex}.mutation-message--forbidden,.mutation-message--server{color:#8e4640;background:#fff7f6;border-color:#dfc4c1}.mutation-message--network{color:#3f6175;background:#f5fafc;border-color:#bfd1dd}.mutation-message strong,.mutation-message p{margin:0}.mutation-message p{margin-top:4px;font-size:.73rem;line-height:1.5}.text-button{color:inherit;cursor:pointer;background:0 0;border:0;margin:9px 8px 0 0;padding:0;font-size:.71rem;font-weight:900;text-decoration:underline;display:inline-flex}.form-footnote{color:var(--muted);margin:0;font-size:.68rem}.appointment-dialog__actions{border-top:1px solid #e6ebe8;justify-content:flex-end;gap:10px;margin-top:4px;padding-top:17px;display:flex}@media (max-width:760px){.patient-toolbar,.patient-heading,.patient-card__heading{flex-direction:column;align-items:stretch}.patient-list>a{grid-template-columns:auto 1fr auto}.patient-list__doctor{display:none}.patient-card-grid{grid-template-columns:1fr}}@media (max-width:560px){.patient-pagination{justify-content:space-between}.patient-pagination span{display:none}.modal-backdrop{align-items:end;padding:0}.appointment-dialog.patient-dialog{border-radius:13px 13px 0 0;max-height:94vh;padding:22px 18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.calendar-page{max-width:1480px;margin:0 auto}.calendar-heading{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.calendar-heading h1{letter-spacing:-.035em;margin:9px 0 7px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,3.7rem);font-weight:400}.calendar-heading p{color:var(--muted);text-transform:capitalize;margin:0;font-size:.92rem}.calendar-server-state{color:#446159;background:#e8f0eb;border-radius:999px;align-items:center;gap:8px;min-height:34px;padding:8px 12px;font-size:.71rem;font-weight:700;display:inline-flex}.calendar-server-state>span{background:#3c806a;border-radius:50%;width:7px;height:7px}.calendar-server-state--loading{color:#73694c;background:#f4efdf}.calendar-server-state--loading>span{background:#b68b3f}.calendar-server-state--error{color:#8b4040;background:#f7e7e5}.calendar-server-state--error>span{background:#b34d4d}.calendar-controls{border:1px solid var(--line);background:#ffffffdb;border-radius:10px;align-items:flex-end;gap:18px;margin-top:32px;padding:14px;display:flex;box-shadow:0 12px 35px #2b3a350a}.calendar-period-controls,.calendar-view-switch{align-items:center;display:flex}.calendar-period-controls{gap:6px}.calendar-icon-button,.calendar-today-button,.calendar-view-switch button{color:#344b44;cursor:pointer;background:#fff;border:1px solid #d3dad5;min-height:40px}.calendar-icon-button{border-radius:7px;place-items:center;width:40px;display:grid}.calendar-today-button{border-radius:7px;padding:8px 14px;font-size:.76rem;font-weight:700}.calendar-view-switch{border:1px solid #d3dad5;border-radius:7px;overflow:hidden}.calendar-view-switch button{border:0;border-radius:0;min-width:78px;padding-inline:13px;font-size:.74rem;font-weight:700}.calendar-view-switch button+button{border-left:1px solid #d3dad5}.calendar-view-switch button[aria-pressed=true]{color:#fff;background:var(--pine)}.calendar-staff-filter{gap:6px;min-width:min(330px,100%);margin-left:auto;display:grid}.calendar-new-button{color:#fff;background:var(--pine);cursor:pointer;border:0;border-radius:7px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:8px 15px;font-size:.74rem;font-weight:800;display:inline-flex}.calendar-new-button:hover{background:var(--pine-soft)}.calendar-mutation-success{color:#285e4d;background:#e5f1eb;border-left:3px solid #3f806b;border-radius:5px;margin-top:16px;padding:12px 14px;font-size:.78rem;font-weight:700}.calendar-staff-filter>span{color:#4c5c56;align-items:center;gap:7px;font-size:.69rem;font-weight:800;display:inline-flex}.calendar-staff-filter select{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #ced6d0;border-radius:7px;padding:7px 35px 7px 11px}.calendar-staff-filter select:disabled{color:#5f6965;background:#f1f3f0}.calendar-feedback{min-height:380px;color:var(--pine);text-align:center;background:#ffffffa1;border:1px dashed #ccd5cf;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;margin-top:20px;padding:40px;display:flex}.calendar-feedback h2{color:var(--ink);margin:18px 0 7px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:400}.calendar-feedback p{max-width:520px;color:var(--muted);margin:0;line-height:1.55}.calendar-feedback .secondary-button{margin-top:22px}.calendar-feedback--error{color:var(--danger);background:#fff9f8;border-color:#dfc1bd}.calendar-scroll-region{background:#fff;border:1px solid #d9dfda;border-radius:11px;max-width:100%;margin-top:20px;overflow-x:auto;box-shadow:0 18px 50px #2b3a350e}.calendar-schedule{display:grid;overflow:hidden}.calendar-schedule--week{grid-template-columns:72px repeat(7,minmax(146px,1fr));min-width:1120px}.calendar-schedule--day{grid-template-columns:72px minmax(520px,1fr);min-width:620px}.calendar-corner,.calendar-day-heading{z-index:3;background:#fafbf8;border-bottom:1px solid #dfe4e0;min-height:62px;position:sticky;top:0}.calendar-corner{z-index:4;left:0}.calendar-day-heading{color:#62706b;text-align:center;border-left:1px solid #e5e9e6;place-content:center;display:grid}.calendar-day-heading span{letter-spacing:.08em;text-transform:uppercase;font-size:.66rem;font-weight:800}.calendar-day-heading strong{color:#34433e;margin-top:4px;font-size:.82rem}.calendar-day-heading.is-today{box-shadow:inset 0 -3px var(--gold);background:#fffaf0}.calendar-time-axis{z-index:2;background:#fbfcfa;border-right:1px solid #dfe4e0;flex-direction:column;justify-content:space-between;height:720px;padding:0 10px 0 8px;display:flex;position:sticky;left:0}.calendar-time-axis time{color:#78837f;text-align:right;font-size:.65rem;transform:translateY(-.45em)}.calendar-day-column{background:repeating-linear-gradient(#0000 0 29px,#f0f2ef 30px,#0000 31px 59px,#e4e8e4 60px);border-left:1px solid #e8ece9;height:720px;position:relative}.calendar-slot-button{z-index:0;cursor:crosshair;background:0 0;border:0;height:60px;position:absolute;left:0;right:0}.calendar-slot-button:hover,.calendar-slot-button:focus-visible{background:#c89d531f}.calendar-slot-button:focus-visible:after{color:#72551f;content:"+ Новий запис";font-size:.61rem;font-weight:800;position:absolute;top:5px;left:8px}.calendar-current-time{z-index:2;pointer-events:none;background:#bf5548;height:2px;position:absolute;left:0;right:0}.calendar-current-time:before{content:"";background:#bf5548;border-radius:50%;width:9px;height:9px;position:absolute;top:-4px;left:-4px}.appointment-card{z-index:1;border:0;border-left:3px solid var(--appointment-border,#756b4e);color:var(--appointment-text,#443e2e);background-color:var(--appointment-bg,#e8e5dc);font:inherit;text-align:left;cursor:pointer;border-radius:6px;padding:6px 7px;position:absolute;left:5px;right:5px;overflow:hidden;box-shadow:0 3px 10px #2b3a351a}.appointment-card:hover,.appointment-card:focus-visible{filter:brightness(.97);box-shadow:0 5px 14px #2b3a3529}.appointment-card time,.appointment-card strong,.appointment-card span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.appointment-card time{font-size:.63rem;font-weight:800}.appointment-card strong{margin-top:3px;font-size:.68rem}.appointment-card span{color:inherit;opacity:.78;margin-top:2px;font-size:.59rem}.appointment-card--cancelled{box-shadow:none;opacity:.74;background-image:repeating-linear-gradient(135deg,#0000,#0000 7px,#4b39391f 7px 14px)}.appointment-card--cancelled strong,.appointment-card--cancelled span{text-decoration:line-through}.calendar-color-legend{border:1px solid var(--line);background:#ffffffd1;border-radius:9px;gap:9px;margin-top:16px;padding:12px 14px;display:grid}.calendar-color-legend>strong{color:var(--ink);font-size:.76rem}.calendar-color-legend>div{flex-wrap:wrap;gap:7px 14px;display:flex}.calendar-color-legend span{color:var(--muted);align-items:center;gap:6px;font-size:.7rem;display:inline-flex}.calendar-color-legend i{border:2px solid var(--appointment-border);background:var(--appointment-bg);border-radius:3px;width:13px;height:13px}.calendar-color-legend small{color:#73807b;font-size:.62rem}.calendar-density--compact .appointment-card{padding:3px 5px}.calendar-density--compact .appointment-card strong{margin-top:1px;font-size:.63rem}.calendar-density--compact .appointment-card span{margin-top:0;font-size:.55rem}.mutation-backdrop{z-index:1200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#071f1c94;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.mutation-dialog{width:min(100%,650px);max-height:calc(100vh - 48px);color:var(--ink);background:#fff;border:1px solid #dce2dd;border-radius:13px;padding:28px;overflow-y:auto;box-shadow:0 26px 80px #051d1a4d}.mutation-dialog>header{border-bottom:1px solid #e7ebe8;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:20px;display:flex}.staff-dialog-heading{align-items:center;gap:14px;min-width:0;display:flex}.staff-dialog-heading .r34-dialog-back{align-self:stretch}.mutation-dialog h2{margin:8px 0 0;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:400}.mutation-feedback{color:#6e512c;background:#faf2e5;border-left:3px solid #9a7240;border-radius:5px;align-items:flex-start;gap:12px;margin-top:18px;padding:13px 14px;display:flex}.mutation-feedback--conflict,.mutation-feedback--forbidden{color:#7d3535;background:#f9e9e7;border-left-color:#a34949}.mutation-feedback--network,.mutation-feedback--server,.mutation-feedback--unexpected{color:#5e522f;background:#f5f1e4;border-left-color:#7d6a3c}.mutation-feedback strong,.mutation-feedback p{display:block}.mutation-feedback p{margin:4px 0 0;font-size:.77rem;line-height:1.5}.mutation-feedback button{min-height:32px;color:inherit;cursor:pointer;background:0 0;border:1px solid;border-radius:6px;align-items:center;gap:6px;margin:10px 8px 0 0;padding:6px 9px;font-size:.68rem;font-weight:800;display:inline-flex}.mutation-form,.mutation-confirmation,.mutation-details{margin-top:22px}.mutation-form{gap:17px;display:grid}.mutation-form label,.mutation-confirmation label{gap:7px;display:grid}.mutation-form label>span,.mutation-confirmation label>span{color:#47554f;font-size:.7rem;font-weight:800}.mutation-form input,.mutation-form select,.mutation-confirmation textarea{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #ccd5cf;border-radius:7px;padding:9px 11px}.mutation-confirmation textarea{resize:vertical;min-height:92px}.mutation-form-grid{grid-template-columns:1.35fr 1fr 1fr;gap:12px;display:grid}.mutation-form footer,.mutation-confirmation footer,.mutation-details footer{border-top:1px solid #e7ebe8;justify-content:flex-end;gap:10px;margin-top:8px;padding-top:18px;display:flex}.mutation-form .primary-button{margin-top:0}.mutation-catalog-state{color:var(--muted);margin:0;font-size:.76rem}.mutation-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.mutation-details>div{background:#fafbf9;border:1px solid #e0e5e1;border-radius:8px;gap:5px;padding:14px;display:grid}.mutation-details>div span{color:var(--muted);font-size:.66rem;font-weight:700}.mutation-details>div strong{font-size:.8rem}.mutation-details footer{grid-column:1/-1}.mutation-danger-button{color:#fff;cursor:pointer;background:#9b4141;border:0;border-radius:7px;justify-content:center;align-items:center;min-height:44px;padding:10px 15px;font-weight:800;display:inline-flex}.mutation-danger-button:disabled,.mutation-dialog button:disabled{cursor:wait;opacity:.6}.mutation-confirmation{color:#8d3d3d}.mutation-confirmation>p{color:#5c4b49;margin:12px 0 20px;line-height:1.55}.staff-heading,.staff-detail-heading{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.staff-toolbar{align-items:center;gap:12px;margin:24px 0 16px;display:flex}.staff-search{flex:1;max-width:520px}.staff-toolbar select{min-height:44px;color:var(--ink);background:#fff;border:1px solid #ccd5cf;border-radius:7px;padding:8px 34px 8px 11px}.staff-list{gap:10px;display:grid}.staff-list article{cursor:pointer;background:#fff;border:1px solid #dfe5e1;border-radius:10px;grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr) minmax(190px,1fr) auto;align-items:center;gap:18px;padding:15px 17px;display:grid}.staff-list article:focus-visible{outline-offset:2px;outline:3px solid #2d69513d}.staff-list__inactive{opacity:.82;background:#f6f6f3!important}.staff-list__identity,.staff-list__actions,.staff-list__statuses{align-items:center;gap:10px;display:flex}.staff-list__identity>span:last-child,.staff-list__role,.staff-list__statuses{gap:4px;display:grid}.staff-list small,.staff-list__statuses span:not(.service-status){color:var(--muted);font-size:.68rem}.staff-avatar{color:#fff;background:#4f7767;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.staff-dialog{max-width:900px}.staff-checkbox>span:last-child,.staff-role-confirm{align-items:center;gap:9px;display:flex!important}.staff-checkbox input,.staff-role-confirm input{width:18px;min-height:18px}.staff-password-grid{align-items:start}.staff-password-input{background:#fff;border:1px solid #cfd7d2;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.staff-password-input:focus-within{border-color:#477a65;box-shadow:0 0 0 3px #477a651f}.staff-password-input input{border-radius:0;width:100%;box-shadow:none!important;border:0!important}.staff-password-input button{color:#42584f;cursor:pointer;background:#f7f9f8;border:0;border-left:1px solid #dfe5e1;place-items:center;width:42px;display:grid}.staff-password-note{color:var(--muted);margin:25px 0 0;font-size:.72rem;line-height:1.5}.staff-role-confirm{color:#635226;background:#fff9e8;border:1px solid #dfc985;border-radius:8px;padding:12px;font-size:.75rem;font-weight:750}.staff-detail .back-link{margin-bottom:22px}.staff-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0;display:grid}.staff-detail-grid article{background:#fff;border:1px solid #dfe5e1;border-radius:10px;padding:19px}.staff-detail-grid article>svg{color:var(--accent)}.staff-detail-grid h2,.staff-lifecycle h2{margin:9px 0 14px;font-size:1rem}.staff-detail-grid dl,.staff-detail-grid dl div{gap:5px;display:grid}.staff-detail-grid dl{gap:12px;margin:0}.staff-detail-grid dt{color:var(--muted);font-size:.67rem;font-weight:700}.staff-detail-grid dd{overflow-wrap:anywhere;margin:0;font-size:.8rem;font-weight:750}.staff-contract-gap{background:#fbf8ef!important}.staff-contract-gap p,.staff-lifecycle p,.staff-lifecycle small{color:var(--muted);font-size:.75rem;line-height:1.55}.staff-lifecycle{background:#fff;border:1px solid #dfe5e1;border-radius:10px;justify-content:space-between;align-items:center;gap:22px;padding:18px;display:flex}.staff-lifecycle h2,.staff-lifecycle p{margin-top:0}.staff-lifecycle-confirm{margin-top:14px}@media (max-width:1020px){.calendar-controls{flex-wrap:wrap;align-items:stretch}.calendar-staff-filter{width:100%;margin-left:0}.calendar-new-button{margin-left:auto}.staff-list article{grid-template-columns:1.3fr 1fr}.staff-detail-grid{grid-template-columns:1fr 1fr}}@media (max-width:820px){.main-content{padding:28px 20px 44px}.calendar-heading{flex-direction:column;gap:16px}.calendar-controls{gap:12px}.staff-heading,.staff-detail-heading,.staff-toolbar{flex-direction:column;align-items:stretch}.staff-search{max-width:none}.staff-detail-grid,.staff-list article{grid-template-columns:1fr}}@media (max-width:560px){.calendar-period-controls,.calendar-view-switch{width:100%}.calendar-today-button,.calendar-view-switch button{flex:1}.calendar-feedback{min-height:310px;padding:30px 20px}.calendar-new-button{width:100%;margin-left:0}.mutation-backdrop{align-items:end;padding:0}.mutation-dialog{border-radius:13px 13px 0 0;max-height:94vh;padding:22px 18px}.mutation-form-grid,.mutation-details{grid-template-columns:1fr}}.app-frame--calendar{height:100dvh;min-height:0;overflow:hidden}.workspace--calendar{grid-template-rows:auto auto minmax(0,1fr);height:100dvh;min-height:0;display:grid;overflow:hidden}.main-content--calendar{height:100%;min-height:0;padding:12px 22px 14px;overflow:hidden}.main-content--calendar .calendar-page{grid-template-rows:auto auto minmax(0,1fr);gap:7px;width:100%;max-width:none;height:100%;min-height:0;margin:0;display:grid;position:relative}.calendar-workspace-body{grid-template-columns:218px minmax(0,1fr);gap:9px;min-width:0;min-height:0;display:grid;position:relative;overflow:hidden}.calendar-sidebar{scrollbar-width:thin;overscroll-behavior:contain;flex-direction:column;gap:8px;min-width:0;min-height:0;padding-right:2px;display:flex;overflow:auto}.calendar-sidebar .mini-month-navigator{flex:none}.calendar-operations{background:#fffffff0;border:1px solid #d9dfda;border-radius:10px;gap:8px;padding:8px;display:grid;box-shadow:0 12px 30px #2b3a350d}.calendar-operations-toggle{color:#35463f;min-height:30px;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:2px 3px;font-size:.72rem;font-weight:850;display:flex}.calendar-filter-sections{gap:9px;display:grid}.calendar-filter-sections fieldset{border:0;border-top:1px solid #e5e9e6;min-width:0;margin:0;padding:8px 2px 0}.calendar-filter-sections legend{color:#475750;padding:0;font-size:.64rem;font-weight:850}.calendar-filter-actions{justify-content:flex-end;gap:4px;margin:-18px 0 5px;display:flex}.calendar-filter-actions button{color:var(--pine);cursor:pointer;background:0 0;border:0;padding:2px 4px;font-size:.57rem;font-weight:850}.calendar-filter-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 6px;display:grid}.calendar-filter-options label{color:#53615c;cursor:pointer;align-items:center;gap:5px;min-width:0;min-height:23px;font-size:.58rem;font-weight:750;display:flex}.calendar-filter-options input{width:13px;height:13px;accent-color:var(--pine);flex:none}.calendar-filter-options label>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.calendar-filter-options label>i{border:1px solid #1e293b24;border-radius:3px;flex:none;width:9px;height:9px}.calendar-filter-options--services{scrollbar-width:thin;grid-template-columns:minmax(0,1fr);max-height:118px;overflow-y:auto}.calendar-filter-options--services label>span{justify-content:space-between;align-items:baseline;gap:5px;display:flex}.calendar-filter-options--services small{color:#996b27;font-size:.5rem}.calendar-quick-actions{border-top:1px solid #e5e9e6;gap:5px;padding-top:8px;display:grid}.calendar-quick-actions>strong{color:#475750;font-size:.64rem}.calendar-quick-actions button{color:#385049;cursor:pointer;background:#f8faf8;border:1px solid #d8ded9;border-radius:7px;justify-content:flex-start;align-items:center;gap:7px;min-height:31px;padding:5px 8px;font-size:.64rem;font-weight:850;display:flex}.calendar-operations button:focus-visible,.calendar-filter-options input:focus-visible{outline-offset:2px;outline:3px solid #ba87376b}.calendar-scheduler-pane{flex-direction:column;gap:7px;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.mini-month-navigator{z-index:20;min-width:0;min-height:0;position:relative}.mini-month-compact-toggle{display:none}.mini-month-panel{background:#fffffff0;border:1px solid #d9dfda;border-radius:10px;gap:9px;padding:10px;display:grid;box-shadow:0 12px 30px #2b3a350f}.mini-month-header{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.mini-month-header>strong{color:#34433e;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.mini-month-header>div{flex:none;gap:3px;display:flex}.mini-month-header button{color:#40524b;cursor:pointer;background:#fff;border:1px solid #d8ded9;border-radius:6px;place-items:center;width:29px;height:29px;display:grid}.mini-month-weekdays,.mini-month-grid{grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.mini-month-weekdays{color:#75817c;text-align:center;text-transform:uppercase;font-size:.58rem;font-weight:800}.mini-month-weekdays abbr{border:0;text-decoration:none}.mini-month-grid{gap:2px 0}.mini-month-date{color:#394942;min-width:0;height:27px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;font-size:.66rem;font-weight:700;display:grid;position:relative}.mini-month-date:hover{background:#f0f3f0}.mini-month-date.is-outside-month{color:#a1aaa6}.mini-month-date.is-selected-week{color:#345149;background:#e7eeea;border-radius:0}.mini-month-date.is-selected-date{color:#fff;background:var(--pine);border-radius:6px;box-shadow:0 2px 7px #19463d33}.mini-month-date.is-today:after{background:var(--gold);content:"";border-radius:999px;height:2px;position:absolute;bottom:2px;left:5px;right:5px}.mini-month-date.is-selected-date.is-today:after{background:#f5d79c}.mini-month-header button:focus-visible,.mini-month-date:focus-visible,.mini-month-today:focus-visible,.mini-month-compact-toggle:focus-visible{outline-offset:2px;outline:3px solid #ba87376b}.mini-month-today{color:#40564e;cursor:pointer;background:#f8faf8;border:1px solid #d8ded9;border-radius:6px;min-height:30px;font-size:.66rem;font-weight:800}.main-content--calendar .calendar-heading{align-items:center;gap:14px}.calendar-title-block{align-items:baseline;gap:14px;min-width:0;display:flex}.main-content--calendar .calendar-heading h1{margin:0;font-size:clamp(1.45rem,2.3vw,2rem)}.main-content--calendar .calendar-heading p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.main-content--calendar .calendar-server-state{min-height:26px;padding:5px 9px;font-size:.64rem}.main-content--calendar .calendar-controls{align-items:center;gap:9px;min-height:46px;margin:0;padding:5px 7px}.main-content--calendar .calendar-icon-button,.main-content--calendar .calendar-today-button,.main-content--calendar .calendar-view-switch button,.main-content--calendar .calendar-new-button{min-height:34px}.main-content--calendar .calendar-icon-button{width:34px}.main-content--calendar .calendar-staff-filter{align-items:center;gap:7px;min-width:250px;margin-left:auto;display:flex}.main-content--calendar .calendar-staff-filter>span{flex:none}.main-content--calendar .calendar-staff-filter select{min-height:34px;padding-block:5px}.calendar-selected-specialist{color:#53615c;text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:.66rem;font-weight:800;overflow:hidden}.main-content--calendar .calendar-color-legend{align-items:center;gap:10px;min-width:0;min-height:30px;margin:0;padding:5px 9px;display:flex}.main-content--calendar .calendar-color-legend>strong,.main-content--calendar .calendar-color-legend>small{flex:none}.main-content--calendar .calendar-color-legend>div{scrollbar-width:thin;flex-wrap:nowrap;flex:1;gap:10px;min-width:0;display:flex;overflow-x:auto}.main-content--calendar .calendar-color-legend span{white-space:nowrap;flex:none;font-size:.65rem}.main-content--calendar .calendar-color-legend i{width:11px;height:11px}.main-content--calendar .calendar-color-legend small{text-overflow:ellipsis;white-space:nowrap;max-width:290px;overflow:hidden}.calendar-legend-empty{font-style:italic}.calendar-stage{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.main-content--calendar .calendar-feedback{flex:1;min-height:0;margin:0;padding:24px}.main-content--calendar .calendar-feedback h2{margin-top:10px;font-size:1.35rem}.calendar-empty-notice{color:#5f6f69;background:#fafbf9;border:1px solid #dde3de;border-bottom:0;border-radius:8px 8px 0 0;align-items:center;gap:7px;min-height:30px;padding:5px 10px;font-size:.68rem;font-weight:700;display:flex}.main-content--calendar .calendar-scroll-region{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;margin:0;overflow:auto}.main-content--calendar .calendar-schedule{overflow:visible}.main-content--calendar .calendar-corner,.main-content--calendar .calendar-day-heading{min-height:44px}.main-content--calendar .calendar-corner{color:#71807a;place-items:center;font-size:.56rem;font-weight:800;display:grid}.calendar-specialist-heading{min-width:0;padding:4px 8px}.calendar-specialist-heading strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;overflow:hidden}.calendar-specialist-heading span{letter-spacing:0;text-transform:capitalize;margin-top:2px}.main-content--calendar .calendar-time-axis{background:#fbfcfa;padding:0;display:block}.main-content--calendar .calendar-time-axis time{position:absolute;right:9px;transform:translateY(-.45em)}.main-content--calendar .calendar-day-column{background:repeating-linear-gradient(#0000 0 21px,#f0f2ef 22px,#0000 23px 43px,#e4e8e4 44px)}.appointment-card-primary{justify-content:space-between;align-items:baseline;gap:5px;min-width:0;opacity:1!important;margin:0!important;display:flex!important}.main-content--calendar .appointment-card{padding:3px 5px}.appointment-card-primary strong,.appointment-card-primary time{min-width:0;margin:0}.appointment-card-primary strong{flex:1;font-size:.68rem}.appointment-card-primary time{flex:none;font-size:.59rem}.appointment-card-service{font-weight:700;margin-top:2px!important;font-size:.59rem!important}.appointment-card small{opacity:.72;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.52rem;display:none;overflow:hidden}.calendar-block-card{z-index:4;color:#25313d;text-align:left;cursor:pointer;background:repeating-linear-gradient(135deg,#eef1f4 0 7px,#e4e8ec 7px 14px);border:1px solid #64748b;border-left:5px solid #475569;border-radius:6px;flex-direction:column;gap:1px;min-height:30px;padding:3px 5px;display:flex;position:absolute;left:5px;right:5px;overflow:hidden}.calendar-block-card:hover,.calendar-block-card:focus-visible{z-index:8;box-shadow:0 8px 20px #1e293b2e}.calendar-block-card__kind{letter-spacing:.04em;text-transform:uppercase;font-size:.5rem;font-weight:900}.calendar-block-card strong,.calendar-block-card time{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-block-card strong{font-size:.63rem}.calendar-block-card time{font-size:.54rem}.calendar-block-dialog{width:min(620px,100vw - 32px)}.calendar-block-dialog>header>div>span{color:var(--muted);font-size:.65rem;font-weight:800}.calendar-block-form textarea{resize:vertical;min-height:88px}.calendar-block-details{gap:18px;display:grid}.calendar-block-hero{color:#344451;background:#f1f4f6;border:1px solid #dce2e6;border-radius:9px;align-items:center;gap:11px;padding:12px;display:flex}.calendar-block-hero>div{gap:3px;display:grid}.calendar-block-hero span,.calendar-block-details dt{color:#697781;font-size:.63rem;font-weight:800}.calendar-block-details dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.calendar-block-details dl>div{border-bottom:1px solid #edf0f2;gap:4px;padding-bottom:8px;display:grid}.calendar-block-details dd{color:#34433e;overflow-wrap:anywhere;margin:0;font-size:.76rem;font-weight:750}.calendar-block-separation{color:#5b6870;background:#f5f7f8;border-radius:7px;align-items:flex-start;gap:7px;margin:0;padding:8px 10px;font-size:.67rem;display:flex}.calendar-block-details footer{justify-content:flex-end;gap:8px;display:flex}.calendar-historical-appointments{color:#665839;background:#fffaf0;border:1px solid #e0d7c5;border-bottom:0;align-items:center;gap:10px;min-height:38px;padding:5px 9px;font-size:.64rem;display:flex}.calendar-historical-appointments>div{gap:7px;min-width:0;display:flex;overflow-x:auto}.calendar-historical-card{flex:0 0 210px;grid-template-columns:auto 1fr;gap:2px 7px;width:210px;min-height:32px;padding:4px 6px;display:grid;position:relative;left:auto;right:auto}.calendar-historical-card>span{grid-column:1/-1}.calendar-mutation-success{z-index:12;max-width:430px;margin:0;position:absolute;top:42px;right:8px;box-shadow:0 10px 30px #2b3a3524}.settings-static-preference{gap:7px;display:grid}.settings-static-preference>span{color:#47554f;font-size:.7rem;font-weight:800}.settings-static-preference>strong{color:#41534c;background:#f3f5f2;border:1px solid #d8ded9;border-radius:7px;align-items:center;min-height:44px;padding:9px 11px;font-size:.8rem;display:flex}.mutation-backdrop{overflow:hidden}.mutation-dialog{overscroll-behavior:contain;max-height:calc(100dvh - 32px)}.mutation-dialog>header{z-index:6;background:#fff;margin:-28px -28px 0;padding:22px 28px 16px;position:sticky;top:-28px}.mutation-form footer,.mutation-confirmation footer{z-index:5;background:#fff;margin:8px -28px -28px;padding:14px 28px 22px;position:sticky;bottom:-28px;box-shadow:0 -10px 24px #2b3a3512}.mutation-dialog--appointment-workspace{flex-direction:column;width:min(90vw,1400px);height:min(88dvh,920px);max-height:calc(100dvh - 32px);padding:0;display:flex;overflow:hidden}.mutation-dialog--appointment-workspace>header{flex:none;margin:0;padding:18px 22px 15px;position:static}.mutation-dialog--appointment-workspace>header h2{margin-top:4px;font-size:1.45rem}.mutation-dialog--appointment-workspace>.mutation-feedback{flex:none;margin:12px 20px 0}.appointment-workspace{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex;overflow:hidden}.appointment-workspace-body{flex:auto;grid-template-columns:minmax(220px,270px) minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.appointment-patient-mini{overscroll-behavior:contain;background:#f5f8f5;border-right:1px solid #e0e6e2;min-width:0;padding:22px 19px;overflow-y:auto}.appointment-patient-mini>header{align-items:center;gap:11px;display:flex}.appointment-patient-avatar{color:#fff;background:var(--pine);border-radius:50%;flex:none;place-items:center;width:46px;height:46px;display:grid}.appointment-patient-mini>header span,.appointment-patient-mini dt{color:var(--muted);font-size:.65rem;font-weight:800}.appointment-patient-mini h3{overflow-wrap:anywhere;margin:4px 0 0;font-size:1rem}.appointment-patient-mini>p{color:var(--muted);font-size:.72rem}.appointment-patient-mini dl{gap:14px;margin:24px 0;display:grid}.appointment-patient-mini dl>div,.appointment-patient-mini dt,.appointment-patient-mini nav,.appointment-patient-mini nav a{gap:5px;display:grid}.appointment-patient-mini dt{grid-template-columns:auto 1fr;align-items:center}.appointment-patient-mini dd{overflow-wrap:anywhere;margin:0;font-size:.78rem;font-weight:750}.appointment-patient-mini nav a{color:var(--pine);background:#fff;border:1px solid #cedbd5;border-radius:7px;grid-template-columns:1fr auto;align-items:center;padding:9px 10px;font-size:.7rem;font-weight:800}.appointment-workspace-main{overscroll-behavior:contain;background:#fbfcfa;align-content:start;gap:15px;min-width:0;padding:20px 22px 30px;display:grid;overflow:hidden auto}.appointment-workspace-hero{border-bottom:1px solid #e1e6e2;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:16px;display:flex}.appointment-workspace-hero>div,.appointment-workspace-time,.appointment-workspace-hero small{display:block}.appointment-workspace-time{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.7rem,3vw,2.5rem);font-weight:400}.appointment-workspace-hero strong{margin-top:4px;font-size:.84rem;display:block}.appointment-workspace-hero small{color:var(--muted);margin-top:5px;font-size:.66rem;font-weight:750}.appointment-workspace-status{color:#38544a;background:#e6eee9;border-radius:999px;flex:none;padding:7px 10px;font-size:.68rem;font-weight:850}.appointment-workspace-status--cancelled{color:#803d3d;background:#f7e6e4}.appointment-workspace-status--completed{color:#2f654c;background:#e1f1e8}.appointment-workspace-service,.appointment-checkout,.appointment-payment-history{background:#fff;border:1px solid #dce4df;border-radius:9px;padding:14px}.appointment-workspace-service>header,.appointment-finance>header{align-items:center;display:flex}.appointment-workspace-service>header{color:var(--pine);gap:8px}.appointment-workspace-service h3,.appointment-checkout h4,.appointment-payment-history h4{margin:0;font-size:.84rem}.appointment-workspace-service dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:14px 0 0;display:grid}.appointment-workspace-service dl>div{min-width:0}.appointment-workspace-service dt,.appointment-workspace-service dd{margin:0;display:block}.appointment-workspace-service dt{color:var(--muted);font-size:.64rem;font-weight:750}.appointment-workspace-service dd{overflow-wrap:anywhere;margin-top:4px;font-size:.75rem;font-weight:750}.appointment-finance{grid-column:auto}.appointment-finance-workspace{grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);gap:12px;margin-top:12px;display:grid}.appointment-finance-workspace .appointment-finance-summary{grid-column:1/-1;margin-top:0}.appointment-finance-success{color:#2f654c;background:#e4f2e9;border-radius:6px;align-items:center;gap:7px;margin-top:10px;padding:9px 10px;font-size:.72rem;font-weight:750;display:flex}.appointment-checkout form,.appointment-checkout label,.appointment-discount form,.appointment-discount label,.appointment-payment-history ul{gap:10px;display:grid}.appointment-checkout p,.appointment-payment-history p{color:var(--muted);margin:10px 0 0;font-size:.72rem}.appointment-checkout label span,.appointment-discount label span,.appointment-service-change label span{color:var(--muted);font-size:.65rem;font-weight:800}.appointment-checkout input,.appointment-checkout select,.appointment-discount input,.appointment-discount select,.appointment-service-change select{background:#fff;border:1px solid #ccd5cf;border-radius:7px;min-height:40px;padding:8px 10px}.appointment-discount,.appointment-service-change,.appointment-service-confirmation{background:#fbfcfa;border:1px solid #dce4df;border-radius:8px;gap:10px;padding:12px;display:grid}.appointment-discount header h4,.appointment-discount header p,.appointment-service-confirmation h4,.appointment-service-confirmation p{margin:0}.appointment-discount header p,.appointment-service-confirmation p,.patient-operational-debt>p{color:var(--muted);font-size:.68rem}.appointment-discount dl,.appointment-service-confirmation dl{gap:6px;margin:0;display:grid}.appointment-discount dl>div,.appointment-service-confirmation dl>div{justify-content:space-between;gap:12px;display:flex}.appointment-service-change{margin-top:12px}.appointment-service-change label{gap:6px;display:grid}.appointment-service-confirmation>div{justify-content:flex-end;gap:8px;display:flex}.time-dropdown{min-width:0;position:relative}.time-dropdown input{width:100%;padding-right:2.2rem}.time-dropdown>svg{color:var(--muted);pointer-events:none;position:absolute;top:50%;right:.72rem;transform:translateY(-50%)}.time-dropdown-list{z-index:1400;box-sizing:border-box;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:auto;scrollbar-color:#648574 #e6ede9;touch-action:pan-y;background:#fff;border:1px solid #b8c5bd;border-radius:10px;align-content:start;max-width:calc(100vw - 24px);padding:.32rem;display:grid;position:fixed;box-shadow:0 18px 45px #1a302438}.time-dropdown-list::-webkit-scrollbar{width:12px}.time-dropdown-list::-webkit-scrollbar-track{background:#e6ede9;border-radius:8px}.time-dropdown-list::-webkit-scrollbar-thumb{background:#648574;border:3px solid #e6ede9;border-radius:8px;min-height:36px}.time-dropdown-list [role=option]{min-height:36px;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:.42rem .65rem}.time-dropdown-list [role=option].is-active,.time-dropdown-list [role=option]:hover{background:#eaf2ed}.time-dropdown-list [role=option][aria-selected=true]{color:#174c34;background:#d9ebe1;font-weight:700}.analytics-route-error{min-height:260px;margin:0}.patient-acquisition-capability .patient-capability-note{color:#52645d;background:#f1f5f2;border-radius:8px;margin:.9rem 0 0;padding:.7rem .8rem;font-size:.86rem}.analytics-debt-drilldown-card{color:inherit;gap:.8rem;text-decoration:none;display:grid}.analytics-debt-drilldown-card>div{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;display:grid}.analytics-debt-drilldown-card article{border:1px solid #0000;min-height:96px;transition:border-color .14s,box-shadow .14s,transform .14s}.analytics-debt-drilldown-card:hover article,.analytics-debt-drilldown-card:focus-visible article{border-color:#77a58b;transform:translateY(-1px);box-shadow:0 10px 24px #23593d1f}.analytics-debt-drilldown-card:focus-visible{outline-offset:4px;border-radius:12px;outline:3px solid #3a7b5842}.analytics-debt-drilldown-action{color:#23613f;justify-self:end;align-items:center;gap:.2rem;font-weight:700;display:inline-flex}.analytics-row-action{color:#23613f;white-space:nowrap;font-weight:700}.analytics-contract-unavailable{max-width:16rem;color:var(--muted);font-size:.82rem;line-height:1.35}.analytics-contract-note{background:#f7faf8;border:1px solid #d7e2dc;border-radius:12px;gap:.35rem;margin-top:1rem;padding:.9rem 1rem;display:grid}.analytics-contract-note p{color:var(--muted);margin:0}.appointment-non-fiscal-notice,.appointment-checkout-paid{color:#67552d;align-items:center;gap:8px;display:flex}.appointment-non-fiscal-notice{background:#f7f1df;border-radius:6px;padding:8px 9px;font-size:.68rem}.appointment-checkout-paid p{margin:0}.appointment-payment-history ul{max-height:220px;margin:10px 0 0;padding:0;list-style:none;overflow-y:auto}.appointment-payment-history li{border-top:1px solid #e7ebe8;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;font-size:.69rem;display:flex}.appointment-payment-history li:first-child{border-top:0}.appointment-payment-history li strong,.appointment-payment-history li span,.appointment-payment-history li time{display:block}.appointment-payment-history li span,.appointment-payment-history li time{color:var(--muted);margin-top:3px}.appointment-payment-history a{color:var(--pine);flex:none;font-weight:800}.appointment-workspace-footer{background:#fff;border-top:1px solid #dfe5e1;flex:none;justify-content:flex-end;align-items:center;gap:9px;min-height:68px;padding:12px 20px;display:flex;box-shadow:0 -10px 24px #2b3a3512}.appointment-workspace-deep-link{color:var(--pine);margin-right:auto;font-size:.7rem;font-weight:800}@media (max-width:1180px){.main-content--calendar .calendar-controls{flex-wrap:wrap}.main-content--calendar .calendar-staff-filter{min-width:220px}.calendar-selected-specialist,.main-content--calendar .calendar-color-legend>small{display:none}}@media (max-width:1020px){.calendar-workspace-body{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);overflow:hidden}.calendar-sidebar{grid-template-columns:minmax(0,1fr) minmax(230px,310px);align-items:start;padding-right:0;display:grid;overflow:visible}.calendar-operations{scrollbar-width:thin;max-height:180px;overflow-y:auto}.mini-month-navigator{width:100%}.mini-month-compact-toggle{color:#40524b;cursor:pointer;background:#fff;border:1px solid #d8ded9;border-radius:7px;align-items:center;gap:7px;width:min(100%,310px);min-height:34px;padding:6px 9px;font-size:.68rem;font-weight:800;display:flex}.mini-month-compact-toggle span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mini-month-panel{width:min(270px,100vw - 36px);display:none;position:absolute;top:39px;left:0;box-shadow:0 18px 45px #17322c33}.mini-month-navigator.is-open .mini-month-panel{display:grid}}@media (max-width:820px){.mutation-dialog--appointment-workspace{width:calc(100vw - 24px);height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.appointment-workspace-body{flex-direction:column;display:flex;overflow-y:auto}.appointment-patient-mini{border-bottom:1px solid #e0e6e2;border-right:0;flex:none;padding:15px 17px;overflow:visible}.appointment-patient-mini dl{grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0}.appointment-patient-mini nav{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-workspace-main{flex:none;padding:16px;overflow:visible}.appointment-workspace-service dl,.appointment-finance-workspace{grid-template-columns:1fr 1fr}.appointment-checkout,.appointment-payment-history{min-width:0}.main-content--calendar{padding:12px}.main-content--calendar .calendar-heading{flex-direction:row;align-items:center;gap:10px}.calendar-title-block{display:block}.main-content--calendar .calendar-controls{align-items:stretch}.main-content--calendar .calendar-staff-filter{min-width:100%;margin-left:0}.main-content--calendar .calendar-color-legend{align-items:flex-start}.main-content--calendar .calendar-color-legend>strong{padding-top:2px}}@media (max-width:560px){.calendar-sidebar{grid-template-columns:minmax(0,1fr)}.calendar-operations{max-height:150px}.calendar-block-details dl{grid-template-columns:1fr}.mutation-dialog--appointment-workspace>header{margin:0;padding:15px 16px 12px}.appointment-workspace-service dl,.appointment-finance-workspace,.appointment-finance-summary,.appointment-patient-mini dl,.appointment-patient-mini nav{grid-template-columns:1fr}.appointment-workspace-hero,.appointment-workspace-footer{flex-direction:column;align-items:stretch}.appointment-workspace-footer{max-height:44dvh;overflow-y:auto}.appointment-workspace-deep-link{margin-right:0}.mutation-dialog>header{margin:-22px -18px 0;padding:18px 18px 14px;top:-22px}.mutation-form footer,.mutation-confirmation footer{margin:8px -18px -22px;padding:12px 18px 18px;bottom:-22px}}.finance-section-nav{scrollbar-width:thin;gap:.45rem;margin-bottom:1rem;padding:.35rem 0 1rem;display:flex;overflow-x:auto}.finance-section-nav a{color:var(--text-muted,#667085);border:1px solid var(--border,#dde2e8);background:#fff;border-radius:999px;flex:none;padding:.55rem .8rem;font-size:.86rem;font-weight:650;text-decoration:none}.finance-section-nav a.active{color:#fff;background:#173f3a;border-color:#173f3a}.finance-operations-grid,.analytics-page{gap:1rem;display:grid}.finance-operations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-operations-grid>.finance-card--wide,.finance-operations-grid>.finance-kpis,.finance-operations-grid>.finance-date-toolbar{grid-column:1/-1}.finance-date-toolbar,.analytics-toolbar,.finance-inline-form{flex-wrap:wrap;align-items:end;gap:.7rem;display:flex}.finance-date-toolbar{border:1px solid var(--border,#dde2e8);background:#fff;border-radius:14px;padding:.8rem}.finance-date-toolbar>button:not(.secondary-button){border-radius:10px;width:2.5rem;height:2.5rem}.finance-date-toolbar label,.analytics-toolbar label,.finance-form label,.finance-inline-form label,.appointment-status-correction label{color:#475467;gap:.35rem;font-size:.82rem;font-weight:650;display:grid}.finance-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.finance-kpis article{border:1px solid var(--border,#dde2e8);background:linear-gradient(145deg,#fff,#f6faf9);border-radius:14px;gap:.45rem;min-width:0;padding:1rem;display:grid}.finance-kpis span{color:#667085;font-size:.82rem}.finance-kpis strong{color:#173f3a;overflow-wrap:anywhere;font-size:clamp(1rem,1.5vw,1.35rem)}.appointment-patient-selector{gap:.4rem;display:grid}.appointment-create-patient{justify-self:start}.finance-daily-summary-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.finance-daily-summary-groups>section{background:#fbfcfc;border:1px solid #e4e7ec;border-radius:12px;min-width:0;padding:.85rem}.finance-daily-summary-groups h3{margin:0 0 .55rem;font-size:.9rem}.finance-daily-summary-groups dl{margin:0}.finance-daily-summary-groups dl>div,.finance-account-breakdown dl>div{justify-content:space-between;gap:1rem;padding:.3rem 0;display:flex}.finance-daily-summary-total{grid-column:span 2;background:#eef7f5!important}.finance-daily-summary-total dl>div:last-child{border-top:1px solid #bfd7d1;padding-top:.55rem;font-weight:750}.finance-account-breakdown{margin-top:.9rem}.finance-account-breakdown summary,.finance-created-invoices>summary{cursor:pointer;color:#173f3a;font-weight:720}.finance-created-invoices>summary{justify-content:space-between;gap:1rem;display:flex}.finance-created-invoices[open]>summary{margin-bottom:.9rem}.finance-table tfoot th{color:#173f3a;background:#eef7f5;border-top:2px solid #cbd5d1}.finance-breakdown-grid,.cash-close-summary,.finance-daily-filters{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.75rem;display:grid}.finance-breakdown-grid dl,.cash-close-summary{margin:0}.finance-breakdown-grid dl>div,.cash-close-summary>div{justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}.finance-daily-filters{margin-bottom:.85rem}.finance-daily-filters label{color:#475467;gap:.3rem;font-size:.8rem;font-weight:650;display:grid}.finance-table-edit{align-items:center;gap:.45rem;display:flex}.finance-table-edit input{min-width:10rem}.finance-detail-inline-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.finance-confirmation{background:#fff7ed;border:1px solid #f4c790;border-radius:10px;padding:.75rem}.finance-form{gap:.8rem;display:grid}.finance-form--grid{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-form__wide{grid-column:1/-1}.finance-form textarea,.finance-inline-form textarea,.appointment-status-correction textarea{resize:vertical;min-height:5.5rem}.finance-operation-card{border-bottom:1px solid var(--border,#e4e7ec);grid-template-columns:minmax(12rem,1fr) auto;gap:.75rem;padding:.8rem 0;display:grid}.finance-operation-card>div:first-child{gap:.2rem;display:grid}.finance-operation-card form{flex-wrap:wrap;grid-column:1/-1;align-items:end;gap:.6rem;display:flex}.finance-patient-results,.finance-category-list,.finance-operation-list{gap:.5rem;margin:.8rem 0 0;padding:0;list-style:none;display:grid}.finance-patient-results button{text-align:left;justify-content:space-between;gap:1rem;width:100%;padding:.7rem;display:flex}.finance-category-list li,.finance-operation-list li{background:#f8fafb;border-radius:10px;justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem;display:flex}.finance-category-list li>div{gap:.15rem;display:grid}.finance-category-list li span,.finance-operation-list time{color:#667085;font-size:.8rem}.finance-deferred{color:#9a3412;background:#fff7ed;border-radius:10px;padding:.7rem}.patient-balance-card__amount{color:#173f3a;margin:.4rem 0;font-size:1.65rem;display:block}.patient-card-grid--finance{margin-top:1rem}.analytics-toolbar{border:1px solid var(--border,#dde2e8);background:#fff;border-radius:14px;padding:.85rem}.analytics-period-summary{color:#173f3a;background:#eef7f5;border-radius:12px;justify-content:space-between;gap:1rem;padding:.75rem 1rem;display:flex}.analytics-kpi-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.analytics-kpi-summary>section{border:1px solid var(--border,#dde2e8);background:#fff;border-radius:12px;padding:.9rem}.analytics-kpi-summary h2{color:#344054;margin:0 0 .5rem;font-size:.92rem}.analytics-kpi-summary section>div{justify-content:space-between;gap:.75rem;padding:.3rem 0;display:flex}.analytics-kpi-summary span{color:#667085;font-size:.8rem}.analytics-kpi-summary strong{color:#173f3a;text-align:right}.analytics-statement{border:1px solid var(--border,#dde2e8);background:#fff;border-radius:14px;padding:1rem}.analytics-statement>header{border-bottom:2px solid #173f3a;margin-bottom:.8rem}.analytics-statement--expense>header{border-bottom-color:#b42318}.analytics-statement>header>span{letter-spacing:.08em;color:#667085;font-size:.72rem;font-weight:800}.analytics-statement>header h2{margin:.2rem 0 .7rem}.analytics-statement details{border-bottom:1px solid #e4e7ec}.analytics-statement details>summary{cursor:pointer;color:#344054;padding:.65rem 0;font-weight:700}.analytics-statement ul{margin:0;padding:0 0 .5rem 1rem;list-style:none}.analytics-statement li{justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}.analytics-statement--expense li strong{color:#b42318}.analytics-statement-total,.analytics-statement-grand-total{justify-content:space-between;gap:1rem;padding:.55rem 0;font-weight:750;display:flex}.analytics-statement-total{border-top:1px dashed #cbd5d1;margin-left:1rem}.analytics-statement-grand-total{border-top:2px solid #344054;margin-top:.7rem;font-size:1.05rem}.analytics-result{background:#fff;border:2px solid #344054;border-radius:14px;padding:1.1rem}.analytics-result>span{letter-spacing:.08em;color:#667085;font-size:.72rem;font-weight:800}.analytics-result h2{margin:.3rem 0;font-size:1.05rem}.analytics-result>strong{margin:.4rem 0;font-size:clamp(1.5rem,3vw,2.3rem);display:block}.analytics-result--negative{border-color:#b42318}.analytics-result--negative>strong,.analytics-result--negative p{color:#b42318}.analytics-result--positive>strong{color:#173f3a}.analytics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.analytics-breakdown{border:1px solid var(--border,#dde2e8);background:#fff;border-radius:14px;padding:1rem}.analytics-breakdown section+section{margin-top:1rem}.analytics-breakdown h3{color:#475467;font-size:.9rem}.analytics-breakdown ul{gap:.4rem;margin:.5rem 0;padding:0;list-style:none;display:grid}.analytics-breakdown li{border-bottom:1px solid #f0f2f4;justify-content:space-between;gap:1rem;padding:.35rem 0;display:flex}.analytics-drilldown{background:#f8fafb;border-radius:8px;margin-top:1rem;padding:.65rem}.analytics-policy{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}.analytics-policy div{grid-template-columns:minmax(8rem,.6fr) 1fr;gap:.5rem;display:grid}.analytics-policy dt{color:#667085}.appointment-dialog.patient-dialog{flex-direction:column;width:min(100%,860px);height:min(92dvh,860px);max-height:calc(100dvh - 32px);display:flex;overflow:hidden}.patient-dialog .appointment-dialog__header{flex:none}.patient-dialog .patient-form{flex:1;grid-template-rows:minmax(0,1fr) auto auto auto;min-height:0;overflow:hidden}.patient-form__body{align-content:start;gap:1rem;min-height:0;padding:0 .2rem .5rem 0;display:grid;overflow-y:auto}.patient-form-section{background:#fbfcfb;border:1px solid #dce4df;border-radius:12px;min-width:0;margin:0;padding:1rem}.patient-form-section legend{color:#173f3a;padding:0 .45rem;font-size:.83rem;font-weight:850}.patient-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;display:grid}.patient-form-grid>label{color:#47554f;gap:.4rem;font-size:.72rem;font-weight:800;display:grid}.patient-form-grid__wide{grid-column:1/-1}.patient-form textarea{resize:vertical;width:100%;min-height:78px;color:var(--ink);font:inherit;background:#fff;border:1px solid #cbd5cf;border-radius:7px;padding:9px 11px}.patient-dialog .appointment-dialog__actions{z-index:2;background:#fff;flex:none;margin-top:0;position:sticky;bottom:0}.appointment-patient-selector{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:.65rem}.appointment-patient-selector>label{gap:.35rem;display:grid}.appointment-create-patient,.patient-search-empty-action{justify-self:stretch;min-height:42px}.appointment-create-patient{color:#fff;width:100%;min-height:48px;font:inherit;cursor:pointer;background:#245d4c;border:2px solid #174d3f;border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;padding:.75rem 1rem;font-size:.88rem;font-weight:850;display:inline-flex;box-shadow:0 8px 18px #174d3f29}.appointment-create-patient:hover{background:#174d3f}.appointment-create-patient:focus-visible{outline-offset:2px;outline:3px solid #245d4c40}.appointment-created-patient{color:#174d3f;background:#eef7f3;border-radius:9px;grid-column:1/-1;gap:.2rem;padding:.7rem .85rem;display:grid}.appointment-created-patient span{color:#536b63;font-size:.78rem}.patient-search-empty-action{color:#174d3f;text-align:left;cursor:pointer;background:#eef7f3;border:1px dashed #86a99c;border-radius:9px;grid-column:1/-1;padding:.7rem .9rem;font-weight:800}.patient-profile-header{box-shadow:var(--shadow-soft);z-index:12;background:#fff;border:1px solid #dce4df;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:1.1rem;padding:1.25rem;display:grid;position:sticky;top:.5rem}.patient-profile-avatar{color:#fff;background:#396d5b;border-radius:50%;place-items:center;width:62px;height:62px;font-size:1.05rem;font-weight:900;display:grid}.patient-profile-title-row{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.patient-profile-title-row h1{font-family:var(--font-display);margin:.15rem 0}.patient-status{color:#23634f;background:#e8f4ef;border-radius:999px;padding:.25rem .55rem;font-size:.68rem;font-weight:850}.patient-status--inactive{color:#73593f;background:#f3eee8}.patient-profile-facts{grid-template-columns:repeat(5,minmax(105px,1fr));gap:.65rem;margin:.75rem 0 0;display:grid}.patient-profile-facts div{min-width:0}.patient-profile-facts dt{color:var(--muted);font-size:.65rem}.patient-profile-facts dd{overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.74rem;font-weight:750}.patient-card-tabs,.analytics-section-nav{border-bottom:1px solid #dce4df;gap:.35rem;padding:0 .2rem;display:flex;overflow-x:auto}.patient-card-tabs button,.analytics-section-nav a{color:#667085;white-space:nowrap;background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:.4rem;min-height:42px;padding:.55rem .7rem;font-size:.73rem;font-weight:800;text-decoration:none;display:inline-flex}.patient-card-tabs button[aria-selected=true],.analytics-section-nav a.active{color:#174d3f;border-bottom-color:#286d58}.patient-card-tabs button:disabled{opacity:.48;cursor:not-allowed}.patient-card-tab-panel{min-width:0}.patient-card-layout{grid-template-columns:minmax(0,1.55fr) minmax(270px,.75fr);align-items:start;gap:1rem;display:grid}.patient-card-main-column,.patient-card-summary-column{gap:1rem;display:grid}.patient-info-card--wide,.patient-summary-card,.patient-card-summary-column .patient-balance-card{min-height:0}.patient-identification{background:#fff;border:1px solid #dce4df;border-radius:11px;padding:.8rem 1rem}.patient-identification summary{color:#475467;cursor:pointer;font-size:.72rem;font-weight:800}.patient-identification dl{gap:.55rem;margin:.8rem 0 0;display:grid}.patient-identification dl>div{gap:.15rem;display:grid}.patient-identification dt{color:var(--muted);font-size:.64rem}.patient-identification dd{overflow-wrap:anywhere;margin:0;font-size:.72rem}.patient-capability-state,.analytics-capability-note{color:#52625b;background:#f8faf9;border:1px solid #dce4df;border-radius:10px;margin:1rem 0 0;padding:.8rem 1rem;font-size:.75rem}.patient-finance-panel{gap:1rem;display:grid}.patient-finance-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.patient-finance-summary article{background:#fff;border:1px solid #dce4df;border-radius:12px;grid-template-columns:auto 1fr;gap:.25rem .55rem;padding:.9rem;display:grid}.patient-finance-summary svg{color:#396d5b;grid-row:1/4}.patient-finance-summary span,.patient-finance-summary small{color:var(--muted);font-size:.68rem}.patient-finance-summary strong{color:#173f3a;font-size:1.15rem}.patient-finance-section{background:#fff;border:1px solid #dce4df;border-radius:12px;padding:1rem}.patient-finance-section>header{justify-content:space-between;gap:1rem;margin-bottom:.8rem;display:flex}.patient-finance-section h3,.patient-finance-section p{margin:0}.patient-finance-section header p{color:var(--muted);font-size:.7rem}.patient-finance-section header a{color:#286d58;font-size:.72rem;font-weight:800}.patient-finance-table-wrap{overflow-x:auto}.patient-finance-table-wrap table{border-collapse:collapse;width:100%;font-size:.72rem}.patient-finance-table-wrap th,.patient-finance-table-wrap td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf0ee;padding:.55rem}.patient-finance-empty{color:var(--muted);text-align:center;padding:1rem}.patient-balance-operations{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.patient-balance-operations li{border-bottom:1px solid #edf0ee;grid-template-columns:1fr auto auto;gap:.7rem;padding:.5rem 0;display:grid}.patient-balance-operations small{color:var(--muted)}.patient-tab-state{border:1px dashed #ccd6cf;border-radius:12px;justify-content:center;align-items:center;gap:.7rem;min-height:180px;padding:1rem;display:flex}.patient-tab-state--error{color:#974b45;background:#fff9f8}.analytics-module{gap:1rem;display:grid}.analytics-section-nav{background:#fff;border:1px solid #dce4df;border-radius:12px;padding:.2rem .5rem 0}.analytics-module-content,.analytics-overview,.analytics-capability-page{gap:1rem;display:grid}.analytics-section-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.analytics-section-heading h2{font-family:var(--font-display);margin:.2rem 0}.analytics-section-heading p{color:var(--muted);margin:0}.analytics-section-heading>svg{color:#396d5b}.analytics-overview-kpis{background:#fff;border:1px solid #dce4df;border-radius:14px;padding:1rem}.analytics-overview-kpis h3{margin:0 0 .75rem}.analytics-overview-kpis>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.analytics-overview-kpis article{background:#f7faf8;border-radius:10px;gap:.25rem;padding:.8rem;display:grid}.analytics-overview-kpis span{color:var(--muted);font-size:.7rem}.analytics-overview-kpis strong{color:#173f3a;overflow-wrap:anywhere;font-size:1.05rem}.analytics-capability-state{color:#52625b;text-align:left;background:#f8faf9;border:1px dashed #bfcfc7;border-radius:14px;justify-content:center;align-items:center;gap:1rem;min-height:180px;padding:1.5rem;display:flex}.analytics-capability-state h3,.analytics-capability-state p{margin:0 0 .35rem}.analytics-capability-state small{max-width:720px;line-height:1.55;display:block}.appointment-status-correction{border-top:1px solid var(--border,#dde2e8);margin-top:.8rem;padding-top:.8rem}.appointment-status-correction form{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin-top:.7rem;display:grid}.appointment-status-correction form>p{grid-column:1/-1}@media (max-width:1050px){.finance-operations-grid,.analytics-grid{grid-template-columns:1fr}.finance-operations-grid>*{grid-column:1}.finance-kpis,.finance-daily-summary-groups,.analytics-kpi-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-profile-facts{grid-template-columns:repeat(3,minmax(110px,1fr))}.patient-card-layout{grid-template-columns:1fr}.analytics-overview-kpis>div,.finance-form--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.finance-kpis,.finance-form--grid,.appointment-status-correction form,.analytics-policy,.finance-daily-summary-groups,.analytics-kpi-summary,.patient-form-grid,.patient-finance-summary,.analytics-overview-kpis>div{grid-template-columns:1fr}.patient-profile-header{grid-template-columns:auto minmax(0,1fr)}.patient-profile-edit{grid-column:1/-1;justify-self:start}.patient-profile-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.appointment-patient-selector{grid-template-columns:1fr}.finance-daily-summary-total{grid-column:auto}.finance-category-list li,.finance-operation-list li,.analytics-period-summary{flex-direction:column;align-items:flex-start}}.patient-acquisition-block{min-height:0}.patient-acquisition-selector{grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:.55rem;margin-bottom:1rem;display:grid}.patient-acquisition-selector label,.patient-acquisition-correction label,.acquisition-source-form label,.acquisition-drilldown label{color:var(--muted);gap:.3rem;font-size:.69rem;font-weight:750;display:grid}.workspace-feedback,.workspace-reset-explanation,.dashboard-evaluating{color:#285d4d;background:#f1f8f5;border:1px solid #cfe0d8;border-radius:10px;padding:.7rem .9rem;font-size:.75rem}.workspace-editor-toolbar,.dashboard-actions,.analytics-heading-actions,.workspace-default-target,.workspace-widget-dialog>header,.workspace-widget-dialog>footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.workspace-editor-toolbar{background:#edf7f3;border:1px solid #9fc4b6;border-radius:12px;padding:.85rem 1rem}.workspace-editor-toolbar>div{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.workspace-editor-toolbar>div:first-child{gap:.2rem;display:grid}.workspace-editor-toolbar span{color:var(--muted);font-size:.7rem}.patient-layout-workspace,.dashboard-workspace,.workspace-default-settings{gap:1rem;min-width:0;display:grid}.patient-layout-grid{grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);align-items:start;gap:1rem;min-width:0;display:grid}.patient-layout-block{border-radius:13px;grid-column:1;min-width:0}.patient-layout-block--sidebar{grid-column:2}.patient-layout-block--full{grid-column:1/-1}.patient-layout-workspace.is-editing .patient-layout-block{-webkit-user-select:none;user-select:none;background:#f7fbf9;border:2px dashed #9bbcaf;padding:.45rem}.patient-layout-block.is-hidden{opacity:.72}.patient-layout-block.is-drop-target,.dashboard-widget.is-drop-target{outline-offset:3px;outline:3px solid #2f7a62}.patient-layout-block>.patient-info-card,.patient-layout-block>.patient-acquisition-block,.patient-layout-block>.patient-operational-summary,.patient-layout-block>.patient-balance-card{height:100%;margin:0}.patient-layout-controls{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.25rem .25rem .55rem;display:grid}.patient-layout-controls>span{color:var(--muted);font-size:.65rem}.patient-layout-controls>div{flex-wrap:wrap;grid-column:1/-1;gap:.25rem;display:flex}.patient-layout-controls button,.dashboard-widget-controls button{color:#245a48;cursor:pointer;background:#fff;border:1px solid #c9d8d1;border-radius:7px;place-items:center;min-width:32px;min-height:30px;display:inline-grid}.patient-layout-controls button:focus-visible,.dashboard-widget-controls button:focus-visible{outline-offset:2px;outline:3px solid #ffb84d}.patient-layout-handle{cursor:grab!important}.patient-layout-placeholder,.patient-layout-collapsed{color:var(--muted);background:#eef2f0;border-radius:9px;padding:1rem;font-size:.73rem}.patient-layout-collapsed{color:#244f42;gap:.25rem;display:grid}.dashboard-actions{justify-content:flex-end}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;min-width:0;display:grid}.dashboard-widget{min-width:0;min-height:150px;box-shadow:var(--shadow-soft);background:#fff;border:1px solid #d7e1dc;border-radius:14px;grid-column:span 1;align-content:start;gap:.45rem;padding:1rem;display:grid}.dashboard-workspace.is-editing .dashboard-widget{-webkit-user-select:none;user-select:none;border:2px dashed #9bbcaf}.dashboard-widget--span-2{grid-column:span 2}.dashboard-widget--span-3{grid-column:span 3}.dashboard-widget--span-4{grid-column:1/-1}.dashboard-widget.is-hidden{opacity:.68}.dashboard-widget h3{margin:0;font-size:.93rem}.dashboard-widget-value{color:#174d3f;overflow-wrap:anywhere;font-size:1.55rem}.dashboard-widget-comparison{color:var(--muted);font-size:.7rem}.dashboard-widget-controls{flex-wrap:wrap;gap:.25rem;margin-bottom:.25rem;display:flex}.dashboard-widget-error{color:#87534d;background:#fff2f0;border-radius:9px;gap:.3rem;padding:.7rem;display:grid}.dashboard-widget-error span{font-size:.68rem}.dashboard-empty{text-align:center;border:1px dashed #b7cac1;border-radius:14px;grid-column:1/-1;padding:2rem}.dashboard-evaluating{align-items:center;gap:.55rem;display:flex}.workspace-widget-dialog{background:#fff;border-radius:16px;width:min(760px,100vw - 2rem);max-height:calc(100vh - 2rem);padding:1rem;overflow:auto;box-shadow:0 24px 80px #14322847}.workspace-widget-dialog>header{border-bottom:1px solid #e1e8e4;padding-bottom:.75rem}.workspace-widget-dialog>header h2{margin:.15rem 0 0}.workspace-widget-dialog>header>button{background:#eef4f1;border:0;border-radius:8px;padding:.45rem}.workspace-widget-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;padding:1rem 0;display:grid}.workspace-widget-form label,.workspace-default-target label{color:var(--muted);gap:.3rem;font-size:.7rem;font-weight:750;display:grid}.workspace-widget-form select,.workspace-widget-form input,.workspace-default-target select{background:#fff;border:1px solid #cfdad5;border-radius:8px;min-height:40px;padding:.5rem .65rem}.workspace-widget-dialog>footer{border-top:1px solid #e1e8e4;justify-content:flex-end;padding-top:.75rem}.workspace-default-target{background:#fff;border:1px solid #dce5e1;border-radius:12px;padding:1rem}.workspace-default-target label{min-width:260px}.workspace-default-target dl{flex-wrap:wrap;gap:.8rem;margin:0;display:flex}.workspace-default-target dl>div{gap:.15rem;display:grid}.workspace-default-target dt{color:var(--muted);font-size:.65rem}.workspace-default-target dd{margin:0;font-weight:800}.workspace-default-preview-block{background:#fff;border:1px solid #dbe4df;border-radius:10px;min-height:100px;padding:1rem}.workspace-default-preview-block h3,.workspace-default-preview-block p{margin:0 0 .35rem}.analytics-heading-actions{justify-content:flex-end}.add-to-overview-button{white-space:nowrap}@media (max-width:1050px){.patient-layout-grid{grid-template-columns:1fr}.patient-layout-block,.patient-layout-block--sidebar,.patient-layout-block--full{grid-column:1}.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-widget--span-3,.dashboard-widget--span-4{grid-column:1/-1}}@media (max-width:680px){.patient-profile-header{position:relative;top:auto}.dashboard-grid,.workspace-widget-form{grid-template-columns:1fr}.dashboard-widget,.dashboard-widget--span-2,.dashboard-widget--span-3,.dashboard-widget--span-4{grid-column:1}.workspace-editor-toolbar,.workspace-default-target{flex-direction:column;align-items:stretch}}.patient-acquisition-selector select,.patient-acquisition-correction input,.acquisition-source-form input,.acquisition-source-form textarea,.acquisition-settings-toolbar input,.acquisition-drilldown select{width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #cfdad4;border-radius:9px;padding:.62rem .7rem}.acquisition-plus-button{color:#315f4e;cursor:pointer;background:#edf6f1;border:1px solid #79a08f;border-radius:9px;place-items:center;width:40px;height:40px;display:grid}.acquisition-plus-button:disabled{cursor:not-allowed;opacity:.55}.patient-acquisition-correction{background:#fff9ec;border:1px solid #e7c98f;border-radius:10px;gap:.6rem;margin:0 0 1rem;padding:.75rem;display:grid}.patient-acquisition-correction p{color:#70521e;margin:0;font-size:.78rem;font-weight:700}.patient-acquisition-actions{flex-wrap:wrap;gap:.7rem;margin-top:1rem;display:flex}.patient-acquisition-history{border-top:1px solid #e4eae7;margin-top:1rem;padding-top:.8rem}.patient-acquisition-history ol{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.patient-acquisition-history li{background:#f7faf8;border-left:3px solid #87aa99;gap:.2rem;padding:.55rem .65rem;display:grid}.patient-acquisition-history li>div{justify-content:space-between;gap:.6rem;display:flex}.patient-acquisition-history time,.patient-acquisition-history small{color:var(--muted);font-size:.66rem}.patient-acquisition-history p{margin:0;font-size:.75rem}.acquisition-source-dialog{width:min(100%,560px)}.acquisition-source-form{gap:.85rem;padding:1rem 0;display:grid}.acquisition-source-form>svg{color:#396d5b}.dialog-back-button{color:#396d5b;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;margin:0 0 .55rem;padding:0;font-weight:800;display:inline-flex}.acquisition-settings-page,.acquisition-source-list,.acquisition-analytics-page,.acquisition-drilldown{gap:1rem;display:grid}.acquisition-settings-toolbar{justify-content:space-between;align-items:center;gap:.8rem;display:flex}.acquisition-settings-toolbar label{width:min(520px,100%)}.acquisition-source-list{grid-template-columns:repeat(2,minmax(0,1fr))}.acquisition-source-list>article{box-shadow:var(--shadow-soft);background:#fff;border:1px solid #dce4df;border-radius:12px;align-content:start;gap:.65rem;padding:.9rem;display:grid}.acquisition-source-list>article.is-inactive{background:#f7f8f7}.acquisition-source-list header>div,.acquisition-source-list footer{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.acquisition-source-list h2,.acquisition-source-list p{margin:0}.acquisition-source-list h2{font-size:.9rem}.acquisition-source-list header small,.acquisition-source-list p{color:var(--muted);font-size:.72rem}.acquisition-analytics-table,.acquisition-drilldown-table{min-width:1040px}.acquisition-drilldown{background:#fff;border:1px solid #dce4df;border-radius:12px;padding:1rem}.acquisition-drilldown>header{justify-content:space-between;align-items:end;gap:1rem;display:flex}.acquisition-drilldown h3{margin:0}.acquisition-drilldown label{min-width:220px}@media (max-width:820px){.patient-acquisition-selector,.acquisition-source-list{grid-template-columns:1fr}.acquisition-plus-button{width:100%}.acquisition-settings-toolbar,.acquisition-drilldown>header{flex-direction:column;align-items:stretch}.acquisition-drilldown label{min-width:0}}.settings-staff-entry,.r34-settings-page,.payroll-page,.payroll-analytics-page{gap:1rem;display:grid}.settings-staff-entry{background:#fff;border:1px solid #dce4df;border-radius:14px;padding:1rem}.settings-staff-entry>header,.settings-staff-entry>div,.settings-staff-entry a,.staff-settings-nav,.r34-toolbar,.r34-card-grid article>header,.r34-card-grid article>footer,.r34-dialog>header,.r34-dialog>footer,.weekly-day>header,.weekly-interval,.rule-editor section>header{align-items:center;gap:.7rem;display:flex}.settings-staff-entry h2,.settings-staff-entry p,.settings-staff-entry strong,.settings-staff-entry small{margin:0}.settings-staff-entry>div{flex-wrap:wrap}.settings-staff-entry a{min-width:250px;color:inherit;border:1px solid #dce4df;border-radius:10px;flex:1;padding:.8rem;text-decoration:none}.settings-staff-entry a:hover{background:#f7faf8;border-color:#78a995}.settings-staff-entry a span{gap:.15rem;display:grid}.settings-staff-entry small{color:var(--muted)}.settings-hub,.settings-dedicated-page{width:min(1180px,100%);margin:0 auto}.settings-hub{gap:1.25rem;display:grid}.settings-hub-search{width:min(620px,100%);color:var(--muted);background:#fff;border:1px solid #d6e1dc;border-radius:12px;align-items:center;gap:.7rem;padding:.7rem .9rem;display:flex}.settings-hub-search:focus-within{border-color:#78a995;box-shadow:0 0 0 3px #78a99524}.settings-hub-search input{width:100%;color:var(--ink);font:inherit;background:0 0;border:0;outline:0}.settings-hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.settings-category-card{background:#fff;border:1px solid #dce4df;border-radius:14px;overflow:hidden;box-shadow:0 9px 28px #22483b0d}.settings-category-card>header{border-bottom:1px solid #edf1ef;align-items:flex-start;gap:.75rem;padding:1rem 1rem .85rem;display:flex}.settings-category-card>header>span{color:#396d5b;background:#edf6f1;border-radius:10px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.settings-category-card h2,.settings-category-card p,.settings-category-card ul{margin:0}.settings-category-card h2{color:var(--ink);font-size:1rem}.settings-category-card header p{color:var(--muted);margin-top:.2rem;font-size:.78rem;line-height:1.45}.settings-category-card ul{padding:.35rem;list-style:none}.settings-category-card li+li{border-top:1px solid #f0f3f2}.settings-category-card a{color:var(--ink);border-radius:9px;justify-content:space-between;align-items:center;gap:.8rem;padding:.72rem .68rem;text-decoration:none;display:flex}.settings-category-card a:hover,.settings-category-card a:focus-visible{background:#f5f9f7}.settings-category-card a>span{gap:.15rem;display:grid}.settings-category-card strong{font-size:.86rem}.settings-category-card small{color:var(--muted);font-size:.71rem;line-height:1.35}.settings-category-card a>svg{color:#6d8b80;flex:none}.settings-hub-empty,.settings-hub--state,.settings-capability-state,.settings-unavailable-state{justify-items:start;gap:.65rem;display:grid}.settings-hub-empty,.settings-unavailable-state{background:#f9fbfa;border:1px dashed #cbd9d2;border-radius:12px;padding:1rem}.settings-hub-empty h2,.settings-hub-empty p,.settings-capability-state h1,.settings-capability-state p{margin:0}.settings-hub-access-state{color:var(--muted);margin:0;font-size:.78rem}.settings-dedicated-page>.back-link{margin-bottom:1rem}.settings-dedicated-page .settings-grid{grid-template-columns:1fr}.settings-capability-state{align-content:start}.settings-capability-state>svg:not(.back-link svg){color:#507d6d}.settings-unavailable-state span{color:var(--muted)}@media (max-width:820px){.settings-hub-grid{grid-template-columns:1fr}}.staff-settings-nav{border-bottom:1px solid #dce4df;flex-wrap:wrap;padding-bottom:.6rem}.staff-settings-nav a{color:#315d50;background:#eef5f1;border-radius:999px;padding:.45rem .8rem;font-size:.75rem;font-weight:800;text-decoration:none}.r34-settings-page>.page-heading>svg{color:#396d5b}.r34-toolbar{justify-content:space-between}.r34-toolbar>div{gap:.2rem;display:grid}.r34-toolbar span{color:var(--muted);font-size:.7rem}.r34-state,.r34-empty{color:#52625b;text-align:center;background:#f8faf9;border:1px dashed #c8d4cd;border-radius:14px;justify-content:center;align-items:center;gap:.7rem;min-height:170px;padding:1.2rem;display:flex}.r34-state{flex-direction:column}.r34-state--forbidden,.r34-form-error{color:#8e453f;background:#fff8f7}.r34-empty{flex-direction:column}.r34-empty h3,.r34-empty p{margin:0}.r34-card-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:.8rem;display:grid}.r34-card-grid article{background:#fff;border:1px solid #dce4df;border-radius:14px;gap:.75rem;padding:1rem;display:grid}.r34-card-grid article.is-inactive{opacity:.68}.r34-card-grid article>header{justify-content:space-between;align-items:flex-start}.r34-card-grid article>header>div{gap:.3rem;display:grid}.r34-card-grid h3,.r34-card-grid p{margin:0}.r34-card-grid p{color:var(--muted);font-size:.72rem}.r34-card-grid dl{gap:.4rem;margin:0;display:grid}.r34-card-grid dl>div{border-bottom:1px solid #edf1ef;justify-content:space-between;gap:.7rem;padding-bottom:.35rem;display:flex}.r34-card-grid dt{color:var(--muted);font-size:.66rem}.r34-card-grid dd{text-align:right;overflow-wrap:anywhere;margin:0;font-size:.7rem}.r34-card-grid article>footer{justify-content:flex-end;margin-top:auto}.status-pill{color:#6f5e45;background:#f5eee2;border-radius:999px;width:-moz-fit-content;width:fit-content;padding:.25rem .55rem;font-size:.65rem;font-weight:800}.status-pill.active{color:#23624e;background:#e8f4ee}.plan-rule-summary{flex-wrap:wrap;gap:.3rem;display:flex}.plan-rule-summary span{color:#315d50;background:#eef5f1;border-radius:999px;padding:.2rem .45rem;font-size:.65rem}.r34-dialog-backdrop{z-index:1200;background:#101f1a8c;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.r34-dialog{background:#fff;border-radius:16px;gap:1rem;width:min(620px,100%);max-height:calc(100vh - 2rem);padding:1.1rem;display:grid;overflow:auto;box-shadow:0 22px 70px #0000003d}.r34-dialog--wide{width:min(1050px,100%)}.r34-dialog>header,.r34-dialog>footer{justify-content:space-between}.r34-dialog h2{margin:.2rem 0 0}.r34-dialog-heading{align-items:center;gap:.9rem;min-width:0;display:flex}.r34-dialog-back{color:#286d58;font:inherit;cursor:pointer;background:0 0;border:0;border-right:1px solid #dce4df;flex:none;align-items:center;gap:.35rem;padding:.55rem .9rem .55rem 0;font-size:.72rem;font-weight:850;display:inline-flex}.r34-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.r34-form-grid label{color:#52625b;gap:.3rem;font-size:.68rem;font-weight:700;display:grid}.r34-form-grid label.wide{grid-column:1/-1}.r34-form-grid input,.r34-form-grid select,.weekly-interval input{color:#173f3a;background:#fff;border:1px solid #cbd7d1;border-radius:8px;min-width:0;padding:.55rem .65rem}.r34-form-grid .check-label{align-items:center;display:flex}.r34-form-grid .check-label input{width:auto}.r34-form-error{border:1px solid #eccbc8;border-radius:9px;margin:0;padding:.7rem;font-size:.72rem}.r34-field-error{color:#8e453f;margin:0;font-size:.66rem;font-weight:750}.r34-field-error.wide{border:1px solid #eccbc8;border-radius:8px;grid-column:1/-1;padding:.55rem}.r34-contract-note{color:var(--muted);margin:0;font-size:.68rem}.weekly-editor,.rule-editor{gap:.6rem;display:grid}.weekly-day,.rule-editor section{border:1px solid #dce4df;border-radius:10px;padding:.7rem}.weekly-day>header,.rule-editor section>header{justify-content:space-between}.weekly-day>header label{color:var(--muted);align-items:center;gap:.35rem;font-size:.67rem;display:flex}.weekly-day>header span{color:var(--muted);font-size:.67rem}.weekly-interval{margin-top:.5rem}.weekly-interval input{max-width:130px}.weekly-day>.text-button{margin-top:.45rem}.rule-editor section>.r34-form-grid{margin-top:.7rem}.weekly-day-selectors{margin-bottom:.1rem}.weekly-day-off{color:var(--muted);margin:.65rem 0 0;font-size:.7rem}.weekly-copy-actions{flex-wrap:wrap;gap:.5rem;display:flex}.weekly-targets{border:1px solid #dce4df;border-radius:10px;flex-wrap:wrap;align-items:center;gap:.45rem .8rem;padding:.7rem;display:flex}.weekly-targets legend{color:#52625b;padding:0 .3rem;font-size:.68rem;font-weight:800}.weekly-targets label{color:#52625b;align-items:center;gap:.25rem;font-size:.66rem;display:inline-flex}.weekly-targets .secondary-button{margin-left:auto}.r34-copy-status{color:#315d50;margin:0;font-size:.67rem;font-weight:750}.r34-derived-basis{background:#f3f7f5;border-radius:8px;align-content:center;gap:.3rem;padding:.55rem .65rem;display:grid}.r34-derived-basis span{color:#52625b;font-size:.68rem;font-weight:700}.r34-derived-basis strong{color:#173f3a;font-size:.72rem}.text-button{color:#286d58;font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.3rem;padding:.3rem;font-size:.7rem;font-weight:800;display:inline-flex}@media (max-width:680px){.r34-toolbar,.r34-dialog>footer{flex-direction:column;align-items:flex-start}.r34-dialog-heading{flex-direction:column;align-items:flex-start;gap:.4rem}.r34-dialog-back{border-bottom:1px solid #dce4df;border-right:0;padding:0 0 .4rem}.r34-form-grid{grid-template-columns:1fr}.r34-form-grid label.wide{grid-column:auto}.weekly-interval{flex-wrap:wrap}}.calendar-working-hours-layer{z-index:0;pointer-events:none;background:repeating-linear-gradient(-45deg,#54615b0d 0 4px,#54615b17 4px 8px);position:absolute;inset:0}.calendar-working-interval{background:#ffffffd6;position:absolute;left:0;right:0;box-shadow:inset 3px 0 #4c826d38}.calendar-slot-button{z-index:1}.appointment-card,.calendar-block-card,.calendar-current-time{z-index:3}.schedule-override-panel{color:#744139;background:#fff9f6;border:1px solid #dfb7aa;border-radius:10px;grid-template-columns:auto minmax(0,1fr);gap:.7rem;padding:.8rem;display:grid}.schedule-override-panel p{margin:.25rem 0 .7rem}.schedule-override-panel label{gap:.3rem;margin-top:.55rem;display:grid}.schedule-override-panel input[type=text],.schedule-override-panel input:not([type]){border:1px solid #d8bbb2;border-radius:8px;padding:.55rem}.schedule-override-panel .schedule-override-confirm{align-items:center;gap:.45rem;display:flex}.schedule-override-panel button{margin-top:.7rem}.employee-operational-workspace{border-top:1px solid #dce4df;gap:1rem;margin-top:1rem;padding-top:1rem;display:grid}.employee-workspace-state{border:1px dashed #c8d4cd;border-radius:12px;justify-content:center;align-items:center;gap:.7rem;min-height:160px;padding:1rem;display:flex}.employee-operational-summary{background:linear-gradient(135deg,#f8fbf9,#fff);border:1px solid #dce4df;border-radius:14px;grid-template-columns:auto minmax(180px,1fr) minmax(300px,1.5fr) auto;align-items:center;gap:1rem;padding:1rem;display:grid}.employee-operational-avatar{color:#fff;background:#396d5b;border-radius:50%;place-items:center;width:54px;height:54px;font-size:1.25rem;font-weight:900;display:grid}.employee-operational-summary h2,.employee-operational-summary p{margin:.2rem 0 0}.employee-operational-summary p{color:var(--muted);font-size:.72rem}.employee-operational-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin:0;display:grid}.employee-operational-summary dl>div{gap:.15rem;display:grid}.employee-operational-summary dt{color:var(--muted);font-size:.63rem}.employee-operational-summary dd{overflow-wrap:anywhere;margin:0;font-size:.72rem;font-weight:800}.employee-operational-summary dd small{color:var(--muted);margin-top:.12rem;font-size:.6rem;font-weight:650;display:block}.employee-operational-actions{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;display:flex}.employee-settings-link{color:#286d58;margin:0 0 .75rem;font-size:.7rem;font-weight:800;display:inline-flex}.employee-access-summary{border:1px solid #dce4df;border-radius:10px;gap:.75rem;margin-bottom:1rem;padding:.8rem;display:grid}.employee-access-summary dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin:0;display:grid}.employee-access-summary dl>div{gap:.15rem;display:grid}.employee-access-summary dt{color:var(--muted);font-size:.65rem}.employee-access-summary dd{overflow-wrap:anywhere;margin:0;font-size:.72rem;font-weight:800}.employee-access-summary p{margin:0}.employee-access-summary .secondary-button{width:-moz-fit-content;width:fit-content}.employee-tabs{border-bottom:1px solid #dce4df;gap:.35rem;padding-bottom:.45rem;display:flex;overflow-x:auto}.employee-tabs button{color:#52625b;cursor:pointer;background:#f0f4f2;border:0;border-radius:999px;flex:none;padding:.45rem .75rem;font-size:.68rem;font-weight:800}.employee-tabs button.active{color:#fff;background:#396d5b}.employee-tab-panel{background:#fff;border:1px solid #dce4df;border-radius:14px;min-height:260px;padding:1rem}.employee-tab-panel>section{gap:.9rem;display:grid}.employee-tab-panel h3,.employee-tab-panel h4,.employee-tab-panel p{margin:0}.employee-tab-panel h3{align-items:center;gap:.45rem;display:flex}.employee-detail-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin:0;display:grid}.employee-detail-facts>div,.employee-current-card{background:#f7faf8;border-radius:10px;gap:.2rem;padding:.75rem;display:grid}.employee-detail-facts dt,.employee-current-card small{color:var(--muted);font-size:.64rem}.employee-detail-facts dd{margin:0;font-size:.72rem;font-weight:800}.employee-current-card span{color:#173f3a;font-size:1rem;font-weight:900}.employee-inline-form{background:#fbfcfb;border:1px solid #dce4df;border-radius:10px;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:.55rem;padding:.75rem;display:grid}.employee-inline-form h4,.employee-inline-form p,.employee-inline-form .wide{grid-column:1/-1}.employee-inline-form label{color:var(--muted);gap:.25rem;font-size:.65rem;font-weight:700;display:grid}.employee-inline-form input,.employee-inline-form select,.payroll-create-form input,.payroll-create-form select,.payroll-actions input,.payroll-actions select{background:#fff;border:1px solid #cbd7d1;border-radius:8px;min-width:0;padding:.5rem}.employee-inline-form p{color:#8e453f}.assignment-mode-switch{flex-wrap:wrap;gap:.35rem;display:flex}.assignment-mode-switch button{color:#52625b;font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd7d1;border-radius:999px;padding:.4rem .65rem;font-size:.65rem;font-weight:800}.assignment-mode-switch button.active{color:#fff;background:#396d5b;border-color:#396d5b}.employee-history-list,.employee-payroll-list{gap:.45rem;display:grid}.employee-history-list article,.employee-payroll-list article{border-bottom:1px solid #edf1ef;justify-content:space-between;align-items:center;gap:.6rem;padding:.55rem 0;display:flex}.employee-history-list article>div,.employee-payroll-list article>div{gap:.15rem;display:grid}.employee-history-list span,.employee-history-list small,.employee-payroll-list span,.employee-payroll-list small{color:var(--muted);font-size:.66rem}.employee-history-list .is-inactive{opacity:.6}.effective-day-grid{grid-template-columns:repeat(auto-fill,minmax(155px,1fr));gap:.5rem;display:grid}.effective-day-grid article{border:1px solid #e2e8e4;border-radius:9px;gap:.2rem;padding:.55rem;display:grid}.effective-day-grid span,.effective-day-grid small{color:var(--muted);font-size:.65rem}.employee-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;display:grid}.employee-metric-grid article{background:#f7faf8;border-radius:10px;gap:.2rem;padding:.75rem;display:grid}.employee-metric-grid span,.employee-metric-grid small{color:var(--muted);font-size:.65rem}.employee-metric-grid strong{color:#173f3a;font-size:1rem}.employee-capability-list{flex-wrap:wrap;gap:.4rem;display:flex}.employee-capability-list span{color:#315d50;background:#eef5f1;border-radius:999px;padding:.35rem .6rem;font-size:.66rem;font-weight:800}.employee-redacted{color:#82514b;background:#fff9f8;border:1px dashed #d7c7c4;border-radius:10px;padding:1rem}.payroll-layout{grid-template-columns:minmax(0,1.8fr) minmax(320px,.8fr);align-items:start;gap:1rem;display:grid}.payroll-main{gap:1rem;display:grid}.payroll-create-form{background:#fff;border:1px solid #dce4df;border-radius:12px;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;gap:.55rem;padding:.8rem;display:grid}.payroll-create-form h2,.payroll-create-form .wide{grid-column:1/-1}.payroll-create-form h2{margin:0;font-size:.9rem}.payroll-create-form label,.payroll-actions label{color:var(--muted);gap:.25rem;font-size:.65rem;font-weight:700;display:grid}.payroll-statements,.payroll-adjustments,.payroll-detail{background:#fff;border:1px solid #dce4df;border-radius:12px;padding:.8rem}.payroll-statements h2,.payroll-adjustments h2,.payroll-detail h2,.payroll-detail p{margin:0}.payroll-table-wrap{margin-top:.7rem;overflow-x:auto}.payroll-table-wrap table,.payroll-analytics-breakdowns table{border-collapse:collapse;width:100%;font-size:.68rem}.payroll-table-wrap th,.payroll-table-wrap td,.payroll-analytics-breakdowns th,.payroll-analytics-breakdowns td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf1ef;padding:.55rem}.payroll-table-wrap tbody tr{cursor:pointer}.payroll-table-wrap tbody tr:hover,.payroll-table-wrap tbody tr.selected{background:#f1f7f4}.payroll-status{color:#4e5d56;background:#edf1ef;border-radius:999px;padding:.22rem .45rem;font-size:.62rem;font-weight:900}.payroll-status--calculated{color:#315d50;background:#eaf3ef}.payroll-status--approved{color:#315479;background:#eaf1f8}.payroll-status--paid{color:#226147;background:#e2f3e9}.payroll-status--cancelled,.payroll-status--reversed{color:#864943;background:#f7e9e7}.payroll-detail{gap:.9rem;display:grid;position:sticky;top:.8rem}.payroll-detail>header{justify-content:space-between;gap:.7rem;display:flex}.payroll-detail>header p{color:var(--muted);font-size:.68rem}.payroll-totals,.payroll-lines{gap:.4rem;display:grid}.payroll-totals>div,.payroll-lines>div{border-bottom:1px solid #edf1ef;justify-content:space-between;gap:.5rem;padding:.4rem 0;display:flex}.payroll-totals span,.payroll-lines span{color:var(--muted);font-size:.67rem}.payroll-totals .total{color:#173f3a;font-size:1rem}.payroll-actions{gap:.55rem;display:grid}.payroll-detail .r34-contract-note{gap:.35rem;display:flex}.payroll-analytics-totals{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.payroll-analytics-totals article{background:#fff;border:1px solid #dce4df;border-radius:10px;gap:.25rem;padding:.75rem;display:grid}.payroll-analytics-totals span{color:var(--muted);font-size:.65rem}.payroll-analytics-totals strong{color:#173f3a;font-size:.95rem}.payroll-analytics-breakdowns{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;display:grid}.payroll-analytics-breakdowns section,.specialist-utilization{background:#fff;border:1px solid #dce4df;border-radius:12px;padding:.8rem}.payroll-analytics-breakdowns h3,.specialist-utilization h3{margin:0 0 .6rem}.specialist-utilization{gap:.7rem;display:grid}.specialist-utilization>header{justify-content:space-between;align-items:center;display:flex}@media (max-width:1050px){.employee-operational-summary,.payroll-layout{grid-template-columns:1fr}.employee-operational-summary dl,.employee-inline-form{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-detail{position:static}.payroll-create-form,.payroll-analytics-totals{grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-analytics-breakdowns{grid-template-columns:1fr}}@media (max-width:680px){.employee-operational-summary dl,.employee-detail-facts,.employee-inline-form,.employee-metric-grid,.payroll-create-form,.payroll-analytics-totals{grid-template-columns:1fr}.employee-inline-form h4,.employee-inline-form p,.employee-inline-form .wide,.payroll-create-form h2,.payroll-create-form .wide{grid-column:auto}}
