:root{--color-primary: 10 132 255;--color-primary-hover: 60 159 255;--color-background: 17 24 39;--color-background-secondary: 31 41 55;--color-background-card: 31 41 55;--color-background-hover: 55 65 81;--color-background-disabled: 55 65 81;--color-border: 75 85 99;--color-text-primary: 249 250 251;--color-text-secondary: 156 163 175;--color-text-disabled: 107 114 128}.light{--color-primary: 10 132 255;--color-primary-hover: 0 110 229;--color-background: 249 250 251;--color-background-secondary: 255 255 255;--color-background-card: 255 255 255;--color-background-hover: 243 244 246;--color-background-disabled: 229 231 235;--color-border: 229 231 235;--color-text-primary: 17 24 39;--color-text-secondary: 107 114 128;--color-text-disabled: 156 163 175}body{font-family:Inter,sans-serif;background-color:#111827;color:#fff;margin:0}#root{height:100vh;width:100vw}.initial-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;width:100%;font-family:Inter,sans-serif}.spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#0a84ff;animation:spin 1s ease-in-out infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#4b5563;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#6b7280}.light ::-webkit-scrollbar-thumb{background:#d1d5db}.light ::-webkit-scrollbar-thumb:hover{background:#9ca3af}.printable-report-root{display:none}@media print{html,body{background:#fff!important}#root{display:none!important}.printable-report-root{display:block!important;color:#111;background:#fff;font-family:Inter,Arial,sans-serif;font-size:12px;line-height:1.45}@page{size:A4;margin:16mm 16mm 20mm}.printable-report-root p{margin:4px 0}.report-header{border-bottom:2px solid #111;padding-bottom:8px;margin-bottom:14px}.report-brand{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#555}.report-title{font-size:20px;margin:4px 0 8px;line-height:1.2}.report-context{display:flex;flex-wrap:wrap;gap:4px 18px;font-size:11px;color:#333}.report-section{break-inside:avoid;page-break-inside:avoid;margin-bottom:16px}.report-h2{font-size:14px;border-bottom:1px solid #ddd;padding-bottom:3px;margin:0 0 8px}.report-placeholder{color:#888;font-style:italic}.report-narrative{break-before:page;page-break-before:always}.report-narrative-title{font-size:17px;color:#0b1f3a;border-bottom:2px solid #0b1f3a;padding-bottom:4px;margin:0 0 10px}.report-rationale{color:#333;font-style:italic}.report-metrics{display:flex;gap:10px}.metric{flex:1;border:1px solid #ccc;border-radius:6px;padding:8px 10px;text-align:center}.metric-value{display:block;font-size:22px;font-weight:700}.metric-label{display:block;font-size:10px;color:#555;text-transform:uppercase;letter-spacing:.04em}.report-table{width:100%;border-collapse:collapse;font-size:11px}.report-table th,.report-table td{border:1px solid #ccc;padding:5px 8px;text-align:left;vertical-align:top}.report-table th{background:#f3f3f3}.report-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.report-badge{border:1px solid #bbb;border-radius:999px;padding:2px 10px;font-size:10px;font-weight:600}.report-bars{margin:6px 0}.report-bar{display:flex;align-items:center;gap:8px;margin:3px 0}.bar-label{width:80px;font-size:11px}.score-bar-track{flex:1;display:inline-block;background:#eee;height:8px;border-radius:4px;overflow:hidden}.score-bar-fill{display:block;background:#333;height:8px}.bar-score{width:42px;font-size:11px;text-align:right}.report-list,.report-sources{margin:4px 0;padding-left:18px}.report-list li,.report-sources li{margin:3px 0;break-inside:avoid}.source-title{display:block;font-weight:600}.source-uri{color:#666;font-size:10px;word-break:break-all}.report-sparkline{margin-top:6px}.tlp-red{color:#b00020;font-weight:700}.tlp-amber{color:#9a6700;font-weight:700}.tlp-clear{color:#1a7f37;font-weight:700}.report-footer{margin-top:18px;border-top:1px solid #ddd;padding-top:6px;font-size:9px;color:#666}a{color:#111;text-decoration:none}}
