.visual-report{--ink:#17242b;--muted:#61716d;--green:#21664f;--line:#dce5e1;color:var(--ink);font:14px/1.5 system-ui,sans-serif;max-width:1760px;margin:auto;padding:24px;background:#f5f7f8;border-radius:16px}
.visual-report *{box-sizing:border-box}.visual-report [hidden]{display:none!important}.visual-report button,.visual-report input,.visual-report select{font:inherit}.visual-report button{cursor:pointer}.visual-report button:focus-visible,.visual-report a:focus-visible,.visual-report input:focus-visible,.visual-report select:focus-visible,.visual-report [tabindex]:focus-visible{outline:3px solid #4989bc;outline-offset:3px}
.visual-report button,.visual-report select,.visual-report input{border:1px solid #cbd8d1;border-radius:6px;background:#fff;color:#244638;padding:7px 10px}.visual-report button[aria-pressed=true],.visual-report button[aria-selected=true]{background:#21664f;color:white;border-color:#21664f}.visual-report h2,.visual-report h3,.visual-report h4{color:var(--ink);line-height:1.2;margin:0 0 10px}.visual-report p{margin:0 0 10px}.visual-report .vr-muted{font-size:12px;color:var(--muted)}
.vr-header{display:flex;justify-content:space-between;gap:24px;align-items:start;margin-bottom:18px}.vr-header h2{font-size:30px;letter-spacing:-.04em;max-width:900px}.vr-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#4d7866;font-weight:800}.vr-meta{font-size:12px;color:var(--muted);overflow-wrap:anywhere}.vr-header-actions{display:flex;gap:8px;flex-wrap:wrap;flex-shrink:0}
.vr-context{background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px;margin-bottom:18px;display:flex;gap:14px;flex-wrap:wrap;align-items:end}.vr-context label{display:grid;gap:5px;font-size:11px;font-weight:650}.vr-context label:first-child{flex:1;min-width:220px}.vr-context p{flex-basis:100%;margin:0}.vr-context input{width:100%}
.vr-workspace{display:grid;grid-template-columns:minmax(340px,.94fr) minmax(620px,1.8fr);gap:22px;align-items:start}.vr-page{position:sticky;top:16px;min-width:0}.vr-shell{border:1px solid #cedbd4;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 5px 25px #233e4210}.vr-toolbar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:9px;border-bottom:1px solid var(--line);font-size:12px}.vr-toolbar label{display:flex;gap:5px;align-items:center}.vr-toolbar .vr-spacer{flex:1}.vr-toolbar button,.vr-toolbar select{font-size:11px;padding:5px 7px}.vr-address{display:flex;justify-content:space-between;padding:6px 10px;font-size:10px;gap:10px;overflow-wrap:anywhere;color:var(--muted)}
.vr-page-body{display:flex;align-items:start;background:#e6ece8}.vr-scroll{height:calc(100vh - 280px);min-height:440px;max-height:1050px;flex:1;min-width:0;overflow:auto;scrollbar-width:none;overscroll-behavior:contain;overflow-anchor:none}.vr-scroll::-webkit-scrollbar{display:none}.vr-screen{position:relative;margin:0 auto;isolation:isolate}.vr-screen>img{display:block;width:100%;height:auto}.vr-layer{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.vr-layer rect{pointer-events:all;cursor:pointer}.vr-layer polyline{pointer-events:none}.vr-pin{position:absolute;z-index:3;transform:translate(-50%,-50%);border:3px solid #fff!important;border-radius:50%!important;background:#b43c3b!important;color:white!important;width:29px;height:29px;padding:0!important;font-size:11px!important;font-weight:800;box-shadow:0 2px 5px #0007}.vr-pin[data-severity=warning]{background:#a65e12!important}.vr-pin[data-severity=info]{background:#3267a0!important}.vr-pin[aria-current=true]{outline:3px solid #ffc763;z-index:4}
.vr-frame{position:absolute;left:0;width:100%;border:2px dashed #ecba54;pointer-events:none;z-index:2;background:linear-gradient(transparent 99%,#ecba5420)}.vr-frame span{position:absolute;bottom:0;right:0;background:#163e4ee8;color:#fff;font-size:9px;padding:2px 5px}.vr-mini-rail{width:64px;flex:none;display:flex;justify-content:center;padding:0 4px;background:#eff3f0;overflow:hidden}.vr-minimap{position:relative;cursor:grab;touch-action:none;user-select:none;flex:none}.vr-minimap.dragging{cursor:grabbing}.vr-minimap img{width:100%;height:100%;display:block;pointer-events:none}.vr-mini-window{position:absolute;left:0;width:100%;border:2px solid #ba821b;background:#e8b54335;pointer-events:none;box-shadow:0 0 0 1px #fff8}.vr-page-foot{padding:9px 10px;font-size:11px;color:var(--muted);border-top:1px solid var(--line)}.vr-page-foot strong{color:#234c3c}.vr-page-foot p{margin:2px 0}.vr-legend{display:inline-block;width:75px;height:7px;border-radius:4px;background:linear-gradient(90deg,#5c9bd7,#77bc8a,#efc35b,#e56e45);margin-right:7px}
.vr-analysis{min-width:0}.vr-lenses{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:12px}.vr-lenses button{border-radius:20px;font-size:12px;padding:5px 12px}.vr-tabs{display:flex;gap:15px;overflow:auto;border-bottom:1px solid #ccd9d1;margin-bottom:16px;scrollbar-width:thin}.vr-tabs button{white-space:nowrap;border:0;border-radius:0;background:none!important;color:#64766b!important;padding:8px 0 11px;font-size:12px;font-weight:650}.vr-tabs button[aria-selected=true]{color:#1b6248!important;border-bottom:3px solid #267957}
.vr-scores{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:16px}.vr-score{padding:13px;background:#fff;border:1px solid var(--line);border-radius:9px}.vr-score h3{font-size:11px;color:#556e60;letter-spacing:.01em}.vr-score strong{font-size:29px;letter-spacing:-.06em}.vr-score small{font-size:12px;color:var(--muted);margin-left:3px}.vr-score p{font-size:10px;color:var(--muted);margin:4px 0 0}.vr-score-meter{height:4px;background:#e3ebe6;border-radius:4px;margin:6px 0;overflow:hidden}.vr-score-meter span{display:block;height:100%;background:#36805f}
.vr-overview{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.vr-path{display:grid;gap:7px}.vr-path button{text-align:left;background:#eaf0f3;border-color:transparent;display:flex;gap:9px;padding:10px}.vr-path button[aria-current=true]{border-color:#80a997;background:#e4f1e9}.vr-number{height:23px;width:23px;display:inline-grid;place-items:center;flex:none;background:#ba4240;border:2px solid #fff;border-radius:50%;color:#fff;font-size:11px;font-weight:750}.vr-path strong{font-size:12px;display:block}.vr-path small{font-size:11px;display:block;color:#5e7073;margin-top:3px}.vr-issues{display:grid;gap:10px}.vr-group{padding:13px;border-radius:9px;background:#e8effb}.vr-group.high{background:#fbe3e5}.vr-group.warning{background:#fff0dc}.vr-group h4{font-size:14px}.vr-group ul{padding-left:18px;margin:0}.vr-group li{margin:6px 0;font-size:12px}.vr-group button{border:0;padding:0;background:none;color:inherit;text-align:left;font-size:12px}
.vr-section{margin:18px 0;background:#fff;border:1px solid var(--line);border-radius:9px;padding:16px}.vr-section h3{font-size:18px;letter-spacing:-.02em}.vr-detail{border:1px solid #cfdfd5;border-radius:8px;background:#f0f7f3;padding:13px;margin-top:13px}.vr-detail summary{font-size:12px;font-weight:750;cursor:pointer}.vr-detail>p{font-size:12px;margin-top:10px}.vr-callout{border:1px solid #e2d0b0;border-left:3px solid #9d6d23;background:#fff7e8;border-radius:6px;padding:10px 11px;margin-top:10px;font-size:12px}.vr-callout.verify{border-color:#c8d9e8;border-left-color:#326fa1;background:#edf5fc}.vr-callout h4{font-size:12px;display:flex;gap:8px;align-items:center;margin-bottom:6px;color:#815717}.vr-callout.verify h4{color:#2b608d}.vr-callout svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;flex:none}.vr-callout p{margin:0 0 0 26px;line-height:1.55}.vr-section-row{display:grid;grid-template-columns:70px 1fr 1.15fr;gap:10px;align-items:center;width:100%;text-align:left;margin-top:6px;border-color:#e0e7e3!important;font-size:11px!important}.vr-thumbnail{height:43px;overflow:hidden;background:#eef2f0;position:relative}.vr-thumbnail img{position:absolute;width:100%;max-width:none;height:auto;left:0}.vr-section-row strong{font-size:12px}.vr-section-row small{color:var(--muted)}
.vr-evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.vr-evidence-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:12px}.vr-evidence-card h4{font-size:13px}.vr-evidence-card p{font-size:12px;color:var(--muted)}.vr-rule{border:1px solid var(--line);background:#fff;border-radius:7px;padding:12px;margin:8px 0}.vr-rule summary{display:flex;gap:8px;justify-content:space-between;cursor:pointer;font-size:12px;font-weight:650}.vr-rule p{font-size:12px;margin:9px 0}.vr-rule .vr-badge{font-size:10px;border-radius:12px;padding:2px 7px;background:#fff0dc;white-space:nowrap}.vr-rule.pass .vr-badge{background:#e5f1e9}.vr-rule.unassessed .vr-badge{background:#edf0f2}.vr-settings{display:grid;grid-template-columns:1fr 1fr;gap:12px;background:#fff;border:1px solid var(--line);padding:14px;border-radius:9px}.vr-settings label{display:grid;font-size:12px;gap:5px}.vr-settings input{width:100%}.vr-reading-list{max-height:490px;overflow:auto;display:grid;gap:5px;margin:12px 0}.vr-reading-list button{text-align:left;font-size:12px;display:flex;gap:9px;align-items:start}.vr-reading-list button[aria-current=true]{background:#e6f1eb;border-color:#8db49e}.vr-reading-list small{color:var(--muted)}.vr-story{display:grid;gap:10px;background:#fff;border:1px solid var(--line);border-radius:9px;padding:14px}.vr-story label{font-size:12px;display:grid;gap:4px}.vr-strengths{margin:16px 0;font-size:12px}.vr-strengths summary{cursor:pointer;font-weight:650}.vr-message{padding:12px;background:#fff0dc;border:1px solid #ebd5af;border-radius:8px;font-size:12px;margin-bottom:12px}.vr-empty{font-size:12px;color:var(--muted);padding:12px 0}.vr-footer{font-size:11px;color:var(--muted);margin-top:16px}.visual-report details>summary{list-style-position:inside}
body.visual-mode .intro,body.visual-mode .input-card,body.visual-mode #empty-state,body.visual-mode #report{display:none!important}body.visual-mode main{max-width:none;padding:0 20px}body.visual-mode .workspace{display:block;max-width:none;margin:16px auto}body.visual-mode .topbar{position:static}body.visual-mode .visual-report{display:block}
@media(min-width:1700px){.vr-workspace{grid-template-columns:minmax(430px,1fr) minmax(800px,1.8fr)}}
@media(max-width:1100px){.vr-workspace{grid-template-columns:minmax(300px,.9fr) minmax(400px,1.2fr)}.vr-overview{grid-template-columns:1fr}.vr-header h2{font-size:25px}.vr-scores{gap:6px}.vr-score{padding:10px}}
@media(max-width:760px){.visual-report{padding:12px}.vr-workspace{display:block}.vr-page{position:relative;top:auto;margin-bottom:18px}.vr-scroll{height:65vh;min-height:350px}.vr-header{display:block}.vr-header-actions{margin-top:10px}.vr-context{gap:10px}.vr-overview{grid-template-columns:1fr}.vr-evidence-grid{grid-template-columns:1fr}.vr-settings{grid-template-columns:1fr}.vr-scores{grid-template-columns:1fr 1fr}.vr-scores>div:last-child{grid-column:1/-1}.vr-section-row{grid-template-columns:60px 1fr}.vr-section-row>small{grid-column:2}.visual-report .vr-callout p{margin-left:0}body.visual-mode main{padding:0 4px}}
@media(prefers-reduced-motion:no-preference){.vr-frame{animation:vr-pulse 2s ease-in-out infinite}@keyframes vr-pulse{50%{border-color:#f6d998}}}
@media print{.topbar,body>footer,.vr-header-actions,.vr-context,.vr-toolbar,.vr-mini-rail,.vr-tabs,.vr-lenses{display:none!important}body.visual-mode main{padding:0}.visual-report{padding:0;max-width:none}.vr-workspace{display:grid;grid-template-columns:30% 68%;gap:2%}.vr-page{position:static}.vr-scroll{height:auto!important;max-height:none;min-height:0;overflow:visible}.vr-tail,.vr-frame{display:none}.vr-page-foot{font-size:8px}.vr-overview{display:block}.vr-group,.vr-detail,.vr-callout,.vr-section-row{break-inside:avoid}.vr-analysis{font-size:10px}.vr-panel[hidden]{display:block!important}.vr-panel{margin-bottom:20px}.vr-reading-list{max-height:none}.vr-panel[data-panel=task],.vr-panel[data-panel=rules]{display:none!important}.vr-scores{grid-template-columns:1fr 1fr 1fr}}

.visual-report [hidden]{display:none!important}.vr-lens-guide{border:1px solid #cbded3;background:#edf5f0;padding:16px;border-radius:9px;margin:12px 0}.vr-lens-guide h3{font-size:19px}.vr-lens-guide>p{font-size:12px;line-height:1.65}.vr-lens-guide ol{display:flex;flex-wrap:wrap;gap:8px 22px;padding-left:22px;margin:12px 0 0}.vr-lens-guide button{font-size:11px;text-align:left}.vr-policy{padding:16px;background:white;border:1px solid var(--line);border-radius:9px}.vr-policy>label{display:block;font-weight:650;font-size:13px;margin:14px 0 7px}.vr-policy>select{max-width:100%;width:100%}.vr-policy p,.vr-policy table{font-size:12px;line-height:1.65}.vr-policy details{margin:14px 0}.vr-policy summary{cursor:pointer;font-weight:650}.vr-policy-table{overflow:auto}.vr-policy table{border-collapse:collapse;width:100%;min-width:500px;margin:10px 0}.vr-policy th,.vr-policy td{text-align:left;vertical-align:top;border:1px solid var(--line);padding:10px}.vr-policy small{display:block;font-weight:400;margin-top:6px}.vr-policy a{overflow-wrap:anywhere}
