.da-workspace { background:#fff; border-top:3px solid #009386; padding:16px; color:#19394e; }
.da-heading { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; }
.da-heading h3 { margin:4px 0; font-size:18px; }
.da-heading span,.da-dialog header span { font-size:10px; font-weight:800; color:#007491; }
.da-modes,.da-tabs { display:flex; gap:0; border-bottom:1px solid #cadce1; }
.da-modes button,.da-tabs button { flex:1; border:0; border-radius:0; background:#f4f8f8; color:#34515e; margin:0; min-height:42px; font:inherit; font-size:13px; padding:8px; }
.da-modes [aria-pressed=true],.da-tabs [aria-selected=true] { background:#007491; color:#fff; font-weight:700; }
.da-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; padding-top:16px; align-items:start; }
.da-filters label,.da-field { min-width:0; display:grid; gap:6px; margin:0; font-size:12px; }
.da-filters :is(input,select) { margin:0; width:100%; min-width:0; min-height:42px; font-size:13px; }
.da-filters [hidden] { display:none !important; }
.da-picker { position:relative; }
.da-picker summary { box-sizing:border-box; min-height:42px; padding:12px; border:1px solid #b9cfd7; border-radius:4px; cursor:pointer; background:white; }
.da-picker > div { position:absolute; top:100%; left:0; z-index:12; min-width:100%; width:280px; max-width:calc(100vw - 64px); background:white; box-shadow:0 5px 18px #19394e25; border:1px solid #b9cfd7; padding:10px; box-sizing:border-box; }
.da-picker input[type=search] { min-height:38px; }
.da-picker [data-clear] { margin:6px 0; padding:6px; font-size:12px; }
.da-options { max-height:220px; overflow:auto; }
.da-options label { display:flex; align-items:center; gap:8px; padding:8px 4px; line-height:1.4; }
.da-options input { width:17px; min-height:17px; height:17px; flex:0 0 17px; accent-color:#007491; }
.da-more,.da-run { grid-column:1/-1; }
.da-more > summary,.da-method > summary { font-size:12px; cursor:pointer; padding:8px 0; font-weight:700; }
.da-more > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; padding-top:8px; }
.da-run { display:flex; align-items:center; justify-content:end; gap:8px; border-top:1px solid #d6e2e5; padding-top:12px; }
.da-run span { margin-right:auto; color:#647b83; font-size:12px; }
.da-run button { margin:0; width:auto; min-height:40px; font-size:13px; }
.da-feedback { color:#a12c4d; font-size:13px; padding:6px 0; }
.da-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:#f0f7f7; border-block:1px solid #cddfe2; margin:10px 0; }
.da-metrics > div { padding:12px; border-right:1px solid #d5e1e3; min-width:0; }
.da-metrics strong { font-size:21px; color:#007491; display:block; }
.da-metrics span { font-size:11px; display:block; margin-top:5px; overflow-wrap:anywhere; }
.da-shortcuts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
.da-shortcuts button { min-width:0; margin:0; padding:10px; font-size:12px; }
.da-dialog { width:min(1120px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 24px); padding:0; border:1px solid #99b7c4; border-radius:6px; background:#fff; color:#19394e; }
.da-dialog[open] { display:flex; flex-direction:column; }
.da-dialog::backdrop { background:#173342aa; }
.da-dialog > header { padding:16px 20px; display:flex; justify-content:space-between; gap:12px; border-top:4px solid #009386; background:#f4f8f8; }
.da-dialog h2 { font-size:22px; margin:4px 0 8px; }
.da-dialog header small { font-size:12px; }
.da-dialog .btn-icon { width:36px; height:36px; flex:0 0 36px; margin:0; }
.da-output { display:flex; gap:8px; padding:10px 20px; flex-wrap:wrap; }
.da-output button { margin:0; width:auto; font-size:12px; min-height:36px; }
.da-tabs { flex-wrap:wrap; flex-shrink:0; }
.da-dialog > header,.da-output { flex-shrink:0; }
.da-dialog-body { overflow:auto; min-height:0; padding:16px 20px; }
.da-dialog .da-feedback { padding-inline:20px; }
.da-measure { font-size:12px; color:#647b83; margin:0 0 12px; }
.da-insights { border-left:3px solid #009386; padding-left:12px; margin-top:14px; }
.da-insights p { font-size:13px; line-height:1.5; margin:6px 0; }
.da-bars { border:1px solid #d2e0e5; margin-bottom:14px; }
.da-bars > div { display:grid; grid-template-columns:minmax(0,1fr) minmax(60px,1fr) 40px; align-items:center; gap:12px; padding:10px; border-bottom:1px solid #e3ebee; font-size:12px; }
.da-bars > div > span:first-child { overflow-wrap:anywhere; line-height:1.5; }
.da-bars > div:nth-child(even) { background:#f7fafa; }
.da-track { height:10px; background:#e8eff1; }
.da-track i { display:block; height:100%; }
.da-timeline { width:100%; max-height:240px; }
.da-timeline text { fill:#647b83; font:12px sans-serif; }
.da-table-scroll { overflow:auto; max-height:380px; }
.da-table-scroll table { width:100%; border-collapse:collapse; font-size:12px; }
.da-table-scroll th { background:#007491; color:#fff; position:sticky; top:0; text-align:left; }
.da-table-scroll :is(th,td) { padding:10px; border-bottom:1px solid #d9e5e9; overflow-wrap:anywhere; }
.da-table-scroll td:first-child { min-width:105px; }
.da-pager { display:flex; align-items:center; gap:12px; justify-content:center; padding:6px; font-size:12px; }
.da-method { border-top:1px solid #d2e0e5; margin-top:12px; }
.da-method p { font-size:11px; line-height:1.5; color:#647b83; }
@media(max-width:700px) {
  .da-workspace { padding:10px; }.da-heading h3 {font-size:16px;}
  .da-filters,.da-more > div { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .da-modes button {font-size:12px;}.da-picker > div {width:230px;}
  .da-run {flex-wrap:wrap;}.da-run span{width:100%;}
  .da-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}.da-metrics > div{padding:10px;}
  .da-dialog {width:calc(100vw - 12px);max-height:calc(100dvh - 12px);}
  .da-dialog > header,.da-dialog-body {padding:12px;}.da-dialog h2{font-size:18px;}
  .da-output {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:8px 12px;gap:6px;}
  .da-output button {padding:8px 4px;width:100%;font-size:11px;}.da-output [data-present]{grid-column:1/-1;}
  .da-tabs button {flex:1 0 30%;font-size:11px;}
  .da-bars > div {grid-template-columns:minmax(0,1.5fr) minmax(40px,1fr) 25px;gap:6px;padding:8px;font-size:11px;}
  .da-table-scroll :is(th,td) {padding:8px 5px;}
}

/* Reporting stays a single work surface; filters live in a bounded drawer. */
.discipline-admin-nav { display:flex; gap:4px; margin:8px 0 12px; padding:4px; border-bottom:1px solid #c7d9df; }
.discipline-admin-nav button { flex:1; margin:0; min-width:0; min-height:44px; padding:8px; border:0; border-radius:4px; background:transparent; color:#315465; font:inherit; font-size:13px; }
.discipline-admin-nav [aria-pressed=true] { background:#007491; color:white; font-weight:700; }
.discipline-admin-section[hidden],.da-workspace [hidden] { display:none !important; }
.discipline-admin-section > summary { display:none; }
.discipline-admin-section { margin-top:0; }
.discipline-admin-section[data-admin-section=reports] { padding:0; border:0; background:transparent; box-shadow:none; }
.da-heading > small { white-space:nowrap; }
.da-filter-strip { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; margin:16px 0; border:1px solid #cedee2; }
.da-filter-strip button { position:relative; display:grid; align-content:start; gap:6px; min-width:0; margin:0; padding:12px 30px 12px 12px; min-height:74px; border:0; border-radius:0; border-bottom:1px solid #e1e9ec; text-align:left; background:#fff; color:#19394e; }
.da-filter-strip button:nth-child(odd) { border-right:1px solid #e1e9ec; }
.da-filter-strip button:hover { background:#f0f7f7; }
.da-filter-strip button > span:first-child { color:#627985; font-size:11px; }
.da-filter-strip strong { font-size:13px; font-weight:600; line-height:1.45; overflow-wrap:anywhere; }
.da-edit-mark { position:absolute; right:12px; top:24px; font-size:22px; color:#007491; }
.da-launch { display:flex; align-items:end; gap:16px; border-bottom:1px solid #dae5e8; padding-bottom:16px; }
.da-launch label { display:grid; gap:6px; font-size:12px; margin:0; flex:1; min-width:0; }
.da-launch select { min-height:42px; width:100%; margin:0; font-size:13px; }
.da-launch p { flex:1; font-size:12px; color:#627985; margin:0; align-self:center; line-height:1.5; }
.da-launch button { width:auto; margin:0; min-height:42px; font-size:13px; }
.da-filter-dialog { position:fixed; inset:0 0 0 auto; margin:0; width:min(560px,100vw); max-width:100vw; height:100dvh; max-height:100dvh; box-sizing:border-box; padding:0; border:0; border-left:1px solid #bcd1d8; border-radius:0; background:#fff; color:#19394e; }
.da-filter-dialog[open] { display:flex; flex-direction:column; }
.da-filter-dialog::backdrop { background:#17334288; }
.da-filter-dialog > header { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:20px; border-top:4px solid #009386; }
.da-filter-dialog header span { font-size:10px; font-weight:700; color:#007491; }
.da-filter-dialog h3 { margin:4px 0 0; font-size:20px; }
.da-filter-dialog .btn-icon { width:40px; height:40px; margin:0; flex:0 0 40px; }
.da-filter-tabs { display:flex; border-block:1px solid #d6e2e5; }
.da-filter-tabs button { flex:1; min-width:0; margin:0; padding:12px 4px; border:0; border-radius:0; background:#f4f8f8; color:#315465; font:inherit; font-size:13px; }
.da-filter-tabs [aria-pressed=true] { color:#007491; box-shadow:inset 0 -3px #009386; background:white; font-weight:700; }
.da-filter-dialog .da-filters { display:block; flex:1; min-height:0; overflow:auto; padding:20px; }
.da-filter-dialog h4 { font-size:15px; margin:0 0 20px; }
.da-filter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-bottom:16px; }
.da-filter-dialog .da-picker > div { position:static; min-width:0; width:100%; max-width:none; border:0; box-shadow:none; padding:8px 0 0; }
.da-filter-dialog .da-options { max-height:none; }
.da-filter-dialog [data-picker=branch_ids] .da-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; }
.da-filter-dialog .da-options label { border-bottom:1px solid #e3ebee; min-height:42px; padding:8px; box-sizing:border-box; }
.da-filter-dialog .da-options label:has(input:checked) { background:#eff8f5; }
.da-filter-dialog footer { display:flex; gap:8px; padding:16px 20px; border-top:1px solid #d6e2e5; }
.da-filter-dialog footer button { margin:0; min-height:42px; width:auto; font-size:13px; }
.da-filter-dialog footer [data-reset] { margin-right:auto; }
.da-filter-error { color:#a12c4d; font-size:13px; }
.da-filter-dialog [data-sms-policy] { font-size:12px; line-height:1.5; color:#627985; }
.da-feedback:empty { padding:0; }
.da-workspace button:focus-visible,.discipline-admin-nav button:focus-visible { outline:2px solid #007491; outline-offset:2px; }
@media(max-width:700px) {
  .discipline-admin-nav { flex-wrap:wrap; gap:3px; }
  .discipline-admin-nav button { flex:1 1 28%; font-size:12px; }
  .da-filter-strip { margin:12px 0; }
  .da-filter-strip button { padding:10px 23px 10px 10px; }
  .da-filter-strip strong { font-size:12px; }
  .da-edit-mark { right:8px; }
  .da-launch { display:grid; grid-template-columns:1fr; gap:10px; padding-bottom:12px; }
  .da-launch button { width:100%; }
  .da-launch p { font-size:11px; }
  .da-filter-dialog > header,.da-filter-dialog .da-filters { padding:16px; }
  .da-filter-dialog footer { padding:12px; }
  .da-filter-dialog footer button { padding:8px 10px; }
  .da-filter-dialog [data-picker=branch_ids] .da-options { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
