:root{--bg:#f5f6f8;--surface:#fff;--surface-muted:#eef1f5;--text:#17191f;--muted:#626b78;--line:#dfe3ea;--accent:#334155;--accent-soft:#e7ebf1;--warn:#8a5a12;--danger:#a23a32;--radius:8px;--platform-paper:#f4f6f8;--platform-surface:#fff;--platform-ink:#151820;--platform-muted:#66707d;--platform-line:#e1e5eb;--platform-navy:#1f2937;--platform-blue:#35527d;--platform-amber:#9b6a22;--platform-radius:14px;--platform-shadow:0 14px 42px #0f172a0f;--font-display:"Newsreader", Georgia, serif;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{color:var(--text);background:var(--bg);font-family:var(--font-sans);margin:0;overflow-x:clip}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.marketing-shell{min-height:100vh;padding:20px}.marketing-nav{justify-content:space-between;align-items:center;gap:20px;max-width:1180px;margin:0 auto;display:flex}.brand-lockup{align-items:center;gap:10px;font-weight:650;display:inline-flex}.brand-mark{border:2px solid var(--text);border-radius:7px;width:28px;height:28px;position:relative}.brand-mark:after{content:"";border-top:2px solid var(--text);border-bottom:2px solid var(--text);position:absolute;inset:6px}.nav-actions,.hero-actions,.row-actions{align-items:center;gap:10px;display:flex}.button{border:1px solid var(--platform-line);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 16px;font-size:13px;font-weight:650;display:inline-flex}.button-dark{background:var(--platform-ink);color:#fff;border-color:var(--platform-ink)}.button-light{color:var(--platform-ink);background:#ffffffc7}.button-danger{color:var(--danger);border-color:color-mix(in srgb, var(--danger) 32%, var(--platform-line));background:#fff}.button-danger:hover{background:color-mix(in srgb, var(--danger) 6%, white);border-color:color-mix(in srgb, var(--danger) 54%, var(--platform-line))}.hero-panel{max-width:960px;margin:16vh auto 0}.hero-panel h1,.auth-card h1,.page-title{letter-spacing:-.02em;max-width:820px;margin:12px 0;font-family:Newsreader,Georgia,serif;font-size:clamp(44px,7vw,88px);font-weight:300;line-height:.98}.hero-panel p,.auth-card p,.muted{color:var(--muted);line-height:1.55}.eyebrow{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.auth-body{background:radial-gradient(circle at 22% 16%, #9b6a2240, transparent 28%), radial-gradient(circle at 86% 12%, #35527d29, transparent 26%), var(--platform-paper);place-items:center;min-height:100vh;padding:32px;display:grid}.auth-shell{grid-template-columns:minmax(340px,430px) minmax(0,1fr);align-items:stretch;gap:24px;width:min(1120px,100%);display:grid}.auth-card,.auth-visual,.panel{background:color-mix(in srgb, var(--platform-surface) 94%, var(--platform-paper));border:1px solid var(--platform-line);border-radius:var(--platform-radius);box-shadow:var(--platform-shadow)}.auth-card{padding:34px}.customer-runtime-body{padding:28px}.customer-runtime-panel{width:min(640px,100%);padding:34px}.customer-runtime-panel h1{font-family:var(--font-display);margin:10px 0 12px;font-size:clamp(34px,5vw,58px);font-weight:300;line-height:1}.customer-runtime-panel p:not(.eyebrow){color:var(--platform-muted);margin:0;line-height:1.55}.customer-runtime-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.auth-brand{align-items:center;gap:10px;font-weight:650;display:flex}.auth-close-link{z-index:20;width:30px;height:30px;color:var(--platform-muted);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;font-size:16px;font-weight:520;line-height:1;display:inline-flex;position:fixed;top:24px;right:24px}.auth-close-link:hover{border-color:var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 40%, white);color:var(--platform-ink)}.auth-logo{border-radius:9px;width:32px;height:32px}.auth-card h1{color:var(--platform-ink);font-family:var(--font-display);letter-spacing:0;margin:46px 0 12px;font-size:42px;font-weight:430;line-height:1.04}.auth-card p{color:var(--platform-muted)}.auth-form-stack{gap:22px;margin-top:28px;display:grid}.auth-form{gap:14px;display:grid}.field{color:var(--platform-muted);gap:7px;font-size:13px;font-weight:600;display:grid}.field input{border:1px solid var(--platform-line);width:100%;height:46px;color:var(--platform-ink);background:#fff;border-radius:10px;outline:none;padding:0 13px}.field input:focus{border-color:color-mix(in srgb, var(--platform-blue) 55%, var(--platform-line));box-shadow:0 0 0 4px #35527d1a}.button-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.primary-action,.secondary-action{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 15px;font-size:13px;font-weight:650;display:inline-flex}.primary-action{background:var(--platform-ink);color:#fff}.secondary-action{background:var(--platform-surface);color:var(--platform-ink);border-color:var(--platform-line)}.primary-action:disabled,.secondary-action:disabled{opacity:.58;cursor:wait}.auth-visual{background:linear-gradient(135deg, #101c3af5, #111318eb), var(--platform-navy);color:#fff;min-height:590px;padding:26px;position:relative;overflow:hidden}.auth-visual .eyebrow{color:#ffffff9e}.set-password-card{width:min(460px,100%)}.set-password-card .auth-card{width:100%}.auth-visual h2{font-family:var(--font-display);max-width:620px;margin:34px 0 16px;font-size:54px;font-weight:430;line-height:1}.auth-visual-copy{color:#ffffffb8;max-width:560px;line-height:1.55}.mini-workbench{grid-template-columns:.9fr 1.2fr;gap:12px;display:grid;position:absolute;bottom:34px;left:34px;right:34px}.mini-panel{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff14;border:1px solid #ffffff24;border-radius:16px;min-height:170px;padding:16px}.mini-panel p{color:#ffffffc7;margin:14px 0 0}.table-label{color:var(--platform-muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:750}.auth-visual .table-label{color:#ffffff8f}.evidence-graph{border:1px solid var(--platform-line);background-color:#fff;background-image:linear-gradient(#11131809 1px,#0000 1px),linear-gradient(90deg,#11131809 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:28px 28px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:16px;min-height:320px;position:relative;overflow:hidden}.mini-graph{background-color:#ffffff0a;background-image:linear-gradient(#ffffff0e 1px,#0000 1px),linear-gradient(90deg,#ffffff0e 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:22px 22px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-color:#ffffff24;min-height:126px;margin-top:14px}.graph-node{border:1px solid var(--platform-line);background:#fff;border-radius:13px;min-width:124px;padding:10px 12px;font-size:12px;font-weight:750;position:absolute;box-shadow:0 12px 30px #11131814}.graph-node small{color:var(--platform-muted);margin-top:4px;font-weight:600;display:block}.mini-graph .graph-node{background:#ffffffe6;min-width:116px}.graph-node.row{border-color:#35527d73;top:112px;left:42px}.graph-node.source{top:42px;right:64px}.mini-graph .graph-node.row{top:42px;left:22px}.mini-graph .graph-node.source{top:28px;right:20px}.graph-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.graph-lines path{stroke:var(--platform-blue);stroke-width:2px;fill:none;opacity:.42}.form-message{min-height:20px;color:var(--danger);font-size:13px}.form-error{border:1px solid color-mix(in srgb, var(--danger) 22%, var(--platform-line));background:color-mix(in srgb, var(--danger) 6%, #fff);border-radius:8px;min-height:0;padding:10px 12px;line-height:1.4}.form-message-stacked{gap:4px;display:grid}.form-message-stacked strong,.form-message-stacked span{display:block}.auth-inline-form{margin-left:4px;display:inline}.auth-link-button{appearance:none;color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.form-success{color:#276344;border:1px solid color-mix(in srgb, #276344 22%, var(--platform-line));background:#f0f4f2;border-radius:8px;min-height:0;padding:10px 12px;line-height:1.4}.app-shell{height:100vh;min-height:100vh;color:var(--platform-ink);background:var(--platform-surface);padding:0;overflow:hidden}.app-frame{background:var(--platform-surface);width:100%;height:100vh;min-height:100vh;box-shadow:none;border:0;border-radius:0;grid-template-columns:232px minmax(0,1fr);margin:0;display:grid;overflow:hidden}.app-sidebar{border-right:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 54%, white);grid-template-rows:auto auto auto minmax(0,1fr) auto;height:100vh;min-height:100vh;padding:14px 10px 12px;display:grid;overflow:hidden}.app-brand-row{justify-content:space-between;align-items:center;min-height:38px;display:flex}.app-brand{align-items:center;gap:10px;min-height:42px;padding:0 2px;font-weight:650;display:inline-flex}.app-logo{border-radius:8px;width:30px;height:30px}.project-scope-control{border:1px solid var(--platform-line);background:#ffffffd1;border-radius:8px;gap:6px;margin:7px 0 14px;padding:8px;font-size:12px;display:grid}.project-scope-label,.project-scope-control small{color:var(--platform-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:680;overflow:hidden}.project-scope-label{line-height:1.1}.app-nav{align-content:start;gap:2px;display:grid}.app-nav-link{min-height:32px;color:var(--platform-muted);border-radius:7px;align-items:center;gap:9px;padding:0 10px;font-size:12px;font-weight:650;display:flex}.app-nav-link:hover{color:var(--platform-ink);background:#fff}.app-nav-link.is-active{background:color-mix(in srgb, var(--platform-paper) 78%, white);color:var(--platform-ink)}.app-nav-link.is-active .nav-icon{opacity:.86}.nav-icon{opacity:.68;border:0;width:16px;height:16px;position:relative}.nav-icon:before,.nav-icon:after{content:"";box-sizing:border-box;position:absolute}.project-icon:before{border:1.4px solid;border-radius:2px;inset:2px;box-shadow:5px 0 0 -3.5px,0 5px 0 -3.5px,5px 5px 0 -3.5px}.review-icon:before{border:1.4px solid;border-radius:3px;width:10px;height:12px;top:2px;left:3px}.review-icon:after{border-bottom:1.4px solid;border-left:1.4px solid;width:6px;height:4px;top:5px;left:6px;transform:rotate(-45deg)}.dashboard-icon:before{border:1.4px solid;border-radius:999px;inset:2px}.dashboard-icon:after{border-bottom:1.4px solid;border-left:1.4px solid;width:4px;height:5px;top:4px;left:8px}.issue-icon:before{border:1.4px solid;border-radius:2px;width:10px;height:12px;top:2px;left:3px}.issue-icon:after{border-top:1.4px solid;top:6px;left:6px;right:5px;box-shadow:0 4px}.report-icon:before{border:1.4px solid;border-radius:2px;width:10px;height:12px;top:2px;left:3px}.report-icon:after{border-top:1.4px solid;width:8px;top:10px;left:5px}.explore-icon:before{border-top:1.4px solid;width:12px;top:7px;left:2px;transform:rotate(-22deg)}.explore-icon:after{border:1.4px solid;border-radius:999px;width:4px;height:4px;top:3px;left:2px;box-shadow:8px 6px 0 -1.4px #fff,8px 6px}.settings-icon:before{border:1.4px solid;border-radius:999px;width:10px;height:10px;top:3px;left:3px}.settings-icon:after{background:currentColor;border-radius:999px;width:2px;height:14px;top:1px;left:7px;box-shadow:-5px 5px 0 -.2px,5px 5px 0 -.2px}.app-nav-link:hover .nav-icon{color:var(--platform-blue);opacity:1}.workspace-context{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 62%, white);border-radius:8px;gap:3px;padding:9px;display:grid}.workspace-context span,.workspace-context small{color:var(--platform-muted);font-size:11px;font-weight:650}.workspace-context strong{color:var(--platform-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.28;overflow:hidden}.workspace-context small{text-transform:capitalize}.sidebar-account{border:1px solid var(--platform-line);color:var(--platform-muted);background:#fff;border-radius:8px;gap:8px;padding:9px;font-size:12px;line-height:1.45;display:grid}.sidebar-account small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sidebar-account .button{width:100%;min-height:30px;padding:0 10px;font-size:12px}.app-stage{background:var(--platform-surface);min-width:0;height:100vh;min-height:100vh;overflow-y:auto}.user-chip{border:1px solid var(--platform-line);max-width:260px;color:var(--platform-muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:7px 10px;font-size:12px;overflow:hidden}.app-main{min-width:0;min-height:100%;padding:0}.app-content-panel{background:var(--platform-surface);border:0;border-radius:0;min-height:100%;overflow:hidden}.app-section-header{border-bottom:1px solid var(--platform-line);justify-content:space-between;align-items:flex-start;gap:20px;padding:28px 28px 20px;display:flex}.app-section-header .muted{max-width:560px;color:var(--platform-muted);margin:0;font-size:13px}.app-section-header .row-actions{flex-wrap:wrap;justify-content:flex-end}.metric-chip{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 54%, white);min-height:28px;color:var(--platform-muted);border-radius:999px;align-items:center;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.project-scope-control{position:relative}.project-scope-control select{border:1px solid var(--platform-line);width:100%;min-height:22px;color:var(--platform-ink);background:#ffffffb8;border-radius:7px;padding:3px 8px;font-size:12px;font-weight:720}.usage-summary-panel{border-bottom:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 46%, white);gap:14px;padding:18px 28px;display:grid}.usage-summary-header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.usage-summary-header h2{color:var(--platform-ink);margin:2px 0 0;font-size:15px;font-weight:760;line-height:1.25}.usage-summary-grid{border:1px solid var(--platform-line);background:var(--platform-surface);border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid;overflow:hidden}.usage-summary-metric{border-right:1px solid var(--platform-line);gap:5px;min-width:0;padding:13px 14px;display:grid}.usage-summary-metric:last-child{border-right:0}.usage-summary-metric span{color:var(--platform-muted);font-size:11px;font-weight:760}.usage-summary-metric strong{overflow-wrap:anywhere;color:var(--platform-ink);font-size:22px;font-weight:680;line-height:1.05}.usage-summary-metric p{color:var(--platform-muted);margin:0;font-size:12px;line-height:1.35}.retention-summary-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.retention-policy-note{color:var(--platform-muted);margin:0;font-size:12px;line-height:1.45}.member-invite-form{border-bottom:1px solid var(--platform-line);background:var(--platform-surface);grid-template-columns:minmax(220px,1fr) minmax(140px,180px) auto;align-items:end;gap:10px;padding:18px 28px;display:grid}.member-invite-form label{color:var(--platform-muted);gap:6px;font-size:12px;font-weight:700;display:grid}.member-invite-form input,.member-invite-form select{border:1px solid var(--platform-line);min-height:36px;color:var(--platform-ink);font:inherit;background:#fff;border-radius:8px;padding:0 11px}.member-list{padding:0 28px 28px}.member-row{grid-template-columns:34px minmax(0,1fr) auto}.member-row-actions{justify-content:flex-end;align-items:center;gap:8px;display:inline-flex}.member-actions-menu .project-actions-popover{right:0}.audit-log-list{background:var(--platform-surface);padding:0 28px 28px;display:grid}.audit-log-header,.audit-log-row{grid-template-columns:minmax(140px,.9fr) minmax(120px,.75fr) minmax(180px,1fr) minmax(160px,.85fr) minmax(220px,1.25fr);align-items:center;gap:14px;min-width:0;display:grid}.audit-log-header{border-bottom:1px solid var(--platform-line);color:var(--platform-muted);padding:12px 0 9px;font-size:11px;font-weight:780}.audit-log-row{border-bottom:1px solid var(--platform-line);min-height:58px;color:var(--platform-muted);padding:11px 0;font-size:12px;line-height:1.35}.audit-log-row:last-child{border-bottom:0}.audit-log-row strong{overflow-wrap:anywhere;min-width:0;color:var(--platform-ink);font-size:13px;font-weight:760}.audit-log-row span,.audit-log-row time,.audit-log-row p{overflow-wrap:anywhere;min-width:0;margin:0}.issue-filter-header{background:var(--platform-surface);justify-content:flex-start;align-items:center;padding:12px 28px 0;display:flex}.issue-filter-header .issue-status-toggle{box-shadow:0 6px 18px #11131809}.review-toolbar{border-bottom:1px solid var(--platform-line);background:var(--platform-surface);grid-template-columns:minmax(260px,1fr) minmax(160px,220px) minmax(130px,180px);gap:8px;padding:12px 28px;display:grid}.search-control,.filter-control{border:1px solid var(--platform-line);min-height:34px;color:var(--platform-muted);background:#fff;border-radius:8px;align-items:center;padding:0 12px;font-size:13px;display:flex}.filter-control{cursor:default;justify-content:space-between}.search-field{gap:9px}.search-control-input{width:100%;min-width:0;color:var(--platform-ink);background:0 0;border:0;outline:none}.search-control-input::placeholder{color:var(--platform-muted)}.filter-field{display:grid}select.filter-control{cursor:pointer;width:100%}.filter-submit{color:var(--platform-ink);cursor:pointer;justify-content:center;font-weight:700}.filter-submit:hover{border-color:color-mix(in srgb, var(--platform-blue) 34%, var(--platform-line))}.search-control:before{content:"";opacity:.62;border:1.5px solid;border-radius:999px;width:8px;height:8px;margin-right:9px}.review-list{display:grid}.review-row{border-bottom:1px solid var(--platform-line);background:var(--platform-surface);grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:64px;padding:10px 28px;display:grid}.review-row:last-child{border-bottom:0}.review-row:hover{background:color-mix(in srgb, var(--platform-paper) 32%, white)}.review-row strong{color:var(--platform-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:760;display:block;overflow:hidden}.review-row p{color:var(--platform-muted);margin:3px 0 0;font-size:12px;line-height:1.35}.empty-guidance{border:1px dashed color-mix(in srgb, var(--platform-blue) 22%, var(--platform-line));background:linear-gradient(180deg, #ffffffdb, #f8fafcf0), var(--platform-surface);border-radius:10px;align-content:center;justify-items:start;gap:10px;min-height:184px;margin:18px 28px 28px;padding:24px;display:grid}.empty-guidance.compact{min-height:124px;margin:0;padding:20px}.empty-guidance h2{color:var(--platform-ink);font-family:var(--font-sans);letter-spacing:0;margin:0;font-size:17px;font-weight:760}.empty-guidance p{max-width:620px;color:var(--platform-muted);margin:0;font-size:13px;line-height:1.55}.empty-guidance-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.issue-list .empty-guidance,.project-list .empty-guidance,.dataset-lineage-chain .empty-guidance,.security-graph-canvas .empty-guidance{margin:0}.security-graph-canvas .empty-guidance{min-height:320px}.table-surface .empty-guidance{border-top:0;border-left:0;border-right:0;border-radius:0}.row-icon{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 54%, white);border-radius:999px;width:20px;height:20px;position:relative}.row-icon:after{content:"";background:var(--platform-muted);opacity:.7;border-radius:999px;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.status-pill{min-height:26px;color:var(--platform-blue);text-transform:capitalize;background:#35527d14;border:1px solid #35527d2e;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;font-size:12px;font-weight:750;line-height:1;display:inline-flex}.status-pill.compact{background:#35527d0e;border-color:#35527d24;min-width:72px;min-height:24px;padding:0 10px;font-size:11.5px;font-weight:700}.issue-feed{background:var(--platform-surface)}.issue-feed .issue-feed-row{grid-template-columns:28px minmax(0,1fr) minmax(300px,max-content);gap:16px;min-height:62px;padding:9px 28px}.issue-feed .issue-feed-row:hover{background:color-mix(in srgb, var(--platform-paper) 22%, white)}.issue-row-main{min-width:0}.issue-row-main strong{font-size:12.5px;font-weight:720}.issue-row-main p{max-width:620px;color:color-mix(in srgb, var(--platform-muted) 88%, var(--platform-ink))}.issue-row-meta{grid-template-columns:minmax(150px,1fr) max-content max-content;justify-self:end;align-items:center;gap:10px;min-width:0;display:grid}.issue-meta-stack{justify-items:end;gap:1px;min-width:0;display:grid}.issue-meta-chip{max-width:220px;color:var(--platform-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.dataset-chip{color:color-mix(in srgb, var(--platform-muted) 76%, var(--platform-ink))}.issue-row-icon{background:#fff;width:18px;height:18px}.issue-row-icon:after{width:5px;height:5px}.issue-row-meta .status-pill{white-space:nowrap;justify-self:end;width:max-content}.row-action{border:1px solid var(--platform-line);min-height:28px;color:var(--platform-ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;padding:0 11px;font-size:12px;font-weight:750;display:inline-flex}button.row-action{cursor:pointer;font-family:inherit}.row-action-form{display:inline-flex}.row-action:hover{border-color:color-mix(in srgb, var(--platform-blue) 42%, var(--platform-line));color:var(--platform-blue)}.dashboard-metrics{border-bottom:1px solid var(--platform-line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric-card{border-right:1px solid var(--platform-line);background:var(--platform-surface);gap:8px;min-height:132px;padding:18px 20px;display:grid}.metric-card:last-child{border-right:0}.metric-card span,.surface-heading a,.table-head,.severity-label{color:var(--platform-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:760}.metric-card strong{color:var(--platform-ink);font-size:34px;line-height:1}.metric-card p{color:var(--platform-muted);margin:0;font-size:12px;line-height:1.4}.metric-card.critical strong{color:#a23a32}.dashboard-stat-grid{border-bottom:1px solid var(--platform-line);background:var(--platform-surface);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.dashboard-stat-panel{border-right:1px solid var(--platform-line);border-bottom:1px solid var(--platform-line);align-content:start;gap:14px;min-height:220px;padding:18px 20px;display:grid}.dashboard-stat-panel:nth-child(2n){border-right:0}.dashboard-stat-panel:nth-last-child(-n+2){border-bottom:0}.dashboard-stat-panel .surface-heading{min-height:0;padding:0 0 12px}.dashboard-stat-diagram{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 45%, white);border-radius:8px;align-items:center;gap:12px;min-height:96px;padding:12px;display:grid}.dashboard-donut{background:radial-gradient(circle at center, #fff 0 54%, transparent 55%), conic-gradient(var(--platform-blue) 0 var(--stat-value), color-mix(in srgb, var(--platform-line) 72%, white) var(--stat-value) 100%);border-radius:50%;place-items:center;width:84px;height:84px;display:grid;position:relative}.dashboard-donut span{color:var(--platform-ink);font-size:17px;font-weight:760;line-height:1}.dashboard-diagram-copy{gap:3px;display:grid}.dashboard-diagram-copy strong{color:var(--platform-ink);font-size:18px;line-height:1}.dashboard-diagram-copy span,.dashboard-segment-legend span,.dashboard-bar-row span{color:var(--platform-muted);font-size:12px;line-height:1.35}.dashboard-stat-diagram.is-donut{grid-template-columns:auto minmax(0,1fr)}.dashboard-stacked-bar{border:1px solid color-mix(in srgb, var(--platform-line) 86%, white);background:color-mix(in srgb, var(--platform-line) 55%, white);border-radius:999px;width:100%;height:16px;display:flex;overflow:hidden}.bar-segment{flex:0 0 var(--segment-size);min-width:0}.bar-segment.is-critical,.legend-dot.is-critical{background:var(--danger)}.bar-segment.is-warn,.legend-dot.is-warn{background:var(--warn)}.bar-segment.is-safe,.legend-dot.is-safe{background:#4d8661}.bar-segment.is-muted,.legend-dot.is-muted{background:color-mix(in srgb, var(--platform-muted) 58%, white)}.bar-segment.is-neutral,.legend-dot.is-neutral{background:color-mix(in srgb, var(--platform-line) 72%, white)}.dashboard-segment-legend{flex-wrap:wrap;gap:7px 12px;display:flex}.dashboard-segment-legend span{align-items:center;gap:6px;display:inline-flex}.legend-dot{border-radius:999px;width:8px;height:8px;display:inline-block}.dashboard-bar-chart{gap:8px;display:grid}.dashboard-bar-row{grid-template-columns:88px minmax(0,1fr) 24px;align-items:center;gap:9px;display:grid}.dashboard-bar-row strong{color:var(--platform-ink);text-align:right;font-size:12px;font-weight:760}.dashboard-bar-track{background:color-mix(in srgb, var(--platform-line) 62%, white);border-radius:999px;height:8px;overflow:hidden}.dashboard-bar-track i{width:var(--stat-value);border-radius:inherit;background:var(--platform-blue);height:100%;display:block}.dashboard-stat-list{border:1px solid var(--platform-line);background:#fff;border-radius:8px;display:grid;overflow:hidden}.dashboard-stat-row{border-bottom:1px solid var(--platform-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 12px;padding:10px 12px;display:grid}.dashboard-stat-row:last-child{border-bottom:0}.dashboard-stat-row span{color:var(--platform-ink);font-size:13px;font-weight:730}.dashboard-stat-row strong{color:var(--platform-ink);font-size:22px;line-height:1}.dashboard-stat-row small{color:var(--platform-muted);grid-column:1/-1;font-size:12px;line-height:1.35}.split-surface{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-height:360px;display:grid}.surface-block{border-right:1px solid var(--platform-line);min-width:0}.surface-block:last-child{border-right:0}.surface-heading{border-bottom:1px solid var(--platform-line);justify-content:space-between;align-items:center;min-height:54px;padding:0 20px;display:flex}.surface-heading h2,.dataset-label-panel h2{color:var(--platform-ink);margin:0;font-size:14px}.surface-heading span{color:var(--platform-muted);font-size:12px;font-weight:720}.source-option-list{display:grid}.source-option{border-bottom:1px solid var(--platform-line);justify-content:space-between;align-items:center;gap:18px;min-height:92px;padding:18px 20px;display:flex}.source-option strong{color:var(--platform-ink);font-size:13px;display:block}.source-option p{max-width:560px;color:var(--platform-muted);margin:4px 0 0;font-size:12px;line-height:1.4}.review-upload-help{gap:4px;padding:16px 20px 0;display:grid}.review-upload-help strong{color:var(--platform-ink);font-size:13px}.review-upload-help p{max-width:610px;color:var(--platform-muted);margin:0;font-size:12px;line-height:1.45}.review-upload-form{gap:14px;padding:18px 20px 20px;display:grid}.review-upload-form label{color:var(--platform-muted);gap:7px;font-size:12px;font-weight:720;display:grid}.review-upload-form input,.review-upload-form select{border:1px solid var(--platform-line);width:100%;min-height:38px;color:var(--platform-ink);background:#fff;border-radius:8px;outline:none;padding:0 11px;font-size:13px}.review-upload-form input[type=file]{min-height:42px;padding:9px 11px}.review-upload-form input:focus,.review-upload-form select:focus{border-color:color-mix(in srgb, var(--platform-blue) 50%, var(--platform-line));box-shadow:0 0 0 3px #35527d14}.review-upload-form .button{justify-self:start}.upload-progress-panel{border:1px solid var(--platform-line);background:color-mix(in srgb, #fff 92%, var(--platform-paper));border-radius:8px;gap:10px;padding:12px;display:grid}.upload-progress-head{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.upload-progress-head div{gap:3px;min-width:0;display:grid}.upload-progress-head strong{color:var(--platform-ink);font-size:13px;line-height:1.25}.upload-progress-head span{overflow-wrap:anywhere;min-width:0;color:var(--platform-muted);font-size:12px;font-weight:620;line-height:1.35}.upload-progress-percent{font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--platform-ink)!important}.upload-progress-bar{background:color-mix(in srgb, var(--platform-line) 72%, #fff);border-radius:999px;height:7px;position:relative;overflow:hidden}.upload-progress-fill{border-radius:inherit;background:linear-gradient(90deg, var(--platform-blue), color-mix(in srgb, var(--platform-blue) 55%, #2fbf98));height:100%;transition:width .18s;display:block}.upload-progress-panel p{color:var(--platform-muted);margin:0;font-size:12px;font-weight:620;line-height:1.45}.upload-progress-panel-processing .upload-progress-fill{background:linear-gradient(90deg, var(--platform-blue), color-mix(in srgb, var(--platform-blue) 70%, #fff))}.scan-progress-panel{background:color-mix(in srgb, #fff 90%, var(--platform-blue));gap:9px;margin-bottom:8px}.scan-progress-panel .upload-progress-bar{height:6px}.scan-progress-panel .upload-progress-fill{width:42%;min-width:42%;animation:1.4s ease-in-out infinite scan-progress-sweep}.reviewed-save-progress-panel{background:color-mix(in srgb, #fff 91%, var(--platform-blue));gap:8px;margin-bottom:8px}.reviewed-save-progress-panel .upload-progress-bar{height:6px}.reviewed-save-progress-panel .upload-progress-fill{min-width:0}@keyframes scan-progress-sweep{0%{transform:translate(-115%)}50%{transform:translate(65%)}to{transform:translate(255%)}}@media (prefers-reduced-motion:reduce){.scan-progress-panel .upload-progress-fill{animation:none;transform:none}}.upload-progress-panel-error{border-color:color-mix(in srgb, var(--danger) 35%, var(--platform-line));background:color-mix(in srgb, #fff 88%, var(--danger))}.upload-progress-panel-error .upload-progress-fill{background:var(--danger)}.upload-progress-panel-canceled{border-color:color-mix(in srgb, var(--platform-muted) 34%, var(--platform-line));background:color-mix(in srgb, #fff 90%, var(--platform-muted))}.upload-progress-panel-canceled .upload-progress-fill{background:var(--platform-muted)}.upload-cancel-button{justify-self:start}.issue-list,.project-list{display:grid}.issue-row,.project-row{border-bottom:1px solid var(--platform-line);grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:58px;padding:10px 20px;display:grid}.project-row{grid-template-columns:minmax(0,1fr) auto}.issue-row strong,.project-row strong,.table-row strong{color:var(--platform-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;display:block;overflow:hidden}.issue-row p,.project-row p,.table-row p{color:var(--platform-muted);margin:3px 0 0;font-size:12px;line-height:1.35}.severity-dot{background:var(--platform-muted);border-radius:999px;width:10px;height:10px}.severity-dot.high{background:#a23a32}.severity-label.high{color:#a23a32}.severity-dot.medium{background:#9b6a22}.severity-label.medium{color:#7a4b12}.severity-label{background:0 0;border-radius:999px;align-items:center;width:max-content;line-height:1;display:inline-flex}.review-row .status-pill,.review-row .severity-label{justify-content:center;align-items:center;line-height:1;display:inline-flex}.table-surface{display:grid}.report-feed{background:var(--platform-surface)}.report-feed .report-feed-row{grid-template-columns:28px minmax(0,1fr) minmax(360px,max-content);gap:16px;min-height:68px;padding:10px 28px}.report-feed .report-feed-row:hover{background:color-mix(in srgb, var(--platform-paper) 22%, white)}.report-row-icon{background:#fff;width:18px;height:18px}.report-row-icon:after{width:5px;height:5px}.report-row-main{min-width:0}.report-row-main strong{color:var(--platform-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:740;display:block;overflow:hidden}.report-row-main p{color:var(--platform-muted);margin:3px 0 0;font-size:12px;line-height:1.35}.report-row-meta{grid-template-columns:minmax(150px,1fr) max-content max-content max-content;justify-self:end;align-items:center;gap:10px;min-width:0;display:grid}.report-meta-stack{justify-items:end;gap:1px;min-width:0;display:grid}.report-meta-chip{max-width:220px;color:var(--platform-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.35;overflow:hidden}.report-count-chip,.report-review-count{color:color-mix(in srgb, var(--platform-muted) 82%, var(--platform-ink));white-space:nowrap;font-size:12px;font-weight:700}.report-summary-strip{border-bottom:1px solid var(--platform-line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.report-summary-card{border-right:1px solid var(--platform-line);background:var(--platform-surface);gap:8px;min-height:118px;padding:18px 20px;display:grid}.report-summary-card:last-child{border-right:0}.report-summary-card span,.report-contract-card span{color:var(--platform-muted);letter-spacing:.04em;text-transform:uppercase;font-size:12px;font-weight:760}.report-summary-card strong{color:var(--platform-ink);font-size:32px;line-height:1}.report-summary-card p{color:var(--platform-muted);margin:0;font-size:12px;line-height:1.4}.report-detail-section{border-bottom:1px solid var(--platform-line);background:var(--platform-surface)}.report-contract-grid{grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.report-contract-card{border-right:1px solid var(--platform-line);align-content:start;gap:7px;min-height:86px;padding:16px 20px;display:grid}.report-contract-card:last-child{border-right:0}.report-contract-card strong{color:var(--platform-ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35;overflow:hidden}.report-finding-list{background:var(--platform-surface)}.report-finding-header,.report-finding-row{grid-template-columns:minmax(0,1fr) 120px 156px;column-gap:18px;display:grid}.report-finding-header{border-bottom:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 42%, white);padding:9px 28px}.report-finding-header span{color:var(--platform-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:760}.report-finding-row{grid-template-columns:minmax(0,1fr) 120px 156px;gap:18px;min-height:58px;padding:10px 28px}.report-finding-severity,.report-finding-status{justify-self:start;align-items:center;display:flex}.report-json-details{padding:14px 20px 20px}.report-json-details summary{cursor:pointer;width:max-content;color:var(--platform-ink);font-size:13px;font-weight:750;list-style:none}.report-json-details summary::-webkit-details-marker{display:none}.report-json-details summary:after{content:"+";color:var(--platform-muted);margin-left:8px;display:inline-flex}.report-json-details[open] summary:after{content:"-"}.report-json-details .code-block{margin-top:12px}.project-create-disclosure{border-bottom:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 30%, white);justify-items:start;gap:12px;padding:14px 28px;display:grid}.project-create-disclosure summary{cursor:pointer;list-style:none}.project-create-disclosure summary::-webkit-details-marker{display:none}.project-create-form{background:0 0;grid-template-columns:minmax(180px,.8fr) minmax(150px,.55fr) minmax(260px,1.2fr) auto;align-items:end;gap:10px;width:100%;padding:0;display:grid}.project-create-form label{min-width:0;color:var(--platform-muted);gap:6px;font-size:12px;font-weight:720;display:grid}.project-create-form input{border:1px solid var(--platform-line);width:100%;min-height:36px;color:var(--platform-ink);background:#fff;border-radius:8px;outline:none;padding:0 11px;font-size:13px}.project-create-form input:focus{border-color:color-mix(in srgb, var(--platform-blue) 50%, var(--platform-line));box-shadow:0 0 0 3px #35527d14}.project-lineage-list{display:grid}.project-lineage-card{border-bottom:1px solid var(--platform-line);background:#fff;gap:14px;padding:18px 28px 20px;display:grid}.project-lineage-card.is-selected{background:color-mix(in srgb, var(--platform-paper) 32%, white)}.project-lineage-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.project-lineage-header h2{color:var(--platform-ink);margin:3px 0 4px;font-size:17px;line-height:1.2}.project-lineage-header p{max-width:680px;color:var(--platform-muted);margin:0;font-size:13px;line-height:1.45}.project-lineage-actions,.project-lineage-stats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.project-lineage-actions{flex-shrink:0;justify-content:flex-end}.project-actions-menu{display:inline-flex;position:relative}.project-actions-menu summary{list-style:none}.project-actions-menu summary::-webkit-details-marker{display:none}.project-actions-trigger{border:1px solid var(--platform-line);width:34px;height:34px;color:var(--platform-muted);cursor:pointer;background:#fff;border-radius:999px;justify-content:center;align-items:center;font-size:15px;font-weight:760;line-height:1;display:inline-flex}.project-actions-trigger:hover,.project-actions-menu[open] .project-actions-trigger{border-color:color-mix(in srgb, var(--platform-blue) 34%, var(--platform-line));background:color-mix(in srgb, var(--platform-paper) 48%, white);color:var(--platform-ink)}.project-actions-popover{z-index:12;border:1px solid var(--platform-line);background:var(--platform-surface);border-radius:8px;min-width:164px;padding:5px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 38px #0f172a1f}.project-menu-item{width:100%;min-height:34px;color:var(--platform-ink);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;padding:0 10px;font-size:12.5px;font-weight:700}.project-menu-item:hover{background:color-mix(in srgb, var(--platform-paper) 54%, white)}.project-menu-item.danger{color:var(--danger)}.project-menu-item.danger:hover{background:color-mix(in srgb, var(--danger) 7%, white)}.project-lineage-stats{color:var(--platform-muted);font-size:12px;font-weight:700}.project-lineage-stats span{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 22%, white);border-radius:999px;align-items:center;min-height:24px;padding:0 9px;display:inline-flex}.dataset-lineage-chain{align-items:center;padding:2px 0 4px;display:flex;overflow-x:auto}.dataset-lineage-step{flex:none;align-items:center;display:flex}.dataset-lineage-version{position:relative}.dataset-actions-menu{position:absolute;top:8px;right:8px}.dataset-actions-menu .project-actions-trigger{background:#ffffffe0;width:28px;height:28px;font-size:13px}.lineage-connector{background:var(--platform-line);width:34px;height:1px}.dataset-lineage-node{border:1px solid var(--platform-line);min-width:194px;min-height:88px;color:var(--platform-ink);background:#fff;border-radius:8px;gap:5px;padding:12px 44px 12px 12px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.dataset-lineage-node:hover{border-color:color-mix(in srgb, var(--platform-blue) 36%, var(--platform-line));transform:translateY(-1px);box-shadow:0 8px 20px #1118270f}.dataset-version-badge{background:color-mix(in srgb, var(--platform-blue) 9%, white);width:max-content;min-width:0;min-height:22px;color:var(--platform-blue);border-radius:999px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;font-weight:780;display:inline-flex}.dataset-lineage-node strong{color:var(--platform-ink);font-size:13px;line-height:1.25}.dataset-lineage-node small,.empty-lineage{color:var(--platform-muted);font-size:12px}.dataset-error-note{color:var(--platform-danger);line-height:1.35}.dataset-scan-form{margin-top:8px}.dataset-scan-form .button{width:100%;min-height:34px;font-size:12px}.delete-confirm-backdrop{z-index:80;background:#0f172a47;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.delete-confirm-modal{border:1px solid var(--platform-line);background:var(--platform-surface);border-radius:10px;width:min(420px,100%);padding:18px;box-shadow:0 26px 90px #0f172a38}.delete-confirm-modal h2{color:var(--platform-ink);letter-spacing:0;margin:6px 0;font-size:18px}.delete-confirm-modal p{color:var(--platform-muted);margin:0;font-size:13px;line-height:1.5}.delete-confirm-form{margin-top:18px}.delete-confirm-actions{justify-content:flex-end;gap:8px;display:flex}.status-change-backdrop{z-index:70;background:#0f172a42;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.status-change-clickaway{position:absolute;inset:0}.status-change-modal{z-index:1;border:1px solid var(--platform-line);background:var(--platform-surface);border-radius:10px;gap:16px;width:min(620px,100%);max-height:calc(100vh - 48px);padding:20px;display:grid;position:relative;overflow:auto;box-shadow:0 26px 90px #0f172a33}.status-change-header h2{color:var(--platform-ink);margin:6px 0;font-size:19px;line-height:1.2}.status-change-header p{color:var(--platform-muted);margin:0;font-size:13px;line-height:1.5}.status-change-details{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 42%, white);border-radius:8px;padding:12px}.status-change-evidence{border:1px solid color-mix(in srgb, var(--platform-line) 82%, transparent);background:#fff;border-radius:8px;gap:7px;padding:12px;display:grid}.status-change-evidence span{color:var(--platform-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:760}.status-change-evidence strong{color:var(--platform-ink);font-size:14px;line-height:1.25}.status-change-evidence p{color:var(--platform-muted);margin:0;font-size:12.5px;line-height:1.45}.status-change-evidence mark{background:color-mix(in srgb, var(--danger) 7%, white);color:var(--platform-ink);border-radius:7px;padding:9px 10px;font-size:12px;line-height:1.45;display:block}.status-change-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.danger-action{background:var(--danger);color:#fff}.danger-action:hover{background:color-mix(in srgb, var(--danger) 88%, #111827)}.row-action.disabled{color:var(--platform-muted);cursor:default}.table-row{border-bottom:1px solid var(--platform-line);min-height:62px;color:var(--platform-ink);grid-template-columns:minmax(240px,1.4fr) minmax(140px,.8fr) minmax(140px,1fr) minmax(80px,.4fr) minmax(96px,.5fr);align-items:center;gap:14px;padding:10px 28px;font-size:13px;display:grid}.table-head{background:color-mix(in srgb, var(--platform-paper) 34%, white);min-height:42px}.table-row.is-selected{background:color-mix(in srgb, var(--platform-paper) 34%, white)}.issue-table .table-row{grid-template-columns:minmax(260px,1.4fr) minmax(160px,.85fr) minmax(190px,1fr) minmax(84px,.45fr) minmax(90px,.45fr)}.dataset-update-banner{border-bottom:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 28%, white);justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;display:flex}.dataset-update-banner strong{color:var(--platform-ink);margin-top:2px;font-size:13px;display:block}.dataset-update-banner{background:#41604e12}.dataset-update-banner p,.review-record-body p{max-width:720px;color:var(--platform-muted);margin:4px 0 0;font-size:12.5px;line-height:1.45}.review-record-body{gap:14px;padding:18px 20px;display:grid}.export-surface{gap:12px;display:grid}.export-dataset-group{border-top:1px solid var(--platform-line);background:#fff;gap:14px;padding:18px 28px;display:grid}.export-dataset-group:first-child{border-top:0}.export-group-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.export-group-header h2{color:var(--platform-ink);margin:2px 0 0;font-size:15px;line-height:1.25}.export-group-header p,.export-version-main p,.export-version-main small{color:var(--platform-muted);margin:0;line-height:1.35}.export-version-chain{gap:8px;display:grid}.export-version-row{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 18%, white);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(150px,max-content) minmax(250px,max-content);align-items:center;gap:16px;padding:12px;display:grid}.export-version-row.is-clean{background:#41604e0b;border-color:#41604e3d}.export-version-main{gap:5px;min-width:0;display:grid}.export-version-main strong{color:var(--platform-ink);overflow-wrap:anywhere;font-size:13px}.export-version-main small{overflow-wrap:anywhere;font-size:12px}.export-version-status{justify-items:start;gap:8px;min-width:0;display:grid}.export-version-status .reviewed-save-progress-panel{width:min(260px,100%);min-width:220px;margin:0;padding:10px}.dataset-version-badge.clean-version{color:var(--platform-green);background:#41604e1f}.export-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.security-explorer{grid-template-columns:minmax(0,1fr) 340px;min-height:calc(100vh - 93px);display:grid}.security-graph-workspace{border-right:1px solid var(--platform-line);background:radial-gradient(circle, #35527d17 1px, transparent 1.2px) 0 0 / 22px 22px, color-mix(in srgb, var(--platform-paper) 16%, white);grid-template-rows:auto 1fr;min-width:0;display:grid}.security-graph-toolbar{border-bottom:1px solid var(--platform-line);background:#ffffffe6;justify-content:space-between;align-items:center;gap:16px;min-height:56px;padding:12px 18px;display:flex}.security-graph-toolbar strong{color:var(--platform-ink);margin-top:2px;font-size:13px;display:block}.graph-legend{color:var(--platform-muted);flex-wrap:wrap;gap:10px;font-size:11.5px;display:flex}.review-scope-toggle{border:1px solid var(--platform-line);background:#ffffffd1;border-radius:999px;align-items:center;gap:2px;padding:3px;display:inline-flex}.review-scope-toggle a{min-height:26px;color:var(--platform-muted);border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-size:12px;font-weight:720;display:inline-flex}.review-scope-toggle a.is-active{background:var(--platform-ink);color:#fff}.graph-legend span{align-items:center;gap:5px;display:inline-flex}.legend-dot{background:var(--platform-blue);border-radius:999px;width:8px;height:8px}.legend-dot.issue{background:var(--danger)}.legend-dot.state{background:#596458}.security-graph-canvas{align-content:start;gap:14px;min-width:0;padding:18px;display:grid}.clean-dataset-empty{background:#41604e0f;border:1px solid #41604e29;border-radius:10px;gap:5px;min-width:520px;padding:14px;display:grid}.clean-dataset-empty strong{color:var(--platform-ink);font-size:14px}.clean-dataset-empty p{color:var(--platform-muted);margin:0;font-size:12.5px;line-height:1.45}.graph-cluster{border:1px solid color-mix(in srgb, var(--platform-line) 76%, white);background:#ffffff94;border-radius:10px;gap:13px;min-width:860px;padding:14px;display:grid}.graph-cluster.has-critical{border-color:#8f26262e}.graph-cluster-spine{grid-template-columns:minmax(154px,.9fr) 34px minmax(190px,1.2fr) minmax(0,1fr);align-items:center;display:grid}.graph-branch-list{border-left:1px solid #69717e38;gap:9px;margin-left:202px;padding-left:22px;display:grid}.graph-branch{grid-template-columns:24px minmax(220px,1.25fr) 24px minmax(118px,.72fr) minmax(0,1fr);align-items:center;display:grid}.security-node{border:1px solid var(--platform-line);background:#fffffff0;border-radius:8px;align-content:center;gap:4px;min-height:76px;padding:10px 11px;display:grid;box-shadow:0 8px 20px #11131809}.security-node span{color:var(--platform-muted);text-transform:uppercase;font-size:10.5px;line-height:1}.security-node strong{color:var(--platform-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;font-weight:720;line-height:1.25;display:-webkit-box;overflow:hidden}.security-node small{color:var(--platform-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;line-height:1.25;overflow:hidden}.source-node{border-color:#35527d38}.dataset-node{border-color:#535e6e33}.issue-node{background:#8f26260b;border-color:#8f262647}.graph-branch .issue-node{min-height:62px}.graph-branch .issue-node small{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.reason-node{border-color:#a3541c3d}.state-node{border-color:#47614f3d}.state-node.state-safe{background:#41604e13;border-color:#41604e61;box-shadow:inset 3px 0 #41604e,0 8px 20px #41604e0f}.status-pill.status-safe{color:#41604e;background:#41604e1a;border-color:#41604e38}.status-pill.status-reviewed{color:#596458;background:#47614f14;border-color:#47614f2e}.security-edge{background:linear-gradient(90deg,#69717e52,#35527d61);height:1px}.graph-branch.severity-high .issue-node{box-shadow:inset 3px 0 0 var(--danger), 0 8px 20px #8f26260f;border-color:#8f262670}.graph-branch.severity-medium .issue-node{box-shadow:inset 3px 0 0 var(--warn), 0 8px 20px #a3541c0d;border-color:#a3541c57}.graph-detail-rail{background:var(--platform-surface);align-content:start;gap:14px;padding:18px;display:grid}.graph-detail-rail h2{color:var(--platform-ink);margin:0;font-size:17px;line-height:1.25}.graph-detail-rail p{color:var(--platform-muted);margin:0;font-size:13px;line-height:1.45}.path-detail-list{gap:10px;margin:0;display:grid}.path-detail-list div{border-top:1px solid var(--platform-line);gap:3px;padding-top:10px;display:grid}.path-detail-list dt{color:var(--platform-muted);font-size:11px}.path-detail-list dd{color:var(--platform-ink);margin:0;font-size:12.5px;line-height:1.35}.path-detail-list.compact{grid-template-columns:repeat(3,minmax(0,1fr))}.finding-bulk-actions{gap:12px;min-width:0;display:grid}.finding-bulk-header,.finding-group-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.finding-bulk-header{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start}.finding-bulk-header h2{color:var(--platform-ink);margin:2px 0 0;font-size:17px;line-height:1.25}.finding-bulk-header p{color:var(--platform-muted);margin:6px 0 0;font-size:12.5px;line-height:1.45}.finding-group-list{gap:6px;max-height:280px;padding-right:2px;display:grid;overflow:auto}.issue-group-select-all{flex:none;min-height:30px;padding:0 10px;font-size:11.5px}.issue-group-row{appearance:none;border:1px solid var(--platform-line);width:100%;min-width:0;color:var(--platform-ink);cursor:pointer;font:inherit;text-align:left;background:#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;text-decoration:none;display:flex}.issue-group-row:hover,.issue-group-row.is-selected{border-color:color-mix(in srgb, var(--platform-blue) 42%, var(--platform-line));background:color-mix(in srgb, var(--platform-blue) 6%, white)}.issue-group-row>span:last-child{color:var(--platform-muted);text-transform:uppercase;flex:none;font-size:11px;font-weight:720}.finding-group-copy{min-width:0}.finding-group-copy h3{color:var(--platform-ink);margin:2px 0 0;font-size:14px;line-height:1.2}.finding-group-copy p{color:var(--platform-muted);margin:4px 0 0;font-size:12px;line-height:1.35}.selected-issue-actions,.selected-issue-empty{border:1px solid var(--platform-line);background:color-mix(in srgb, var(--platform-paper) 55%, white);border-radius:8px;gap:10px;padding:11px;display:grid}.selected-issue-actions h3{color:var(--platform-ink);margin:2px 0 0;font-size:15px}.selected-issue-actions p,.selected-issue-empty p{color:var(--platform-muted);margin:4px 0 0;font-size:12.5px;line-height:1.45}.finding-group-actions{justify-content:flex-end}.finding-group-actions form{display:inline-flex}.finding-group-actions .button{min-height:30px;padding:0 9px;font-size:11.5px}.finding-modal-backdrop{z-index:40;background:#10131847;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.finding-modal-clickaway{position:absolute;inset:0}.finding-review-modal{z-index:1;background:var(--platform-surface);border:1px solid #1013181f;border-radius:10px;gap:16px;width:min(860px,100%);max-height:calc(100vh - 56px);padding:20px;display:grid;position:relative;overflow:auto;box-shadow:0 24px 80px #10131838}.finding-modal-header{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.finding-modal-header h2{color:var(--platform-ink);margin:3px 0 0;font-size:20px;line-height:1.2}.modal-close-link{border:1px solid var(--platform-line);width:30px;height:30px;color:var(--platform-ink);background:#fff;border-radius:999px;justify-content:center;align-items:center;font-size:14px;font-weight:720;display:inline-flex}.modal-actions{justify-content:flex-start}.page-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px;display:flex}.page-title{color:var(--platform-ink);font-family:var(--font-sans);letter-spacing:0;font-size:24px;font-weight:760;line-height:1.1}.grid{gap:14px;display:grid}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.panel{padding:18px}.panel-title{color:var(--platform-ink);margin:0 0 10px;font-size:18px;font-weight:760}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th,.data-table td{border-bottom:1px solid var(--platform-line);text-align:left;vertical-align:top;padding:12px 10px}.data-table th{color:var(--platform-muted);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.priority-pill{color:#7a4b12;background:#9b6a222e;border-radius:999px;align-items:center;min-height:26px;padding:0 9px;font-size:12px;font-weight:700;display:inline-flex}.priority-pill.high{color:#a23a32;background:#ef63511f}.priority-pill.medium{color:#7a4b12;background:#9b6a222e}.queue-list{gap:8px;display:grid}.list-window-controls{justify-content:space-between;align-items:center;gap:12px;padding:12px 28px;display:flex}.queue-item{border:1px solid var(--platform-line);background:#fff;border-radius:11px;gap:6px;padding:12px;display:grid}.workbench-grid{grid-template-columns:310px minmax(0,1fr);align-items:start;gap:14px;display:grid}.review-clean-panel{padding:0;overflow:hidden}.review-clean-list{display:grid}.review-clean-item{border-bottom:1px solid var(--platform-line);background:var(--platform-surface);gap:14px;padding:18px 20px;display:grid}.review-clean-item:last-child{border-bottom:0}.review-clean-header,.review-clean-footer,.review-clean-actions{align-items:center;display:flex}.review-clean-header,.review-clean-footer{justify-content:space-between;gap:16px}.review-clean-header h3{color:var(--platform-ink);text-transform:capitalize;margin:3px 0 0;font-size:14px;font-weight:760}.review-clean-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.row-inspection-block{border:1px solid color-mix(in srgb, var(--platform-line) 82%, transparent);background:color-mix(in srgb, var(--platform-paper) 42%, white);border-radius:8px;align-content:start;gap:8px;min-width:0;padding:12px;display:grid}.row-inspection-block>span,.inspection-heading>span{color:var(--platform-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:760}.inspection-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.sensitive-display-toggle{border:1px solid var(--platform-line);background:#fff;border-radius:999px;flex:none;display:inline-flex;overflow:hidden}.sensitive-display-toggle a{min-height:24px;color:var(--platform-muted);padding:5px 9px;font-size:11px;font-weight:720;line-height:1}.sensitive-display-toggle a.is-active{background:var(--platform-ink);color:#fff}.row-inspection-block p,.row-inspection-block pre{min-width:0;max-width:100%;color:var(--platform-ink);overflow-wrap:anywhere;word-break:break-word;margin:0;font-size:12.5px;line-height:1.5}.row-inspection-block pre{white-space:pre-wrap;font-family:inherit;overflow:auto}.source-preview-text{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.source-preview-text span,.source-trigger-mark{overflow-wrap:anywhere;word-break:break-word;font-weight:400}.source-unicode-marker{color:#8f3026;font-family:var(--font-mono);background:#fff;border:1px solid #a7392d57;border-radius:4px;margin-left:4px;padding:1px 4px;font-size:.78em;line-height:1.4;display:inline-block}.source-field-label{color:var(--ink-strong);font-family:var(--font-mono)}.source-preview-text span{color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:0;text-transform:none}.row-inspection-block small{color:var(--platform-muted);overflow-wrap:anywhere;font-size:11.5px}.row-inspection-block mark,.source-trigger-mark{color:inherit;background:#a7392d2e;border-radius:4px;padding:1px 3px;box-shadow:inset 0 0 0 1px #a7392d47}.source-preview-text .source-unicode-marker{color:#8f3026;font-family:var(--font-mono);font-size:.78em}.finding-source-state{justify-items:start;gap:10px;margin:0;display:grid}.fix-block{background:#fff}.review-clean-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px}.review-clean-actions .button,.review-clean-actions .primary-action{min-height:32px;padding:0 12px;font-size:12px}.decision-grid{gap:9px;margin-top:14px;display:grid}.decision-grid button{border:1px solid var(--platform-line);width:100%;color:var(--platform-ink);cursor:pointer;text-align:left;background:#fff;border-radius:999px;padding:9px 12px}.decision-grid button:hover{border-color:var(--platform-blue);box-shadow:inset 3px 0 0 var(--platform-blue)}.queue-item textarea{resize:vertical;border:1px solid var(--platform-line);width:100%;color:var(--platform-ink);background:#fff;border-radius:10px;outline:none;padding:10px 12px}.queue-item textarea:focus{border-color:color-mix(in srgb, var(--platform-blue) 55%, var(--platform-line));box-shadow:0 0 0 4px #35527d1a}.code-block{color:#f5f6f8;background:#171717;border-radius:10px;padding:14px;font-size:13px;overflow:auto}@media (max-width:860px){.auth-body{padding:20px}.auth-shell{grid-template-columns:1fr}.auth-card{padding:26px}.auth-card h1{font-size:36px}.auth-visual{min-height:420px}.auth-visual h2{font-size:42px}.mini-workbench{grid-template-columns:1fr;margin-top:26px;position:relative;bottom:auto;left:auto;right:auto}.app-shell,.app-frame,.app-stage{height:auto;overflow:visible}.app-shell{padding:0}.app-frame,.grid.two,.grid.three,.workbench-grid,.review-clean-grid{grid-template-columns:1fr}.review-clean-footer{flex-direction:column;align-items:flex-start}.review-clean-actions{justify-content:flex-start}.finding-modal-backdrop,.status-change-backdrop{align-items:end;padding:12px}.status-change-modal{width:100%;max-height:calc(100vh - 24px);padding:16px}.status-change-actions{justify-content:flex-start}.finding-review-modal{border-radius:10px;width:100%;max-height:calc(100vh - 24px);padding:16px}.path-detail-list.compact{grid-template-columns:1fr}.table-row,.export-version-row{grid-template-columns:1fr;align-items:flex-start}.export-dataset-group{padding:16px}.export-group-header,.dataset-update-banner{flex-direction:column;align-items:flex-start}.project-lineage-card{padding:16px}.project-lineage-header{flex-direction:column}.project-lineage-actions{justify-content:flex-start}.dataset-lineage-chain{width:100%;margin-right:-2px}.export-actions{justify-content:flex-start}.app-sidebar{border-right:0;border-bottom:1px solid var(--platform-line);height:auto;min-height:auto;position:static;overflow:visible}.app-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar-account{display:none}.app-main{padding:0}.app-content-panel{min-height:calc(100vh - 149px)}.app-section-header{padding:18px 16px 14px;display:grid}.usage-summary-panel{padding:16px}.usage-summary-header{flex-direction:column;align-items:flex-start}.usage-summary-grid{grid-template-columns:1fr}.usage-summary-metric{border-right:0;border-bottom:1px solid var(--platform-line)}.usage-summary-metric:last-child{border-bottom:0}.member-invite-form{grid-template-columns:1fr;padding:16px}.audit-log-list{padding:0 16px 18px}.audit-log-header{display:none}.audit-log-row{grid-template-columns:1fr;align-items:start;gap:5px;padding:13px 0}.issue-filter-header{justify-content:stretch;padding:12px 16px 0}.issue-filter-header .issue-status-toggle{width:100%}.issue-filter-header .issue-status-toggle a{flex:1 1 0}.review-toolbar{grid-template-columns:1fr;padding:12px 16px}.review-row{grid-template-columns:28px minmax(0,1fr);align-items:start;padding:12px 16px}.review-row .status-pill,.review-row .row-action{grid-column:2;justify-self:start}.issue-feed .issue-feed-row{grid-template-columns:28px minmax(0,1fr);gap:10px}.report-feed .report-feed-row,.report-finding-row{grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px 16px}.report-row-meta{grid-column:2;grid-template-columns:max-content max-content;justify-self:start;justify-items:start}.report-meta-stack{grid-column:1/-1;justify-items:start}.report-meta-chip{text-align:left;max-width:100%}.report-finding-header,.report-finding-row{grid-template-columns:minmax(0,1fr) max-content max-content;column-gap:10px;padding-left:16px;padding-right:16px}.report-finding-severity,.report-finding-status{justify-self:start}.issue-row-meta{grid-column:2;grid-template-columns:max-content max-content;justify-self:start;justify-items:start}.issue-meta-stack{grid-column:1/-1;justify-items:start}.issue-meta-chip{text-align:left;max-width:100%}.issue-row-meta .status-pill{justify-self:start}.project-create-form,.review-upload-form,.dashboard-metrics,.dashboard-stat-grid,.report-summary-strip,.report-contract-grid,.split-surface,.security-explorer{grid-template-columns:1fr}.dashboard-stat-panel,.dashboard-stat-panel:nth-child(2n),.dashboard-stat-panel:nth-last-child(-n+2){border-right:0;border-bottom:1px solid var(--platform-line)}.dashboard-stat-panel:last-child{border-bottom:0}.report-summary-card,.report-contract-card{border-right:0;border-bottom:1px solid var(--platform-line)}.security-graph-workspace{border-right:0}.security-graph-canvas{overflow-x:auto}.security-graph-toolbar{align-items:flex-start}.graph-detail-rail{border-top:1px solid var(--platform-line)}.page-header{display:grid}}
