:root{
  --bg:#07111e;--panel:#101d31;--panel2:#13243b;--black:#020507;--stroke:#2a3f5b;--text:#edf4ff;--muted:#9fb2cb;--blue:#5b9cff;--blue2:#235ee8;--green:#12c86f;--green2:#1f8e58;--danger:#ef4444;--card-radius:18px;--shadow:0 18px 44px rgba(0,0,0,.28)
}
*{box-sizing:border-box} body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top right,#143133 0,#081321 38%,#050912 100%);color:var(--text)}button,input{font:inherit}button{cursor:pointer}.hidden{display:none!important}
input[type="file"].hidden{display:block!important;position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;opacity:0!important;overflow:hidden!important}.workspace{max-width:1780px;margin:0 auto;padding:20px 24px 40px}.hero{margin-bottom:14px}.eyebrow{display:inline-flex;padding:6px 16px;border:1px solid rgba(91,156,255,.35);background:rgba(91,156,255,.12);border-radius:999px;color:#d9e7ff;text-transform:uppercase;letter-spacing:.16em;font-weight:800;font-size:12px}.hero h1{margin:14px 0 6px;font-size:clamp(34px,4vw,52px);line-height:1;letter-spacing:-.045em}.hero p{margin:0;color:#b7c7dc;font-size:16px}.workflow-card,.panel{background:linear-gradient(145deg,rgba(19,37,61,.96),rgba(10,22,38,.98));border:1px solid var(--stroke);border-radius:var(--card-radius);box-shadow:var(--shadow)}.workflow-card{padding:24px 28px 24px;margin:18px 0 22px}.stepper{display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:0;padding:0 40px 22px}.step{appearance:none;border:0;background:transparent;color:var(--text);display:grid;justify-items:center;gap:10px;min-width:190px}.step-circle{position:relative;width:92px;height:92px;display:grid;place-items:center;border-radius:50%;background:#111d2d;border:4px solid #38556f;color:#7d899a;font-weight:900;letter-spacing:.04em;font-size:16px}.step.active .step-circle{color:#fff;border-color:var(--blue);box-shadow:0 0 0 8px rgba(91,156,255,.12),0 8px 24px rgba(91,156,255,.22)}.step.complete .step-circle{background:#0b2f20;border-color:var(--green);color:#fff;box-shadow:0 0 0 8px rgba(18,200,111,.10)}.step.complete .step-check{display:grid}.step-check{display:none;position:absolute;right:-6px;top:-6px;width:28px;height:28px;place-items:center;border-radius:50%;background:var(--green);color:#00150a;font-weight:1000}.step.locked{opacity:.65}.step-caption{color:#d7e2ef;font-size:15px;font-weight:800;white-space:nowrap}.info-dot{display:inline-grid;place-items:center;width:20px;height:20px;border:1px solid rgba(180,197,218,.35);border-radius:50%;color:#aab8ca;font-size:12px;margin-left:4px}.step-line{border-top:3px dashed rgba(178,192,213,.34);height:1px;align-self:center;margin:-28px -48px 0}.step.complete+.step-line{border-color:rgba(18,200,111,.55)}
.action-strip{display:flex;align-items:center;gap:18px;background:var(--black);border:1px solid rgba(255,255,255,.08);padding:16px 20px;min-height:92px}.strip-btn{background:transparent;color:#f6f8fb;border:2px solid #ccd2da;border-radius:18px;min-height:58px;padding:0 26px;font-weight:850;font-size:16px}.strip-btn:hover,.strip-btn.active{border-color:var(--green);box-shadow:inset 0 0 0 1px rgba(18,200,111,.14)}.strip-btn:disabled{opacity:.45;cursor:not-allowed}.strip-btn.wide{flex:1}.or-label{font-size:17px;font-weight:900}.upload-menu-wrap{position:relative}.upload-mode-menu{position:absolute;left:0;top:calc(100% + 8px);width:260px;z-index:10;background:#09111d;border:1px solid var(--stroke);border-radius:14px;padding:8px;box-shadow:var(--shadow)}.upload-mode-menu button{display:block;width:100%;text-align:left;background:transparent;border:0;color:var(--text);padding:12px;border-radius:10px;font-weight:800}.upload-mode-menu button:hover{background:#152942}.chevron{font-size:11px;margin-left:4px}.stage-section{display:none}.stage-section.active{display:block}.panel{padding:24px;margin-bottom:22px}.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.panel-kicker{color:#8ca0ba;text-transform:uppercase;letter-spacing:.16em;font-weight:900;font-size:12px;margin-bottom:8px}.panel h2{margin:0 0 12px;font-size:22px;letter-spacing:-.02em}.selected-panel{min-height:150px}.upload-count-chip{padding:10px 18px;border:1px solid rgba(91,156,255,.35);background:rgba(91,156,255,.12);border-radius:999px;color:#d9e7ff;font-weight:800}.file-list{margin-top:14px;border:1px solid var(--stroke);border-radius:14px;background:#06101d;max-height:180px;overflow:auto;padding:8px}.file-list.empty{padding:18px;color:#aebdd2}.file-row{display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-bottom:1px solid rgba(184,200,222,.1);font-size:14px}.file-row:last-child{border-bottom:0}.file-index{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#173c74;color:#fff;font-weight:900}.file-size{color:#b8c7db;font-weight:800}.submit-summary{margin-top:14px;padding:14px 16px;border:1px solid rgba(18,200,111,.28);background:rgba(18,200,111,.08);border-radius:14px;color:#baf7d5}.submit-response-card{margin-top:14px;border:1px solid rgba(18,200,111,.32);background:rgba(8,50,61,.5);border-radius:14px;padding:14px}pre{margin:0;white-space:pre-wrap;color:#d9f3ff;font-size:13px;max-height:210px;overflow:auto}.small-btn{border:1px solid var(--stroke);border-radius:999px;background:#1a2b43;color:#d8e6f6;padding:9px 14px;font-weight:800}.monitor-grid-top{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:18px;margin-top:18px}.small-label{color:#8ca0ba;text-transform:uppercase;letter-spacing:.12em;font-size:12px;margin-bottom:6px}.status-pill{display:inline-block;padding:7px 12px;border-radius:999px;background:rgba(91,156,255,.18);color:#cfe1ff;font-weight:900}.status-pill.completed{background:rgba(18,200,111,.18);color:#8af0bd}.status-pill.failed,.status-pill.error{background:rgba(239,68,68,.18);color:#ffb4b4}.progress-row{margin:24px 0 18px}.progress-label{display:flex;justify-content:space-between;font-size:15px;margin-bottom:8px}.progress-bar{height:13px;background:rgba(225,233,244,.12);border-radius:999px;overflow:hidden}.progress-fill{height:100%;width:0%;background:linear-gradient(90deg,#2b66ee,#64a3ff)}.progress-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.metric-card{background:rgba(255,255,255,.035);border:1px solid var(--stroke);border-radius:14px;padding:14px}.metric-card span{display:block;color:#9fb1c8;margin-bottom:8px}.metric-card strong{font-size:18px}.current-step-box{margin-top:18px;padding-top:18px;border-top:1px solid var(--stroke);font-size:16px;line-height:1.45}.step-label{margin-top:16px}.grid.two-col{display:grid;grid-template-columns:minmax(360px,1fr) minmax(420px,1.4fr);gap:20px}.insight-panel{display:none}.insight-panel.active{display:block}.summary-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.summary-card{background:rgba(255,255,255,.04);border:1px solid var(--stroke);border-radius:14px;padding:14px}.summary-card span{display:block;color:#8da0ba;text-transform:uppercase;letter-spacing:.10em;font-size:11px;font-weight:900;margin-bottom:6px}.summary-card strong{font-size:17px;word-break:break-word}.text-block{font-size:14px;line-height:1.5}.muted-text{color:#bdcbe0}.hint{color:#bdcbe0;font-size:14px}.downloads-panel{display:flex;justify-content:space-between;gap:20px;align-items:center}.download-actions{display:flex;gap:12px;flex-wrap:wrap}.download-actions button{border:0;border-radius:999px;background:linear-gradient(90deg,#235ee8,#3d7dff);color:#fff;padding:13px 22px;font-weight:900}.download-actions button:disabled{opacity:.45;cursor:not-allowed}.result-links{margin-top:14px;color:#bcd0e8}#calendar{min-height:650px}.fc{color:#eaf2ff}.fc .fc-toolbar-title{font-size:20px}.fc .fc-button{background:#1a2b43!important;border-color:rgba(151,173,203,.3)!important;color:#eaf2ff!important}.fc-theme-standard td,.fc-theme-standard th,.fc-theme-standard .fc-scrollgrid{border-color:rgba(184,200,222,.18)}.fc .fc-daygrid-day-number,.fc .fc-col-header-cell-cushion{color:#dfe8f6}.event-card{border:1px solid rgba(91,156,255,.85);background:rgba(12,27,47,.95);color:#e8f2ff;border-radius:7px;padding:4px 5px;font-size:11px;cursor:pointer}.event-card:hover{outline:2px solid var(--green)}.event-type{font-weight:900;color:#7fb2ff}.event-facility{color:#68e3ab;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-person{color:#fbbf7a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}table{width:100%;border-collapse:collapse;background:rgba(8,17,31,.55);border-radius:14px;overflow:hidden}th,td{border-bottom:1px solid rgba(184,200,222,.14);padding:11px 12px;text-align:left;vertical-align:top;color:#dce7f6;font-size:13px}th{background:#101d30;color:#9fb1c8;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.table-wrap{overflow:auto;max-height:600px;border:1px solid var(--stroke);border-radius:14px}.provider-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.provider-card{border:1px solid var(--stroke);border-radius:14px;background:rgba(255,255,255,.035);padding:14px}.provider-card strong{display:block;font-size:16px;margin-bottom:6px}.map-placeholder{height:420px;border-radius:18px;background:#e9eef6;color:#46566d;display:grid;place-items:center;text-align:center;padding:22px}.event-drawer{position:fixed;right:24px;top:24px;width:min(480px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow:auto;background:#0b1728;border:1px solid var(--stroke);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.42);z-index:100;padding:18px}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--stroke);padding-bottom:10px;margin-bottom:12px}.drawer-head h3{margin:0}.drawer-head button{background:transparent;border:0;color:#fff;font-size:28px}.detail-row{padding:10px 0;border-bottom:1px solid rgba(184,200,222,.12)}.detail-row span{display:block;color:#8da0ba;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;margin-bottom:4px}.toast{position:fixed;left:50%;bottom:28px;transform:translateX(-50%);background:#0d1b2d;border:1px solid var(--stroke);border-radius:999px;color:#fff;padding:12px 18px;z-index:200;box-shadow:var(--shadow)}
@media(max-width:1000px){.stepper{grid-template-columns:1fr;gap:14px}.step-line{display:none}.action-strip,.downloads-panel{flex-direction:column;align-items:stretch}.grid.two-col,.monitor-grid-top,.progress-grid{grid-template-columns:1fr}.strip-btn.wide{width:100%}.workspace{padding:16px}.workflow-card{padding:20px}.hero h1{font-size:34px}}

/* V17.1 claimant profile detail table */
.profile-divider{height:1px;background:rgba(184,200,222,.16);margin:16px 0 14px}
.profile-heading{margin:0 0 10px;font-size:15px;letter-spacing:-.01em;color:#eaf2ff}
.profile-table{border:1px solid var(--stroke);border-radius:14px;overflow:hidden;background:rgba(7,17,30,.58)}
.profile-table table{border:0;border-radius:0;background:transparent}
.profile-table th,.profile-table td{font-size:12.5px;padding:9px 11px;border-bottom:1px solid rgba(184,200,222,.12)}
.profile-table th{width:38%;color:#9fb1c8;background:rgba(16,29,48,.75);text-transform:none;letter-spacing:0;font-weight:800}
.profile-table td{color:#e8f2ff;word-break:break-word}
.profile-table tr:last-child th,.profile-table tr:last-child td{border-bottom:0}

/* V17.2 DOI timeline, billing total, and map fallback polish */
.map-fallback{min-height:320px}
.map-info-box{border:1px solid rgba(91,156,255,.32);background:rgba(91,156,255,.09);border-radius:14px;padding:14px 16px;margin-bottom:14px;color:#d9e7ff;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.map-info-box span{color:#aec2dc;font-size:13px}
.provider-location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.provider-location-card{border:1px solid var(--stroke);background:rgba(255,255,255,.035);border-radius:14px;padding:14px;min-height:120px}
.provider-location-card strong{display:block;font-size:15px;margin-bottom:8px;color:#f1f6ff}
.location-address{color:#b9c9dd;font-size:13px;line-height:1.4;min-height:34px}
.location-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.location-meta span{font-size:11px;border:1px solid rgba(184,200,222,.16);background:rgba(255,255,255,.04);border-radius:999px;padding:5px 8px;color:#d8e6f6}
.summary-cards{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important}


/* V17.3 interactive extracted-location map */
.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;border:1px solid rgba(91,156,255,.28);background:rgba(91,156,255,.08);border-radius:14px;padding:12px 14px;margin-bottom:12px;color:#d9e7ff}
.map-toolbar span{display:block;color:#aec2dc;font-size:13px;margin-top:2px}
.provider-map-canvas{height:520px;min-height:420px;border:1px solid var(--stroke);border-radius:18px;overflow:hidden;background:#dfe7f2;margin-bottom:14px}
.provider-map-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}
.provider-map-row{border:1px solid var(--stroke);background:rgba(255,255,255,.035);border-radius:14px;color:#dce7f6;text-align:left;padding:12px;display:grid;grid-template-columns:32px 1fr auto;gap:10px;align-items:center;cursor:pointer}
.provider-map-row:hover{border-color:var(--green);background:rgba(18,200,111,.07)}
.map-pin-number{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#235ee8;color:#fff;font-weight:900;font-size:12px}
.provider-map-row-main strong{display:block;font-size:13px;margin-bottom:3px;color:#f5f9ff}
.provider-map-row-main span{display:block;font-size:12px;color:#aebdd2;line-height:1.35}
.provider-map-row-meta{font-size:12px;color:#8ca0ba;white-space:nowrap}
.map-popup{color:#132033;font-size:13px;line-height:1.35;min-width:180px}
.leaflet-container{font-family:inherit}
.leaflet-popup-content-wrapper{border-radius:12px}

/* V17.5 Google Maps provider map fix */
.provider-map-canvas{height:560px;min-height:460px;background:#dfe7f2;position:relative}
.provider-map-canvas img{max-width:none!important}
.gm-style .map-popup{color:#172033;font-size:13px;line-height:1.35;min-width:190px}

/* V17.6 robust map display */
.map-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;color:#dfe8f6}
.map-toolbar strong{display:block;font-size:16px;margin-bottom:3px}
.map-toolbar span{display:block;color:#9fb1c8;font-size:13px}
.provider-map-iframe{width:100%;height:100%;min-height:460px;border:0;border-radius:18px;background:#e9eef6}
.map-embed-note{position:relative;margin-top:-38px;margin-left:12px;display:inline-block;padding:8px 12px;border-radius:999px;background:rgba(8,17,31,.86);color:#eaf2ff;font-size:12px;border:1px solid rgba(255,255,255,.18)}
.map-placeholder{display:flex!important;flex-direction:column;gap:8px}


/* V17.7 reference-map parity */
#map { width:100%; height:420px; min-height:420px; border-radius:16px; border:1px solid rgba(184,200,222,.22); margin:12px 0; background:#e9eef6; overflow:hidden; }
#map img { max-width:none!important; }
.map-status { border:1px solid rgba(91,156,255,.28); background:rgba(91,156,255,.08); border-radius:14px; padding:10px 12px; color:#d9e7ff; margin-bottom:10px; font-size:13px; }
.map-legend { font-size:12px; display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin:8px 0 12px; color:#dfe8f6; }
.legend-title { font-weight:800; margin-right:4px; }
.legend-item { padding:4px 8px; border-radius:999px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04); }
.legend-home{ color:#86efac; } .legend-consultation{ color:#93c5fd; } .legend-treatment{ color:#86efac; } .legend-pharmacy{ color:#fca5a5; } .legend-billing{ color:#fcd34d; } .legend-other{ color:#cbd5e1; }
.map-location-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:10px; margin-top:10px; }
.map-empty { color:#cbd5e1; border:1px solid rgba(184,200,222,.2); border-radius:14px; padding:14px; background:rgba(255,255,255,.035); }
.provider-map-iframe { width:100%; height:100%; min-height:420px; border:0; border-radius:16px; background:#e9eef6; }
.map-popup { color:#132033; font-size:13px; line-height:1.35; max-width:260px; }
.map-panel.fullscreen { position:fixed; inset:18px; z-index:500; overflow:auto; background:#0b1728; }
.map-panel.fullscreen #map { height:calc(100vh - 220px); }


/* V17.8 map type selector */
.map-type-toggle{display:inline-flex;gap:6px;margin:0 0 10px 0;padding:5px;border:1px solid rgba(184,200,222,.22);border-radius:999px;background:rgba(8,17,31,.72)}
.map-type-toggle button{border:0;border-radius:999px;background:transparent;color:#cbd5e1;font-size:12px;font-weight:900;padding:8px 13px;cursor:pointer;letter-spacing:.02em}
.map-type-toggle button.active{background:linear-gradient(90deg,#16a34a,#22c55e);color:#06101d;box-shadow:0 0 0 1px rgba(34,197,94,.35)}
.map-type-toggle button:hover{color:#fff;background:rgba(91,156,255,.18)}
.map-type-toggle button.active:hover{color:#06101d;background:linear-gradient(90deg,#16a34a,#22c55e)}


/* V18.1 Legitimacy Review */
.risk-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-radius:14px;background:#eef2ff;border:1px solid #c7d2fe;margin-bottom:14px}
.risk-banner span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#475569;font-weight:700}.risk-banner strong{font-size:22px}.risk-low strong{color:#16a34a}.risk-moderate strong{color:#d97706}.risk-high strong,.risk-very-high strong{color:#dc2626}
.legit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.legit-card{border:1px solid #e2e8f0;border-left:5px solid #94a3b8;border-radius:12px;background:#fff;padding:12px;margin:10px 0;box-shadow:0 1px 2px rgba(15,23,42,.04)}.legit-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px}.legit-head strong{color:#0f172a}.legit-provider{font-weight:700;color:#334155;margin-bottom:8px}.severity-critical{border-left-color:#b91c1c}.severity-high{border-left-color:#dc2626}.severity-medium{border-left-color:#d97706}.severity-low{border-left-color:#2563eb}.legit-support{border-left-color:#16a34a}.action-list{margin:8px 0 0 20px}.action-list li{margin-bottom:6px}


/* V18.2 report metadata and legitimacy cards */
.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.mini-report-card{background:rgba(15,28,49,.86);border:1px solid rgba(148,163,184,.22);border-radius:16px;padding:18px}.mini-report-card h3{margin:4px 0 14px;font-size:18px}.compact-review p{color:#dbeafe;line-height:1.45}.risk-line{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(148,163,184,.18);padding:8px 0}.risk-line span{color:#93a9c7}.legitimacy-flag{margin-top:10px;padding:10px;border-radius:12px;background:rgba(2,6,23,.38);border:1px solid rgba(34,197,94,.18)}.legitimacy-flag strong{display:block;color:#e5f3ff;margin-bottom:5px}.compact-metadata .profile-row{grid-template-columns:minmax(180px,1fr) minmax(120px,1fr)}.report-actions-list{margin-top:12px}.report-actions-list ul{margin:8px 0 0 20px;color:#dbeafe}.strip-btn[data-insight-tab="legitimacy"]{border-color:rgba(34,197,94,.75)}
@media(max-width:900px){.report-grid{grid-template-columns:1fr}}

/* V18.3 interaction/status fixes */
.clickable-row{cursor:pointer}.clickable-row:hover{background:rgba(91,156,255,.10)}
.clickable-card{cursor:pointer;text-align:left;font-family:inherit;color:inherit}.clickable-card:hover{border-color:var(--green);box-shadow:0 0 0 1px rgba(34,197,94,.2),0 10px 24px rgba(0,0,0,.22)}
.drawer-subtitle{margin:16px 0 8px;color:#eaf2ff;font-size:14px}.drawer-list{margin:8px 0 0 18px;color:#dce7f6}.drawer-list li{margin:6px 0;line-height:1.35}.mini-table{overflow:auto;border:1px solid rgba(184,200,222,.16);border-radius:12px}.mini-table table{width:100%;border-collapse:collapse}.mini-table th,.mini-table td{padding:8px 10px;border-bottom:1px solid rgba(184,200,222,.12);font-size:12px}.mini-table th{color:#a8c2e5;text-align:left;background:rgba(255,255,255,.035)}
.legit-card{background:rgba(15,28,49,.88)!important;border-color:rgba(148,163,184,.22)!important;color:#eaf2ff!important}.legit-head strong,.legit-provider{color:#f8fbff!important}.legit-card p{color:#dbeafe}.risk-banner{background:rgba(91,156,255,.09)!important;border-color:rgba(91,156,255,.28)!important}.risk-banner span{color:#a8c2e5!important}


/* V19.1 report cleanup, font reduction, map defaults */
html{font-size:15px;}
body{font-size:15px;}
.hero h1{font-size:clamp(34px,4vw,56px)!important;}
.hero p{font-size:18px!important;}
.panel h2{font-size:22px!important;}
.strip-btn{font-size:17px!important;padding:13px 24px!important;}
.step-caption{font-size:15px!important;}
.step-name{font-size:17px!important;}
.summary-card strong,.metric-card strong{font-size:20px!important;}
.downloads-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.downloads-panel .hint{margin-bottom:0;}
.download-actions{display:flex;gap:12px;flex-wrap:wrap;}
.result-links{display:none!important;}
.report-grid,.mini-report-card{display:none!important;}
.map-type-toggle #map-type-roadmap.active{background:linear-gradient(90deg,#16a34a,#22c55e);color:#06101d;}
@media(max-width:900px){.hero h1{font-size:34px!important}.strip-btn{font-size:16px!important}}

/* V19.3 provider/map cleanup and enhanced legitimacy UI */
.provider-cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:stretch}
.provider-card{min-height:128px;padding:13px 14px;overflow:hidden}
.provider-card strong{font-size:14px!important;line-height:1.24!important;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word;margin-bottom:8px}
.provider-card div{font-size:13px;line-height:1.35;color:#c7d7ec}
.provider-map-row-main strong{font-size:12.5px!important;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.provider-map-row-main span{font-size:11.5px!important}.provider-map-row-meta{font-size:11.5px!important}
.legit-summary{margin-bottom:16px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.035);border-radius:14px;padding:13px 15px}
.legit-verdict-grid,.critical-matrix-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px;margin:10px 0 18px}
.legit-verdict-card,.matrix-card,.verification-row{border:1px solid rgba(148,163,184,.22);background:rgba(15,28,49,.88);border-left:5px solid #64748b;border-radius:14px;padding:12px 14px;color:#eaf2ff}
.legit-verdict-card.risk-critical,.legit-verdict-card.risk-very-high,.legit-verdict-card.risk-high{border-left-color:#dc2626}.legit-verdict-card.risk-moderate{border-left-color:#d97706}.legit-verdict-card.risk-low{border-left-color:#16a34a}
.verdict-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;margin-bottom:6px}.verdict-top strong{font-size:14px;line-height:1.25}.verdict-top span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#cbd5e1;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:3px 7px;white-space:nowrap}.verdict-label{font-weight:900;color:#f8fbff;margin:4px 0 8px}.legit-verdict-card p,.matrix-card p,.verification-row p{font-size:12.5px;line-height:1.43;color:#dbeafe;margin:7px 0 0}.page-ref{color:#9fb1c8!important;font-size:12px!important}.matrix-category{font-size:11px;text-transform:uppercase;letter-spacing:.10em;color:#a8c2e5;font-weight:900;margin-bottom:6px}.matrix-card strong{font-size:14px;line-height:1.3}.verification-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px;margin-top:10px}.verification-row{border-left-color:#5b9cff}.verification-row span{display:inline-block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#93c5fd;font-weight:900;margin-bottom:6px}.verification-row strong{display:block;font-size:13.5px;line-height:1.3}.verification-row em{display:block;color:#a8c2e5;font-style:normal;font-size:12px;margin-top:4px}
@media(max-width:900px){.provider-cards{grid-template-columns:1fr}.provider-card{min-height:auto}}

/* V19.4 demand comparison module */
#compare-demand-btn{border-color:rgba(91,156,255,.75)}
.comparison-mode .panel-kicker{color:#93c5fd}
.comparison-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:14px}
.comparison-section-card{border:1px solid rgba(148,163,184,.22);background:rgba(255,255,255,.04);border-radius:14px;padding:14px}
.comparison-section-card span{display:block;color:#9fb1c8;text-transform:uppercase;letter-spacing:.1em;font-size:11px;font-weight:900;margin-bottom:7px}
.comparison-section-card strong{font-size:22px;color:#f8fbff}
.comparison-summary-text{border:1px solid rgba(91,156,255,.22);background:rgba(91,156,255,.08);border-radius:14px;padding:13px 15px;margin:12px 0 18px;color:#dcecff}
.comparison-table{margin:10px 0 20px;max-height:460px}
.comparison-empty{border:1px solid rgba(148,163,184,.18);border-radius:14px;background:rgba(255,255,255,.035);padding:14px;margin:8px 0 18px}
.comparison-brief h3,.overall-comparison-sections h3,#comparison-detail h3,#calendar-table h3,#billing-table h3{margin:18px 0 8px;font-size:16px;color:#f8fbff}
.red-flag-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px;margin:10px 0 18px}
.comparison-flag{border:1px solid rgba(148,163,184,.22);border-left:5px solid #64748b;background:rgba(15,28,49,.88);border-radius:14px;padding:12px;color:#eaf2ff}
.comparison-flag.severity-critical{border-left-color:#b91c1c}.comparison-flag.severity-high{border-left-color:#dc2626}.comparison-flag.severity-medium{border-left-color:#d97706}.comparison-flag.severity-low{border-left-color:#2563eb}
.comparison-flag p{font-size:12.5px;line-height:1.45;color:#dbeafe;margin:7px 0 0}
.comparison-provider{position:relative;border-left:5px solid #5b9cff}
.comparison-provider.added{border-left-color:#22c55e}.comparison-provider.removed{border-left-color:#ef4444}.comparison-provider.common{border-left-color:#5b9cff}
.comparison-status-pill{display:inline-block;margin-bottom:8px;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 8px;font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#dbeafe}
.comparison-status-pill.added{color:#86efac}.comparison-status-pill.removed{color:#fca5a5}.comparison-status-pill.common{color:#93c5fd}
.overall-comparison-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}
.overall-comparison-sections section{border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.035);border-radius:14px;padding:14px}
.overall-comparison-sections p{color:#dbeafe;line-height:1.5;margin:0}
.comparison-mini-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))!important}
.provider-map-canvas,#comparison-map{width:100%;height:420px;min-height:420px;border-radius:16px;border:1px solid rgba(184,200,222,.22);margin:12px 0;background:#e9eef6;overflow:hidden}
.comparison-map-row.added{border-color:rgba(34,197,94,.45)}.comparison-map-row.removed{border-color:rgba(239,68,68,.45)}.comparison-map-row.common{border-color:rgba(91,156,255,.45)}
@media(max-width:900px){.overall-comparison-sections,.red-flag-list,.comparison-mini-grid{grid-template-columns:1fr!important}}

/* V19.5 comparison upload UI polish */
.action-strip .strip-btn.wide{flex:0 0 270px;min-width:270px;white-space:nowrap;text-align:center}
#upload-report-btn,#compare-demand-btn{min-height:58px}
.compare-upload-panel{border-color:rgba(91,156,255,.38);background:linear-gradient(145deg,rgba(13,35,52,.96),rgba(10,22,38,.98))}
.compare-upload-head .hint{max-width:860px;margin:0;color:#b9c9dd}
.compare-upload-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:16px;margin-top:18px}
.compare-upload-card{position:relative;border:1px solid rgba(148,163,184,.24);background:rgba(4,10,18,.45);border-radius:16px;padding:18px;min-height:178px}
.compare-upload-card h3{margin:0 0 7px;font-size:18px;color:#f8fbff}
.compare-upload-card p{margin:0 0 14px;color:#aebdd2;font-size:13px;line-height:1.45}
.compare-step-chip{position:absolute;right:16px;top:16px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#235ee8;color:#fff;font-weight:1000}
.compare-file-btn{margin-top:4px;border-color:rgba(91,156,255,.48);background:rgba(91,156,255,.12)}
.compare-file-name{margin-top:12px;border:1px solid rgba(184,200,222,.16);border-radius:12px;background:#06101d;color:#dbeafe;padding:10px 12px;font-size:13px;min-height:42px;word-break:break-word}
.compare-upload-actions{display:flex;justify-content:flex-end;margin-top:18px}
.compare-upload-actions .strip-btn{border-color:var(--green);background:rgba(18,200,111,.08)}
.compare-upload-actions .strip-btn:disabled{border-color:#64748b;background:transparent}
@media(max-width:1100px){.action-strip{flex-wrap:wrap}.action-strip .strip-btn.wide{flex:0 0 auto;min-width:240px}.compare-upload-grid{grid-template-columns:1fr}}

/* V19.7 comparison UI cleanup */
.comparison-mode [data-insight-tab="legitimacy"]{display:none!important}
.comparison-calendar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px;margin:12px 0 18px}
.comparison-calendar-grid section{min-width:0}
.comparison-calendar-grid h3{margin:10px 0 8px;font-size:16px;color:#f8fbff}
.comparison-map-legend .legend-item{display:inline-flex;align-items:center;gap:6px;font-weight:800}
.legend-dot{display:inline-block;width:11px;height:11px;border-radius:999px;border:1px solid rgba(15,23,42,.7)}
.legend-item.compare-common .legend-dot{background:#5b9cff}
.legend-item.compare-added .legend-dot{background:#22c55e}
.legend-item.compare-removed .legend-dot{background:#ef4444}
.legend-item.compare-common{border-color:rgba(91,156,255,.45);color:#bfdbfe}
.legend-item.compare-added{border-color:rgba(34,197,94,.45);color:#bbf7d0}
.legend-item.compare-removed{border-color:rgba(239,68,68,.45);color:#fecaca}


/* V19.9 comparison filter refinements */
.comparison-filter-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:12px 0 12px;padding:8px;border:1px solid rgba(184,200,222,.18);border-radius:999px;background:rgba(8,17,31,.56);width:max-content;max-width:100%}
.comparison-filter-btn{border:1px solid rgba(148,163,184,.32);background:rgba(255,255,255,.04);color:#dbeafe;border-radius:999px;padding:9px 14px;font-weight:900;font-size:13px;display:inline-flex;align-items:center;gap:8px}
.comparison-filter-btn span{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 7px;border-radius:999px;background:rgba(91,156,255,.16);color:#bfdbfe;font-size:12px}
.comparison-filter-btn.active{border-color:var(--green);background:rgba(18,200,111,.12);box-shadow:inset 0 0 0 1px rgba(18,200,111,.12)}
.comparison-filter-btn.active span{background:rgba(18,200,111,.18);color:#bbf7d0}
#comparison-calendar-view{min-height:650px;margin-top:10px}
.comparison-event-card .event-type{font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.fc .comparison-event-common{border-color:#5b9cff!important;background:rgba(91,156,255,.34)!important}
.fc .comparison-event-old{border-color:#ef4444!important;background:rgba(239,68,68,.34)!important}
.fc .comparison-event-updated{border-color:#22c55e!important;background:rgba(34,197,94,.34)!important}
.comparison-map-row.added .map-pin-number{background:#16a34a}.comparison-map-row.removed .map-pin-number{background:#dc2626}.comparison-map-row.common .map-pin-number{background:#235ee8}
#comparison-map-legend .legend-item{font-weight:800}
@media(max-width:900px){.comparison-filter-toolbar{width:100%;border-radius:18px}.comparison-filter-btn{flex:1;justify-content:center}}


/* V19.10 compact demand comparison UI */
body.comparison-mode .workspace{max-width:1800px;padding-top:14px;padding-bottom:26px}
body.comparison-mode .workflow-card{padding:16px 20px;margin:12px 0 14px}
body.comparison-mode .panel{padding:16px 18px;margin-bottom:14px;border-radius:16px}
body.comparison-mode .panel-head{gap:10px;margin-bottom:4px}
body.comparison-mode .panel-kicker{font-size:10.5px;letter-spacing:.14em;margin-bottom:5px}
body.comparison-mode .panel h2{font-size:19px;line-height:1.15;margin:0 0 8px}
body.comparison-mode .hint,body.comparison-mode .text-block{font-size:13px;line-height:1.38}
body.comparison-mode .summary-cards{gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important}
body.comparison-mode .summary-card{padding:10px 11px;border-radius:12px}
body.comparison-mode .summary-card span{font-size:9.5px;letter-spacing:.08em;margin-bottom:4px}
body.comparison-mode .summary-card strong{font-size:15px!important;line-height:1.2}
body.comparison-mode .comparison-section-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin:8px 0 10px}
body.comparison-mode .comparison-section-card{padding:9px 11px;border-radius:12px;min-height:auto}
body.comparison-mode .comparison-section-card span{font-size:9.5px;letter-spacing:.08em;margin-bottom:4px}
body.comparison-mode .comparison-section-card strong{font-size:18px;line-height:1.15}
body.comparison-mode .comparison-summary-text{padding:9px 11px;margin:8px 0 10px;border-radius:12px;font-size:13px;line-height:1.36}
body.comparison-mode .comparison-brief h3,body.comparison-mode .overall-comparison-sections h3,body.comparison-mode #comparison-detail h3,body.comparison-mode #calendar-table h3,body.comparison-mode #billing-table h3{font-size:14px;margin:12px 0 6px}
body.comparison-mode .comparison-brief p,body.comparison-mode .overall-comparison-sections p{font-size:13px;line-height:1.35;margin:0 0 6px}
body.comparison-mode .risk-banner{padding:9px 11px;margin-bottom:9px;border-radius:12px}
body.comparison-mode .risk-banner span{font-size:10px;letter-spacing:.07em}
body.comparison-mode .risk-banner strong{font-size:17px}
body.comparison-mode .red-flag-list{gap:8px}
body.comparison-mode .comparison-flag{padding:9px 10px;border-radius:12px}
body.comparison-mode .comparison-flag strong{font-size:13px;line-height:1.25}
body.comparison-mode .comparison-flag p{font-size:12px;line-height:1.32;margin-top:5px}
body.comparison-mode .comparison-table{margin:7px 0 12px;max-height:340px;border-radius:12px}
body.comparison-mode th,body.comparison-mode td{padding:7px 9px;font-size:12px;line-height:1.28}
body.comparison-mode th{font-size:9.8px;letter-spacing:.06em}
body.comparison-mode .table-wrap{border-radius:12px;max-height:380px}
body.comparison-mode .provider-cards{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px}
body.comparison-mode .provider-card{padding:10px 11px;min-height:104px;border-radius:12px}
body.comparison-mode .provider-card strong{font-size:13px!important;line-height:1.2;margin-bottom:5px;-webkit-line-clamp:2}
body.comparison-mode .provider-card div{font-size:12px;line-height:1.28}
body.comparison-mode .comparison-status-pill{font-size:9.5px;padding:3px 7px;margin-bottom:6px}
body.comparison-mode .comparison-filter-toolbar{gap:7px;margin:8px 0 8px;padding:5px 6px}
body.comparison-mode .comparison-filter-btn{font-size:12px;padding:6px 10px;gap:6px}
body.comparison-mode .comparison-filter-btn span{min-width:20px;height:20px;padding:0 6px;font-size:10.5px}
body.comparison-mode .map-status{padding:8px 10px;margin-bottom:8px;font-size:12px;border-radius:12px}
body.comparison-mode .map-type-toggle{margin-bottom:8px;padding:4px}
body.comparison-mode .map-type-toggle button{font-size:11px;padding:6px 10px}
body.comparison-mode .map-legend{font-size:11px;gap:5px;margin:6px 0 8px}
body.comparison-mode .legend-item{padding:3px 7px}
body.comparison-mode #comparison-map,body.comparison-mode .provider-map-canvas#comparison-map{height:340px;min-height:340px;margin:8px 0;border-radius:14px}
body.comparison-mode .map-location-list{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:7px;margin-top:8px}
body.comparison-mode .provider-map-row{grid-template-columns:28px 1fr auto;gap:8px;padding:9px;border-radius:12px}
body.comparison-mode .map-pin-number{width:24px;height:24px;font-size:11px}
body.comparison-mode .provider-map-row-main strong{font-size:11.5px!important;line-height:1.2;margin-bottom:2px}
body.comparison-mode .provider-map-row-main span,body.comparison-mode .provider-map-row-meta{font-size:10.8px!important;line-height:1.25}
body.comparison-mode #comparison-calendar-view{min-height:440px;margin-top:8px}
body.comparison-mode #comparison-calendar-view .fc{font-size:12px}
body.comparison-mode #comparison-calendar-view .fc .fc-toolbar{gap:8px;margin-bottom:6px;align-items:center}
body.comparison-mode #comparison-calendar-view .fc .fc-toolbar-title{font-size:16px;line-height:1.1}
body.comparison-mode #comparison-calendar-view .fc .fc-button{font-size:11px!important;padding:5px 8px!important}
body.comparison-mode #comparison-calendar-view .fc .fc-col-header-cell-cushion,body.comparison-mode #comparison-calendar-view .fc .fc-daygrid-day-number{font-size:11px;padding:3px 5px}
body.comparison-mode #comparison-calendar-view .fc .fc-daygrid-day-frame{min-height:54px}
body.comparison-mode #comparison-calendar-view .fc .fc-daygrid-day-events{margin:0 2px 2px}
body.comparison-mode .comparison-event-card{padding:2px 3px;border-radius:5px;font-size:9.5px;line-height:1.15}
body.comparison-mode .comparison-event-card .event-type{font-size:8.5px;line-height:1.15}
body.comparison-mode .comparison-event-card .event-facility,body.comparison-mode .comparison-event-card .event-person{font-size:9.5px;line-height:1.15}
body.comparison-mode .compare-upload-panel{padding:16px 18px}
body.comparison-mode .compare-upload-grid{gap:12px;margin-top:12px}
body.comparison-mode .compare-upload-card{padding:14px;min-height:145px;border-radius:14px}
body.comparison-mode .compare-upload-card h3{font-size:16px;margin-bottom:5px}
body.comparison-mode .compare-upload-card p{font-size:12.5px;margin-bottom:10px;line-height:1.32}
body.comparison-mode .compare-step-chip{right:12px;top:12px;width:28px;height:28px;font-size:13px}
body.comparison-mode .compare-file-name{margin-top:9px;padding:8px 10px;min-height:36px;font-size:12px;border-radius:10px}
body.comparison-mode .compare-upload-actions{margin-top:12px}
body.comparison-mode .compare-upload-actions .strip-btn{min-height:48px;font-size:14px;padding:0 20px}
body.comparison-mode .event-drawer{width:min(420px,calc(100vw - 36px));right:18px;top:18px;padding:14px;border-radius:14px}
body.comparison-mode .drawer-head{padding-bottom:8px;margin-bottom:8px}
body.comparison-mode .detail-row{padding:7px 0;font-size:12px;line-height:1.3}
@media(max-width:900px){body.comparison-mode .panel{padding:14px}body.comparison-mode #comparison-calendar-view{min-height:480px}body.comparison-mode .comparison-filter-toolbar{width:100%;border-radius:14px}body.comparison-mode .comparison-filter-btn{flex:1;justify-content:center}}

/* V19.11 business comparison insights + XLSX export */
.comparison-topbar{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:stretch;margin-bottom:8px}
.download-compare-btn,.download-actions #download-comparison-xlsx-btn{border:1px solid rgba(18,200,111,.45);background:linear-gradient(135deg,rgba(18,200,111,.18),rgba(91,156,255,.12));color:#eafff4;border-radius:12px;padding:0 16px;font-weight:900;min-height:42px;cursor:pointer}
.download-compare-btn:disabled,.download-actions #download-comparison-xlsx-btn:disabled{opacity:.45;cursor:not-allowed}
.business-mini-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:8px 0 12px}
.business-mini-card{border:1px solid rgba(184,200,222,.16);background:rgba(8,17,31,.56);border-radius:12px;padding:10px 12px;min-height:86px}
.business-mini-card strong{display:block;color:#f8fbff;font-size:13px;margin-bottom:5px}
.business-mini-card p{margin:0;color:#b9c7d9;font-size:12px;line-height:1.35}
.comparison-business-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:8px 0 12px}
.comparison-business-card{border:1px solid rgba(184,200,222,.16);background:rgba(255,255,255,.04);border-radius:12px;padding:9px 10px;min-height:58px}
.comparison-business-card span{display:block;color:#9fb0c7;text-transform:uppercase;letter-spacing:.07em;font-size:9.5px;font-weight:900;margin-bottom:4px}
.comparison-business-card strong{display:block;color:#f8fbff;font-size:15px;line-height:1.2}
.compact-actions{margin-top:6px;margin-bottom:6px;padding-left:18px}.compact-actions li{margin-bottom:5px;line-height:1.33}
.provider-risk-summary.full-span{grid-column:1/-1;margin-bottom:2px}
body.comparison-mode .business-mini-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px;margin:7px 0 10px}
body.comparison-mode .business-mini-card{padding:8px 9px;min-height:74px;border-radius:11px}
body.comparison-mode .business-mini-card strong{font-size:12px;margin-bottom:4px}
body.comparison-mode .business-mini-card p{font-size:11.5px;line-height:1.28}
body.comparison-mode .comparison-business-cards{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:7px;margin:7px 0 10px}
body.comparison-mode .comparison-business-card{padding:7px 8px;min-height:50px;border-radius:10px}
body.comparison-mode .comparison-business-card span{font-size:8.8px;margin-bottom:3px}
body.comparison-mode .comparison-business-card strong{font-size:13.5px}
body.comparison-mode .download-compare-btn{min-height:38px;font-size:12px;padding:0 12px;border-radius:10px}
@media(max-width:800px){.comparison-topbar{grid-template-columns:1fr}.download-compare-btn{width:100%}}

/* V19.12 drill-down comparison dashboard */
.comparison-sticky-head{position:sticky;top:0;z-index:4;background:linear-gradient(180deg,rgba(10,22,39,.98),rgba(10,22,39,.92));border:1px solid rgba(184,200,222,.12);border-radius:14px;padding:8px;margin-bottom:10px;backdrop-filter:blur(8px)}
.comparison-top-actions{display:flex;align-items:stretch;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.comparison-focus-label{display:grid;gap:3px;color:#9fb0c7;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;min-width:190px}
.comparison-focus-select{height:38px;border-radius:10px;border:1px solid rgba(148,163,184,.35);background:#0e1b2d;color:#e5eefb;font-weight:800;padding:0 10px;outline:none}
.comparison-section-tabs{display:flex;gap:6px;align-items:center;overflow-x:auto;padding:2px 1px 0;margin-top:8px;scrollbar-width:thin}
.comparison-section-tab{border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.04);color:#dbeafe;border-radius:999px;padding:7px 10px;font-weight:900;font-size:12px;white-space:nowrap;cursor:pointer;display:flex;align-items:center;gap:6px}
.comparison-section-tab span{min-width:20px;height:20px;display:inline-grid;place-items:center;border-radius:999px;background:rgba(91,156,255,.16);font-size:10px;color:#bfdbfe;padding:0 5px}
.comparison-section-tab.active{border-color:var(--green);background:rgba(18,200,111,.13);color:#ecfdf5}
.comparison-section-tab.active span{background:rgba(18,200,111,.22);color:#bbf7d0}
.comparison-section-panel{display:none}.comparison-section-panel.active{display:block}
.comparison-top-change-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:6px 0 10px}
.top-change-card{border:1px solid rgba(184,200,222,.16);background:rgba(255,255,255,.045);border-radius:12px;padding:10px;text-align:left;color:#dbeafe;cursor:pointer;min-height:72px}
.top-change-card:hover{border-color:rgba(91,156,255,.55);background:rgba(91,156,255,.10)}
.top-change-card strong{display:block;color:#f8fbff;font-size:13px;line-height:1.2;margin-bottom:4px}
.top-change-card span{display:block;color:#b9c7d9;font-size:11.5px;line-height:1.3}
.comparison-accordion-list{display:grid;gap:8px;margin:8px 0}.comparison-accordion{border:1px solid rgba(184,200,222,.16);background:rgba(8,17,31,.56);border-radius:12px;padding:0;overflow:hidden}.comparison-accordion summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;cursor:pointer;font-weight:900;color:#f8fbff}.comparison-accordion summary::-webkit-details-marker{display:none}.comparison-accordion summary span{display:inline-grid;place-items:center;min-width:24px;height:22px;border-radius:999px;background:rgba(91,156,255,.16);font-size:11px}.comparison-accordion .red-flag-list{padding:0 10px 10px}
.comparison-filter-toolbar-wide{width:100%;border-radius:18px;justify-content:flex-start}.comparison-dashboard-head{display:grid;gap:4px}.comparison-compact-list{display:grid;gap:6px;max-height:360px;overflow:auto;padding-right:4px}.comparison-list-row{border:1px solid rgba(184,200,222,.14);background:rgba(255,255,255,.035);color:#dbeafe;border-radius:10px;padding:8px 10px;text-align:left;display:grid;gap:3px;cursor:pointer}.comparison-list-row:hover{border-color:rgba(91,156,255,.5);background:rgba(91,156,255,.09)}.comparison-list-row strong{font-size:12.5px;line-height:1.2}.comparison-list-row span{font-size:11px;color:#93c5fd}.comparison-list-row em{font-size:11px;color:#b9c7d9;font-style:normal;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.clickable-row{cursor:pointer}.clickable-row:hover td{background:rgba(91,156,255,.10)}
body.comparison-mode .comparison-sticky-head{padding:7px;border-radius:12px;margin-bottom:8px}body.comparison-mode .comparison-topbar{margin-bottom:0}body.comparison-mode .comparison-focus-select{height:34px;font-size:12px;border-radius:9px}body.comparison-mode .comparison-focus-label{font-size:8.5px;min-width:165px}body.comparison-mode .comparison-section-tabs{gap:5px;margin-top:6px}body.comparison-mode .comparison-section-tab{font-size:11px;padding:5px 8px}body.comparison-mode .comparison-section-tab span{min-width:18px;height:18px;font-size:9px}body.comparison-mode .comparison-top-change-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:7px;margin:5px 0 8px}body.comparison-mode .top-change-card{padding:8px 9px;min-height:62px;border-radius:10px}body.comparison-mode .top-change-card strong{font-size:12px}body.comparison-mode .top-change-card span{font-size:10.8px}body.comparison-mode .comparison-compact-list{max-height:310px;gap:5px}body.comparison-mode .comparison-list-row{padding:7px 9px;border-radius:9px}body.comparison-mode .comparison-list-row strong{font-size:11.5px}body.comparison-mode .comparison-list-row span,body.comparison-mode .comparison-list-row em{font-size:10.5px}.comparison-provider.added{border-color:rgba(18,200,111,.38)}.comparison-provider.removed{border-color:rgba(248,113,113,.35)}.comparison-provider.common{border-color:rgba(91,156,255,.30)}
@media(max-width:900px){.comparison-topbar{grid-template-columns:1fr}.comparison-top-actions{justify-content:stretch}.comparison-focus-label,.download-compare-btn{width:100%;min-width:0}.comparison-section-tabs{padding-bottom:3px}.comparison-top-change-list{grid-template-columns:1fr}}

/* V19.13 Document Auth + legitimacy-only investigation UI */
.comparison-mode [data-insight-tab="docauth"]{display:none!important}
.legit-investigation,.docauth-review{display:flex;flex-direction:column;gap:16px}
.legit-hero,.docauth-hero{display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(148,163,184,.22);border-radius:16px;padding:18px;background:rgba(15,28,49,.88);color:#eaf2ff}
.legit-hero h2,.docauth-hero h2{margin:0 0 8px;font-size:22px;color:#f8fbff}
.legit-hero p,.docauth-hero p{margin:6px 0;color:#dbeafe;line-height:1.48}
.legit-handler-note,.docauth-handler-note{color:#dbeafe;background:rgba(255,255,255,.045);border-left:4px solid rgba(91,156,255,.85);padding:10px 12px;border-radius:8px}
.legit-risk-box,.docauth-risk-box{min-width:145px;text-align:center;border-radius:12px;padding:12px;background:rgba(255,255,255,.05);border:1px solid rgba(184,200,222,.18);align-self:flex-start}.legit-risk-box span,.docauth-risk-box span{display:block;font-size:12px;color:#a8c2e5;text-transform:uppercase;letter-spacing:.04em}.legit-risk-box strong,.docauth-risk-box strong{display:block;font-size:20px;margin-top:4px;color:#f8fbff}
.legit-section,.docauth-section{border:1px solid rgba(148,163,184,.20);border-radius:16px;background:rgba(255,255,255,.035);padding:16px;color:#eaf2ff}.legit-section h3,.docauth-section h3{margin:0 0 12px;font-size:18px;color:#f8fbff}.docauth-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.docauth-section-head p{margin:4px 0 0;color:#a8c2e5;font-size:13px}.docauth-section-head span{border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:4px 9px;color:#dbeafe;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.docauth-section-summary{color:#dbeafe;line-height:1.45}
.legit-table-wrap{overflow-x:auto;border-radius:12px;border:1px solid rgba(148,163,184,.18)}.legit-table{border-collapse:collapse;min-width:100%;font-size:13px}.legit-table th,.legit-table td{border:1px solid rgba(148,163,184,.16);padding:9px 10px;vertical-align:top;text-align:left;color:#dbeafe}.legit-table th{background:rgba(91,156,255,.12);color:#f8fbff;font-weight:800}.legit-empty-box,.docauth-empty{border:1px dashed rgba(148,163,184,.28);padding:12px;border-radius:10px;background:rgba(255,255,255,.03)}
.legit-card-grid,.docauth-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.legit-evidence-card,.docauth-evidence-card{border:1px solid rgba(148,163,184,.22);border-left-width:6px;border-radius:12px;padding:12px;background:rgba(15,28,49,.90);color:#eaf2ff}.legit-card-head,.docauth-card-head{display:flex;gap:8px;align-items:center;margin-bottom:8px}.legit-card-head strong,.docauth-card-head strong{color:#f8fbff}.legit-meta,.docauth-meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:12px;color:#a8c2e5;margin-bottom:8px}.legit-evidence-card p,.docauth-evidence-card p{margin:8px 0;color:#dbeafe;line-height:1.45}.legit-evidence-text,.docauth-text-sample{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:12px;background:rgba(255,255,255,.055);padding:2px 4px;border-radius:4px;color:#eef6ff}.legit-pill,.docauth-pill{display:inline-block;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900;background:rgba(148,163,184,.18);color:#eaf2ff;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.risk-critical,.docauth-critical{border-left-color:#dc2626!important}.risk-high,.docauth-high{border-left-color:#ea580c!important}.risk-moderate,.docauth-medium{border-left-color:#d97706!important}.risk-low,.docauth-low{border-left-color:#16a34a!important}.legit-pill.risk-critical,.docauth-critical .docauth-pill{background:rgba(220,38,38,.22);color:#fecaca}.legit-pill.risk-high,.docauth-high .docauth-pill{background:rgba(234,88,12,.20);color:#fed7aa}.legit-pill.risk-moderate,.docauth-medium .docauth-pill{background:rgba(217,119,6,.20);color:#fde68a}.legit-pill.risk-low,.docauth-low .docauth-pill{background:rgba(22,163,74,.18);color:#bbf7d0}.docauth-signals{font-size:12px;color:#a8c2e5;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:rgba(255,255,255,.035);padding:10px;word-break:break-word}
@media(max-width:900px){.legit-hero,.docauth-hero{flex-direction:column}.legit-risk-box,.docauth-risk-box{width:100%}.legit-card-grid,.docauth-card-grid{grid-template-columns:1fr}}

/* V19.14: retain original Medical/Billing Legitimacy Review inside Legitimacy tab */
.legacy-legitimacy-section{border-color:rgba(91,156,255,.32);background:linear-gradient(180deg,rgba(91,156,255,.055),rgba(255,255,255,.025))}
.legacy-legitimacy-section h4{margin:14px 0 8px;color:#dbeafe;font-size:14px;letter-spacing:.01em}
.legacy-legit-summary{border:1px solid rgba(148,163,184,.22);border-left-width:6px;border-radius:12px;padding:12px;margin:4px 0 12px;background:rgba(15,28,49,.72);color:#dbeafe}
.legacy-legit-summary strong{display:block;color:#f8fbff;margin-bottom:4px}
.legacy-legit-summary p{margin:0;line-height:1.45;color:#dbeafe}
