/* V328: department overview inherits every active portal theme. */
.dm328{--dm-accent:var(--op-accent);--dm-soft:var(--op-soft);--dm-radius:var(--op-radius);max-width:1600px;margin-inline:auto}
.dm328 [hidden]{display:none!important}.dm328 input,.dm328 button,.dm328 select{font:inherit}.dm328 input:focus-visible,.dm328 svg [role=button]:focus-visible{outline:3px solid var(--dm-accent);outline-offset:3px}.dm328 .dm328-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:19px}.dm328 .dm328-eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:650;color:var(--dm-accent)}.dm328 .dm328-heading h1{font-size:30px;line-height:1.2;margin:7px 0 8px;letter-spacing:-.8px}.dm328 .dm328-heading h1>span{color:var(--dm-accent)}.dm328 .dm328-heading p{font-size:12px;color:var(--op-muted)}.dm328 .dm328-actions{background:transparent;padding:0}.dm328 .dm328-actions .ot-hero-actions{margin:0;display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dm328>.op-views{margin-bottom:15px;flex-wrap:wrap}.dm328 .dm328-filters{display:flex;align-items:end;gap:11px;flex-wrap:wrap;margin-bottom:9px}.dm328 .dm328-filters label{display:flex;flex-direction:column;align-items:stretch;gap:5px;font-size:11px;min-width:130px}.dm328 .dm328-filters select,.dm328 .dm328-filters input{background:var(--op-panel);color:var(--op-ink);border:1px solid var(--op-line);border-radius:7px;padding:8px 10px;min-height:38px;max-width:100%;width:100%}.dm328 .dm328-filters label:first-child{max-width:290px}.dm328 .dm328-dates{display:flex;gap:10px}.dm328 .dm328-scope{font-size:11px;color:var(--op-muted);line-height:1.6;margin-bottom:17px}.dm328 .dm328-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:37px;border:1px solid var(--op-line);border-radius:7px;padding:8px 11px;background:var(--op-panel);color:var(--op-ink);font-size:11px;font-weight:600;text-decoration:none;text-align:center}.dm328 .dm328-button:hover{background:var(--dm-soft)}.dm328 .dm328-primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.dm328 .dm328-primary:hover{background:color-mix(in srgb,var(--primary) 90%,var(--op-ink))}.dm328 .dm328-button:disabled{opacity:.45;cursor:default}.dm328 .dm328-message:empty{display:none}.dm328 .dm328-message{margin-bottom:12px;padding:10px;border:1px solid var(--op-line);border-radius:7px;color:var(--op-ink);background:var(--op-panel)}
.dm328 .dm328-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:17px}.dm328 .dm328-card{display:flex;flex-direction:column;text-align:left;min-height:171px;padding:16px;border:1px solid var(--op-line);box-shadow:none;border-radius:var(--dm-radius);color:var(--op-ink)}.dm328 .dm328-card:first-child{border-top:1px solid var(--op-line);padding-top:16px}.dm328 .dm328-card>span{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:22px;color:var(--op-ink);font-size:12px;font-weight:550;margin-bottom:12px}.dm328 .dm328-card strong{font-size:34px;letter-spacing:-1px;line-height:1.2}.dm328 .dm328-card>b{font-size:12px;font-weight:550;font-variant-numeric:tabular-nums;margin-top:6px;overflow-wrap:anywhere}.dm328 .dm328-card>small{display:flex;justify-content:space-between;align-items:start;gap:5px;margin-top:auto;padding-top:13px;font-size:10px;line-height:1.6}.dm328 .dm328-card[aria-pressed=true]{background:var(--primary);border-color:var(--primary);color:var(--on-primary)}.dm328 .dm328-card[aria-pressed=true]>span,.dm328 .dm328-card[aria-pressed=true]>small{color:var(--on-primary)}.dm328 .dm328-card:hover{box-shadow:0 3px 12px color-mix(in srgb,var(--dm-accent) 10%,transparent)}
.dm328 .dm328-charts{display:grid;grid-template-columns:minmax(0,1.22fr) minmax(0,1fr);gap:15px;margin-bottom:18px;align-items:start}.dm328 .op-panel{border-radius:var(--dm-radius)}.dm328 .dm328-chart-total{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;padding:12px 19px 0}.dm328 .dm328-chart-total strong{font-size:23px;line-height:1.2;font-weight:650;letter-spacing:-.5px;overflow-wrap:anywhere}.dm328 .dm328-chart-total>span{font-size:10px;color:var(--op-muted)}.dm328 .dm328-legend{display:flex;gap:15px;margin:12px 19px 2px;color:var(--op-muted);font-size:10px}.dm328 .dm328-legend>span::before{content:'';display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--dm-accent);margin-right:5px}.dm328 .dm328-legend>span:last-child::before{background:color-mix(in srgb,var(--dm-accent) 42%,var(--op-panel))}.dm328 .dm328-chart{display:block;width:calc(100% - 24px);margin:0 12px;overflow:visible}.dm328 .dm328-chart text{font-size:11px;font-family:inherit;fill:var(--op-muted)}.dm328 .dm328-chart line{stroke:var(--op-line);stroke-width:1}.dm328 .dm328-chart [role=button]{cursor:pointer}.dm328 .dm328-hit{fill:transparent}.dm328 .dm328-bar-requested{fill:var(--dm-accent)}.dm328 .dm328-bar-settled{fill:color-mix(in srgb,var(--dm-accent) 42%,var(--op-panel))}.dm328 .dm328-chart [role=button]:hover .dm328-hit{fill:var(--dm-soft)}.dm328 .dm328-chart-data{border-top:1px solid var(--op-line);padding:10px 18px;font-size:11px;color:var(--op-muted)}.dm328 .dm328-chart-data summary{cursor:pointer}.dm328 .dm328-chart-data>div{overflow-x:auto}.dm328 .dm328-chart-data table{width:100%;border-collapse:collapse;margin-top:10px;text-align:left;font-size:11px}.dm328 .dm328-chart-data th,.dm328 .dm328-chart-data td{padding:7px 4px;border-bottom:1px solid var(--op-line);vertical-align:middle}.dm328 .dm328-chart-data button{border:0;background:none;color:var(--dm-accent);font:inherit;text-align:left;padding:4px;white-space:nowrap;min-height:30px}.dm328 .dm328-status{display:grid;gap:8px;padding:14px 19px 17px}.dm328 .dm328-status>button{display:grid;grid-template-columns:minmax(105px,1.15fr) minmax(30px,1fr) 30px;gap:10px;align-items:center;padding:5px 0;min-height:32px;background:transparent;border:0;text-align:left;color:var(--op-ink);font-size:11px;border-radius:4px}.dm328 .dm328-status>button[aria-pressed=true]{color:var(--dm-accent);font-weight:600}.dm328 .dm328-status>button>span{overflow-wrap:anywhere}.dm328 .dm328-status>button>i{height:8px;border-radius:4px;background:var(--dm-soft);overflow:hidden;display:block}.dm328 .dm328-status>button>i>i{display:block;height:100%;border-radius:4px;background:var(--dm-accent);opacity:.8}.dm328 .dm328-status>button>b{text-align:right;font-variant-numeric:tabular-nums}.dm328 .dm328-panel-note{border-top:1px solid var(--op-line);padding:11px 19px;color:var(--op-muted);font-size:11px;line-height:1.6}
.dm328 .dm328-queue .op-panel-head{align-items:center;padding-bottom:14px}.dm328 .dm328-result{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 19px;background:var(--dm-soft);border-block:1px solid var(--op-line);font-size:11px;color:var(--op-muted)}.dm328 .dm328-result b{color:var(--op-ink);font-variant-numeric:tabular-nums;font-weight:550}.dm328 .dm328-table-head,.dm328 .dm328-row{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(90px,.7fr) minmax(100px,.7fr) minmax(130px,.95fr) 125px;align-items:center;gap:13px;padding:13px 19px}.dm328 .dm328-table-head{font-size:10px;color:var(--op-muted);padding-block:11px}.dm328 .dm328-row{border-top:1px solid var(--op-line);min-height:83px;font-size:11px}.dm328 .dm328-request>a{font-weight:600;color:var(--op-ink);text-decoration:none;overflow-wrap:anywhere}.dm328 .dm328-request>a:hover{text-decoration:underline}.dm328 .dm328-row small{display:block;color:var(--op-muted);font-size:10px;margin-top:4px;overflow-wrap:anywhere}.dm328 .dm328-department{overflow-wrap:anywhere}.dm328 .dm328-money{font-variant-numeric:tabular-nums;font-weight:600;overflow-wrap:anywhere}.dm328 .dm328-badge{display:inline-flex;align-items:center;font-size:10px;padding:4px 7px;border-radius:5px;background:var(--dm-soft);color:var(--op-muted);max-width:100%;overflow-wrap:anywhere}.dm328 .dm328-badge.is-mine{color:var(--dm-accent);font-weight:600}.dm328 .dm328-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--op-line);padding:12px 19px;color:var(--op-muted);font-size:11px}.dm328 .dm328-pagination>div{display:flex;gap:8px}.dm328 .dm328-note{font-size:11px;color:var(--op-muted);margin-top:16px;line-height:1.6}.dm328 .dm328-empty{padding:28px 19px;color:var(--op-muted);font-size:12px}.dm328 [aria-busy=true]{cursor:progress}
@media(max-width:1150px){.dm328 .dm328-table-head,.dm328 .dm328-row{grid-template-columns:minmax(0,1.5fr) minmax(75px,.7fr) minmax(90px,.7fr) minmax(100px,.9fr) 112px;gap:9px}.dm328 .dm328-heading h1{font-size:27px}.dm328 .dm328-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.dm328 .dm328-card{min-height:162px}.dm328 .dm328-heading{align-items:start}}
@media(max-width:820px){.dm328 .dm328-charts{grid-template-columns:1fr}.dm328 .dm328-table-head{display:none}.dm328 .dm328-row{grid-template-columns:minmax(0,1fr) auto;gap:11px 15px;padding:16px}.dm328 .dm328-request{grid-column:1/-1}.dm328 .dm328-department{grid-column:1;grid-row:2}.dm328 .dm328-money{grid-column:2;grid-row:2;text-align:right;max-width:150px}.dm328 .dm328-stage{grid-column:1;grid-row:3}.dm328 .dm328-row>.dm328-button{grid-column:2;grid-row:3;max-width:145px;min-height:42px}.dm328 .dm328-heading{flex-direction:column;gap:12px}.dm328 .dm328-actions .ot-hero-actions{justify-content:flex-start}.dm328 .dm328-chart{max-height:230px}}
@media(max-width:520px){.dm328 .dm328-heading h1{font-size:25px}.dm328 .dm328-filters{gap:10px}.dm328 .dm328-filters>label{flex:1;min-width:calc(50% - 10px)}.dm328 .dm328-filters>label:first-child{max-width:none;min-width:100%}.dm328 .dm328-filters select,.dm328 .dm328-filters input{min-height:44px;font-size:16px;min-width:0}.dm328 .dm328-filters>.dm328-button{flex:1;min-width:calc(50% - 10px);min-height:44px}.dm328 .dm328-dates{width:100%;gap:10px}.dm328 .dm328-dates>label{min-width:0;flex:1}.dm328 .dm328-cards{gap:9px}.dm328 .dm328-card,.dm328 .dm328-card:first-child{padding:13px;min-height:177px}.dm328 .dm328-card>span{font-size:11px;min-height:33px}.dm328 .dm328-card strong{font-size:30px}.dm328 .dm328-card>b{font-size:11px}.dm328 .dm328-card>small{font-size:10px;line-height:1.5}.dm328 .dm328-queue .op-panel-head{align-items:start;flex-wrap:wrap}.dm328 .dm328-queue .op-panel-head>.dm328-button{min-height:40px}.dm328 .dm328-result{padding:10px 16px;align-items:start;flex-wrap:wrap}.dm328 .dm328-row>.dm328-button{font-size:10px;max-width:110px;padding:8px}.dm328 .dm328-chart-total strong{font-size:21px}.dm328 .dm328-status>button{min-height:44px;grid-template-columns:minmax(105px,1.2fr) minmax(20px,1fr) 25px;gap:7px}.dm328 .dm328-pagination{padding:12px 16px;flex-wrap:wrap}.dm328 .dm328-pagination button{min-height:42px}.dm328 .op-views>button{min-height:42px;flex:1}.dm328 .dm328-note{font-size:10px}.dm328 .dm328-chart-data button{min-height:42px}}
@media(prefers-reduced-motion:reduce){.dm328 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Touch alternative keeps six-month values legible without shrinking SVG labels. */
.dm328 [data-dm-chart]{width:calc(100% - 24px);margin-inline:12px}.dm328 [data-dm-chart] .dm328-chart{width:100%;margin:0}.dm328 .dm328-mobile-trend{display:none}.dm328 .dm328-chart-data summary{min-height:27px;display:list-item;padding-block:4px}
@media(max-width:520px){.dm328 [data-dm-chart]{display:none}.dm328 .dm328-legend{display:none}.dm328 .dm328-mobile-trend{display:block;padding:14px 16px}.dm328 .dm328-mobile-trend>div{display:grid;grid-template-columns:36px minmax(0,1fr) minmax(0,1fr);gap:8px;align-items:center;margin-block:8px;font-size:11px}.dm328 .dm328-mobile-trend>div:first-child{color:var(--op-muted);font-size:10px;margin-bottom:9px}.dm328 .dm328-mobile-trend>div>b{font-size:11px;font-weight:550}.dm328 .dm328-mobile-trend button{position:relative;min-width:0;min-height:44px;padding:8px;border:1px solid var(--op-line);border-radius:6px;color:var(--op-ink);background:var(--op-panel);overflow:hidden;text-align:right}.dm328 .dm328-mobile-trend button>i{position:absolute;left:0;top:0;bottom:0;background:color-mix(in srgb,var(--dm-accent) 20%,var(--op-panel));pointer-events:none}.dm328 .dm328-mobile-trend button.is-settled>i{background:color-mix(in srgb,var(--dm-accent) 9%,var(--op-panel))}.dm328 .dm328-mobile-trend button>span{position:relative;z-index:1;font-size:12px;font-variant-numeric:tabular-nums;font-weight:600}.dm328 .dm328-mobile-trend>p{font-size:10px;color:var(--op-muted);margin-top:12px}.dm328 .dm328-chart-data summary{min-height:44px;padding-block:12px}}
