/* Cubee partner workspace. Keep component overrides after the vendor styles. */
:root {
    --partner-ink: #1c2420;
    --partner-muted: #59625e;
    --partner-line: #d9dcdf;
    --partner-canvas: #f1f2f3;
    --partner-nav-surface: #f7f8f8;
    --partner-control-line: #8a918d;
    --partner-accent-text: #397a57;
    --partner-hover: #f5f5f5;
    --partner-green: #569b77;
    --partner-soft: #d0e5d9;
    --partner-lime: #e6f9b2;
    --partner-sidebar: 216px;
    --cube-current-appbar-height: 56px;
}
body { background: var(--partner-canvas); }
.surface-progress-host { position: relative; }
.surface-progress { pointer-events: none; overflow: hidden; }
.surface-progress-overlay { position: absolute; inset: 0; border-radius: inherit; z-index: 1; }
.surface-progress-overlay .mud-progress-linear { position: absolute; inset: 0 0 auto; margin: 0; }
.surface-progress-bottom .mud-progress-linear { top: auto; bottom: 0; }
.surface-progress-standalone { height: 4px; margin-bottom: 12px; border-radius: 999px; }
.surface-progress-standalone .mud-progress-linear { margin: 0; }
.surface-progress-idle { visibility: hidden; }
.surface-progress-standalone.surface-progress-idle { display: none; }
.partner-shell { min-height: 100dvh; background: var(--partner-canvas); }
.partner-main { padding: var(--cube-current-appbar-height) 0 0 var(--partner-sidebar) !important; min-width: 0; }
.workspace-content { padding: 16px 24px 24px; max-width: 1920px; margin: auto; min-width: 0; }
.workspace-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; gap: 16px; }
.workspace-heading > div { min-width: 0; }
.workspace-eyebrow { display: none; }
.workspace-heading h1 { font-size: 26px; font-weight: 600; letter-spacing: -.7px; line-height: 1.3; margin: 0 0 4px; color: var(--partner-ink); }
.workspace-heading p { font-size: 14px; color: var(--partner-muted); margin: 0; line-height: 1.5; }
.partner-topbar { height: var(--cube-current-appbar-height); left: 0 !important; width: 100% !important; background: #fff !important; border-bottom: 1px solid var(--partner-line); }
.partner-topbar .mud-toolbar { padding: 0 24px; gap: 20px; min-height: var(--cube-current-appbar-height); }
.partner-topbar .mud-button { border-radius:8px; }
.portal-brand { display:flex; align-items:center; gap:20px; flex:0 0 auto; color:var(--partner-muted); text-decoration:none; }
.portal-brand:hover { color:var(--partner-ink); text-decoration:none; }
.portal-brand img { display:block; width:118px; height:auto; }
.portal-brand span { padding-left:20px; border-left:1px solid var(--partner-line); font-size:13px; white-space:nowrap; }
@media (max-width:1199px) { .portal-brand span { display:none; } }
.global-search-trigger { color: var(--partner-muted) !important; background: var(--partner-nav-surface); padding: 7px 12px !important; border: 1px solid var(--partner-line); border-radius: 8px !important; margin-left: 0; min-width: 280px; }
.global-search-trigger .mud-button-label { justify-content: flex-start; }
.partner-tier { flex-shrink: 0; border: 0; background: transparent; padding: 0; border-radius: 8px; }
.partner-tier .ppg-tier-badge { font-size: 11px; border-width: 1px; border-radius:8px; }
.account-menu { margin-left: 2px; }
.account-menu .mud-icon-button { background: var(--partner-soft); color: var(--partner-accent-text); }
.partner-sidebar { position: fixed; inset: var(--cube-current-appbar-height) auto 0 0; width: var(--partner-sidebar); z-index: 1100; background: var(--partner-nav-surface); border-right: 1px solid var(--partner-line); display: flex; flex-direction: column; overflow-y: auto; }
.partner-navigation { padding: 14px 10px 12px; }
.legacy-app-return { flex-shrink: 0; white-space: nowrap; }
@media (max-width: 959px) {
    .legacy-app-return { min-width: 40px; padding: 7px !important; }
    .legacy-app-return-label { display: none; }
    .legacy-app-return .mud-button-icon-start { margin: 0; }
}
.nav-group-label { font-size: 12px; font-weight: 500; letter-spacing: 0; color: var(--partner-muted); padding: 12px 10px 7px; }
.partner-navigation .mud-nav-link { border-radius: 7px; padding: 8px 10px; margin: 1px 0; color: var(--partner-ink); font-size: 14px; line-height: 1.5; min-height: 38px; }
.partner-navigation .mud-nav-link .mud-nav-link-icon { font-size: 20px; color: var(--partner-muted); }
.partner-navigation .mud-nav-link.active { background: #e7eee9 !important; color: var(--partner-primary) !important; font-weight: 600; box-shadow: inset 3px 0 var(--partner-green); }
.partner-navigation .mud-nav-link.active .mud-nav-link-icon { color: var(--partner-accent-text); }
.partner-navigation .mud-nav-link:hover { background: var(--partner-hover); }
.portfolio-nav-label { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; min-width: 0; }
.portfolio-notification-badge { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; min-width: 22px; height: 22px; padding: 0 6px; border: 1px solid #d7b66e; border-radius: 999px; background: #f5dfac; color: #795014; font-size: 12px; line-height: 1; font-weight: 700; font-variant-numeric: tabular-nums; vertical-align: middle; white-space: nowrap; }
.household-quick-views .portfolio-notification-badge, .mud-list-item .portfolio-notification-badge { margin-left: 8px; }
.portfolio-mobile-view > .portfolio-notification-badge { margin-left: 8px; }
@media (max-width: 767.98px) {
    .portfolio-view-heading .portfolio-mobile-view { display: flex; align-items: center; }
    .portfolio-view-heading .portfolio-mobile-view > .mud-input-control { flex: 1; min-width: 0; }
}
.sidebar-footer { margin-top: auto; padding: 12px 20px; border-top: 1px solid var(--partner-line); color: var(--partner-muted); font-size: 12px; }
.brand-dot { display: inline-block; height: 7px; width: 7px; border-radius: 50%; background: var(--partner-green); margin-right: 7px; }
.mobile-menu-toggle { display: none !important; }
.mobile-drawer-header { display: flex; justify-content: space-between; align-items: center; padding: 18px; }
.mobile-drawer-header img { width: 120px; }
.partner-mobile-drawer.mud-drawer--closed { visibility: hidden; }
.skip-link { position: fixed; top: -100px; left: 16px; z-index: 2000; background: #02190d; color: white; padding: 12px 20px; border-radius: 8px; }
.skip-link:focus { top: 8px; }
:is(a, button, input, select, textarea):focus-visible { outline: 2px solid #387a54; outline-offset: 3px; }
.workspace-content:focus { outline: none; }
.workspace-content .mud-container { padding-left: 0; padding-right: 0; }
.workspace-content .mud-card { border: 1px solid var(--partner-line); box-shadow: 0 1px 2px #02190d08; border-radius: 10px; }
.workspace-content .mud-card-header { padding: 12px 16px; background: var(--partner-surface-subtle); border-bottom: 1px solid var(--partner-line); border-radius: 9px 9px 0 0; }
.workspace-content .mud-card-content { padding: 14px 16px; }
.workspace-content .mud-typography-h6 { font-size: 16px; font-weight: 600; }
.workspace-content .mud-typography-subtitle1 { font-weight: 600; }
.workspace-content .mud-button { border-radius: 8px; text-transform: none; }
.workspace-content .mud-button-filled-primary { background: var(--partner-primary); box-shadow: none; border-radius: 8px; padding: 8px 16px; }
.workspace-content .mud-button-filled-primary:hover { background: #28573e; }
:is(.workspace-content, .mud-dialog) .mud-input-outlined .mud-input-outlined-border { border-color: var(--partner-control-line); border-radius: 8px; }
:is(.workspace-content, .mud-dialog) :is(.mud-input-label, .mud-input-helper-text) { color: var(--partner-muted); }
:is(.workspace-content, .mud-dialog) .mud-input-helper-text { font-size: 13px; line-height: 1.5; }
:is(.workspace-content, .mud-dialog) .mud-button-outlined { border-color: currentColor; }
.workspace-content .mud-input-control { min-width: 0; }
.workspace-content .mud-grid-item { min-width: 0; }
.workspace-content .mud-alert { border-radius: 12px; }
.workspace-content .mud-alert-text-success { background: #eaf5e9; color: #28573e; }
.workspace-content .mud-alert-text-info { background: #edf4f9; }
.page-toolbar { background: #fff; box-shadow: none !important; border: 1px solid var(--partner-line); border-radius: 12px 12px 0 0 !important; }
.data-page { min-width: 0; }
.data-toolbar { gap: 12px; min-height: 60px; padding: 8px 16px; height: auto; flex-wrap: wrap; }
.data-toolbar .docs-search-bar.mud-input-control { margin-bottom: 0; background: #fff; }
:is(.workspace-content, .client-detail-dialog) .docs-search-bar .mud-input.mud-input-outlined .mud-input-outlined-border { border: 1px solid var(--partner-control-line); border-radius: 8px; }
:is(.workspace-content, .client-detail-dialog) .mud-input input.mud-input-root::placeholder { color: var(--partner-muted); opacity: 1; }
.table-guidance { color: var(--partner-muted); font-size: 13px; }
.page-filters { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 22px; border: 1px solid var(--partner-line); background: #fff; padding: 8px 18px; border-radius: 12px; margin-bottom: 14px; }
.filter-label .mud-typography { font-size: 14px; font-weight: 600; }
.page-filters .mud-typography { font-size: 14px; }
.page-filters .mud-checkbox { margin: 0; }
:is(.workspace-content, .mud-dialog) .e-grid { font-family: var(--cubee-font-sans); border: 1px solid var(--partner-line) !important; border-top: 0 !important; border-radius: 0 0 12px 12px; overflow: hidden; color: var(--partner-ink); }
:is(.workspace-content, .mud-dialog) .e-grid :is(.e-headercell, .e-detailheadercell, .e-groupdroparea) { background: var(--partner-surface-subtle); color: var(--partner-muted); border-color: var(--partner-line); }
:is(.workspace-content, .mud-dialog) .e-grid .e-headercelldiv { font-size: 14px; font-weight: 600; white-space: normal; height: auto; line-height: 1.35; }
:is(.workspace-content, .mud-dialog) .e-grid .e-rowcell { font-size: 14px; border-color: var(--partner-line); color: var(--partner-ink); font-variant-numeric: tabular-nums; }
:is(.workspace-content, .mud-dialog) .e-grid .e-row:hover .e-rowcell { background: var(--partner-hover); }
:is(.workspace-content, .mud-dialog) .e-grid .e-groupdroparea { font-size: 13px; padding: 9px 16px; }
.portfolio-grid:not(.virtualized-grid) .e-content { max-height: max(240px, calc(100dvh - 300px)); }
.data-page-filtered .portfolio-grid:not(.virtualized-grid) .e-content { max-height: max(240px, calc(100dvh - 364px)); }
:is(.workspace-content, .mud-dialog) .e-grid .e-gridpager { border-color: var(--partner-line); background: #fff; }
:is(.workspace-content, .mud-dialog) .e-grid .e-toolbar { background: #fff; border-color: var(--partner-line); }
:is(.workspace-content, .mud-dialog) .e-grid .e-toolbar .e-tbar-btn { background: transparent; color: #28573e; }
:is(.workspace-content, .mud-dialog) .e-grid .e-currentitem { background: var(--partner-primary); color: #fff; border-radius: 6px; }
:is(.workspace-content, .mud-dialog) .e-grid :is(td, th).e-focused { box-shadow: inset 0 0 0 2px #569b77 !important; }
.form-page { margin: 0 auto 24px; }
.calculator-page :is(.calculator-basics, .calculator-battery) > .mud-card { height: 100%; }
.calculator-page .calculator-form { padding: 0; min-width: 0; }
.calculator-wizard { max-width: 1200px; }
.calculator-wizard [hidden] { display: none !important; }
.calculator-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border: 1px solid var(--partner-line); border-radius: 10px; background: #fff; }
.calculator-step { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 6px 10px; border: 0; border-radius: 6px; color: var(--partner-muted); background: transparent; text-align: left; font: inherit; cursor: pointer; }
.calculator-step:hover { background: var(--partner-hover); }
.calculator-wizard .calculator-step, .calculator-wizard .calculator-disclosure-toggle { justify-content: flex-start; }
.calculator-step.is-active { background: var(--partner-hover); color: var(--partner-accent-text); }
.calculator-step:disabled { cursor: default; opacity: .6; }
.calculator-step-number { display: grid; place-items: center; flex: 0 0 24px; width: 24px; min-width: 24px; height: 24px; border: 1px solid var(--partner-line); border-radius: 50%; font-size: 13px; font-weight: 600; }
.calculator-step.is-active .calculator-step-number { background: var(--partner-primary); border-color: var(--partner-primary); color: white; }
.calculator-step strong { display: block; font-size: 14px; line-height: 1.4; }
.calculator-step-heading { padding: 16px 0 12px; }
.calculator-step-heading h2 { margin: 0 0 4px; font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -.3px; color: var(--partner-ink); }
.calculator-step-heading h2:focus { outline: none; }
.calculator-step-heading p, .calculator-help { margin: 0; font-size: 14px; line-height: 1.5; color: var(--partner-muted); }
.calculator-step-content { display: grid; gap: 12px; min-width: 0; }
.calculator-disclosure { min-width: 0; border: 1px solid var(--partner-line); border-radius: 10px; background: white; }
.calculator-disclosure > summary, .calculator-disclosure-toggle { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; padding: 10px 12px; border: 0; border-radius: 10px; background: transparent; color: var(--partner-ink); font: inherit; font-size: 14px; font-weight: 600; text-align: left; cursor: pointer; list-style: none; }
.calculator-disclosure > summary > span:first-of-type, .calculator-disclosure-toggle > span:first-of-type { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 12px; min-width: 0; }
.calculator-disclosure > summary::-webkit-details-marker { display: none; }
.calculator-disclosure > summary::before, .calculator-disclosure-toggle::before { content: '+'; flex: 0 0 20px; font-size: 22px; font-weight: 400; line-height: 1; color: #28573e; }
.calculator-disclosure[open] > summary::before, .calculator-disclosure-toggle[aria-expanded="true"]::before { content: '−'; }
.calculator-disclosure > summary:hover, .calculator-disclosure-toggle:hover { background: var(--partner-hover); }
.calculator-disclosure-note { font-size: 13px; font-weight: 400; line-height: 1.5; color: var(--partner-muted); }
.calculator-optional { margin-left: auto; color: var(--partner-muted); font-size: 12px; font-weight: 400; }
.calculator-disclosure-content { padding: 0 12px 12px; min-width: 0; }
.calculator-review-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.calculator-review-card { background: white; border: 1px solid var(--partner-line); border-radius: 10px; min-width: 0; }
.calculator-review-card header { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 16px; border-bottom: 1px solid var(--partner-line); }
.calculator-review-card h3 { margin: 0; color: var(--partner-ink); font-size: 15px; font-weight: 600; }
.calculator-review-card dl { margin: 0; padding: 6px 16px 12px; }
.calculator-review-card dl > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; padding: 7px 0; border-bottom: 1px solid var(--partner-line); font-size: 14px; line-height: 1.5; }
.calculator-review-card dl > div:last-child { border-bottom: 0; }
.calculator-review-card dt { color: var(--partner-muted); }
.calculator-review-card dd { margin: 0; text-align: right; font-weight: 600; color: var(--partner-ink); overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.calculator-review-card dd.is-missing { color: #9a5600; font-weight: 400; }
.calculator-missing-group { margin-top: 8px; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; }
.calculator-missing-group > span { flex: 1 1 420px; }
.calculator-delivery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 24px; margin-bottom: 12px; align-items: start; }
.calculator-navigation { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 0 0; margin-top: 12px; border-top: 1px solid var(--partner-line); }
.calculator-navigation > .mud-button { min-height: 42px; }
@media (max-width: 767px) {
    .calculator-step { flex-direction: column; align-items: flex-start; gap: 4px; padding: 8px; }
    .calculator-step strong { font-size: 13px; }
    .calculator-disclosure-note { flex-basis: 100%; }
    .calculator-review-grid, .calculator-delivery { grid-template-columns: minmax(0, 1fr); }
    .calculator-optional { display: none; }
}
@media (max-width: 399px) {
    .calculator-steps { gap: 2px; padding: 4px; }
    .calculator-navigation { flex-wrap: wrap; }
    .calculator-navigation > .mud-button { width: 100%; }
}
.calculator-page .mud-card-header { flex-wrap: wrap; gap: 6px 12px; }
.calculator-page .mud-card-header-content { min-width: 0; }
.calculator-page .mud-card-header .mud-typography-body2 { max-width: 90ch; margin-top: 4px; }
.calculator-page .mud-input-control { margin-top: 8px; }
/* Every calculator field keeps its label above the value, including empty fields.
   MudBlazor scales that label to 75%; reserve the full available width after scaling. */
.workspace-content .calculator-page .mud-input-control > .mud-input-control-input-container > .mud-input-label { max-width: calc((100% - 28px) / .75); }
.calculator-page .mud-input-adornment { flex-shrink: 0; white-space: nowrap; }
.calculator-page .mud-input-helper-text { line-height: 1.5; overflow-wrap: anywhere; }
.calculator-page .cubee-prefilled { box-shadow: inset 3px 0 0 0 var(--mud-palette-success); border-radius: 4px; }
.calculator-import-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.calculator-import-option { min-width: 0; }
.calculator-import-option:only-child { grid-column: 1 / -1; }
.calculator-import-option .mud-paper { text-align: center; box-shadow: none; }
.calculator-import-progress { padding: 16px; }
.calculator-import-progress-heading { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 8px; margin-bottom: 12px; }
.calculator-import-progress-heading > div { min-width: 0; text-align: left; overflow-wrap: anywhere; }
.calculator-import-progress-heading > .mud-typography { white-space: nowrap; }
.calculator-import-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.calculator-import-steps > div { min-width: 0; gap: 4px; }
.calculator-page .mud-file-upload .mud-paper { padding: 18px !important; overflow-wrap: anywhere; }
.calculator-page .mud-file-upload .mud-paper:focus-within { outline: 2px solid var(--partner-green); outline-offset: 2px; }
.calculator-sales-heading > .mud-typography { flex: 1 1 auto; }
.calculator-page .calculator-submit > .mud-button { align-self: flex-end; min-width: 220px; }
@media (max-width: 959px) {
    .calculator-import-options { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 599px) {
    .calculator-import-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .calculator-page .mud-radio-group { display: flex; flex-wrap: wrap; }
    .calculator-page .mud-switch, .calculator-page .mud-checkbox { max-width: 100%; margin-right: 0; }
    .calculator-page .mud-switch-base { flex-shrink: 0; }
    .calculator-page .calculator-submit > .mud-button { width: 100%; min-width: 0; }
}
.form-toolbar { flex-wrap: wrap; height: auto; min-height: 56px; gap: 12px; padding: 8px 16px; }
.form-page .mud-card-header .mud-typography-h6 { color: var(--partner-ink); }
.installation-filters { flex-wrap: wrap; }
.installation-filters .mud-typography { font-size: 14px; }
.settings-tabs .mud-list { display: flex; flex-wrap: wrap; gap: 6px; padding: 0; }
.settings-tabs .mud-list-item { flex: 0 1 auto; width: auto; border-radius: 24px; }
.settings-tabs, .document-tabs { padding: 8px; border: 1px solid var(--partner-line); background: #fff; border-radius: 14px; margin-bottom: 20px; }
.document-tabs { display: flex; flex-wrap: wrap; gap: 6px; }
.document-tabs .mud-button { padding: 10px 16px; }
.document-frame { height: calc(100dvh - 250px); min-height: 360px; border: 1px solid var(--partner-line); border-radius: 10px; background: white; }
.settings-page .mud-tabs { min-width: 0; }
.settings-page .mud-tab-panel > .mud-container { margin-top: 20px !important; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 16px; }
.dashboard-overview { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.dashboard-open-households { flex-shrink: 0; }
.dashboard-stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; flex: 1; min-width: 0; }
.dashboard-stat { display: flex; align-items: center; gap: 10px; background: #fff; padding: 8px 12px; border: 1px solid transparent; border-bottom-color: var(--partner-line); border-radius: 0; color: var(--partner-ink); text-decoration: none; }
.dashboard-stat:hover { border-bottom-color: var(--partner-green); background: var(--partner-hover); color: var(--partner-ink); }
.stat-icon { display: grid; place-items: center; width: 34px; height: 34px; background: var(--partner-soft); border-radius: 8px; color: var(--partner-accent-text); flex-shrink: 0; }
.stat-number { font-size: 24px; font-weight: 600; line-height: 1.2; font-variant-numeric: tabular-nums; }
.stat-label { margin-top: 3px; font-size: 14px; line-height: 1.4; color: var(--partner-muted); }
.dashboard-panel { min-width: 0; position: relative; isolation: isolate; }
.dashboard-panel .mud-card { height: 100%; }
.dashboard-panel-wide { grid-column: 1 / -1; }
.metric-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
.metric-grid-live { grid-template-columns: repeat(5, minmax(0,1fr)); }
.metric-coverage { display: block; margin-top: 5px; color: var(--partner-muted); font-size: 12px; line-height: 1.4; }
.metric-grid-trading { grid-template-columns: repeat(4, minmax(0,1fr)); }
.metric { padding: 10px 12px; border-radius: 7px; background: var(--partner-surface-subtle); min-width: 0; }
.metric-value { font-size: 23px; font-weight: 600; color: var(--partner-ink); font-variant-numeric: tabular-nums; line-height: 1.3; }
.metric-label { font-size: 14px; color: var(--partner-muted); margin-top: 4px; line-height: 1.45; }
.dashboard-affiliate { margin-top: 16px; }
/* Studies retain a single compact white panel with neutral separators. */
.dashboard-studies { margin: 12px 0 16px; padding: var(--partner-card-padding); background: #fff; border: 1px solid var(--partner-line); border-radius: var(--partner-radius); min-width: 0; }
.dashboard-studies :is(.study-stats-panel, .study-team-panel) { border: 0; border-radius: 0; }
.dashboard-studies > .study-stats-panel { border-block: 1px solid var(--partner-line); }
.dashboard-studies .study-panel-heading { padding-inline: 0; }
.dashboard-studies-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 8px; }
.dashboard-studies-heading h2 { margin: 0; color: var(--partner-ink); font-size: 20px; font-weight: 600; }
.dashboard-studies-heading p, .study-panel-heading p { margin: 3px 0 0; color: var(--partner-muted); font-size: 13px; line-height: 1.5; }
.dashboard-studies-heading > .mud-button { flex-shrink: 0; }
.study-stats-panel, .study-team-panel, .study-branding-panel { min-width: 0; background: #fff; border: 1px solid var(--partner-line); border-radius: 10px; overflow: hidden; }
.study-stats-caption { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 4px 12px; padding: 6px 10px; border-bottom: 1px solid var(--partner-line); font-size: 13px; color: var(--partner-muted); }
.study-stats-caption strong { color: var(--partner-ink); font-weight: 600; }
.study-stats-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.study-stat { display: grid; grid-template-columns: auto 1fr; align-items: baseline; gap: 2px 8px; padding: 8px 10px; min-width: 0; border-left: 1px solid var(--partner-line); }
.study-stat:first-child { border-left: 0; }
.study-stat-total { background: #fff; }
.study-stat-value { color: var(--partner-ink); font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; line-height: 1.3; }
.study-stat-label { font-size: 14px; color: var(--partner-ink); }
.study-stat-trend { grid-column: 1 / -1; display: flex; align-items: center; flex-wrap: wrap; gap: 4px; font-size: 12px; color: var(--partner-muted); margin-top: 0; }
.study-stat-trend.is-up { color: #28573e; }
.study-stat-trend.is-down { color: #8a4c22; }
.study-stat-previous { color: var(--partner-muted); margin-left: 4px; }
.dashboard-studies-content { display: grid; grid-template-columns: minmax(0,1fr); align-items: start; gap: 10px; margin-top: 10px; }
.study-panel-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 6px 12px; border-bottom: 1px solid var(--partner-line); }
.study-panel-heading h3 { margin: 0; font-size: 16px; font-weight: 600; color: var(--partner-ink); }
.study-member-select { flex: 0 1 240px; width: 240px; margin-top: 0 !important; }
.study-team-summary { display: flex; align-items: baseline; gap: 4px; flex-wrap: wrap; color: var(--partner-muted); font-size: 13px; }
.study-more-actions { display: flex; justify-content: center; padding-top: 4px; }
.study-team-summary strong { font-weight: 600; color: var(--partner-ink); }
.study-table { border-radius: 0 !important; }
.study-table .mud-table-head .mud-table-cell { background: var(--partner-surface-subtle); color: var(--partner-muted); font-size: 12px; font-weight: 600; white-space: nowrap; }
.study-table .mud-table-body .mud-table-cell { font-size: 13px; border-color: var(--partner-line); }
.study-table .mud-table-body .mud-table-row:last-child .mud-table-cell { border-bottom: 0; }
.study-table .mud-table-row:hover { background: var(--partner-hover) !important; }
.study-identity { display: grid; min-width: 0; max-width: 260px; gap: 3px; }
.study-identity > * { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.study-identity strong { font-weight: 600; }
.study-identity span, .study-date small, .study-muted { color: var(--partner-muted); font-size: 12px; }
.study-date { display: grid; gap: 3px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.study-money { white-space: nowrap; color: var(--partner-ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.study-payback { white-space: nowrap; font-variant-numeric: tabular-nums; }
.study-row-actions { display: flex; justify-content: flex-end; gap: 2px; }
.study-row-actions .mud-icon-button { color: var(--partner-muted); }
.study-branding-body { padding: 12px; }
.study-branding-status { display: flex; align-items: center; gap: 6px; color: #80551d; font-size: 13px; }
.study-branding-status.is-ready { color: #28573e; }
.study-branding-description { margin: 8px 0 12px; font-size: 13px; line-height: 1.6; color: var(--partner-muted); }
.study-branding-checklist > div { padding: 9px 0; border-top: 1px solid var(--partner-line); overflow-wrap: anywhere; }
.study-branding-checklist .mud-typography-caption { font-size: 12px; }
.study-branding-action { margin-top: 12px !important; }
.study-empty-state { display: flex; align-items: center; flex-direction: column; padding: 28px 16px; text-align: center; gap: 10px; }
.study-empty-state h4 { margin: 0; font-size: 16px; font-weight: 600; }
.study-empty-state p { margin: 0 0 4px; max-width: 420px; font-size: 13px; color: var(--partner-muted); line-height: 1.6; }
.study-state-message { margin: 0; padding: 20px 12px; font-size: 13px; color: var(--partner-muted); }
.study-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.dashboard-affiliate-link { display: flex; align-items: center; gap: 14px; margin: 24px 0 0; padding: 18px; background: #fff; border: 1px solid var(--partner-line); border-radius: var(--partner-radius); color: var(--partner-muted); font-size: 14px; line-height: 1.6; }
.dashboard-affiliate-link > span { display: grid; gap: 3px; min-width: 0; }
.dashboard-affiliate-link strong { color: var(--partner-ink); font-weight: 600; }
.dashboard-affiliate-link > .mud-icon-root { flex-shrink: 0; }
.dashboard-affiliate-link > .mud-icon-root:last-child { margin-left: auto; }
.dashboard-affiliate-link:hover { color: var(--partner-ink); background: var(--partner-hover); }
.dashboard-affiliate-link:focus-visible { outline: 3px solid #28573e; outline-offset: 3px; }
@media (max-width: 700px) {
    .dashboard-studies-heading { align-items: flex-start; flex-wrap: wrap; }
    .study-stats-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .study-stat:nth-child(3) { border-left: 0; }
    .study-stat:nth-child(n+3) { border-top: 1px solid var(--partner-line); }
    .study-stat { padding: 12px; }
    .study-panel-heading { flex-wrap: wrap; }
    .study-member-select { flex: 1 1 100%; width: 100%; }
}
@media (max-width: 599.98px) {
    .study-table .mud-table-cell { gap: 12px; }
    .study-identity { max-width: min(240px,55vw); text-align: right; }
    .study-date { text-align: right; }
    .study-table .mud-table-body .mud-table-row { border-bottom: 1px solid var(--partner-line); }
}
.mud-dialog { border: 1px solid var(--partner-line); border-radius: 12px; box-shadow: 0 24px 80px #00000026; }
.mud-dialog-title { border-bottom: 1px solid var(--partner-line); padding: 14px 20px; }
.mud-dialog .mud-dialog-content { min-width: 0; }
.mud-dialog .mud-button { border-radius: 8px; }
.mud-dialog .mud-grid-item { min-width: 0; }
.client-detail-dialog { width: min(1440px, calc(100vw - 48px)) !important; max-width: min(1440px, calc(100vw - 48px)) !important; max-height: calc(100dvh - 48px); margin: 24px; }
.client-detail-layout { display: grid; grid-template-columns: 236px minmax(0, 1fr); min-height: 0; }
.client-detail-sidebar { border-right: 1px solid var(--partner-line); background: #fff; overflow-y: auto; max-height: calc(100dvh - 112px); }
.client-detail-sidebar .mud-avatar { background: #e1f4e1; color: #28573e; }
.client-detail-sidebar .mud-card { background: #fff; border-radius: 8px; margin: 8px; text-align: left; }
.client-detail-sidebar .client-identity { padding: 12px; gap: 8px; align-items: flex-start; }
.client-detail-sidebar .client-identity .mud-avatar { width: 32px; height: 32px; font-size: 14px; }
.client-detail-sidebar .client-identity .mud-card-header-avatar { margin-right: 0; }
.client-detail-sidebar .client-identity .mud-typography-subtitle1 { font-size: 15px; font-weight: 600; line-height: 1.5; }
.client-detail-sidebar .household-choice-active { border: 2px solid var(--partner-accent-text); background: var(--partner-hover); }
.household-choice-button { justify-content: flex-start; text-align: left; padding: 10px 12px; font-size: 14px; font-weight: 600; line-height: 1.5; white-space: normal; }
.household-choice-button .mud-button-label { justify-content: flex-start; }
.household-choice-details { padding: 0 12px 12px; }
.household-choice-details .mud-typography { font-size: 14px; line-height: 1.5; }
.client-detail-sidebar .mud-typography { overflow-wrap: anywhere; }
.client-detail-main { min-width: 0; background: var(--partner-canvas); position: relative; isolation: isolate; z-index: 0; }
.client-detail-content { max-height: calc(100dvh - 112px); overflow-y: auto; padding: 16px; }
.client-detail-dialog .mud-dialog-content { padding: 0; position: relative; border-radius: 0; }
.client-detail-dialog.mud-dialog-fullscreen { width: 100%; max-width: 100vw; min-width: 0; }
.client-detail-dialog .mud-dialog-title { position: sticky; top: 0; background: #fff; z-index: 5; }
.client-detail-dialog .mud-card { border: 1px solid var(--partner-line); box-shadow: none; }
.client-detail-dialog .mud-card-header { padding: 12px 16px; }
.client-detail-dialog .mud-card-content { padding: 12px 16px; }
.client-detail-dialog .household-choice-active { border: 2px solid #28573e; }
.client-detail-dialog .household-choice-details { padding: 0 12px 12px; }
.client-detail-dialog .client-identity { padding: 12px; }
.client-detail-dialog .mud-typography-h6 { font-size: 18px; font-weight: 600; }
.client-detail-dialog .mud-typography-subtitle1 { font-weight: 600; }
.client-detail-content .mud-typography-caption { font-size: 14px; line-height: 1.45; }
.household-overview-basics .mud-typography.mud-warning-text { color: #8a5000 !important; }
.household-overview-basics > .mud-card-content.pt-12 { padding-top: 16px !important; }
.household-overview-basics > .mud-card-content .mud-progress-circular:not(.translate-middle) { width: 140px !important; height: 140px !important; }
.household-overview-basics > .mud-card-content .mud-progress-circular.translate-middle { width: 108px !important; height: 108px !important; }
.client-detail-content .mud-toolbar { min-height: 52px; }
.client-detail-dialog .mud-tabs-toolbar { background: #fff; }
.household-statistics { position: relative; isolation: isolate; }
.chart-controls { position: sticky; top: 0; z-index: 2; background: #fff; border-radius: inherit; }
.household-chart { position: relative; isolation: isolate; z-index: 0; min-width: 0; }
.global-search-dialog { position: relative; }
.global-search-dialog :is(.mud-focus-trap, .mud-focus-trap-child-container, .mud-dialog-content) { border-radius: inherit; }
.global-search-dialog .mud-global-search { z-index: 0; }
.partner-tier-dialog { width: min(960px, calc(100vw - 48px)) !important; max-width: min(960px, calc(100vw - 48px)) !important; max-height: calc(100dvh - 48px); margin: 24px; position: relative; }
.partner-tier-dialog :is(.mud-focus-trap, .mud-focus-trap-child-container) { border-radius: inherit; }
.partner-tier-dialog .mud-dialog-title { position: relative; padding: 12px 20px; background: #fff; flex-shrink: 0; border-radius: 11px 11px 0 0; }
.partner-tier-dialog .mud-dialog-title .mud-typography { font-size: 20px; font-weight: 600; }
.partner-tier-dialog .tier-dialog-content { padding: 12px 20px; background: var(--partner-surface-subtle); min-height: 0; }
.partner-tier-dialog .tier-dialog-actions { padding: 10px 20px; border-top: 1px solid var(--partner-line); background: #fff; justify-content: space-between; flex-shrink: 0; }
.tier-dialog-actions .mud-button { min-height: 40px; padding: 8px 16px; text-transform: none; }
.tier-dialog-actions .mud-button-filled { box-shadow: none; background: var(--partner-primary); }
.tier-loading { min-height: 200px; padding: 16px; border: 1px solid var(--partner-line); border-radius: 8px; background: #fff; color: var(--partner-muted); font-size: 14px; }
.tier-loading p { margin-top: 16px; }
.tier-summary { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 24px; padding: 14px 20px; background: var(--partner-surface-subtle); color: var(--partner-ink); border-radius: 10px; }
.tier-current { display: flex; align-items: center; gap: 14px; min-width: 0; }
.tier-emblem { width: 48px; height: 48px; flex-shrink: 0; display: grid; place-items: center; background: #e6f9b2; color: var(--partner-ink); border-radius: 12px; }
.tier-emblem .mud-icon-root { font-size: 30px; }
.tier-eyebrow { font-size: 13px; line-height: 1.5; color: var(--partner-muted); margin: 0 0 4px; }
.tier-current h2 { font-size: 25px; line-height: 1.3; font-weight: 600; margin: 0; letter-spacing: -.5px; }
.tier-next { border-left: 1px solid var(--partner-line); padding-left: 24px; min-width: 0; }
.tier-next-value { font-size: 22px; line-height: 1.35; font-weight: 600; margin: 0; }
.tier-progress { appearance: none; display: block; width: 100%; height: 8px; margin: 10px 0 7px; border: 0; border-radius: 999px; overflow: hidden; background: var(--partner-line); accent-color: var(--partner-green); }
.tier-progress::-webkit-progress-bar { background: var(--partner-line); border-radius: inherit; }
.tier-progress::-webkit-progress-value { background: var(--partner-green); border-radius: inherit; }
.tier-progress::-moz-progress-bar { background: var(--partner-green); border-radius: inherit; }
.tier-progress-caption { font-size: 13px; line-height: 1.5; color: var(--partner-muted); margin: 0; font-variant-numeric: tabular-nums; }
.tier-totals { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 12px; }
.tier-total { padding: 10px 14px; background: #fff; border: 1px solid var(--partner-line); border-radius: 8px; min-width: 0; }
.tier-total-primary { background: #fff; border-color: var(--partner-control-line); }
.tier-total h3 { font-size: 14px; line-height: 1.5; font-weight: 500; margin: 0; color: var(--partner-muted); }
.tier-total-value { font-size: 24px; line-height: 1.3; font-weight: 600; color: var(--partner-ink); margin: 5px 0; font-variant-numeric: tabular-nums; }
.tier-total-value span { font-size: 16px; font-weight: 500; }
.tier-help { font-size: 13px; line-height: 1.5; color: var(--partner-muted); margin: 0; }
.tier-section-heading { font-size: 15px; line-height: 1.5; font-weight: 600; margin: 0; color: var(--partner-ink); }
.tier-levels { margin-top: 14px; }
.tier-level-list { list-style: none; padding: 0; margin: 8px 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.tier-level { background: #fff; border: 1px solid var(--partner-line); border-radius: 8px; padding: 9px 12px; min-width: 0; }
.tier-level-current { background: var(--partner-hover); border: 2px solid var(--partner-accent-text); padding: 8px 11px; }
.tier-level-top { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; min-height: 22px; }
.tier-level-marker { display: flex; color: var(--partner-muted); }
.tier-level-marker .mud-icon-root { font-size: 21px; }
.tier-level-status { font-size: 12px; line-height: 1.4; font-weight: 600; color: #28573e; }
.tier-level-name { font-size: 14px; line-height: 1.45; font-weight: 600; color: var(--partner-ink); margin: 0 0 3px; }
.tier-explanation { max-width: 760px; }
.tier-activity { margin-top: 14px; min-width: 0; }
.tier-activity-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 10px; }
.tier-activity-heading > .tier-help { flex-shrink: 0; }
.tier-empty { display: flex; align-items: center; gap: 14px; background: #fff; border: 1px solid var(--partner-line); border-radius: 8px; padding: 14px; font-size: 14px; }
.tier-empty > .mud-icon-root { color: var(--partner-muted); }
.tier-empty p { margin: 0; }
.partner-tier-dialog .e-grid { font-family: var(--cubee-font-sans); border: 1px solid var(--partner-line); border-radius: 8px; overflow: hidden; }
.partner-tier-dialog .e-grid .e-headercell { background: #fff; border-color: var(--partner-line); color: var(--partner-ink); }
.partner-tier-dialog .e-grid .e-headercelldiv { font-size: 14px; font-weight: 600; }
.partner-tier-dialog .e-grid .e-rowcell { font-size: 14px; color: var(--partner-ink); border-color: var(--partner-line); }
.partner-tier-dialog .e-grid .e-rowcell.e-selectionbackground { background: var(--partner-hover); }
.tier-credit-value { color: #28573e; font-weight: 600; font-variant-numeric: tabular-nums; }
@media (max-width: 599px) {
    .partner-tier-dialog:not(.mud-dialog-fullscreen) { width: calc(100vw - 16px) !important; max-width: calc(100vw - 16px) !important; max-height: calc(100dvh - 16px); margin: 8px; }
    .partner-tier-dialog .mud-dialog-title { padding: 12px 16px; }
    .partner-tier-dialog .mud-dialog-content.tier-dialog-content { padding: 12px; }
    .partner-tier-dialog .tier-dialog-actions { padding: 10px 12px; flex-wrap: wrap; gap: 8px; }
    .tier-dialog-actions .mud-button { padding: 8px 12px; }
    .tier-summary { grid-template-columns: minmax(0, 1fr); padding: 16px; gap: 14px; }
    .tier-current h2 { font-size: 23px; }
    .tier-next { border-left: 0; border-top: 1px solid var(--partner-line); padding: 12px 0 0; }
    .tier-next-value { font-size: 21px; }
    .tier-totals { grid-template-columns: minmax(0, 1fr); gap: 8px; }
    .tier-total { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 12px; padding: 10px 12px; }
    .tier-total-value { font-size: 22px; margin: 0; }
    .tier-total > .tier-help { grid-column: 1 / -1; margin-top: 3px; }
    .tier-level-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
    .tier-activity-heading { flex-wrap: wrap; gap: 3px; }
    .partner-tier-dialog .e-grid.e-row-responsive .e-row { height: auto !important; }
    .partner-tier-dialog .e-grid.e-row-responsive .e-rowcell { white-space: normal; overflow-wrap: anywhere; height: auto; min-height: 44px; padding: 12px; }
    .partner-tier-dialog .e-grid.e-row-responsive .e-rowcell::before { font-size: 13px; color: var(--partner-muted); white-space: normal !important; text-overflow: clip; }
}
@media (max-width: 959px) {
    .installation-offers { order: -1; }
    .client-detail-layout { grid-template-columns: minmax(0, 1fr); }
    .client-detail-sidebar { border-right: 0; border-bottom: 1px solid var(--partner-line); max-height: 240px; }
    .client-detail-sidebar > .overflow-auto { display: flex; overflow-x: auto; }
    .client-detail-sidebar > .overflow-auto > .mud-card { min-width: 250px; max-width: 290px; flex-shrink: 0; }
    .client-detail-sidebar > .overflow-auto > .mud-divider { display: none; }
    .client-detail-content { max-height: none; overflow: visible; padding: 16px; }
    .household-overview-supply { border-left: 0 !important; border-top: 1px solid var(--partner-line); }
}
@media (min-width: 1600px) {
    .workspace-content { padding: 20px 28px 32px; }
}
@media (max-width: 1199px) {
    .workspace-content { padding: 18px 20px 28px; }
    .global-search-trigger { margin-left: 0; }
    .metric-grid-live { grid-template-columns: repeat(3,minmax(0,1fr)); }
    .dashboard-overview { flex-wrap: wrap; gap: 12px; }
    .dashboard-stats { flex-basis: 100%; }
    .dashboard-stat { padding: 12px; gap: 10px; }
    .metric-grid-trading { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 959px) {
    .partner-sidebar { display: none; }
    .partner-main { padding-left: 0 !important; }
    .partner-topbar { left: 0 !important; width: 100% !important; }
    .partner-topbar .mud-toolbar { padding: 0 16px; gap: 12px; }
    .mobile-menu-toggle { display: inline-flex !important; }
    .portal-brand { flex: 0 0 auto; }
    .portal-brand img { width: 90px; }
    .portal-brand span { display: none; }
    .global-search-trigger { min-width: 0; margin-left: auto; padding: 9px !important; background: transparent; border: 0; }
    .global-search-trigger .mud-button-label > span:not(.mud-button-icon-start) { display: none; }
    .global-search-trigger .mud-button-icon-start { margin: 0; }
    .partner-topbar .mud-toolbar > .flex-grow-1 { display: none; }
    .dashboard-grid { gap: 16px; }
}
@media (max-width: 599px) {
    .installation-filters { flex-direction: column !important; gap: 0 !important; }
    .installation-page .e-grid .e-rightfreeze { position: static !important; }
    .workspace-content { padding: 16px 12px 24px; }
    .workspace-heading { margin-bottom: 14px; }
    .workspace-heading h1 { font-size: 24px; }
    .workspace-heading p { font-size: 14px; max-width: 340px; }
    .partner-topbar .mud-toolbar { gap: 6px; padding: 0 10px; }
    .partner-tier { max-width: 128px; }
    .partner-tier .ppg-tier-badge { gap: 5px; padding: 4px 8px 4px 4px; font-size: 9px; }
    .partner-tier .ppg-tier-badge-icon { width: 24px; height: 24px; }
    .partner-tier .ppg-tier-badge-text { display: none; }
    .partner-tier .mud-typography { font-size: 10px; }
    .partner-tier .mud-chip { margin: 0; }
    .dashboard-stats { gap: 8px; }
    .dashboard-stat { padding: 10px 8px; flex-direction: column; align-items: flex-start; gap: 8px; }
    .stat-icon { width: 30px; height: 30px; border-radius: 8px; }
    .stat-icon .mud-icon-root { font-size: 20px; }
    .stat-number { font-size: 23px; }
    .stat-label { font-size: 13px; line-height: 1.4; }
    .dashboard-grid { grid-template-columns: minmax(0, 1fr); }
    .metric-grid-live { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .metric { padding: 10px; }
    .metric-value { font-size: 20px; }
    .workspace-content .mud-card-header { padding: 10px 12px; flex-wrap: wrap; gap: 8px; }
    .workspace-content .mud-card-header .mud-card-header-actions { margin: 0; }
    .workspace-content .mud-card-content { padding: 12px; }
    .data-toolbar { gap: 10px; padding: 12px; }
    .table-guidance { font-size: 13px; flex: 1 1 100%; order: 1; }
    .data-toolbar .mud-spacer { display: none; }
    .data-toolbar .mud-input-control { flex: 1 1 100%; width: 100% !important; max-width: none !important; order: 2; }
    :is(.workspace-content, .mud-dialog) .e-grid.e-row-responsive .e-row { height: auto !important; border-bottom: 8px solid var(--partner-surface-subtle); }
    :is(.workspace-content, .mud-dialog) .e-grid.e-row-responsive .e-rowcell { white-space: normal; overflow-wrap: anywhere; min-height: 40px; height: auto; padding: 12px 16px; }
    :is(.workspace-content, .mud-dialog) .e-grid.e-row-responsive .e-rowcell::before { color: var(--partner-muted); font-size: 13px; white-space: normal !important; text-overflow: clip; }
    .portfolio-grid:not(.virtualized-grid) .e-content, .data-page-filtered .portfolio-grid:not(.virtualized-grid) .e-content { max-height: none; }
    .page-filters { gap: 0; padding: 10px 12px; }
    .filter-label { flex-basis: 100%; padding-left: 9px; }
    .page-filters .mud-checkbox { width: 100%; }
    .form-toolbar { padding: 12px; gap: 6px; }
    .form-toolbar .mud-switch { margin-right: 0 !important; }
    .document-tabs .mud-button { flex: 1 1 45%; font-size: 14px; padding: 10px; }
    .document-frame { height: 65dvh; min-height: 440px; }
    .settings-tabs .mud-list-item { padding: 10px 12px; }
    .settings-tabs .mud-typography { font-size: 14px; }
    .mud-dialog:not(.mud-dialog-fullscreen) { max-width: calc(100vw - 16px) !important; width: calc(100vw - 16px); max-height: calc(100dvh - 16px); margin: 8px; border-radius: 12px; }
    .client-detail-dialog:not(.mud-dialog-fullscreen) { width: 100vw !important; max-width: 100vw !important; max-height: 100dvh; margin: 0; border-radius: 0; }
    .mud-dialog .mud-dialog-content { padding: 16px; }
    .client-detail-dialog .mud-dialog-content { padding: 0; }
    .client-detail-content .mud-toolbar { height: auto; flex-wrap: wrap; gap: 8px; padding: 12px 16px; }
    .client-detail-content .mud-toolbar:has(> .mud-select) > .mud-typography { flex-basis: 100%; }
    .client-detail-content .mud-toolbar > .mud-select { flex: 1 1 180px; min-width: 0; }
    .client-detail-content .mud-toolbar .mud-input-control { min-width: 0 !important; width: 100%; margin-right: 0 !important; }
    .client-detail-content .mud-toolbar > .mud-input-control { flex: 1 1 100%; }
    .client-detail-content .d-flex.flex-row:has(> .mud-list-item) { flex-wrap: wrap; }
    .mud-dialog .mud-dialog-actions { flex-wrap: wrap; padding: 12px 16px; }
    .mud-dialog .mud-grid-item-xs-3 { flex-basis: 50%; max-width: 50%; }
    .mud-dialog .mud-grid-item-xs-4, .mud-dialog .mud-grid-item-xs-5, .mud-dialog .mud-grid-item-xs-6, .mud-dialog .mud-grid-item-xs-7, .mud-dialog .mud-grid-item-xs-8 { flex-basis: 100%; max-width: 100%; }
}
@media (max-width: 399px) {
    .portal-brand img { width: 76px; }
    .partner-tier .ppg-tier-badge { padding: 6px; }
    .partner-tier .ppg-tier-badge-text { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .partner-shell *, .mud-dialog { scroll-behavior: auto !important; transition: none !important; }
}
