.mg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 24px}.mg-tabs a{padding:10px 15px;border:1px solid var(--border,#dce4ed);border-radius:10px;color:inherit;text-decoration:none;background:white}.mg-tabs a.selected{background:var(--primary,#2563eb);color:white}
.mg-filters label,.mg-config-grid label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;color:var(--text,#10213b)}
.mg-filters input:not([type=checkbox]),.mg-filters select,.mg-config-grid input:not([type=checkbox]),.mg-config-grid select{min-height:44px;border:1px solid var(--line,#dce4ed);border-radius:9px;padding:10px 12px;background:white;font:inherit;color:inherit;box-shadow:none}
.mg-filters input[type=date],.mg-config-grid input[type=date]{appearance:none;-webkit-appearance:none;display:block;width:100%;min-width:0;box-sizing:border-box}
.mg-filters input[type=date]::-webkit-date-and-time-value,.mg-config-grid input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}
.mg-filters label.inline-check{flex-direction:row;align-items:center;justify-content:flex-start}.mg-filters .inline-check input[type=checkbox]{width:18px;min-width:18px;height:18px;flex:none}
.mg-config-grid label:has(input[type=checkbox]){flex-direction:row;align-items:center;min-height:44px}.mg-config-grid input[type=checkbox]{width:18px!important;height:18px;flex:none}
.mg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:16px;margin:20px 0}.mg-card,.mg-section{padding:22px;background:white;border:1px solid var(--border,#dce4ed);border-radius:16px;min-width:0}.mg-card strong{display:block;font-size:28px;margin:12px 0;color:var(--text,#10213b)}.mg-card p,.mg-card small{color:var(--muted,#687b95)}.mg-card small{display:block}.mg-section{margin:18px 0}.mg-section h2{margin-top:0}.mg-filters{display:flex;flex-wrap:wrap;gap:14px;align-items:end}.mg-filters label{flex:1 1 160px;min-width:0}.mg-filters input,.mg-filters select{width:100%;min-width:0;max-width:100%;box-sizing:border-box}.mg-filters .inline-check{flex-basis:100%}
.mg-info{margin:8px 0;font-size:13px;color:var(--muted,#687b95)}.mg-info summary{cursor:pointer}.mg-info p{max-width:75ch;line-height:1.6}.mg-table-wrap{overflow:auto;max-width:100%;border-radius:10px}.mg-table{border-collapse:collapse;width:100%;font-variant-numeric:tabular-nums}.mg-table th,.mg-table td{padding:12px;border-bottom:1px solid #e5eaf1;text-align:left}.mg-table th{font-size:13px;color:#61728c}.mg-table td:first-child{min-width:110px}.mg-cell{border:0;background:#eff5ff;color:#193a74;padding:12px;width:100%;border-radius:8px;cursor:pointer;font-weight:600;min-height:44px}.mg-cell.heat-1{background:#eaf2ff}.mg-cell.heat-2{background:#d8e7ff}.mg-cell.heat-3{background:#b4d0ff}.mg-cell.heat-4{background:#285eb1;color:white}.mg-cell small{display:block;font-size:11px;margin-top:4px}.mg-note{padding:12px 16px;border:1px solid #e4e8ef;border-radius:10px;color:#64748b;background:#f8fafc;font-size:14px;line-height:1.6}.mg-note.warning{background:#fffbef;color:#855b17}.mg-empty{padding:28px;text-align:center;color:#64748b}.mg-card a{color:inherit}.mg-figure{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.mg-ring{width:100px;height:100px;flex:none}.mg-ring circle{fill:none;stroke:#e7edf5;stroke-width:9}.mg-ring .value{stroke:#2563eb;transform:rotate(-90deg);transform-origin:center}.mg-ring text{font-size:18px;fill:#10213b;font-weight:700}
.mg-config-row{padding:20px 0;border-bottom:1px solid #e5eaf1}.mg-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,175px),1fr));gap:12px;align-items:end}.mg-config-grid label{min-width:0}.mg-config-grid input,.mg-config-grid select{max-width:100%;min-width:0;width:100%;box-sizing:border-box}.mg-config-grid input[type=checkbox]{width:auto}.mg-config{padding-bottom:100px}.mg-config .services-savebar{z-index:15}.mg-toast{position:fixed;bottom:100px;right:24px;z-index:30;background:#eefbf3;border:1px solid #bddcc8;padding:14px 22px;border-radius:12px;max-width:calc(100vw - 32px)}.mg-dialog{width:min(500px,calc(100vw - 32px));padding:24px;border:1px solid #dce4ed;border-radius:16px;max-height:85dvh;overflow:auto}.mg-dialog::backdrop{background:#10213b66}.mg-dialog .dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.mg-dialog button{min-height:44px;min-width:44px}.mg-history{font-size:13px;margin-top:10px}.mg-history li{margin:6px 0}
@media(max-width:600px){.mg-card,.mg-section{padding:16px}.mg-card strong{font-size:24px}.mg-tabs{gap:6px}.mg-tabs a{padding:10px 12px}.mg-table th,.mg-table td{padding:8px}.mg-table{font-size:13px}.mg-filters>button{width:100%}.mg-toast{right:16px;left:16px;bottom:110px}.mg-dialog{padding:16px}.mg-config .services-savebar{left:0;right:0;bottom:0;padding-bottom:max(14px,env(safe-area-inset-bottom))}}
/* v5.16 visual management dashboard */
.mg-dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:4px 0 18px}.mg-dashboard-intro h2{margin:3px 0 5px;font-size:26px}.mg-dashboard-intro p{margin:0}.eyebrow{margin:0 0 5px!important;text-transform:uppercase;letter-spacing:.08em;font-size:11px!important;font-weight:800;color:#64748b!important}.mg-dashboard-status{max-width:400px;padding:9px 12px;border-radius:10px;background:#eef5ff;color:#355070;font-size:13px}
.mg-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.mg-kpi{display:block;min-width:0;text-align:left;padding:18px;border:1px solid #dce4ed;border-radius:15px;background:#fff;color:inherit}.mg-kpi>span{display:block;color:#5f7189;font-size:13px;font-weight:700}.mg-kpi>strong{display:block;font-size:28px;line-height:1.1;margin:9px 0 6px;color:#10213b;font-variant-numeric:tabular-nums}.mg-kpi>small{display:block;color:#6b7d92;line-height:1.4}.mg-kpi-button{font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.mg-kpi-button:hover,.mg-kpi-button:focus-visible{border-color:#8cb2f4;box-shadow:0 5px 18px #1d4ed80f;outline:0;transform:translateY(-1px)}.mg-kpi .mg-info{margin-top:9px}
.mg-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.85fr);gap:18px;align-items:start}.mg-dashboard-grid .mg-section{margin:0}.mg-span-2{grid-column:1/-1}.mg-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.mg-section-head h2,.mg-chart-card>h2,.mg-attention h2{margin:0 0 5px}.mg-section-head p,.mg-chart-card>p{margin:0;color:#687b95}.mg-chart{min-height:250px;width:100%;overflow:hidden}.mg-chart-small{min-height:190px}.mg-svg{display:block;width:100%;height:auto;max-height:320px}.mg-grid-line,.mg-zero-line{stroke:#e6ebf2;stroke-width:1}.mg-axis-label{font-size:11px;fill:#718197}.mg-value-label{font-size:11px;fill:#334155;font-weight:700}.mg-line{fill:none;stroke:#2563eb;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.mg-point{fill:#fff;stroke:#2563eb;stroke-width:3}.mg-bar-received,.mg-bar-new{fill:#2563eb}.mg-bar-expected{fill:#dbeafe;stroke:#7aa7eb;stroke-width:1}.mg-bar-due,.mg-bar-exits{fill:#f59e0b}.mg-ticket-line{fill:none;stroke:#334155;stroke-width:2;stroke-dasharray:5 4}.mg-ticket-point{fill:#334155}.mg-active-line{fill:none;stroke:#0f766e;stroke-width:3}.mg-active-point{fill:#fff;stroke:#0f766e;stroke-width:3}.mg-bar-new[role=button],.mg-bar-exits[role=button]{cursor:pointer}.mg-bar-new[role=button]:focus,.mg-bar-exits[role=button]:focus{stroke:#10213b;stroke-width:2}
.mg-chart-legend{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:10px;color:#64748b;font-size:12px}.mg-chart-legend span{display:flex;align-items:center;gap:7px}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:99px;background:#94a3b8}.legend-dot.received{background:#2563eb}.legend-dot.expected{background:#bfdbfe}.legend-dot.due{background:#f59e0b}.legend-dot.offered{background:#7c3aed}.legend-dot.unknown{background:#94a3b8}.legend-dot.active{background:#0f766e}.legend-dot.exits{background:#ef4444}
.mg-donut-wrap{display:flex;justify-content:center;padding:8px 0 15px}.mg-donut{width:160px;height:160px;border-radius:50%;display:grid;place-items:center;position:relative;background:#edf2f7}.mg-donut:after{content:"";position:absolute;width:104px;height:104px;border-radius:50%;background:#fff}.mg-donut>span{z-index:1;text-align:center;font-size:25px;font-weight:800;color:#10213b}.mg-donut>span small{display:block;font-size:11px;font-weight:600;color:#718197;margin-top:2px}.mg-legend-list{display:grid;gap:7px}.mg-legend-list button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:#f8fafc;border-radius:9px;padding:10px 11px;color:#334155;font:inherit;cursor:pointer}.mg-legend-list button:hover,.mg-legend-list button:focus-visible{background:#eef5ff;outline:2px solid #bfdbfe}.mg-legend-list button span{display:flex;align-items:center;gap:8px}.mg-legend-list b{font-variant-numeric:tabular-nums}
.mg-attention-list{display:grid;gap:8px}.mg-attention-list button{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;border:1px solid #e6ebf2;border-left:4px solid #f59e0b;background:#fff;border-radius:10px;padding:12px;text-align:left;color:#24364f;font:inherit;cursor:pointer}.mg-attention-list button.tone-danger{border-left-color:#ef4444}.mg-attention-list button:hover,.mg-attention-list button:focus-visible{background:#f8fafc;outline:2px solid #dbeafe}.mg-attention-list b,.mg-attention-list small{display:block}.mg-attention-list small{margin-top:3px;color:#718197}.mg-attention-list strong{font-size:20px}.mg-attention-list em{font-style:normal;color:#2563eb;font-weight:700;font-size:12px}
.mg-retention-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:15px 0}.mg-retention-kpis>div{background:#f8fafc;border-radius:10px;padding:11px}.mg-retention-kpis span,.mg-retention-kpis small{display:block;color:#718197}.mg-retention-kpis strong{display:block;font-size:22px;margin:3px 0;color:#10213b}.mg-retention-kpis small{font-size:11px;line-height:1.35}
.mg-horizontal-bars{display:grid;gap:9px}.mg-horizontal-bars button{display:grid;grid-template-columns:minmax(120px,1fr) minmax(160px,2fr) auto;gap:14px;align-items:center;border:0;background:transparent;text-align:left;color:inherit;font:inherit;padding:9px 4px;cursor:pointer;border-radius:8px}.mg-horizontal-bars button:hover,.mg-horizontal-bars button:focus-visible{background:#f8fafc;outline:2px solid #e0eaff}.mg-horizontal-bars span small{display:block;color:#718197;margin-top:3px}.mg-horizontal-bars i{height:10px;background:#edf2f7;border-radius:99px;overflow:hidden}.mg-horizontal-bars i b{display:block;height:100%;background:#2563eb;border-radius:99px}.mg-horizontal-bars strong{white-space:nowrap}
.mg-forecast-number{padding:15px;border-radius:12px;background:#eff6ff}.mg-forecast-number span,.mg-forecast-number small{display:block;color:#5f7189}.mg-forecast-number strong{display:block;font-size:28px;margin:5px 0;color:#10213b}.mg-scenario-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.mg-scenario-strip>div{padding:10px;background:#f8fafc;border-radius:9px}.mg-scenario-strip span,.mg-scenario-strip small{display:block;color:#718197;font-size:11px}.mg-scenario-strip strong{display:block;margin:4px 0}.mg-data-quality{display:flex;justify-content:space-between;gap:20px;background:#fffbeb;border-color:#fde68a}.mg-data-quality ul{margin:0;padding-left:20px;max-width:750px}
body.mg-modal-open{overflow:hidden}.mg-detail-panel{position:fixed;inset:0;z-index:80}.mg-detail-panel[hidden]{display:none}.mg-detail-backdrop{position:absolute;inset:0;background:#0f172a66}.mg-detail-panel>section{position:absolute;right:0;top:0;bottom:0;width:min(560px,92vw);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;background:#fff;box-shadow:-12px 0 40px #0f172a24}.mg-detail-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:20px 22px;border-bottom:1px solid #e6ebf2}.mg-detail-panel header h2{margin:2px 0 3px}.mg-detail-panel header p{margin:0;color:#718197}.mg-detail-panel header>button{border:0;background:#f1f5f9;width:40px;height:40px;border-radius:50%;font-size:24px;cursor:pointer}.mg-detail-tools{display:grid;grid-template-columns:1fr auto;gap:9px;padding:12px 22px;border-bottom:1px solid #e6ebf2}.mg-detail-tools input,.mg-detail-tools select{min-width:0;border:1px solid #d7e0eb;border-radius:9px;padding:10px 11px;font:inherit}.mg-detail-list{overflow:auto;padding:10px 22px 20px}.mg-detail-row{padding:13px 0;border-bottom:1px solid #edf1f5}.mg-detail-row>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.mg-detail-row strong,.mg-detail-row small{display:block}.mg-detail-row small{color:#718197;text-align:right}.mg-detail-tags{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.mg-detail-tags span{padding:4px 7px;border-radius:99px;background:#f1f5f9;color:#475569;font-size:11px}.mg-detail-actions{display:flex;gap:7px;flex-wrap:wrap}.mg-detail-actions .btn{padding:8px 10px;min-height:36px}.mg-detail-panel footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 22px;border-top:1px solid #e6ebf2;background:#fff;padding-bottom:max(13px,env(safe-area-inset-bottom))}.mg-detail-panel footer>div{display:flex;gap:7px}.mg-detail-panel footer span{font-size:12px;color:#64748b}
@media(max-width:900px){.mg-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.mg-dashboard-grid{grid-template-columns:1fr}.mg-span-2{grid-column:auto}.mg-data-quality{display:block}.mg-scenario-strip{grid-template-columns:1fr}.mg-retention-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.mg-dashboard-intro{display:block}.mg-dashboard-status{margin-top:10px!important}.mg-kpis{grid-template-columns:1fr;gap:9px}.mg-kpi{padding:13px}.mg-kpi>strong{font-size:23px}.mg-kpi .mg-info{display:block}.mg-section-head{display:block}.mg-section-head .btn{display:inline-flex;margin-top:10px}.mg-chart{min-height:190px}.mg-donut{width:140px;height:140px}.mg-donut:after{width:90px;height:90px}.mg-horizontal-bars button{grid-template-columns:1fr auto}.mg-horizontal-bars i{grid-column:1/-1}.mg-attention-list button{grid-template-columns:1fr auto}.mg-attention-list em{display:none}.mg-detail-panel>section{width:100vw;max-width:none}.mg-detail-tools{grid-template-columns:1fr;padding:10px 14px}.mg-detail-list{padding:8px 14px 18px}.mg-detail-panel header,.mg-detail-panel footer{padding-left:14px;padding-right:14px}.mg-detail-row>div:first-child{display:block}.mg-detail-row small{text-align:left;margin-top:2px}}
@media(max-width:370px){.mg-kpis{grid-template-columns:1fr}.mg-retention-kpis{grid-template-columns:1fr 1fr}}

/* v5.17: filtered exports, chart touch values and unknown-series gaps. */
.mg-inline-link{border:0;background:none;color:#1d5ed1;text-align:left;font:inherit;cursor:pointer;padding:5px 0}.mg-detail-exports{display:flex;gap:8px;padding:8px 22px;flex-wrap:wrap}.mg-chart-tooltip{min-height:1.5em;font-size:12px;color:#4d617e;margin:8px 0;line-height:1.5}.mg-forecast-band{fill:#dbeafe;opacity:.75}.mg-forecast-line{stroke:#2563eb;fill:none;stroke-width:3}.mg-forecast-line.scenario-0{stroke-dasharray:8 5}.mg-forecast-line.scenario-2{stroke:#526886;stroke-dasharray:2 4}.mg-bar-new,.legend-dot.new{fill:#15803d;background:#15803d}.mg-svg [role=button]{cursor:pointer}.mg-svg [tabindex]:focus-visible{outline:3px solid #a51220;outline-offset:2px}.mg-chart{position:relative}.mg-chart-small .mg-svg{max-height:230px}.mg-section details summary{cursor:pointer;padding:10px 0;color:#435b79}.mg-detail-panel>section{grid-template-rows:auto auto auto minmax(0,1fr) auto}.mg-kpi .mg-inline-link{font-size:12px}.mg-axis-label{font-size:13px}
@media(max-width:480px){.mg-detail-exports{padding:8px 14px}.mg-svg{min-height:165px}.mg-chart-small .mg-svg{min-height:140px}.mg-axis-label{font-size:17px}.mg-value-label{font-size:20px}.mg-detail-panel footer{flex-wrap:wrap;gap:10px}.mg-detail-panel header h2{font-size:17px}}

.mg-active-line,.mg-active-point{stroke:#2563eb}.legend-dot.active{background:#2563eb}

/* v5.19: monthly movement cards retain the existing dashboard identity. */
.mg-movement {border-top:3px solid #245de8}
.mg-movement-note {line-height:1.55}
.mg-kpi small {overflow-wrap:anywhere}
.attendance-card .pagination {display:flex;align-items:center;justify-content:center;gap:12px;padding:16px;flex-wrap:wrap}

/* v5.20: selected calendar month drives every monthly business indicator. */
.monthly-filter-section{padding:18px 22px}
.monthly-months{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:5px;margin-top:18px}
.monthly-months a,.monthly-months>span{display:flex;align-items:center;justify-content:center;min-height:42px;padding:8px 4px;border-radius:8px;border:1px solid #e3e9f1;text-decoration:none;font-size:12px;color:#415774;text-align:center}
.monthly-months a:hover,.monthly-months a:focus-visible{background:#eff6ff;border-color:#7daaf1;outline:2px solid #bfdbfe}.monthly-months a.selected{background:#2159d5;color:#fff;border-color:#2159d5;font-weight:700}.monthly-months>span{color:#a5afbd;background:#fafbfc}
.monthly-navigation{display:flex;gap:8px;flex-wrap:wrap}.monthly-badge{display:inline-block;vertical-align:middle;font-size:12px;font-weight:600;padding:5px 9px;background:#eef3fb;color:#476180;border-radius:20px;margin-left:5px}
.monthly-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:18px}.monthly-kpi{display:flex;flex-direction:column}.monthly-kpi>strong{font-size:27px}.monthly-kpi>.mg-inline-link{margin-top:auto;padding-top:12px}.monthly-kpi>small{margin-bottom:6px}.monthly-links{display:flex;flex-wrap:wrap;gap:10px}.monthly-neutral{background:#f8fafc}.monthly-positive{color:#12714a!important}.monthly-negative{color:#b23a28!important}
.monthly-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.monthly-chart-grid>div{min-width:0}.monthly-chart-wide{grid-column:1/-1}.monthly-svg{width:100%;display:block;min-width:560px}.monthly-chart{overflow-x:auto}.monthly-axis{font-size:13px;fill:#64748b}.monthly-tooltip{font-size:12px;color:#64748b;min-height:2.4em;margin:10px 0 0}.monthly-svg circle:focus-visible{outline:3px solid #10213b;outline-offset:3px}.monthly-svg circle{cursor:pointer}.monthly-immature{font-size:12px;color:#8291a5}.monthly-trend-table{white-space:nowrap}.mg-table caption{text-align:left;padding:12px 0;color:#64748b;font-size:12px}.monthly-kpi details p{line-height:1.5}.monthly-kpi .mg-info{font-size:12px}
@media(max-width:1250px){.monthly-months{grid-template-columns:repeat(6,1fr)}.monthly-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.monthly-chart-grid{grid-template-columns:1fr}}
@media(max-width:800px){.monthly-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.monthly-kpi>strong{font-size:24px}.monthly-chart-grid{gap:12px}.monthly-badge{margin:6px 0}.monthly-navigation{margin-top:12px}.monthly-filter-section{padding:16px}}
@media(max-width:480px){.monthly-months{grid-template-columns:repeat(3,1fr)}.monthly-kpis{grid-template-columns:1fr}.monthly-months a,.monthly-months>span{font-size:13px}.monthly-navigation .btn{flex:1}.monthly-filter-section{padding:14px}.monthly-svg{min-width:640px}}

/* v5.23: compact mobile-first monthly overview, same WIIN palette. */
.monthly-compact-head{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:12px 0}.monthly-compact-head h2{margin:0}.monthly-compact-head small{display:block}.monthly-filter-section summary,.monthly-definition summary{cursor:pointer;font-weight:600;min-height:38px;display:flex;align-items:center}.monthly-kpis{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.monthly-definition{margin-bottom:12px}.mg-section summary{cursor:pointer}.mg-kpi small{overflow-wrap:anywhere}.mg-filters input[type=date]{min-width:0;max-width:100%}@media(max-width:800px){.monthly-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.monthly-kpis{grid-template-columns:1fr}.monthly-compact-head{gap:8px}.monthly-compact-head h2{font-size:23px}.monthly-filter-section{padding:12px}.mg-tabs{margin-bottom:8px}.mg-kpi{padding:16px}.mg-kpi strong{font-size:30px}.page-head p{margin:4px 0}.form-grid input,.form-grid select{min-width:0;max-width:100%}}
