/* 대시보드의 읽기 전용 통계·페이지 상세만 담당한다. 기존 관리 화면의 모달 스타일은 바꾸지 않는다. */
.audit-distribution { margin-block: 16px; }
.audit-distribution > .toolbar-summary { margin-block: 8px; }
.audit-distribution .dm-legend button[aria-pressed="true"] { color: var(--accent-strong); background: var(--surface-subtle); }
.dm-navigation {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--space-2) var(--space-4);
    border-bottom: 1px solid var(--line);
    margin: var(--space-4) 0;
}

.dm-dashboard {
    --ink-600: #000;
    color: #000;
}
.dm-dashboard .dm-tabs { display:flex; gap:6px; overflow:auto; max-width:100%; }
.dm-snapshot {
    margin: 0 0 var(--space-2) auto;
    color: var(--ink-600);
    font-size: 12px;
    text-align: right;
}
.dm-tabs :is(button, a) { flex-shrink:0; background:none; border:0; padding:10px 12px; cursor:pointer; border-bottom:2px solid transparent; color:var(--ink-600); text-decoration:none; }
.dm-tabs button[aria-pressed="true"] { color:var(--ink-600); border-color:var(--accent); background:white; font-weight:700; }
.dm-charts { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr)); gap:16px; margin:18px 0; }
.dm-dashboard .panel-header { flex-wrap:wrap; }
.dm-chart { display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.dm-donut { width:125px; height:125px; border-radius:50%; position:relative; flex:0 0 125px; }
.dm-donut:before { content:''; position:absolute; inset:25px; background:white; border-radius:50%; }
.dm-donut>div { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; }
.dm-donut b { font-size:24px; }
.dm-donut small { font-size:10px; color:var(--ink-600); }
.dm-legend { flex:1; min-width:145px; max-height:320px; overflow:auto; }
.dm-legend button { display:flex; justify-content:space-between; align-items:center; gap:10px; background:none; border:0; border-bottom:1px solid #f1f3f5; width:100%; padding:9px 0; text-align:left; cursor:pointer; }
.dm-legend strong { white-space:nowrap; font-size:11px; }
.dm-legend i { display:inline-block; width:9px; height:9px; margin-right:6px; }
.dm-dashboard button:focus-visible,.dm-dashboard a:focus-visible,.dm-dashboard input:focus-visible { outline:3px solid #63b3ed; outline-offset:2px; }
.dm-population { display:flex; align-items:center; justify-content:space-between; gap:15px; background:white; padding:18px; border:1px solid var(--line); border-left:4px solid var(--accent); }
.dm-population h2 { font-size:19px; margin:0; }
.dm-population p { color:var(--ink-600); font-size:12px; margin:7px 0 0; }
.dm-population>strong { font-size:28px; white-space:nowrap; color:inherit; }
.dm-breadcrumb,.dm-actions { display:flex; gap:12px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin:16px 0; }
.dm-breadcrumb { justify-content:flex-start; font-size:12px; }
.dm-table { max-height:650px; overflow:auto; }
.dm-table table { width:100%; border-collapse:collapse; font-size:12px; }
.dm-table td,.dm-table th { border-bottom:1px solid var(--line); padding:10px; text-align:left; white-space:nowrap; }
.dm-table th { background:var(--surface-subtle); }
.dm-dashboard .dm-heading {
    flex-direction: row;
    align-items: center;
}

.dm-criteria .dm-criteria-scope {
    margin: 0 0 var(--space-4);
    line-height: 1.7;
}

.dm-criteria .dm-fields {
    font-size: 13px;
}
.dm-search { display:flex; gap:10px; align-items:center; margin-bottom:12px; font-size:12px; }
.dm-search input { max-width:300px; padding:7px; border:1px solid var(--line-strong); }
.dm-fields { display:grid; grid-template-columns:140px 1fr; gap:14px; line-height:1.8; }
.dm-fields dt { color:var(--ink-600); }
.dm-fields dd { margin:0; overflow-wrap:anywhere; }
.dm-event { border-left:2px solid var(--accent); padding:10px 15px; margin:12px 0; }
@media (max-width: 640px) {
    .dm-population { align-items: start; }
    .dm-fields { grid-template-columns: 90px 1fr; }
    .dm-chart { justify-content: center; }
}

.dashboard-quick-launch {
    position: fixed;
    right: max(var(--space-4), env(safe-area-inset-right));
    bottom: max(var(--space-4), env(safe-area-inset-bottom));
    z-index: 1010;
}

.dashboard-quick-button {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 56px;
    height: 56px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #3182ce;
    color: #ffdc52;
    cursor: pointer;
}

.dashboard-quick-arc {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    color: rgb(11 30 54 / 42%);
    pointer-events: none;
}

.dashboard-quick-button[hidden] { display: none; }
.dashboard-quick-button:focus-visible {
    outline: 3px solid var(--accent-strong);
    outline-offset: 3px;
}

.dashboard-quick-dialog.editor-dialog {
    width: min(760px, calc(100% - var(--space-8)));
    max-height: min(760px, calc(100dvh - var(--space-8)));
}

.dashboard-quick-dialog .editor-header h2 {
    margin: 0;
    font-size: 16px;
}

.dashboard-quick-dialog .editor-body { container-type: inline-size; }

.dashboard-quick-dialog .quick-link-groups,
.dashboard-quick-dialog .quick-link-reference .workflow-list {
    grid-template-columns: minmax(0, 1fr);
}

/* Modal section normalization wraps each group in a details grid item. */
.dashboard-quick-dialog .quick-link-groups > :is(.quick-link-reference, details:has(> .quick-link-reference)) {
    grid-column: 1 / -1;
}

@container (min-width: 600px) {
    .dashboard-quick-dialog .quick-link-groups {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-quick-dialog .quick-link-reference .workflow-list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.dashboard-quick-dialog .quick-links-empty { margin: 0; }
