:root{color-scheme:light;--bg:#f5f8fb;--ink:#172b44;--muted:#62768e;--primary:#1362a5;--line:#dfe7f0;--white:#fff;--good:#128667;--warn:#ba6b14;--bad:#c45151}*{box-sizing:border-box}html{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}body{background:var(--bg);margin:0;color:var(--ink)}button,input{font:inherit}button{cursor:pointer}.wrap{max-width:1160px;margin-inline:auto;padding-inline:24px}.nav{min-height:83px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.brand{font-weight:800;display:flex;align-items:center;gap:10px;letter-spacing:-.4px;font-size:19px}.brand-light{font-weight:450}.mark{width:31px;height:31px;border-radius:9px;background:#163c60;color:white;display:grid;place-items:center;font-size:24px;line-height:1}.version{font-size:9px;letter-spacing:1.1px;background:#e0ebf4;border-radius:20px;color:#315d80;padding:5px 7px;margin-left:5px}.privacy{color:#587186;font-size:12px;white-space:nowrap}.privacy-dot{display:inline-block;width:7px;height:7px;background:#18a97b;border-radius:50%;margin-right:5px}.hero{padding:74px 0 34px;text-align:center;max-width:760px;margin:auto}.eyebrow{letter-spacing:2px;text-transform:uppercase;font-size:11px;color:#2d7aac;font-weight:800}.hero h1{font-size:clamp(37px,5vw,59px);letter-spacing:-2.4px;line-height:1.12;margin:20px 0}.hero p{font-size:17px;color:var(--muted);line-height:1.7;max-width:660px;margin:0 auto}.dropzone{border:2px dashed #b4c9dd;background:#fff;border-radius:19px;min-height:231px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;cursor:pointer;transition:.16s box-shadow,.16s border-color}.dropzone:hover,.dropzone.dragging,.dropzone:focus-visible{outline:none;border-color:#1874b7;box-shadow:0 6px 32px #14649a14}.upload-icon{background:#e6f2ff;color:#2877af;border-radius:14px;width:49px;height:49px;display:grid;place-items:center;font-size:31px}.drop-heading{font-weight:750;font-size:19px}.drop-subheading,.drop-note{color:var(--muted);font-size:13px}.drop-note{margin-top:8px;font-size:12px}code{font-size:.91em;color:#2a5f84;background:#eaf3f8;border-radius:4px;padding:2px 5px}.linklike{color:#1467a3;font-weight:700}.or-row{display:flex;align-items:center;gap:13px;justify-content:center;color:#899aac;padding:21px 0 42px;font-size:13px}.text-button{background:none;border:none;color:#125e9b;font-weight:700}.status{margin:0 0 28px;border:1px solid #b6d4e7;color:#225574;background:#e8f4fb;padding:14px 18px;border-radius:12px}.status.error{border-color:#f1bdbd;background:#fff1f1;color:#8f3030}.results-title{display:flex;justify-content:space-between;align-items:center;margin:10px 0 22px;gap:18px}.results-title h2{margin:10px 0 3px;font-size:27px;letter-spacing:-.8px}.results-title p{margin:0}.muted{color:var(--muted)}.outline-button{border:1px solid #cbd9e6;border-radius:9px;padding:11px 16px;color:#245978;background:white;font-weight:700;font-size:12px;white-space:nowrap}.outline-button:hover{background:#eef7fd}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:19px}.stat{background:white;border:1px solid var(--line);padding:20px;border-radius:14px}.stat-label{font-size:11px;letter-spacing:.6px;text-transform:uppercase;color:#6c8192;font-weight:750}.stat-number{font-size:31px;font-weight:800;margin:13px 0 4px;font-variant-numeric:tabular-nums;letter-spacing:-.9px}.stat-caption{color:var(--muted);font-size:12px}.stat-number.warn{color:var(--warn)}.stat-number.bad{color:var(--bad)}.panel{background:white;border:1px solid var(--line);border-radius:15px;padding:24px;margin-bottom:19px;min-width:0}.panel-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:22px}.panel-heading h3{margin:0 0 6px;font-size:17px;letter-spacing:-.3px}.panel-heading p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.panel-legend{color:var(--muted);font-size:12px;display:flex;align-items:center;white-space:nowrap;gap:6px}.legend-line{width:18px;height:3px;background:#1680c4;border-radius:3px}.legend-dot{width:8px;height:8px;background:#ce6853;border-radius:50%;margin-left:13px}.chart-wrap{width:100%;min-height:270px}.chart-wrap svg{display:block;width:100%;height:300px;overflow:visible}.chart-note{color:#64788f;font-size:12px;line-height:1.6;margin:9px 0 0}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:19px}.finding{display:flex;gap:12px;padding:14px 0;border-top:1px solid #edf1f5}.finding:first-child{border-top:none;padding-top:0}.finding-symbol{width:26px;height:26px;flex:none;display:grid;place-items:center;border-radius:8px;background:#e4f1f9;color:#267ba9;font-size:15px;font-weight:800}.finding.warning .finding-symbol{background:#fff1de;color:#b87b24}.finding.critical .finding-symbol{background:#ffeded;color:#ba4c4c}.finding h4{font-size:13px;margin:3px 0 5px}.finding p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.kv{margin:0}.kv-row{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid #edf1f5;font-size:12px}.kv-row:first-child{border-top:none}.kv-row dt{color:#718599}.kv-row dd{font-weight:650;text-align:right;margin:0;max-width:65%;overflow-wrap:anywhere}.small-chip{background:#eff4f9;color:#58718b;border-radius:30px;padding:6px 9px;font-size:11px;white-space:nowrap}.timeline{max-height:440px;overflow:auto}.event{border-top:1px solid #eaf0f5;display:grid;grid-template-columns:83px 24px 1fr;align-items:start;padding:11px 0;gap:13px;font-size:13px}.event-time{font-variant-numeric:tabular-nums;font-size:12px;color:#6b8094}.event-dot{border-radius:50%;width:9px;height:9px;background:#cb9254;margin:4px auto}.event-dot.critical{background:#c65353}.event-dot.info{background:#4c94bf}.event-message{line-height:1.5}.empty{padding:14px 0;color:#8495a5;font-size:13px}.foot-disclaimer{font-size:11px;line-height:1.65;color:#6c8096;margin:25px 0 38px}.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:18px;align-items:center;padding-block:26px;color:#8292a3;font-size:11px}@media(max-width:780px){.nav{min-height:75px}.privacy{display:none}.hero{padding-top:56px}.hero h1{letter-spacing:-1.3px}.hero p{font-size:15px}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col{grid-template-columns:1fr}.panel{padding:18px}.panel-heading{flex-wrap:wrap}.chart-wrap svg{height:240px}.results-title h2{font-size:23px}}@media(max-width:460px){.wrap{padding-inline:16px}.brand{font-size:17px}.version{font-size:8px}.hero h1{font-size:39px}.dropzone{min-height:228px;text-align:center;padding:20px}.drop-heading{font-size:16px}.drop-subheading{line-height:1.5}.stat{padding:15px}.stat-number{font-size:26px}.results-title{flex-wrap:wrap}.footer{flex-direction:column;align-items:start}}
.chart-event{cursor:pointer;outline:none}.chart-event:hover .chart-event-dot,.chart-event:focus-visible .chart-event-dot{stroke:#172b44;stroke-width:3;r:7}.event-dialog{width:min(480px,calc(100% - 32px));max-height:80vh;overflow:auto;border:1px solid var(--line);border-radius:15px;padding:24px;color:var(--ink);box-shadow:0 18px 60px #172b4433}.event-dialog::backdrop{background:#10233a66}.event-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.event-dialog-heading h2{font-size:18px;margin:0}.event-dialog .event-message{font-size:14px;overflow-wrap:anywhere}
.chart-explanation{background:#f5f8fb;border:1px solid var(--line);border-radius:10px;padding:12px 15px;margin-bottom:18px;color:var(--muted);font-size:12px;line-height:1.6}.chart-explanation p{margin:0}.chart-explanation p+p{margin-top:6px}.chart-explanation strong{color:var(--ink)}

.stat-action{text-align:left;color:inherit;transition:border-color .16s,box-shadow .16s}.stat-action:hover{border-color:var(--primary);box-shadow:0 3px 14px #14649a14}.stat-action:focus-visible{outline:3px solid var(--primary);outline-offset:3px}.stat-number{overflow-wrap:anywhere}.error-entry{border-top:1px solid var(--line);padding:14px 0}.error-entry p{margin:7px 0 0}.event-dialog .muted{font-size:13px;line-height:1.6}
