:root{--bg: #080f1a;--surface: #0d1b2e;--surface2: #152439;--surface3: #1e3450;--bg-elevated: rgba(255, 255, 255, .04);--border: rgba(160, 195, 228, .12);--border-hover: rgba(160, 195, 228, .22);--border-active: rgba(160, 195, 228, .32);--border-glow: rgba(217, 88, 10, .15);--text: #f0f4f9;--muted: #a8c0d8;--text-dim: #5a7fa8;--accent: #d9580a;--accent-hover: #f06318;--accent-bright: #ff8c4a;--accent-muted: rgba(217, 88, 10, .1);--accent-glow: 0 0 12px rgba(217, 88, 10, .25);--navy: #0d1b2e;--navy-light: #152439;--navy-deep: #080f1a;--steel: #2c4a6e;--steel-light: #3d5a7a;--pale: #a8c0d8;--ghost: #dce8f5;--paper: #f0f4f9;--success: #4dc98a;--warning: #f0a030;--danger: #f07060;--color-pass: #4dc98a;--color-fail: #f07060;--color-warn: #eab308;--color-abstain: #f0a030;--color-pass-bg: rgba(77, 201, 138, .08);--color-pass-bg-active: rgba(77, 201, 138, .15);--color-pass-border: rgba(77, 201, 138, .35);--color-fail-bg: rgba(240, 112, 96, .08);--color-fail-bg-active: rgba(240, 112, 96, .15);--color-fail-border: rgba(240, 112, 96, .35);--color-abstain-bg: rgba(240, 160, 48, .08);--color-abstain-bg-active: rgba(240, 160, 48, .15);--color-abstain-border: rgba(240, 160, 48, .35);--redline: #d92626;--redline-light: rgba(217, 38, 38, .35);--redline-hover: rgba(217, 38, 38, .6);--redline-bg: rgba(217, 38, 38, .06);--redline-glow: rgba(217, 38, 38, .22);--severity-critical: #f07060;--severity-major: #f0a030;--severity-minor: #eab308;--severity-info: #5a7fa8;--color-present: var(--success);--color-missing: var(--color-fail);--color-not-eval: var(--muted);--radius: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-pill: 999px;--shadow: 0 1px 4px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .35), 0 1px 4px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .25);--shadow-up: none;--shadow-glow: 0 0 20px rgba(217, 88, 10, .08);--shadow-inset: inset 0 1px 2px rgba(0, 0, 0, .3);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px;--sp-10: 40px;--sp-12: 48px;--text-xs: 11px;--text-sm: 12px;--text-base: 14px;--text-md: 15px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 36px;--font-sans: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-heading: "Fraunces", Georgia, "Times New Roman", serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--leading-tight: 1.15;--leading-normal: 1.5;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--max-width: 1200px;--card-gradient: none;--nav-bg: #050c15;--bg-base: var(--bg);--bg-gradient: var(--bg);--bg-card: var(--surface);--bg-chip: var(--surface2);--border-default: var(--border);--border-muted: var(--border);--text-primary: var(--text);--text-muted: var(--muted);--text-body: #a8c0d8;--text-warn: var(--warning);--radius-sm: var(--radius);--shadow-card: var(--shadow-md);--space-1: var(--sp-1);--space-2: var(--sp-2);--space-3: var(--sp-3);--space-4: var(--sp-4);--space-5: var(--sp-5);--space-6: var(--sp-6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;font-size:14px}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;font:inherit}input,select,textarea{font:inherit}::selection{background:var(--accent-muted);color:var(--text)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}.wrap{max-width:var(--max-width);margin:0 auto;padding:var(--sp-6) var(--sp-4)}.results-layout[data-chat-open]{margin-left:calc(-1 * var(--sp-4));margin-right:calc(-1 * var(--sp-4))}.results-layout[data-chat-open] .results-main{padding:0 var(--sp-4)}.nav{display:flex;align-items:center;gap:0;padding:0 var(--sp-8);border-bottom:1px solid rgba(160,195,228,.08);background:var(--nav-bg);box-shadow:0 2px 12px #00000040;position:sticky;top:0;z-index:100;height:52px}.nav-brand-link{display:flex;align-items:center;gap:10px;text-decoration:none;padding-right:var(--sp-8);border-right:1px solid rgba(160,195,228,.12);margin-right:var(--sp-5);height:100%}.nav-logo-icon{width:26px;height:26px;background:var(--accent);border-radius:5px;display:flex;align-items:center;justify-content:center}.nav-wordmark{font-family:var(--font-heading);font-size:16px;font-weight:600;color:#fff;letter-spacing:-.01em}.nav-sep{width:1px;height:24px;background:#a0c3e41f;margin:0 var(--sp-3);flex-shrink:0}.nav-brand{font-size:14px;font-weight:700;letter-spacing:.1em;color:#fff;transition:color var(--transition-fast)}.nav-brand:hover{color:var(--accent)}.nav-link{font-size:13px;font-weight:500;color:var(--pale);transition:color var(--transition-fast);padding:0 var(--sp-4);height:52px;display:flex;align-items:center;position:relative;border-bottom:2px solid transparent;white-space:nowrap}.nav-link:after{display:none}.nav-link:hover{color:#fff}.nav-link.active{color:#fff;border-bottom-color:var(--accent-hover)}.mode-toggle{display:flex;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius);overflow:hidden;background:#ffffff0d}.mode-toggle__btn{padding:5px 12px;font-size:11px;font-weight:600;letter-spacing:.02em;color:#fff9;background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);white-space:nowrap}.mode-toggle__btn:hover:not(:disabled){color:#fff}.mode-toggle__btn--active{background:var(--accent);color:#fff}.mode-toggle__btn:disabled{opacity:.45;cursor:not-allowed}.nav-links-desktop{display:flex;align-items:center}.nav-hamburger{display:none;background:none;border:none;color:#fffc;cursor:pointer;padding:6px;margin-left:8px}.nav-hamburger:hover{color:#fff}.nav-mobile-menu{display:none}@media(max-width:768px){.nav-links-desktop,.nav-desktop-only{display:none!important}.nav-hamburger{display:flex;align-items:center;justify-content:center}.nav-mobile-menu{display:flex;flex-direction:column;position:fixed;top:52px;left:0;right:0;background:var(--nav-bg, #0d1b2e);border-bottom:1px solid rgba(160,195,228,.12);box-shadow:0 8px 24px #0006;z-index:99;padding:8px 0;animation:nav-slide-down .2s ease}@keyframes nav-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.nav-mobile-link{display:block;padding:12px 24px;font-size:14px;font-weight:500;color:var(--pale, rgba(160, 195, 228, .85));text-decoration:none;transition:background .15s ease,color .15s ease}.nav-mobile-link:hover{background:#a0c3e40f;color:#fff}.nav-mobile-link.active{color:#fff;background:#d9580a1a;border-left:3px solid var(--accent-hover, #d9580a)}}.card{background:linear-gradient(180deg,var(--surface2) 0%,var(--surface) 100%);border:1px solid rgba(160,195,228,.15);border-top:1px solid rgba(160,195,228,.22);border-radius:var(--radius-md);padding:var(--sp-4);box-shadow:var(--shadow-md),inset 0 1px #ffffff0a;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.card:hover{border-color:#a0c3e447;box-shadow:var(--shadow-lg),inset 0 1px #ffffff0f;transform:translateY(-1px)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-3);margin:var(--sp-3) 0 var(--sp-5)}.kpi-label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-weight:500}.kpi-value{font-size:40px;font-weight:800;margin-top:var(--sp-2);letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 2px 4px rgba(0,0,0,.3)}.kpi-value.pass{color:var(--color-pass)}.kpi-value.fail{color:var(--color-fail)}.kpi-value.abstain{color:var(--color-abstain)}.hero-bar{display:flex;align-items:center;gap:var(--sp-6);padding:var(--sp-5) var(--sp-6);border-radius:var(--radius-md);border:1px solid var(--border);border-top:1px solid rgba(160,195,228,.18);background:linear-gradient(180deg,var(--surface2) 0%,var(--surface) 100%);margin-bottom:var(--sp-4);box-shadow:var(--shadow-md),inset 0 1px #ffffff0a}.hero-bar--pass{border-color:#4dc98a4d;background:linear-gradient(135deg,rgba(77,201,138,.06) 0%,var(--surface2) 100%)}.hero-bar--fail{border-color:#f070604d;background:linear-gradient(135deg,rgba(240,112,96,.06) 0%,var(--surface2) 100%)}.hero-pill{display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-6);border-radius:var(--radius-pill);font-size:var(--text-xl);font-weight:800;letter-spacing:.02em;white-space:nowrap;flex-shrink:0;text-shadow:0 1px 2px rgba(0,0,0,.3)}.hero-pill--pass{background:linear-gradient(180deg,#5ae09f 0%,var(--color-pass) 100%);color:#fff;box-shadow:0 2px 8px #4dc98a59,inset 0 1px #fff3}.hero-pill--fail{background:linear-gradient(180deg,#f58878 0%,var(--color-fail) 100%);color:#fff;box-shadow:0 2px 8px #f0706059,inset 0 1px #fff3}.hero-detail{flex:1;min-width:0}.hero-blocking{font-size:var(--text-md);font-weight:600;color:var(--text);margin-bottom:var(--sp-2)}.hero-stats{display:flex;gap:var(--sp-5);flex-wrap:wrap;font-size:var(--text-sm);color:var(--muted)}.hero-stats span{white-space:nowrap}.hero-stats .stat-label{color:var(--muted)}.hero-stats .stat-value{font-weight:700;font-variant-numeric:tabular-nums}.hero-fix-time{flex-shrink:0;text-align:right}.hero-fix-time__value{font-size:var(--text-lg);font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}.hero-fix-time__label{font-size:var(--text-xs);color:var(--muted);text-transform:uppercase;letter-spacing:.06em;cursor:help}.trust-bar{display:flex;flex-wrap:wrap;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface2);margin-bottom:var(--sp-5);font-size:var(--text-xs)}.trust-bar__item{display:flex;align-items:center;gap:var(--sp-1);white-space:nowrap}.trust-bar__label{color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.trust-bar__value{font-family:var(--font-mono);font-weight:600;color:var(--text);font-size:11px}.trust-bar__value--file{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;vertical-align:middle}.redline-panel{display:flex;align-items:center;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border:1px solid rgba(160,195,228,.12);border-left:4px solid var(--accent);border-top:1px solid rgba(160,195,228,.18);border-radius:var(--radius-md);background:linear-gradient(180deg,var(--surface2) 0%,var(--surface) 100%);margin-bottom:var(--sp-6);box-shadow:var(--shadow-md),inset 0 1px #ffffff0a}.redline-panel__title{font-size:var(--text-md);font-weight:700;color:var(--text);flex:1;min-width:0;text-shadow:0 1px 2px rgba(0,0,0,.2)}.redline-panel__actions{display:flex;gap:var(--sp-2);flex-shrink:0}.redline-panel--empty{border-left-color:var(--border);color:var(--muted);box-shadow:none}.badge{display:inline-flex;align-items:center;font-size:10px;font-weight:700;padding:2px 8px;border-radius:var(--radius-pill);background:var(--surface2);border:1px solid var(--border);text-transform:uppercase;letter-spacing:.04em;transition:border-color var(--transition-fast),background var(--transition-fast);white-space:nowrap}.badge.pass{border-color:#16a34a4d;color:var(--color-pass);background:#4dc98a12}.badge.fail{border-color:#f070604d;color:var(--color-fail);background:#f0706012}.badge.abstain{border-color:#d977064d;color:var(--color-abstain);background:#d9770612}.badge.critical{border-color:#f070604d;color:var(--severity-critical);background:#f0706012}.badge.major{border-color:#f0a0304d;color:var(--severity-major);background:#f0a03012}.badge.minor{border-color:#ca8a044d;color:var(--severity-minor);background:#ca8a0412}.badge.info{border-color:#3d5a804d;color:var(--severity-info);background:#3d5a8012}.maturity-badge{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;padding:1px 6px;border-radius:3px;vertical-align:middle;line-height:1.4}.maturity-badge--pilot{color:var(--steel-light);background:#3d5a7a26;border:1px solid rgba(61,90,122,.3)}.maturity-badge--advisory{color:var(--muted);background:#a8c0d81a;border:1px solid rgba(168,192,216,.2)}.maturity-badge--draft{color:var(--severity-critical);background:#f070601a;border:1px solid rgba(240,112,96,.25)}.text-advisory{opacity:.6}.section{margin:var(--sp-8) 0}.section h2{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;color:var(--text);text-transform:none;letter-spacing:.01em;margin:0 0 var(--sp-4);border-left:3px solid var(--accent);padding-left:var(--sp-3);text-shadow:0 1px 2px rgba(0,0,0,.3)}.additional-details-heading{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;color:var(--text);text-transform:none;letter-spacing:.01em;margin:var(--sp-10) 0 var(--sp-4);padding-top:var(--sp-6);border-top:1px solid var(--border);text-shadow:0 1px 2px rgba(0,0,0,.3)}.accordion{border:1px solid rgba(160,195,228,.12);border-top:1px solid rgba(160,195,228,.18);border-radius:var(--radius-md);margin-bottom:var(--sp-3);overflow:hidden;box-shadow:var(--shadow),inset 0 1px #ffffff08}.accordion__header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--sp-3) var(--sp-4);background:linear-gradient(180deg,var(--surface3) 0%,var(--surface2) 100%);border:none;cursor:pointer;transition:background var(--transition-fast)}.accordion__header:hover{background:linear-gradient(180deg,rgba(30,52,80,.9) 0%,var(--surface3) 100%)}.accordion__title{font-family:var(--font-heading);font-size:14px;font-weight:700;color:var(--text);text-shadow:0 1px 2px rgba(0,0,0,.25)}.accordion__chevron{color:var(--muted);transition:transform var(--transition-fast);flex-shrink:0}.accordion__chevron--open{transform:rotate(180deg)}.accordion__body{padding:var(--sp-4);border-top:1px solid var(--border);background:var(--surface)}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:7px 14px;border-radius:var(--radius);font-size:13px;font-weight:600;transition:all var(--transition-fast);border:1px solid transparent;cursor:pointer}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:linear-gradient(180deg,var(--accent-hover) 0%,var(--accent) 100%);color:#fff;box-shadow:var(--shadow),inset 0 1px #ffffff26}.btn-primary:hover{background:linear-gradient(180deg,#ff7425 0%,var(--accent-hover) 100%);box-shadow:var(--shadow-md),inset 0 1px #fff3;transform:translateY(-1px)}.btn-secondary{background:linear-gradient(180deg,var(--surface2) 0%,var(--surface) 100%);border-color:var(--border);border-top-color:#a0c3e42e;color:var(--text);box-shadow:var(--shadow)}.btn-secondary:hover{border-color:var(--border-hover);background:linear-gradient(180deg,var(--surface3) 0%,var(--surface2) 100%);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-danger{background:#f0706014;border-color:#f0706040;color:var(--color-fail)}.btn-danger:hover{background:#f0706024;border-color:#f0706066}.form-group{display:flex;flex-direction:column;gap:var(--sp-1)}.form-label{font-size:var(--text-xs);font-weight:500;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.form-input,.form-select{padding:10px 14px;border-radius:7px;border:1px solid rgba(160,195,228,.2);background:#0d1b2ecc;color:var(--text);font-size:var(--text-base);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:hover,.form-select:hover{border-color:var(--border-hover)}.form-input:focus,.form-select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.text-muted{color:var(--muted)}.text-sm{font-size:var(--text-sm)}.text-warn{color:var(--warning)}.text-center{text-align:center}.mt-2{margin-top:var(--sp-2)}.mt-4{margin-top:var(--sp-4)}.mb-4{margin-bottom:var(--sp-4)}.gap-2{gap:var(--sp-2)}.gap-3{gap:var(--sp-3)}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.table-wrap{overflow-x:auto;border:1px solid rgba(160,195,228,.12);border-top:1px solid rgba(160,195,228,.18);border-radius:var(--radius-md);box-shadow:var(--shadow)}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:var(--text-xs);font-weight:700;color:var(--pale);text-transform:uppercase;letter-spacing:.06em;padding:10px 14px;border-bottom:1px solid var(--border-hover);background:linear-gradient(180deg,var(--surface3) 0%,var(--surface2) 100%);text-shadow:0 1px 1px rgba(0,0,0,.2)}td{padding:10px 14px;border-bottom:1px solid var(--border);font-size:13px;color:var(--text)}tbody tr{transition:background var(--transition-fast)}tbody tr:nth-child(2n) td{background:#ffffff04}tbody tr:hover td{background:#a0c3e40f}tbody tr:last-child td{border-bottom:none}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:pulse 2s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.intel-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4);margin:var(--sp-1) 0}.intel-row .section{margin:var(--sp-3) 0}@media(max-width:768px){.intel-row{grid-template-columns:1fr}}.risk-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}.risk-item{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3) var(--sp-3);border-bottom:1px solid var(--border);transition:background var(--transition-fast),transform var(--transition-fast);border-radius:var(--radius);margin:0 calc(-1 * var(--sp-3))}.risk-item:hover{background:#a0c3e40f;transform:translate(2px)}.risk-item--clickable{cursor:pointer}.risk-item--clickable:hover{background:#d9580a14}.risk-item--clickable:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.risk-item:last-child{border-bottom:none}.risk-item-header{display:flex;align-items:center;gap:var(--sp-2)}.risk-goto-icon{color:var(--muted);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;margin-left:auto}.risk-item--clickable:hover .risk-goto-icon{opacity:1}@keyframes finding-flash{0%{background:#d9580a33}to{background:transparent}}.finding-highlight>td{animation:finding-flash 2s ease-out}.risk-title{font-size:13px;font-weight:700;color:var(--text);text-shadow:0 1px 1px rgba(0,0,0,.15)}.risk-meta{display:flex;gap:var(--sp-3);padding-left:2px}.next-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:768px){.next-actions-grid{grid-template-columns:1fr}}.next-action-card{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);transition:border-color .12s ease}.next-action-card:hover{border-color:#a0c3e440}.next-action-num{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f0706026;color:var(--color-fail);font-size:11px;font-weight:700;margin-top:1px}.next-action-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.35}.next-action-body{font-size:12px;color:var(--text-body);margin-top:2px;line-height:1.35}.next-action-sheets{font-size:11px;color:var(--muted);margin-top:3px;font-family:var(--font-mono)}.posture-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-3)}.posture-item{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-3);border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);transition:border-color var(--transition-fast)}.posture-item:hover{border-color:var(--border-hover)}.posture-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:12px;font-weight:800;flex-shrink:0}.posture-icon.on{background:#4dc98a1a;color:var(--color-pass)}.posture-icon.off{background:#f070601a;color:var(--color-fail)}.posture-label{font-size:13px;color:var(--text)}.results-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:var(--sp-5)}.results-tab{padding:var(--sp-3) var(--sp-5);font-size:13px;font-weight:500;color:var(--muted);background:transparent;border:none;cursor:pointer;position:relative;transition:color var(--transition-fast)}.results-tab:after{content:"";position:absolute;bottom:-1px;left:50%;right:50%;height:2px;background:var(--accent);transition:left var(--transition-normal),right var(--transition-normal);border-radius:1px 1px 0 0}.results-tab:hover{color:var(--text)}.results-tab--active{color:var(--text);font-weight:600}.results-tab--active:after{left:0;right:0}.review-layout{display:grid;grid-template-columns:260px 1fr 300px;gap:0;border:1px solid rgba(160,195,228,.12);border-radius:var(--radius-md);overflow:hidden;height:calc(100vh - 120px);min-height:500px;box-shadow:0 4px 24px #00000059}.review-sidebar{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface)}.review-sidebar-header{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;gap:var(--sp-2)}.review-queue-bar{display:flex;align-items:center;gap:var(--sp-2);flex-wrap:wrap}.review-queue-count{font-size:var(--text-xs);font-weight:700;color:var(--text);margin-right:auto}.review-queue-shortcuts{font-size:11px;color:var(--muted);font-family:var(--font-mono)}.review-queue-btn{padding:5px 10px;font-size:11px}.review-progress{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2);font-size:11px;color:var(--muted)}.review-quick-actions{display:flex;gap:var(--sp-2)}.review-sidebar-list{overflow-y:auto;flex:1}.review-finding-row{display:flex;align-items:flex-start;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);cursor:pointer;border-bottom:1px solid var(--border);transition:background var(--transition-fast)}.review-finding-row:hover{background:#ffffff0a}.review-finding-row--active{background:#d9580a0f;border-left:3px solid var(--accent);padding-left:calc(var(--sp-4) - 3px)}@keyframes highlight-pulse{0%{background:#d9580a1f}50%{background:#d9580a0a}to{background:#d9580a1f}}.review-finding-row--highlight{animation:highlight-pulse .5s ease-in-out 2}.bubble-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid var(--severity-critical);background:transparent;font-size:var(--text-xs);font-weight:800;color:var(--text);flex-shrink:0;margin-top:2px}.review-finding-body{flex:1;min-width:0}.review-finding-header{display:flex;align-items:center;gap:6px;margin-bottom:2px}.review-finding-title{font-size:var(--text-sm);font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-finding-meta{display:flex;gap:var(--sp-2);font-size:var(--text-xs);color:var(--muted);flex-wrap:wrap}.review-fix-status{font-size:9px;padding:1px 6px}.review-fix-status--fixed{border-color:#4dc98a4d;color:var(--color-pass);background:#4dc98a12}.review-fix-status--in_progress{border-color:#f0a0304d;color:var(--severity-major);background:#f0a03012}.review-fix-status--needs_review{border-color:#6b728059;color:var(--muted);background:#6b72801a}.review-fix-status--waived{border-color:#6366f14d;color:var(--severity-info);background:#6366f112}.review-inspector{border-top:1px solid var(--border);padding:var(--sp-3) var(--sp-4);background:var(--surface);flex-shrink:0}.review-inspector-title{font-size:13px;font-weight:700;color:var(--text);line-height:1.35;margin-bottom:var(--sp-2)}.review-inspector-meta{display:flex;align-items:center;gap:var(--sp-2);font-size:11px;color:var(--muted);margin-bottom:var(--sp-2)}.review-inspector-text{font-size:12px;color:var(--text);margin:0 0 var(--sp-2) 0;line-height:1.45}.review-inspector-actions{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-1)}.review-inspector-tech{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-1)}.review-viewer{display:flex;flex-direction:column;background:#c8d4e4;position:relative}.review-viewer-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;border-bottom:1px solid var(--border);background:var(--navy);flex-shrink:0;color:var(--pale);min-height:42px}.review-viewer-toolbar .text-sm,.review-viewer-toolbar .text-muted{color:var(--muted);font-size:12px;font-family:var(--font-mono)}.review-toggle{display:flex;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);overflow:hidden;background:#ffffff0a}.review-toggle-btn{padding:3px 12px;font-size:11px;font-weight:600;color:var(--pale);background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.review-toggle-btn:hover{color:var(--text)}.review-toggle-btn--active{background:var(--accent);color:#fff;box-shadow:0 1px 3px #0003;border-radius:4px}.review-iframe{flex:1;width:100%;border:none;background:#fff}.redline-callout{position:absolute;z-index:1;pointer-events:auto;cursor:pointer;animation:callout-enter .35s cubic-bezier(.22,1,.36,1) both}.redline-callout-area{position:absolute;top:0;right:0;bottom:0;left:0;border:2px dashed var(--redline-light);border-radius:3px;background:transparent;transition:border-color .15s,background .15s}.redline-callout:hover .redline-callout-area,.redline-callout--hover .redline-callout-area{border-color:var(--redline-hover);background:#d926260a}.redline-callout--active .redline-callout-area{border:2.5px solid var(--redline);background:var(--redline-bg)}.redline-callout-connector{position:absolute;top:-28px;left:50%;width:0;height:28px;border-left:1.5px dashed var(--redline);opacity:.55;pointer-events:none;z-index:2;transition:opacity .15s,border-color .15s}.redline-callout:hover .redline-callout-connector,.redline-callout--hover .redline-callout-connector{opacity:.8;border-left-width:2px}.redline-callout--active .redline-callout-connector{opacity:1;border-left-width:2px;border-left-style:solid}.redline-callout-label{position:absolute;bottom:calc(100% + 30px);left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:5px;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;padding:4px 10px 4px 6px;border-radius:3px;background:#fffcf0f0;border:1.5px solid var(--redline);color:#2a0808;font-size:10px;font-weight:600;font-family:var(--font-mono);line-height:1.3;letter-spacing:.01em;box-shadow:0 1px 4px #0000001f;pointer-events:none;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;z-index:4}.redline-callout-num{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;min-width:16px;border-radius:50%;background:var(--redline);color:#fff;font-size:9px;font-weight:700;line-height:1}.redline-callout-text{overflow:hidden;text-overflow:ellipsis}.redline-callout:hover .redline-callout-label,.redline-callout--hover .redline-callout-label{background:#fffcf0fa;box-shadow:0 2px 8px #0000002e;transform:translate(-50%) translateY(-1px)}.redline-callout--active .redline-callout-label{background:#fff5f5;border-width:2px;border-color:var(--redline);box-shadow:0 2px 10px var(--redline-glow);transform:translate(-50%) translateY(-2px)}.redline-callout--active{z-index:5}.redline-callout-tooltip{display:none;position:absolute;bottom:calc(100% + 58px);left:50%;transform:translate(-50%);min-width:180px;max-width:320px;padding:8px 12px;border-radius:4px;background:#fffde8;border:1.5px solid #d4a800;box-shadow:0 3px 12px #00000038;font-size:11px;line-height:1.4;color:#333;white-space:normal;word-wrap:break-word;z-index:20;pointer-events:none}.redline-callout-tooltip strong{color:#b45309;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.redline-callout:hover .redline-callout-tooltip,.redline-callout--active .redline-callout-tooltip{display:block}@keyframes callout-enter{0%{opacity:0;transform:scale(.92) translateY(4px)}to{opacity:1;transform:scale(1) translateY(0)}}.redline-annotation-label,.redline-annotation-number,.redline-annotation-text{display:none}.review-bbox-flash{position:absolute;border:3px solid var(--accent);border-radius:3px;background:#d9580a14;box-shadow:0 0 0 9999px #2c3e5026;pointer-events:none;z-index:5;animation:bbox-pan-in .28s cubic-bezier(.22,1,.36,1) forwards,bbox-pulse .6s ease-in-out .28s 2,bbox-fade-out .4s ease-out 1.2s forwards}@keyframes bbox-pan-in{0%{opacity:0;transform:scale(.92) translateY(6px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes bbox-pulse{0%{box-shadow:0 0 0 9999px #2c3e5038,0 0 #3498db66}50%{box-shadow:0 0 0 9999px #2c3e5038,0 0 0 8px #3498db26}to{box-shadow:0 0 0 9999px #2c3e5038,0 0 #3498db66}}@keyframes bbox-fade-out{0%{opacity:1}to{opacity:0}}.review-iframe--fade-out{animation:iframe-fade-out .3s ease-out forwards}.review-iframe--fade-in{animation:iframe-fade-in .3s ease-out forwards}@keyframes iframe-fade-out{0%{opacity:1}to{opacity:0}}@keyframes iframe-fade-in{0%{opacity:0}to{opacity:1}}.review-pdf-error{padding:32px 24px;text-align:center;color:#2c3e50;background:#c8d4e4;border-bottom:1px solid rgba(0,0,0,.08)}.review-page{display:flex;flex-direction:column;height:calc(100vh - 80px);margin:0 calc(-1 * var(--sp-4))}@media(max-width:768px){.review-layout{grid-template-columns:1fr;height:auto}.issues-nav{border-right:none;border-bottom:1px solid var(--border);max-height:320px}.details-panel{border-left:none;border-top:1px solid var(--border);max-height:360px;overflow-y:auto}.review-iframe{min-height:500px}.hero-bar{flex-direction:column;align-items:flex-start;padding:var(--sp-4)}.hero-fix-time{text-align:left}}@media print{body{background:#fff;color:#111}.card{box-shadow:none}.nav{display:none}.wrap{max-width:100%}}@keyframes page-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-enter var(--transition-slow) both}@keyframes skeleton-shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,var(--surface2) 25%,var(--bg-elevated) 50%,var(--surface2) 75%);background-size:800px 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-radius:var(--radius)}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--sp-3);margin:var(--sp-5) 0}.skeleton-card{height:120px}.skeleton-bar{height:24px;width:60%;margin-bottom:var(--sp-3)}.skeleton-bar-sm{height:16px;width:40%}.stepper{display:flex;align-items:center;justify-content:center;gap:0;margin:var(--sp-6) auto;max-width:600px}.stepper-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.stepper-dot{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:700;color:var(--muted);transition:all var(--transition-normal);z-index:1}.stepper-step--active .stepper-dot{border-color:var(--accent);color:var(--accent)}.stepper-step--done .stepper-dot{border-color:var(--accent);background:var(--accent);color:#fff}.stepper-label{font-size:var(--text-xs);color:var(--muted);margin-top:var(--sp-2);text-align:center;transition:color var(--transition-normal)}.stepper-step--active .stepper-label{color:var(--text);font-weight:600}.stepper-step--done .stepper-label{color:var(--accent)}.stepper-line{flex:1;height:2px;background:var(--border);margin:0 -8px 28px;transition:background var(--transition-normal)}.stepper-line--done{background:var(--accent)}.details-toggle{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-sm);color:var(--muted);cursor:pointer;padding:var(--sp-2) 0;transition:color var(--transition-fast);background:none;border:none}.details-toggle:hover{color:var(--text)}.details-toggle-icon{display:inline-block;transition:transform var(--transition-fast);font-size:10px}.details-toggle-icon--open{transform:rotate(90deg)}.details-content{overflow:hidden;transition:max-height var(--transition-normal),opacity var(--transition-normal);max-height:0;opacity:0}.details-content--open{max-height:300px;opacity:1}.btn-cta{display:flex;align-items:center;justify-content:center;gap:var(--sp-2);width:100%;padding:14px 24px;font-size:var(--text-base);font-weight:700;border-radius:var(--radius-md);background:var(--accent);color:#fff;transition:background var(--transition-fast),transform var(--transition-fast)}.btn-cta:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.btn-cta:active:not(:disabled){transform:translateY(0) scale(.99)}.btn-cta:disabled{opacity:.4;cursor:not-allowed}.btn-cta-outline{background:transparent;border:2px solid var(--accent);color:var(--accent)}.btn-cta-outline:hover:not(:disabled){background:var(--accent-muted);transform:translateY(-1px)}.back-link{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--text-sm);color:var(--muted);transition:color var(--transition-fast);margin-bottom:var(--sp-3)}.back-link:hover{color:var(--text)}.hero-row{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-1)}.hero-row>.card{flex:1;min-width:200px}.severity-bar{display:flex;gap:1px;height:10px;border-radius:var(--radius-pill);overflow:hidden;background:var(--surface2);box-shadow:inset 0 1px 2px #00000014}.severity-bar__segment{transition:width var(--transition-slow);min-width:0}.severity-bar__segment:first-child{border-radius:var(--radius-pill) 0 0 var(--radius-pill)}.severity-bar__segment:last-child{border-radius:0 var(--radius-pill) var(--radius-pill) 0}.severity-bar__segment:only-child{border-radius:var(--radius-pill)}.severity-legend{display:flex;gap:var(--sp-4);flex-wrap:wrap;margin-top:var(--sp-3)}.severity-legend__item{display:flex;align-items:center;gap:var(--sp-1);font-size:var(--text-sm);color:var(--text)}.severity-legend__dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.coverage-card{display:flex;flex-direction:column}.coverage-header{display:flex;align-items:baseline;gap:var(--sp-2)}.coverage-pct{font-size:28px;font-weight:800;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.coverage-subtitle{font-size:var(--text-sm);color:var(--muted)}.download-row{display:flex;gap:var(--sp-3);flex-wrap:wrap;align-items:center;margin:var(--sp-3) 0 var(--sp-5)}.download-dropdown-item{display:block;padding:8px 14px;font-size:13px;color:var(--text);text-decoration:none;transition:background var(--transition-fast);border:none;background:none;cursor:pointer;text-align:left;width:100%;font-family:inherit}.download-dropdown-item:hover{background:var(--surface2)}.status-dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:800;line-height:1;flex-shrink:0}.status-dot--present{background:#4dc98a1a;color:var(--color-pass)}.status-dot--missing{background:#f070601a;color:var(--color-fail)}.status-dot--unknown{background:#6b72801a;color:var(--muted)}.expand-arrow{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius);color:var(--muted);transition:transform var(--transition-fast),color var(--transition-fast)}.expand-arrow--open{transform:rotate(180deg)}.readiness-help{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border-radius:50%;border:1px solid var(--border);font-size:9px;font-weight:700;color:var(--muted);margin-left:4px;cursor:help;vertical-align:middle}.readiness-help:hover{color:var(--text);border-color:var(--accent)}.finding-detail-label{display:block;font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.group-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface2);font-size:var(--text-xs)}.group-toggle__btn{padding:4px 10px;font-size:11px;font-weight:600;color:var(--muted);background:transparent;border:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.group-toggle__btn:hover{color:var(--text)}.group-toggle__btn--active{background:var(--accent);color:#fff}.group-header td{background:var(--surface2);font-weight:700;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:var(--text);padding:8px 14px;border-bottom:2px solid var(--border-hover)}.feedback-buttons{display:inline-flex;gap:2px;align-items:center}.feedback-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius);border:1px solid transparent;background:transparent;color:var(--muted);font-size:10px;cursor:pointer;transition:all var(--transition-fast);padding:0;line-height:1}.feedback-btn:hover{background:var(--bg-elevated);border-color:var(--border);color:var(--text)}.feedback-btn:disabled{opacity:.4;cursor:not-allowed}.feedback-btn--active-up{background:#4dc98a1a;color:var(--color-pass);border-color:#16a34a4d}.feedback-btn--active-down{background:#f070601a;color:var(--color-fail);border-color:#f070604d}.feedback-note{padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.results-layout{display:flex;gap:0;align-items:flex-start}.results-main{flex:1;min-width:0}.chat-fab{position:fixed;bottom:var(--sp-6);right:var(--sp-6);display:flex;align-items:center;gap:var(--sp-2);padding:12px 20px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-pill);font-size:13px;font-weight:700;cursor:pointer;box-shadow:var(--shadow-lg);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast);z-index:150}.chat-fab:hover{transform:translateY(-2px);background:var(--accent-hover);box-shadow:var(--shadow-lg)}.chat-fab:active{transform:translateY(0) scale(.97)}.chat-sidebar{position:sticky;top:49px;width:380px;flex-shrink:0;height:calc(100vh - 49px);background:var(--surface);border-left:1px solid var(--border-hover);display:flex;flex-direction:column;overflow:hidden}.chat-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4);border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.chat-drawer-header h3{margin:0;font-size:14px;font-weight:700;display:flex;align-items:center;gap:var(--sp-2)}.chat-drawer-close{background:none;border:none;color:var(--muted);cursor:pointer;padding:var(--sp-1);border-radius:var(--radius);transition:color var(--transition-fast),background var(--transition-fast);display:flex;align-items:center}.chat-drawer-close:hover{color:var(--text);background:var(--surface2)}.chat-messages{flex:1;overflow-y:auto;padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.chat-msg{max-width:90%;padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-md);font-size:13px;line-height:1.6;word-wrap:break-word;white-space:pre-wrap}.chat-msg--user{align-self:flex-end;background:var(--accent-muted);border:1px solid rgba(30,58,95,.15);color:var(--text)}.chat-msg--assistant{align-self:flex-start;background:var(--surface);border:1px solid var(--border);color:var(--text)}.chat-citation{margin-top:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);font-size:11px}.chat-citation-header{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:2px}.chat-citation-rule{font-family:var(--font-mono);font-weight:600;font-size:11px;color:var(--accent)}.chat-citation-evidence{font-style:italic;color:var(--muted);font-size:11px;margin-top:2px}.chat-citation-meta{font-size:10px;color:var(--muted);margin-top:2px}.chat-citation--clickable{cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.chat-citation--clickable:hover{border-color:var(--accent);background:var(--accent-muted)}.chat-citation-goto{margin-left:auto;color:var(--muted);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0}.chat-citation--clickable:hover .chat-citation-goto{opacity:1}.chat-suggestions{display:flex;flex-wrap:wrap;gap:var(--sp-2);padding:var(--sp-4)}.chat-suggestion-chip{padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-pill);font-size:12px;color:var(--text);cursor:pointer;transition:border-color var(--transition-fast),background var(--transition-fast)}.chat-suggestion-chip:hover{border-color:var(--accent);background:var(--accent-muted)}.chat-input-area{display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--border);background:var(--surface);flex-shrink:0}.chat-input{flex:1;padding:10px 12px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:13px;font-family:var(--font-sans);transition:border-color var(--transition-fast)}.chat-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-muted)}.chat-send-btn{padding:10px 16px;background:var(--accent);color:#fff;border:none;border-radius:var(--radius);font-weight:700;font-size:13px;cursor:pointer;transition:background var(--transition-fast),transform var(--transition-fast)}.chat-send-btn:hover:not(:disabled){background:var(--accent-hover)}.chat-send-btn:active:not(:disabled){transform:scale(.95)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-loading{display:flex;gap:4px;padding:var(--sp-3);align-self:flex-start}.chat-loading-dot{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:chat-bounce 1.2s ease-in-out infinite}.chat-loading-dot:nth-child(2){animation-delay:.15s}.chat-loading-dot:nth-child(3){animation-delay:.3s}@keyframes chat-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}@media(max-width:768px){.results-layout{flex-direction:column}.chat-sidebar{position:relative;width:100%;height:auto;max-height:50vh;border-left:none;border-top:1px solid var(--border-hover)}}@media(max-width:480px){.chat-fab{bottom:var(--sp-4);right:var(--sp-4);padding:10px 16px;font-size:12px}}.report-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:300}.report-modal{position:fixed;top:5vh;left:50%;transform:translate(-50%);width:90vw;max-width:900px;max-height:88vh;background:var(--surface);border:1px solid var(--border-hover);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;z-index:301;animation:page-enter var(--transition-slow) both}.report-modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border);flex-shrink:0}.report-modal-close{background:none;border:none;color:var(--muted);cursor:pointer;padding:var(--sp-1);border-radius:var(--radius);transition:color var(--transition-fast),background var(--transition-fast);display:flex;align-items:center}.report-modal-close:hover{color:var(--text);background:var(--surface2)}.report-modal-body{flex:1;overflow-y:auto;padding:var(--sp-5);font-size:13px;line-height:1.7;color:var(--text)}.report-modal-body h1{font-size:20px;font-weight:700;margin:24px 0 8px}.report-modal-body h2{font-size:16px;font-weight:700;margin:20px 0 6px;color:var(--accent)}.report-modal-body h3{font-size:14px;font-weight:600;margin:16px 0 4px}.report-modal-body p{margin:4px 0}.report-modal-body li{margin-left:20px;list-style:disc}.report-modal-body hr{border:none;border-top:1px solid var(--border);margin:16px 0}.report-modal-body code{background:var(--surface2);padding:1px 5px;border-radius:3px;font-family:var(--font-mono);font-size:12px}.report-modal-body strong{font-weight:700}.report-table{width:100%;border-collapse:collapse;margin:12px 0;font-size:12px}.report-table th{text-align:left;padding:8px 10px;background:var(--surface2);border-bottom:1px solid var(--border-hover);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.report-table td{padding:8px 10px;border-bottom:1px solid var(--border);vertical-align:top}.report-table tbody tr:hover td{background:#ffffff0a}.issues-nav{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface);overflow:hidden;box-shadow:inset -1px 0 #ffffff0f}.issues-nav-header{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0}.issues-nav-title{font-size:13px;font-weight:700;color:var(--text);letter-spacing:-.01em}.issues-nav-counter{font-size:11px;font-weight:600;color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto}.issues-nav-controls{display:flex;gap:2px}.issues-nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--muted);cursor:pointer;transition:all var(--transition-fast)}.issues-nav-btn:hover:not(:disabled){background:var(--surface2);color:var(--text);border-color:var(--border-hover)}.issues-nav-btn:disabled{opacity:.35;cursor:default}.issues-nav-progress{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--border);flex-shrink:0}.issues-nav-progress-bar{flex:1;height:3px;background:var(--surface2);border-radius:2px;overflow:hidden}.issues-nav-progress-fill{height:100%;background:var(--color-pass);border-radius:2px;transition:width var(--transition-normal)}.issues-nav-progress-label{font-size:10px;color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums}.issues-nav-list{overflow-y:auto;flex:1}.issues-nav-empty{padding:var(--sp-6) var(--sp-4);text-align:center;font-size:12px;color:var(--muted)}.issue-row{display:flex;align-items:flex-start;gap:var(--sp-3);padding:10px var(--sp-4);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);transition:background var(--transition-fast)}.issue-row:hover{background:#ffffff0a}.issue-row--active{background:#d9580a0f;border-left:3px solid var(--accent);padding-left:calc(var(--sp-4) - 3px)}.issue-row--highlight{animation:highlight-pulse .5s ease-in-out 2}.issue-row-status{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:10px;margin-top:1px}.issue-row-status[data-status=FAIL]{color:var(--color-fail)}.issue-row-status[data-status=PASS]{color:var(--color-pass)}.issue-row-status[data-status=ABSTAIN]{color:var(--color-abstain)}.issue-row-body{flex:1;min-width:0}.issue-row-title{font-size:13px;font-weight:600;color:var(--text);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issue-row-meta{display:flex;align-items:center;gap:6px;margin-top:2px}.issue-row-sheet,.issue-row-bubble{font-size:11px;color:var(--muted);font-family:var(--font-mono)}.issue-row-resolved{flex-shrink:0;color:var(--color-pass);font-size:12px;margin-top:2px}.details-panel{display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface);overflow-y:auto}.details-panel-empty{display:flex;align-items:center;justify-content:center;height:100%;font-size:13px;color:var(--muted)}.details-panel-header{padding:var(--sp-4);border-bottom:1px solid var(--border)}.details-panel-badges{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2)}.details-panel-sheet{font-size:11px;color:var(--muted);font-family:var(--font-mono)}.details-panel-title{font-size:15px;font-weight:700;color:var(--text);line-height:1.35;margin:0;letter-spacing:-.01em}.details-panel-actions{display:flex;gap:6px;padding:10px 18px;border-bottom:1px solid var(--border)}.details-action-btn{display:inline-flex;align-items:center;gap:4px;padding:7px 14px;font-size:12px;font-weight:600;border:1px solid var(--border);border-radius:6px;background:#0d1b2eb3;color:var(--muted);cursor:pointer;transition:all var(--transition-fast)}.details-action-btn:hover{background:#ffffff14;color:var(--text);border-color:var(--accent)}.details-action-btn--copy{margin-left:auto}.details-panel-section{padding:var(--sp-5) 18px;border-bottom:1px solid rgba(255,255,255,.04)}.details-panel-label{display:flex;align-items:center;gap:var(--sp-2);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--text-dim);margin-bottom:8px;font-family:var(--font-mono)}.details-panel-text{font-size:14px;line-height:1.7;color:var(--muted)}.details-panel-expand{background:none;border:none;color:var(--accent);font-size:11px;cursor:pointer;padding:2px 0;text-decoration:underline;text-underline-offset:2px}.details-evidence-list{margin:0;padding:12px 16px;list-style:none;background:#0d1b2ecc;border:1px solid var(--border);border-radius:7px;font-size:13px;color:var(--muted);line-height:1.5}.details-evidence-list li{margin-bottom:6px}.details-panel-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;color:var(--muted);font-size:11px;font-weight:600;cursor:pointer;padding:0}.details-panel-toggle:hover{color:var(--text)}.details-panel-toggle-icon{display:inline-flex;transition:transform var(--transition-fast)}.details-panel-toggle-icon--open{transform:rotate(90deg)}.details-panel-tech{margin-top:var(--sp-2);display:flex;flex-direction:column;gap:var(--sp-2)}.details-tech-row{display:flex;align-items:baseline;gap:var(--sp-2);font-size:11px}.details-tech-label{color:var(--muted);white-space:nowrap;min-width:70px}.details-tech-row code{font-family:var(--font-mono);font-size:10px;color:var(--muted);word-break:break-all}.demo-landing{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 80px);padding:var(--sp-6)}.demo-card{text-align:center;max-width:480px;width:100%}.demo-brand{font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--muted);margin-bottom:var(--sp-3)}.demo-title{font-size:28px;font-weight:800;letter-spacing:-.02em;color:var(--text);margin:0 0 var(--sp-6) 0;line-height:1.2}.demo-badge{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700;border-radius:var(--radius-pill);padding:8px 20px;margin-bottom:var(--sp-6)}.demo-badge--pass{color:var(--color-pass);background:#4dc98a14;border:1px solid rgba(77,201,138,.25)}.demo-badge--fail{color:var(--color-fail);background:#f0706014;border:1px solid rgba(240,112,96,.25)}.demo-stats{display:flex;justify-content:center;gap:var(--sp-8);margin-bottom:var(--sp-8)}.demo-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.demo-stat-value{font-size:28px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.demo-stat-label{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.demo-cta{display:inline-flex;align-items:center;justify-content:center;padding:14px 56px;font-size:15px;font-weight:700;border-radius:var(--radius-md);margin-bottom:var(--sp-6)}.demo-secondary{display:flex;gap:var(--sp-3);justify-content:center;flex-wrap:wrap;margin-bottom:var(--sp-6)}.demo-btn-sm{font-size:12px;padding:6px 14px}.demo-link{background:none;border:none;color:var(--muted);font-size:12px;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.demo-link:hover{color:var(--text)}.demo-loading{color:var(--muted);font-size:14px}.review-right-col{display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface);overflow:hidden;min-height:0;overflow-y:auto;box-shadow:inset 1px 0 #ffffff0f}.review-right-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0}.review-right-tab{flex:1;padding:10px 12px;font-size:11px;font-weight:600;text-align:center;background:none;border:none;border-bottom:2px solid transparent;color:var(--muted);cursor:pointer;transition:all var(--transition-fast)}.review-right-tab:hover{color:var(--text);background:#ffffff0a}.review-right-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.review-right-col>.details-panel{border-left:none;flex:1;min-height:0}.review-right-col .fix-guidance{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto}.review-right-col .fix-guidance-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:var(--sp-6) var(--sp-4);color:var(--muted);font-size:13px;flex:1}.review-right-col .fix-guidance-list{border-bottom:1px solid var(--border);flex-shrink:0}.review-right-col .fix-guidance-list-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border)}.review-right-col .fix-guidance-list-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.review-right-col .fix-guidance-list-count{font-size:10px;font-weight:700;color:var(--muted);background:var(--surface2);border-radius:10px;padding:1px 7px}.review-right-col .fix-guidance-list-scroll{max-height:200px;overflow-y:auto}.review-right-col .fix-guidance-row{display:flex;align-items:center;gap:var(--sp-2);padding:8px var(--sp-4);cursor:pointer;border-bottom:1px solid rgba(255,255,255,.04);transition:background var(--transition-fast)}.review-right-col .fix-guidance-row:hover{background:#ffffff0a}.review-right-col .fix-guidance-row--active{background:#d9580a14;border-left:2px solid var(--accent)}.review-right-col .fix-guidance-row-title{flex:1;font-size:12px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-right-col .fix-guidance-row-time{font-size:10px;color:var(--muted);font-family:var(--font-mono);white-space:nowrap}.review-right-col .fix-guidance-detail{flex:1;overflow-y:auto}.review-right-col .fix-guidance-detail-header{display:flex;align-items:flex-start;gap:var(--sp-2);flex-wrap:wrap;padding:var(--sp-4);border-bottom:1px solid var(--border)}.review-right-col .fix-guidance-detail-title{flex:1;font-size:14px;font-weight:700;color:var(--text);line-height:1.35;margin:0;min-width:0}.review-right-col .fix-guidance-ref-code{font-family:var(--font-mono);font-size:10px;color:var(--muted);background:var(--surface2);border-radius:var(--radius);padding:2px 6px}.review-right-col .fix-guidance-fix-text{background:#4dc98a0a;border-left:3px solid rgba(77,201,138,.3);padding:var(--sp-2) var(--sp-3);border-radius:0 var(--radius) var(--radius) 0;font-size:13px;line-height:1.55}.review-right-col .fix-guidance-evidence{font-size:12px;color:var(--muted);line-height:1.5;font-style:italic}.review-right-col .fix-guidance-locations{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1)}.review-right-col .fix-guidance-loc-chip{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;font-size:11px;font-weight:600;background:var(--surface2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text)}.review-right-col .fix-guidance-loc-chip--link{cursor:pointer;color:var(--accent);border-color:#d9580a40;background:#d9580a0f;transition:all var(--transition-fast)}.review-right-col .fix-guidance-loc-chip--link:hover{background:#d9580a1f;border-color:#d9580a66}.upload-card{max-width:680px;margin:48px auto 0;padding:40px 44px;background:var(--surface2);border:1px solid rgba(160,195,228,.15);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.results-footer{margin-top:var(--sp-10);padding:var(--sp-6) 0 var(--sp-8);text-align:center;font-size:11px;color:var(--muted);letter-spacing:.02em;border-top:1px solid var(--border)}.review-page-topbar{padding:var(--sp-2) var(--sp-6);flex-shrink:0;display:flex;align-items:center;gap:var(--sp-4);border-bottom:1px solid rgba(160,195,228,.1);background:var(--surface2);box-shadow:0 1px 4px #00000040}@keyframes pcc-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}@keyframes pcc-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pcc-header{display:flex;align-items:flex-start;gap:var(--sp-4);margin-bottom:var(--sp-8)}.pcc-header-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--accent-muted);border-radius:var(--radius-md);color:var(--accent);flex-shrink:0}.pcc-title{font-size:var(--text-xl);font-weight:700;color:var(--text);margin:0 0 4px;line-height:var(--leading-tight)}.pcc-subtitle{font-size:var(--text-sm);color:var(--muted);margin:0;line-height:var(--leading-normal)}.pcc-grid{display:grid;grid-template-columns:340px 1fr;gap:var(--sp-6);align-items:start;min-height:420px}@media(max-width:720px){.pcc-grid{grid-template-columns:1fr}}.pcc-right{display:flex;flex-direction:column;gap:var(--sp-4)}.pcc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.pcc-card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);background:var(--bg-elevated)}.pcc-card-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.pcc-elapsed{font-size:var(--text-xs);font-family:var(--font-mono);color:var(--accent);font-weight:600}.pcc-stages{padding:var(--sp-4)}.pcc-stage{display:flex;align-items:center;gap:var(--sp-3);position:relative;padding:6px 0}.pcc-stage-indicator{width:24px;height:24px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface);position:relative;z-index:1;transition:all var(--transition-normal)}.pcc-stage-num{font-size:10px;font-weight:700;color:var(--muted);font-family:var(--font-mono)}.pcc-stage-label{font-size:var(--text-sm);color:var(--muted);transition:color var(--transition-normal)}.pcc-stage-connector{position:absolute;left:11px;top:30px;width:2px;height:18px;background:var(--border);transition:background var(--transition-normal)}.pcc-stage--done .pcc-stage-indicator{border-color:var(--accent);background:var(--accent);color:#fff}.pcc-stage--done .pcc-stage-label{color:var(--accent)}.pcc-stage-connector--done{background:var(--accent)}.pcc-stage--active .pcc-stage-indicator{border-color:var(--accent);background:var(--accent-muted)}.pcc-stage--active .pcc-stage-label{color:var(--text);font-weight:600}.pcc-pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pcc-pulse 1.5s ease-in-out infinite}.pcc-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border)}.pcc-metric{display:flex;flex-direction:column;align-items:center;padding:var(--sp-4) var(--sp-3);background:var(--surface)}.pcc-metric-value{font-size:var(--text-xl);font-weight:700;font-family:var(--font-mono);color:var(--accent);line-height:1;margin-bottom:4px}.pcc-metric-value--issues{color:var(--warning)}.pcc-metric-label{font-size:var(--text-xs);color:var(--muted);text-align:center}.pcc-feed{padding:var(--sp-3) var(--sp-4);max-height:220px;overflow-y:auto}.pcc-feed-item{display:flex;align-items:baseline;gap:var(--sp-2);padding:5px 0;font-size:var(--text-xs);color:var(--muted);font-family:var(--font-mono);line-height:var(--leading-normal);transition:opacity var(--transition-slow)}.pcc-feed-item--new{animation:pcc-fade-in .4s ease}.pcc-feed-item--empty{font-style:italic;opacity:.5}.pcc-feed-item--note{font-style:italic;color:var(--accent-hover, #f06318)}.pcc-feed-note-label{font-weight:600;font-style:normal;margin-right:6px;font-size:.85em;text-transform:uppercase;letter-spacing:.04em;color:var(--accent, #d9580a)}.pcc-feed-dot{width:4px;height:4px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:5px}.pcc-live-badge{font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--success);background:#4dc98a14;padding:2px 8px;border-radius:var(--radius-pill);border:1px solid rgba(77,201,138,.2)}.pcc-progress-track{max-width:1200px;margin:var(--sp-6) auto 0;height:3px;background:var(--border);border-radius:2px;overflow:hidden}.pcc-progress-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .8s ease}.pcc-progress-fill--indeterminate{width:32%;background:linear-gradient(90deg,rgba(217,88,10,.15),var(--accent),rgba(217,88,10,.15));animation:pcc-progress-slide 1.2s ease-in-out infinite}.pcc-footer{text-align:center;margin-top:var(--sp-3)}@keyframes pcc-progress-slide{0%{transform:translate(-100%)}50%{transform:translate(80%)}to{transform:translate(240%)}}.pcc-humor-subtitle{font-size:var(--text-xs);color:var(--muted);margin:6px 0 0;font-style:italic;opacity:0;animation:pcc-fade-in .6s ease forwards;line-height:var(--leading-normal)}@keyframes pcc-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:.7;transform:translateY(0)}}.pcc-root--complete{display:flex;align-items:center;justify-content:center;min-height:400px}.pcc-complete-card{text-align:center;padding:var(--sp-8) var(--sp-6);animation:pcc-complete-pop .5s ease forwards}.pcc-complete-check{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:#22c55e1a;animation:pcc-check-pulse 1.5s ease infinite}@keyframes pcc-complete-pop{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pcc-check-pulse{0%,to{box-shadow:0 0 #22c55e33}50%{box-shadow:0 0 0 12px #22c55e00}}.exec-summary{margin-bottom:20px}.exec-summary__title{font-family:var(--font-heading);font-size:18px;font-weight:600;text-transform:none;letter-spacing:.01em;color:var(--pale);margin:0 0 12px}.exec-summary__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.exec-summary__card{background:linear-gradient(180deg,var(--surface3) 0%,var(--surface) 100%);border:2px solid rgba(160,195,228,.18);border-radius:var(--radius-md);padding:16px 20px;text-align:center;border-left:5px solid transparent;box-shadow:var(--shadow),inset 0 1px #ffffff0a;transition:box-shadow var(--transition-fast),transform .12s ease}.exec-summary__card:hover{box-shadow:var(--shadow-lg),inset 0 1px #ffffff0f}.exec-summary__card--clickable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.exec-summary__card--clickable:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000040,inset 0 1px #ffffff0f}.exec-summary__card--clickable:active{transform:translateY(0)}.exec-summary__card--red{border-color:#f0706059;border-left-color:var(--severity-critical);background:linear-gradient(180deg,rgba(240,112,96,.08) 0%,var(--surface) 100%)}.exec-summary__card--amber{border-color:#d9a51e4d;border-left-color:var(--accent);background:linear-gradient(180deg,rgba(217,165,30,.06) 0%,var(--surface) 100%)}.exec-summary__card--green{border-color:#4dc98a40;border-left-color:var(--color-pass);background:linear-gradient(180deg,rgba(77,201,138,.06) 0%,var(--surface) 100%)}.exec-summary__value{font-size:28px;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;text-shadow:0 2px 4px rgba(0,0,0,.3)}.exec-summary__card--red .exec-summary__value{color:var(--severity-critical)}.exec-summary__card--amber .exec-summary__value{color:var(--severity-minor)}.exec-summary__card--green .exec-summary__value{color:var(--color-pass)}.exec-summary__label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text);margin-top:4px}.exec-summary__sub{font-size:11px;color:var(--text-muted);margin-top:2px}@media(max-width:720px){.exec-summary__grid{grid-template-columns:repeat(2,1fr)}}.issue-slider{flex-shrink:0;padding:5px 16px 4px;background:#0d1b2ed9;border-bottom:1px solid rgba(255,255,255,.06)}.issue-slider-header{display:flex;align-items:baseline;gap:10px;margin-bottom:4px}.issue-slider-count{font-size:11px;font-weight:700;color:#f0f4f9;white-space:nowrap}.issue-slider-label{font-size:11px;color:#a8c0d8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.issue-slider-track-wrap{position:relative;height:24px;display:flex;align-items:center}.issue-slider-range{width:100%;height:8px;margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#ffffff1a;border-radius:4px;outline:none;cursor:pointer}.issue-slider-range::-webkit-slider-runnable-track{height:8px;border-radius:4px;background:#ffffff1a}.issue-slider-range::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:4px;background:var(--accent);border:2px solid rgba(255,255,255,.9);box-shadow:0 1px 8px #0006;cursor:grab;margin-top:-6px;transition:box-shadow .15s,transform .1s}.issue-slider-range::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px rgba(var(--accent-rgb, 232, 121, 36),.25),0 1px 8px #0006;transform:scale(1.08)}.issue-slider-range::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.12);box-shadow:0 0 0 6px rgba(var(--accent-rgb, 232, 121, 36),.3),0 1px 8px #0006}.issue-slider-range::-moz-range-track{height:8px;border-radius:4px;background:#ffffff1a;border:none}.issue-slider-range::-moz-range-thumb{width:20px;height:20px;border-radius:4px;background:var(--accent);border:2px solid rgba(255,255,255,.9);box-shadow:0 1px 8px #0006;cursor:grab}.issue-slider-range::-moz-range-thumb:hover{box-shadow:0 0 0 4px #e8792440,0 1px 8px #0006}.issue-slider-range::-moz-range-thumb:active{cursor:grabbing}.review-mode-toggle{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;font-size:11px;font-weight:600;color:var(--pale);background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);cursor:pointer;transition:all var(--transition-fast);margin-left:auto}.review-mode-toggle:hover{color:var(--text);border-color:#ffffff26}.review-mode-toggle--active{background:var(--accent);color:#fff;border-color:var(--accent)}.review-mode-toggle--active:hover{background:var(--accent-hover);color:#fff}.review-layout--focused{height:calc(100vh - 60px)}.review-layout--focused~.review-page-topbar,.review-layout--focused~.nav{display:none}.review-page:has(.review-layout--focused) .review-page-topbar{display:none}body:has(.review-layout--focused) .nav{display:none}body:has(.review-layout--focused) .review-page{height:100vh;margin-top:0}.review-pdf-surface{flex:1;display:flex;flex-direction:column;position:relative;padding:0;background:#c8d4e4;min-height:0}.review-pdf-surface .review-iframe{flex:1;width:100%;border:none;border-radius:2px;box-shadow:0 8px 24px #00000026,0 2px 6px #00000014;background:#fff}.details-panel-location-bar{display:flex;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--border);background:#ffffff05}.details-panel-loc-item{display:flex;flex-direction:column;gap:2px}.details-panel-loc-item .details-panel-label{margin-bottom:0}.details-panel-loc-value{font-size:12px;font-weight:600;color:var(--text);font-family:var(--font-mono)}.details-panel-text--fix{background:#4dc98a0f;border-left:3px solid rgba(77,201,138,.35);padding:var(--sp-2) var(--sp-3);border-radius:0 var(--radius) var(--radius) 0;font-weight:600}.sheet-radar{padding:var(--sp-3);border-bottom:1px solid var(--border);flex-shrink:0}.sheet-radar__title{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--sp-2)}.sheet-radar__list{display:flex;flex-direction:column;gap:2px}.sheet-radar__row{display:flex;align-items:center;gap:var(--sp-2);padding:4px 8px;border-radius:var(--radius);border:none;background:transparent;cursor:pointer;font-size:12px;color:var(--text);transition:background var(--transition-fast);text-align:left;width:100%}.sheet-radar__row:hover{background:#a0c3e414}.sheet-radar__row--active{background:#d9580a1f;border-color:var(--accent)}.sheet-radar__row--clean{opacity:.5}.sheet-radar__prefix{font-weight:700;font-family:var(--font-mono);min-width:52px;font-size:11px}.sheet-radar__label{font-size:10px;color:var(--muted);min-width:56px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sheet-radar__bar-wrap{flex:1;height:6px;background:#ffffff0f;border-radius:3px;overflow:hidden;min-width:0}.sheet-radar__bar{display:block;height:100%;background:var(--redline);border-radius:3px;transition:width .3s ease}.sheet-radar__count{font-size:11px;font-weight:600;color:var(--muted);min-width:16px;text-align:right;font-variant-numeric:tabular-nums}.sheet-radar__clear{display:block;width:100%;text-align:center;padding:4px;margin-top:var(--sp-2);font-size:11px;color:var(--accent);background:none;border:none;cursor:pointer}.sheet-radar__clear:hover{text-decoration:underline}.discipline-tabs{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:var(--sp-3);padding-bottom:var(--sp-3);border-bottom:1px solid var(--border)}.discipline-tab{padding:4px 12px;font-size:11px;font-weight:600;border-radius:var(--radius-pill);border:1px solid var(--border);background:transparent;color:var(--muted);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.discipline-tab:hover{border-color:var(--accent);color:var(--text)}.discipline-tab--active{background:var(--accent);border-color:var(--accent);color:#fff}.status-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:6px;font-weight:700;font-size:14px;cursor:pointer;transition:all .15s}.status-filter-btn--pass{color:var(--color-pass);background:var(--color-pass-bg);border:1px solid var(--color-pass-border)}.status-filter-btn--pass.status-filter-btn--active{background:var(--color-pass-bg-active);border:2px solid var(--color-pass)}.status-filter-btn--fail{color:var(--color-fail);background:var(--color-fail-bg);border:1px solid var(--color-fail-border)}.status-filter-btn--fail.status-filter-btn--active{background:var(--color-fail-bg-active);border:2px solid var(--color-fail)}.status-filter-btn--abstain{color:var(--color-abstain);background:var(--color-abstain-bg);border:1px solid var(--color-abstain-border)}.status-filter-btn--abstain.status-filter-btn--active{background:var(--color-abstain-bg-active);border:2px solid var(--color-abstain)}.fix-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--surface2);border:1px solid rgba(77,201,138,.4);border-radius:var(--radius-pill);font-size:13px;font-weight:600;color:var(--color-pass);box-shadow:0 8px 24px #0000004d;z-index:1000;animation:toast-in .3s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.review-orientation-bar{font-size:12px;color:var(--muted);letter-spacing:.01em;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-left-col{display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface);overflow:hidden}.review-left-col .issues-nav{flex:1;min-height:0;border-right:none}.review-left-col{width:260px;display:flex;flex-direction:column;background:var(--surface2);border-right:1px solid var(--border);overflow:hidden}.review-left-col .sheet-radar{padding:14px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.review-left-col .sheet-radar__title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-family:var(--font-mono);margin-bottom:8px}.review-left-col .issues-nav{flex:1;min-height:0;border-right:none;overflow:hidden;display:flex;flex-direction:column}.review-left-col .issues-nav-list{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}.review-left-col .issues-nav-list::-webkit-scrollbar{width:3px}.review-left-col .issues-nav-list::-webkit-scrollbar-thumb{background:#5a7fa866;border-radius:2px}.review-left-col .issue-row{padding:12px 18px;gap:6px;border-bottom:1px solid rgba(160,195,228,.07);border-left:3px solid transparent;cursor:pointer;transition:all .12s}.review-left-col .issue-row:hover{background:#ffffff0a}.review-left-col .issue-row--active{background:#d9580a1a;border-left-color:var(--accent-hover)}.review-left-col .issue-row-title{font-size:14px;font-weight:600;line-height:1.35;margin-bottom:3px;color:var(--text)}.review-left-col .issue-row-meta{font-size:12.5px;gap:6px;color:var(--muted);font-family:var(--font-mono)}.review-viewer{display:flex;flex-direction:column;background:#c8d4e4;position:relative;overflow:hidden;min-width:0}.review-viewer-toolbar{display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--navy);border-bottom:1px solid var(--border);flex-shrink:0;min-height:42px}.review-viewer-toolbar .review-toggle-btn{padding:3px 12px;font-size:11px}.review-viewer-toolbar .text-sm,.review-viewer-toolbar .text-muted{font-size:11px;font-family:var(--font-mono)}.review-pdf-surface{flex:1;display:flex;align-items:center;justify-content:center;position:relative;padding:0;background:#c8d4e4;min-height:0;overflow:auto}.review-pdf-surface .review-iframe{width:100%;height:100%;max-width:100%;border:none;border-radius:2px;background:#fff;box-shadow:0 8px 40px #00000073,0 2px 10px #00000040}.issue-slider{flex-shrink:0;padding:5px 16px 4px;background:#0d1b2ed9;border-bottom:1px solid rgba(255,255,255,.06);font-size:11px}.review-right-col{width:320px;display:flex;flex-direction:column;border-left:1px solid var(--border);background:var(--surface2);overflow:hidden}.review-right-col>.details-panel{flex:1;min-height:0;overflow-y:auto;border-left:none;scrollbar-width:thin;scrollbar-color:var(--muted) transparent}.review-right-col>.details-panel::-webkit-scrollbar{width:3px}.review-right-col>.details-panel::-webkit-scrollbar-thumb{background:#5a7fa866;border-radius:2px}.details-panel-header{padding:18px 18px 14px;border-bottom:1px solid var(--border)}.details-panel-title{font-size:16px;font-weight:700;line-height:1.25;letter-spacing:-.01em}.details-panel-section{padding:12px 18px}.details-panel-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-family:var(--font-mono);margin-bottom:6px}.details-panel-text{font-size:13px;line-height:1.5;color:var(--text)}.details-panel-actions{display:flex;gap:6px;padding:10px 16px;border-bottom:1px solid var(--border)}.details-action-btn{padding:7px 14px;font-size:12px;font-weight:600;border-radius:6px;border:1px solid var(--border);background:#0d1b2eb3;color:var(--muted);cursor:pointer;transition:all .12s;display:flex;align-items:center;gap:4px;font-family:var(--font-mono)}.details-action-btn:hover{background:#ffffff14;border-color:var(--accent);color:var(--text)}.details-action-btn--active{background:#4dc98a1f;border-color:#4dc98a66;color:var(--color-pass)}.details-evidence-list{margin:0;padding:12px 16px;list-style:none;background:#0d1b2ecc;border:1px solid var(--border);border-radius:7px}.details-evidence-list li{font-size:13px;line-height:1.5;margin-bottom:6px;color:var(--muted)}.details-evidence-list li:last-child{margin-bottom:0}.review-page-topbar{padding:6px 16px;flex-shrink:0;display:flex;align-items:center;gap:var(--sp-4);border-bottom:1px solid rgba(160,195,228,.1);background:var(--surface2);box-shadow:0 1px 4px #00000040}.review-page{display:flex;flex-direction:column;height:calc(100vh - 52px);margin:0}.review-page>div:last-child{flex:1;min-height:0}.review-layout{height:100%!important}.wrap:has(.review-page){max-width:none;padding:0;margin:0}.sheet-radar{padding:14px 12px 8px!important;border-bottom:1px solid var(--border)!important;flex-shrink:0!important}.sheet-radar__title{font-size:11px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.1em!important;color:var(--muted)!important;font-family:var(--font-mono)!important;margin-bottom:10px!important}.sheet-radar__row{display:flex!important;align-items:center!important;gap:8px!important;padding:8px 10px!important;border-radius:7px!important;border:2px solid transparent!important;background:#0d1b2e80!important;margin-bottom:4px!important;cursor:pointer!important;transition:all .12s!important}.sheet-radar__row:hover{border-color:var(--accent)!important}.sheet-radar__row--active{border-color:var(--accent)!important;background:#d9580a14!important}.sheet-radar__prefix{font-size:13px!important;font-weight:700!important;color:var(--text)!important;min-width:24px!important}.sheet-radar__count{font-size:11px!important;font-weight:700!important;min-width:20px!important;text-align:center!important}.sheet-radar__dot{width:8px!important;height:8px!important;border-radius:50%!important}.issues-nav-header{padding:10px 12px!important;gap:6px!important}.issues-nav-title{font-size:11px!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--muted)!important;font-family:var(--font-mono)!important}.issues-nav-counter{font-size:11px!important;font-family:var(--font-mono)!important}.issues-nav-progress{padding:0 12px 8px!important}.issue-row-rule{font-size:11px;color:var(--muted);font-family:var(--font-mono);letter-spacing:.05em}.details-panel-text--fix{background:#1a7a4a14;border:1px solid rgba(26,122,74,.25);border-radius:7px;padding:14px 16px;font-size:13px;line-height:1.6;color:var(--muted)}.bp-workspace{background:var(--surface2);border:1px solid rgba(160,195,228,.15);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:var(--sp-6) auto 0;padding:var(--sp-8) var(--sp-8)}.bp-workspace--results{max-width:var(--max-width);padding:var(--sp-6) var(--sp-8)}.bp-workspace--running{max-width:1400px;padding:var(--sp-8) var(--sp-10)}.bp-workspace--review{max-width:none;padding:0;margin:0;border-radius:0;border-left:none;border-right:none;border-bottom:none;overflow:hidden}.wrap:has(.bp-workspace--review){max-width:none;padding:0;margin:0}.review-layout{display:grid!important;grid-template-columns:220px 1fr 340px!important;grid-template-rows:1fr!important;height:100%!important}.review-layout .review-discipline-sidebar{grid-column:1;grid-row:1;min-height:0;overflow-y:auto;border-right:1px solid var(--border);background:var(--surface);scrollbar-width:thin}.review-layout .review-viewer{grid-column:2;grid-row:1;min-height:0;overflow:hidden}.review-layout .review-right-col{grid-column:3;grid-row:1;overflow-y:auto;min-height:0}@media(max-width:900px){.review-layout{grid-template-columns:1fr!important;grid-template-rows:auto 1fr auto!important}.review-layout .review-discipline-sidebar{grid-column:1;grid-row:1;border-right:none;border-bottom:1px solid var(--border);max-height:200px}.review-layout .review-viewer{grid-column:1;grid-row:2}.review-layout .review-right-col{grid-column:1;grid-row:3;width:100%;max-height:400px;border-left:none;border-top:1px solid var(--border)}}.quick-fix-panel{border:1px solid var(--border);border-radius:var(--radius);padding:12px;background:var(--surface2)}.quick-fix-header{display:flex;align-items:center;gap:6px;margin-bottom:10px;color:var(--accent)}.quick-fix-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.quick-fix-applied-badge{margin-left:auto;font-size:10px;font-weight:600;color:var(--color-pass);background:#4dc98a1f;padding:2px 8px;border-radius:10px}.quick-fix-fields{display:flex;align-items:center;gap:8px;margin-bottom:10px}.quick-fix-field{flex:1;min-width:0}.quick-fix-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:4px}.quick-fix-input{width:100%;font-size:12px;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);font-family:var(--font-mono)}.quick-fix-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #6366f126}.quick-fix-input--find{text-decoration:line-through;color:var(--color-fail, #ef4444)}.quick-fix-input--replace{color:var(--color-pass, #4dc98a)}.quick-fix-input:disabled{opacity:.5;cursor:not-allowed}.quick-fix-arrow{flex-shrink:0;padding-top:16px}.quick-fix-preview-info{font-size:12px;margin-bottom:8px}.quick-fix-match-count{color:var(--accent);font-weight:600}.quick-fix-no-match{color:var(--muted)}.quick-fix-success{font-size:12px;color:var(--color-pass);background:#4dc98a14;border:1px solid rgba(77,201,138,.2);border-radius:var(--radius);padding:8px 10px;margin-bottom:8px}.quick-fix-error{font-size:12px;color:var(--color-fail);background:#ef444414;border:1px solid rgba(239,68,68,.2);border-radius:var(--radius);padding:8px 10px;margin-bottom:8px}.quick-fix-actions{display:flex;gap:8px}.quick-fix-btn{font-size:12px;padding:6px 14px}.quick-fix-custom-btn{display:inline-flex;align-items:center;gap:6px;font-size:12px;padding:6px 12px;background:none;border:1px dashed var(--border);border-radius:var(--radius);color:var(--muted);cursor:pointer;transition:color .15s,border-color .15s}.quick-fix-custom-btn:hover{color:var(--accent);border-color:var(--accent)}.pdf-canvas-container{flex:1;background:#c8d4e4;display:flex;align-items:center;justify-content:center;overflow:hidden;min-height:0}.pdf-canvas-container canvas{background:#fff;box-shadow:0 2px 12px #00000026}.annotation-overlay-svg{z-index:2}.cloud-overlay{color:#d91919}.cloud-overlay--selected rect,.cloud-overlay--selected polygon{stroke-width:2.5;filter:drop-shadow(0 0 4px currentColor);animation:cloud-pulse 1.2s ease-in-out infinite}@keyframes cloud-pulse{0%,to{opacity:1}50%{opacity:.7}}.cloud-overlay--exact polygon{stroke-dasharray:none}.cloud-overlay--room polygon{stroke-dasharray:6 4}.cloud-overlay--room .cloud-approx-badge{font-size:9px;font-weight:700;fill:#fff}.cloud-overlay--unverified{color:#e67e22}.cloud-overlay--unverified polygon{stroke-dasharray:4 3 1 3;opacity:.7}.cloud-overlay--hovered rect,.cloud-overlay--hovered polygon{stroke-width:2;filter:drop-shadow(0 0 3px currentColor)}.annotation-tooltip{background:var(--surface-2, #1e2a3a);border:1px solid var(--border, rgba(160, 195, 228, .12));border-radius:6px;padding:5px 8px;font-size:11px;line-height:1.3;color:var(--text, #e0e8f0);box-shadow:0 4px 12px #0000004d;max-width:270px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.annotation-tooltip__severity{display:inline-block;font-size:9px;font-weight:700;letter-spacing:.05em;padding:1px 4px;border-radius:3px;margin-right:4px;vertical-align:middle}.annotation-tooltip__severity[data-severity=CRITICAL]{background:#bf0d0d;color:#fff}.annotation-tooltip__severity[data-severity=MAJOR]{background:#d91919;color:#fff}.annotation-tooltip__severity[data-severity=MINOR]{background:#e67e22;color:#fff}.annotation-tooltip__severity[data-severity=INFO]{background:#7f8c8d;color:#fff}.annotation-tooltip__title{display:inline;font-weight:500;vertical-align:middle}.annotation-tooltip__xref{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:9px;color:#fff9}.annotation-tooltip__xref-chip{background:#ffffff26;border:1px solid rgba(255,255,255,.3);border-radius:3px;color:#fff;font-size:9px;padding:1px 5px;cursor:pointer;transition:background .15s}.annotation-tooltip__xref-chip:hover{background:#ffffff4d}.sheet-level-badge{display:flex;align-items:center;gap:6px;width:100%;padding:6px 10px;background:#7f8c8d1f;border:1px solid rgba(127,140,141,.25);border-radius:6px;color:var(--muted, #8a9bb5);font-size:11px;font-weight:500;cursor:pointer;transition:background .15s}.sheet-level-badge:hover{background:#7f8c8d33}.anchor-type-label{display:inline-flex;align-items:center;gap:3px;font-size:10px;font-weight:600;letter-spacing:.03em;padding:2px 6px;border-radius:4px}.anchor-type-label--exact{background:#2ecc7126;color:#2ecc71}.anchor-type-label--room{background:#f1c40f26;color:#f1c40f}.anchor-type-label--sheet,.anchor-type-label--unplaced{background:#7f8c8d26;color:#95a5a6}.anchor-type-label--unverified{background:#e74c3c1f;color:#e67e22;border:1px dashed rgba(231,76,60,.3)}.anchor-confidence{font-size:10px;color:var(--muted, #8a9bb5);margin-left:4px}.details-panel-confidence-warning{display:flex;align-items:center;gap:8px;padding:8px 12px;margin:0 0 4px;background:#e74c3c14;border:1px solid rgba(231,76,60,.2);border-radius:6px;font-size:11px;color:#e67e22;font-weight:600}.details-panel-placement-details{padding-top:4px}.details-tech-divider{height:1px;background:var(--border, rgba(255,255,255,.08));margin:8px 0}.placement-banner{display:flex;align-items:center;gap:8px;padding:6px 12px;font-size:11px;border-radius:6px;margin-bottom:4px}.placement-banner--warn{background:#f1c40f14;border:1px solid rgba(241,196,15,.2);color:#f1c40f}.placement-banner--info{background:#3498db0f;border:1px solid rgba(52,152,219,.15);color:var(--muted, #8a9bb5)}.placement-banner__label{font-weight:700;margin-right:2px}.placement-banner__stat{padding:1px 6px;border-radius:3px;background:#ffffff0d;font-weight:600}.placement-banner__stat--muted{color:#e67e22;background:#e74c3c14}.exec-summary__severity-breakdown{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.exec-summary__sev-chip{font-size:10px;font-weight:700;padding:1px 6px;border-radius:3px;letter-spacing:.03em}.exec-summary__sev-chip--critical{background:#e74c3c33;color:#e74c3c}.exec-summary__sev-chip--major{background:#f39c1233;color:#f39c12}.exec-summary__sev-chip--minor{background:#f1c40f33;color:#f1c40f}.exec-summary__sev-chip--info{background:#3498db26;color:#3498db}
