:root{--color-primary:#0f766e;--color-primary-hover:#0b655e;--color-primary-light:#eff8f6;--color-primary-mid:#cde9e3;--color-accent:#2563eb;--color-success:#15803d;--color-warning:#b45309;--color-danger:#b42318;--color-surface:#fff;--color-surface-soft:#f8fafb;--color-bg:#f3f6f8;--color-border:#dfe6e9;--color-border-strong:#c8d2d8;--color-text:#172033;--color-text-muted:#607080;--color-text-soft:#8b9aaa;--shadow-sm:0 1px 2px #0f172a0a, 0 4px 12px #0f172a09;--shadow-md:0 10px 28px #0f172a14, 0 2px 6px #0f172a0a;--shadow-lg:0 24px 60px #0f172a29, 0 4px 14px #0f172a0f;--radius-sm:6px;--radius-md:8px;--radius-lg:8px;color:var(--color-text);background:var(--color-bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.platform-page{gap:20px;max-width:1500px;margin:0 auto;display:grid}.platform-heading{justify-content:space-between;align-items:flex-end;gap:20px;padding:8px 0 4px;display:flex}.platform-heading h1{font-size:1.75rem}.platform-heading p{color:var(--color-text-muted);margin-top:6px}.platform-heading-actions{gap:10px;display:flex}.system-status{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;align-items:center;gap:8px;padding:8px 11px;font-size:.78rem;font-weight:700;display:inline-flex}.system-status i{background:#16a34a;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #dcfce7}.back-link{width:fit-content;color:var(--color-text-muted);align-items:center;gap:5px;margin-bottom:16px;font-size:.8rem;font-weight:650;display:flex}.platform-metric-grid{grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;display:grid}.platform-metric{border:1px solid var(--color-border);min-height:136px;box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:1fr auto;gap:5px 12px;padding:17px;display:grid;position:relative;overflow:hidden}.platform-metric>span{color:var(--color-text-muted);text-transform:uppercase;align-self:end;font-size:.76rem;font-weight:700}.platform-metric>strong{grid-column:1;font-size:1.8rem;line-height:1}.platform-metric>small{color:var(--color-text-soft);grid-column:1}.platform-metric .metric-icon{border-radius:8px;grid-area:1/2/4;place-items:center;width:38px;height:38px;display:grid}.tone-teal .metric-icon{color:#0f766e;background:#ccfbf1}.tone-rose .metric-icon{color:#be123c;background:#ffe4e6}.tone-amber .metric-icon{color:#b45309;background:#fef3c7}.tone-blue .metric-icon{color:#1d4ed8;background:#dbeafe}.tone-violet .metric-icon{color:#6d28d9;background:#ede9fe}.platform-command-grid{border:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.platform-command{align-content:space-between;gap:24px;min-height:190px;padding:22px;display:grid}.platform-command+.platform-command{border-left:1px solid var(--color-border)}.platform-command h2{margin-bottom:6px;font-size:1.05rem}.platform-command p{color:var(--color-text-muted);font-size:.86rem;line-height:1.55}.platform-command .primary-button,.platform-command .secondary-button{width:fit-content}.platform-section{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;padding:18px}.section-heading p{color:var(--color-text-muted);margin-top:3px;font-size:.8rem}.catalog-layout,.commercial-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:16px;display:grid}.catalog-main,.commercial-main,.catalog-side,.commercial-side{gap:16px;display:grid}.catalog-side,.commercial-side{position:sticky;top:82px}.commercial-side .form-grid{grid-template-columns:1fr}.compact-form{gap:13px;display:grid}.compact-form h2{align-items:center;gap:7px;display:flex}.service-list{display:grid}.service-list article{border-top:1px solid var(--color-border);grid-template-columns:38px 1fr auto;align-items:center;gap:11px;padding:12px 0;display:grid}.service-list article:first-child{border-top:0}.service-list article>div:nth-child(2){gap:3px;display:grid}.service-list article span{color:var(--color-text-muted);font-size:.76rem}.service-symbol{color:#0f766e;background:#ecfdf5;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.plan-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;display:grid}.plan-card{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;gap:18px;min-height:190px;padding:16px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.plan-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.plan-card.selected{border-color:#0f766e;box-shadow:inset 0 0 0 1px #0f766e}.plan-card h3{margin:11px 0 4px}.plan-card p{color:var(--color-text-muted);font-size:.8rem}.version-stack{align-content:end;gap:6px;display:grid}.version-stack div{border-top:1px solid var(--color-border);gap:2px;padding-top:7px;display:grid}.version-stack span{color:var(--color-text-muted);font-size:.72rem}.version-stack strong{font-size:.82rem}.entitlement-editor{border-block:1px solid var(--color-border);max-height:330px;padding-block:5px;display:grid;overflow:auto}.entitlement-editor>div{grid-template-columns:1fr 90px;align-items:center;gap:8px;padding:7px 0;display:grid}.check-line{align-items:center;gap:7px;flex-direction:row!important;display:flex!important}.check-line input{width:auto}.storage-table{padding:0;overflow:hidden}.storage-table-head,.storage-row{grid-template-columns:minmax(220px,1.5fr) 90px 130px 130px minmax(180px,1fr);align-items:center;gap:12px;padding:13px 17px;display:grid}.storage-table-head{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);text-transform:uppercase;background:#f8fafc;font-size:.72rem;font-weight:750}.storage-row{color:var(--color-text);border-bottom:1px solid var(--color-border);font-size:.84rem}.storage-row:hover{background:#f8fafc}.storage-row>div:first-child{align-items:center;gap:8px;display:flex}.storage-progress{align-items:center;gap:9px;display:flex}.storage-progress>div,.meter{background:#e2e8f0;border-radius:999px;flex:1;height:7px;overflow:hidden}.storage-progress i,.meter i{border-radius:inherit;background:#0f766e;height:100%;display:block}.storage-progress i.warning{background:#d97706}.storage-progress i.critical,.storage-progress i.full{background:#dc2626}.storage-progress span{align-items:center;gap:4px;min-width:48px;font-size:.74rem;display:flex}.commercial-summary{border:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.commercial-summary article{grid-template-columns:auto 1fr;gap:4px 10px;padding:18px;display:grid}.commercial-summary article+article{border-left:1px solid var(--color-border)}.commercial-summary svg{color:#0f766e;grid-row:1/4}.commercial-summary span,.commercial-summary small{color:var(--color-text-muted);font-size:.75rem}.commercial-summary strong{font-size:1.05rem}.commercial-summary .meter{grid-column:2;margin-top:3px}.activity-list,.payment-history{display:grid}.activity-list article,.payment-history article{border-top:1px solid var(--color-border);grid-template-columns:auto 1fr auto;align-items:center;gap:11px;padding:13px 0;display:grid}.activity-list article:first-child,.payment-history article:first-child{border-top:0}.activity-list article>div:nth-child(2),.payment-history article>div:first-child{gap:4px;display:grid}.activity-list strong span,.activity-list small,.payment-history span{color:var(--color-text-muted);font-size:.76rem}.activity-marker{background:#0f766e;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 4px #ccfbf1}.payments-workspace{gap:16px;margin-top:16px;display:grid}.payment-kpis{border:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.payment-kpis article{grid-template-columns:auto 1fr;align-items:center;gap:3px 10px;padding:16px;display:grid}.payment-kpis article+article{border-left:1px solid var(--color-border)}.payment-kpis svg{color:#0f766e;grid-row:1/3}.payment-kpis .due svg{color:#b45309}.payment-kpis span{color:var(--color-text-muted);font-size:.75rem}.payment-kpis strong{font-size:1.15rem}.payment-layout{grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);align-items:start;gap:16px;display:grid}.payment-form{gap:13px;display:grid;position:sticky;top:82px}.payment-form>div:first-child p{color:var(--color-text-muted);margin-top:6px;font-size:.8rem;line-height:1.5}.patient-payment-list{display:grid}.patient-payment-list>article{border-top:1px solid var(--color-border);grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;display:grid}.patient-payment-list>article:first-child{border-top:0}.payment-method-icon{color:#1d4ed8;background:#eff6ff;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.payment-main{gap:4px;min-width:0;display:grid}.payment-main>div{align-items:center;gap:8px;display:flex}.payment-main>span,.payment-main small{color:var(--color-text-muted);font-size:.76rem}.invoices-page{gap:18px;display:grid}.invoice-kpis{border:1px solid var(--color-border);background:#fff;border-radius:8px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.invoice-kpis article{grid-template-columns:auto 1fr;align-items:center;gap:3px 10px;padding:16px 18px;display:grid}.invoice-kpis article+article{border-left:1px solid var(--color-border)}.invoice-kpis svg{color:#0b6b63;grid-row:1/3}.invoice-kpis span{color:var(--color-text-muted);font-size:.75rem}.invoice-kpis strong{font-size:1.18rem}.invoice-kpis .due{border-top:3px solid #f59e0b}.invoice-creator{border-left:3px solid #0b6b63;gap:15px;display:grid}.invoice-session-picker{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px;display:grid}.invoice-session-picker label{border:1px solid var(--color-border);cursor:pointer;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px;display:grid}.invoice-session-picker label.selected{background:#f0fdfa;border-color:#0b6b63}.invoice-session-picker input{width:auto}.invoice-session-picker label>div{gap:2px;display:grid}.invoice-session-picker span{color:var(--color-text-muted);font-size:.72rem}.invoice-list{padding:0;overflow:hidden}.invoice-list>.section-heading{padding:18px 18px 0}.invoice-list>article{border-top:1px solid var(--color-border);grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) minmax(140px,.7fr) auto auto;align-items:center;gap:15px;padding:14px 18px;display:grid}.invoice-list>article:hover{background:#f8fafc}.invoice-list article>div:not(.row-actions):not(.invoice-badges){gap:3px;display:grid}.invoice-list article span{color:var(--color-text-muted);font-size:.74rem}.invoice-number{align-items:center;grid-template-columns:34px 1fr!important}.invoice-number>svg{color:#0b6b63;background:#e8f3f1;border-radius:8px;grid-row:1/3;width:34px;height:34px;padding:8px;display:grid}.invoice-badges{flex-wrap:wrap;gap:5px;display:flex}.plan-card-top{justify-content:space-between;align-items:center;display:flex}.mobile-menu-button,.mobile-menu-close,.sidebar-backdrop{display:none}@media (width<=1100px){.platform-metric-grid{grid-template-columns:repeat(2,1fr)}.catalog-layout,.commercial-layout{grid-template-columns:1fr}.catalog-side,.commercial-side{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.catalog-side form:last-child{grid-column:1/-1}.storage-table{overflow-x:auto}.storage-table-head,.storage-row{min-width:860px}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-workspace{display:none}.login-access{min-height:100vh;padding:96px 24px 60px}.login-mobile-brand{color:#173431;display:block;position:absolute;top:26px;left:24px}.app-shell{display:block}.sidebar{z-index:60;border-right:1px solid var(--color-border);width:min(290px,86vw);height:100vh;box-shadow:var(--shadow-lg);transition:transform .2s;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.sidebar.open{transform:translate(0)}.sidebar-nav{flex-direction:column;padding:12px 10px;display:flex;overflow-y:auto}.nav-section{flex-direction:column;align-items:stretch;width:100%}.nav-section-label,.sidebar-context,.sidebar-footer{display:flex}.nav-item{width:100%}.mobile-menu-button,.mobile-menu-close{border:1px solid var(--color-border);width:36px;height:36px;color:var(--color-text);background:#fff;border-radius:8px;place-items:center;display:grid}.mobile-menu-close{margin-left:auto}.sidebar-backdrop{z-index:50;background:#0f172a6b;border:0;display:block;position:fixed;inset:0}.platform-command-grid{grid-template-columns:1fr}.platform-command{min-height:auto}.platform-command+.platform-command{border-left:0;border-top:1px solid var(--color-border)}.commercial-summary{grid-template-columns:1fr}.commercial-summary article+article{border-left:0;border-top:1px solid var(--color-border)}.payment-layout{grid-template-columns:1fr}.invoice-list{overflow-x:auto}.invoice-list>article{min-width:850px}.payment-form{position:static}}@media (width<=640px){.login-form-heading h2{font-size:1.5rem}.platform-heading{flex-direction:column;align-items:flex-start}.platform-metric-grid,.catalog-side,.commercial-side,.payment-kpis{grid-template-columns:1fr}.platform-metric{min-height:118px}.payment-kpis article+article{border-left:0;border-top:1px solid var(--color-border)}.patient-payment-list>article{grid-template-columns:38px 1fr}.patient-payment-list .row-actions{grid-column:2}.invoice-kpis{grid-template-columns:1fr}.invoice-kpis article+article{border-left:0;border-top:1px solid var(--color-border)}.topbar-right .secondary-button span{display:none}.tab-nav{flex-wrap:nowrap;overflow-x:auto}.tab-btn{flex:none}}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:#0f766e;text-decoration:none}h1,h2,p{margin:0}h1{font-size:1.55rem;line-height:1.2}h2{font-size:1rem;line-height:1.3}.screen-loader{color:#475569;place-items:center;min-height:100vh;display:grid}.login-page{background:#f4f7f8;grid-template-columns:minmax(480px,1.08fr) minmax(420px,.92fr);min-height:100vh;display:grid}.login-workspace{color:#fff;background:#123b38;grid-template-rows:auto 1fr auto auto;gap:30px;min-height:100vh;padding:clamp(28px,4vw,62px);display:grid;overflow:hidden}.login-workspace-head{justify-content:space-between;align-items:center;display:flex}.login-workspace-head>span{color:#d7f4ef;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.brand-lockup{color:inherit;align-items:center;gap:10px;display:inline-flex}.brand-symbol{color:#fff;background:#0b6b63;border-radius:8px;place-items:center;width:38px;height:38px;display:grid;box-shadow:inset 0 0 0 1px #ffffff21}.login-workspace .brand-symbol{color:#0b6b63;background:#fff}.brand-wordmark{letter-spacing:0;font-size:1.15rem;font-weight:800}.brand-lockup.compact .brand-symbol{width:32px;height:32px}.login-workspace-copy{align-self:center;max-width:650px;padding-block:24px}.login-workspace-copy .eyebrow{color:#7dd3c7}.login-workspace-copy h1{color:#fff;max-width:620px;font-size:clamp(2.35rem,4.3vw,4.5rem);font-weight:760;line-height:1.03}.login-workspace-copy p{color:#c8dfdc;max-width:560px;margin-top:20px;font-size:1rem;line-height:1.7}.schedule-preview{color:#173431;background:#fff;border:1px solid #ffffff2e;border-radius:8px;width:min(560px,100%);padding:18px;box-shadow:0 24px 60px #041e1b3d}.schedule-preview header,.schedule-preview header>div{justify-content:space-between;align-items:center;gap:8px;display:flex}.schedule-preview header>div{justify-content:flex-start}.schedule-preview header svg{color:#0b6b63}.schedule-preview header span{color:#71827f;font-size:.75rem}.schedule-ruler{color:#93a39f;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;margin:17px 0 10px;font-size:.68rem;display:grid}.schedule-ruler i{background:#dce6e4;height:1px}.schedule-items{gap:7px;display:grid}.schedule-item{border:1px solid #e2e9e8;border-radius:8px;grid-template-columns:48px 4px 1fr auto;align-items:center;gap:11px;min-height:54px;padding:8px 11px;display:grid}.schedule-item time{color:#5c6f6b;font-size:.75rem;font-weight:750}.schedule-item>i{background:#0f766e;border-radius:3px;width:4px;height:30px}.schedule-item.blue>i{background:#2563eb}.schedule-item.coral>i{background:#e85d75}.schedule-item>div{gap:2px;display:grid}.schedule-item strong{font-size:.82rem}.schedule-item span{color:#71827f;font-size:.7rem}.schedule-item>svg{color:#16a34a}.login-workspace>footer{color:#9fc5bf;flex-wrap:wrap;gap:20px;font-size:.72rem;font-weight:700;display:flex}.login-workspace>footer span{align-items:center;gap:6px;display:inline-flex}.login-workspace>footer span:before{content:"";background:#fb7185;border-radius:50%;width:5px;height:5px}.login-access{background:#f8fafb;place-items:center;min-width:0;min-height:100vh;padding:52px clamp(28px,6vw,88px);display:grid;position:relative;overflow:hidden}.login-mobile-brand{display:none}.login-form-wrap{gap:30px;width:100%;min-width:0;max-width:430px;display:grid}.login-form-heading{gap:7px;display:grid}.login-kicker{color:#0b6b63;text-transform:uppercase;font-size:.78rem;font-weight:800}.login-form-heading h2{font-size:1.8rem}.login-form-heading p{color:#667773;line-height:1.55}.login-form{gap:17px;min-width:0;display:grid}.login-form label{color:#2d4541;gap:7px;font-size:.8rem;font-weight:750}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon>svg{color:#81928e;pointer-events:none;position:absolute;left:13px}.input-with-icon input{background:#fff;border-color:#cfdbd8;width:100%;min-width:0;min-height:49px;padding:0 44px 0 42px}.input-with-icon input:focus{border-color:#0b6b63;box-shadow:0 0 0 3px #0b6b631a}.input-with-icon button{color:#71827f;background:0 0;border:0;place-items:center;width:34px;height:34px;display:grid;position:absolute;right:8px}.login-submit{color:#fff;background:#0b6b63;border:1px solid #0b6b63;border-radius:8px;justify-content:space-between;align-items:center;min-height:50px;margin-top:3px;padding:0 16px;font-weight:750;transition:background .15s,transform .15s;display:flex}.login-submit:hover:not(:disabled){background:#085a54;transform:translateY(-1px)}.login-submit:disabled{cursor:wait;opacity:.65}.login-security{color:#71827f;justify-content:center;align-items:center;gap:7px;font-size:.72rem;display:flex}.login-security svg{color:#0b6b63}.login-legal{color:#8a9996;font-size:.7rem;position:absolute;bottom:24px}.login-legal span{margin-inline:5px}.eyebrow{color:#0f766e;text-transform:uppercase;margin-bottom:8px;font-size:.82rem;font-weight:700;display:inline-flex}.stack{gap:14px;display:grid}.app-shell{grid-template-columns:256px 1fr;min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--color-border);background:#fff;flex-direction:column;gap:0;height:100vh;padding:0;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--color-border);align-items:center;gap:10px;padding:20px 16px 16px;display:flex}.brand-mark{background:var(--color-primary);color:#fff;border-radius:8px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:.9rem;font-weight:800;display:grid}.brand-name{color:var(--color-text);font-size:.95rem;font-weight:700}.sidebar-context{background:var(--color-primary-light);border-bottom:1px solid var(--color-primary-mid);align-items:center;gap:10px;padding:12px 16px;display:flex}.sidebar-context-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px}.sidebar-context-name{color:var(--color-primary);font-size:.85rem;font-weight:700;line-height:1.2}.sidebar-context-role{color:#0d9488;font-size:.75rem}.sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:12px 10px;display:flex}.nav-section{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.nav-section-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-soft);padding:8px 10px 4px;font-size:.68rem;font-weight:700}.nav-list{gap:2px;padding:12px 10px;display:grid}.nav-item{border-radius:var(--radius-sm);min-height:38px;color:var(--color-text-muted);align-items:center;gap:10px;padding:0 10px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--color-bg);color:var(--color-text)}.nav-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:650}.sidebar-footer{border-top:1px solid var(--color-border);padding:12px}.sidebar-user{border-radius:var(--radius-sm);align-items:center;gap:10px;padding:8px 10px;transition:background .12s;display:flex}.sidebar-user:hover{background:var(--color-bg)}.sidebar-avatar{color:#fff;background:linear-gradient(135deg,#0f766e,#0891b2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:.78rem;font-weight:700;display:flex}.sidebar-user-info{flex:1;gap:1px;min-width:0;display:grid}.sidebar-user-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.83rem;font-weight:650;overflow:hidden}.sidebar-user-role{color:var(--color-text-soft);font-size:.72rem}.sidebar-logout{color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:color .12s,background .12s;display:flex}.sidebar-logout:hover{color:#dc2626;background:#fee2e2}.main-area{flex-direction:column;min-width:0;display:flex}.topbar{z-index:10;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(12px);background:#ffffffeb;justify-content:space-between;align-items:center;gap:16px;min-height:60px;padding:0 28px;display:flex;position:sticky;top:0}.topbar-left{gap:1px;display:grid}.topbar-left strong{color:var(--color-text);font-size:.9rem;font-weight:700}.topbar-left span{color:var(--color-text-muted);font-size:.78rem}.topbar-right{align-items:center;gap:8px;display:flex}.topbar span,.muted-text,.page-heading p,.list-row span,.room-card p{color:var(--color-text-muted)}.content{flex:1;padding:28px}.page{gap:24px;display:grid}.two-column{grid-template-columns:minmax(0,1fr) minmax(300px,380px);align-items:start}.page-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.stat-card,.panel,.side-form,.room-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.stat-card{box-shadow:var(--shadow-sm);gap:10px;padding:20px;transition:box-shadow .15s,transform .15s;display:grid}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-card span{color:var(--color-text-muted);font-size:.85rem;font-weight:500}.stat-card strong{letter-spacing:0;font-size:2rem;font-weight:700;line-height:1}.panel{box-shadow:var(--shadow-sm);gap:16px;padding:20px;display:grid}.side-form{gap:14px;padding:20px;display:grid;position:sticky;top:84px}label{color:#334155;gap:6px;font-size:.875rem;font-weight:600;display:grid}input,select,textarea{border:1.5px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;color:var(--color-text);padding:10px 12px;transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #0f766e1f}textarea{resize:vertical}input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary)}input[type=color]{min-height:42px;padding:4px}.primary-button,.secondary-button,.danger-button,.icon-button{border-radius:var(--radius-sm);cursor:pointer;border:1.5px solid #0000;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 16px;font-size:.875rem;font-weight:650;text-decoration:none;transition:background .15s,box-shadow .15s,transform .1s;display:inline-flex}.primary-button{background:var(--color-primary);color:#fff;box-shadow:0 1px 3px #0f766e4d}.primary-button:hover{background:#0d6b64;transform:translateY(-1px);box-shadow:0 4px 12px #0f766e59}.primary-button:active{transform:translateY(0)}.primary-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.secondary-button,.icon-button{border-color:var(--color-border-strong);background:var(--color-surface);color:#334155}.danger-button{color:#b91c1c;background:#fff1f2;border-color:#fecaca}.danger-button:hover{background:#fee2e2}.compact{min-height:34px;padding:0 12px;font-size:.82rem}.text-button{white-space:nowrap}.table-wrap{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{text-align:left;vertical-align:middle;white-space:nowrap;border-bottom:1px solid #f1f5f9;padding:13px 16px}th{color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.05em;background:#f8fafc;font-size:.75rem;font-weight:700}tr:last-child td{border-bottom:0}.clickable-row{cursor:pointer}.clickable-row:hover td{background:#f8fafc}.actions-cell{justify-content:flex-end;gap:8px;display:flex}.row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.badge{border-radius:999px;align-items:center;gap:4px;min-height:26px;padding:0 9px;font-size:.78rem;font-weight:750;display:inline-flex}.badge.muted{color:#475569;background:#e2e8f0}.badge.primary{color:#5b21b6;background:#ede9fe}.alert{border-radius:8px;align-items:flex-start;gap:10px;padding:12px;display:flex}.alert.error{color:#991b1b;background:#fff1f2;border:1px solid #fecaca}.alert.success{color:#166534;background:#f0fdf4;border:1px solid #bbf7d0}.toast-region{z-index:2000;gap:10px;max-width:min(360px,100vw - 36px);display:grid;position:fixed;top:18px;right:18px}.toast{background:#fff;border-radius:8px;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:12px;font-weight:700;display:grid;box-shadow:0 14px 30px #0f172a29}.toast-success{color:#166534;border:1px solid #bbf7d0}.toast-error{color:#991b1b;border:1px solid #fecaca}.toast-close{color:inherit;cursor:pointer;background:0 0;border:0;padding:2px;display:inline-flex}.time-picker{position:relative}.time-picker-trigger{color:#0f172a;cursor:pointer;width:100%;min-height:42px;font:inherit;background:#fff;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:center;padding:0 12px;font-weight:700;display:flex}.time-picker-trigger:after{content:"";border-bottom:2px solid #64748b;border-right:2px solid #64748b;width:8px;height:8px;transform:rotate(45deg)translateY(-2px)}.time-picker-trigger:disabled{color:#94a3b8;cursor:not-allowed;background:#f8fafc}.time-picker-menu{z-index:2100;background:#fff;border:1px solid #dbe3ef;border-radius:8px;max-height:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 36px #0f172a2e}.time-picker-option{color:#334155;cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-weight:700;display:block}.time-picker-option:hover,.time-picker-option:focus{color:#1d4ed8;background:#eff6ff;outline:none}.time-picker-option.selected{color:#1e40af;background:#dbeafe}.tab-nav{border-bottom:2px solid #e2e8f0;gap:4px;display:flex}.tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:6px 6px 0 0;align-items:center;gap:6px;margin-bottom:-2px;padding:8px 16px;font-size:.875rem;font-weight:600;transition:color .15s;display:inline-flex}.tab-btn:hover{color:#0f766e}.tab-btn.active{color:#0f766e;background:#f0fdfa;border-bottom-color:#0f766e}.financial-summary{flex-wrap:wrap;gap:12px;margin-top:1rem;display:flex}.fin-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;min-width:140px;padding:10px 16px;display:flex}.fin-card span{color:#64748b;font-size:.8rem}.fin-card strong{font-size:1.05rem;font-weight:700;display:block}.fin-card.paid{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.fin-card.paid span{color:#166534}.fin-card.pending{color:#a16207;background:#fefce8;border-color:#fde68a}.fin-card.pending span{color:#a16207}.inline-form{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;padding:16px}.required{color:#dc2626}.icon-button{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px}.icon-button:hover{color:#1e293b;background:#e2e8f0}.empty-hint{color:#94a3b8;text-align:center;padding:24px 0;font-size:.9rem}.success-button{cursor:pointer;color:#fff;background:#16a34a;border:none;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:.875rem;font-weight:600;transition:background .15s;display:inline-flex}.success-button:hover{background:#15803d}.success-button.compact{border-radius:6px;padding:4px 10px;font-size:.8rem}.payment-fieldset{background:#f0fdf4;border:1px solid #d1fae5;border-radius:8px;margin-top:.5rem;padding:12px 16px}.payment-fieldset legend{color:#166534;padding:0 6px;font-size:.85rem;font-weight:700}.timeline{flex-direction:column;gap:0;display:flex;position:relative}.timeline:before{content:"";z-index:0;background:#e2e8f0;width:2px;position:absolute;top:8px;bottom:8px;left:19px}.timeline-item{gap:12px;padding:0 0 20px;display:flex;position:relative}.timeline-icon{color:#64748b;z-index:1;background:#fff;border:2px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;position:relative}.timeline-item.type-session .timeline-icon{color:#7c3aed;background:#f5f3ff;border-color:#a78bfa}.timeline-item.type-assessment .timeline-icon{color:#2563eb;background:#eff6ff;border-color:#93c5fd}.timeline-item.type-progress .timeline-icon{color:#059669;background:#ecfdf5;border-color:#6ee7b7}.timeline-item.type-note .timeline-icon{color:#64748b;background:#f8fafc;border-color:#cbd5e1}.timeline-body{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.timeline-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.timeline-head time{color:#94a3b8;white-space:nowrap;font-size:.82rem}.timeline-title{color:#1e293b;margin:0;font-size:.975rem;font-weight:700}.timeline-content{color:#475569;white-space:pre-wrap;font-size:.9rem;line-height:1.6}.timeline-next{color:#0f766e;background:#f0fdfa;border-left:3px solid #0f766e;border-radius:0 6px 6px 0;padding:6px 10px;font-size:.85rem}.timeline-footer{border-top:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;padding-top:8px;display:flex}.timeline-practitioner{color:#94a3b8;font-size:.82rem}.form-actions{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.list{gap:8px;display:grid}.list-row{border:1px solid #edf2f7;border-radius:8px;justify-content:space-between;gap:16px;padding:12px;display:flex}.list-row div{gap:3px;display:grid}.info-list,.room-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.info-list div,.room-card{gap:8px;padding:16px;display:grid}.info-list span{color:#64748b;font-size:.85rem}.color-dot{border-radius:999px;width:12px;height:12px;margin-right:8px;display:inline-block}.access-grid{gap:16px;display:grid}.filters{background:#fff;border:1px solid #dbe3ef;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;padding:14px;display:grid}.align-end{align-self:end}.input-with-icon{position:relative}.input-with-icon svg{color:#64748b;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.input-with-icon input{padding-left:38px}.calendar-surface{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:0;overflow:hidden}.planning-page{flex-direction:column;gap:14px;display:flex}.planning-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.planning-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.planning-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.planning-toolbar{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;display:flex}.planning-view-group{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);flex-shrink:0;display:flex;overflow:hidden}.planning-view-btn{color:var(--color-text-muted);cursor:pointer;border:none;border-right:1.5px solid var(--color-border);white-space:nowrap;background:0 0;padding:6px 14px;font-size:.82rem;font-weight:650;transition:background .12s,color .12s}.planning-view-btn:last-child{border-right:none}.planning-view-btn:hover{background:var(--color-bg);color:var(--color-text)}.planning-view-btn.active{background:var(--color-primary);color:#fff}.planning-nav{flex-shrink:0;align-items:center;gap:2px;display:flex}.planning-nav-btn{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:34px;height:34px;color:var(--color-text-muted);cursor:pointer;justify-content:center;align-items:center;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.planning-nav-btn:hover{background:var(--color-bg);color:var(--color-text);border-color:#94a3b8}.today-btn{width:auto;padding:0 12px;font-size:.82rem;font-weight:650}.planning-filters{flex-wrap:wrap;flex:1;align-items:center;gap:8px;margin-left:6px;display:flex}.planning-filter-icon{color:var(--color-text-soft);flex-shrink:0;align-items:center;display:flex}.planning-filter-select{align-items:center;display:flex;position:relative}.planning-filter-select select{appearance:none;background:var(--color-bg);border:1.5px solid var(--color-border);color:var(--color-text);cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;border-radius:999px;min-width:0;max-width:180px;padding:5px 28px 5px 12px;font-size:.8rem;font-weight:600;transition:border-color .12s,background .12s}.planning-filter-select select:focus{border-color:var(--color-primary);background-color:var(--color-surface);outline:none;box-shadow:0 0 0 3px #0f766e1a}.filter-color-dot{pointer-events:none;border-radius:50%;width:8px;height:8px;position:absolute;left:10px}.filter-color-dot+.planning-filter-select select{padding-left:26px}.planning-filter-select:has(.filter-color-dot) select{padding-left:26px}.planning-clear-btn{color:#dc2626;cursor:pointer;background:#fff1f2;border:1.5px solid #fca5a5;border-radius:999px;align-items:center;gap:4px;padding:4px 12px;font-size:.78rem;font-weight:650;transition:background .12s;display:inline-flex}.planning-clear-btn:hover{background:#fee2e2}.planning-chips{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.planning-chip{border:1.5px solid var(--color-border-strong);background:var(--color-bg);color:var(--color-text);border-radius:999px;align-items:center;gap:6px;padding:3px 6px 3px 10px;font-size:.78rem;font-weight:650;display:inline-flex}.planning-chip button{cursor:pointer;color:inherit;opacity:.6;background:0 0;border:none;border-radius:50%;align-items:center;padding:2px;transition:opacity .1s;display:flex}.planning-chip button:hover{opacity:1}.chip-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.planning-legend{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.planning-legend-pill{border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;border-radius:999px;align-items:center;gap:7px;padding:4px 12px 4px 8px;font-size:.8rem;font-weight:600;transition:background .12s,border-color .12s,color .12s,transform .1s;display:inline-flex}.planning-legend-pill:hover{border-color:var(--pill-color,#0f766e);color:var(--color-text);transform:translateY(-1px)}.planning-legend-pill.active{border-color:var(--pill-color,#0f766e);background:color-mix(in srgb, var(--pill-color,#0f766e) 12%, white);color:var(--pill-color,#0f766e)}.legend-pill-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.planning-calendar-surface{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);overflow:hidden}.planning-calendar-surface .fc{color:var(--color-text);font-family:inherit;font-size:.85rem}.planning-calendar-surface .fc-header-toolbar{display:none!important}.planning-calendar-surface .fc-timegrid-axis,.planning-calendar-surface .fc-timegrid-slot-label{color:var(--color-text-soft);padding:0 8px;font-size:.72rem;font-weight:600;width:56px!important}.planning-calendar-surface .fc-col-header-cell{border-bottom:1.5px solid var(--color-border);background:#f8fafc;padding:8px 0}.planning-calendar-surface .fc-col-header-cell-cushion{color:var(--color-text-muted);padding:4px 6px;font-size:.8rem;font-weight:700;text-decoration:none}.planning-calendar-surface .fc-day-today{background:#0f766e0a!important}.planning-calendar-surface .fc-day-today .fc-col-header-cell-cushion{color:var(--color-primary)}.planning-calendar-surface .fc-timegrid-col.fc-day-today{background:#0f766e08!important}.planning-calendar-surface .fc-timegrid-now-indicator-line{border-width:2px;border-color:#dc2626}.planning-calendar-surface .fc-timegrid-now-indicator-arrow{border-color:#dc2626}.planning-calendar-surface .fc-timegrid-slot{border-color:#f1f5f9;height:44px!important}.planning-calendar-surface .fc-timegrid-slot.fc-timegrid-slot-minor{border-style:dashed;border-color:#f8fafc}.planning-calendar-surface .fc-scrollgrid,.planning-calendar-surface .fc-scrollgrid td,.planning-calendar-surface .fc-scrollgrid th{border-color:var(--color-border)}.planning-calendar-surface .fc-timegrid-event-harness{margin-right:2px!important}.planning-calendar-surface .fc-timegrid-event{cursor:pointer;overflow:hidden;background:0 0!important;border:none!important;border-radius:6px!important;box-shadow:0 1px 4px #0f172a1a!important}.planning-calendar-surface .fc-timegrid-event:hover{z-index:5;transform:translateY(-1px);box-shadow:0 4px 12px #0f172a2e!important}.planning-calendar-surface .fc-daygrid-event{cursor:pointer;border:none!important;border-radius:4px!important;margin:1px 2px!important}.planning-calendar-surface .fc-daygrid-day-number{color:var(--color-text-muted);padding:4px 8px;font-size:.8rem;font-weight:650}.planning-calendar-surface .fc-day-today .fc-daygrid-day-number{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin:4px;padding:0;display:flex}.planning-calendar-surface .fc-scroller{overflow-y:auto!important}.cal-event-block{border-left:3px solid #0000;border-radius:0 6px 6px 0;flex-direction:column;gap:2px;height:100%;padding:4px 6px;transition:filter .12s;display:flex;overflow:hidden}.cal-event-block:hover{filter:brightness(.96)}.cal-event-header{align-items:center;gap:5px;display:flex}.cal-event-status-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-event-time{color:inherit;opacity:.75;font-size:.7rem;font-weight:700}.cal-event-patient{color:inherit;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:700;overflow:hidden}.cal-event-meta{color:inherit;opacity:.65;white-space:nowrap;text-overflow:ellipsis;font-size:.7rem;overflow:hidden}.cal-event-month{border-left:2.5px solid #0000;border-radius:0 4px 4px 0;align-items:center;gap:5px;padding:2px 6px;display:flex;overflow:hidden}.cal-event-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px}.cal-event-month-title{white-space:nowrap;text-overflow:ellipsis;color:var(--color-text);font-size:.75rem;font-weight:650;overflow:hidden}.fc .fc-button-primary{background:var(--color-primary)!important;border-color:var(--color-primary)!important;border-radius:var(--radius-sm)!important;font-size:.82rem!important;font-weight:650!important}.fc .fc-button-primary:not(:disabled):hover{background:#0d6b64!important}.fc .fc-button-primary:not(:disabled).fc-button-active{background:#0d6b64!important;border-color:#0d6b64!important}.fc .fc-toolbar-title{color:var(--color-text);font-weight:700;font-size:1rem!important}.modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(4px);background:#0f172a80;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-panel{background:#fff;border-radius:8px;gap:18px;width:min(760px,100%);max-height:min(92vh,820px);padding:24px;display:grid;overflow:auto;box-shadow:0 24px 64px #0f172a33,0 0 0 1px #0f172a0f}.modal-header,.modal-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field-wide{grid-column:1/-1}.modal-actions{flex-wrap:wrap;justify-content:flex-end}@keyframes dialog-in{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);background:#0f172a8c;justify-content:center;align-items:center;padding:20px;animation:.15s backdrop-in;display:flex;position:fixed;inset:0}.dialog-card{background:#fff;border-radius:8px;flex-direction:column;width:100%;max-height:min(90vh,840px);animation:.2s cubic-bezier(.16,1,.3,1) dialog-in;display:flex;overflow:hidden;box-shadow:0 0 0 1px #0f172a0f,0 8px 24px #0f172a1a,0 32px 80px #0f172a2e}.dialog-header{border-bottom:1.5px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px 16px;display:flex}.dialog-title{color:var(--color-text);letter-spacing:0;margin:0;font-size:1.05rem;font-weight:750}.dialog-close{border:1.5px solid var(--color-border);background:var(--color-surface);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,border-color .12s,color .12s;display:flex}.dialog-close:hover{background:var(--color-bg);color:var(--color-text);border-color:#94a3b8}.dialog-body{flex:1;padding:20px 24px 24px;overflow-y:auto}.dashboard-page{gap:18px}.dashboard-hero,.patient-hero{color:#fff;background:linear-gradient(135deg,#0f766ef5,#172033f5),#172033;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;align-items:center;gap:18px;padding:24px;display:flex;overflow:hidden;box-shadow:0 18px 42px #0f172a1f}.dashboard-hero p,.patient-hero p,.patient-hero .eyebrow,.dashboard-hero .eyebrow{color:#ccfbf1}.practitioner-hero{background:linear-gradient(135deg,#2563ebf0,#0f766ee6),#172033}.dashboard-actions,.patient-hero-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.dashboard-hero .secondary-button,.patient-hero .secondary-button{color:#fff;background:#ffffff1f;border-color:#ffffff47}.dashboard-grid,.patient-snapshot{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);align-items:start;gap:16px;display:grid}.dashboard-panel-large,.dashboard-side-panel{align-content:start}.panel-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.appointment-feed{gap:10px;display:grid}.feed-item{background:#fbfdff;border:1px solid #edf2f7;border-radius:8px;grid-template-columns:76px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px;display:grid}.feed-time{color:#0f766e;background:#eaf6f4;border-radius:8px;place-items:center;gap:3px;min-height:62px;display:grid}.feed-time span,.feed-item span,.priority-list span,.snapshot-list span{color:#64748b;font-size:.85rem}.feed-item>div:nth-child(2){gap:4px;display:grid}.feed-item time{color:#475569;font-size:.85rem}.priority-list,.snapshot-list{gap:10px;display:grid}.priority-list article,.snapshot-list div{background:#fbfdff;border:1px solid #edf2f7;border-radius:8px;gap:4px;padding:12px;display:grid}.ds-page{flex-direction:column;gap:24px;display:flex}.ds-greeting{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.ds-greeting-title{letter-spacing:0;color:var(--color-text);margin:0 0 4px;font-size:1.65rem;font-weight:800}.ds-greeting-sub{color:var(--color-text-muted);text-transform:capitalize;margin:0;font-size:.9rem}.ds-greeting-actions{flex-wrap:wrap;gap:10px;display:flex}.ds-stats{grid-template-columns:repeat(5,1fr);gap:14px;display:grid}.ds-stat-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:flex-start;gap:14px;padding:18px 20px;transition:box-shadow .15s,transform .15s;display:flex}.ds-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.ds-stat-icon{border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.ds-stat-body{flex-direction:column;gap:2px;min-width:0;display:flex}.ds-stat-label{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;overflow:hidden}.ds-stat-value{letter-spacing:0;color:var(--color-text);font-size:1.9rem;font-weight:800;line-height:1}.ds-stat-sub{color:var(--color-text-soft);margin-top:2px;font-size:.75rem}.ds-body{grid-template-columns:1fr 340px;align-items:start;gap:18px;display:grid}.ds-panel{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.ds-panel-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.ds-panel-title{color:var(--color-text);align-items:center;gap:8px;font-size:.9rem;font-weight:700;display:flex}.ds-count-badge{background:var(--color-primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:20px;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex}.ds-see-all{color:var(--color-primary);align-items:center;gap:4px;font-size:.8rem;font-weight:600;text-decoration:none;transition:gap .15s;display:inline-flex}.ds-see-all:hover{gap:6px}.ds-agenda-panel{min-height:300px}.ds-agenda{flex-direction:column;display:flex}.ds-agenda-row{border-bottom:1px solid #f8fafc;align-items:center;gap:0;padding:14px 20px;transition:background .12s;display:flex}.ds-agenda-row:last-child{border-bottom:none}.ds-agenda-row:hover{background:#f8fafc}.ds-agenda-time{flex-direction:column;flex-shrink:0;gap:1px;width:58px;display:flex}.ds-agenda-time strong{color:var(--color-text);font-size:.9rem;font-weight:700}.ds-agenda-time span{color:var(--color-text-soft);font-size:.75rem}.ds-agenda-divider{background:var(--color-border);border-radius:999px;flex-shrink:0;width:2px;height:36px;margin:0 14px}.ds-agenda-info{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.ds-agenda-patient{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.9rem;font-weight:650;overflow:hidden}.ds-agenda-meta{color:var(--color-text-muted);align-items:center;gap:8px;font-size:.78rem;display:flex}.ds-room-pill{background:var(--color-primary-mid);color:var(--color-primary);border-radius:999px;align-items:center;padding:1px 8px;font-size:.72rem;font-weight:650;display:inline-flex}.ds-appt-status{white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;margin-left:12px;padding:3px 10px;font-size:.73rem;font-weight:700;display:inline-flex}.ds-appt-status.appt-status--confirmed{color:#166534;background:#dcfce7}.ds-appt-status.appt-status--scheduled{color:#a16207;background:#fef9c3}.ds-appt-status.appt-status--completed{color:#0f766e;background:#f0fdfa}.ds-appt-status.appt-status--cancelled{color:#b91c1c;background:#fee2e2}.ds-appt-status.appt-status--noshow{color:#475569;background:#f1f5f9}.ds-empty{color:var(--color-text-soft);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:48px 24px;display:flex}.ds-empty svg{opacity:.25}.ds-empty p{margin:0;font-size:.9rem}.ds-right{flex-direction:column;gap:14px;display:flex}.ds-quick-grid{grid-template-columns:1fr 1fr;gap:10px;padding:16px;display:grid}.ds-quick-card{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);text-align:center;cursor:pointer;flex-direction:column;align-items:center;gap:10px;padding:16px 12px;font-size:.8rem;font-weight:650;text-decoration:none;transition:border-color .15s,background .15s,transform .12s;display:flex}.ds-quick-card:hover{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary);transform:translateY(-1px)}.ds-quick-icon{border-radius:8px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.ds-week-panel{padding:0}.ds-week-strip{justify-content:space-around;gap:4px;padding:16px;display:flex}.ds-week-day{border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:4px;min-width:36px;padding:8px 6px;transition:background .12s;display:flex}.ds-week-day:hover{background:var(--color-bg)}.ds-week-day.current{background:var(--color-primary-light)}.ds-week-day-name{text-transform:uppercase;color:var(--color-text-soft);letter-spacing:.05em;font-size:.68rem;font-weight:700}.ds-week-day.current .ds-week-day-name{color:var(--color-primary)}.ds-week-day-num{color:var(--color-text);font-size:.88rem;font-weight:700}.ds-week-day.current .ds-week-day-num{color:var(--color-primary)}.ds-week-bar-wrap{background:var(--color-border);border-radius:999px;flex-direction:column;justify-content:flex-end;width:4px;height:36px;display:flex;overflow:hidden}.ds-week-bar{background:var(--color-primary);border-radius:999px;width:100%;min-height:4px;transition:height .4s}.ds-week-day.current .ds-week-bar{background:var(--color-primary)}.ds-week-day-count{color:var(--color-text-muted);font-size:.72rem;font-weight:700}.ds-week-legend{border-top:1px solid var(--color-border);color:var(--color-text-muted);align-items:center;gap:14px;padding:10px 16px;font-size:.72rem;display:flex}.legend-dot{border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.legend-dot.confirmed{background:#16a34a}.legend-dot.scheduled{background:#eab308}.ds-upcoming-list{flex-direction:column;padding:8px 0;display:flex}.ds-upcoming-row{border-bottom:1px solid #f8fafc;align-items:center;gap:12px;padding:10px 20px;transition:background .1s;display:flex}.ds-upcoming-row:last-child{border-bottom:none}.ds-upcoming-row:hover{background:#f8fafc}.ds-upcoming-date{flex-direction:column;flex-shrink:0;align-items:center;gap:1px;width:44px;display:flex}.ds-upcoming-date strong{color:var(--color-primary);font-size:.8rem;font-weight:700}.ds-upcoming-date span{color:var(--color-text-soft);font-size:.68rem}.ds-upcoming-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.ds-upcoming-info span:first-child{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;font-size:.83rem;font-weight:650;overflow:hidden}.ds-upcoming-meta{white-space:nowrap;text-overflow:ellipsis;font-size:.73rem;overflow:hidden;color:var(--color-text-muted)!important}.patient-page{align-items:start}.patient-filters{margin-bottom:14px}.patient-list{gap:12px;display:grid}.patient-card{background:#fff;border:1px solid #dbe3ef;border-radius:8px;justify-content:space-between;gap:16px;padding:16px;transition:border-color .18s,box-shadow .18s,transform .18s;display:flex}.patient-card:hover{border-color:#99f6e4;transform:translateY(-1px);box-shadow:0 16px 34px #0f172a14}.patient-card h2{font-size:1.02rem}.patient-card p{color:#475569;margin-top:6px}.patient-card span{color:#64748b;margin-top:8px;font-size:.84rem;display:inline-block}.patient-card-actions{flex-direction:column;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.patient-create-form h2,.followup-form h2{align-items:center;gap:8px;display:flex}.patient-detail{gap:18px}.patient-hero{background:linear-gradient(135deg,#0f172af5,#0f766eeb),#172033;align-items:stretch}.patient-avatar{background:#ffffff1f;border:1px solid #ffffff38;border-radius:8px;flex:none;place-items:center;width:72px;height:72px;display:grid}.patient-hero-main{flex:1;align-content:center;gap:8px;min-width:0;display:grid}.patient-meta{flex-wrap:wrap;gap:8px;display:flex}.patient-meta span{color:#e0f2fe;background:#ffffff1a;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:.88rem;display:inline-flex}.patient-hero-actions{flex-direction:column;align-content:center;align-items:center}.clinical-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.clinical-card{background:#fff;border:1px solid #dbe3ef;border-radius:8px;gap:8px;padding:16px;display:grid;box-shadow:0 12px 30px #0f172a0a}.clinical-card svg{color:#0f766e}.clinical-card span{color:#64748b;font-size:.86rem}.clinical-card strong{color:#172033;font-size:1.1rem}.snapshot-panel{min-height:100%}.rich-note{color:#334155;line-height:1.6}.patient-record-grid{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);align-items:start;gap:16px;display:grid}.patient-profile-form,.followup-form{align-content:start}.timeline{gap:12px;display:grid}.timeline-item{background:#f8fafc;border-left:3px solid #0f766e;border-radius:8px;gap:10px;padding:14px 14px 14px 16px;display:grid}.timeline-item>div,.timeline-item footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.timeline-item time,.timeline-item footer span{color:#64748b;font-size:.84rem}.timeline-item h3{margin:0;font-size:1rem}.timeline-item p{color:#334155;line-height:1.5}.timeline-item strong{color:#0f766e;font-size:.9rem}@media (width<=900px){.login-panel{grid-template-columns:1fr}.login-intro{gap:24px;min-height:auto}.app-shell{grid-template-columns:1fr}.sidebar{z-index:20;border-right:0;border-bottom:1px solid var(--color-border);height:auto;padding:0;position:sticky;top:0}.sidebar-nav{flex-direction:row;padding:8px;overflow-x:auto}.nav-section{flex-direction:row;align-items:center;gap:2px;margin-bottom:0}.nav-section-label{display:none}.nav-item{flex:none;min-height:36px}.sidebar-context,.sidebar-footer{display:none}.two-column,.patient-record-grid,.dashboard-grid,.patient-snapshot{grid-template-columns:1fr}.ds-stats{grid-template-columns:repeat(2,1fr)}.ds-body{grid-template-columns:1fr}.side-form{position:static}}@media (width<=640px){.content{padding:16px}.topbar{padding:0 16px}.text-button span{display:none}.page-heading,.list-row,.patient-card,.dashboard-hero,.patient-hero{flex-direction:column;align-items:stretch}.patient-avatar{width:56px;height:56px}.feed-item{grid-template-columns:1fr}.patient-card-actions{align-items:flex-start}.form-grid{grid-template-columns:1fr}th,td{padding:10px}}@media (width<=768px){.planning-toolbar{flex-direction:column;align-items:flex-start;gap:8px}.planning-filters{width:100%;margin-left:0}.planning-filter-select select{width:auto;max-width:100%}.planning-header{flex-direction:column;align-items:stretch}}.patients-page{flex-direction:column;gap:16px;display:flex}.patients-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.patients-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.patients-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.patients-layout{grid-template-columns:1fr 300px;align-items:flex-start;gap:20px;display:grid}.patients-search-bar{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;padding:10px 14px;display:flex}.patients-search-input{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:999px;flex:1;align-items:center;min-width:200px;padding:6px 36px 6px 34px;display:flex;position:relative}.patients-search-input>svg{color:var(--color-text-soft);pointer-events:none;position:absolute;left:11px}.patients-search-input input{color:var(--color-text);width:100%;box-shadow:none;background:0 0;border:none;outline:none;padding:0;font-size:.85rem}.patients-search-input input::placeholder{color:var(--color-text-soft)}.patients-search-clear{color:var(--color-text-soft);cursor:pointer;background:0 0;border:none;border-radius:50%;align-items:center;padding:2px;transition:color .1s;display:flex;position:absolute;right:10px}.patients-search-clear:hover{color:var(--color-text)}.patients-status-group{border:1.5px solid var(--color-border);border-radius:999px;flex-shrink:0;display:flex;overflow:hidden}.patients-status-btn{color:var(--color-text-muted);cursor:pointer;border:none;border-right:1.5px solid var(--color-border);white-space:nowrap;background:0 0;padding:5px 14px;font-size:.8rem;font-weight:650;transition:background .12s,color .12s}.patients-status-btn:last-child{border-right:none}.patients-status-btn:hover{background:var(--color-bg);color:var(--color-text)}.patients-status-btn.active{background:var(--color-primary);color:#fff}.patients-list{flex-direction:column;gap:8px;display:flex}.patient-row{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:14px;padding:14px 16px;transition:box-shadow .15s,transform .12s,border-color .12s;display:flex}.patient-row:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-1px)}.patient-avatar-circle{color:#fff;letter-spacing:.03em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:.85rem;font-weight:800;display:flex}.patient-row-body{flex:1;min-width:0}.patient-row-top{align-items:center;gap:10px;margin-bottom:2px;display:flex}.patient-row-name{color:var(--color-text);font-size:.92rem;font-weight:750;text-decoration:none;transition:color .12s}.patient-row-name:hover{color:var(--color-primary)}.patient-row-meta{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:2px;font-size:.8rem;overflow:hidden}.patient-row-footer{color:var(--color-text-soft);font-size:.73rem}.patient-row-actions{flex-shrink:0;gap:8px;display:flex}.patients-empty{background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:60px 20px;display:flex}.patients-empty svg{opacity:.35}.patients-empty p{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.patients-empty span{color:var(--color-text-muted);font-size:.8rem}.patients-create-form{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:14px;padding:20px;display:flex;position:sticky;top:80px}.side-form-title{color:var(--color-text);align-items:center;gap:8px;margin:0 0 4px;font-size:.95rem;font-weight:750;display:flex}@media (width<=900px){.patients-layout{grid-template-columns:1fr}.patients-create-form{position:static}}@media (width<=640px){.patients-search-bar{flex-direction:column;align-items:stretch}.patients-search-input{min-width:0}.patient-row-actions{flex-direction:column}}.appts-page{flex-direction:column;gap:16px;display:flex}.appts-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.appts-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.appts-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.appts-table-wrap{border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.appts-table{border-collapse:collapse;width:100%}.appts-table thead tr{background:#f8fafc}.appts-table th{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);text-align:left;border-bottom:1.5px solid var(--color-border);white-space:nowrap;padding:11px 14px;font-size:.75rem;font-weight:750}.appts-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;padding:12px 14px;font-size:.84rem}.appts-row{cursor:pointer;transition:background .12s}.appts-row:hover{background:#0f766e0a}.appts-row:last-child td{border-bottom:none}.appts-patient-link{color:var(--color-primary);font-weight:700;text-decoration:none}.appts-patient-link:hover{text-decoration:underline}.appts-patient-name{color:var(--color-text);font-weight:600}.appts-date-cell{color:var(--color-text-muted);white-space:nowrap;font-size:.82rem}.appts-room-pill{background:var(--color-primary-light,#0f766e14);color:var(--color-primary);white-space:nowrap;border:1px solid #0f766e33;border-radius:999px;padding:2px 10px;font-size:.77rem;font-weight:650;display:inline-block}.appts-kine-cell{color:var(--color-text-muted);font-size:.82rem}.appts-price-cell{color:var(--color-text);white-space:nowrap;font-weight:700}.appts-pdf-btn{border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;align-items:center;padding:4px 6px;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.appts-pdf-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#0f766e0f}.appts-empty{background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:60px 20px;display:flex}.appts-empty svg{opacity:.35}.appts-empty p{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.appts-empty span{color:var(--color-text-muted);font-size:.8rem}@media (width<=768px){.appts-table-wrap{overflow-x:auto}.appts-header{flex-direction:column}}.pract-page{flex-direction:column;gap:16px;display:flex}.pract-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.pract-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.pract-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.pract-table-wrap{border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.pract-table{border-collapse:collapse;width:100%}.pract-table thead tr{background:#f8fafc}.pract-table th{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-muted);text-align:left;border-bottom:1.5px solid var(--color-border);white-space:nowrap;padding:11px 14px;font-size:.75rem;font-weight:750}.pract-table td{color:var(--color-text);border-bottom:1px solid var(--color-border);vertical-align:middle;padding:12px 14px;font-size:.84rem}.pract-row:last-child td{border-bottom:none}.pract-row:hover{background:#0f766e08}.pract-name-cell{align-items:center;gap:12px;display:flex}.pract-avatar{color:#fff;letter-spacing:.03em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.82rem;font-weight:800;display:flex}.pract-full-name{color:var(--color-text);font-size:.88rem;font-weight:700}.pract-phone{color:var(--color-text-soft);margin-top:1px;font-size:.75rem}.pract-email{color:var(--color-text-muted);font-size:.82rem}.pract-no-room{color:var(--color-text-soft)}.pract-rooms{flex-wrap:wrap;gap:4px;display:flex}.pract-modal{width:100%;max-width:560px}.pract-form{flex-direction:column;gap:14px;display:flex}@media (width<=600px){.pract-table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.pract-header{flex-direction:column}.pract-table,.pract-table tbody{display:block}.pract-table thead{display:none}.pract-table tbody{gap:12px;display:grid}.pract-table .pract-row{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.pract-table td{border:0;align-items:center;gap:8px;min-width:0;padding:7px 14px;display:flex}.pract-table td:before{content:attr(data-label);color:var(--color-text-soft);text-transform:uppercase;font-size:.66rem;font-weight:750}.pract-table .pract-name-cell{border-bottom:1px solid var(--color-border);grid-column:1/-1;padding-top:14px;padding-bottom:12px}.pract-table .pract-name-cell:before{display:none}.pract-table .pract-email,.pract-table td:nth-child(3),.pract-table .actions-cell{grid-column:1/-1}.pract-table .pract-email{overflow-wrap:anywhere;align-items:flex-start;padding-top:11px}.pract-table td:nth-child(3){align-items:flex-start}.pract-table td:nth-child(4){justify-content:flex-start}.pract-table td:nth-child(5){justify-content:flex-end}.pract-table .actions-cell{border-top:1px solid var(--color-border);justify-content:flex-start;padding-top:11px;padding-bottom:12px}.pract-table .actions-cell:before{display:none}}.rooms-page{flex-direction:column;gap:16px;display:flex}.rooms-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.rooms-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.rooms-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.rooms-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;display:grid}.room-card-premium{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:16px;transition:box-shadow .15s,transform .12s,border-color .12s;display:flex}.room-card-premium:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.room-card-premium.inactive{opacity:.65}.room-card-top{justify-content:space-between;align-items:center;display:flex}.room-card-icon{background:var(--color-primary-light,#0f766e1a);width:36px;height:36px;color:var(--color-primary);border-radius:8px;justify-content:center;align-items:center;display:flex}.room-card-name{color:var(--color-text);font-size:.97rem;font-weight:750}.room-card-desc{color:var(--color-text-muted);font-size:.8rem;line-height:1.5}.room-card-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.rooms-empty{background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:60px 20px;display:flex}.rooms-empty svg{opacity:.35}.rooms-empty p{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.rooms-empty span{font-size:.8rem}.ra-page{flex-direction:column;gap:16px;display:flex}.ra-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.ra-title{letter-spacing:0;color:var(--color-text);align-items:center;gap:10px;margin:0 0 4px;font-size:1.5rem;font-weight:800;display:flex}.ra-sub{color:var(--color-text-muted);margin:0;font-size:.83rem}.ra-legend{flex-wrap:wrap;gap:16px;display:flex}.ra-legend-item{color:var(--color-text-muted);align-items:center;gap:6px;font-size:.78rem;font-weight:650;display:flex}.ra-legend-dot{border-radius:50%;width:8px;height:8px}.ra-legend-dot.on{background:var(--color-primary)}.ra-grid{flex-direction:column;gap:14px;display:flex}.ra-card{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.ra-card-header{border-bottom:1.5px solid var(--color-border);background:#f8fafc;align-items:center;gap:12px;padding:14px 18px;display:flex}.ra-avatar{color:#fff;letter-spacing:.03em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:.82rem;font-weight:800;display:flex}.ra-card-name{color:var(--color-text);font-size:.92rem;font-weight:750;line-height:1.2}.ra-card-email{color:var(--color-text-soft);margin-top:1px;font-size:.75rem}.ra-room-list{flex-direction:column;display:flex}.ra-room-header-row{border-bottom:1px solid var(--color-border);background:#fafbfc;grid-template-columns:1fr repeat(3,120px);padding:8px 18px;display:grid}.ra-col-room{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-soft);font-size:.7rem;font-weight:750}.ra-col-perm{letter-spacing:.07em;text-transform:uppercase;color:var(--color-text-soft);justify-content:center;align-items:center;font-size:.7rem;font-weight:750;display:flex}.ra-room-row{border-bottom:1px solid var(--color-border);grid-template-columns:1fr repeat(3,120px);align-items:center;padding:12px 18px;transition:background .1s;display:grid}.ra-room-row:last-child{border-bottom:none}.ra-room-row:hover{background:#0f766e06}.ra-room-row.has-access{background:#0f766e08}.ra-room-name{color:var(--color-text);font-size:.87rem;font-weight:650}.ra-toggle{cursor:pointer;border:none;border-radius:999px;outline:none;flex-shrink:0;width:36px;height:20px;transition:background .2s;position:relative}.ra-toggle.on{background:var(--color-primary)}.ra-toggle.off{background:#cbd5e1}.ra-toggle:disabled{opacity:.35;cursor:not-allowed}.ra-toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .2s cubic-bezier(.34,1.56,.64,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.ra-toggle.on:after{transform:translate(16px)}.ra-empty{color:var(--color-text-soft);padding:20px 18px;font-size:.82rem}.ra-empty-page{background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);text-align:center;flex-direction:column;align-items:center;gap:8px;padding:60px 20px;display:flex}.ra-empty-page svg{opacity:.35}.ra-empty-page p{color:var(--color-text);margin:0;font-size:.95rem;font-weight:700}.folder-status-control{gap:4px;min-width:150px;display:grid}.folder-status-control>span{color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:750}.folder-status-control select{background:var(--color-surface);min-height:38px;padding:7px 30px 7px 10px}.patient-overview-grid,.files-layout{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr);gap:16px;margin-top:16px;display:grid}.section-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.section-heading h2{margin:2px 0 0}.overview-summary{border-top:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.overview-summary article{gap:6px;min-width:0;padding:18px 16px 4px 0;display:grid}.overview-summary article+article{border-left:1px solid var(--color-border);padding-left:16px}.overview-summary span,.overview-summary small{color:var(--color-text-muted);font-size:.76rem}.overview-summary strong{color:var(--color-text);overflow-wrap:anywhere;font-size:.94rem}.upcoming-stack{display:grid}.upcoming-stack article{border-top:1px solid var(--color-border);grid-template-columns:46px 1fr;align-items:center;gap:12px;padding:11px 0;display:grid}.upcoming-stack article>div:last-child{gap:3px;min-width:0;display:grid}.upcoming-stack article span{color:var(--color-text-muted);overflow-wrap:anywhere;font-size:.76rem}.upcoming-date{border-right:1px solid var(--color-border);justify-items:center;padding-right:10px;display:grid}.upcoming-date strong{color:var(--color-primary);font-size:1.15rem}.upload-panel{align-self:start;gap:14px;display:grid}.patient-dropzone{min-height:220px;color:var(--color-text-muted);cursor:pointer;text-align:center;background:#f8fafc;border:1.5px dashed #9aa7b8;border-radius:8px;place-items:center;gap:8px;padding:24px;transition:border-color .15s,background .15s;display:grid}.patient-dropzone:hover,.patient-dropzone.drag-active{border-color:var(--color-primary);background:#0f766e0f}.patient-dropzone.uploading{cursor:wait;opacity:.7}.patient-dropzone strong{color:var(--color-text)}.patient-dropzone>span:not(.secondary-button){font-size:.78rem}.patient-dropzone input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.patient-files-list{display:grid}.patient-file-row{border-top:1px solid var(--color-border);grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:13px 0;display:grid}.patient-file-icon{width:38px;height:38px;color:var(--color-primary);background:#0f766e17;border-radius:8px;place-items:center;display:grid}.patient-file-main{gap:3px;min-width:0;display:grid}.patient-file-main strong,.patient-file-main span,.patient-file-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.patient-file-main span,.patient-file-main small{color:var(--color-text-muted);font-size:.76rem}.patient-files-empty{min-height:250px;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;gap:7px;display:grid}.patient-files-empty svg{color:#9aa7b8}.patient-files-empty strong{color:var(--color-text)}.quick-patient-action{border:1px solid var(--color-border);background:#f8fafc;border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:10px 16px;padding:12px 14px;display:grid}.quick-patient-action>div{gap:2px;display:grid}.quick-patient-action span{color:var(--color-text-muted);font-size:.75rem}.quick-patient-action .field-error{color:#b42318;grid-column:1/-1}@media (width<=640px){.ra-room-header-row,.ra-room-row{grid-template-columns:1fr repeat(3,80px)}.ra-col-perm{font-size:.62rem}}@media (width<=900px){.patient-overview-grid,.files-layout,.overview-summary{grid-template-columns:1fr}.overview-summary article+article{border-left:0;border-top:1px solid var(--color-border);padding-left:0}}@media (width<=640px){.patient-file-row{grid-template-columns:38px minmax(0,1fr)}.patient-file-row .row-actions{grid-column:2;justify-self:start}.folder-status-control{width:100%}.quick-patient-action{grid-template-columns:1fr}}.plan-card-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.plan-card.is-inactive{opacity:.68}.settings-page,.activity-page{gap:22px;max-width:1320px;margin:0 auto;display:grid}.settings-hero,.activity-heading{justify-content:space-between;align-items:flex-end;gap:24px;padding:8px 2px 2px;display:flex}.settings-hero h1,.activity-heading h1{letter-spacing:0;margin:5px 0 6px;font-size:clamp(1.65rem,3vw,2.25rem)}.settings-hero p,.activity-heading p{color:var(--color-text-muted);max-width:680px;margin:0}.settings-security,.activity-count{color:#16645b;background:#f3f9f7;border:1px solid #cde1dc;border-radius:8px;align-items:center;gap:12px;width:min(100%,350px);padding:13px 15px;display:flex}.settings-security div,.activity-count div{gap:2px;display:grid}.settings-security strong,.activity-count strong{font-size:.85rem}.settings-security span,.activity-count span{color:#5b746f;font-size:.73rem;line-height:1.4}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.settings-card{border-radius:8px;gap:16px;padding:22px;display:grid}.settings-company{grid-column:1/-1}.settings-card>button{justify-self:start;margin-top:2px}.settings-card label{color:var(--color-text);gap:7px;font-size:.78rem;font-weight:700;display:grid}.settings-card label small{color:var(--color-text-muted);font-size:.68rem;font-weight:500}.settings-card-head{border-bottom:1px solid var(--color-border);align-items:center;gap:12px;min-height:44px;padding-bottom:15px;display:flex}.settings-card-head>div:nth-child(2){min-width:0}.settings-card-head h2{letter-spacing:0;margin:0 0 3px;font-size:1rem}.settings-card-head p{color:var(--color-text-muted);margin:0;font-size:.75rem}.settings-icon{color:#0b6b63;background:#e8f3f1;border-radius:8px;flex:0 0 40px;place-items:center;height:40px;display:grid}.settings-icon.warm{color:#8a5b13;background:#fff3d9}.settings-icon.blue{color:#245a88;background:#e9f2fa}.settings-live{color:#14715f;align-items:center;gap:5px;margin-left:auto;font-size:.72rem;font-weight:800;display:inline-flex}.activity-count{width:auto;min-width:180px}.activity-count strong{font-size:1.1rem;line-height:1}.activity-filters{border-radius:8px;grid-template-columns:minmax(260px,1fr) minmax(180px,240px) minmax(180px,240px) auto;align-items:center;gap:10px;padding:14px;display:grid}.activity-filters label{border:1px solid var(--color-border);background:var(--color-surface);min-width:0;height:40px;color:var(--color-text-muted);border-radius:6px;align-items:center;gap:8px;padding:0 11px;display:flex}.activity-filters input,.activity-filters select{width:100%;min-width:0;height:36px;box-shadow:none;background:0 0;border:0;padding:0}.activity-filters input:focus,.activity-filters select:focus{box-shadow:none;outline:0}.activity-stream{border-radius:8px;padding:0;overflow:hidden}.activity-stream-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding:19px 22px;display:flex}.activity-stream-head h2{letter-spacing:0;margin:0 0 3px;font-size:1rem}.activity-stream-head p{color:var(--color-text-muted);margin:0;font-size:.74rem}.activity-stream-head>svg{color:#0b6b63}.activity-list article{border-bottom:1px solid var(--color-border);grid-template-columns:24px minmax(250px,1fr) minmax(130px,220px) 145px;align-items:center;gap:13px;min-height:70px;padding:12px 22px;transition:background-color .15s;display:grid}.activity-list article:hover{background:#f8faf9}.activity-marker{align-self:stretch;place-items:center;display:grid;position:relative}.activity-marker:before{content:"";background:#d9e6e2;width:1px;position:absolute;top:-13px;bottom:-13px;left:50%}.activity-list article:first-child .activity-marker:before{top:50%}.activity-list article:last-child .activity-marker:before{bottom:50%}.activity-marker span{z-index:1;background:#20a38f;border:2px solid #fff;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 2px #bde2d9}.activity-main{gap:7px;min-width:0;display:grid}.activity-main>div{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.activity-main strong{font-size:.84rem}.activity-main p{min-width:0;color:var(--color-text-muted);align-items:center;gap:6px;margin:0;font-size:.73rem;display:flex}.activity-main p span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-company{min-width:0;color:var(--color-text-muted);align-items:center;gap:7px;font-size:.75rem;display:flex}.activity-company span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.activity-list time{color:var(--color-text-muted);text-align:right;font-size:.71rem}.activity-loading,.activity-empty{min-height:260px;color:var(--color-text-muted);place-content:center;justify-items:center;gap:8px;font-size:.8rem;display:grid}.activity-empty svg{color:#9fc4bb}.activity-empty strong{color:var(--color-text)}.activity-pagination{color:var(--color-text-muted);background:#f8faf9;justify-content:space-between;align-items:center;gap:16px;padding:12px 22px;font-size:.73rem;display:flex}.activity-pagination>div{align-items:center;gap:9px;display:flex}@media (width<=980px){.activity-filters{grid-template-columns:1fr 1fr}.activity-search{grid-column:1/-1}.activity-list article{grid-template-columns:24px minmax(0,1fr) 130px}.activity-company{display:none}}@media (width<=720px){.settings-hero,.activity-heading{flex-direction:column;align-items:stretch}.settings-security,.activity-count{width:100%}.settings-grid{grid-template-columns:1fr}.settings-company{grid-column:auto}.settings-card{padding:18px}.settings-card .form-grid,.activity-filters{grid-template-columns:1fr}.activity-search{grid-column:auto}.activity-filters button{width:100%}.activity-list article{grid-template-columns:22px minmax(0,1fr);padding:13px 15px}.activity-list time{text-align:left;grid-column:2}.activity-main p{flex-wrap:wrap;align-items:flex-start}.activity-pagination{padding:12px 15px}}@media (width<=900px){.login-page{grid-template-columns:1fr}.login-workspace{display:none}.login-access{min-height:100vh;padding:96px 24px 60px}.login-mobile-brand{color:#173431;display:block;position:absolute;top:26px;left:24px}.app-shell{display:block}.sidebar{z-index:60;border-right:1px solid var(--color-border);border-bottom:0;width:min(290px,86vw);height:100vh;position:fixed;inset:0 auto 0 0;transform:translate(-102%)}.sidebar.open{transform:translate(0)}.main-area{width:100%}.topbar{min-height:64px}}@media (width<=640px){.login-form-heading h2{font-size:1.5rem}.login-form-wrap{gap:24px}.login-legal{bottom:16px}}.invoice-heading{align-items:flex-end}.invoice-kpis-four{grid-template-columns:repeat(4,minmax(0,1fr))}.invoice-kpis-four article{min-height:88px}.invoice-kpis-four .overdue{border-top:3px solid #dc5f5f}.invoice-kpis-four .overdue svg{color:#b42323}.invoice-creator{border-left:3px solid #0b6b63;gap:16px;padding:20px;display:grid}.invoice-creator-empty{color:#17675e;background:#f5faf8;border:1px dashed #b9d4cd;align-items:center;gap:11px;padding:16px;display:flex}.invoice-creator-empty>div{gap:2px;display:grid}.invoice-creator-empty span{color:var(--color-text-muted);font-size:.76rem}.invoice-workspace{padding:0;overflow:hidden}.invoice-toolbar{border-bottom:1px solid var(--color-border);background:#fff;grid-template-columns:minmax(280px,1fr) minmax(180px,220px) minmax(190px,230px);align-items:center;gap:10px;padding:14px 16px;display:grid}.invoice-toolbar label{border:1px solid var(--color-border);min-width:0;height:40px;color:var(--color-text-muted);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:0 11px;display:flex}.invoice-toolbar input,.invoice-toolbar select{width:100%;min-width:0;height:36px;box-shadow:none;background:0 0;border:0;outline:0;padding:0}.invoice-table-head,.invoice-table article{grid-template-columns:minmax(150px,.85fr) minmax(170px,1.05fr) 125px 145px 145px minmax(145px,auto);align-items:center;gap:14px;display:grid}.invoice-table-head{border-bottom:1px solid var(--color-border);min-height:40px;color:var(--color-text-muted);text-transform:uppercase;background:#f8faf9;padding:0 16px;font-size:.67rem;font-weight:800}.invoice-table article{border-bottom:1px solid var(--color-border);min-height:74px;padding:12px 16px;transition:background-color .14s;position:relative}.invoice-table article:hover{background:#f9fbfa}.invoice-table article.is-overdue:before{content:"";background:#dc5f5f;width:3px;position:absolute;inset:0 auto 0 0}.invoice-table article>div{min-width:0}.invoice-identity{min-width:0;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.invoice-identity>span:last-child,.invoice-patient,.invoice-due-date,.invoice-amount,.invoice-payment-state{gap:3px;min-width:0;display:grid}.invoice-document{color:#0b6b63;background:#e8f3f1;border-radius:7px;flex:0 0 36px;place-items:center;height:36px;display:grid}.invoice-table strong{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.invoice-table small,.invoice-table span{color:var(--color-text-muted);font-size:.7rem}.invoice-due-date span{color:#b42323;font-weight:700}.invoice-payment-state small{margin-top:2px}.invoice-row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.invoice-pay-button{min-height:34px;padding:0 10px;font-size:.72rem}.invoice-empty{min-height:260px;color:var(--color-text-muted);place-content:center;justify-items:center;gap:7px;display:grid}.invoice-empty svg{color:#9ebdb6}.invoice-empty strong{color:var(--color-text);font-size:.88rem}.invoice-empty span{font-size:.74rem}.invoice-table-footer{min-height:46px;color:var(--color-text-muted);background:#f8faf9;justify-content:space-between;align-items:center;padding:0 16px;font-size:.72rem;display:flex}.invoice-table-footer strong{color:#0b6b63}.dialog-card{border-radius:8px}.invoice-detail{gap:20px;display:grid}.invoice-detail-loading{min-height:320px;color:var(--color-text-muted);place-items:center;display:grid}.invoice-detail-summary{color:#fff;background:#173431;border-radius:7px;justify-content:space-between;align-items:center;gap:24px;padding:18px 20px;display:flex}.invoice-detail-summary>div{gap:4px;display:grid}.invoice-detail-summary .eyebrow{color:#a9d7ce}.invoice-detail-summary strong{font-size:1.55rem;line-height:1.1}.invoice-detail-summary small{color:#c6d7d3;font-size:.72rem}.invoice-balance{text-align:right;justify-items:end}.invoice-balance>strong{font-size:1.3rem}.invoice-balance .badge{margin-bottom:3px}.invoice-detail-actions{border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:18px;display:flex}.invoice-detail-actions .danger{margin-left:auto}.invoice-payment-form{background:#f2f8f6;border-block:1px solid #b9d8d1;gap:13px;padding:18px;display:grid}.invoice-payment-form label{color:var(--color-text);gap:6px;font-size:.75rem;font-weight:750;display:grid}.invoice-payment-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.invoice-payment-head>div{color:#0b6b63;align-items:center;gap:10px;display:flex}.invoice-payment-head>div>div{gap:2px;display:grid}.invoice-payment-head span{color:var(--color-text-muted);font-size:.72rem}.payment-choice{flex-wrap:wrap;gap:7px;display:flex}.invoice-detail-section{gap:13px;display:grid}.invoice-detail-title{align-items:center;gap:10px;display:flex}.invoice-detail-title>svg{color:#0b6b63}.invoice-detail-title>div{gap:2px;display:grid}.invoice-detail-title h3{margin:0;font-size:.9rem}.invoice-detail-title span{color:var(--color-text-muted);font-size:.7rem}.invoice-lines{border-block:1px solid var(--color-border);display:grid}.invoice-lines>div{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(220px,1fr) 55px 120px 120px;align-items:center;gap:10px;min-height:45px;font-size:.76rem;display:grid}.invoice-lines>div:last-child{border-bottom:0}.invoice-lines>div>:not(:first-child){text-align:right}.invoice-lines span{color:var(--color-text-muted)}.invoice-lines strong{color:var(--color-text)}.invoice-totals{justify-content:end;gap:8px;min-width:260px;margin-left:auto;display:grid}.invoice-totals span{color:var(--color-text-muted);justify-content:space-between;gap:45px;font-size:.76rem;display:flex}.invoice-totals strong{color:var(--color-text)}.invoice-totals .grand-total{border-top:1px solid var(--color-border);color:#0b6b63;padding-top:9px;font-size:.9rem;font-weight:800}.invoice-payment-history{border-block:1px solid var(--color-border);display:grid}.invoice-payment-history article{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:64px;padding:10px 0;display:grid}.invoice-payment-history article:last-child{border-bottom:0}.payment-status-icon{color:#0b6b63;background:#e8f3f1;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.invoice-payment-history article>div:nth-child(2){gap:3px;display:grid}.invoice-payment-history article span,.invoice-payment-history article small{color:var(--color-text-muted);font-size:.7rem}.payment-corrections{gap:5px;display:flex}.invoice-no-payment{border-block:1px solid var(--color-border);min-height:125px;color:var(--color-text-muted);place-content:center;justify-items:center;gap:5px;display:grid}.invoice-no-payment svg{color:#9ebdb6}.invoice-no-payment strong{color:var(--color-text);font-size:.82rem}.invoice-no-payment span{font-size:.7rem}.invoice-note{background:#fff9ea;border-left:3px solid #d3a33c;padding:14px 16px}.invoice-note strong{font-size:.78rem}.invoice-note p{color:var(--color-text-muted);margin:5px 0 0;font-size:.75rem;line-height:1.5}@media (width<=1100px){.invoice-table-head{display:none}.invoice-table article{grid-template-columns:minmax(170px,1fr) minmax(160px,1fr) 130px 145px}.invoice-due-date{display:none}.invoice-row-actions{grid-area:1/4}}@media (width<=800px){.invoice-kpis-four{grid-template-columns:repeat(2,1fr)}.invoice-kpis-four article:nth-child(3){border-left:0}.invoice-toolbar{grid-template-columns:1fr 1fr}.invoice-search{grid-column:1/-1}.invoice-table article{grid-template-columns:1fr auto;gap:12px}.invoice-identity{grid-column:1}.invoice-row-actions{grid-area:1/2}.invoice-patient{grid-column:1}.invoice-amount{text-align:right;grid-column:2}.invoice-payment-state{border-top:1px solid var(--color-border);grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:9px;display:flex}.invoice-detail-actions .danger{margin-left:0}}@media (width<=600px){.invoice-heading{align-items:stretch}.invoice-heading>button{width:100%}.invoice-kpis-four{grid-template-columns:1fr}.invoice-kpis-four article+article{border-left:0}.invoice-toolbar{grid-template-columns:1fr}.invoice-search{grid-column:auto}.invoice-table article{padding:14px}.invoice-row-actions .invoice-pay-button{width:34px;padding:0 9px;overflow:hidden}.invoice-row-actions .invoice-pay-button svg{flex:none}.dialog-backdrop{align-items:flex-end;padding:0}.dialog-card{border-radius:8px 8px 0 0;max-height:94vh}.dialog-header{padding:16px}.dialog-body{padding:15px}.invoice-detail-summary{flex-direction:column;align-items:flex-start}.invoice-balance{text-align:left;justify-items:start}.invoice-payment-form .form-grid{grid-template-columns:1fr}.invoice-lines{overflow:hidden}.invoice-lines>div{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;min-width:0;padding:10px 0}.invoice-line-description{overflow-wrap:anywhere;grid-column:1/-1}.invoice-line-quantity:before{content:"Qte ";color:var(--color-text-soft)}.invoice-line-price{grid-area:3/1;text-align:left!important}.invoice-line-price:before{content:"Prix ";color:var(--color-text-soft)}.invoice-line-total{grid-area:3/2}.invoice-totals{width:100%;min-width:0}.invoice-totals span{gap:20px}.invoice-payment-history article{grid-template-columns:34px 1fr auto}.invoice-payment-history article>div:nth-child(2){overflow-wrap:anywhere;min-width:0}.invoice-payment-history article>.badge{grid-area:1/3}.payment-corrections{grid-column:2/-1}}.document-preview{grid-template-rows:auto minmax(0,1fr);gap:12px;width:100%;min-width:0;height:100%;min-height:0;display:grid}.document-preview-dialog{height:min(92vh,900px);max-width:calc(100vw - 32px)!important}.document-preview-dialog .dialog-body{min-width:0;min-height:0;display:flex;overflow:hidden}.document-preview-toolbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.document-preview-toolbar>div:first-child{gap:3px;min-width:0;display:grid}.document-preview-toolbar strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.document-preview-toolbar span{color:var(--color-text-muted);font-size:.72rem}.document-preview-toolbar>div:last-child{flex:none;gap:8px;display:flex}.document-preview-stage{border:1px solid var(--color-border);background:#e8edf1;border-radius:6px;place-items:center;min-height:0;display:grid;overflow:hidden}.document-preview-stage iframe{background:#fff;border:0;width:100%;height:100%}.document-preview-stage img{object-fit:contain;width:100%;height:100%;display:block}.document-preview-state{color:var(--color-text-muted);text-align:center;justify-items:center;gap:8px;padding:28px;display:grid}.document-preview-state strong{color:var(--color-text)}.document-preview-state.error svg{color:#b91c1c}.document-preview-state .spin{color:var(--color-primary);animation:.8s linear infinite document-spin}@keyframes document-spin{to{transform:rotate(360deg)}}@media (width<=600px){.document-preview-dialog{width:100%;height:94dvh;max-width:100%!important}.document-preview-dialog .dialog-body{padding:12px}.document-preview-toolbar{flex-direction:column;align-items:stretch}.document-preview-toolbar>div:last-child{grid-template-columns:1fr 1fr;display:grid}.document-preview-toolbar button{justify-content:center}}html{background:var(--color-bg);scroll-behavior:smooth}body{color:var(--color-text);background:var(--color-bg)}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #2563eb38}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}::selection{color:#fff;background:#167d74}*{scrollbar-width:thin;scrollbar-color:#b8c5cc transparent}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:#b8c5cc padding-box padding-box;border:2px solid #0000;border-radius:8px}.app-shell{background:var(--color-bg);grid-template-columns:248px minmax(0,1fr)}.sidebar{z-index:20;background:#fbfcfc;border-color:#dbe4e8}.sidebar-brand{background:#fff;min-height:68px;padding:15px 18px}.brand-symbol{background:#126e67;box-shadow:0 5px 14px #0f766e33}.sidebar-context{background:#f2f9f7;border:1px solid #d8ebe7;border-radius:8px;margin:12px 10px 4px;padding:11px 12px}.sidebar-context-dot{box-shadow:0 0 0 4px #0f766e1a}.sidebar-context-name{color:#175f59;text-overflow:ellipsis;white-space:nowrap;max-width:172px;overflow:hidden}.sidebar-context-role{color:#6c8581;margin-top:2px}.sidebar-nav{gap:6px;padding:10px}.nav-section{gap:3px;margin-bottom:10px}.nav-section-label{color:#8797a6;letter-spacing:.06em;padding:8px 9px 4px}.nav-item{border:1px solid #0000;min-height:40px;padding:0 11px;font-weight:580;position:relative}.nav-item:hover{background:#fff;border-color:#e3e9ec}.nav-item.active{color:#0e6e66;background:#edf8f5;border-color:#d7ebe7;box-shadow:inset 3px 0 #0f766e}.nav-item.active svg{stroke-width:2.25px}.sidebar-spacer{flex:1}.sidebar-footer{background:#fff}.sidebar-user{border:1px solid #0000}.sidebar-user:hover{border-color:var(--color-border);background:var(--color-surface-soft)}.sidebar-avatar{background:#176f69}.topbar{background:#ffffffe6;border-color:#d0dce1e6;min-height:68px;padding:0 30px}.topbar-left{align-items:center;gap:11px;min-width:0;display:flex}.topbar-page-context{gap:2px;min-width:0;display:grid}.topbar-page-context strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.topbar-page-context span{color:var(--color-text-soft);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.topbar-role{color:#49645f;background:#f7faf9;border:1px solid #dbe7e4;border-radius:999px;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:.72rem;font-weight:700;display:inline-flex}.content{width:100%;max-width:1660px;margin:0 auto;padding:28px 30px 42px}.content>*{animation:.22s ease-out both page-enter}@keyframes page-enter{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}h1,h2,h3,h4,strong{letter-spacing:0}h1{color:#111b2d;font-weight:780}.page-heading h1,.platform-heading h1{font-size:clamp(1.55rem,2.2vw,2rem)}.page-heading p,.platform-heading p{line-height:1.5}.eyebrow{color:#0c7168;letter-spacing:.055em;margin-bottom:7px;font-size:.7rem;font-weight:800}.panel,.platform-section,.side-form,.table-wrap,.ds-panel,.ds-stat-card,.stat-card,.room-card{border-color:var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm)}.panel,.platform-section,.side-form,.ds-panel,.table-wrap{border-width:1px}.panel:hover,.platform-section:hover{border-color:#d2dde1}input,select,textarea{border-width:1px;border-color:var(--color-border-strong);background:#fff;min-height:42px;box-shadow:0 1px 1px #0f172a06}textarea{min-height:84px}input:hover,select:hover,textarea:hover{border-color:#aebdc5}input::placeholder,textarea::placeholder{color:#9aa8b5}label{color:#2d3b4f;font-size:.8rem;font-weight:680}.primary-button,.secondary-button,.danger-button,.icon-button,.success-button{min-height:40px;box-shadow:none;border-width:1px;transition:border-color .16s,background .16s,color .16s,box-shadow .16s,transform .12s}.primary-button{background:#0f766e;box-shadow:0 3px 8px #0f766e29}.primary-button:hover{background:var(--color-primary-hover);box-shadow:0 7px 16px #0f766e33}.secondary-button:hover,.icon-button:hover{background:#f7f9fa;border-color:#aebbc3}.icon-button{width:36px;min-width:36px;padding:0}.compact{min-height:34px}.badge{min-height:24px;padding:0 8px;font-size:.7rem;font-weight:760}.badge.success{color:#146c36;background:#e7f7ec}.badge.info{color:#245bb5;background:#eaf1ff}.badge.warning{color:#98530b;background:#fff4dc}.badge.muted,.badge.neutral{color:#566475;background:#edf1f4}.table-wrap{border-width:1px}th{color:#718195;letter-spacing:.045em;background:#f7f9fa;height:43px;font-size:.68rem}td{color:#2b384b;height:54px}tbody tr{transition:background-color .12s}tbody tr:hover td{background:#f8fbfb}.alert{box-shadow:var(--shadow-sm);border-width:1px}.toast{border:1px solid var(--color-border);box-shadow:var(--shadow-lg)}.toast-success{border-left:4px solid #15803d}.toast-error{border-left:4px solid #b42318}.dialog-backdrop,.modal-backdrop{background:#121c2d94}.dialog-card,.modal-panel{box-shadow:var(--shadow-lg);border:1px solid #ffffff80;border-radius:8px}.screen-loader{padding:28px}.screen-loader>.page-skeleton{width:min(980px,100%)}.page-skeleton{gap:18px;width:100%;min-height:360px;display:grid}.skeleton-heading{gap:10px;display:grid}.skeleton-heading span,.skeleton-heading i,.skeleton-metrics span,.skeleton-panel i{background:#e7ecef;border-radius:6px;display:block;overflow:hidden}.skeleton-heading span{width:210px;height:28px}.skeleton-heading i{width:min(420px,70%);height:13px}.skeleton-metrics{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.skeleton-metrics span{height:118px}.skeleton-panel{border:1px solid var(--color-border);background:#fff;border-radius:8px;gap:13px;padding:20px;display:grid}.skeleton-panel i{height:42px}.skeleton-heading span:after,.skeleton-heading i:after,.skeleton-metrics span:after,.skeleton-panel i:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb8,#0000);width:45%;height:100%;animation:1.25s infinite skeleton-wave;display:block}@keyframes skeleton-wave{0%{transform:translate(-120%)}to{transform:translate(260%)}}.inline-loading{min-height:180px;color:var(--color-text-muted);justify-content:center;align-items:center;gap:9px;font-size:.8rem;display:flex}.inline-loading svg{color:var(--color-primary);animation:.8s linear infinite document-spin}.empty-state{min-height:240px;color:var(--color-text-muted);text-align:center;place-content:center;justify-items:center;gap:8px;padding:28px;display:grid}.empty-state-icon{color:#377f77;background:#f1f8f6;border:1px solid #dbe7e4;border-radius:8px;place-items:center;width:46px;height:46px;display:grid}.empty-state strong{color:var(--color-text)}.empty-state p{max-width:360px;font-size:.8rem;line-height:1.5}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=900px){.content{padding:22px 20px 36px}.topbar{padding:0 20px}.topbar-role{display:none}.skeleton-metrics{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.content{padding:18px 16px 30px}.topbar{min-height:60px;padding:0 16px}.topbar-page-context span{max-width:190px}.page-heading,.platform-heading{gap:14px}.page-heading h1,.platform-heading h1{font-size:1.55rem}.skeleton-metrics{grid-template-columns:1fr}.skeleton-metrics span{height:96px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.companies-premium{max-width:1480px}.companies-heading{align-items:flex-end}.companies-overview{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.companies-overview article{align-items:center;gap:12px;min-height:88px;padding:16px 18px;display:flex}.companies-overview article+article{border-left:1px solid var(--color-border)}.companies-overview article>div{gap:3px;display:grid}.companies-overview article span{color:var(--color-text-muted);font-size:.72rem;font-weight:650}.companies-overview article strong{font-size:1.35rem}.company-overview-icon{border-radius:8px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.company-overview-icon.teal{color:#0f766e;background:#e7f5f2}.company-overview-icon.green{color:#15803d;background:#e9f7ed}.company-overview-icon.blue{color:#2563eb;background:#eaf1ff}.company-overview-icon.amber{color:#b45309;background:#fff3db}.companies-layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.companies-layout.form-open{grid-template-columns:minmax(0,1fr) 380px}.companies-directory{min-width:0;padding:0;overflow:hidden}.companies-toolbar{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;display:flex}.companies-toolbar>div{gap:3px;display:grid}.companies-toolbar h2{font-size:.95rem}.companies-toolbar span{color:var(--color-text-muted);font-size:.72rem}.companies-search{border:1px solid var(--color-border-strong);width:min(360px,48%);min-height:38px;color:var(--color-text-muted);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:0 10px;display:flex}.companies-search input{min-width:0;min-height:36px;box-shadow:none;border:0;padding:0}.companies-search input:focus{box-shadow:none}.companies-search button{width:25px;height:25px;color:var(--color-text-muted);background:0 0;border:0;border-radius:5px;flex:0 0 25px;place-items:center;display:grid}.companies-list{display:grid}.companies-list-head,.companies-list article{grid-template-columns:minmax(220px,1.5fr) minmax(150px,.8fr) 90px 160px;align-items:center;gap:14px;display:grid}.companies-list-head{color:#78889a;text-transform:uppercase;letter-spacing:.045em;background:#f7f9fa;min-height:39px;padding:0 18px;font-size:.66rem;font-weight:780}.companies-list article{border-top:1px solid var(--color-border);min-height:72px;padding:10px 18px;transition:background-color .14s}.companies-list article:hover{background:#f8fbfb}.company-identity{min-width:0;color:var(--color-text);align-items:center;gap:11px;display:flex}.company-monogram{color:#0c6e65;background:#edf8f5;border:1px solid #cce4df;border-radius:8px;flex:0 0 38px;place-items:center;width:38px;height:38px;font-size:.72rem;font-weight:800;display:grid}.company-identity>span:last-child,.company-plan{gap:4px;min-width:0;display:grid}.company-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.83rem;overflow:hidden}.company-identity small{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:.7rem;display:flex;overflow:hidden}.company-plan{justify-items:start}.company-plan small{color:var(--color-text-soft);text-transform:capitalize;font-size:.68rem}.company-actions{justify-content:flex-end;gap:7px;display:flex}.companies-create{gap:14px;padding:18px;display:none;position:sticky;top:86px}.companies-layout.form-open .companies-create{display:grid}.companies-create-head{border-bottom:1px solid var(--color-border);align-items:center;gap:11px;padding-bottom:14px;display:flex}.companies-create-head>div:last-child{gap:3px;display:grid}.companies-create-head h2{font-size:.95rem}.companies-create-head p{color:var(--color-text-muted);font-size:.7rem;line-height:1.4}.companies-create .form-actions{margin-top:2px}@media (width<=1120px){.companies-overview{grid-template-columns:repeat(2,1fr)}.companies-overview article:nth-child(3){border-left:0;border-top:1px solid var(--color-border)}.companies-overview article:nth-child(4){border-top:1px solid var(--color-border)}.companies-layout,.companies-layout.form-open{grid-template-columns:1fr}.companies-create{position:static}}@media (width<=720px){.companies-heading{align-items:stretch}.companies-heading>button{width:100%}.companies-overview{grid-template-columns:1fr 1fr}.companies-overview article{min-height:78px;padding:13px}.companies-toolbar{flex-direction:column;align-items:stretch}.companies-search{width:100%}.companies-list-head{display:none}.companies-list article{grid-template-columns:minmax(0,1fr) auto;gap:11px;padding:14px 16px}.company-identity{grid-column:1}.company-plan{grid-column:1;padding-left:49px}.companies-list article>.badge{grid-area:1/2}.company-actions{grid-area:2/2}.companies-create{display:none}.companies-layout.form-open .companies-create{grid-row:1;display:grid}.companies-layout.form-open .companies-directory{grid-row:2}}@media (width<=460px){.companies-overview{grid-template-columns:1fr}.companies-overview article+article{border-left:0;border-top:1px solid var(--color-border)}.companies-list article{grid-template-columns:minmax(0,1fr)}.companies-list article>.badge,.company-actions{grid-area:auto/1;justify-content:flex-start;margin-left:49px}.companies-create .form-grid{grid-template-columns:1fr}}.metric-tone-teal .ds-stat-icon{color:#0f766e;background:#e7f5f2}.metric-tone-blue .ds-stat-icon{color:#2563eb;background:#eaf1ff}.metric-tone-violet .ds-stat-icon{color:#6d28d9;background:#f0ecff}.metric-tone-amber .ds-stat-icon{color:#b45309;background:#fff3db}.metric-tone-cyan .ds-stat-icon{color:#087e8d;background:#e7f7f8}.metric-tone-rose .ds-stat-icon{color:#be123c;background:#ffe9ed}.ds-stat-icon{border-radius:8px}.practitioner-dashboard-grid{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:18px;display:grid}.practitioner-dashboard-side{gap:18px;display:grid}.practitioner-agenda-list,.practitioner-room-list{display:grid}.practitioner-agenda-row{border-bottom:1px solid var(--color-border);min-height:72px;color:var(--color-text);grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:15px;padding:10px 20px;transition:background-color .14s;display:grid}.practitioner-agenda-row:last-child{border-bottom:0}.practitioner-agenda-row:hover{background:#f7faf9}.practitioner-agenda-row time,.practitioner-agenda-row>div{gap:3px;display:grid}.practitioner-agenda-row time{border-right:1px solid var(--color-border)}.practitioner-agenda-row time strong{font-size:.88rem}.practitioner-agenda-row time span,.practitioner-agenda-row>div span{color:var(--color-text-muted);font-size:.73rem}.practitioner-agenda-row>div strong{text-overflow:ellipsis;white-space:nowrap;font-size:.86rem;overflow:hidden}.practitioner-room-list article{border-bottom:1px solid var(--color-border);grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;min-height:64px;padding:10px 16px;display:grid}.practitioner-room-list article:last-child{border-bottom:0}.room-monogram{color:#0f6f67;background:#edf8f5;border:1px solid #cfe5e1;border-radius:8px;place-items:center;width:36px;height:36px;font-size:.75rem;font-weight:800;display:grid}.practitioner-room-list article>div{gap:3px;min-width:0;display:grid}.practitioner-room-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.practitioner-room-list article>div span{color:var(--color-text-muted);font-size:.7rem}.practitioner-next-panel{color:#fff;box-shadow:var(--shadow-md);background:#173f3c;border:1px solid #214e4b;border-radius:8px;gap:18px;padding:20px;display:grid;overflow:hidden}.practitioner-next-panel>div:first-child{gap:7px;display:grid}.practitioner-next-panel .eyebrow{color:#9dd8d1}.practitioner-next-panel strong{font-size:1.05rem}.practitioner-next-panel p{color:#c8dfdc;font-size:.78rem;line-height:1.5}.next-session-chip{color:#e9f7f5;border-top:1px solid #ffffff29;align-items:center;gap:8px;padding-top:14px;font-size:.78rem;font-weight:700;display:flex}@media (width<=1080px){.practitioner-dashboard-grid{grid-template-columns:1fr}.practitioner-dashboard-side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.ds-stats,.practitioner-dashboard-side{grid-template-columns:1fr}.practitioner-agenda-row{grid-template-columns:56px minmax(0,1fr);padding:11px 14px}.practitioner-agenda-row>.badge{grid-column:2;justify-self:start}.practitioner-agenda-row time{align-content:center;align-self:stretch}}.platform-dashboard-heading{align-items:center}.platform-sync{border:1px solid var(--color-border);color:var(--color-text-muted);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:8px 11px;font-size:.72rem;font-weight:680;display:inline-flex}.platform-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.platform-kpi{border:1px solid var(--color-border);min-height:130px;box-shadow:var(--shadow-sm);background:#fff;border-top:3px solid #0000;border-radius:8px;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;display:flex}.platform-kpi>div{gap:6px;display:grid}.platform-kpi>div>span{color:var(--color-text-muted);font-size:.74rem;font-weight:700}.platform-kpi>div>strong{font-size:1.85rem;line-height:1.05}.platform-kpi>div>small{color:var(--color-text-soft);font-size:.7rem}.platform-kpi-icon{border-radius:8px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.platform-kpi--teal{border-top-color:#0f766e}.platform-kpi--teal .platform-kpi-icon{color:#0f766e;background:#e6f5f2}.platform-kpi--blue{border-top-color:#2563eb}.platform-kpi--blue .platform-kpi-icon{color:#2563eb;background:#eaf1ff}.platform-kpi--violet{border-top-color:#7c3aed}.platform-kpi--violet .platform-kpi-icon{color:#6d28d9;background:#f0ecff}.platform-kpi--amber{border-top-color:#d97706}.platform-kpi--amber .platform-kpi-icon{color:#b45309;background:#fff3db}.platform-dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);align-items:stretch;gap:16px;display:grid}.platform-health,.platform-operations{align-content:start;gap:4px;display:grid}.platform-health-list{gap:16px;margin-top:3px;display:grid}.platform-health-list>div{grid-template-columns:1fr auto;align-items:center;gap:7px 14px;display:grid}.platform-health-list>div>div:first-child{display:contents}.platform-health-list span{color:var(--color-text-muted);font-size:.76rem;font-weight:650}.platform-health-list strong{font-size:.82rem}.platform-health-list small{color:var(--color-text-soft);grid-column:1/-1;font-size:.67rem}.platform-health-meter{background:#edf1f3;border-radius:999px;grid-column:1/-1;height:7px;overflow:hidden}.platform-health-meter i{border-radius:inherit;background:#0f766e;height:100%;display:block}.platform-health-meter i.trial{background:#2563eb}.platform-health-meter i.attention{background:#d97706}.platform-text-link{color:#0f6e66;align-items:center;gap:6px;width:fit-content;margin-top:16px;font-size:.76rem;font-weight:750;display:inline-flex}.platform-operation-list{display:grid}.platform-operation-list>a{border-top:1px solid var(--color-border);color:var(--color-text);grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:13px 0;display:grid}.platform-operation-list>a:first-child{border-top:0}.platform-operation-list>a>div{gap:3px;display:grid}.platform-operation-list>a>div span{color:var(--color-text-muted);font-size:.7rem}.platform-operation-list>a>svg{color:var(--color-text-soft);transition:transform .15s}.platform-operation-list>a:hover>svg{color:var(--color-primary);transform:translate(2px)}.operation-icon{border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.operation-icon.teal{color:#0f766e;background:#e7f5f2}.operation-icon.rose{color:#be123c;background:#ffe9ed}.operation-icon.blue{color:#2563eb;background:#eaf1ff}.platform-command-grid--compact .platform-command{min-height:172px}.platform-command-grid--compact .secondary-button{justify-content:space-between;min-width:175px}.storage-heading-icon{color:#0f766e;background:#eef8f6;border:1px solid #d8e8e5;border-radius:8px;place-items:center;width:44px;height:44px;display:grid}.storage-summary{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.storage-summary article{align-items:center;gap:12px;min-height:86px;padding:15px 17px;display:flex}.storage-summary article+article{border-left:1px solid var(--color-border)}.storage-summary article>div{gap:4px;display:grid}.storage-summary article>div span{color:var(--color-text-muted);font-size:.7rem}.storage-summary article>div strong{font-size:1.18rem}.storage-summary-icon{border-radius:8px;flex:0 0 38px;place-items:center;width:38px;height:38px;display:grid}.storage-summary-icon.teal{color:#0f766e;background:#e7f5f2}.storage-summary-icon.blue{color:#2563eb;background:#eaf1ff}.storage-summary-icon.violet{color:#6d28d9;background:#f0ecff}.storage-summary-icon.amber{color:#b45309;background:#fff3db}.storage-section-heading{justify-content:space-between;align-items:center;gap:16px;min-height:68px;padding:14px 17px;display:flex}.storage-section-heading>div{gap:3px;display:grid}.storage-section-heading h2{font-size:.95rem}.storage-section-heading p{color:var(--color-text-muted);font-size:.7rem}.storage-section-heading>svg{color:var(--color-text-soft)}.storage-table-head,.storage-row{grid-template-columns:minmax(220px,1.45fr) 75px 125px 125px minmax(180px,1fr) 24px}.storage-table-head{border-top:1px solid var(--color-border)}.storage-row:last-child{border-bottom:0}.storage-company{align-items:center;gap:10px!important;display:flex!important}.storage-company>div{align-items:center;gap:8px;min-width:0;display:flex}.storage-company>div strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.storage-company-mark{color:#0f6e66;background:#eef8f6;border:1px solid #cfe5e1;border-radius:8px;flex:0 0 34px;place-items:center;width:34px;height:34px;font-size:.7rem;font-weight:800;display:grid}.storage-row-arrow{color:var(--color-text-soft)}@media (width<=1120px){.platform-kpi-grid,.storage-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-summary article:nth-child(3){border-left:0;border-top:1px solid var(--color-border)}.storage-summary article:nth-child(4){border-top:1px solid var(--color-border)}}@media (width<=860px){.platform-dashboard-grid{grid-template-columns:1fr}}@media (width<=720px){.platform-dashboard-heading{align-items:flex-start}.platform-kpi-grid{grid-template-columns:1fr 1fr}.platform-kpi{min-height:116px;padding:14px}.platform-kpi>div>strong{font-size:1.5rem}.storage-table{overflow:visible}.storage-table-head{display:none}.storage-table-body{display:grid}.storage-row{grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;min-width:0;padding:15px;display:grid}.storage-company{grid-column:1/-1}.storage-row>span[data-label],.storage-row>strong[data-label]{gap:2px;display:grid}.storage-row>span[data-label]:before,.storage-row>strong[data-label]:before{content:attr(data-label);color:var(--color-text-soft);font-size:.62rem;font-weight:600}.storage-row>span[data-label=Quota]{text-align:right}.storage-progress{grid-column:1/-1}.storage-row-arrow{display:none}}@media (width<=480px){.platform-kpi-grid,.storage-summary{grid-template-columns:1fr}.storage-summary article+article{border-left:0;border-top:1px solid var(--color-border)}.platform-kpi{min-height:108px}}.company-detail-header{justify-content:space-between;align-items:flex-end;gap:22px;padding:4px 0;display:flex}.company-detail-title{gap:2px;min-width:0;display:grid}.company-detail-title .back-link{margin-bottom:8px}.company-detail-identity{align-items:center;gap:14px;min-width:0;display:flex}.company-detail-mark{color:#0d6c64;background:#eaf6f3;border:1px solid #c8e1dc;border-radius:8px;flex:0 0 52px;place-items:center;width:52px;height:52px;font-size:.84rem;font-weight:820;display:grid}.company-detail-identity>div{gap:3px;min-width:0;display:grid}.company-detail-identity .eyebrow{margin:0}.company-detail-identity h1{text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.55rem,2.2vw,2rem);overflow:hidden}.company-detail-identity p{color:var(--color-text-muted);font-size:.8rem}.company-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.company-detail-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.temporary-password{box-shadow:var(--shadow-sm);background:#f1fbf4;border:1px solid #b9dfc4;border-left:4px solid #15803d;border-radius:8px;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.temporary-password-icon{color:#15803d;background:#dff5e5;border-radius:8px;place-items:center;width:40px;height:40px;display:grid}.temporary-password>div{gap:4px;min-width:0;display:grid}.temporary-password p{color:#4d6c57;font-size:.72rem;line-height:1.4}.temporary-password code{color:#184f2a;background:#fff;border:1px solid #b9dfc4;border-radius:5px;width:fit-content;padding:4px 7px;font-size:.8rem;font-weight:800}.company-detail-grid{grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:stretch;gap:16px;display:grid}.company-information-list{border-top:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.company-information-list>div{border-bottom:1px solid var(--color-border);grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;min-height:68px;padding:10px 8px 10px 0;display:grid}.company-information-list>div:nth-child(odd){border-right:1px solid var(--color-border)}.company-information-list>div:nth-child(2n){padding-left:14px}.company-info-icon{color:#376d7a;background:#edf4f6;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.company-information-list>div>div{gap:3px;min-width:0;display:grid}.company-information-list>div>div span{color:var(--color-text-muted);font-size:.68rem}.company-information-list strong,.company-information-list a{text-overflow:ellipsis;white-space:nowrap;font-size:.79rem;overflow:hidden}.company-information-list a{color:#175f9d;text-underline-offset:2px;text-decoration:underline}.company-notes{align-content:start;display:grid}.company-notes>p{color:#405064;white-space:pre-wrap;font-size:.82rem;line-height:1.65}.company-notes .empty-state{min-height:150px;padding:18px}.company-owners{padding:0;overflow:hidden}.company-owners-heading{margin:0;padding:17px 18px}.company-owner-list{display:grid}.company-owner-list-head,.company-owner-list article{grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) 85px 120px;align-items:center;gap:14px;display:grid}.company-owner-list-head{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);min-height:38px;color:var(--color-text-soft);text-transform:uppercase;letter-spacing:.04em;background:#f7f9fa;padding:0 18px;font-size:.65rem;font-weight:780}.company-owner-list article{border-bottom:1px solid var(--color-border);min-height:70px;padding:10px 18px}.company-owner-list article:last-child{border-bottom:0}.owner-identity{align-items:center;gap:10px;min-width:0;display:flex}.owner-identity>span{color:#0f6e66;background:#eaf6f3;border-radius:8px;flex:0 0 36px;place-items:center;width:36px;height:36px;font-size:.7rem;font-weight:800;display:grid}.owner-identity>div,.owner-contact{gap:3px;min-width:0;display:grid}.owner-identity strong,.owner-contact strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.owner-identity small,.owner-contact span{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.owner-actions{justify-content:flex-end;display:flex}.company-dialog{width:min(560px,100vw - 32px)}.company-edit-dialog{width:min(680px,100vw - 32px)}.company-dialog .dialog-header>div{gap:3px;display:grid}.company-dialog .dialog-header .eyebrow{margin:0}.company-dialog .dialog-header p{color:var(--color-text-muted);font-size:.72rem}.company-dialog label small{color:var(--color-text-muted);font-size:.68rem;font-weight:500;line-height:1.4}@media (width<=900px){.company-detail-header{flex-direction:column;align-items:flex-start}.company-detail-actions{justify-content:flex-start}.company-detail-grid{grid-template-columns:1fr}.company-owner-list-head,.company-owner-list article{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) 80px auto}}@media (width<=700px){.company-detail-stats{grid-template-columns:1fr 1fr}.temporary-password{grid-template-columns:38px minmax(0,1fr) auto}.temporary-password>.secondary-button{grid-column:2;justify-self:start}.temporary-password>.icon-button{grid-area:1/3}.company-information-list{grid-template-columns:1fr}.company-information-list>div:nth-child(odd){border-right:0}.company-information-list>div:nth-child(2n){padding-left:0}.company-owners-heading{flex-direction:column;align-items:stretch}.company-owner-list-head{display:none}.company-owner-list article{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px 16px}.owner-identity{grid-column:1}.owner-contact{grid-column:1;padding-left:46px}.company-owner-list article>.badge{grid-area:1/2}.owner-actions{grid-area:2/2}}@media (width<=480px){.company-detail-identity{align-items:flex-start}.company-detail-mark{flex-basis:44px;width:44px;height:44px}.company-detail-actions .primary-button,.company-detail-actions .secondary-button{flex:1;justify-content:center}.company-detail-stats{grid-template-columns:1fr}.temporary-password{grid-template-columns:1fr auto}.temporary-password-icon{display:none}.temporary-password>div{grid-column:1/-1}.temporary-password>.secondary-button{grid-column:1}.temporary-password>.icon-button{grid-area:2/2}.company-owner-list article{grid-template-columns:1fr}.company-owner-list article>.badge,.owner-actions{grid-area:auto/1;justify-content:flex-start;margin-left:46px}}.patients-directory{gap:18px}.patients-directory .patients-header{align-items:flex-end}.patients-directory .patients-title{margin-top:2px}.patients-directory .patients-sub{max-width:650px;line-height:1.5}.patient-directory-summary{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.patient-directory-summary article{align-items:center;gap:12px;min-height:84px;padding:14px 17px;display:flex}.patient-directory-summary article+article{border-left:1px solid var(--color-border)}.patient-directory-summary article>div{gap:3px;display:grid}.patient-directory-summary article>div span{color:var(--color-text-muted);font-size:.7rem}.patient-directory-summary article>div strong{font-size:1.2rem}.patient-summary-icon{border-radius:8px;flex:0 0 37px;place-items:center;width:37px;height:37px;display:grid}.patient-summary-icon.teal{color:#0f766e;background:#e7f5f2}.patient-summary-icon.green{color:#15803d;background:#e9f7ed}.patient-summary-icon.blue{color:#2563eb;background:#eaf1ff}.patient-summary-icon.amber{color:#b45309;background:#fff3db}.patient-directory-panel{box-shadow:none;background:0 0;border:0;padding:0}.patient-directory-panel:hover{border-color:#0000}.patient-directory-panel .patients-search-bar{border-width:1px;margin-bottom:14px;padding:11px}.patient-directory-panel .patients-search-input{background:#fff;border-width:1px;border-radius:6px;min-height:38px;padding-top:0;padding-bottom:0}.patient-directory-panel .patients-status-group{border-width:1px;border-radius:6px}.patient-directory-panel .patients-status-btn{border-right-width:1px;min-height:36px;padding:0 11px;font-size:.72rem}.patient-directory-panel .inline-loading,.patient-directory-panel .empty-state{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px}.patients-directory .patient-row{border-width:1px;min-height:82px;padding:13px 15px}.patients-directory .patient-row:hover{border-color:#cbd9de;transform:none}.patients-directory .patient-row-meta{align-items:center;gap:7px;display:flex}.patients-directory .patient-row-meta>span{background:#aab6c0;border-radius:50%;flex:0 0 3px;width:3px;height:3px}.patients-directory .patient-row-footer{flex-wrap:wrap;gap:6px 14px;margin-top:4px;display:flex}.patients-directory .patient-row-footer>span{position:relative}.patients-directory .patient-row-footer>span+span:before{content:"";background:#bcc5cd;border-radius:50%;width:3px;height:3px;position:absolute;top:50%;left:-8px}.patient-open-button{border:1px solid var(--color-border);width:36px;height:36px;color:var(--color-text-muted);background:#fff;border-radius:8px;flex:0 0 36px;place-items:center;transition:border-color .14s,color .14s,background .14s;display:grid}.patient-open-button:hover{color:#0f766e;background:#eef8f6;border-color:#bcd9d3}.patient-create-dialog{width:min(680px,100vw - 32px)}.patient-create-dialog .dialog-header>div{gap:3px;display:grid}.patient-create-dialog .dialog-header .eyebrow{margin:0}.patient-create-dialog .dialog-header p{color:var(--color-text-muted);font-size:.72rem}@media (width<=950px){.patient-directory-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.patient-directory-summary article:nth-child(3){border-left:0;border-top:1px solid var(--color-border)}.patient-directory-summary article:nth-child(4){border-top:1px solid var(--color-border)}.patient-directory-panel .patients-search-bar{align-items:stretch}.patient-directory-panel .patients-status-group{max-width:100%;overflow-x:auto}}@media (width<=640px){.patients-directory .patients-header{flex-direction:column;align-items:stretch}.patients-directory .patients-header>button{justify-content:center;width:100%}.patient-directory-summary{grid-template-columns:1fr 1fr}.patient-directory-summary article{min-height:76px;padding:12px}.patient-directory-panel .patients-status-group{width:100%;display:flex}.patient-directory-panel .patients-status-btn{flex:none}.patients-directory .patient-row{grid-template-columns:42px minmax(0,1fr) auto;gap:10px;display:grid}.patients-directory .patient-avatar-circle{align-self:start}.patients-directory .patient-row-footer{gap:4px}.patients-directory .patient-row-footer>span{width:100%}.patients-directory .patient-row-footer>span+span:before{display:none}.patient-open-button{align-self:center}}@media (width<=430px){.patient-directory-summary{grid-template-columns:1fr}.patient-directory-summary article+article{border-left:0;border-top:1px solid var(--color-border)}.patients-directory .patient-row{grid-template-columns:38px minmax(0,1fr)}.patients-directory .patient-avatar-circle{width:38px;height:38px}.patients-directory .patient-row-top{flex-wrap:wrap;align-items:flex-start}.patient-open-button{grid-column:2;justify-self:start;margin-top:4px}}.patient-detail .patient-hero{background:#173f3c;border-color:#204744;box-shadow:0 14px 34px #143f3c29}.patient-detail .patient-hero h1{color:#fff}.patient-tabs{overscroll-behavior-inline:contain;margin-top:4px;overflow-x:auto}.patient-tabs .tab-btn{flex:none;min-height:42px}.patient-tab-panel,.patient-appointments-panel,.patient-information-form{margin-top:16px}.patient-tab-heading{margin-bottom:16px}.patient-tab-heading h2{margin:0}.timeline-count-badge{margin-left:6px}.timeline-badges{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.form-grid-full{grid-column:1/-1}.patient-info-section,.patient-info-notes{margin-top:16px}.patient-info-actions{gap:8px;margin-top:16px;display:flex}.patient-information-form>h2{margin-bottom:16px}.patient-detail .fin-card,.patient-detail .inline-form,.patient-detail .payment-fieldset{border-radius:8px}.patient-detail .timeline{flex-direction:column;gap:0;display:flex;position:relative}.patient-detail .timeline:before{content:"";z-index:0;background:#e1e8eb;width:2px;position:absolute;top:8px;bottom:8px;left:19px}.patient-detail .timeline-item{background:0 0;border-left:0;border-radius:0;gap:12px;padding:0 0 18px;display:flex;position:relative}.patient-detail .timeline-icon{z-index:1;border-radius:50%;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.patient-detail .timeline-body{border:1px solid var(--color-border);min-width:0;box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;flex-direction:column;flex:1;align-items:stretch;gap:8px;padding:14px;display:flex}.patient-detail .timeline-head,.patient-detail .timeline-footer{flex-direction:row;justify-content:space-between;align-items:center;gap:9px;display:flex}.patient-detail .timeline-title{color:var(--color-text);margin:0}.patient-detail .timeline-content{color:#405064}.patient-detail .timeline-next{border-radius:0 6px 6px 0}@media (width<=700px){.patient-detail .patient-hero{gap:14px}.patient-detail .patient-hero-actions{align-items:stretch;width:100%}.patient-detail .patient-hero-actions .primary-button,.patient-detail .patient-hero-actions .secondary-button{justify-content:center}.patient-detail .clinical-grid{grid-template-columns:1fr 1fr}.patient-detail .timeline-footer{flex-direction:column;align-items:flex-start}.patient-detail .timeline-footer .row-actions{width:100%}}@media (width<=430px){.patient-detail .clinical-grid{grid-template-columns:1fr}.patient-detail .patient-meta{display:grid}.patient-detail .patient-meta span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.patient-detail .timeline:before{left:15px}.patient-detail .timeline-item{gap:9px}.patient-detail .timeline-icon{flex-basis:32px;width:32px;height:32px}.patient-detail .timeline-body{padding:12px}}.appts-summary{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.appts-summary article{align-items:center;gap:12px;min-height:82px;padding:14px 17px;display:flex}.appts-summary article+article{border-left:1px solid var(--color-border)}.appts-summary article>div{gap:3px;display:grid}.appts-summary article>div span{color:var(--color-text-muted);font-size:.7rem}.appts-summary article>div strong{font-size:1.2rem}.appts-summary-icon{border-radius:8px;flex:0 0 37px;place-items:center;width:37px;height:37px;display:grid}.appts-summary-icon.teal{color:#0f766e;background:#e7f5f2}.appts-summary-icon.blue{color:#2563eb;background:#eaf1ff}.appts-summary-icon.green{color:#15803d;background:#e9f7ed}.appts-summary-icon.amber{color:#b45309;background:#fff3db}.appts-page .appts-table-wrap{border-width:1px}.appts-page .appts-pdf-btn{justify-content:center;align-items:center;width:32px;height:32px;padding:0}@media (width<=950px){.appts-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.appts-summary article:nth-child(3){border-left:0;border-top:1px solid var(--color-border)}.appts-summary article:nth-child(4){border-top:1px solid var(--color-border)}}@media (width<=700px){.appts-header{align-items:stretch}.appts-header>button{justify-content:center;width:100%}.appts-table-wrap{box-shadow:none;background:0 0;border:0;overflow:visible}.appts-table,.appts-table tbody{gap:10px;display:grid}.appts-table thead{display:none}.appts-table .appts-row{border:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;grid-template-columns:1fr 1fr;gap:10px 14px;padding:14px;display:grid;position:relative}.appts-table .appts-row td{white-space:normal;border:0;align-content:start;gap:4px;height:auto;padding:0;display:grid}.appts-table .appts-row td:before{content:attr(data-label);color:var(--color-text-soft);text-transform:uppercase;font-size:.62rem;font-weight:700}.appts-table .appts-patient-cell,.appts-table .appts-date-cell{grid-column:1/-1}.appts-table .appts-patient-cell{padding-right:42px}.appts-table .appts-patient-link,.appts-table .appts-patient-name{font-size:.95rem}.appts-table .appts-date-cell{border-bottom:1px solid var(--color-border);padding-bottom:10px}.appts-table .appts-row td:last-child{position:absolute;top:13px;right:13px}.appts-table .appts-row td:last-child:before{display:none}}@media (width<=430px){.appts-summary{grid-template-columns:1fr}.appts-summary article+article{border-left:0;border-top:1px solid var(--color-border)}}.calendar-color-field{align-items:center;gap:10px;min-height:42px;display:flex}.calendar-color-input{border:1px solid var(--color-border);cursor:pointer;border-radius:6px;width:42px;height:36px;min-height:36px;padding:2px}.calendar-color-field>span{color:var(--color-text-muted);font-size:.78rem;font-weight:600}.field-help{color:var(--color-text-soft);font-size:.68rem;font-weight:500;line-height:1.45}.rooms-page .room-card-premium,.pract-page .pract-table-wrap,.ra-page .ra-card{border-width:1px}.my-rooms-page{gap:18px}.my-rooms-heading{align-items:flex-end}.my-rooms-summary{border:1px solid var(--color-border);width:fit-content;box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;align-items:center;gap:11px;padding:12px 15px;display:flex}.my-rooms-summary-icon{color:#0f766e;background:#e7f5f2;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.my-rooms-summary>div{align-items:baseline;gap:6px;display:flex}.my-rooms-summary strong{font-size:1.25rem}.my-rooms-summary span{color:var(--color-text-muted);font-size:.74rem}.my-rooms-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:13px;display:grid}.my-rooms-grid>article{border:1px solid var(--color-border);min-height:205px;box-shadow:var(--shadow-sm);background:#fff;border-radius:8px;align-content:space-between;gap:22px;padding:17px;transition:border-color .14s,box-shadow .14s;display:grid}.my-rooms-grid>article:hover{box-shadow:var(--shadow-md);border-color:#c9d7dc}.my-rooms-grid>article.inactive{opacity:.65}.my-room-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.my-room-icon{color:#2563eb;background:#eaf1ff;border-radius:8px;place-items:center;width:39px;height:39px;display:grid}.my-rooms-grid article>div:nth-child(2){gap:6px;display:grid}.my-rooms-grid h2{font-size:1rem}.my-rooms-grid p{color:var(--color-text-muted);font-size:.78rem;line-height:1.5}.my-rooms-grid footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;padding-top:13px;display:flex}.my-rooms-grid footer>span{color:#39716a;align-items:center;gap:6px;font-size:.72rem;font-weight:700;display:inline-flex}.my-rooms-grid footer>a{border:1px solid var(--color-border);width:32px;height:32px;color:var(--color-text-muted);border-radius:8px;place-items:center;display:grid}.my-rooms-grid footer>a:hover{color:var(--color-primary);background:#eef8f6}@media (width<=640px){.my-rooms-heading{flex-direction:column;align-items:stretch}.my-rooms-heading>a{justify-content:center;width:100%}.my-rooms-summary{width:100%}.my-rooms-grid{grid-template-columns:1fr}}
