/* Visual company overview: no minimum-width tables or horizontal overflow. */
.company-cards .company-card.compact-company,
.company-cards .product-card,
.company-cards .badge,
.company-cards .version-badge,
.company-cards .usage-chip,
.company-cards .client-version,
.global-version-section .global-version-card,
.global-version-section .usage-chip,
.global-version-section progress {border-radius:0}
.compact-global {border:1px solid var(--line);border-radius:8px;background:#fff;padding:0}
.compact-global > summary {padding:14px 18px;font-size:13px}
.compact-global .global-version-grid {padding:0 16px}
.compact-global .global-version-note {padding:0 16px 12px}
.company-cards {gap:10px!important}
.company-card.compact-company {padding:0;border-radius:10px;border-color:#e0e5e8;box-shadow:0 2px 6px rgba(25,40,50,.025);transition:border-color .15s,box-shadow .15s}
.company-card.compact-company:hover {border-color:#b9c9c5;box-shadow:0 3px 12px rgba(25,40,50,.05)}
.compact-company-summary {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,2fr) 100px 20px;align-items:center;gap:20px;padding:16px 20px;list-style:none;min-width:0}
.compact-company-identity {display:flex;flex-direction:column;gap:6px;min-width:0;overflow-wrap:anywhere}
.compact-contact {font-size:12px;font-weight:400;color:var(--muted);line-height:1.5}
.compact-contact > span {display:block}
.compact-programs {display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}
.compact-program {display:flex;flex-direction:column;gap:4px;padding:0 12px;min-width:0;max-width:100%;overflow-wrap:anywhere;text-align:right}
.compact-program-name {font-size:10px;font-weight:650;color:#526171;letter-spacing:.04em}
.compact-program-name::before {content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#7c9b93;margin-right:6px;vertical-align:middle}
.compact-program-count {font-size:18px;font-weight:400;font-variant-numeric:tabular-nums;color:var(--muted)}
.compact-program-count strong {font-size:28px;color:var(--green);letter-spacing:-.04em}
.compact-counter-caption {font-size:10px;color:var(--muted);font-weight:400}
.compact-program-count > span {font-size:10px;color:var(--muted)}
.compact-company-summary::-webkit-details-marker {display:none}
.compact-company-summary:hover {background:#fcfdfd}
.compact-company-summary:focus-visible {outline:2px solid #416bb0;outline-offset:-3px}
.compact-company-name {font-size:16px;letter-spacing:-.025em;line-height:1.35;overflow-wrap:anywhere;min-width:0}
.compact-metric {display:flex;flex-direction:column;gap:3px;text-align:right;min-width:0}
.compact-metric strong {font-size:23px;line-height:1.1;color:var(--green);font-variant-numeric:tabular-nums}
.compact-metric > span {font-size:10px;font-weight:500;color:var(--muted)}
.compact-total {border-left:1px solid #e6eaed;padding-left:16px}
.compact-total strong {color:#333e45;font-size:16px;letter-spacing:-.02em;white-space:nowrap}
.compact-chevron {font-size:18px;text-align:center;color:#7a8987;transition:transform .15s}
.compact-company[open] > summary {background:#f7faf9;border-bottom:1px solid #e0e8e5;box-shadow:inset 3px 0 #789c8e}
.compact-company[open] > summary .compact-chevron {transform:rotate(180deg)}
.compact-company-body {min-width:0}
.compact-company-body .company-card-head {padding:14px 20px;background:white}
.compact-seats-title {margin:0;padding:16px 20px;font-size:14px;background:#fafbfc}
@media(max-width:750px) {
 .compact-company-summary {grid-template-columns:minmax(0,1fr) 88px 16px;gap:12px;padding:14px 12px}
 .compact-company-identity {grid-column:1;grid-row:1}
 .compact-total {grid-column:2;grid-row:1}
 .compact-chevron {grid-column:3;grid-row:1}
 .compact-programs {grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:16px}
 .compact-program {flex:1 1 90px;padding:0;text-align:left}
 .compact-company-name {font-size:14px}
 .compact-metric strong {font-size:16px}
 .compact-metric > span {font-size:9px}
}
.global-version-section {margin-bottom:30px;min-width:0}
.global-version-section h2 {margin-bottom:14px;font-size:15px;letter-spacing:-.015em}
.global-version-section h2 > span {display:inline-block;margin-left:8px;font-weight:400}
.global-version-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:14px}
.global-version-card {background:#fbfcfd;border:1px solid #e0e5e8;border-radius:10px;padding:18px;min-width:0;overflow-wrap:anywhere}
.global-version-card h3 {font-size:15px;margin:0}
.global-version-row {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:center;margin:14px 0;font-size:12px}
.global-version-row > span {text-align:right;color:var(--muted)}
.global-version-row progress {appearance:none;border:0;border-radius:6px;overflow:hidden;width:100%;min-width:0;height:5px;background:#e8edef;accent-color:#78998e}
.global-version-row progress::-webkit-progress-bar {background:#e8edef}
.global-version-row progress::-webkit-progress-value {background:#78998e;border-radius:6px}
.global-version-row progress::-moz-progress-bar {background:#78998e;border-radius:6px}
.global-version-note {font-size:11px;color:var(--muted);margin:10px 0}
.overview-heading {gap:24px;flex-wrap:wrap}
.overview-explainer {font-size:13px;color:var(--muted);margin:-10px 0 24px;line-height:1.6}
.company-cards {display:grid;gap:24px;min-width:0}
.company-card {background:white;border:1px solid var(--line);border-radius:12px;min-width:0;overflow:hidden}
.company-card-head {display:flex;align-items:center;gap:24px;padding:24px;flex-wrap:wrap;background:#fafbfc;border-bottom:1px solid var(--line)}
.company-identity {flex:1 1 240px;min-width:0;overflow-wrap:anywhere}
.company-identity h2 {font-size:23px;letter-spacing:-.03em;margin:0 0 6px}
.company-identity p {font-size:13px;color:var(--muted);margin:0;line-height:1.6}
.company-occupancy {flex:0 1 170px;min-width:0}
.metric-caption {display:block;font-size:10px;font-weight:750;letter-spacing:.08em;color:#656b73;line-height:1.6}
.company-occupancy strong {font-size:32px;letter-spacing:-.04em;color:var(--green)}
.company-occupancy div > span {font-size:18px;color:var(--muted)}
.company-occupancy progress {appearance:none;width:100%;height:6px;border:0;border-radius:8px;overflow:hidden;background:#e3e7e8;accent-color:var(--green)}
.company-occupancy progress::-webkit-progress-bar {background:#e3e7e8}
.company-occupancy progress::-webkit-progress-value {background:var(--green)}
.company-occupancy progress::-moz-progress-bar {background:var(--green)}
.product-cards {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;padding:20px 24px}
.product-card {min-width:0;border:1px solid #e3e6ea;border-radius:9px;padding:18px;overflow-wrap:anywhere;background:#fff}
.product-card-title {display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.product-card h3 {font-size:15px;margin:0}
.usage-chip {font-size:11px;font-weight:650;background:#eef1f4;color:#48545e;padding:5px 8px;border-radius:6px}
.version-badges {display:flex;flex-wrap:wrap;gap:6px;margin-top:7px;min-height:32px}
.version-badge {display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap;background:#edf2fc;color:#284874;padding:7px 9px;border-radius:6px;font-size:12px;max-width:100%}
.version-badge > span {font-size:11px;color:#5e7090}
.version-badge.unreported {background:#f0f1f3;color:#6b7178}
.product-last-check {border-top:1px solid #eceef1;margin-top:17px;padding-top:12px}
.product-last-check strong {display:block;font-size:13px;margin-top:5px;font-weight:650}
.company-caution {margin:0 24px 16px;color:#8d4c17;font-size:12px}
.visual-seat-details {padding:0;border-top:1px solid var(--line);min-width:0}
.visual-seat-details summary {padding:18px 24px;font-size:13px;background:#fafbfc;overflow-wrap:anywhere}
.seat-count-label {font-size:12px;font-weight:400;color:var(--muted);margin-left:12px}
.visual-seat-frame {width:100%;min-width:0}
.visual-seat-table {table-layout:fixed;width:100%;min-width:0}
.visual-seat-table th,.visual-seat-table td {text-align:left;position:static;white-space:normal;overflow-wrap:anywhere;vertical-align:top;padding:16px 14px;font-size:12px;box-shadow:none}
.visual-seat-table th {font-size:10px;letter-spacing:.04em;background:#eceff3}
.visual-seat-table th:nth-child(1) {width:25%}
.visual-seat-table th:nth-child(2) {width:16%}
.visual-seat-table th:nth-child(3) {width:12%}
.visual-seat-table th:nth-child(4) {width:25%}
.visual-seat-table th:nth-child(5) {width:22%}
.visual-seat-table tbody tr:nth-child(even) td {background:#fafbfc}
.visual-seat-table small {font-size:11px;line-height:1.5}
.visual-seat-table .badge {font-size:9px;padding:5px 7px;white-space:normal}
.client-version {display:inline-block;color:#284874;background:#edf2fc;border-radius:4px;padding:4px 6px}
.seat-history-note {margin:16px 24px;font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:650px) {
 .company-card-head {padding:18px;gap:16px}
 .company-identity {flex-basis:100%}
 .company-occupancy {flex:1 1 100px}
 .company-card-head .button {max-width:100%;white-space:normal}
 .product-cards {padding:16px;grid-template-columns:minmax(0,1fr)}
 .visual-seat-details summary {padding:16px}
 .seat-count-label {display:block;margin:6px 0 0}
 .visual-seat-table thead {display:none}
 .visual-seat-table,.visual-seat-table tbody,.visual-seat-table tr {display:block;width:100%;min-width:0}
 .visual-seat-table tr {padding:10px 16px;border-top:2px solid var(--line)}
 .visual-seat-table td {display:grid;grid-template-columns:minmax(0,1fr);gap:3px;width:100%;padding:8px 0;border:0;background:transparent!important}
 .visual-seat-table td::before {content:attr(data-label);display:block;font-size:10px;font-weight:750;color:var(--muted);text-transform:uppercase}
 .visual-seat-table .badge,.visual-seat-table .client-version {justify-self:start}
}
