/* Jonte SaaS administration — scoped to preserve customer pages. */
.saas-overview{--saas-blue:#245be0;--saas-good:#14754d;--saas-bad:#b13242;--saas-warn:#926208;display:grid;gap:20px;min-width:0;font-size:16px;line-height:1.5;color:var(--text)}
.saas-overview *{box-sizing:border-box}.saas-overview button{font:inherit;cursor:pointer;min-height:42px}.saas-overview button:focus-visible,.saas-table-wrap:focus-visible{outline:3px solid var(--saas-blue);outline-offset:3px}.saas-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.saas-heading h2{font-size:clamp(26px,3vw,36px);letter-spacing:-.035em;line-height:1.2;margin:6px 0}.saas-heading p{margin:8px 0 0;color:var(--muted)}.saas-heading .eyebrow{font-size:12px;letter-spacing:.12em;color:var(--muted)}.saas-heading .primary{white-space:nowrap;display:flex;align-items:center;gap:8px;background:#245be0;color:#fff;border-color:#245be0}.saas-sync{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px;padding-bottom:4px}.saas-sync button{display:flex;align-items:center;gap:7px;font-size:14px}.saas-sync-error{color:var(--saas-bad)}.saas-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.saas-metric{text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px!important;color:var(--text);position:relative;overflow:hidden;transition:border-color .15s,transform .15s}.saas-metric:hover{border-color:var(--saas-blue);transform:translateY(-2px)}.saas-metric-top{display:flex;gap:8px;justify-content:space-between;font-size:14px;font-weight:600}.saas-overview svg{width:20px;height:20px;flex-shrink:0}.saas-metric-top svg{color:var(--muted)}.saas-metric strong{display:block;font-size:42px;line-height:1.2;font-weight:700;letter-spacing:-.04em;margin:17px 0 11px;font-variant-numeric:tabular-nums}.saas-metric small{font-size:13px;color:var(--muted)}.saas-metric.active_licenses strong{color:var(--saas-good)}.saas-metric.expired_licenses strong{color:var(--saas-bad)}.saas-metric.expiring_7d strong{color:var(--saas-warn)}.saas-insights{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.3fr);gap:20px}.saas-panel{border:1px solid var(--line);background:var(--surface);border-radius:16px;min-width:0;overflow:hidden}.saas-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px}.saas-panel h3{font-size:17px;margin:0}.saas-panel-head span,.saas-panel-head p{font-size:13px;color:var(--muted);margin:5px 0 0}.saas-panel-head button{font-size:14px}.saas-stacked{display:flex;height:12px;margin:4px 24px 20px;background:var(--line);border-radius:4px;overflow:hidden}.segment-active{background:#269d70}.segment-expired{background:#cf4c62}.segment-grace{background:#c3982e}.segment-blocked{background:#8277bc}.segment-missing{background:#8a97aa}.saas-distribution{padding:0 24px;display:grid;gap:11px}.saas-distribution>div,.saas-distribution span{display:flex;align-items:center;justify-content:space-between;gap:9px;font-size:14px}.saas-distribution i{width:9px;height:9px;border-radius:2px}.saas-note{margin:18px 24px 22px;color:var(--muted);font-size:13px}.saas-panel .access-chart{padding:4px 20px}.saas-panel .access-chart svg{width:100%;height:190px}.saas-activity-foot{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-top:1px solid var(--line);font-size:14px;gap:12px}.saas-activity-foot button{font-size:14px}.saas-table-wrap{overflow:auto;max-width:100%}.saas-table-wrap table{min-width:820px;margin:0}.saas-table-wrap th{font-size:13px;text-transform:none;letter-spacing:0}.saas-table-wrap td{font-size:14px;padding:17px 22px}.saas-table-wrap td:first-child{max-width:240px;overflow-wrap:anywhere}.saas-status{display:inline-flex;align-items:center;font-size:13px;font-weight:600;border-radius:6px;padding:5px 9px;white-space:nowrap;background:var(--surface2);color:var(--muted)}.saas-status-active{color:#12633f;background:#e6f5ed}.saas-status-expired,.saas-status-blocked{color:#a5263b;background:#fcebf0}.saas-status-grace,.saas-status-pending{color:#805400;background:#fcf2d7}.saas-operational{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.saas-operational button{display:grid;gap:8px;text-align:left;padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--text)}.saas-operational small{font-size:14px;color:var(--muted)}.saas-operational b{font-size:24px;overflow-wrap:anywhere}.saas-operational span{font-size:13px;color:var(--muted)}
[data-theme="dark"] .saas-overview{--saas-blue:#86a8ff;--saas-good:#65d6a4;--saas-bad:#ff93a7;--saas-warn:#ebc572}
[data-theme="dark"] .saas-status-active{background:#173e30;color:#8ee1b6}[data-theme="dark"] .saas-status-expired,[data-theme="dark"] .saas-status-blocked{background:#482733;color:#ffafbc}[data-theme="dark"] .saas-status-grace,[data-theme="dark"] .saas-status-pending{background:#473b20;color:#efce81}
@media(max-width:1200px){.saas-metrics,.saas-operational{grid-template-columns:repeat(2,minmax(0,1fr))}.saas-insights{grid-template-columns:1fr}}
@media(max-width:600px){.saas-overview{gap:16px}.saas-heading{align-items:flex-start;flex-direction:column}.saas-heading .primary{width:100%;justify-content:center}.saas-metrics{gap:10px}.saas-metric{padding:15px!important}.saas-metric-top{font-size:14px}.saas-metric-top svg{display:none}.saas-metric strong{font-size:34px}.saas-panel-head{align-items:flex-start;flex-direction:column;padding:18px}.saas-operational{grid-template-columns:1fr 1fr;gap:10px}.saas-operational button{padding:14px}.saas-sync{align-items:flex-start}.saas-sync span{max-width:68%}.saas-sync button{font-size:0}.saas-sync button svg{width:20px}.saas-activity-foot{align-items:flex-start;flex-direction:column}.saas-heading p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.saas-overview *{transition:none!important;animation:none!important}}
/* Existing global button rules use flex: explicitly reset the metric layout. */
.saas-overview button.saas-metric{display:block!important;white-space:normal;min-width:0}.saas-overview .saas-operational>button{display:grid!important;white-space:normal;min-width:0}.saas-overview .saas-metric small{display:block}.saas-overview .saas-metric-top{width:100%;overflow-wrap:anywhere}
