#modal :is(.wm-reader,.wm-editor) { box-sizing:border-box;min-width:0;max-width:100%;color:#244337; }
#modal .wm-document { padding:18px 16px;margin:12px 0 16px;border-radius:6px;background:#214635;color:white; }
#modal .wm-document :is(h2,span) { color:white!important;-webkit-text-fill-color:white!important; }
#modal .wm-document span { font-size:11px;letter-spacing:.08em; }
#modal .wm-document h2 { margin:6px 0 0;font-size:22px; }
#modal .wm-actions { display:flex;gap:8px;flex-wrap:wrap; }
#modal .wm-basis { font-size:12px;line-height:1.7;margin:8px 0;color:#50665a; }
#modal .wm-coverage,#modal .wm-error:not(:empty) { border:1px solid #d7bd92;background:#fff9ef;border-radius:5px;padding:10px;font-size:12px;line-height:1.7;color:#765227; }
#modal .wm-error:empty { display:none; }
#modal .wm-metrics { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 20px; }
#modal .wm-metric { min-width:0;padding:14px;background:#f3f7f0;border:1px solid #cfdbc8;border-radius:6px;overflow-wrap:anywhere; }
#modal .wm-metric h3 { margin:0 0 10px;font-size:18px; }
#modal .wm-metric h3 span { font-size:12px;font-weight:400; }
#modal .wm-metric>strong { font-size:23px;font-variant-numeric:tabular-nums; }
#modal .wm-metric p { font-size:12px;line-height:1.7;margin:8px 0 0; }
#modal .wm-metric small { display:block;margin-top:9px;font-size:11px;color:#5b715c; }
#modal :is(.wm-auto,.wm-final,.wm-numeric-editor) { margin:20px 0;padding-top:16px;border-top:1px solid #cbd8c8;min-width:0; }
#modal :is(.wm-auto,.wm-final,.wm-numeric-editor)>h3 { margin:0 0 10px;font-size:16px; }
#modal :is(.wm-auto,.wm-numeric-editor)>p { margin:0 0 12px;font-size:12px;line-height:1.7; }
#modal .wm-numeric-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px; }
#modal :is(.wm-input,.wm-text) { display:block;min-width:0; }
#modal :is(.wm-input,.wm-text)>span { display:block;margin-bottom:6px;font-size:13px;font-weight:600; }
#modal :is(.wm-input,.wm-text) :is(input:not([type=hidden]),textarea) { box-sizing:border-box;min-width:0;width:100%;max-width:100%;min-height:44px;font:inherit;font-size:16px;border:1px solid #bccbb9;border-radius:5px;padding:10px;background:white;color:#244337; }
#modal .wm-text textarea { min-height:90px;line-height:1.65;resize:vertical; }
#modal .wm-auto-item { margin:10px 0;border:1px solid #d6e1d1;border-radius:6px;background:#f7faf4;min-width:0; }
#modal .wm-auto-item>summary { display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:12px;cursor:pointer;font-size:13px;font-weight:650;list-style:revert; }
#modal .wm-auto-item>summary>span:first-child { flex:1; }
#modal .wm-auto-item>summary::after { content:"＋";font-size:18px; }
#modal .wm-auto-item[open]>summary::after { content:"−"; }
#modal .wm-auto-badge { font-size:11px;font-weight:400;color:#5b715c;white-space:nowrap; }
#modal .wm-auto-body { padding:0 12px 12px; }
#modal .wm-auto-item textarea { min-height:120px;max-height:none!important;overflow-y:hidden; }
#modal .wm-auto-state { display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px;font-size:12px;font-weight:600; }
#modal .wm-auto-state button { min-height:44px;font-size:12px; }
#modal .wm-comment h4 { margin:8px 0;font-size:13px; }
#modal .wm-comment p { white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8; }
#modal .wm-auto-item .wm-comment p { max-height:none;overflow:visible; }
#modal .wm-final { display:grid;gap:12px; }
#modal .wm-submit { display:flex;justify-content:space-between;gap:10px;align-items:center;padding-top:16px;border-top:1px solid #cbd8c8; }
#modal .wm-submit span { font-size:11px; }
#modal .wm-submit button { min-height:46px; }
@media(max-width:700px){
 #modal .wm-metrics,#modal .wm-numeric-grid { grid-template-columns:minmax(0,1fr); }
 #modal .wm-metric>strong { font-size:22px; }
 #modal .wm-auto-state { align-items:flex-start;flex-direction:column; }
 #modal .wm-auto-state button { width:100%; }
 #modal .wm-submit { align-items:stretch;flex-direction:column; }
 #modal .wm-actions button { flex:1; }
 #modal .wm-numeric-grid .money-entry-line { flex-wrap:wrap;gap:10px; }
}

/* Each report uses the dialog as its only vertical page scroller. */
html:has(#modal[open] :is(.wm-reader,.wm-editor)),body:has(#modal[open] :is(.wm-reader,.wm-editor)) { overflow:hidden; }
#modal:has(:is(.wm-reader,.wm-editor)) { overflow-x:hidden;overflow-y:auto; }
#modal :is(.wm-reader,.wm-editor) { height:auto;max-height:none;overflow:visible; }
#modal .wm-text textarea { max-height:none!important;overflow-y:hidden; }
#modal .wr-extra-detail { min-width:0;margin:12px 0;border:1px solid #ccd8cd;border-radius:7px;background:#f6f8f4; }
#modal .wr-extra-detail>summary { min-height:46px;padding:12px;font-size:13px;font-weight:650;cursor:pointer;line-height:1.6;color:#31513f; }
#modal .wr-extra-body { min-width:0;padding:0 12px 12px;display:grid;gap:12px; }
#modal .wr-extra-body>.wr-section,#modal .wr-extra-body>.hbg-section { margin-bottom:0!important; }
#modal :is(.wr-editor,.wr-reader) .wr-extra-detail textarea { overflow-y:hidden!important;max-height:none!important; }
