:root{--bg-body:#ececec;--bg-white:#fff;--bg-section:#f9f9f9;--bg-hover:#eef2f5;--bg-input:#fff;--border-color:#ccc;--border-light:#ddd;--border-hover:#999;--brand-blue:#004b87;--brand-blue-hover:#036;--text-primary:#333;--text-secondary:#555;--text-muted:#777;--text-accent:#004b87;--risk-clean:green;--risk-clean-bg:#e6f2e6;--risk-clean-border:#9c9;--risk-warn:#d2691e;--risk-warn-bg:#fdf5e6;--risk-warn-border:#e8c396;--risk-danger:#b22222;--risk-danger-bg:#fae6e6;--risk-danger-border:#d98c8c;--sev-critical:#b22222;--sev-high:#c40;--sev-medium:#d2691e;--sev-low:#004b87;--font-body:Arial, Helvetica, sans-serif;--font-mono:"Courier New", Courier, monospace;--radius-sm:0px;--radius:0px;--radius-lg:0px;--shadow-sm:none;--shadow:none}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-body);height:100%;color:var(--text-primary);font-family:var(--font-body);font-size:13px;line-height:1.5}#root,.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:var(--brand-blue);border-bottom:2px solid #024;justify-content:space-between;align-items:center;height:60px;padding:0 40px;display:flex}.app-logo{color:#fff;align-items:center;gap:12px;display:flex}.app-logo .logo-icon{object-fit:contain;background:0 0;width:48px;height:48px}.app-logo .logo-text-wrapper{flex-direction:column;display:flex}.app-logo .logo-title{letter-spacing:1px;font-size:24px;font-weight:700}.app-logo .logo-sub{color:#acf;text-transform:uppercase;font-size:13px}.header-status{color:#fff;align-items:center;gap:6px;margin-left:16px;font-size:12px;display:flex}.status-dot{background:#0f0;border-radius:50%;width:8px;height:8px}.app-content{background:var(--bg-white);border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);flex:1;width:100%;max-width:1200px;min-height:calc(100vh - 60px);margin:0 auto;padding:20px 40px}.panel{background:var(--bg-white);border:1px solid var(--border-color);margin-bottom:20px;padding:16px}.panel-title{color:var(--brand-blue);border-bottom:2px solid var(--brand-blue);text-transform:uppercase;margin-bottom:12px;padding-bottom:8px;font-size:14px;font-weight:700}.section-title{color:var(--text-primary);border-bottom:1px solid var(--border-color);margin-bottom:10px;padding-bottom:6px;font-size:13px;font-weight:700}.verdict-banner{border:1px solid var(--border-color);align-items:flex-start;gap:12px;margin-bottom:20px;padding:12px 16px;display:flex}.verdict-banner.clean{background:var(--risk-clean-bg);border-color:var(--risk-clean-border)}.verdict-banner.suspicious{background:var(--risk-warn-bg);border-color:var(--risk-warn-border)}.verdict-banner.tampered{background:var(--risk-danger-bg);border-color:var(--risk-danger-border)}.verdict-content{flex:1}.verdict-label{margin-bottom:4px;font-size:14px;font-weight:700}.verdict-banner.clean .verdict-label{color:var(--risk-clean)}.verdict-banner.suspicious .verdict-label{color:var(--risk-warn)}.verdict-banner.tampered .verdict-label{color:var(--risk-danger)}.verdict-summary{color:var(--text-primary);font-size:13px}.risk-gauge-container{align-items:center;gap:20px;display:flex}.risk-score-big{font-size:36px;font-weight:700;line-height:1}.risk-score-big.clean{color:var(--risk-clean)}.risk-score-big.suspicious{color:var(--risk-warn)}.risk-score-big.tampered{color:var(--risk-danger)}.risk-bar-wrapper{flex:1}.risk-bar-track{background:var(--border-light);border:1px solid var(--border-color);height:12px;margin-bottom:4px}.risk-bar-fill{height:100%}.risk-bar-fill.clean{background:var(--risk-clean)}.risk-bar-fill.suspicious{background:var(--risk-warn)}.risk-bar-fill.tampered{background:var(--risk-danger)}.stats-grid{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0;margin-top:16px;display:grid}.stat-card{background:var(--bg-section);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);text-align:center;padding:10px}.stat-value{margin-bottom:2px;font-size:18px;font-weight:700}.stat-label{color:var(--text-secondary);font-size:11px}.stat-card.critical .stat-value{color:var(--sev-critical)}.stat-card.high .stat-value{color:var(--sev-high)}.stat-card.medium .stat-value{color:var(--sev-medium)}.stat-card.low .stat-value{color:var(--sev-low)}.stat-card.neutral .stat-value{color:var(--brand-blue)}.flag-list{border:1px solid var(--border-color);border-bottom:none;flex-direction:column;gap:0;display:flex}.flag-item{background:var(--bg-white);border-bottom:1px solid var(--border-color);align-items:flex-start;gap:12px;padding:10px 12px;display:flex}.flag-badge{text-align:center;border:1px solid;flex-shrink:0;min-width:70px;padding:2px 4px;font-size:10px;font-weight:700}.flag-badge.critical{background:var(--risk-danger-bg);color:var(--sev-critical);border-color:var(--sev-critical)}.flag-badge.high{color:var(--sev-high);border-color:var(--sev-high);background:#fff3e6}.flag-badge.medium{background:var(--risk-warn-bg);color:var(--sev-medium);border-color:var(--sev-medium)}.flag-badge.low{color:var(--sev-low);border-color:var(--sev-low);background:#e6f0ff}.flag-content{color:var(--text-primary);flex:1;font-size:12px}.flag-meta{color:var(--text-muted);margin-top:4px;font-size:11px}.data-table{border-collapse:collapse;border:1px solid var(--border-color);width:100%;font-size:12px}.data-table thead tr{background:var(--bg-section);border-bottom:1px solid var(--border-color)}.data-table th{color:var(--text-primary);text-align:left;border-right:1px solid var(--border-color);padding:8px 10px;font-weight:700}.data-table td{border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);color:var(--text-primary);vertical-align:top;padding:8px 10px}.data-table tbody tr:nth-child(2n){background:#fdfdfd}.data-table tbody tr:hover td{background:var(--bg-hover)}.btn{border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-body);cursor:pointer;text-align:center;background:#efefef;padding:6px 12px;font-size:12px;text-decoration:none;display:inline-block}.btn:hover{background:#e0e0e0;border-color:#bbb}.btn:active{background:#d0d0d0}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand-blue);color:#fff;border-color:#036;font-weight:700}.btn-primary:hover{background:var(--brand-blue-hover);border-color:#024}.btn-danger{background:var(--risk-danger);color:#fff;border-color:#8b0000}.btn-danger:hover{background:#8b0000}.btn-sm{padding:4px 8px;font-size:11px}.alert{border:1px solid;margin-bottom:16px;padding:10px 12px;font-size:13px}.alert-success{background:var(--risk-clean-bg);border-color:var(--risk-clean-border);color:var(--risk-clean)}.alert-warning{background:var(--risk-warn-bg);border-color:var(--risk-warn-border);color:var(--risk-warn)}.alert-danger{background:var(--risk-danger-bg);border-color:var(--risk-danger-border);color:var(--risk-danger)}.badge{border:1px solid;padding:2px 6px;font-size:11px;font-weight:700;display:inline-block}.badge-clean{background:var(--risk-clean-bg);color:var(--risk-clean);border-color:var(--risk-clean-border)}.badge-warn{background:var(--risk-warn-bg);color:var(--risk-warn);border-color:var(--risk-warn-border)}.badge-danger{background:var(--risk-danger-bg);color:var(--risk-danger);border-color:var(--risk-danger-border)}.badge-info{color:var(--brand-blue);background:#e6f0ff;border-color:#b3d1ff}.sev-critical{color:var(--sev-critical);font-weight:700}.sev-high{color:var(--sev-high);font-weight:700}.sev-medium{color:var(--sev-medium);font-weight:700}.sev-low{color:var(--sev-low);font-weight:700}.status-pass{color:var(--risk-clean);font-weight:700}.status-warn{color:var(--risk-warn);font-weight:700}.status-fail{color:var(--risk-danger);font-weight:700}.spinner{border:3px solid var(--border-color);border-top-color:var(--brand-blue);border-radius:50%;width:20px;height:20px;margin:0 auto;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.progress-container{border:1px solid var(--border-color);background:var(--bg-section);margin-bottom:20px;padding:16px}.progress-track{background:var(--border-light);border:1px solid var(--border-color);height:14px;margin:8px 0}.progress-fill{background:var(--brand-blue);height:100%;transition:width .2s}.dropzone{border:1px dashed var(--brand-blue);text-align:center;cursor:pointer;background:#f0f8ff;margin-bottom:16px;padding:30px 20px}.dropzone:hover,.dropzone.active{background:#e6f2ff;border-style:solid}.dropzone-icon{color:var(--brand-blue);margin-bottom:8px;font-size:24px}.dropzone-title{color:var(--brand-blue);margin-bottom:4px;font-size:14px;font-weight:700}.dropzone-hint{color:var(--text-secondary);font-size:12px}.packet-grid{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:0;display:grid}.packet-card{background:var(--bg-white);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:12px}.packet-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.packet-card-name{color:var(--brand-blue);font-size:13px;font-weight:700}.packet-card-desc{color:var(--text-primary);margin-bottom:12px;font-size:12px}.packet-card-footer{justify-content:space-between;align-items:center;display:flex}.doc-accordion{border:1px solid var(--border-color);margin-bottom:8px}.doc-accordion-header{cursor:pointer;background:var(--bg-section);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;padding:10px 12px;font-weight:700;display:flex}.doc-accordion-header:hover{background:var(--bg-hover)}.doc-accordion-body{background:var(--bg-white);padding:12px}.field-grid{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:0;display:grid}.field-chip{background:var(--bg-white);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:8px 10px}.field-chip-label{color:var(--text-secondary);margin-bottom:2px;font-size:11px}.field-chip-value{color:var(--text-primary);font-size:13px;font-weight:700}.field-chip-conf{color:var(--text-muted);margin-top:2px;font-size:10px}.score-breakdown{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:0;display:grid}.score-item{background:var(--bg-white);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:8px 10px}.score-item-label{color:var(--text-secondary);margin-bottom:4px;font-size:11px;font-weight:700}.score-item-bar{background:var(--border-light);border:1px solid var(--border-color);height:6px;margin-bottom:4px}.score-item-fill{height:100%}.score-item-fill.low{background:var(--risk-clean)}.score-item-fill.mid{background:var(--risk-warn)}.score-item-fill.high{background:var(--risk-danger)}.score-item-num{font-size:12px;font-weight:700}.contradiction-card{background:var(--bg-white);border:1px solid var(--border-color);border-left:4px solid;margin-bottom:8px;padding:12px}.contradiction-card.critical{border-left-color:var(--sev-critical)}.contradiction-card.high{border-left-color:var(--sev-high)}.contradiction-card.medium{border-left-color:var(--sev-medium)}.contradiction-card.low{border-left-color:var(--sev-low)}.contradiction-header{align-items:center;gap:8px;margin-bottom:6px;display:flex}.contradiction-desc{color:var(--text-primary);margin-bottom:6px;font-size:13px}.contradiction-values{color:var(--text-secondary);gap:16px;font-size:12px;display:flex}.contradiction-values .val-expected{color:var(--risk-clean);font-weight:700}.contradiction-values .val-actual{color:var(--risk-danger);font-weight:700}.tax-comparison{border-top:1px solid var(--border-color);border-left:1px solid var(--border-color);grid-template-columns:1fr 1fr;gap:0;margin-bottom:16px;display:grid}.tax-col{background:var(--bg-white);border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:0}.tax-col-title{background:var(--bg-section);color:var(--brand-blue);border-bottom:1px solid var(--border-color);padding:8px 12px;font-size:12px;font-weight:700}.tax-row{border-bottom:1px solid var(--border-light);justify-content:space-between;padding:6px 12px;display:flex}.tax-row:last-child{border-bottom:none}.tax-row .key{color:var(--text-primary)}.tax-row .val{font-weight:700}.tax-row .val.match{color:var(--risk-clean)}.tax-row .val.mismatch{color:var(--risk-danger)}.engine-header{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;margin-bottom:12px;padding-bottom:8px;display:flex}.engine-icon{width:32px;height:32px;color:var(--brand-blue);background:#e6f0ff;border:1px solid #b3d1ff;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.engine-title{color:var(--brand-blue);font-size:14px;font-weight:700}.engine-subtitle{color:var(--text-secondary);font-size:11px}.mono{font-family:var(--font-mono)}.text-sm{font-size:12px}.text-xs{font-size:11px}.text-muted{color:var(--text-secondary)}.text-accent{color:var(--text-accent)}.two-col{grid-template-columns:2fr 1fr;align-items:start;gap:20px;display:grid}@media (width<=900px){.two-col{grid-template-columns:1fr}}@media print{.no-print,.hide-on-print{display:none!important}.print-only,.print-always{display:block!important}body{color:#000;background:#fff}.app-content{border:none;padding:0}.panel{page-break-inside:avoid;border:1px solid #000;margin-bottom:15px}}@media screen{.print-only,.hide-on-screen{display:none!important}}
