/* Shared visual floor for operating screens. Result dashboards keep their own layout. */
body:is([data-section=overview],[data-section=clients],[data-section=tenants],[data-section=team],[data-section=audit],[data-section=providers],[data-section=account],[data-section=subscriptions],[data-section=software-costs],[data-section=service-emails]),body[data-section=sites]:is([data-view=settings],[data-view=automations],[data-view=reports],[data-view=costs]){--paper:#fff;--soft:#f6f7f9;--line:#e6e9ef;--ink:#191d25;--muted:#616977;--hover:#f2f4f7}
body:is([data-section=overview],[data-section=clients],[data-section=tenants],[data-section=team],[data-section=audit],[data-section=providers],[data-section=account],[data-section=subscriptions],[data-section=software-costs],[data-section=service-emails]) main,body[data-section=sites]:is([data-view=settings],[data-view=automations],[data-view=reports],[data-view=costs]) main{background:var(--soft);padding:32px 36px 48px;min-width:0}
body:is([data-section=overview],[data-section=clients],[data-section=tenants],[data-section=team],[data-section=audit],[data-section=providers],[data-section=account],[data-section=subscriptions],[data-section=software-costs],[data-section=service-emails]) .page-heading,body[data-section=sites]:is([data-view=settings],[data-view=automations],[data-view=reports],[data-view=costs]) .page-heading{border:0;padding-bottom:0;margin-bottom:28px;align-items:start}
body:is([data-section=overview],[data-section=clients],[data-section=tenants],[data-section=team],[data-section=audit],[data-section=providers],[data-section=account],[data-section=subscriptions],[data-section=software-costs],[data-section=service-emails]) .page-heading h1{font-size:30px;letter-spacing:-1px;line-height:1.25}
.workspace-collection{display:grid;gap:22px;min-width:0}.workspace-collection>.card{margin:0;padding:0;overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none}.workspace-collection>.actions{margin:0;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.workspace-collection .collection-tools{display:flex;gap:12px;align-items:end;flex-wrap:wrap;padding:20px 24px;border-bottom:1px solid var(--line)}.collection-tools label{display:grid;gap:7px;flex:1 1 230px;font-size:12px;color:var(--muted)}.collection-tools input,.collection-tools select{min-height:44px;width:100%;min-width:0;background:#fff;border:1px solid var(--line);border-radius:7px}.collection-tools .collection-total{font-size:12px;color:var(--muted);padding-bottom:12px}.workspace-collection table{margin:0;width:100%}.workspace-collection th{background:#fafbfc;font-size:11px;letter-spacing:0;color:var(--muted);font-weight:550;text-transform:none}.workspace-collection td{font-size:13px;padding:20px 24px;vertical-align:middle}.workspace-collection th{padding:14px 24px}.workspace-collection tbody tr:last-child td{border-bottom:0}.workspace-collection tbody tr:hover{background:#fafbfc}.workspace-collection td .row-actions{display:flex;gap:8px;flex-wrap:wrap}.workspace-collection .row-sub{margin-top:5px;color:var(--muted);font-size:11px;line-height:1.6}.workspace-collection .empty-table{padding:32px 24px;color:var(--muted)}
.workspace-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.workspace-summary>article{display:grid;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px;min-width:0}.workspace-summary span{font-size:12px;color:var(--muted)}.workspace-summary strong{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-1px;font-variant-numeric:tabular-nums}.workspace-summary small{font-size:11px;line-height:1.6;color:var(--muted)}
.provider-workspace .provider-list{display:grid;gap:0;margin:24px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.provider-workspace .provider-card{display:grid;grid-template-columns:minmax(140px,1fr) minmax(140px,1fr) auto;gap:18px;align-items:center;padding:20px 22px;margin:0;border:0;border-radius:0;border-bottom:1px solid var(--line);background:#fff}.provider-workspace .provider-card:last-child{border-bottom:0}.provider-workspace .provider-model{font:12px ui-monospace,monospace;overflow-wrap:anywhere;color:var(--muted)}.provider-workspace .provider-actions{border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.provider-workspace .provider-actions p{font-size:12px;color:var(--muted);max-width:650px;line-height:1.7;margin:0}
body[data-section=overview] .portfolio-filters{background:#fff;padding:20px 24px;border:1px solid var(--line);border-radius:12px;margin-bottom:22px;align-items:end}body[data-section=overview] .portfolio-table{padding:0;background:#fff;border-radius:12px;box-shadow:none}body[data-section=overview] .portfolio-table th{background:#fafbfc;text-transform:none;letter-spacing:0;font-size:11px}body[data-section=overview] .portfolio-table td{padding-top:23px;padding-bottom:23px}body[data-section=overview] .portfolio-table tbody tr:hover{background:#fafbfc}.portfolio-metric-bar{display:block;width:76px;height:4px;border:0;border-radius:2px;overflow:hidden;background:#e9ecf1;margin-top:9px;appearance:none}.portfolio-metric-bar::-webkit-progress-bar{background:#e9ecf1}.portfolio-metric-bar::-webkit-progress-value{background:#788b9f}.portfolio-metric-bar::-moz-progress-bar{background:#788b9f}body[data-section=overview] .portfolio-management{background:#fff;border:1px solid var(--line);border-radius:12px;padding:24px;margin-top:24px}body[data-section=overview] .portfolio-work-disclosure{border-top:1px solid var(--line);padding-top:14px}
/* All shared tasks open as readable side panels, with the browser's focus trap. */
dialog.managed-dialog[open]{position:fixed;inset:0 0 0 auto;margin:0;width:min(780px,100vw);max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-left:1px solid #e6e9ef;border-radius:0;padding:0;background:#fff;color:#191d25;box-shadow:-18px 0 60px #15202a14}
dialog.managed-dialog::backdrop{background:#141b2638;backdrop-filter:blur(3px)}
.managed-dialog .dialog-head{padding:24px 30px;border-bottom:1px solid #e6e9ef;background:#fff;gap:18px}.managed-dialog .dialog-head h2{font-size:22px;line-height:1.35;letter-spacing:-.5px}.managed-dialog .dialog-body{padding:26px 30px;line-height:1.7;overscroll-behavior:contain}.managed-dialog input:not([type=checkbox]):not([type=radio]):not([type=range]),.managed-dialog select,.managed-dialog textarea{min-height:44px;max-width:100%;border-color:#dce1e8;border-radius:7px;background:#fff}.managed-dialog label:not(.check){font-size:13px;line-height:1.5}.managed-dialog .dialog-actions{gap:10px;flex-wrap:wrap;padding-top:18px}.managed-dialog button:focus-visible,.workspace-collection :focus-visible{outline:2px solid var(--accent,#c54b1d);outline-offset:3px}.managed-dialog .dialog-body>button[type=submit]{margin-top:20px}.managed-dialog .dialog-body>#fields{display:grid;gap:18px}.managed-dialog .dialog-body>#fields>label{display:grid;gap:8px}.managed-dialog .dialog-body>#fields fieldset{border:1px solid #e6e9ef;border-radius:8px;padding:18px;margin:0}
@media(max-width:700px){body:is([data-section=overview],[data-section=clients],[data-section=tenants],[data-section=team],[data-section=audit],[data-section=providers],[data-section=account],[data-section=subscriptions],[data-section=software-costs],[data-section=service-emails]) main,body[data-section=sites]:is([data-view=settings],[data-view=automations],[data-view=reports],[data-view=costs]) main{padding:24px 16px 32px}.workspace-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.workspace-summary>article{padding:18px}.workspace-summary strong{font-size:28px}.workspace-collection .collection-tools{padding:18px 16px}.workspace-collection td,.workspace-collection th{padding:16px}.workspace-collection:not(.audit-collection) table,.workspace-collection:not(.audit-collection) tbody,.workspace-collection:not(.audit-collection) tr,.workspace-collection:not(.audit-collection) td{display:block}.workspace-collection:not(.audit-collection) thead{display:none}.workspace-collection:not(.audit-collection) tbody tr{padding:12px 16px;border-bottom:1px solid var(--line)}.workspace-collection:not(.audit-collection) td{padding:8px 0;border:0}.workspace-collection:not(.audit-collection) td::before{content:attr(data-label);display:block;font-size:11px;color:var(--muted);margin-bottom:5px}.workspace-collection:not(.audit-collection) td .row-actions button{min-height:44px}.provider-workspace .provider-card{grid-template-columns:1fr;gap:10px;padding:20px}.provider-workspace .provider-actions button{width:100%}.managed-dialog .dialog-head{padding:20px 18px}.managed-dialog .dialog-body{padding:20px 18px}.managed-dialog .dialog-head h2{font-size:20px}.managed-dialog input,.managed-dialog select,.managed-dialog textarea{font-size:16px}.managed-dialog .dialog-actions button{min-height:44px}body[data-section=overview] .portfolio-filters{padding:18px 16px}body[data-section=overview] .portfolio-management{padding:20px 16px}}
@media(prefers-reduced-motion:reduce){dialog.managed-dialog,.workspace-collection button{animation:none!important;transition:none!important}}

/* Forms fill the panel so only their body scrolls. */
dialog.managed-dialog>form{height:100%;max-height:100%;flex:1;overflow:hidden}dialog.managed-dialog .dialog-body{flex:1;min-height:0}
body[data-section=providers] .provider-workspace{padding:26px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:none}body[data-section=providers] .provider-workspace>.section-copy{margin-bottom:22px}
body[data-section=sites][data-view=costs] #content>.toolbar{margin-bottom:22px}body[data-section=sites][data-view=costs] #content .card{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:none}body[data-section=sites][data-view=costs] .grid>.card{background:#fff;border-color:var(--line)}body[data-section=sites][data-view=costs] .accent-card{background:#fff;color:var(--ink)}body[data-section=sites][data-view=costs] .metric{font-size:30px;font-weight:600}body[data-section=sites][data-view=costs] .cost-note{font-size:12px;line-height:1.7}body[data-section=sites][data-view=costs] .card:has(>.cadence-controls){padding:24px}
@media(max-width:700px){body[data-section=providers] .provider-workspace{padding:20px 16px}}
body[data-section=sites][data-view=costs] .workspace #content .card{padding:24px;border:1px solid #e6e9ef;border-radius:12px;background:#fff;box-shadow:none}body[data-section=sites][data-view=costs] .workspace #content .grid{gap:14px;padding:0;border:0;background:transparent}body[data-section=sites][data-view=costs] .workspace #content .stat-top .icon{color:#788b9f}body[data-section=sites][data-view=costs] .workspace #content .card-head{margin-bottom:20px}
@media(max-width:700px){body[data-section=sites][data-view=costs] .workspace #content .card{padding:20px 16px}body[data-section=sites][data-view=costs] .workspace #content .grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-section=sites][data-view=costs] .workspace #content .metric{font-size:24px}}
