:root{--bg:#F5F5F5;--paper:#FFFFFF;--surface:#FFFFFF;--surface-alt:#F8F8F8;--surface-2:#F0F0F0;--text:#222222;--muted:#555555;--muted-2:#888888;--border:#CCCCCC;--border-dim:#DDDDDD;--border-dark:#999999;--header:#417690;--header-light:#4A8198;--header-dark:#264B5D;--header-deep:#205067;--accent:#417690;--accent-2:#447E9B;--accent-3:#609AB6;--accent-pale:#79AEC8;--tint:#E8F1F5;--tint-2:#D8E6F4;--link:#447E9B;--link-hover:#205067;--ok:#70BF2B;--ok-bg:#EDF7E0;--warn:#EFB80B;--warn-bg:#FCF4D9;--danger:#BA2121;--danger-bg:#FBE7E7;--info:#447E9B;--info-bg:#E8F1F5;--font-stack:"Lucida Grande","DejaVu Sans","Bitstream Vera Sans",Verdana,Arial,sans-serif;--font-mono:"Consolas","SFMono-Regular","Lucida Console","DejaVu Sans Mono",monospace}*,*::before,*::after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-stack);font-size:12px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0 0 8px;font-family:var(--font-stack);font-weight:700;color:var(--header-dark);line-height:1.25}h1{font-size:20px;font-weight:600}h2{font-size:16px;font-weight:600}h3{font-size:14px}h4{font-size:13px}p{margin:0 0 10px}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}a:active{color:var(--danger)}hr{border:0;border-top:1px solid var(--border-dim);margin:12px 0}code,pre,.tech{font-family:var(--font-mono);font-size:12px}.app-shell{display:grid;grid-template-columns:200px 1fr;grid-template-rows:56px auto auto 1fr 26px;grid-template-areas:"header  header" "banner  banner" "assume  assume" "sidebar main" "footer  footer";height:100vh;width:100%}.app-banner-row{grid-area:banner;display:flex;flex-direction:column}.app-banner{display:flex;align-items:center;gap:10px;padding:6px 16px;background:var(--warn-bg);border-bottom:1px solid var(--warn);color:#5A4A00;font-size:13px}.app-banner-maintenance{background:#F8D7DA;border-bottom-color:#C0392B;color:#7A1B12}.app-banner-maintenance .app-banner-tag{background:#C0392B;color:#FFFFFF}.app-banner-tag{font-family:var(--font-mono,monospace);font-weight:700;font-size:11px;letter-spacing:0.5px;padding:1px 6px;border-radius:3px;background:var(--warn);color:#3A2F00}.app-banner a{color:inherit;font-weight:600;text-decoration:underline}.app-impersonation{grid-area:assume;display:flex;align-items:center;gap:10px;padding:6px 16px;background:#E8F0FE;border-bottom:1px solid #4A78C4;color:#1B3A6B;font-size:13px}.app-impersonation-tag{font-family:var(--font-mono,monospace);font-weight:700;font-size:11px;letter-spacing:0.5px;padding:1px 6px;border-radius:3px;background:#4A78C4;color:#fff;text-transform:uppercase}.app-impersonation strong{text-transform:uppercase}.app-impersonation form{margin:0 0 0 auto}.app-impersonation-exit{font:inherit;cursor:pointer;padding:1px 10px;border:1px solid #4A78C4;border-radius:3px;background:#fff;color:#1B3A6B;font-weight:600}.app-impersonation-exit:hover{background:#4A78C4;color:#fff}.view-as{position:relative;margin:0}.view-as>summary{list-style:none;cursor:pointer;font-size:12px;font-weight:600;color:#FFFFFF;border-bottom:1px dotted rgba(255,255,255,0.6);white-space:nowrap}.view-as>summary::-webkit-details-marker{display:none}.view-as>summary::after{content:"\25BE";margin-left:5px;font-size:10px}.view-as>summary:hover{border-bottom-style:solid}.view-as-menu{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:3px;box-shadow:0 2px 6px rgba(0,0,0,0.18);padding:4px}.view-as-menu form{display:flex;flex-direction:column;gap:2px;margin:0}.view-as-menu button{display:block;width:100%;text-align:left;font:inherit;font-size:12px;color:var(--text);background:transparent;border:none;border-radius:2px;padding:5px 10px;cursor:pointer}.view-as-menu button:hover{background:var(--surface-2)}.app-header{grid-area:header;background:linear-gradient(to bottom,var(--header-light) 0%,var(--header) 100%);color:#FFFFFF;border-bottom:1px solid var(--header-dark);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.18);display:flex;align-items:center;justify-content:space-between;padding:0 16px}.app-brand{display:flex;align-items:center;gap:12px;color:#FFFFFF;text-decoration:none}.app-brand:hover{text-decoration:none;color:#FFFFFF}.app-logo{display:block;height:36px;width:auto;background:#FFFFFF;border:1px solid var(--header-dark);border-radius:3px;padding:2px}.app-brand-name{font-family:var(--font-stack);font-size:16px;font-weight:600;letter-spacing:0.3px;text-shadow:0 1px 0 rgba(0,0,0,0.25)}.app-brand-tagline{font-size:11px;font-weight:500;color:#C9D9E4;border-left:1px solid rgba(255,255,255,0.25);padding-left:10px;margin-left:4px}.app-header-meta{display:flex;align-items:center;gap:10px;font-size:12px;color:#DDE6EF}.app-header-meta a{color:#FFFFFF;text-decoration:none;font-weight:600;border-bottom:1px dotted rgba(255,255,255,0.6)}.app-header-meta a:hover{color:#FFFFFF;border-bottom-style:solid}.app-tz{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;font-weight:600;color:#DDE6EF!important;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.25);border-bottom:1px solid rgba(255,255,255,0.25)!important;border-radius:3px;transition:background-color 100ms linear,border-color 100ms linear,color 100ms linear}.app-tz:hover{color:#FFFFFF!important;background:rgba(255,255,255,0.16);border-color:rgba(255,255,255,0.45)!important}.app-tz-icon{flex:0 0 auto;opacity:0.85}.app-sidebar{grid-area:sidebar;background:var(--surface-alt);border-right:1px solid var(--border);padding:0;overflow-y:auto;font-size:12px}.app-sidebar .nav-section{background:transparent;color:var(--muted);font-weight:700;font-size:11px;padding:12px 14px 4px;text-transform:uppercase;letter-spacing:0.6px;border-bottom:1px solid var(--border-dim);margin-bottom:2px}.app-sidebar .nav-section:not(:first-child){margin-top:6px}.app-sidebar a{display:block;color:var(--link);text-decoration:none;padding:6px 14px;border-left:3px solid transparent;font-size:12px;transition:background-color 80ms linear,color 80ms linear}.app-sidebar a:hover{background-color:var(--tint);color:var(--link-hover);text-decoration:none}.app-sidebar a:active,.app-sidebar a.active{background-color:var(--tint);color:var(--header-dark);border-left-color:var(--accent);font-weight:700}.signout-form{display:contents}.app-header-meta .signout-form button{font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:0;box-shadow:none;padding:0;color:#FFFFFF;font-weight:600;border-bottom:1px dotted rgba(255,255,255,0.6)}.app-header-meta .signout-form button:hover{border-bottom-style:solid}.app-sidebar .signout-form button{display:block;width:100%;text-align:left;font:inherit;font-size:12px;cursor:pointer;-webkit-appearance:none;appearance:none;background:none;border:0;border-left:3px solid transparent;border-radius:0;box-shadow:none;color:var(--link);padding:6px 14px;transition:background-color 80ms linear,color 80ms linear}.app-sidebar .signout-form button:hover{background-color:var(--tint);color:var(--link-hover)}.sidebar-menu{margin:0}.sidebar-menu-toggle{display:none}.sidebar-menu-toggle::-webkit-details-marker{display:none}.app-main{grid-area:main;background:var(--paper);border-left:1px solid var(--border);padding:14px 18px;overflow:auto}.app-main h1:first-child,.app-main h2:first-child{margin-top:0}.app-footer{grid-area:footer;background:var(--surface-alt);border-top:1px solid var(--border);font-size:11px;color:var(--muted);padding:5px 14px;display:flex;align-items:center;justify-content:space-between}@media (max-width:720px){.app-shell{grid-template-columns:1fr;grid-template-rows:auto auto auto auto 1fr auto;grid-template-areas:"header" "banner" "assume" "sidebar" "main" "footer";height:auto;min-height:100vh}.app-shell>*{min-width:0}.app-header{flex-wrap:wrap;gap:6px 10px;padding:8px 12px}.app-brand-tagline{display:none}.app-sidebar{border-right:none;border-bottom:1px solid var(--border);overflow-y:visible}.sidebar-menu-toggle{display:block;list-style:none;cursor:pointer;background:var(--header);color:#FFFFFF;font-weight:600;font-size:13px;padding:10px 14px;user-select:none}.sidebar-menu-toggle::after{content:"\25be";float:right;transition:transform 100ms linear}.sidebar-menu[open] .sidebar-menu-toggle::after{transform:rotate(180deg)}.app-sidebar a,.app-sidebar .signout-form button{padding:10px 14px}.app-main{border-left:none;padding:12px;overflow:visible;min-width:0;max-width:100%}.table-scroll table.data{white-space:nowrap}.form-row{flex-direction:column;align-items:stretch;gap:4px}.form-row label{min-width:0;text-align:left}.filter-field{flex:1 1 100%}.filter-field select,.filter-field input[type="text"]{min-width:0;width:100%;box-sizing:border-box}.filter-actions,.bulk-bar{flex-wrap:wrap}.app-footer{flex-wrap:wrap;gap:2px 8px}}@media (max-width:480px){.app-header-meta .tech{display:none}.kv{grid-template-columns:1fr;gap:2px 0}.kv dt{margin-top:6px}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:3px;margin:0 0 12px;box-shadow:0 1px 0 #FFFFFF inset}.panel-header{background:linear-gradient(to bottom,var(--header-light) 0%,var(--header) 100%);color:#FFFFFF;font-weight:600;font-size:13px;padding:7px 12px;border-bottom:1px solid var(--header-dark);border-top-left-radius:2px;border-top-right-radius:2px;text-shadow:0 1px 0 rgba(0,0,0,0.2);letter-spacing:0.2px}.panel-body{padding:12px}.panel-tight .panel-body{padding:8px 12px}button,input[type="submit"],input[type="button"],.btn{display:inline-block;font-family:var(--font-stack);font-size:12px;color:var(--text);background:linear-gradient(to bottom,#FFFFFF 0%,#ECECEC 100%);border:1px solid var(--border);border-radius:3px;box-shadow:0 1px 0 #FFFFFF inset;padding:5px 14px;cursor:pointer;text-decoration:none;line-height:1.4;vertical-align:middle;transition:background 80ms linear,border-color 80ms linear}button:hover,.btn:hover{background:linear-gradient(to bottom,#F8F8F8 0%,#E0E0E0 100%);border-color:var(--border-dark);color:var(--text);text-decoration:none}button:active,.btn:active{background:linear-gradient(to bottom,#E0E0E0 0%,#ECECEC 100%);box-shadow:inset 0 1px 2px rgba(0,0,0,0.08)}button:disabled,.btn:disabled,.btn.disabled{background:var(--surface-2);color:var(--muted-2);cursor:not-allowed;opacity:0.7;box-shadow:none}.btn-primary{background:linear-gradient(to bottom,var(--header-light) 0%,var(--header) 100%);border-color:var(--header-dark);color:#FFFFFF;font-weight:600;text-shadow:0 1px 0 rgba(0,0,0,0.2);box-shadow:0 1px 0 rgba(255,255,255,0.2) inset}.btn-primary:hover{background:linear-gradient(to bottom,#4F8AA3 0%,#3B6A82 100%);color:#FFFFFF;border-color:var(--header-dark)}.btn-primary:active{background:var(--header-deep);color:#FFFFFF}.btn-danger{background:linear-gradient(to bottom,#D04949 0%,#BA2121 100%);border-color:#8A1818;color:#FFFFFF;font-weight:600;text-shadow:0 1px 0 rgba(0,0,0,0.2)}.btn-danger:hover{background:linear-gradient(to bottom,#D85959 0%,#A81C1C 100%);color:#FFFFFF}.btn.is-loading{cursor:progress;opacity:0.85}.btn-spinner{display:inline-block;width:11px;height:11px;margin-right:6px;vertical-align:-1px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:btn-spin 0.6s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.live-stamp{font-size:11px;color:var(--muted-2)}.panel-header .live-stamp{color:rgba(255,255,255,0.75)}.live-controls{display:inline-flex;align-items:center;gap:8px}.live-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-bottom:6px}.live-region.htmx-request{opacity:0.6;transition:opacity 120ms linear}.btn-google{display:inline-flex;align-items:center;gap:8px}.btn-google svg{width:14px;height:14px;flex-shrink:0}input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="search"],input[type="url"],input[type="tel"],select,textarea{font-family:var(--font-stack);font-size:12px;color:var(--text);background:#FFFFFF;border:1px solid var(--border);border-radius:3px;padding:5px 7px;line-height:1.4;box-shadow:inset 0 1px 2px rgba(0,0,0,0.04)}input:focus,select:focus,textarea:focus{border-color:var(--accent-2);outline:2px solid var(--tint-2);outline-offset:0}.channel-select{min-width:220px;max-width:100%}label{font-size:12px;font-weight:600;color:var(--text);display:inline-block;margin-right:6px}fieldset{border:1px solid var(--border);background:var(--surface);padding:12px 14px;margin:0 0 12px;border-radius:3px}legend{font-weight:700;color:var(--header-dark);padding:0 6px;font-size:12px}.form-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}.form-row label{min-width:130px;text-align:right}.inline-form{display:inline-block;margin:0 4px 0 0}.alert{border:1px solid var(--danger);border-left-width:4px;border-radius:3px;background:var(--danger-bg);color:var(--danger);font-weight:600;font-size:12px;padding:8px 12px;margin:0 0 12px}.alert-info{border-color:var(--info);background:var(--info-bg);color:var(--header-dark)}.alert-ok{border-color:var(--ok);background:var(--ok-bg);color:#3C6D17}.alert-warn,.alert-warning{border-color:var(--warn);background:var(--warn-bg);color:#8A6500}.alert-success{border-color:var(--ok);background:var(--ok-bg);color:#3C6D17}.sub-nav{display:flex;align-items:flex-end;gap:2px;margin:0 0 14px;border-bottom:1px solid var(--border);flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.sub-nav a{flex:0 0 auto;padding:6px 14px;font-size:12px;font-weight:600;color:var(--link);border:1px solid transparent;border-bottom:none;border-radius:3px 3px 0 0;text-decoration:none;white-space:nowrap;margin-bottom:-1px;transition:background-color 100ms linear,color 100ms linear,border-color 100ms linear}.sub-nav a:hover{background:var(--tint);color:var(--header-dark);border-color:var(--border);text-decoration:none}.sub-nav a.active{background:var(--surface);color:var(--header-dark);border-color:var(--border);border-bottom:1px solid var(--surface);font-weight:700}.bulk-bar{margin:0 0 8px;align-items:center;gap:6px}.bulk-bar .bulk-note{min-width:220px}.stacked-form .filter-field{margin-bottom:8px}.findings-main{display:flex;gap:12px;align-items:flex-start}.findings-rail{flex:0 0 300px;margin-bottom:0}.findings-results{flex:1 1 auto;min-width:0}.filter-field-grow{flex:1 1 auto}.filter-field-grow input[type="text"]{width:100%;box-sizing:border-box}@media (max-width:720px){.findings-main{flex-direction:column;align-items:stretch}.findings-rail{flex-basis:auto;width:100%;margin-bottom:12px}.findings-results{width:100%;max-width:100%}.sub-nav{max-width:100%}.sub-nav a{padding:8px 12px}}.finding-tree{font-size:12px}.finding-tree details{margin:0}.tree-children{margin:0;padding-left:18px}.finding-tree summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:2px 0}.finding-tree summary::-webkit-details-marker{display:none}.finding-tree summary::before{content:"\25B8";color:var(--muted);font-size:10px;width:10px;flex:0 0 10px;display:inline-block}.finding-tree details[open]>summary::before{content:"\25BE"}.tree-provider>summary{font-weight:700}.tree-rules{list-style:none}.tree-rules li{display:flex;align-items:center;gap:6px;padding:1px 0 1px 16px}.finding-tree .tree-link,.tree-all{text-decoration:none;color:var(--accent-2,#1A4E66)}.tree-all{display:inline-block;margin-bottom:6px;font-weight:600}.finding-tree .tree-link:hover,.tree-all:hover{text-decoration:underline}.finding-tree .tree-link.active,.tree-all.active{font-weight:700;color:var(--header-dark);background:var(--tint);padding:0 4px;border-radius:2px}.tree-count{margin-left:auto;min-width:20px;text-align:right;color:var(--muted);font-variant-numeric:tabular-nums}.badge{display:inline-block;font-size:11px;font-weight:700;padding:1px 7px;border:1px solid var(--border-dark);background:var(--surface-2);color:var(--text);letter-spacing:0.3px;line-height:1.4;vertical-align:middle;border-radius:2px}.badge-admin{background:var(--danger);color:#FFFFFF;border-color:#8A1818}.badge-member{background:var(--accent);color:#FFFFFF;border-color:var(--header-dark)}.badge-none,.badge-{background:var(--muted-2);color:#FFFFFF;border-color:var(--muted)}.badge-severity-critical{background:linear-gradient(to bottom,#7A0000 0%,#4B0000 100%);color:#FFFFFF;border-color:#2B0000;text-shadow:0 1px 0 rgba(0,0,0,0.3)}.badge-severity-high{background:linear-gradient(to bottom,#D94A4A 0%,var(--danger) 100%);color:#FFFFFF;border-color:#8A1818;text-shadow:0 1px 0 rgba(0,0,0,0.25)}.badge-severity-medium{background:linear-gradient(to bottom,#FFD45A 0%,var(--warn) 100%);color:#3F2F00;border-color:#B88400}.badge-severity-low{background:linear-gradient(to bottom,#A9D2E2 0%,var(--accent-pale) 100%);color:#163B4A;border-color:var(--accent-2)}.badge-severity-info{background:linear-gradient(to bottom,#FFFFFF 0%,var(--info-bg) 100%);color:var(--header-dark);border-color:var(--accent-2)}.badge-impact-high{background:linear-gradient(to bottom,#D94A4A 0%,var(--danger) 100%);color:#FFFFFF;border-color:#8A1818;text-shadow:0 1px 0 rgba(0,0,0,0.25)}.badge-impact-medium{background:linear-gradient(to bottom,#FFD45A 0%,var(--warn) 100%);color:#3F2F00;border-color:#B88400}.badge-status-open{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.badge-status-acknowledged{background:var(--warn-bg);color:#8A6500;border-color:var(--warn)}.badge-status-suppressed{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.badge-status-resolved{background:var(--ok-bg);color:#3C6D17;border-color:var(--ok)}.badge-deploy-green{background:var(--ok-bg);color:#3C6D17;border-color:var(--ok)}.badge-deploy-yellow{background:var(--warn-bg);color:#8A6500;border-color:var(--warn)}.badge-deploy-red{background:var(--danger-bg);color:var(--danger);border-color:var(--danger)}.badge-deploy-pending{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.badge-deploy-error{background:var(--danger);color:#FFFFFF;border-color:#8A1818}.badge-deploy-failed{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.badge-deploy-superseded{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.badge-env-production{background:var(--accent);color:#FFFFFF;border-color:var(--header-dark)}.badge-env-development{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.badge-ok{background:var(--ok-bg);color:#3C6D17;border-color:var(--ok)}.badge-warn{background:var(--warn-bg);color:#8A6500;border-color:var(--warn)}.badge-enabled{background:var(--ok-bg);color:#3C6D17;border-color:var(--ok)}.badge-disabled{background:var(--surface-2);color:var(--muted);border-color:var(--border-dark)}.col-check{width:1%;white-space:nowrap;text-align:center}.status{display:inline-block;width:9px;height:9px;border:1px solid rgba(0,0,0,0.35);vertical-align:middle;margin-right:5px;border-radius:2px;box-shadow:inset 0 1px 0 rgba(255,255,255,0.55)}.status-ok{background:var(--ok)}.status-warn{background:var(--warn)}.status-err,.status-danger{background:var(--danger)}.status-info{background:var(--accent-2)}.status-idle{background:var(--muted-2)}.table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}table.data{border-collapse:collapse;width:100%;margin:0 0 12px;font-size:12px;background:var(--paper);border:1px solid var(--border);border-radius:3px;overflow:hidden}table.data th{background:linear-gradient(to bottom,var(--header-light) 0%,var(--header) 100%);color:#FFFFFF;border:1px solid var(--header-dark);padding:7px 10px;text-align:left;font-weight:600;font-size:12px;letter-spacing:0.2px;text-shadow:0 1px 0 rgba(0,0,0,0.2)}table.data td{border-top:1px solid var(--border-dim);padding:7px 10px;background:#FFFFFF;vertical-align:top}table.data tr:nth-child(even) td{background:var(--surface-alt)}table.data tr:hover td{background:var(--tint)}table.data.findings-table{table-layout:auto}table.data.data-kv th{width:220px;white-space:nowrap}.findings-table .col-check{width:1%;white-space:nowrap;text-align:center}.findings-table .col-severity{width:86px}.findings-table .col-status{width:112px}.findings-table .col-rule{width:230px;overflow-wrap:anywhere}.findings-table .col-project{width:110px;overflow-wrap:anywhere}.findings-table .col-last-seen{width:132px;min-width:132px}.findings-table .asset-cell{min-width:0}.findings-table .asset-identifier{display:block;overflow-wrap:anywhere;word-break:break-all}.findings-table .col-actions{width:64px;min-width:64px;text-align:right;white-space:nowrap}.severity-heatmap{display:inline-flex;gap:2px;vertical-align:middle}.severity-heatmap .heat{display:inline-block;min-width:22px;padding:1px 4px;text-align:center;font-size:11px;font-weight:700;border:1px solid transparent;border-radius:2px}.heat.heat-critical{background:linear-gradient(to bottom,#7A0000 0%,#4B0000 100%);color:#FFFFFF;border-color:#2B0000}.heat.heat-high{background:linear-gradient(to bottom,#D94A4A 0%,var(--danger) 100%);color:#FFFFFF;border-color:#8A1818}.heat.heat-medium{background:linear-gradient(to bottom,#FFD45A 0%,var(--warn) 100%);color:#3F2F00;border-color:#B88400}.heat.heat-low{background:linear-gradient(to bottom,#A9D2E2 0%,var(--accent-pale) 100%);color:#163B4A;border-color:var(--accent-2)}.heat.heat-info{background:linear-gradient(to bottom,#FFFFFF 0%,var(--info-bg) 100%);color:var(--header-dark);border-color:var(--accent-2)}.heat.heat-zero{background:var(--tint);color:var(--muted);border-color:var(--rule);font-weight:400}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:720px){.grid-2{grid-template-columns:1fr}}.btn-small{padding:2px 8px;font-size:11px}.muted{color:var(--muted)}.small{font-size:11px}.bold{font-weight:700}.upper{text-transform:uppercase;letter-spacing:0.5px}.right{text-align:right}.center{text-align:center}.nowrap{white-space:nowrap}.spacer-4{height:4px}.spacer-8{height:8px}.spacer-12{height:12px}.spacer-16{height:16px}.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.button-row .inline-form{margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.error-page{max-width:520px;margin:24px auto 0;text-align:center}.error-page .error-code{font-size:18px;color:var(--header-dark,#264B5D);margin:0 0 16px}.error-page .error-cat{max-width:480px;width:100%;height:auto;border:1px solid var(--border);border-radius:3px;background:#FFF}.error-page p{margin:16px 0 0}.warn-note{border:1px solid var(--warn);border-left-width:4px;border-radius:3px;background:var(--warn-bg);color:#6b5300;padding:6px 10px;margin:0 0 10px}.checkbox-row{display:flex;flex-wrap:wrap;gap:6px 16px}.checkbox-inline{font-size:12px;color:var(--text);white-space:nowrap}.code-block{font-family:"DejaVu Sans Mono","Bitstream Vera Sans Mono",Menlo,Consolas,monospace;font-size:11px;line-height:1.45;color:var(--text);background:var(--surface-alt);border:1px solid var(--border);border-radius:3px;padding:8px 10px;margin:0 0 12px;overflow-x:auto;white-space:pre}.divider{border-top:1px solid var(--border-dim);margin:12px 0}.agent-run{border:1px solid var(--border);border-radius:3px;padding:8px 10px;margin:10px 0 0;background:var(--surface-alt)}.agent-run-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}.agent-steps{margin:0;padding-left:18px}.agent-step{margin:4px 0}.agent-step-label{margin-bottom:2px}.agent-payload{background:var(--surface);border:1px solid var(--border-dim);border-radius:3px;padding:6px 8px;margin:2px 0 0;max-height:240px;overflow:auto;white-space:pre-wrap;word-break:break-word}.agent-think{white-space:pre-wrap;font-style:italic}.link-button{border:0;background:none;padding:0;margin:0;font:inherit;color:var(--link);cursor:pointer;text-decoration:underline}.link-button:hover{color:var(--link-hover);text-decoration:none}dialog.modal{padding:0;width:min(900px,92vw);max-height:85vh;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);box-shadow:0 8px 28px rgba(0,0,0,0.28)}dialog.modal::backdrop{background:rgba(0,0,0,0.45)}.modal-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:var(--surface-alt);border-bottom:1px solid var(--border)}.modal-title{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.modal-close{border:0;background:none;font-size:18px;line-height:1;padding:2px 6px;cursor:pointer;color:var(--text)}.modal-body{padding:10px 12px 14px;overflow:auto;max-height:calc(85vh - 42px)}.kv{display:grid;grid-template-columns:150px 1fr;gap:4px 12px;font-size:12px}.kv dt{font-weight:700;color:var(--header-dark)}.kv dd{margin:0;color:var(--text)}.filter-bar{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:flex-end}.filter-field{display:flex;flex-direction:column;gap:3px}.filter-field label{font-size:11px;font-weight:700;color:var(--header-dark);letter-spacing:0.2px}.filter-field select,.filter-field input[type="text"]{min-width:150px}.filter-field input[type="text"]{min-width:180px}.filter-actions{display:flex;gap:6px;align-items:flex-end;padding-bottom:1px}.filter-field-check{justify-content:flex-end;padding-bottom:3px}.filter-field-check label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:400;letter-spacing:normal;color:var(--text);cursor:pointer}.pagination{display:flex;align-items:center;gap:8px;margin:8px 0 12px;font-size:12px}.pagination-info{color:var(--muted)}.metadata-pre{white-space:pre-wrap;word-break:break-all;font-family:var(--font-mono);font-size:11px;line-height:1.5;margin:0;color:var(--text)}.asset-detail-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px;align-items:stretch}.console-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;align-items:stretch}.console-overview .panel{height:100%;display:flex;flex-direction:column;margin:0}.console-overview .panel-body{display:flex;flex-direction:column;flex:1 1 auto}.console-overview .panel-body>p{margin:0 0 8px}.console-links{list-style:none;margin:0;padding:0}.console-links li{padding:7px 0;border-top:1px solid var(--border-dim)}.console-links li:first-child{border-top:none;padding-top:0}.console-links li a{font-weight:700;text-decoration:none}.console-links li span{display:block;margin-top:1px;color:var(--muted)}.settings-panel{max-width:560px}.settings-intro{margin:0 0 12px}.settings-current{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:0 0 14px;padding:8px 10px;background:var(--surface-alt);border:1px solid var(--border-dim);border-radius:3px}.settings-current-label{font-size:11px;font-weight:700;color:var(--header-dark);text-transform:uppercase;letter-spacing:0.3px}.stacked-action-form .filter-field{margin:0 0 12px;max-width:320px}.stacked-action-form .filter-field select,.stacked-action-form .filter-field input[type="text"]{width:100%;box-sizing:border-box}.stacked-action-form .form-actions{margin-top:4px}.badge-pinned{background:var(--accent);color:#FFFFFF;border-color:var(--header-dark);margin-left:4px}.project-assign-intro{margin:0 0 12px}.project-assign-grid{display:flex;flex-direction:column;gap:10px}.project-assign-form{margin:0}.project-assign-or{display:flex;align-items:center;gap:8px;color:var(--muted-2);font-size:11px;font-style:italic;text-transform:uppercase;letter-spacing:0.5px}.project-assign-or::before,.project-assign-or::after{content:"";flex:1;height:1px;background:var(--border)}.project-assign-footer{margin-top:12px;padding-top:10px;border-top:1px solid var(--border)}.panel-body-flush{padding:0}.panel-body-flush table.data{margin:0;border:0;border-radius:0}.panel:has(>.panel-body-flush table.data){overflow:hidden}.panel-empty{margin:0;padding:12px;color:var(--muted)}.signal-list{margin:0;padding-left:18px}.signal-list li{padding:2px 0;line-height:1.45}.error-group-list{margin:4px 0 0;padding-left:16px}.error-group-list li{padding:2px 0;line-height:1.4}.slack-preview{border:1px solid var(--border,#cfcfcf);border-left:4px solid #447E9B;border-radius:3px;padding:10px 14px;margin:4px 0 6px;background:#fff;max-width:640px}.slack-preview-header{font-weight:700;font-size:1.05em;margin-bottom:2px}.slack-preview-context{margin:2px 0}.slack-preview-section{margin:6px 0;line-height:1.5}.slack-preview-divider{border:0;border-top:1px solid var(--border,#e2e2e2);margin:8px 0}.stat-list{list-style:none;margin:0;padding:0}.stat-list li{border-bottom:1px solid var(--border-dim)}.stat-list li:last-child{border-bottom:0}.stat-list li:nth-child(even){background:var(--surface-alt)}.stat-list a,.stat-list .stat-list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 12px;color:var(--text);text-decoration:none}.stat-list a:hover{background:var(--tint);text-decoration:none}.stat-list a:hover .stat-list-value{color:var(--link-hover);text-decoration:underline}.stat-list-label{display:inline-flex;align-items:center;gap:6px;font-weight:600;color:var(--header-dark)}.stat-list-value{font-variant-numeric:tabular-nums;font-weight:600;color:var(--link)}.stat-list-row-muted .stat-list-label,.stat-list-row-muted .stat-list-value{color:var(--muted-2);font-weight:400}.status-sev-critical{background:var(--danger)}.status-sev-high{background:#D9534F}.status-sev-medium{background:var(--warn)}.status-sev-low{background:#6FAFCC}.status-sev-info{background:var(--muted-2)}.scanner-strip{display:flex;flex-wrap:wrap;gap:8px}.scanner-cell{display:inline-flex;align-items:center;gap:8px;padding:4px 10px 4px 8px;border:1px solid var(--border);border-left-width:4px;border-radius:2px;background:var(--surface-alt);line-height:1.4}.scanner-cell-ok{border-left-color:var(--ok);background:var(--ok-bg)}.scanner-cell-failed{border-left-color:var(--danger);background:var(--danger-bg)}.scanner-cell-running{border-left-color:var(--info);background:var(--info-bg)}.scanner-cell-status{font-size:10px;font-weight:700;letter-spacing:0.5px;color:var(--header-dark)}.scanner-cell-ok .scanner-cell-status{color:#3F7E11}.scanner-cell-failed .scanner-cell-status{color:var(--danger)}.scanner-cell-running .scanner-cell-status{color:var(--info)}.scanner-cell-provider{font-weight:600}.scanner-cell-when{font-variant-numeric:tabular-nums}table.data th .sort-link{display:inline-flex;align-items:center;color:#FFFFFF;text-decoration:none;cursor:pointer;user-select:none;white-space:nowrap}table.data th .sort-link:hover{color:#FFFFFF;text-decoration:none}table.data th .sort-link.is-sorted{color:#FFFFFF;font-weight:700}table.data th .sort-link:not(.is-sorted)::after{content:"\2195";margin-left:6px;font-size:11px;color:rgba(255,255,255,0.55)}table.data th .sort-link:hover:not(.is-sorted)::after{color:rgba(255,255,255,0.95)}.sort-arrow{display:inline-block;margin-left:6px;padding:0 4px;font-size:10px;line-height:1.5;color:var(--header-deep);background:#FFFFFF;border-radius:2px}.quick-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:8px 0 0}.quick-chips-label{margin-right:2px}.chip{display:inline-block;padding:2px 10px;font-size:12px;color:var(--link);background:var(--surface-2);border:1px solid var(--border);border-radius:999px;text-decoration:none;transition:background-color 80ms linear,border-color 80ms linear,color 80ms linear}.chip:hover{background:var(--tint,#EAF2F6);border-color:var(--border-dark);text-decoration:none}.chip-active{background:var(--accent);border-color:var(--header-dark);color:#FFFFFF}.chip-active:hover{background:var(--accent);color:#FFFFFF}.nav-fav-star{color:var(--warn);margin-right:5px}.nav-count{display:inline-block;min-width:16px;padding:0 5px;margin-left:4px;font-size:10px;font-weight:700;line-height:16px;text-align:center;color:#FFFFFF;background:var(--warn,#b5820a);border-radius:999px;vertical-align:middle}.app-sidebar .nav-empty{margin:0;padding:4px 14px 8px;line-height:1.45}.app-sidebar .nav-empty a{display:inline;padding:0;border-left:0}.page-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.col-fav{width:1%;text-align:center;padding-left:6px;padding-right:6px}.fav-toggle{background:none;border:none;box-shadow:none;padding:0 2px;margin:0;font-size:16px;line-height:1;color:var(--muted);cursor:pointer}.fav-toggle:hover{background:none;border:none;color:var(--warn)}.fav-toggle.is-fav{color:var(--warn)}.btn-fav.is-fav{color:#6B5300;border-color:var(--warn);background:linear-gradient(to bottom,#FFF6D8 0%,var(--warn-bg) 100%)}.feedback-fab{position:fixed;right:18px;bottom:44px;z-index:50;display:inline-flex;align-items:center;gap:7px;padding:9px 14px;font:inherit;font-weight:600;font-size:13px;color:#FFFFFF;background:var(--accent,#2f5fa8);border:1px solid var(--header-dark,#1d3a63);border-radius:999px;box-shadow:0 3px 10px rgba(0,0,0,0.28);cursor:pointer}.feedback-fab:hover{color:#FFFFFF;background:var(--header-dark,#1d3a63)}.feedback-fab svg{display:block}@media (max-width:640px){.feedback-fab{right:14px;bottom:40px;padding:11px;border-radius:50%}.feedback-fab span{display:none}}.form-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px}.form-error{color:var(--danger,#d32f2f);font-weight:600}.badge-muted{background:var(--surface-alt);color:var(--muted);border-color:var(--border)}.feedback-list{display:flex;flex-direction:column;gap:8px}.feedback-item-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:6px}.feedback-message{margin:0 0 8px;white-space:pre-wrap}.feedback-meta{display:flex;flex-wrap:wrap;gap:12px}.score-settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px 16px}.score-settings-grid .filter-field input[type="number"],.score-settings-grid .filter-field select{width:100%}.settings-group-title{margin:14px 0 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:var(--muted,#666)}.settings-group-title:first-of-type{margin-top:0}.settings-table label{font-weight:600}.settings-table .settings-control select{width:200px;max-width:100%}.settings-table .settings-group-row td{background:#f4f4f4;border-top:1px solid #ddd;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;color:#666;padding-top:6px;padding-bottom:6px}.settings-table tr.is-overridden td:first-child{border-left:3px solid #447e9b}.settings-table .override-tag{display:inline-block;margin-left:6px;padding:0 5px;border:1px solid #447e9b;border-radius:2px;font-size:10px;text-transform:uppercase;letter-spacing:0.03em;color:#447e9b;vertical-align:middle}.health-score-head{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.health-score-figure{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.health-score-grade{font-size:13px}.health-score-number{font-size:26px;font-weight:700;line-height:1}.health-score-number .muted{font-size:14px;font-weight:400}.health-sparkline{color:var(--accent,#417690);opacity:0.85}.health-score-why{margin-top:10px}.health-score-why summary{cursor:pointer;font-weight:600}.health-penalties{margin:8px 0;padding-left:18px}.health-penalties li{margin:2px 0}.org-health-banner .panel-body{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;flex-wrap:wrap}.org-health-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.org-health-label{font-weight:700;color:var(--header-dark,#264B5D)}.org-health-badge{font-size:13px}.org-health-number{font-size:24px;font-weight:700;line-height:1}.org-health-number .muted{font-size:13px;font-weight:400}.org-health-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}