:root{color-scheme:light;--surface-1: #fcfcfb;--page-plane: #f9f9f7;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #898781;--gridline: #e1e0d9;--baseline: #c3c2b7;--border: rgba(11, 11, 11, .1);--success-text: #006300;--series-1: #2a78d6;--series-2: #eb6834;--series-3: #1baf7a;--series-4: #eda100;--series-5: #e87ba4;--series-6: #008300;--series-7: #4a3aa7;--series-8: #e34948;--ordinal-1: #86b6ef;--ordinal-2: #5598e7;--ordinal-3: #2a78d6;--ordinal-4: #1c5cab;--ordinal-5: #104281;--status-good: #0ca30c;--status-warning: #fab219;--status-serious: #ec835a;--status-critical: #d03b3b;--accent: var(--series-6);--accent-soft: rgba(0, 131, 0, .07);--accent-ink: #ffffff;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--shadow-sm: 0 1px 2px rgba(11, 11, 11, .06);--shadow-md: 0 4px 16px rgba(11, 11, 11, .08)}:root[data-theme=dark]{color-scheme:dark;--surface-1: #1a1a19;--page-plane: #0d0d0d;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--baseline: #383835;--border: rgba(255, 255, 255, .1);--success-text: #0ca30c;--series-1: #3987e5;--series-2: #d95926;--series-3: #199e70;--series-4: #c98500;--series-5: #d55181;--series-6: #008300;--series-7: #9085e9;--series-8: #e66767;--ordinal-1: #184f95;--ordinal-2: #256abf;--ordinal-3: #3987e5;--ordinal-4: #6da7ec;--ordinal-5: #9ec5f4;--accent-soft: rgba(46, 173, 76, .14);--accent-ink: #ffffff;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:var(--page-plane);color:var(--text-primary);-webkit-font-smoothing:antialiased}a{color:var(--accent)}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary);cursor:pointer;font-weight:500;transition:background .12s ease,border-color .12s ease}.btn:hover{border-color:var(--text-muted)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(1.06)}.btn-danger{color:var(--status-critical);border-color:var(--status-critical);background:transparent}.btn-ghost{border-color:transparent;background:transparent}.btn-microsoft{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:10px 12px;border-radius:2px;border:1px solid #8c8c8c;background:#fff;color:#5e5e5e;font-family:Segoe UI,system-ui,sans-serif;font-size:15px;font-weight:600;line-height:1.2;cursor:pointer;text-decoration:none;box-shadow:var(--shadow-sm);transition:background .12s ease,box-shadow .12s ease}.btn-microsoft:hover{background:#f5f5f5}.btn-microsoft:active{background:#e5e5e5}.input,.select,.textarea{width:100%;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-1);color:var(--text-primary)}.input:focus,.select:focus,.textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;resize:vertical;min-height:120px;line-height:1.5}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:box-shadow .15s ease,border-color .15s ease}a.card:hover,a.card:focus-visible{box-shadow:var(--shadow-md);border-color:var(--accent)}.label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px;display:block}.error-text{color:var(--status-critical);font-size:13px}.muted{color:var(--text-muted)}.scrollbar-thin::-webkit-scrollbar{height:8px;width:8px}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--baseline);border-radius:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0b0b0b80;display:flex;align-items:center;justify-content:center;z-index:50;padding:24px}.modal{background:var(--surface-1);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);width:100%;max-width:720px;max-height:90vh;overflow-y:auto;padding:24px}.table-wrap{overflow:auto;border-radius:var(--radius-sm);border:1px solid var(--border)}table.data-table{border-collapse:collapse;width:100%;table-layout:auto;font-size:12px}table.data-table th,table.data-table td{padding:6px 10px;text-align:left;vertical-align:top;border-bottom:1px solid var(--gridline);white-space:normal}table.data-table th:last-child,table.data-table td:last-child{padding-right:22px}table.data-table td{font-variant-numeric:tabular-nums}table.data-table th{color:var(--text-secondary);font-weight:600;font-size:11px;line-height:1.3;position:sticky;top:0;background:var(--surface-1)}table.data-table tbody tr:nth-child(2n){background:var(--accent-soft)}table.data-table tbody tr:hover{background:var(--page-plane)}@media (max-width: 720px){.app-main{padding:14px!important}.site-header{padding:10px 14px!important}.widget-grid{gap:12px!important}.kpi-value{font-size:24px!important}.modal{padding:16px}.modal-grid-2col{grid-template-columns:1fr!important}table.data-table th,table.data-table td{padding:5px 8px}}@page{size:letter landscape;margin:.4in}body.print-mode .app-main{max-width:976px!important;padding:0!important;margin:0!important}body.print-mode .site-header,body.print-mode .print-hide{display:none!important}.print-only{display:none}body.print-mode .print-only{display:block!important}body.print-mode .card.table-card,body.print-mode .card.table-card .table-wrap{max-height:none!important;overflow:visible!important}body.print-mode table.data-table th{position:static!important}body.print-mode.print-solo .widget-grid>.card{display:none!important}body.print-mode.print-solo .widget-grid>.card.print-solo-target{display:flex!important;grid-column:1 / -1!important}@media print{html,body,body.print-mode *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}body.print-mode .widget-grid>.card{break-inside:avoid;page-break-inside:avoid}body.print-mode .card.table-card{break-inside:auto;page-break-inside:auto}body.print-mode table.data-table thead{display:table-header-group}body.print-mode table.data-table tr{break-inside:avoid;page-break-inside:avoid}body.print-mode .print-only{break-after:avoid;page-break-after:avoid}}
