:root{--blue:#155eef;--blue-dark:#0e4bd4;--blue-50:#eff5ff;--text:#152238;--muted:#6f7d91;--border:#e4e9f1;--bg:#f6f8fb;--white:#fff;--green:#1e9e64;--red:#d94a4a;--amber:#d58b18;--shadow:0 12px 35px rgba(31,49,79,.06)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--text);background:var(--bg)}body.drawer-open{overflow:hidden}button,input,select{font:inherit}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;background:#fff;border-right:1px solid var(--border);padding:24px 18px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;gap:12px;align-items:center;padding:0 8px 28px}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--blue);color:#fff;display:grid;place-items:center;font-weight:800;font-size:20px}.brand strong,.brand span{display:block}.brand strong{font-size:15px}.brand span{font-size:12px;color:var(--muted)}.nav{display:grid;gap:7px}.nav a{padding:12px 13px;border-radius:10px;text-decoration:none;color:#526075;font-weight:650;display:flex;gap:11px;align-items:center;font-size:13px}.nav a svg{width:18px;height:18px;stroke-width:1.9}.nav a:hover,.nav a.active{background:var(--blue-50);color:var(--blue)}.sidebar-footer{margin-top:auto;padding:18px 8px 0;border-top:1px solid var(--border);display:flex;gap:10px;align-items:center}.sidebar-footer strong,.sidebar-footer span,.profile-mini strong,.profile-mini span{display:block;font-size:12px}.sidebar-footer span,.profile-mini span{color:var(--muted);margin-top:2px}.avatar{width:36px;height:36px;border-radius:50%;background:#dce8ff;color:var(--blue);display:grid;place-items:center;font-weight:800}.avatar.small{width:34px;height:34px;font-size:12px}.main-area{margin-left:248px;min-height:100vh}.topbar{height:96px;background:#fff;border-bottom:1px solid var(--border);padding:21px 34px;display:flex;justify-content:space-between;align-items:center}.topbar h1{margin:0 0 4px;font-size:24px;letter-spacing:-.02em}.topbar p{margin:0;color:var(--muted);font-size:13px}.topbar-actions{display:flex;gap:18px;align-items:center}.profile-mini{display:flex;align-items:center;gap:9px}.icon-button{position:relative;width:38px;height:38px;border:1px solid var(--border);background:#fff;border-radius:10px;display:grid;place-items:center;color:#516078;cursor:pointer}.icon-button svg{width:18px}.notification-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;background:var(--red);border:2px solid #fff;border-radius:50%}.content{padding:28px 34px 36px}.card,.table-card{background:#fff;border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.search-card{padding:24px}.search-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.search-grid label,.settings-card label{display:grid;gap:8px;font-size:12px;font-weight:750}.search-grid label span{font-weight:500;color:var(--muted)}input,select{width:100%;height:44px;border:1px solid var(--border);border-radius:9px;padding:0 12px;background:#fff;color:var(--text);outline:none}input:focus,select:focus{border-color:#9dbbff;box-shadow:0 0 0 3px #eef4ff}.search-action{grid-column:1/-1;display:flex;justify-content:center;padding-top:6px}.btn-primary,.btn-secondary,.btn-link{cursor:pointer}.btn-primary{border:0;background:var(--blue);color:#fff;border-radius:9px;padding:13px 22px;font-weight:800;box-shadow:0 7px 18px rgba(21,94,239,.18);display:inline-flex;gap:9px;align-items:center;justify-content:center}.btn-primary:hover{background:var(--blue-dark)}.btn-primary svg,.btn-secondary svg,.btn-link svg{width:17px;height:17px}.scan-button{min-width:210px}.btn-primary.full{width:100%}.btn-secondary{background:#fff;border:1px solid var(--border);border-radius:9px;padding:10px 14px;font-weight:700;display:inline-flex;gap:8px;align-items:center;color:#415068}.btn-link{border:0;background:transparent;color:var(--blue);font-weight:800;display:inline-flex;align-items:center;gap:5px;white-space:nowrap}.scan-status{margin-top:18px;padding:14px 16px;background:var(--blue-50);border-radius:10px;display:flex;gap:12px;align-items:center}.scan-status strong,.scan-status span{display:block}.scan-status span{font-size:12px;color:var(--muted);margin-top:3px}.spinner{width:22px;height:22px;border:3px solid #bfd3ff;border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.results-section{margin-top:25px;transition:.2s}.results-section.is-loading{opacity:.55;pointer-events:none}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.section-heading h2{margin:0 0 4px;font-size:18px}.section-heading p{margin:0;color:var(--muted);font-size:12px}.section-heading p strong{color:var(--text)}.table-card{overflow:hidden}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:1080px}th,td{padding:15px 14px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#8492a6;background:#fbfcfe;font-weight:800}td{font-size:12px}td strong,td>span,td small{display:block}td>span,td small{margin-top:4px;color:var(--muted)}tbody tr:hover{background:#fbfdff}.score-cell{display:flex;align-items:center;gap:9px}.score-cell small{margin:0!important;font-weight:700}.score{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:#fff!important;font-weight:800;margin:0}.score-high{background:var(--green)}.score-mid{background:var(--amber)}.status{display:inline-flex!important;width:max-content;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800;gap:5px;align-items:center}.status svg{width:12px;height:12px}.status.ok{background:#e7f7ef;color:var(--green)}.status.danger{background:#fff0f0;color:var(--red)}.status.warning{background:#fff6e5;color:var(--amber)}.contact-note{display:flex!important;align-items:center;gap:5px}.contact-note svg{width:13px;height:13px}.rating{display:flex!important;align-items:center;gap:4px}.rating svg{width:14px;height:14px;fill:#f7b955;stroke:#f7b955}.table-footer{height:56px;padding:0 15px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;background:#fff}.pagination{display:flex;gap:5px}.pagination button{width:31px;height:31px;border:1px solid var(--border);background:#fff;border-radius:8px;color:#65738a;display:grid;place-items:center}.pagination button svg{width:15px}.pagination button.active{background:var(--blue);border-color:var(--blue);color:#fff}.pagination button:disabled{opacity:.45}.empty-state,.settings-card{padding:32px}.empty-state h2,.settings-card h2{margin-top:0}.empty-state p{color:var(--muted)}.settings-card{max-width:680px}.settings-card label{margin:18px 0}.drawer-backdrop{position:fixed;inset:0;background:rgba(16,28,48,.3);opacity:0;pointer-events:none;transition:.2s;z-index:20}.drawer-backdrop.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;width:min(430px,94vw);height:100vh;background:#fff;z-index:30;transform:translateX(100%);transition:.25s ease;padding:27px;overflow:auto;box-shadow:-20px 0 60px rgba(23,36,59,.18)}.drawer.open{transform:translateX(0)}.drawer-close{position:absolute;top:16px;right:18px;width:36px;height:36px;border-radius:10px;border:1px solid var(--border);background:#fff;display:grid;place-items:center;cursor:pointer}.drawer-close svg{width:18px}.drawer-company{padding-right:42px}.drawer-company>span,.drawer-company>p{color:var(--muted)}.drawer-company>span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.drawer-company h2{margin:6px 0;font-size:23px}.drawer-company p{margin:0;display:flex;align-items:center;gap:5px;font-size:12px}.drawer-company p svg{width:14px}.drawer-score{margin:22px 0;padding:17px;background:var(--blue-50);border-radius:12px;display:flex;justify-content:space-between;gap:18px;align-items:center}.drawer-score strong{font-size:32px;display:block}.drawer-score span{font-size:11px;color:var(--muted)}.drawer-score b{font-size:12px;color:var(--blue);text-align:right}.drawer-block{padding:17px 0;border-top:1px solid var(--border)}.drawer-block h3{margin:0 0 12px;font-size:14px}.contact-actions{display:grid;gap:8px}.contact-actions a{height:40px;border:1px solid var(--border);border-radius:9px;padding:0 11px;display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-size:12px;font-weight:700}.contact-actions a svg{width:16px;color:var(--blue)}.diagnostic-list{display:grid;gap:9px}.diagnostic-item{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:9px;background:#f8fafc}.diagnostic-item svg{width:17px;height:17px;flex:0 0 auto;margin-top:1px}.diagnostic-item span,.diagnostic-item strong{display:block}.diagnostic-item span{font-size:11px;color:var(--muted)}.diagnostic-item strong{font-size:12px;color:var(--text);margin-bottom:2px}.diagnostic-item.positive svg{color:var(--green)}.diagnostic-item.negative svg{color:var(--red)}.diagnostic-item.attention svg{color:var(--amber)}.chips{display:flex;gap:8px;flex-wrap:wrap}.chips span{padding:7px 9px;border-radius:999px;background:#f1f4f8;font-size:11px;font-weight:700}.drawer .btn-primary{margin-top:8px}.toast{position:fixed;right:24px;bottom:24px;z-index:60;background:#162338;color:#fff;padding:13px 16px;border-radius:10px;font-size:12px;font-weight:700;box-shadow:0 12px 30px rgba(15,28,48,.24);opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:translateY(0)}
@media(max-width:1180px){.search-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:780px){.sidebar{position:static;width:100%;height:auto;padding-bottom:14px}.main-area{margin-left:0}.sidebar-footer{display:none}.nav{grid-template-columns:1fr 1fr}.topbar{height:auto;padding:18px 20px}.content{padding:18px}.search-grid{grid-template-columns:1fr}.nav a{font-size:12px}.topbar-actions{display:none}.section-heading{align-items:flex-end}.section-heading p{max-width:230px}.table-footer{display:none}}@media(max-width:520px){.nav{grid-template-columns:1fr}.brand{padding-bottom:18px}.section-heading{display:grid;gap:12px}.btn-secondary{width:max-content}.search-card{padding:18px}}
