#attention-section .dash-kpi.has-ticket-attention{border-color:#cf8620!important;background:color-mix(in srgb,#dc9426 16%,var(--surface,#fff))!important}
#attention-section .has-ticket-attention .dash-kpi-count{color:var(--text)!important}
.grain-kpi-dialog{box-sizing:border-box;width:min(640px,calc(100% - 24px));max-height:85dvh;padding:20px;border:1px solid var(--border,#888);border-radius:16px;background:var(--surface,#fff);color:var(--text,#16231c);overflow:auto}
.grain-kpi-dialog::backdrop{background:rgba(0,0,0,.55)}
.grain-kpi-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.grain-kpi-dialog h2{font-size:20px;margin:0}
.grain-kpi-dialog button{font:inherit;cursor:pointer;min-height:40px;border:1px solid var(--border,#888);border-radius:9px;background:var(--surface,#fff);color:inherit;padding:8px 12px}
.grain-kpi-dialog nav{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}
.grain-kpi-dialog button[aria-pressed=true]{background:#346840;color:#fff}
.grain-kpi-ticket{display:block;padding:14px 0;border-top:1px solid var(--border,#888);text-decoration:none;color:inherit}
.grain-kpi-ticket>div{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.grain-kpi-ticket p{margin:7px 0;font-size:14px}
.grain-ticket-state{font-size:12px;padding:4px 8px;border-radius:6px;border:1px solid currentColor}
.grain-ticket-state.warning{background:#992f23;color:#fff}.grain-ticket-state.review,.grain-ticket-state.needs_job{background:#f4cf85;color:#533700}
/* Compact grain-detail table; horizontal scrolling stays inside the popup. */
.grain-kpi-dialog{width:min(1180px,calc(100% - 24px));overflow:hidden;padding:18px}
.grain-kpi-dialog[open]{display:flex;flex-direction:column}
.grain-kpi-dialog header,.grain-kpi-dialog nav,.grain-kpi-dialog>[data-summary]{flex-shrink:0}
.grain-kpi-dialog [data-list]{min-height:0;overflow:auto;overscroll-behavior:contain}
.grain-kpi-dialog button[aria-pressed=true]{color:#fff!important}
.grain-kpi-table-wrap{overflow:auto;max-width:100%;border:1px solid var(--border,#d9dfda);border-radius:10px}
.grain-kpi-table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
.grain-kpi-table th{background:var(--surface-2,#edf2ed);font-size:11px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}
.grain-kpi-table th,.grain-kpi-table td{padding:10px 9px;border-bottom:1px solid var(--border,#d9dfda)}
.grain-kpi-table td{white-space:nowrap}
.grain-kpi-table a{color:inherit;text-decoration:none}
.grain-kpi-table td:first-child a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
.grain-kpi-table small{display:block;font-size:11px;margin-top:4px;opacity:.8}
.grain-kpi-table tr[data-ticket-href]{cursor:pointer}
.grain-kpi-table tr[data-ticket-href]:hover{background:color-mix(in srgb,#346840 8%,var(--surface,#fff))}
.grain-kpi-table .number{font-variant-numeric:tabular-nums;text-align:right}
.grain-grade{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:4px 6px;border-radius:999px;font-weight:800;font-variant-numeric:tabular-nums}
.grain-grade.warn{background:rgba(230,126,34,.13);box-shadow:inset 0 0 0 1px rgba(230,126,34,.45);color:#a65300}
.grain-grade.severe{background:rgba(179,38,30,.12);box-shadow:inset 0 0 0 1px rgba(179,38,30,.35);color:#9d241e}
.grain-kpi-reason td{white-space:normal;background:color-mix(in srgb,#dc9426 9%,var(--surface,#fff))}
.grain-kpi-table .grain-kpi-reason td a{display:block;white-space:normal;text-decoration:none;font-size:12px;font-weight:400;max-width:100ch;line-height:1.6}
.grain-kpi-reason span{font-weight:800;white-space:nowrap}
.grain-kpi-hint{font-size:12px;margin:0 0 10px}
html:has(.grain-kpi-dialog[open]),body:has(.grain-kpi-dialog[open]){overflow:hidden!important}
html.dark .grain-kpi-table th,[data-theme="dark"] .grain-kpi-table th{background:#1b271e;color:#eef4ef}
html.dark .grain-grade.warn,[data-theme="dark"] .grain-grade.warn{color:#f4bb78}
html.dark .grain-grade.severe,[data-theme="dark"] .grain-grade.severe{color:#ffaaa4}
@media(max-width:600px){.grain-kpi-dialog{padding:14px;max-height:88dvh}.grain-kpi-dialog h2{font-size:18px}.grain-kpi-dialog>[data-summary]{font-size:13px}.grain-kpi-dialog nav{margin:8px 0}.grain-kpi-table th,.grain-kpi-table td{padding:9px 7px}}

#attention-section .dash-kpi.has-ticket-warning{border-color:#b42318!important;background:color-mix(in srgb,#b42318 16%,var(--surface,#fff))!important}
#attention-section .has-ticket-warning .dash-kpi-count{color:#b42318!important}
