:root{color-scheme:dark light;--bg:#0d0f17;--bg-raised:#151824;--panel:#fbfbfe;--panel-soft:#f1f1f8;--ink:#222533;--ink-soft:#656a7d;--muted:#969aaa;--line:#e2e2ec;--dark-line:#2a2d3d;--accent:#9277ff;--accent-deep:#6e4de5;--cyan:#64d6e7;--shadow:0 18px 65px #00000019;--radius:20px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 83% 0,#31234630,transparent 45%),var(--bg);color:#f3f3fa;font-size:14px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,canvas:focus-visible{outline:3px solid var(--accent);outline-offset:4px}button{transition:background .16s,border-color .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}h1,h2,h3,h4,p,ol{margin:0}h1,h2,h3,h4{font-weight:650}h1{letter-spacing:-1.4px;font-size:36px;line-height:1.18}h2{letter-spacing:-.35px}hr{border:0;border-top:1px solid var(--line);margin:24px 0}.hidden{display:none!important}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.break-anywhere{overflow-wrap:anywhere}.muted{font-size:12px;line-height:1.7;color:var(--ink-soft)}.skip-link{position:fixed;top:12px;left:120px;transform:translateY(-150px);padding:12px 20px;border-radius:10px;background:var(--panel);color:var(--ink);z-index:300}.skip-link:focus{transform:none}
.shell{min-height:100vh}.sidebar{position:fixed;top:0;bottom:0;left:0;display:flex;flex-direction:column;width:106px;padding:26px 12px 18px;border-right:1px solid #262936;background:#10121bea;z-index:50}.brand{display:flex;justify-content:center;text-decoration:none}.brand-mark{width:48px;height:48px;display:grid;place-items:center;background:linear-gradient(145deg,#ac95ff,#6a48d2);color:white;border-radius:15px;box-shadow:0 6px 24px #7a51eb35}.brand-mark svg{width:27px;height:27px;stroke-width:1.65}.brand>span:last-child{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.nav-label{font-size:8px;color:#696e84;letter-spacing:1px;text-align:center;margin:27px -3px 16px}.sidebar nav{display:grid;gap:10px}.nav-item{position:relative;border:1px solid transparent;background:none;color:#8d92a8;border-radius:14px;padding:12px 5px;display:flex;flex-direction:column;gap:8px;align-items:center;width:100%;font-size:10px;line-height:1.4;min-height:72px;text-align:center}.nav-item svg{width:21px;height:21px}.nav-item:hover{background:#1d2030;color:#e8e8f2}.nav-item.active{background:#282139;border-color:#42305c;color:#c2adff}.nav-count{position:absolute;top:8px;right:10px;border-radius:10px;padding:1px 5px;min-width:16px;background:#3d3157;color:#d9ccfa;font-size:8px}.nav-guide{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;font-size:9px;line-height:1.5;color:#9096ad;text-decoration:none;padding:15px 2px;margin-top:22px}.nav-guide svg{width:18px;height:18px}.nav-guide:hover{color:#d3c7fa}.sidebar-bottom{margin-top:auto;padding-top:20px}.private-note{display:none}.sidebar-footer{display:flex;flex-direction:column;align-items:center;gap:12px;border-top:1px solid #272a39;padding-top:15px;color:#8990a7;font-size:9px;text-align:center;line-height:1.5}.icon-btn{border:0;background:none;color:inherit;width:34px;height:34px;border-radius:9px;display:grid;place-items:center;padding:7px}.icon-btn:hover{background:#272a3d}.sidebar-footer .icon-btn{color:#969cb2}.sidebar-footer .icon-btn:hover{color:#e7dafd;background:#30233e}main{margin-left:106px;min-height:100vh}.topbar{height:72px;padding:0 46px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #222533;color:#9298ad;font-size:12px}.breadcrumb{display:flex;align-items:center;gap:14px}.breadcrumb strong{color:#f4f3fc;font-size:15px;letter-spacing:-.3px}.breadcrumb>span:first-of-type{color:#484d62}.local-status{display:flex;align-items:center;gap:9px;font-size:11px;color:#a4aabb}.status-dot{display:block;width:6px;height:6px;border-radius:50%;background:#74d2bc;box-shadow:0 0 14px #6fdac050}.content{max-width:1510px;margin:0 auto;padding:37px 46px 24px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:28px}.page-heading p{font-size:13px;color:#979db2;max-width:680px;margin-top:13px;line-height:1.75}.page-heading>div{min-width:0}.eyebrow{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:650;letter-spacing:1.65px;color:#a19aaf;margin-bottom:12px}.accent-dot{display:inline-block;width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#ad8aff;box-shadow:0 0 10px #9c74ef55}.start-heading{align-items:center;margin-bottom:29px}.start-heading h1{font-size:clamp(35px,3.4vw,51px);line-height:1.12;letter-spacing:-2px}.start-heading h1>span{color:#b49aff}.start-heading p{max-width:660px}.start-heading>.btn{align-self:flex-start;margin-top:37px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;border:1px solid transparent;border-radius:10px;font-weight:550;font-size:12px;line-height:1.5;text-decoration:none;white-space:nowrap}.btn svg{width:16px;height:16px}.btn.primary{background:var(--accent-deep);color:white;border-color:var(--accent-deep);box-shadow:0 6px 15px #6c42ce22}.btn.primary:hover{background:#5e3cd7;border-color:#5e3cd7}.btn.secondary{background:#1c1e2b;border-color:#333645;color:#d9dbe8}.btn.secondary:hover{background:#27283b;border-color:#665781}.scan-panel .btn.secondary,.context-card .btn.secondary,.finding-detail .btn.secondary,.history-row .btn.secondary,dialog .btn.secondary{background:#fff;border-color:#dcdce9;color:#57576e}.scan-panel .btn.secondary:hover,.finding-detail .btn.secondary:hover,.history-row .btn.secondary:hover,dialog .btn.secondary:hover{background:#f0ecfc;border-color:#baa7ec;color:#5c3bb4}.btn.plain{background:transparent;color:#72648f;border-color:transparent}.btn.plain:hover{background:#eee7f9}.btn.small{font-size:11px;padding:8px 12px}.workflow-steps{display:flex;align-items:center;gap:35px;list-style:none;color:#858ca0;margin-bottom:23px;font-size:11px}.workflow-steps li{display:flex;align-items:center;gap:9px}.workflow-steps li>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid #34384a;font-size:10px;color:#8c92a6}.workflow-steps .current{color:#cab5ff}.workflow-steps .current>span{background:#342541;border-color:#685080;color:#d9c6ff}.mode-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:21px}.mode{display:flex;align-items:center;gap:12px;text-align:left;min-width:0;border:1px solid #2e3143;border-radius:13px;background:#171a25;color:#a3a8bd;padding:16px 18px;min-height:78px}.mode svg{width:23px;height:23px;color:#9292ac}.mode>span{min-width:0}.mode strong{display:block;color:#c7c9da;font-size:13px;font-weight:600}.mode small{display:block;font-size:10px;line-height:1.5;margin-top:4px;color:#898fa5}.mode:hover{border-color:#62507a;background:#201c2e}.mode.active{background:#282137;border-color:#79618e;box-shadow:inset 0 0 0 1px #9c7acc18}.mode.active svg{color:#c1a4ff}.mode.active strong{color:#f3eafa}.mode.active small{color:#b19bc7}.start-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:25px;align-items:start}.scan-panel{color:var(--ink);background:var(--panel);border:1px solid #ededf5;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);min-width:0}.panel-title{display:flex;align-items:center;gap:13px;margin-bottom:22px}.panel-title h2{font-size:18px;color:#292536;line-height:1.5}.panel-title p{font-size:12px;line-height:1.7;color:#777184;margin-top:4px}.step-number{width:37px;height:37px;display:grid;place-items:center;border:1px solid #ded5ee;background:#f1ebfc;border-radius:12px;color:#8660b9;font:11px/1 ui-monospace,SFMono-Regular,monospace;flex-shrink:0}.sub-tabs{display:flex;gap:5px;padding:4px;border:1px solid #e3dfea;background:#f0edf6;border-radius:10px;margin-bottom:20px;width:max-content;max-width:100%}.sub-tabs button{padding:7px 14px;border:0;border-radius:7px;background:transparent;color:#82798f;font-size:11px}.sub-tabs button.active{background:#fff;color:#4d3474;box-shadow:0 2px 7px #3424450d}label:not(.check-label){display:block;color:#6b6578;font-size:11px;font-weight:550;margin:17px 0 8px}input,select,textarea{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #dad5e6;background:#fff;color:#3c364a;border-radius:9px;padding:11px 12px;font-size:12px;line-height:1.6}input::placeholder,textarea::placeholder{color:#aca5b6}textarea{resize:vertical;min-height:165px;font:12px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace}select{appearance:auto;padding-right:8px}input:focus,select:focus,textarea:focus{border-color:#b498dc;outline-offset:2px}.target-field{display:flex;align-items:center;gap:10px;border:1px solid #d8d0e4;background:white;border-radius:11px;padding:0 6px 0 13px}.target-field>svg{width:17px;height:17px;color:#b09abd}.target-field input{border:0;background:transparent;outline:none;border-radius:10px;padding:13px 0;font:12px/1.7 ui-monospace,SFMono-Regular,monospace}.target-field .icon-btn{color:#b4a8bf}.target-field .icon-btn:hover{background:#f1ebf8;color:#775098}.target-field:focus-within{outline:3px solid #cbb5eb44;border-color:#ac8fce}.pick-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:11px 0 21px}.pick-actions>span{font-size:10px;color:#a091aa}.pick-actions .btn{font-size:10px;padding:7px 9px}.check-label{display:flex;align-items:flex-start;gap:10px;font-size:12px;color:#60566e;line-height:1.7;margin:17px 0;cursor:pointer}.check-label input{width:15px;height:15px;margin:4px 0 0;accent-color:var(--accent-deep);flex-shrink:0;padding:0;cursor:pointer}.check-label small{display:block;color:#8a7d99;font-size:11px;line-height:1.8;margin-top:3px}.profile-section{border-top:1px solid #e3ddeb;margin-top:25px;padding-top:23px}.profile-section .panel-title{margin-bottom:13px}.profile-section select{background:#faf8fe}.profile-callout{display:flex;gap:11px;border:1px solid #e2d8f0;background:#f3edf9;border-radius:11px;padding:13px;margin-top:13px;color:#9a75bd}.profile-callout svg{width:16px;height:16px;margin-top:4px}.profile-callout p{font-size:11px;line-height:1.85;color:#826596}.engine-availability{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px}.engine-availability:empty{display:none}.engine-pill{display:inline-flex;align-items:center;gap:5px;font-size:9px;padding:3px 7px;border:1px solid #dfd7e9;color:#968b9f;border-radius:5px}.engine-pill.ready{color:#577b73;border-color:#ccded6;background:#f2f8f4}.engine-pill svg{width:11px;height:11px}details>summary{cursor:pointer;list-style:revert;line-height:1.7}summary:focus-visible{border-radius:4px}.technical-config{border-top:1px solid #e6deed;margin-top:22px;padding-top:17px}.technical-config>summary{font-size:12px;font-weight:550;color:#7c688d}.advanced{padding-top:3px}.technical-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.technical-options select{font-size:11px}.technical-options label{font-size:10px}.manual-engines{margin:18px 0;padding:16px;border:1px solid #ded1e9;border-radius:11px;background:#f9f5ff}.manual-engines h3{font-size:12px;color:#715684}.manual-engines>p{font-size:11px;line-height:1.8;color:#9584a3;margin-top:8px}.manual-engines .check-label{margin:13px 0}.scan-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #e4ddec;margin-top:25px;padding-top:22px}.scan-footer>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#94829e;line-height:1.7}.scan-footer>span svg{width:12px;height:12px}.scan-footer>.btn{min-width:175px;min-height:45px}.start-context{min-width:0;display:grid;gap:20px}.context-card{background:#fbfaff;color:#655672;border:1px solid #e5deed;border-radius:var(--radius);padding:25px;min-width:0}.context-card h2{font-size:18px;color:#463353}.context-card h3{font-size:13px;color:#685079}.context-card p{font-size:12px;line-height:1.85;color:#8d799b;margin-top:9px}.context-card .eyebrow{color:#a388b6}.start-proof{display:flex;align-items:flex-start;gap:16px;background:#171a26;border-color:#2f2b3e;color:#b9adc8;padding:23px}.start-proof h3{color:#d4c7e5;font-size:14px}.start-proof p{color:#9e91ae;font-size:11px}.proof-symbol{width:38px;height:38px;display:grid;place-items:center;border:1px solid #574164;border-radius:12px;background:#2b2135;color:#be9dd8;flex-shrink:0}.proof-symbol svg{width:20px;height:20px}.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0 40px}.method-grid>div{position:relative;padding-left:46px}.method-grid h3{font-size:12px;font-weight:550;color:#c7c0d4;margin:3px 0 7px}.method-grid p{font-size:11px;color:#92859f;line-height:1.85}.method-icon{display:grid;place-items:center;width:33px;height:33px;border:1px solid #5b4264;color:#b28ec1;background:#291f31;border-radius:11px}.method-icon svg{width:17px;height:17px}.method-grid .method-icon{position:absolute;left:0;top:0}.dragover,.drag-over{border-color:#9e77d8!important;box-shadow:0 0 0 4px #9d71d62b!important}.notice{display:flex;gap:12px;align-items:flex-start;background:#19202b;border:1px solid #34434e;color:#acbdc8;font-size:12px;line-height:1.9;border-radius:13px;padding:15px 18px;margin-bottom:18px;overflow-wrap:anywhere}.notice svg{width:17px;height:17px;margin-top:3px}.notice.warn{background:#29221e;border-color:#65513c;color:#c4ad8c}.notice.danger{background:#321f2b;border-color:#684056;color:#d9a7bd}.scan-panel .notice{background:#f3f0fa;color:#7d678e;border-color:#e0d6ed;font-size:11px}.settings-panel .notice{display:block}.progress-title{display:flex;align-items:center;gap:17px}.progress-title>div:not(.spinner){flex:1;min-width:0}.progress-title h2{font-size:18px;color:#51415f}.progress-title p{font-size:11px;color:#a08aa8;margin-top:5px}.spinner{width:29px;height:29px;border:2px solid #e5d8ef;border-top-color:#9070bd;border-radius:50%;animation:spin 1.1s linear infinite}progress{appearance:none;width:100%;height:5px;display:block;border:0;border-radius:6px;overflow:hidden;margin:22px 0 16px;background:#e8dfee}progress::-webkit-progress-bar{background:#e8dfee}progress::-webkit-progress-value{background:linear-gradient(90deg,#9d78d0,#7855bc)}progress::-moz-progress-bar{background:#8e64c5}@keyframes spin{to{transform:rotate(360deg)}}.report-context{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#91869c;font-size:10px;margin:0 0 16px}.version-badge,.profile-badge{font-size:10px;padding:4px 8px;border-radius:6px;border:1px solid #4f3b5e;background:#271d33;color:#c0a4d5}.version-badge.older{border-color:#614e36;background:#2d271e;color:#bba57f}.profile-badge{background:#1e2330;border-color:#384050;color:#9aabc3}.metrics{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:14px;margin:20px 0}.metrics>div{position:relative;border:1px solid #373242;background:linear-gradient(145deg,#211c2d,#191922);border-radius:14px;padding:19px 22px}.metrics small{font-size:11px;color:#a597b7;display:block}.metrics strong{display:block;font-size:34px;line-height:1.45;color:#e8dcf6;letter-spacing:-1px;font-weight:500}.metrics>div>span{font-size:10px;color:#7f748c}.metrics .metric-primary{border-color:#685083;background:linear-gradient(145deg,#362340,#201b2e)}.metrics .metric-primary strong{color:#d5b9ff}.plan-panel{border:1px solid #37303e;background:#161620;border-radius:16px;padding:21px;margin:20px 0}.plan-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}.plan-heading h2{font-size:14px;color:#cec1d7;letter-spacing:0}.plan-heading p{font-size:11px;line-height:1.8;color:#8e7c9d;margin-top:5px}.coverage-link,.plan-gaps button{border:0;background:transparent;color:#b096c5;font-size:11px;padding:0}.coverage-link svg{width:12px;height:12px;margin-left:5px;vertical-align:middle}.stage-list{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.stage-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #38493f;background:#1a2924;color:#95bea9;font-size:10px;padding:5px 8px;border-radius:6px;line-height:1.6}.stage-chip svg{width:12px;height:12px}.stage-chip.partial,.stage-chip.failed{background:#322820;border-color:#634e39;color:#cab084}.stage-chip.not_applicable,.stage-chip.off,.stage-chip.not_checked,.stage-chip.not_run{color:#8e809a;background:#211e29;border-color:#3f344a}.plan-gaps{display:flex;align-items:flex-start;gap:9px;padding-top:12px;border-top:1px solid #302839;color:#a690b8}.plan-gaps>svg{width:15px;height:15px;margin-top:3px}.plan-gaps p{font-size:11px;line-height:1.8;color:#9c89aa}.plan-gaps button{text-decoration:underline;text-underline-offset:3px}.report-toolbar{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:31px 0 19px}.report-toolbar h2{font-size:22px;color:#e4d5ec;letter-spacing:-.55px}.report-toolbar p{font-size:12px;color:#9a85a7;line-height:1.8;margin-top:6px}.exports{display:flex;gap:7px}.assessment-shortcuts{display:flex;gap:7px;margin-bottom:17px;flex-wrap:wrap}.assessment-shortcuts button{border:1px solid #3a2c46;background:#1c1726;color:#a78abb;font-size:11px;padding:8px 13px;border-radius:8px;display:flex;align-items:center;gap:9px}.assessment-shortcuts button>span{font-size:10px;background:#31223e;padding:1px 6px;border-radius:4px;color:#9e7cb8}.assessment-shortcuts button.active{color:#dcc2f4;border-color:#8e65ad;background:#3e274d}.assessment-shortcuts button.active>span{background:#5d3972;color:#e5d0f6}.filters{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-bottom:15px}.search-field{display:flex;align-items:center;gap:9px;flex:1;min-width:160px;border:1px solid #4a355b;border-radius:9px;padding:0 11px;background:#21182c;color:#9770b3}.search-field svg{width:16px;height:16px}.search-field input{color:#d5bde5;border:0;background:transparent;padding:10px 0;font-size:12px}.search-field input::placeholder{color:#8f73a2}.filters select{background:#21182c;border-color:#4a355b;color:#b998cd;width:auto;max-width:220px;font-size:11px;padding:10px 8px}.filters>span{font-size:10px;color:#9c7eae;white-space:nowrap}.technical-summary{display:flex;align-items:center;gap:15px;flex-wrap:wrap;font-size:10px;line-height:1.8;color:#9375a7;margin:10px 0 20px}.technical-summary strong{font-weight:550;color:#b79bc9}.results-grid{display:grid;grid-template-columns:minmax(275px,.75fr) minmax(0,1.45fr);gap:20px;align-items:start}.finding-column{min-width:0}.list-heading{display:flex;justify-content:space-between;align-items:center;gap:13px;font-size:10px;letter-spacing:.1px;color:#a084b1;margin:0 2px 11px}.findings-list{display:grid;gap:9px;max-height:760px;overflow:auto;padding:2px 3px 3px 0;scrollbar-color:#67507b transparent}.finding-row{display:block;width:100%;text-align:left;border:1px solid #ded2e8;background:#fcfaff;color:#695078;border-radius:13px;padding:17px 18px;min-width:0;box-shadow:0 4px 10px #0502090c}.finding-row:hover{background:#f7f0fc;border-color:#b49ac8}.finding-row.selected{background:#f5eefc;border-color:#b194cc;box-shadow:inset 3px 0 #9867c1}.badge{display:inline-block;font-size:9px;font-weight:600;border-radius:5px;padding:3px 6px;margin-right:9px;border:1px solid}.badge.critical{background:#fae8f0;border-color:#edd0dc;color:#a4486b}.badge.high{background:#fcf0e8;border-color:#f0dbc9;color:#a86c45}.badge.medium{background:#f8f4db;border-color:#e9ddad;color:#978645}.badge.low{background:#eef2fd;border-color:#d6ddef;color:#657fa3}.badge.informational{background:#f0eef4;border-color:#ddd7e6;color:#8c7b9b}.rule-label{font-size:10px;color:#a28aaF}.finding-row h3{font-size:13px;line-height:1.6;font-weight:650;margin:10px 0 8px;color:#4a335b;letter-spacing:-.1px}.finding-row p{font:10px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;color:#9a7cae;overflow-wrap:anywhere}.finding-row .finding-endpoint{font-size:9px;margin-top:3px;color:#9270aa}.assessment-label{display:block;font-size:10px;color:#8c739e;margin:6px 0}.patch-label{display:inline-block;font-size:9px;border:1px solid #d3e4d8;color:#5f8c70;background:#f0f8f2;border-radius:4px;padding:2px 5px;margin-top:9px}.finding-detail{min-width:0;border:1px solid #dcd0e7;background:#fcfaff;border-radius:17px;padding:25px;color:#685278;box-shadow:var(--shadow)}.detail-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.finding-detail>h2{font-size:21px;font-weight:650;letter-spacing:-.45px;line-height:1.45;margin-top:17px;color:#442b57}.detail-location,.endpoint-label{font:11px/1.75 ui-monospace,SFMono-Regular,Consolas,monospace;color:#9471aa;overflow-wrap:anywhere;margin-top:9px}.assessment-note{display:block;border-color:#e0d1eb;background:#f2eaf9;color:#846495;padding:14px 16px;margin:18px 0;font-size:12px;line-height:1.8}.assessment-note strong{font-size:11px;color:#715084;font-weight:650}.assessment-note p{margin-top:5px}.verification{font-size:10px;color:#9b83ae;line-height:1.8}.detail-tabs{display:flex;gap:4px;flex-wrap:wrap;border-bottom:1px solid #e5d9ec;padding:8px 0 9px;margin:16px 0}.detail-tabs button{background:transparent;border:0;color:#9574aa;padding:8px 10px;border-radius:7px;font-size:11px}.detail-tabs button.active{background:#e9dbf5;color:#755091;font-weight:650}.detail-tabs button:hover{background:#f0e4f9}.detail-section h3{font-size:12px;letter-spacing:.1px;color:#7c5894;margin:21px 0 12px}.detail-section p{font-size:12px;line-height:1.85;color:#9678a9;margin:12px 0}.finding-detail pre,#coverage-content pre{max-width:100%;font:11px/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;background:#201728;color:#ccb2de;border:1px solid #4a315e;border-radius:10px;padding:14px;max-height:550px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}.source-code,.diff-code{white-space:pre!important;overflow-wrap:normal!important;padding:12px 0!important;font:12px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace!important;tab-size:4}.code-line,.diff-code>span{display:block;min-height:1.9em;padding:0 13px}.code-line b{display:inline-block;min-width:25px;text-align:right;margin-right:16px;color:#8e6fa6;font-weight:400;user-select:none}.code-line.focus{background:#694138;color:#f5d5ba;box-shadow:inset 3px 0 #e6a274}.code-line.focus b{color:#d39d7a}.diff-code .diff-add{color:#a8d4b9;background:#234434}.diff-code .diff-remove{color:#e4afc0;background:#582c43}.diff-code .diff-hunk{color:#c4ace0;background:#3a2555}.finding-detail details{margin:16px 0;font-size:12px;line-height:1.8}.finding-detail summary{font-size:11px;color:#8f6ba5}.detail-section ol{padding-left:19px;font-size:12px;color:#9473a7;line-height:1.9}.detail-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:20px}.detail-actions .btn{font-size:10px}.detail-engine{margin-top:18px;padding-top:13px;border-top:1px solid #e4d6ed;font-size:10px;color:#a58abb;overflow-wrap:anywhere}.detail-placeholder{min-height:270px;padding:36px;display:grid;place-items:center;text-align:center;color:#a286b4;font-size:12px;line-height:1.8}.patch-panel{margin-top:23px;padding-top:15px;border-top:1px solid #e2d2ec}.patch-panel h3{font:11px/1.8 ui-monospace,SFMono-Regular,monospace;color:#9270ac;margin:8px 0;overflow-wrap:anywhere}.patch-panel p{font-size:11px;line-height:1.8;color:#a68cbb;margin:9px 0}.patch-checks{display:flex;align-items:center;gap:13px;flex-wrap:wrap;font-size:10px;color:#9279a3}.pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#a486b8;padding-top:14px}.empty-state{border:1px dashed #715081;background:#261b31;color:#b093c2;border-radius:14px;padding:40px 24px;text-align:center;line-height:1.8}.empty-state svg{width:28px;height:28px;color:#b692ca;margin-bottom:13px}.empty-state h2{font-size:14px;color:#c5a2dc;margin-bottom:8px}.empty-state p{font-size:12px;color:#aa8cba}.coverage{border:1px solid #3e294d;border-radius:14px;background:#1d1525;color:#ae8cbe;padding:18px 23px;margin-top:25px}.coverage>summary{font-size:12px;color:#c19dda}.coverage[open]>summary{padding-bottom:17px;border-bottom:1px solid #4c315e}#coverage-content{padding-top:8px;font-size:12px;line-height:1.9;color:#ad8fc0}#coverage-content h3{font-size:14px;font-weight:600;color:#d0ade6;margin:25px 0 14px}#coverage-content h4{font-size:12px;color:#c5a0d8;margin:17px 0 10px}#coverage-content p{margin:11px 0}#coverage-content ul{padding-left:20px}#coverage-content li{margin:6px 0}#coverage-content .rule-label{font-size:9px;white-space:nowrap}.file-inventory{display:grid;gap:6px;max-height:340px;overflow:auto}.inventory-file{display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;border:1px solid #503263;border-radius:7px;background:#291b36;color:#c09bd8;padding:9px 11px;font:11px/1.8 ui-monospace,SFMono-Regular,monospace;overflow-wrap:anywhere}.inventory-file span{font-size:9px;color:#9473a8;white-space:nowrap}.http-record{border-top:1px solid #4a2c5d;margin-top:15px;padding-top:13px}.http-record summary{font-size:11px;overflow-wrap:anywhere}.settings-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(270px,1fr);gap:23px;align-items:start}.settings-panel .method-icon{background:#eee5fa;border-color:#dfcfef;color:#ad8abe}.settings-panel p{font-size:12px;color:#a18aae;line-height:1.85}.settings-panel .notice{margin:19px 0 14px;font-size:11px}.help-content{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:21px}.help-content article{background:#fbf8fe;border:1px solid #e3d3ed;border-radius:18px;padding:26px;color:#9a76ae;min-width:0}.help-content h2{font-size:18px;color:#77518f;margin:12px 0 16px}.help-content p{font-size:12px;color:#9d7cb3;line-height:1.9;margin:14px 0}.help-content strong{color:#895ba3}.help-content .method-icon{background:#f3e7fc;border-color:#e3ccef;color:#a479bb}.history-row{display:flex;align-items:center;gap:19px;border:1px solid #dbc8e8;background:#faf5fe;border-radius:15px;padding:21px 24px;margin-bottom:13px;min-width:0;color:#9c77b1}.history-icon{width:41px;height:41px;display:grid;place-items:center;background:#ebdaf5;border:1px solid #d6bde8;border-radius:12px;color:#a274bd;flex-shrink:0}.history-icon svg{width:19px;height:19px}.history-description{flex:1;min-width:0}.history-description>button{border:0;background:none;text-align:left;padding:0;font:12px/1.85 ui-monospace,SFMono-Regular,monospace;color:#8e61a8;overflow-wrap:anywhere}.history-description p{font-size:10px;color:#af8ac4;margin-top:7px;line-height:1.8}.history-description .version-badge{font-size:9px;padding:2px 5px;margin-right:6px;background:#eee0f7;color:#9471a8;border-color:#dac3ea}.history-description .version-badge.older{background:#f8f0e3;border-color:#e8d6b9;color:#b29b6c}.history-actions{display:flex;align-items:center;gap:14px}.history-number{font-size:10px;color:#a77dbd;white-space:nowrap}.history-number strong{font-weight:650;color:#9465ab}.delete-btn{color:#bc9bcf}.delete-btn:hover{color:#b56184;background:#f6e3ed}.ai-response{font-size:12px;line-height:1.9;color:#a083b4;white-space:pre-wrap;margin-top:15px}.flow-trace{list-style:none;padding:0;margin:17px 0}.flow-step{position:relative;padding:0 0 18px 25px;border-left:1px solid #d6bde6;margin-left:8px}.flow-step:last-child{padding-bottom:0;border-left-color:transparent}.flow-step::before{content:'';position:absolute;left:-5px;top:6px;width:9px;height:9px;border-radius:50%;background:#bd91d5;border:2px solid #fcf7ff}.flow-step.source::before{background:#53c7ce}.flow-step.sink::before{background:#e49b6c}.flow-step-label{display:flex;align-items:center;gap:9px;flex-wrap:wrap;font-size:11px;line-height:1.8;color:#a07fb1}.flow-step-label strong{font-size:11px;color:#9561ac;font-weight:600}.flow-source-button{border:0;background:none;padding:0;text-align:left;font:10px/1.8 ui-monospace,SFMono-Regular,monospace;color:#a375bc;overflow-wrap:anywhere;max-width:100%}.flow-source-button:hover{color:#71408b;text-decoration:underline}.flow-step pre{margin:8px 0 0;font-size:11px;padding:9px 11px}.main-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:34px;padding-top:19px;border-top:1px solid #33203e;font-size:9px;color:#846c92;line-height:1.8}.source-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.source-dialog-header h2{font-size:19px;color:#8b5ca4;overflow-wrap:anywhere}dialog{background:#fcf8ff;color:#8e66a3;border:1px solid #d6bde7;border-radius:18px;padding:26px;box-shadow:0 35px 130px #00000060;max-width:94vw;max-height:92vh}dialog::backdrop{background:#100c18bb;backdrop-filter:blur(7px)}#source-dialog{width:min(1150px,94vw)}#source-status{font-size:11px;margin:12px 0;color:#ac85be;overflow-wrap:anywhere}#source-full{font:12px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;background:#21162b;color:#d3afea;border:1px solid #583369;border-radius:11px;padding:15px;max-height:64vh;overflow:auto;white-space:pre}.toast{position:fixed;bottom:25px;left:calc(50% + 53px);transform:translateX(-50%);padding:14px 20px;border:1px solid #815293;background:#362043;color:#e7c6f8;border-radius:12px;box-shadow:0 12px 38px #04010666;font-size:12px;line-height:1.75;max-width:min(690px,90vw);z-index:200}
/* A data-backed, local 3D workbench. The accessible list never depends on WebGL. */
.visualization-report:empty{display:none}.visualization-report{margin:26px 0}.threat-map{min-width:0;border:1px solid #56425e;background:radial-gradient(ellipse at 45% 5%,#3c235345,transparent 65%),#15151f;border-radius:20px;overflow:hidden;box-shadow:0 15px 60px #00000017;padding:22px;color:#b597c5}.map-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.map-heading .eyebrow{color:#9e7db2;font-size:8px;margin-bottom:8px}.map-heading h2{font-size:22px;line-height:1.4;color:#e1c6ef;letter-spacing:-.6px}.map-badge{font-size:9px;white-space:nowrap;border:1px solid #664371;border-radius:6px;background:#35213f;color:#c29dd5;padding:4px 7px}.map-description{font-size:11px;line-height:1.85;color:#9d7cb0;margin-top:12px;max-width:660px}.map-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 0 8px}.map-modes{display:flex;gap:5px;padding:3px;border:1px solid #4d305c;border-radius:9px;background:#21142c}.map-modes button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#a07bb7;font-size:10px;border-radius:6px;padding:7px 9px;white-space:nowrap}.map-modes button.active{background:#523068;color:#e5c1fa}.map-modes svg{width:13px;height:13px;stroke-width:1.6}.map-icon-button{display:grid;place-items:center;border:1px solid #583468;background:#2c1938;color:#b68acf;width:30px;height:30px;border-radius:8px;padding:6px}.map-icon-button:hover{background:#482858;border-color:#90629e;color:#dec0ee}.map-icon-button[aria-pressed=true]{background:#674082;border-color:#a578ba;color:white}.map-icon-button svg{width:14px;height:14px}.map-layout{display:grid;grid-template-columns:minmax(0,1fr)}.map-viewport-wrap{min-width:0}.map-viewport{height:300px;position:relative;border:1px solid #47264f;border-radius:13px;overflow:hidden;background:radial-gradient(ellipse at 45% 50%,#65308025,transparent 75%),#120d1b;margin-top:8px}#map-canvas{display:block;width:100%;height:100%;cursor:grab;touch-action:none}#map-canvas.dragging{cursor:grabbing}.map-corner-label{position:absolute;left:12px;top:11px;display:flex;align-items:center;gap:6px;font:8px/1.5 ui-monospace,SFMono-Regular,monospace;color:#ab80c3;pointer-events:none}.map-corner-label .accent-dot{width:4px;height:4px}.map-navigation{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:9px;color:#8e639e;padding:9px 0 13px}.map-navigation>div{display:flex;gap:5px}.map-navigation .map-icon-button{width:26px;height:26px;padding:5px;border-radius:7px}.map-navigation svg{width:12px;height:12px}.map-inspector{padding:15px 0 10px;min-width:0;border-top:1px solid #43224e}.map-inspector .eyebrow{font-size:8px;color:#a273b6;margin-bottom:8px}.map-inspector h3{font-size:15px;line-height:1.6;color:#d7b2eb;letter-spacing:-.3px}.map-inspector>p{font-size:11px;line-height:1.85;color:#a279b5;margin:9px 0;overflow-wrap:anywhere}.map-selection-meta{display:flex;flex-wrap:wrap;gap:6px;font-size:9px;margin:12px 0}.map-selection-meta span{border:1px solid #5b326c;background:#2a1537;padding:3px 7px;border-radius:5px;color:#be8bd5}.map-selection-meta .map-evidence{color:#a5c5b8;border-color:#416859;background:#1d3b2c}.map-inspector .btn{font-size:10px;padding:7px 11px;background:#351a46;border-color:#6b3b80;color:#d4adeb}.map-trace{list-style:none;padding:0;margin:15px 0 0;max-height:250px;overflow:auto;scrollbar-color:#693b7f transparent}.map-trace li{position:relative;border-left:1px solid #693779;padding:0 0 12px 14px;margin-left:4px;font-size:10px;line-height:1.7;color:#b186c7}.map-trace li:last-child{padding-bottom:0;border-color:transparent}.map-trace li::before{content:'';position:absolute;top:5px;left:-4px;width:7px;height:7px;border-radius:50%;background:#ac68c7}.map-trace li.source::before{background:#64d6e7}.map-trace li.sink::before{background:#ee9b6a}.map-trace strong{font-size:9px;font-weight:550;color:#d0a7e4}.map-trace button{display:block;border:0;background:transparent;color:#b486cf;text-align:left;padding:3px 0;font:9px/1.7 ui-monospace,SFMono-Regular,monospace;overflow-wrap:anywhere;width:100%}.map-trace button:hover{color:#e0b3f6;text-decoration:underline}.map-trace code{display:block;color:#866093;font:9px/1.7 ui-monospace,SFMono-Regular,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.map-legend{display:flex;align-items:center;gap:13px;flex-wrap:wrap;border-top:1px solid #482451;padding-top:15px;margin-top:6px;font-size:8px;color:#9d76ab}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend b{display:block;width:5px;height:5px;border-radius:50%;flex-shrink:0}.legend-file{background:#ad83ea}.legend-actionable{background:#ed9b6d}.legend-review{background:#e5c17a}.legend-dismissed{background:#898294}.map-text-view{margin-top:17px}.map-text-view>summary{font-size:9px;color:#a47eb3}.map-node-list{display:grid;gap:5px;max-height:250px;overflow:auto;padding-top:10px}.map-node-list>p{font-size:10px;line-height:1.8;color:#9671a5}.map-node-list button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #5c346c;background:#291534;color:#c192d6;font-size:10px;text-align:left;border-radius:7px;padding:8px 10px;min-width:0;overflow-wrap:anywhere}.map-node-list button.selected{border-color:#ad70c4;background:#4e275e;color:#e6b9fb}.map-node-list button span{min-width:0}.map-node-list button small{font-size:8px;color:#9d6eae;white-space:nowrap}.map-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #3e1e47;font-size:8px;line-height:1.6;color:#916298}.map-footer span:first-child{max-width:70%;overflow-wrap:anywhere}.map-footer #map-status{color:#ad80bd}.map-fallback{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:35px;text-align:center;background:#1c1028;color:#b485cc;gap:10px}.map-fallback svg{width:37px;height:37px;color:#9c67b4;margin-bottom:10px}.map-fallback strong{font-size:14px;color:#d0a0e8}.map-fallback p{font-size:11px;line-height:1.8;max-width:290px;color:#aa7ab9}.report-map{padding:24px}.report-map .map-layout{grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:25px}.report-map .map-viewport{height:350px}.report-map .map-inspector{border-top:0;border-left:1px solid #46264f;padding:16px 0 0 24px;margin-top:8px}.report-map .map-description{max-width:800px}.report-map .map-trace{max-height:190px}.report-map .map-node-list{grid-template-columns:repeat(2,minmax(0,1fr))}.report-map .map-footer{font-size:9px}.map-unavailable #map-canvas{visibility:hidden}.map-unavailable .map-navigation .map-icon-button,.map-unavailable #map-motion{display:none}
/* Root-owned manual session access uses the same readable dialog treatment. */
.access-dialog{width:min(530px,94vw)}.access-dialog h2{color:#6b407f;font-size:24px;letter-spacing:-.5px}.access-dialog p{font-size:13px;color:#9970ac;line-height:1.85;margin:13px 0}.access-dialog label{font-size:12px;color:#8c62a2}.access-dialog input{font-family:ui-monospace,SFMono-Regular,monospace}.access-dialog .btn{margin-top:15px}.access-dialog .notice{color:#b37b8e;background:#f8e8ee;border-color:#e4bccb}.access-form{display:grid;gap:7px}
@media(min-width:1650px){.content{padding-top:44px}.start-heading h1{font-size:54px}.start-grid{gap:30px}.scan-panel{padding:32px}.map-viewport{height:350px}.report-map .map-viewport{height:380px}}
@media(max-width:1280px){.content{padding:30px 30px 22px}.topbar{padding:0 30px}.start-grid{grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:20px}.scan-panel{padding:24px}.mode{padding:14px;gap:9px}.mode small{font-size:9px}.mode strong{font-size:12px}.start-heading h1{font-size:39px}.threat-map{padding:18px}.map-viewport{height:280px}.map-heading h2{font-size:20px}.map-modes button{padding:6px;font-size:9px}.map-legend{gap:9px;font-size:7px}.technical-options{gap:8px}.technical-options label{font-size:9px}.technical-options select{font-size:10px}.results-grid{grid-template-columns:minmax(250px,.85fr) minmax(0,1.45fr)}.metrics>div{padding:18px}.report-map .map-layout{grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr)}.report-map .map-viewport{height:330px}}
@media(max-width:1080px){.sidebar{width:88px;padding:23px 8px}.brand-mark{width:42px;height:42px}.nav-item{font-size:9px;min-height:65px}.nav-label{font-size:7px}.nav-guide{font-size:8px}.sidebar-footer{font-size:8px}main{margin-left:88px}.topbar{height:64px;padding:0 24px}.content{padding:28px 24px 20px}.start-heading h1{font-size:35px}.start-heading p{font-size:12px}.start-heading>.btn{font-size:10px;padding:10px 12px}.start-grid{grid-template-columns:minmax(0,1fr) minmax(300px,.85fr);gap:17px}.scan-panel{padding:22px}.panel-title h2{font-size:16px}.panel-title p{font-size:11px}.mode{padding:12px 10px;gap:8px}.mode svg{width:18px;height:18px}.mode strong{font-size:11px}.mode small{font-size:8px}.pick-actions>span{font-size:9px}.pick-actions .btn{font-size:9px;padding:6px 7px}.target-field input{font-size:11px}.scan-footer{flex-direction:column;align-items:stretch;gap:14px}.scan-footer>.btn{width:100%;min-height:43px}.map-viewport{height:245px}.map-modes svg{width:11px;height:11px}.map-modes button{font-size:8px;gap:4px}.map-heading h2{font-size:19px}.map-badge{font-size:8px}.map-legend{font-size:7px;gap:8px}.metrics small{font-size:10px}.metrics strong{font-size:30px}.metrics>div>span{font-size:9px}.finding-detail{padding:22px}.finding-detail>h2{font-size:19px}.results-grid{grid-template-columns:minmax(235px,.8fr) minmax(0,1.35fr);gap:16px}.detail-tabs button{font-size:10px;padding:7px 8px}.report-map .map-layout{grid-template-columns:minmax(0,1.35fr) minmax(215px,1fr);gap:17px}.report-map .map-inspector{padding-left:17px}.report-map .map-viewport{height:330px}.toast{left:calc(50% + 44px)}.technical-options{grid-template-columns:1fr}.technical-options label{font-size:11px}.technical-options select{font-size:11px}}
@media(max-width:900px){.start-grid{grid-template-columns:minmax(0,1fr)}.start-context{grid-template-columns:1fr}.threat-map .map-layout{grid-template-columns:minmax(0,1.4fr) minmax(220px,1fr);gap:20px}.threat-map .map-inspector{border-top:0;border-left:1px solid #46264f;padding:16px 0 0 20px;margin-top:8px}.threat-map .map-viewport{height:310px}.threat-map .map-legend{font-size:9px;gap:15px}.start-proof{display:none}.start-heading h1{font-size:39px}.start-heading p{max-width:480px}.start-heading>.btn{font-size:10px}.technical-options{grid-template-columns:repeat(3,minmax(0,1fr))}.technical-options label{font-size:10px}.workflow-steps{gap:24px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.results-grid{grid-template-columns:minmax(0,1fr)}.findings-list{max-height:330px;grid-template-columns:repeat(2,minmax(0,1fr))}.finding-row h3{font-size:12px}.method-grid{gap:18px}.method-grid>div{padding-left:0}.method-grid .method-icon{position:static;margin-bottom:12px}.settings-grid{grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}.history-row{flex-wrap:wrap}.history-description{flex-basis:calc(100% - 62px)}.history-actions{margin-left:60px;flex:1;justify-content:space-between}.filters select{max-width:200px}.report-map .map-node-list{grid-template-columns:1fr}}
@media(max-width:680px){.sidebar{position:static;width:100%;display:flex;flex-direction:row;align-items:center;padding:11px 16px;border-right:0;border-bottom:1px solid #3e2549;gap:13px}.brand-mark{width:37px;height:37px;border-radius:11px}.brand-mark svg{width:23px;height:23px}.nav-label,.sidebar-bottom,.nav-guide>span{display:none}.sidebar nav{display:flex;flex:1;justify-content:flex-end;gap:4px}.nav-item{width:41px;min-height:37px;gap:0;padding:9px;border-radius:8px}.nav-item svg{width:17px;height:17px}.nav-item>span:not(.nav-count){position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden}.nav-count{font-size:7px;top:0;right:0;padding:1px 3px}.nav-guide{padding:0;margin:0;width:22px;gap:0}.nav-guide svg{width:17px;height:17px}main{margin-left:0}.topbar{height:49px;padding:0 19px;font-size:10px}.breadcrumb{gap:9px}.breadcrumb strong{font-size:12px}.local-status{font-size:8px;gap:5px}.content{padding:27px 19px 19px}.start-heading{display:block}.start-heading h1{font-size:35px;letter-spacing:-1.5px}.start-heading p{font-size:12px;max-width:none}.start-heading>.btn{margin-top:20px;font-size:11px}.eyebrow{font-size:8px;letter-spacing:1.2px}.page-heading{flex-wrap:wrap;align-items:flex-start;gap:18px}.page-heading h1{font-size:31px}.start-heading h1{font-size:35px}.page-heading>button{font-size:10px}.workflow-steps{gap:12px;justify-content:space-between;font-size:9px}.workflow-steps li{gap:5px}.workflow-steps li>span{width:19px;height:19px;font-size:8px}.mode-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.mode{padding:13px;gap:11px;min-height:72px}.mode strong{font-size:12px}.mode small{font-size:9px}.mode svg{width:20px;height:20px}.scan-panel{padding:23px 20px;border-radius:17px}.technical-options{grid-template-columns:1fr}.technical-options label{font-size:11px}.panel-title h2{font-size:17px}.target-field input{font-size:11px}.pick-actions .btn{font-size:10px}.threat-map{padding:21px 18px}.threat-map .map-layout{grid-template-columns:minmax(0,1fr);gap:0}.threat-map .map-inspector{border-left:0;border-top:1px solid #46264f;padding:15px 0 8px;margin-top:0}.threat-map .map-viewport{height:310px}.map-modes button{font-size:10px;padding:7px 10px;gap:6px}.map-modes svg{width:13px;height:13px}.map-heading h2{font-size:22px}.map-badge{font-size:9px}.map-description{font-size:11px}.threat-map .map-legend{font-size:8px;gap:12px}.map-footer{font-size:8px}.method-grid{grid-template-columns:1fr;gap:20px;margin-top:24px}.method-grid>div{padding-left:46px}.method-grid .method-icon{position:absolute;margin:0}.method-grid h3{font-size:12px}.method-grid p{font-size:11px}.report-map .map-viewport{height:310px}.metrics{gap:10px}.metrics>div{padding:18px}.metrics strong{font-size:30px}.metrics small{font-size:10px}.plan-panel{padding:18px}.plan-heading h2{font-size:13px}.plan-heading p{font-size:10px}.coverage-link{font-size:10px}.stage-chip{font-size:9px}.plan-heading{gap:12px;align-items:flex-start}.report-toolbar{flex-wrap:wrap;gap:15px}.report-toolbar h2{font-size:21px}.report-toolbar p{font-size:11px}.assessment-shortcuts{gap:5px}.assessment-shortcuts button{font-size:10px;padding:7px 8px;gap:6px}.search-field{flex-basis:100%}.filters select{flex:1;max-width:none;font-size:10px}.filters>span{font-size:10px}.technical-summary{font-size:9px;gap:10px}.findings-list{grid-template-columns:1fr;max-height:350px}.finding-row{padding:16px 17px}.finding-row h3{font-size:13px}.finding-detail{padding:23px 19px}.finding-detail>h2{font-size:19px}.source-code,.diff-code{font-size:11px!important}.detail-tabs button{font-size:10px;padding:7px 8px}.detail-actions .btn{font-size:10px;white-space:normal}.help-content,.settings-grid{grid-template-columns:1fr}.help-content article{padding:24px}.history-row{padding:19px 17px;gap:13px}.history-description{flex-basis:calc(100% - 60px)}.history-description>button{font-size:11px}.history-description p{font-size:9px}.history-actions{margin-left:54px;gap:10px}.history-number{font-size:9px}.coverage{padding:17px 19px}.coverage>summary{font-size:11px}.main-footer{display:block;font-size:8px;line-height:1.9}.main-footer>span{display:block}.main-footer>span+span{margin-top:5px}.toast{left:50%;font-size:11px;bottom:19px}.progress-title{gap:12px;flex-wrap:wrap}.progress-title h2{font-size:16px}.notice{font-size:11px;padding:14px 16px}dialog{padding:21px}.source-dialog-header h2{font-size:17px}#source-full{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}.spinner{animation:none;border-top-color:#ad82d1}}
/* Text contrast on the light reading surfaces. */
.scan-panel .muted,.scan-panel .check-label small,.scan-panel .pick-actions>span{color:#756b81}.scan-panel .check-label{color:#5f566b}.context-card:not(.start-proof) p{color:#746480}.finding-row h3{color:#3c3049}.finding-row p,.finding-row .assessment-label{color:#75617f}.finding-row .rule-label{color:#776483}.finding-detail>h2{color:#3d2e4e}.finding-detail .detail-location,.finding-detail .endpoint-label{color:#786182}.finding-detail .verification{color:#796885}.finding-detail .detail-section p,.finding-detail .detail-section ol{color:#786780}.finding-detail .detail-section h3{color:#70517e}.finding-detail .detail-tabs button{color:#7e628e}.finding-detail .detail-engine{color:#786681}.finding-detail .patch-panel p,.finding-detail .patch-checks{color:#796883}.finding-detail .flow-step-label,.finding-detail .flow-source-button{color:#805e90}.finding-detail .detail-placeholder{color:#856a93}.help-content p{color:#7b6289}.help-content h2,.help-content strong{color:#724988}.history-description p,.history-number{color:#846393}.history-description>button{color:#805595}.settings-panel p{color:#80688c}.access-dialog p{color:#80638f}

/* Appearance is explicit: a fresh workspace always starts light. */
.topbar-actions{display:flex;align-items:center;gap:22px}.theme-toggle{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #45415b;border-radius:8px;background:#242133;color:#d5c9f3;font-size:10px;white-space:nowrap}.theme-toggle svg{width:15px;height:15px}.theme-toggle:hover{border-color:#9e83cf;background:#322842}
.map-legend{gap:8px;font-size:10px!important;line-height:1.6}.map-legend>span{border:1px solid #473551;border-radius:6px;padding:3px 6px}.map-legend b{width:6px;height:6px}.legend-source{background:#70d9df}.legend-gap{width:12px!important;height:0!important;border-top:2px dashed #9b89ac;border-radius:0!important}.map-text-view>summary{font-size:11px}.map-navigation{font-size:10px}.map-footer{font-size:10px}.map-node-list button small{font-size:9px}
html[data-theme=light]{color-scheme:light;--bg:#f6f7fb;--bg-raised:#fff;--panel:#fff;--panel-soft:#f4f3f9;--ink:#282d40;--ink-soft:#63697d;--muted:#767c90;--line:#e3e5ef;--dark-line:#e2e4ee;--accent:#8165cf;--accent-deep:#7254c8;--cyan:#178b94;--shadow:0 8px 30px #34334b08}
html[data-theme=light] body{color:#272c40;background:radial-gradient(ellipse at 83% 0,#e9e2f447,transparent 45%),var(--bg)}
html[data-theme=light] .sidebar{background:#ffffffed;border-color:#e3e5ef}
html[data-theme=light] .brand-mark{box-shadow:0 5px 16px #7952bb1c}
html[data-theme=light] .nav-label{color:#777e91}
html[data-theme=light] .nav-item{color:#757c90}
html[data-theme=light] .nav-item:hover{color:#5f4897;background:#f3effa}
html[data-theme=light] .nav-item.active{color:#7651b1;background:#f0eaf8;border-color:#ded1ee}
html[data-theme=light] .nav-count{background:#e6ddf2;color:#6e4a9c}
html[data-theme=light] .nav-guide{color:#76738d}
html[data-theme=light] .nav-guide:hover{color:#694899}
html[data-theme=light] .sidebar-footer{color:#6f7489;border-color:#e7e4ee}
html[data-theme=light] .sidebar-footer .icon-btn{color:#7b7290}
html[data-theme=light] .sidebar-footer .icon-btn:hover,html[data-theme=light] .icon-btn:hover{color:#6a4997;background:#efeaf6}
html[data-theme=light] .topbar{color:#7b8092;border-color:#e6e5ef;background:#ffffff96}
html[data-theme=light] .breadcrumb strong{color:#303346}
html[data-theme=light] .breadcrumb>span:first-of-type{color:#b3adc2}
html[data-theme=light] .local-status{color:#777e8d}
html[data-theme=light] .status-dot{background:#409b86;box-shadow:none}
html[data-theme=light] .theme-toggle{color:#6c538b;background:#fff;border-color:#dfd9ea}
html[data-theme=light] .theme-toggle:hover{background:#f1edf8;border-color:#bca9d4}
html[data-theme=light] .page-heading p{color:#74798a}
html[data-theme=light] .eyebrow{color:#7a6c8c}
html[data-theme=light] .accent-dot{background:#9070c3;box-shadow:none}
html[data-theme=light] .start-heading h1>span{color:#8361b5}
html[data-theme=light] .btn.secondary{background:#fff;border-color:#ddd9e8;color:#676078}
html[data-theme=light] .btn.secondary:hover{background:#f2edf9;border-color:#c1a9de;color:#71509b}
html[data-theme=light] .workflow-steps{color:#838699}
html[data-theme=light] .workflow-steps li>span{color:#89879b;border-color:#ddd7e8;background:#fff}
html[data-theme=light] .workflow-steps .current{color:#8061a5}
html[data-theme=light] .workflow-steps .current>span{color:#77589e;border-color:#d9ccea;background:#eee6f7}
html[data-theme=light] .mode{background:#fff;border-color:#e3dfed;color:#807b91;box-shadow:0 2px 6px #48406004}
html[data-theme=light] .mode svg{color:#9e8bae}
html[data-theme=light] .mode strong{color:#666079}
html[data-theme=light] .mode small{color:#827b91}
html[data-theme=light] .mode:hover{background:#faf7ff;border-color:#c9b6de}
html[data-theme=light] .mode.active{background:#f2ecfa;border-color:#ad8dd0;box-shadow:inset 0 0 0 1px #ad8dd012}
html[data-theme=light] .mode.active svg{color:#9975bc}
html[data-theme=light] .mode.active strong{color:#74558e}
html[data-theme=light] .mode.active small{color:#8b769f}
html[data-theme=light] .scan-panel{border-color:#e7e4ee}
html[data-theme=light] .context-card{background:#fff;border-color:#e6deec}
html[data-theme=light] .start-proof h3{color:#51465f}
html[data-theme=light] .start-proof .proof-symbol{background:#eee7f8;border-color:#e0d4ef;color:#76529c}
html[data-theme=light] .method-grid h3{color:#696176}
html[data-theme=light] .method-grid p{color:#80768d}
html[data-theme=light] .method-icon{background:#eee7f8;border-color:#e0d4ef;color:#9875b6}
html[data-theme=light] .notice{background:#eff5f7;border-color:#cddce1;color:#52717b}
html[data-theme=light] .notice.warn{background:#faf6ef;border-color:#e6d7bd;color:#927145}
html[data-theme=light] .notice.danger{background:#faf0f3;border-color:#e8cbd4;color:#a56479}
html[data-theme=light] .report-context{color:#7a6d87}
html[data-theme=light] .version-badge,html[data-theme=light] .profile-badge{background:#f0e9f8;border-color:#ddcaee;color:#9272ab}
html[data-theme=light] .version-badge.older{background:#f8f2e9;border-color:#e9d9bf;color:#a98c5b}
html[data-theme=light] .metrics>div{background:#fff;border-color:#e2daec;box-shadow:0 4px 14px #47355504}
html[data-theme=light] .metrics small{color:#85748f}
html[data-theme=light] .metrics strong{color:#806191}
html[data-theme=light] .metrics>div>span{color:#9b89a5}
html[data-theme=light] .metrics .metric-primary{background:#f2eaf9;border-color:#d5bcea}
html[data-theme=light] .metrics .metric-primary strong{color:#9971b8}
html[data-theme=light] .plan-panel{background:#fff;border-color:#e4dbee}
html[data-theme=light] .plan-heading h2{color:#856295}
html[data-theme=light] .plan-heading p{color:#918099}
html[data-theme=light] .stage-chip{background:#edf6ef;border-color:#cbded1;color:#668875}
html[data-theme=light] .stage-chip.partial,html[data-theme=light] .stage-chip.failed{background:#faf4e9;border-color:#e9d7b8;color:#ab8953}
html[data-theme=light] .stage-chip.not_applicable,html[data-theme=light] .stage-chip.off,html[data-theme=light] .stage-chip.not_checked,html[data-theme=light] .stage-chip.not_run{background:#f4f1f7;border-color:#e3dbea;color:#a08eab}
html[data-theme=light] .plan-gaps{border-color:#ece3f1;color:#a48eb1}
html[data-theme=light] .plan-gaps p{color:#9b87a8}
html[data-theme=light] .coverage-link,html[data-theme=light] .plan-gaps button{color:#9671ac}
html[data-theme=light] .report-toolbar h2{color:#77538b}
html[data-theme=light] .report-toolbar p{color:#927b9f}
html[data-theme=light] .filters select{background:#fff;border-color:#dccae9;color:#9972af}
html[data-theme=light] .filters>span{color:#ac8bbc}
html[data-theme=light] .coverage{background:#faf6fd;border-color:#e2cdee;color:#a083b3}
html[data-theme=light] .coverage>summary{color:#9370a9}
html[data-theme=light] .coverage[open]>summary{border-color:#ead9f4}
html[data-theme=light] .empty-state{background:#fbf8fe;border-color:#ceb5df;color:#a48bb6}
html[data-theme=light] .empty-state h2{color:#9271a6}
html[data-theme=light] .empty-state p{color:#a189b2}
html[data-theme=light] .empty-state svg{color:#b38dca}
html[data-theme=light] .threat-map{color:#79738b;border-color:#e1d9ea;background:linear-gradient(145deg,#fff,#faf9fe);box-shadow:0 8px 28px #48305b09}
html[data-theme=light] .map-heading h2{color:#53485f}
html[data-theme=light] .map-heading .eyebrow{color:#8e7ba0}
html[data-theme=light] .map-badge{background:#f0eaf8;border-color:#ddd0eb;color:#9578ac}
html[data-theme=light] .map-description{color:#8a7c95}
html[data-theme=light] .map-modes{background:#f2eef7;border-color:#e1d7ec}
html[data-theme=light] .map-modes button{color:#9c85af}
html[data-theme=light] .map-modes button.active{background:#fff;color:#805d9b;box-shadow:0 1px 5px #4d285a0c}
html[data-theme=light] .map-icon-button{background:#fff;border-color:#e3d9ed;color:#ad8dc2}
html[data-theme=light] .map-icon-button:hover{background:#f0e6f8;border-color:#d1b9e2;color:#9471ac}
html[data-theme=light] .map-icon-button[aria-pressed=true]{background:#ede1f7;border-color:#c7a9df;color:#89649f}
html[data-theme=light] .map-viewport{border-color:#e5ddef;background:radial-gradient(ellipse at 50% 50%,#eee9f575,transparent 75%),#fbfaff}
html[data-theme=light] .map-corner-label{color:#9e85b0}
html[data-theme=light] .map-navigation{color:#a18bad}
html[data-theme=light] .map-inspector{border-color:#e7d9ef}
html[data-theme=light] .map-inspector .eyebrow{color:#ab8ebb}
html[data-theme=light] .map-inspector h3{color:#8c699f}
html[data-theme=light] .map-inspector>p{color:#9b82ab}
html[data-theme=light] .map-selection-meta span{background:#f5eefb;border-color:#e3ceef;color:#a98bbb}
html[data-theme=light] .map-selection-meta .map-evidence{background:#f0f7f1;border-color:#d1e1d2;color:#789e80}
html[data-theme=light] .map-inspector .btn{background:#f3eafa;border-color:#d8bfeb;color:#a080b5}
html[data-theme=light] .map-trace{scrollbar-color:#d7bde9 transparent}
html[data-theme=light] .map-trace li{border-color:#d4b9e6;color:#a585b9}
html[data-theme=light] .map-trace li::before{background:#a67bc2}
html[data-theme=light] .map-trace li.source::before{background:#178b94}
html[data-theme=light] .map-trace li.sink::before{background:#d46c35}
html[data-theme=light] .map-trace strong{color:#9570aa}
html[data-theme=light] .map-trace button{color:#a480ba}
html[data-theme=light] .map-trace button:hover{color:#7d5798}
html[data-theme=light] .map-trace code{color:#a68fb4}
html[data-theme=light] .map-legend{border-color:#e7d6f0;color:#9877aa}
html[data-theme=light] .map-legend>span{background:#fff;border-color:#eadff1}
html[data-theme=light] .legend-file{background:#8058c5}
html[data-theme=light] .legend-source{background:#178b94}
html[data-theme=light] .legend-actionable{background:#d46c35}
html[data-theme=light] .legend-review{background:#a98923}
html[data-theme=light] .legend-dismissed{background:#747d91}
html[data-theme=light] .legend-gap{border-color:#8c87ad}
html[data-theme=light] .map-text-view>summary{color:#9b79af}
html[data-theme=light] .map-node-list>p{color:#a28bab}
html[data-theme=light] .map-node-list button{background:#fff;border-color:#e0cceb;color:#a37cb7}
html[data-theme=light] .map-node-list button:hover{border-color:#b791cf;background:#f8f0fc}
html[data-theme=light] .map-node-list button.selected{border-color:#bf99d9;background:#f1e4fa;color:#9c71b3}
html[data-theme=light] .map-node-list button small{color:#af91bf}
html[data-theme=light] .map-footer{border-color:#e9dbf1;color:#ac91bb}
html[data-theme=light] .map-footer #map-status{color:#a084b0}
html[data-theme=light] .map-fallback{background:#fbf8fe;color:#a988bc}
html[data-theme=light] .map-fallback strong{color:#9670af}
html[data-theme=light] .map-fallback p{color:#a28ab2}
html[data-theme=light] .workspace-footer{color:#92849e;border-color:#e5dbea}
/* Readable labels in the light workspace; code evidence retains its own surface. */
html[data-theme=light] .page-heading p,html[data-theme=light] .mode small,html[data-theme=light] .method-grid p,html[data-theme=light] .plan-heading p,html[data-theme=light] .report-toolbar p{color:#696478}
html[data-theme=light] .map-description,html[data-theme=light] .map-inspector>p,html[data-theme=light] .map-trace code,html[data-theme=light] .map-navigation,html[data-theme=light] .map-footer,html[data-theme=light] .map-footer #map-status{color:#736680}
html[data-theme=light] .map-inspector h3,html[data-theme=light] .map-trace strong,html[data-theme=light] .map-trace button,html[data-theme=light] .map-node-list button,html[data-theme=light] .map-text-view>summary,html[data-theme=light] .map-legend,html[data-theme=light] .map-inspector .btn{color:#77518f}
html[data-theme=light] .map-node-list button small,html[data-theme=light] .map-selection-meta span,html[data-theme=light] .map-corner-label,html[data-theme=light] .map-badge{color:#8b6b9d}
html[data-theme=light] .map-selection-meta .map-evidence{color:#5b7f62}
@media(max-width:680px){.topbar-actions{gap:10px}.theme-toggle{padding:6px}.theme-toggle>span{display:none}.local-status{font-size:9px}.map-legend{font-size:9px!important}.map-footer{font-size:9px}}
html[data-theme=light] .context-card p{color:#766382}
html[data-theme=light] .metrics small,html[data-theme=light] .metrics>div>span,html[data-theme=light] .plan-gaps p,html[data-theme=light] .filters>span,html[data-theme=light] .stage-chip.not_applicable,html[data-theme=light] .stage-chip.off,html[data-theme=light] .stage-chip.not_checked,html[data-theme=light] .stage-chip.not_run{color:#7d6888}
html[data-theme=light] .filters select,html[data-theme=light] .coverage>summary,html[data-theme=light] .coverage-link,html[data-theme=light] .plan-gaps button{color:#78548b}
html[data-theme=light] .map-node-list button small,html[data-theme=light] .map-selection-meta span,html[data-theme=light] .map-corner-label,html[data-theme=light] .map-badge,html[data-theme=light] .map-heading .eyebrow,html[data-theme=light] .map-inspector .eyebrow,html[data-theme=light] .map-icon-button{color:#79598d}

/* Isolated project execution is separate from vulnerability findings. */
.execution-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.execution-heading h2{margin:0}.execution-status{font-size:12px;font-weight:650;padding:7px 12px;border:1px solid var(--line);border-radius:999px}.execution-facts{display:flex;flex-wrap:wrap;gap:18px;margin:18px 0;font-size:12px;color:var(--ink-soft)}.execution-run{padding:14px 0;border-top:1px solid var(--line)}.execution-run h3{font-size:14px;margin:0 0 6px}.execution-run p{font:12px ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.execution-output{max-height:300px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;padding:16px;border-radius:10px;background:var(--panel-soft);color:var(--ink)}.execution-limitations{font-size:12px;line-height:1.7;color:var(--ink-soft);padding-left:18px}.execution-panel[data-state=failed] .execution-status,.execution-panel[data-state=error] .execution-status,.execution-panel[data-state=timeout] .execution-status{color:#a24146;background:#fff0f0;border-color:#f0c9ce}.execution-panel[data-state=passed] .execution-status{color:#176b5b;background:#eaf8f3;border-color:#b9dfd2}
