/* Shared dashboard card anatomy: header, scrollable content, pinned explanation. */
.widget-layout { grid-template-columns: repeat(2,minmax(0,1fr)); gap:20px; }
.widget-layout>.widget { grid-column:span 1; }
.widget-layout>.widget-wide { grid-column:1 / -1; }
.widget-layout .dashboard-widget-card { display:flex; flex-direction:column; height:380px; min-height:0; border:1px solid var(--border); border-radius:14px; box-shadow:0 2px 8px #10244204; overflow:hidden; }
.widget-layout .widget .card-header { display:flex; flex-shrink:0; align-items:center; gap:12px; min-height:68px; height:68px; padding:12px 18px; border-bottom:1px solid var(--border); }
.widget-layout .card-header h2 { font-size:13px; line-height:1.45; font-weight:650; margin:0; }
.widget-layout .card-header>h2,.widget-layout .card-header>div { flex:1; min-width:0; }
.widget-layout .card-header p { margin:4px 0 0; font-size:10px; line-height:1.45; }
.widget-title-icon { display:grid; place-items:center; width:34px; height:34px; flex-shrink:0; border-radius:10px; background:var(--accent-soft); color:var(--accent); }
.widget-title-icon svg { width:18px; height:18px; }
.widget-layout .card-header .text-link { font-size:10px; white-space:nowrap; }
.widget-layout .widget-handle { position:static; flex:0 0 26px; height:30px; width:26px; margin-left:0; opacity:.65; border-radius:6px; }
.widget-layout .widget-handle:hover { background:var(--accent-soft); color:var(--accent); }
.widget-body { flex:1; min-height:0; overflow:auto; scrollbar-width:thin; scrollbar-color:var(--border) transparent; }
.widget-body>.card-body { padding:18px; }
.widget-body .chart { height:270px; padding:20px 24px 18px; }
.widget-body .empty,.widget-body .insight-empty { min-height:240px; }
.widget-body .readiness { min-height:180px; padding:20px; }
.widget-body .lifecycle { padding:16px 24px 8px; }
.widget-body .lifecycle-row { margin:22px 0; }
.widget-map .dashboard-widget-card { height:auto; min-height:380px; }
.widget-map .widget-body { display:flex; overflow:visible; }
.widget-body .world-map { display:flex; flex-direction:column; flex:1; margin:0; border:0; border-radius:0; }
.widget-body .world-canvas { height:auto; min-height:0; width:100%; aspect-ratio:2/1; flex-shrink:0; }
.widget-body .map-city-list { max-height:62px; overflow:auto; }
.widget-body .pipeline-total strong,.widget-body .task-score>strong { font-size:32px; }
.widget-body .pipeline-legend { gap:12px; }
.widget-body .growth-columns { min-height:185px; }
.widget-body .insight-ring-row { min-height:140px; }
.widget-body .activity-row { padding:12px 0; }
.widget-wide .dashboard-widget-card { height:auto; min-height:400px; }
.dashboard-widget-card>.widget-footer { display:flex; flex-direction:column; justify-content:center; flex-shrink:0; min-height:62px; margin-top:auto; padding:12px 18px; border-top:1px solid var(--border); background:var(--surface-subtle); color:var(--muted); font-size:11px; line-height:1.6; }
.widget-footer .widget-footer-note { margin:0; color:inherit; font:inherit; }
.widget-footer .widget-footer-note+.widget-footer-note { margin-top:5px; }
.widget-footer-details { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:6px 12px; font:inherit; }
.widget-footer-details+.widget-footer-note { margin-top:6px; }
.widget-footer-details small,.widget-footer-details .text-link { font-size:10px; }
.widget-footer-details>span { flex:1; min-width:0; }
.widget-footer-details>small { white-space:nowrap; }
.fixed-metrics .metric { border-top:1px solid var(--border)!important; }
/* Product facts and operational tools occupy distinct navigation groups. */
.product-view-switch { display:flex; gap:8px; padding:0 0 18px; border-bottom:1px solid var(--border); margin-bottom:18px; }
.product-view-switch>button { display:flex; align-items:center; gap:10px; padding:11px 16px; border:1px solid transparent; border-radius:9px; color:var(--muted); background:transparent; font:inherit; font-size:12px; cursor:pointer; }
.product-view-switch>button svg { width:18px; height:18px; }
.product-view-switch>button small { padding:2px 6px; border-radius:5px; background:var(--surface-subtle); font-variant-numeric:tabular-nums; }
.product-view-switch>button[aria-pressed=true] { color:var(--accent); background:var(--accent-soft); border-color:color-mix(in srgb,var(--accent) 25%,var(--border)); font-weight:650; }
.product-grouped-view>.technical-tabs-heading { display:none; }
.product-grouped-view[data-product-view=tools]>.requirement-product-notice { display:none; }
.technical-side-nav>[hidden] { display:none!important; }
.product-grouped-view .technical-side-nav { padding-top:4px; }
.product-grouped-view .technical-tab-panel { padding-top:4px; }
/* Original full-panel artwork, with a quiet white field beneath the copy. */
.auth-aside { background:#fff url('/assets/login-network-cobalt.webp') center/cover no-repeat; padding-bottom:28px; }
.auth-aside::after { display:block; background:linear-gradient(90deg,#fffffff5 0%,#ffffffe0 48%,#ffffff88 66%,#ffffff00 90%); }
.auth-aside .auth-lines { background:transparent; border:0; padding:0; margin:4px 0 auto; max-width:390px; backdrop-filter:none; }
.auth-aside .auth-line { padding:12px 0; border:0; font-size:12px; color:#364b63; }
.auth-aside>p { max-width:360px; }
.auth-aside h1 { font-size:clamp(32px,3.1vw,46px); }
.auth-aside>.brand { margin-bottom:84px; }
.auth-aside>small { margin-top:80px; }
@media(max-width:1100px){ .widget-layout{grid-template-columns:minmax(0,1fr)}.widget-layout>.widget{grid-column:1 / -1}.auth-aside>.brand{margin-bottom:60px} }
@media(max-width:720px){ .widget-layout .widget .card-header{padding:14px;gap:8px}.widget-title-icon{width:29px;height:29px}.widget-layout .card-header h2{font-size:12px}.widget-body>.card-body{padding:18px}.product-view-switch{gap:4px}.product-view-switch>button{padding:10px;font-size:11px}.product-view-switch>button small{display:none}.auth-aside{display:none} }

/* Publishing shares the row height and uses its lower area for period totals. */
.widget-publications .dashboard-widget-card{height:100%;min-height:380px}
.widget-publications .widget-body{display:flex;flex-direction:column;overflow:hidden}
.widget-publications .chart{flex:1;min-height:170px;height:auto;padding:16px 22px 6px}
.widget-publications .widget-body>.empty{flex:1;min-height:0;padding:18px}
.publication-summary{display:grid;grid-template-columns:1fr 1fr 1.25fr;flex-shrink:0;margin:0;padding:16px 18px;gap:14px;border-top:1px solid var(--border);background:var(--surface-subtle)}
.publication-summary>div{min-width:0}
.publication-summary dt{color:var(--muted);font-size:10px;line-height:1.5}
.publication-summary dd{margin:6px 0 0;color:var(--ink);font-size:22px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.3}
.publication-summary .publication-latest{font-size:12px;line-height:1.7;margin-top:10px}
