body .app-frame .dashboard-overview{grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;min-width:0;display:grid}.dashboard-header-actions,.dashboard-tabs,.dashboard-toggle,.dashboard-pagination{align-items:center;gap:8px;display:flex}.dashboard-tabs{border-bottom:1px solid var(--sh-border);align-self:start;gap:24px;min-height:36px}.dashboard-tabs>button{color:var(--sh-text-secondary);border-bottom:2px solid #0000;padding:0 0 12px;font-size:14px}.dashboard-tabs>button[aria-current]{border-color:var(--sh-accent);color:var(--sh-text);font-weight:600}.dashboard-tabs span,.dashboard-attention h2 span{background:var(--sh-surface-soft);border:1px solid var(--sh-border);border-radius:4px;margin-left:6px;padding:2px 6px;font-size:12px}.dashboard-load-note{background:var(--sh-warning-soft);border:1px solid var(--sh-border);border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px 12px;padding:12px 16px;font-size:13px;display:flex}.dashboard-load-note span{flex:400px}.dashboard-summaries{background:var(--sh-surface);border:1px solid var(--sh-border);border-radius:6px;grid-template-columns:repeat(9,minmax(0,1fr));gap:0;display:grid;overflow:hidden}body .app-frame .dashboard-summary{--summary-accent:var(--sh-accent);border:0;border-right:1px solid var(--sh-border);background:color-mix(in srgb, var(--summary-accent) 5%, var(--sh-surface));box-shadow:inset 3px 0 var(--summary-accent);text-align:left;border-radius:0;flex-direction:column;gap:7px;min-width:0;padding:12px 14px;display:flex}body .app-frame .dashboard-summary[data-area=risk]{--summary-accent:#df202e}body .app-frame .dashboard-summary[data-area=compliance]{--summary-accent:#ec9f2d}body .app-frame .dashboard-summary[data-area=performance]{--summary-accent:#397f89}body .app-frame .dashboard-summary[data-area=procurement],body .app-frame .dashboard-summary[data-area=contracts]{--summary-accent:#7063a2}body .app-frame .dashboard-summary:last-child{border-right:0}.dashboard-summary>span{color:var(--sh-text-secondary);min-height:28px;font-size:11px;line-height:1.3}.dashboard-summary strong{color:color-mix(in srgb, var(--summary-accent) 75%, var(--sh-text));font-variant-numeric:tabular-nums;font-size:24px;font-weight:600;line-height:1.2}.dashboard-summary small{color:var(--sh-text-muted);justify-content:space-between;align-items:start;gap:6px;font-size:10px;line-height:1.4;display:flex}.dashboard-summary small svg{display:none}.dashboard-summary:disabled{cursor:default}.dashboard-summary:not(:disabled):hover{background:var(--sh-accent-soft)}.dashboard-report-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.dashboard-report-toolbar>div{gap:3px;display:grid}.dashboard-report-toolbar strong{font-size:13px;font-weight:600}.dashboard-report-toolbar>div>span{color:var(--sh-text-muted);font-size:11px}.dashboard-period{border:1px solid var(--sh-border);border-radius:5px;flex-wrap:wrap;gap:2px;min-width:0;margin:0;padding:3px;display:flex}.dashboard-period legend{color:var(--sh-text-secondary);padding:0 4px;font-size:11px}.dashboard-period button{border-radius:3px;padding:5px 9px;font-size:12px}.dashboard-period button[aria-pressed=true]{background:var(--sh-accent-soft);color:var(--sh-accent);font-weight:600}.dashboard-period-help{color:var(--sh-text-muted);margin:-4px 0 0;font-size:11px;line-height:1.5}.dashboard-chart-grid{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:14px;display:grid}body .app-frame .dashboard-chart{grid-column:span 2;min-width:0;padding:16px}body .app-frame .dashboard-chart.dashboard-wide{grid-column:span 3}body .app-frame .dashboard-chart h2,.dashboard-attention h2{margin:0;font-size:15px;font-weight:600}.dashboard-chart header{margin-bottom:16px}.dashboard-chart-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;display:flex}.dashboard-chart-heading>span{color:var(--sh-text-secondary);border:1px solid var(--sh-border);white-space:nowrap;border-radius:4px;padding:2px 5px;font-size:10px}.dashboard-chart header p,.dashboard-attention header p,.dashboard-caption{color:var(--sh-text-muted);margin:6px 0 0;font-size:12px;line-height:1.6}.dashboard-lifecycle{align-items:center;gap:16px;display:flex}.dashboard-lifecycle svg{flex-shrink:0;width:48%;max-width:150px;overflow:visible}.dashboard-lifecycle text{fill:var(--sh-text-muted);font-size:12px}.dashboard-lifecycle text.dashboard-donut-value{fill:var(--sh-text);font-size:28px;font-weight:600}.dashboard-lifecycle circle[role=button]{cursor:pointer}.dashboard-lifecycle circle[role=button]:hover,.dashboard-lifecycle circle[role=button]:focus{stroke-width:29px;outline:none}.dashboard-legend{flex:1;min-width:0}.dashboard-legend button{text-align:left;align-items:center;gap:7px;width:100%;padding:7px 0;font-size:12px;display:flex}.dashboard-legend i{border-radius:50%;flex-shrink:0;width:7px;height:7px}.dashboard-legend span{text-transform:capitalize;flex:1}.dashboard-bars{gap:12px;display:grid}.dashboard-bars button{text-align:left;grid-template-columns:120px minmax(20px,1fr) 26px;align-items:center;gap:10px;font-size:12px;display:grid}.dashboard-bars button>i{background:var(--sh-surface-soft);border-radius:2px;height:12px;overflow:hidden}.dashboard-bars button b{border-radius:2px;height:100%;display:block}.dashboard-bars button strong{text-align:right}.dashboard-columns{background:repeating-linear-gradient(to top, transparent 0, transparent 38px, var(--sh-border) 39px, transparent 40px);gap:10px;height:155px;display:flex}.dashboard-columns button{flex-direction:column;flex:1;align-items:center;gap:8px;min-width:0;font-size:11px;display:flex}.dashboard-columns strong{font-size:13px}.dashboard-columns i{align-items:flex-end;width:64%;height:100%;display:flex}.dashboard-columns b{background:var(--sh-accent);border-radius:3px 3px 0 0;width:100%;display:block}.dashboard-text-link{color:var(--sh-accent);text-align:left;align-items:center;gap:6px;margin-top:16px;font-size:12px;display:flex}.dashboard-select{color:var(--sh-text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;font-size:12px;display:flex}.dashboard-select select{flex:190px;min-width:0;max-width:100%}.dashboard-overview select,.dashboard-overview input{border:1px solid var(--sh-border-strong);background:var(--sh-surface);border-radius:4px;min-height:34px;padding:7px 9px;font-size:13px}.dashboard-chart .portfolio-matrix-wrap{margin:0}.dashboard-chart .portfolio-matrix button{min-height:65px}.dashboard-chart .framework-matrix-scroll{width:100%}.dashboard-chart .framework-matrix{min-width:440px}.dashboard-chart .framework-matrix td button{min-height:58px;padding:10px 6px}.dashboard-chart .framework-matrix td strong{font-size:10px}.dashboard-chart .framework-matrix caption{text-align:left;color:var(--sh-text-secondary);padding-bottom:8px;font-size:12px}body .app-frame .dashboard-chart .framework-matrix-distribution{table-layout:fixed;border-collapse:separate;border-spacing:3px;border:0;min-width:420px}body .app-frame .dashboard-chart .framework-matrix-distribution caption{caption-side:bottom;padding:8px 0 0;font-size:10px}body .app-frame .dashboard-chart .framework-matrix-distribution th{background:0 0;border:0;padding:5px 3px;font-size:10px;font-weight:500}body .app-frame .dashboard-chart .framework-matrix-distribution th:first-child{width:64px}body .app-frame .dashboard-chart .framework-matrix-distribution td{border-bottom:0;border-left:0;border-right:0;border-radius:3px;height:54px;padding:0}body .app-frame .dashboard-chart .framework-matrix-distribution td button{justify-content:center;align-items:center;width:100%;min-height:52px;padding:5px;display:flex;position:relative}body .app-frame .dashboard-chart .framework-matrix-distribution .relationship-count{z-index:1;font-variant-numeric:tabular-nums;font-size:16px;position:relative}.dashboard-assessment-empty{border:1px dashed var(--sh-border);background:var(--sh-surface-soft);border-radius:5px;align-content:center;gap:8px;margin-top:12px;padding:22px 18px;display:grid}.dashboard-assessment-empty strong{font-size:13px;font-weight:600}.dashboard-assessment-empty p{color:var(--sh-text-secondary);max-width:55ch;margin:0;font-size:12px;line-height:1.5}.dashboard-assessment-empty a{align-items:center;gap:6px;margin-top:4px;font-size:12px;display:inline-flex}.dashboard-guidance-legend{color:var(--sh-text-secondary);flex-wrap:wrap;gap:6px 12px;margin-top:12px;font-size:10px;display:flex}.dashboard-guidance-legend span{align-items:center;gap:5px;display:inline-flex}.dashboard-guidance-legend i{border-radius:50%;width:7px;height:7px}.dashboard-framework-help{color:var(--sh-text-secondary);margin-top:14px;font-size:11px}.dashboard-framework-help summary{cursor:pointer}.dashboard-framework-help p{margin:8px 0 0;line-height:1.6}.dashboard-lollipops button>i{background:0 0;height:24px;position:relative;overflow:visible}.dashboard-lollipops button>i:before{content:"";background:var(--sh-border);height:1px;position:absolute;inset:11px 0 auto}.dashboard-lollipops button b{height:2px;position:absolute;top:11px}.dashboard-lollipops button b:after{content:"";background:currentColor;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;right:-5px}.dashboard-lollipops button b[data-empty]:after{background:var(--sh-surface);border:1px solid var(--sh-border-strong)}.dashboard-performance-chart{width:100%;overflow:visible}.dashboard-performance-chart text{fill:var(--sh-text-muted);font-size:11px}.dashboard-performance-chart line{stroke:var(--sh-border)}.dashboard-performance-chart a:hover circle,.dashboard-performance-chart a:focus circle{stroke:var(--sh-text);stroke-width:2px}.dashboard-source-list{gap:4px;display:grid}.dashboard-source-list button{text-align:left;border-bottom:1px solid var(--sh-border);align-items:center;gap:12px;width:100%;padding:6px 0;font-size:12px;display:flex}.dashboard-source-list i{border-radius:2px;width:7px;height:7px}.dashboard-mix-total{color:var(--sh-text-muted);align-items:baseline;gap:8px;margin:0 0 10px;font-size:11px;display:flex}.dashboard-mix-total strong{color:var(--sh-text);font-size:24px;font-weight:600}.dashboard-file-strip{background:var(--sh-surface-soft);border-radius:4px;gap:2px;height:22px;margin-bottom:12px;display:flex;overflow:hidden}.dashboard-file-strip button{min-width:0}.dashboard-file-strip button:hover{opacity:.8}.dashboard-source-list span{flex:1}.dashboard-empty{color:var(--sh-text-secondary);padding:16px 0;font-size:13px;line-height:1.7}.dashboard-empty a{color:var(--sh-accent)}body .app-frame .dashboard-attention{min-width:0;padding:20px}.dashboard-attention>header{justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px;display:flex}.dashboard-attention header p{max-width:700px}.dashboard-toggle{border:1px solid var(--sh-border);border-radius:5px;flex-shrink:0;gap:0;padding:3px}.dashboard-toggle button{border-radius:3px;padding:6px 12px;font-size:12px}.dashboard-toggle [aria-pressed=true]{background:var(--sh-accent-soft);color:var(--sh-accent);font-weight:600}.dashboard-filters{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:20px;display:flex}.dashboard-filters label{color:var(--sh-text-secondary);flex:130px;gap:6px;font-size:12px;display:grid}.dashboard-filters label:first-child{flex:2 220px}.dashboard-record-scroll{width:100%;overflow-x:auto}.dashboard-records{min-width:660px}.dashboard-records small{color:var(--sh-text-muted);padding-top:5px;font-size:11px;display:block}.dashboard-records td:first-child{min-width:190px}.dashboard-records td{font-size:12px}.dashboard-pagination{justify-content:flex-end;margin-top:16px;font-size:12px}body .dashboard-drill{background:var(--sh-surface);flex-direction:column;gap:16px;width:min(950px,96vw);max-width:none;height:100dvh;padding:28px;display:flex;overflow-y:auto}.dashboard-overview button:focus-visible,.dashboard-overview a:focus-visible{outline:2px solid var(--sh-accent);outline-offset:3px}@media (width<=1400px){.dashboard-summaries{grid-template-columns:repeat(3,minmax(0,1fr))}body .app-frame .dashboard-summary{border-bottom:1px solid var(--sh-border);grid-template-columns:1fr auto;gap:3px 8px;padding:10px 12px;display:grid}.dashboard-summary>span{min-height:0}.dashboard-summary small{grid-column:1}.dashboard-summary strong{grid-area:1/2/span 2;align-self:center}.dashboard-lifecycle{gap:8px}.dashboard-bars button{grid-template-columns:95px minmax(20px,1fr) 24px}}@media (width<=1150px){.dashboard-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .app-frame .dashboard-chart{grid-column:span 1}body .app-frame .dashboard-chart.dashboard-wide{grid-column:span 2}}@media (width<=700px){.dashboard-header{flex-wrap:wrap;gap:16px}.dashboard-summaries{grid-template-columns:repeat(3,minmax(0,1fr))}body .app-frame .dashboard-summary{gap:5px;padding:10px;display:flex}.dashboard-summary>span{min-height:28px}.dashboard-summary strong{align-self:start;font-size:22px}.dashboard-summary small{display:none}.dashboard-period{width:100%}.dashboard-period button{flex:auto;padding:6px;font-size:11px}.dashboard-chart-grid{flex-direction:column;display:flex}body .app-frame .dashboard-chart,body .app-frame .dashboard-attention{padding:16px}.dashboard-attention>header{flex-direction:column}.dashboard-lifecycle{gap:20px}.dashboard-filters label{min-width:0}.dashboard-filters input,.dashboard-filters select{width:100%}body .dashboard-drill{width:100vw;padding:24px 16px}}
