@import"https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;500;600;700&display=swap";:root{--k-royal-blue: #0060FF;--k-blue-2: #4045DB;--k-purple: #802AB7;--k-light-purple: #C6A9F1;--k-yellow: #F0D469;--k-gold: #FEDB00;--k-black: #000000;--k-white: #FFFFFF;--k-grey-100: #F2F1EF;--k-grey-200: #D4D4C9;--k-grey-300: #AEAE9F;--k-grey-400: #858574;--color-primary: #0060FF;--color-primary-hover: #0674FF;--color-primary-active: #084AC5;--color-primary-subtle: #EDF8FF;--color-secondary: #802AB7;--color-highlight: #FEDB00;--color-bg: #F7F8F9;--color-surface: #FFFFFF;--color-border: #D4D4C9;--color-border-subtle: #E7E7E7;--color-text: #2D2D2D;--color-text-secondary: #5D5D5D;--color-muted: #888888;--color-placeholder: #9F9F9F;--color-success: #049105;--color-success-bg: #EFFFEE;--color-success-border: #B3FFB2;--color-warning: #CC3702;--color-warning-bg: #FFF6EC;--color-warning-border: #FFD4A5;--color-danger: #E10000;--color-danger-bg: #FFF0F0;--color-danger-border: #FFC1C1;--color-info: #0060FF;--color-info-bg: #EDF8FF;--color-info-border: #B5E2FF;--color-ai: #802AB7;--color-ai-bg: #FBF6FE;--color-ai-border: #ECD8FC;--color-advisory: var(--color-danger);--color-advisory-bg: var(--color-danger-bg);--color-advisory-border: var(--color-danger-border);--font: "Fors", "Open Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--text-display: 3rem;--text-page: 2rem;--text-section: 1.5rem;--text-card: 1.125rem;--text-body: .875rem;--text-label: .75rem;--text-caption: .6875rem;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--sp-16: 4rem;--sp-xs: .25rem;--sp-sm: .5rem;--sp-md: 1rem;--sp-lg: 1.5rem;--sp-xl: 2rem;--sp-2xl: 3rem;--sp-3xl: 4rem;--radius-sm: 4px;--radius-input: 8px;--radius-btn: 8px;--radius-card: 12px;--radius-panel: 12px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .06);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08);--shadow-panel: 0 4px 16px rgba(0, 0, 0, .08);--shadow-focus: 0 0 0 2px #0060FF;--transition: .2s ease;--transition-fast: .12s ease;--transition-slow: .35s ease;--z-base: 1;--z-nav: 100;--z-sidebar: 90;--z-overlay: 200;--z-toast: 300;--nav-height: 48px;--sidebar-width: 240px;--content-max: 880px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--text-body);font-weight:var(--fw-regular);background:var(--color-bg);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fb;color:#111;color-scheme:light}button,input,textarea,select{font-family:inherit;font-size:inherit}button{cursor:pointer}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}img,svg{display:block;max-width:100%}#root{min-height:100vh;display:flex;flex-direction:column}.app-shell{display:flex;flex-direction:column;min-height:100vh;background:#f8f9fb}.app-body{flex:1;padding-top:var(--nav-height)}.app-main{max-width:860px;margin:0 auto;padding:var(--sp-8) var(--sp-6) var(--sp-16);width:100%;animation:pageEnter .35s cubic-bezier(.22,1,.36,1) both}.app-main-wide{max-width:min(96vw,1680px)}@media(max-width:768px){.app-main{padding:var(--sp-5) var(--sp-4) var(--sp-12)}}.top-nav{position:fixed;top:0;left:0;right:0;height:var(--nav-height);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:var(--sp-4);padding:0 var(--sp-6);z-index:var(--z-nav);box-shadow:var(--shadow-xs)}.top-nav-brand{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0;text-decoration:none}.top-nav-logo{width:110px;height:30px;flex-shrink:0}.top-nav-title{font-size:.9375rem;font-weight:var(--fw-bold);color:var(--color-text);letter-spacing:-.01em;white-space:nowrap;line-height:1}.top-nav-title .accent{color:var(--color-primary)}.top-nav-divider{width:1px;height:18px;background:var(--color-border);flex-shrink:0}.top-nav-subtitle{font-size:var(--text-caption);color:var(--color-muted);white-space:nowrap;display:none}@media(min-width:900px){.top-nav-subtitle{display:block}}.top-nav-spacer{flex:1}.top-nav-actions{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0}.progress-rail{display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-8);overflow-x:auto;scrollbar-width:none;padding:var(--sp-3) 0 var(--sp-1)}.progress-rail::-webkit-scrollbar{display:none}.rail-step{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0}.rail-step-marker{width:36px;height:36px;border-radius:50%;border:2px solid var(--color-border);display:grid;place-items:center;font-size:.8125rem;font-weight:var(--fw-bold);color:var(--color-muted);background:var(--color-surface);flex-shrink:0;transition:border-color .25s ease,background .25s ease,transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s ease}.rail-step.done .rail-step-marker{border-color:var(--color-primary);background:var(--color-primary);color:#fff;transform:scale(1.05)}.rail-step.active .rail-step-marker{border-color:var(--color-primary);background:var(--color-primary);color:#fff;transform:scale(1.08);box-shadow:0 0 0 4px var(--color-primary-subtle)}.rail-step-label{font-size:.875rem;font-weight:var(--fw-medium);color:var(--color-muted);white-space:nowrap;transition:color .2s ease}.rail-step.done .rail-step-label{color:var(--color-primary)}.rail-step.active .rail-step-label{color:var(--color-primary);font-weight:var(--fw-semibold)}.rail-connector{height:2px;width:56px;background:var(--color-border);flex-shrink:0;margin:0 var(--sp-1);border-radius:var(--radius-pill);transition:background .35s ease}.rail-connector.done{background:var(--color-primary)}@media(max-width:560px){.rail-step-label{display:none}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--sp-8)}.card+.card{margin-top:var(--sp-4)}.card.risk-red{border-top:3px solid var(--color-danger)}.card.risk-amber{border-top:3px solid var(--k-gold)}.card.risk-green{border-top:3px solid var(--color-success)}.sub-panel{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);padding:var(--sp-4) var(--sp-5)}.sub-panel.danger{background:var(--color-danger-bg);border-color:var(--color-danger-border)}.sub-panel.warning{background:var(--color-warning-bg);border-color:var(--color-warning-border)}.sub-panel.success{background:var(--color-success-bg);border-color:var(--color-success-border)}.sub-panel.ai{background:var(--color-ai-bg);border-color:var(--color-ai-border)}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-6)}.card-title{font-size:var(--text-card);font-weight:var(--fw-semibold);color:var(--color-text);line-height:1.3}.card-subtitle{font-size:var(--text-body);color:var(--color-text-secondary);margin-top:var(--sp-1);line-height:1.5}.text-display{font-size:var(--text-display);font-weight:var(--fw-bold);line-height:1.1}.text-page{font-size:var(--text-page);font-weight:var(--fw-bold);line-height:1.2}.text-section{font-size:var(--text-section);font-weight:var(--fw-semibold);line-height:1.3}.text-card{font-size:var(--text-card);font-weight:var(--fw-semibold);line-height:1.4}.text-body{font-size:var(--text-body);font-weight:var(--fw-regular);line-height:1.5}.text-label{font-size:var(--text-label);font-weight:var(--fw-medium);line-height:1.4}.text-caption{font-size:var(--text-caption);font-weight:var(--fw-regular);line-height:1.4}.text-overline{font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.text-muted{color:var(--color-muted)}.text-accent{color:var(--color-primary)}.text-danger{color:var(--color-danger)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.font-semibold{font-weight:var(--fw-semibold)}.font-bold{font-weight:var(--fw-bold)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);padding:.5625rem 1rem;border-radius:var(--radius-btn);font-size:var(--text-body);font-weight:var(--fw-semibold);font-family:inherit;line-height:1;border:none;cursor:pointer;white-space:nowrap;transition:background var(--transition),box-shadow var(--transition),transform var(--transition-fast);text-decoration:none;flex-shrink:0;outline:none}.btn:focus-visible{box-shadow:var(--shadow-focus)}.btn:active{transform:scale(.98)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-primary);color:#fff;border:none}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary:active:not(:disabled){background:var(--color-primary-active)}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg)}.btn-outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary-subtle)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:none}.btn-ghost:hover:not(:disabled){background:var(--color-bg);color:var(--color-text)}.btn-danger{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger-border)}.btn-danger:hover:not(:disabled){background:var(--color-danger);color:#fff}.btn-sm{padding:.375rem .75rem;font-size:var(--text-label);border-radius:6px}.btn-lg{padding:.75rem 1.5rem;font-size:1rem}.btn-full{width:100%}.btn-icon{padding:.5rem;border-radius:var(--radius-sm)}.form-field{display:flex;flex-direction:column;gap:var(--sp-1)}.form-label{font-size:var(--text-label);font-weight:var(--fw-semibold);color:var(--color-text);display:flex;align-items:center;gap:var(--sp-1)}.required-mark{color:var(--color-danger);font-weight:var(--fw-bold)}.form-hint{font-size:var(--text-caption);color:var(--color-muted)}.form-error{font-size:var(--text-caption);color:var(--color-danger)}.input,.textarea{width:100%;height:44px;padding:0 var(--sp-3);border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-text);font-family:var(--font);font-size:var(--text-body);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);outline:none}.textarea{height:auto;min-height:100px;padding:var(--sp-3);resize:vertical;line-height:1.6}.input:hover,.textarea:hover{border-color:var(--k-grey-300)}.input:focus,.textarea:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.input::placeholder,.textarea::placeholder{color:var(--color-placeholder)}.brief-actions{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4, 1rem);flex-wrap:wrap;margin-top:var(--sp-5);padding:var(--sp-4) 0;border-top:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg, var(--color-surface, #fff)) 88%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.brief-effort{display:flex;align-items:center;gap:.6rem}.brief-effort-label{font-size:var(--text-small, .8rem);font-weight:var(--fw-semibold);color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.segmented{display:inline-flex;padding:2px;border:1px solid var(--color-border);border-radius:var(--radius-btn, 6px);background:var(--color-surface, #fff)}.segmented-btn{border:none;background:none;padding:.35rem .7rem;font:inherit;font-size:var(--text-small, .8rem);font-weight:var(--fw-medium, 500);color:var(--color-text-secondary, inherit);border-radius:5px;cursor:pointer;white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}.segmented-btn:hover{color:var(--color-text, inherit)}.segmented-btn.selected{background:var(--color-primary, #0060FF);color:#fff;font-weight:var(--fw-semibold, 600)}@media(max-width:640px){.brief-actions{flex-direction:column;align-items:stretch}.segmented{justify-content:space-between}}.dropzone{border:2px dashed var(--color-border);border-radius:var(--radius-card);padding:var(--sp-12) var(--sp-8);text-align:center;transition:border-color var(--transition),background var(--transition);cursor:pointer;background:var(--color-bg)}.dropzone:hover,.dropzone.dragging{border-color:var(--color-primary);background:var(--color-primary-subtle)}.dropzone input[type=file]{display:none}.dropzone-icon{font-size:2.25rem;margin-bottom:var(--sp-3);opacity:.55;line-height:1}.dropzone-text{font-size:var(--text-body);color:var(--color-text-secondary);margin-bottom:var(--sp-2);line-height:1.5}.dropzone-link{color:var(--color-primary);font-weight:var(--fw-semibold);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline}.dropzone-meta{font-size:var(--text-caption);color:var(--color-muted);margin-top:var(--sp-2)}.mandatory-hint{margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-input);font-size:var(--text-body);color:var(--color-text);line-height:1.5}.mandatory-hint-link{background:none;border:none;padding:0;font:inherit;color:var(--color-primary);text-decoration:underline;cursor:pointer}.mandatory-hint-link:hover{opacity:.8}.status-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .6rem;border-radius:var(--radius-pill);font-size:var(--text-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;border:1px solid transparent}.status-pill.passed{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.status-pill.warning{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.status-pill.failed{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.status-pill.skipped{background:var(--k-grey-100);color:var(--color-muted);border-color:var(--color-border)}.status-pill.running{background:var(--color-ai-bg);color:var(--color-ai);border-color:var(--color-ai-border)}.status-pill.failed.severity-major_risk{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.status-pill.failed.severity-advisory{background:var(--color-advisory-bg);color:var(--color-advisory);border-color:var(--color-advisory-border)}.item-chip{display:inline-flex;align-items:center;padding:.12rem .38rem;border-radius:var(--radius-pill);font-size:.64rem;font-weight:var(--fw-bold);white-space:nowrap;flex-shrink:0;letter-spacing:.02em;border:1px solid transparent}.item-chip.passed{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.item-chip.warning{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.item-chip.failed{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:var(--radius-pill);font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.badge.primary{background:var(--color-primary-subtle);color:var(--color-primary)}.badge.ai{background:var(--color-ai-bg);color:var(--color-ai);border:1px solid var(--color-ai-border)}.badge.red{background:var(--color-danger-bg);color:var(--color-danger)}.badge.amber{background:var(--color-warning-bg);color:var(--color-warning)}.badge.green{background:var(--color-success-bg);color:var(--color-success)}.badge.neutral{background:var(--k-grey-100);color:var(--color-muted)}.alert{display:flex;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--radius-input);font-size:var(--text-body);line-height:1.5;border:1px solid transparent}.alert strong{display:block;font-weight:var(--fw-semibold);margin-bottom:.2rem}.alert-icon{font-size:1rem;flex-shrink:0;padding-top:.1rem}.alert-info{background:var(--color-info-bg);border-color:var(--color-info-border);color:var(--color-text)}.alert-success{background:var(--color-success-bg);border-color:var(--color-success-border);color:var(--color-text)}.alert-warning{background:var(--color-warning-bg);border-color:var(--color-warning-border);color:var(--color-text)}.alert-danger{background:var(--color-danger-bg);border-color:var(--color-danger-border);color:var(--color-text)}.alert-ai{background:var(--color-ai-bg);border-color:var(--color-ai-border);color:var(--color-text)}.spinner{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .7s linear infinite;flex-shrink:0}.spinner-sm{width:20px;height:20px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}.progress-bar{height:4px;background:var(--color-border-subtle);border-radius:var(--radius-pill);overflow:hidden}.progress-bar-fill{height:100%;background:var(--color-primary);border-radius:var(--radius-pill);transition:width .6s cubic-bezier(.4,0,.2,1)}.skeleton{background:linear-gradient(90deg,var(--k-grey-100) 25%,var(--k-grey-200) 37%,var(--k-grey-100) 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-center{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--sp-12) var(--sp-4);gap:var(--sp-4)}.loading-center h3{font-size:var(--text-card);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}.loading-center p{font-size:var(--text-body);color:var(--color-text-secondary);max-width:440px;line-height:1.6;margin:0}.loading-center .progress-bar{width:100%;max-width:360px;margin-top:var(--sp-2)}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-body)}.data-table thead tr{background:var(--k-grey-100);border-bottom:1px solid var(--color-border)}.data-table thead th{padding:var(--sp-3) var(--sp-4);text-align:left;font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);white-space:nowrap}.data-table tbody tr{border-bottom:1px solid var(--color-border-subtle);transition:background var(--transition-fast)}.data-table tbody tr:hover{background:#c700d308}.data-table tbody td{padding:var(--sp-3) var(--sp-4);vertical-align:top;line-height:1.5}.findings-kpi-bar{display:flex;gap:var(--sp-3);flex-wrap:wrap;margin-bottom:var(--sp-6)}.kpi-chip{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-pill);font-size:var(--text-label);font-weight:var(--fw-bold);border:1px solid transparent;transition:transform .15s ease,box-shadow .15s ease}.kpi-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-xs)}.kpi-chip.failed{background:var(--color-danger-bg);color:var(--color-danger);border-color:var(--color-danger-border)}.kpi-chip.warning{background:var(--color-warning-bg);color:var(--color-warning);border-color:var(--color-warning-border)}.kpi-chip.passed{background:var(--color-success-bg);color:var(--color-success);border-color:var(--color-success-border)}.kpi-chip.skipped{background:var(--k-grey-100);color:var(--color-muted);border-color:var(--color-border)}.section-title{font-size:var(--text-body);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;padding-bottom:var(--sp-2);margin-bottom:var(--sp-3);border-bottom:1px solid var(--color-border-subtle)}.section-title.failed{color:var(--color-danger)}.section-title.warning{color:var(--color-warning)}.section-title.passed{color:var(--color-success)}.section-title.skipped{color:var(--color-muted)}.finding-card{border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--sp-4) var(--sp-5);margin-bottom:var(--sp-2);min-width:0;overflow-wrap:anywhere;background:var(--color-surface);cursor:pointer;transition:box-shadow .18s ease,border-color .18s ease,transform .15s ease;position:relative;animation:slideUp .25s cubic-bezier(.22,1,.36,1) both}.finding-card:hover{box-shadow:var(--shadow-panel);border-color:var(--k-grey-300);transform:translateY(-1px)}.finding-card-jumped{animation:findingJumpFlash 1.6s ease-out}@keyframes findingJumpFlash{0%{box-shadow:0 0 0 3px var(--color-primary-subtle);border-color:var(--color-primary)}to{box-shadow:none}}.finding-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-2)}.finding-card-title{display:flex;align-items:center;gap:var(--sp-2);flex:1;min-width:0}.finding-name{font-size:var(--text-body);font-weight:var(--fw-semibold);color:var(--color-text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.finding-card-right{display:flex;align-items:center;gap:var(--sp-2);flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}.expand-toggle{font-size:.65rem;color:var(--color-muted);flex-shrink:0;transition:transform .2s ease}.finding-card[aria-expanded=true] .expand-toggle{transform:rotate(180deg)}.finding-card-summary{font-size:var(--text-body);color:var(--color-text-secondary);line-height:1.5}.finding-status-icon{display:inline-block;width:1em;text-align:center}.finding-card.failed .finding-status-icon{color:var(--color-danger)}.finding-card.warning .finding-status-icon{color:var(--color-warning)}.finding-card.passed .finding-status-icon{color:var(--color-success)}.finding-card.failed.severity-major_risk .finding-status-icon{color:var(--color-warning)}.finding-card.failed.severity-advisory .finding-status-icon{color:var(--color-advisory)}.finding-detail-toggle{margin-top:var(--sp-2);background:none;border:none;padding:0;font-size:var(--text-caption);font-weight:var(--fw-semibold);color:var(--color-muted);cursor:pointer}.finding-detail-toggle:hover{opacity:.8}.finding-action-row{margin-top:var(--sp-2);padding:var(--sp-3);min-width:0;overflow-wrap:anywhere;background:var(--k-grey-100);border-radius:var(--radius-sm)}.finding-action-label{margin:0 0 var(--sp-1);font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted)}.finding-action-text{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2);min-width:0;overflow-wrap:anywhere;word-break:break-word;font-size:var(--text-body);color:var(--color-text);line-height:1.5}.finding-action-body{flex:1 1 auto;min-width:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.inline-link{color:var(--color-primary);text-decoration:underline;overflow-wrap:anywhere}.inline-link:hover{color:var(--color-primary-hover)}.finding-card-detail{margin-top:var(--sp-4);padding-top:var(--sp-4);border-top:1px solid var(--color-border-subtle);display:flex;flex-direction:column;gap:var(--sp-4);animation:expandIn .22s cubic-bezier(.22,1,.36,1) both}.detail-label{font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);display:block;margin-bottom:var(--sp-1)}.detail-text{font-size:var(--text-body);line-height:1.5;color:var(--color-text-secondary);margin:0}.item-findings-table{overflow-x:auto;border-radius:var(--radius-input);border:1px solid var(--color-border)}.item-findings-table table{width:100%;border-collapse:collapse;font-size:var(--text-body)}.item-findings-table thead th{background:var(--k-grey-100);padding:var(--sp-2) var(--sp-3);text-align:left;font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);border-bottom:1px solid var(--color-border);white-space:nowrap}.item-findings-table tbody tr+tr{border-top:1px solid var(--color-border-subtle)}.item-findings-table .item-row td{padding:var(--sp-2) var(--sp-3);vertical-align:top;line-height:1.5}.item-findings-table .item-row{cursor:pointer;transition:background .12s ease}.item-findings-table .item-row:hover,.item-findings-table .item-row:focus-visible{background:var(--k-grey-100);outline:none}.item-name{font-weight:var(--fw-semibold);white-space:nowrap;color:var(--color-text)}.no-doc{color:var(--color-muted);font-size:var(--text-caption)}.reference-link-icon{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:var(--radius-sm);color:var(--color-primary);text-decoration:none;font-size:.875rem;flex-shrink:0}.reference-link-icon:hover{background:var(--color-primary-subtle)}.item-detail-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:var(--sp-4);z-index:var(--z-overlay);animation:expandIn .15s ease both}.item-detail-card{background:var(--color-surface);border-radius:var(--radius-panel);box-shadow:var(--shadow-panel);padding:var(--sp-5) var(--sp-6);max-width:560px;width:100%;max-height:80vh;overflow-y:auto}.item-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-2)}.item-detail-title{font-size:var(--text-card);font-weight:var(--fw-bold);margin:0;color:var(--color-text)}.item-detail-close{background:none;border:none;padding:var(--sp-1);font-size:.9rem;color:var(--color-muted);cursor:pointer;flex-shrink:0}.item-detail-close:hover{color:var(--color-text)}.item-detail-rationale{margin:var(--sp-4) 0 0;font-size:var(--text-body);line-height:1.6;color:var(--color-text-secondary)}.reference-links{font-size:var(--text-body)}.reference-links-label{font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--color-muted);margin-bottom:var(--sp-2)}.reference-links ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--sp-1)}.kb-sources{font-size:var(--text-caption);color:var(--color-muted);line-height:1.5}.exec-narrative{background:var(--color-ai-bg);border:1px solid var(--color-ai-border);border-radius:var(--radius-panel);padding:var(--sp-5) var(--sp-6);margin-top:var(--sp-4);margin-bottom:var(--sp-4)}.exec-narrative .ai-overline{font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--color-ai);display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3)}.exec-narrative p{margin:0;font-size:.9375rem;line-height:1.7;color:var(--color-text)}.blocker-list,.action-list{list-style:none;padding:0;margin:0}.blocker-list li,.action-list li{padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--color-border-subtle);font-size:var(--text-body);line-height:1.5;display:flex;gap:var(--sp-2);align-items:baseline}.blocker-list li:last-child,.action-list li:last-child{border-bottom:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes expandIn{0%{opacity:0;transform:translateY(-6px) scaleY(.97)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.93)}65%{transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .3s ease both}.animate-slide-up{animation:slideUp .35s cubic-bezier(.22,1,.36,1) both}.animate-pop-in{animation:popIn .3s cubic-bezier(.22,1,.36,1) both}.finding-card:nth-child(1){animation-delay:.03s}.finding-card:nth-child(2){animation-delay:.06s}.finding-card:nth-child(3){animation-delay:.09s}.finding-card:nth-child(4){animation-delay:.12s}.finding-card:nth-child(5){animation-delay:.15s}.finding-card:nth-child(6){animation-delay:.18s}.finding-card:nth-child(n+7){animation-delay:.21s}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.skip-link{position:absolute;top:-100px;left:var(--sp-4);background:var(--color-primary);color:#fff;padding:var(--sp-2) var(--sp-4);border-radius:var(--radius-btn);font-weight:var(--fw-semibold);font-size:var(--text-body);z-index:999;transition:top var(--transition-fast)}.skip-link:focus{top:var(--sp-4)}.login-page{min-height:100vh;display:grid;place-items:center;background:var(--color-bg);padding:var(--sp-4)}.login-card{width:100%;max-width:420px;animation:slideUp .35s ease}.login-logo{width:44px;height:44px;background:var(--color-primary);border-radius:var(--radius-card);display:grid;place-items:center;color:#fff;font-size:1.25rem;flex-shrink:0}.btn-ms{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:.75rem 1.25rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-btn);font-size:var(--text-body);font-weight:var(--fw-semibold);color:var(--color-text);cursor:pointer;transition:background var(--transition),box-shadow var(--transition)}.btn-ms:hover{background:var(--color-bg);box-shadow:var(--shadow-card)}.btn-ms:focus-visible{box-shadow:var(--shadow-focus)}.ms-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px;width:18px;height:18px;flex-shrink:0}.ms-grid span{display:block;border-radius:1px}.ms-grid span:nth-child(1){background:#f25022}.ms-grid span:nth-child(2){background:#7fba00}.ms-grid span:nth-child(3){background:#00a4ef}.ms-grid span:nth-child(4){background:#ffb900}.user-menu{display:flex;align-items:center;gap:var(--sp-2)}.user-avatar{width:30px;height:30px;border-radius:50%;background:var(--color-primary);color:#fff;display:grid;place-items:center;font-size:var(--text-caption);font-weight:var(--fw-bold);flex-shrink:0}.user-name{font-size:var(--text-body);font-weight:var(--fw-medium);color:var(--color-text);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hide-mobile{display:none}@media(min-width:768px){.hide-mobile{display:block}}.runner-page{max-width:720px;margin:0 auto}.runner-active-group{display:flex;align-items:center;gap:var(--sp-2);font-size:var(--text-caption);color:var(--color-muted)}.runner-active-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;animation:pulseDot 1.4s ease-in-out infinite}@keyframes pulseDot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.7);opacity:.4}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.runner-feed{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden;background:#fff}.runner-row{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--color-border-subtle);animation:slideUp .2s cubic-bezier(.22,1,.36,1) both;border-left:3px solid transparent;transition:background .12s ease}.runner-row:last-child{border-bottom:none}.runner-row:hover{background:#fafafa}.runner-row.passed{border-left-color:var(--color-success)}.runner-row.warning{border-left-color:var(--k-gold)}.runner-row.failed{border-left-color:var(--color-danger)}.runner-row.skipped{border-left-color:var(--color-border);opacity:.6}.runner-row.failed.severity-major_risk{border-left-color:var(--k-gold)}.runner-row.failed.severity-advisory{border-left-color:var(--color-advisory)}.runner-row-header{display:flex;align-items:center;gap:var(--sp-2);min-width:0}.runner-row-icon{font-size:.7rem;font-weight:var(--fw-bold);width:16px;text-align:center;flex-shrink:0}.runner-row-icon.passed{color:var(--color-success)}.runner-row-icon.warning{color:var(--color-warning)}.runner-row-icon.failed{color:var(--color-danger)}.runner-row-icon.skipped{color:var(--color-muted)}.runner-row-icon.failed.severity-major_risk{color:var(--color-warning)}.runner-row-icon.failed.severity-advisory{color:var(--color-advisory)}.runner-row-name{font-size:var(--text-body);font-weight:var(--fw-semibold);color:#111;flex:1;min-width:0;display:flex;align-items:center;gap:var(--sp-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.runner-row-summary{margin:0;font-size:var(--text-body);color:var(--color-text-secondary);line-height:1.5;padding-left:calc(16px + var(--sp-2))}.report-page{max-width:860px;margin:0 auto}.report-hero{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);border-top:4px solid var(--color-primary);padding:var(--sp-6) var(--sp-6) var(--sp-5);margin-bottom:var(--sp-4)}.report-title-row{display:flex;align-items:center;gap:var(--sp-3);flex-wrap:wrap}.report-hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);flex-wrap:wrap}.report-hero-left{flex:1;min-width:0}.report-title{font-size:var(--text-section);font-weight:var(--fw-bold);color:#111;line-height:1.2;margin:var(--sp-1) 0}.report-subtitle{font-size:var(--text-body);color:var(--color-muted);margin:0}.report-verdict-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-4);margin-top:var(--sp-4)}.report-verdict-label{font-size:1.75rem;font-weight:var(--fw-bold);line-height:1}.report-verdict-label.red{color:var(--color-danger)}.report-verdict-label.amber{color:var(--color-warning)}.report-verdict-label.green{color:var(--color-success)}.report-stat-row{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.report-stat-part{display:inline-flex;align-items:center;gap:.4rem}.report-stat-sep{color:var(--color-border)}.report-count-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;font:inherit}.report-count-card:disabled{cursor:default}.report-count-card:not(:disabled):hover .report-count-label{text-decoration:underline}.report-count-card:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.report-count-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;font-size:.75rem;line-height:1;flex-shrink:0}.report-count-icon.peak{background:var(--color-danger-bg);color:var(--color-danger)}.report-count-icon.light{background:var(--color-warning-bg);color:var(--color-warning)}.report-count-icon.quiet{background:var(--color-success-bg);color:var(--color-success)}.report-count-card.peak .report-count-number{font-size:1.25rem;color:var(--color-danger)}.report-count-card.peak .report-count-label{color:var(--color-danger)}.report-count-card.light .report-count-number{font-size:1.0625rem;color:var(--color-warning)}.report-count-card.light .report-count-label{color:var(--color-warning)}.report-count-card.quiet .report-count-number{font-size:1rem;color:var(--color-success)}.report-count-card.quiet .report-count-label{color:var(--color-success)}.report-count-number{font-weight:var(--fw-bold);line-height:1;font-variant-numeric:tabular-nums}.report-count-label{font-size:var(--text-caption);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em}.report-all-clear{margin:0;padding:var(--sp-3) var(--sp-4);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-card);color:var(--color-success);font-weight:var(--fw-semibold)}.report-stat-caption{margin:var(--sp-2) 0 0;font-size:var(--text-caption);color:var(--color-muted)}.top-risks-panel{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:var(--radius-card);padding:var(--sp-4) var(--sp-5);margin-bottom:var(--sp-4)}.top-risks-heading{font-size:var(--text-body);font-weight:var(--fw-semibold);color:var(--color-danger);margin:0 0 var(--sp-2);display:flex;align-items:center;gap:var(--sp-2)}.top-risks-list{list-style:none;padding:0;margin:0;counter-reset:risk-counter;display:flex;flex-direction:column;gap:var(--sp-2)}.top-risk-item{display:flex;align-items:flex-start;gap:var(--sp-2);font-size:var(--text-body);color:var(--color-text);counter-increment:risk-counter}.top-risk-item:before{content:counter(risk-counter);display:flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:50%;font-size:.7rem;font-weight:var(--fw-bold);background:var(--color-danger);color:#fff;flex-shrink:0;margin-top:2px}.report-section{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--sp-5) var(--sp-6);margin-bottom:var(--sp-4)}.report-section-header{margin-bottom:var(--sp-3);border-bottom:1px solid var(--color-border);padding-bottom:var(--sp-3)}.report-section-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);cursor:pointer;-webkit-user-select:none;user-select:none;transition:opacity .15s ease;border-bottom:1px solid var(--color-border);padding-bottom:var(--sp-3);margin-bottom:var(--sp-3)}.report-section-toggle:hover{opacity:.8}.report-section-body{padding-top:var(--sp-1)}.collapsible-header-right{display:flex;align-items:baseline;gap:var(--sp-2);flex-shrink:0}.section-chevron{font-size:1.1rem;color:var(--color-muted);flex-shrink:0;transition:transform .2s ease;line-height:1}.report-section-title{font-size:var(--text-section);font-weight:var(--fw-bold);color:#111;display:flex;align-items:baseline;gap:var(--sp-2);margin:0}.report-section-num{color:var(--color-primary);font-variant-numeric:tabular-nums}.report-section-intro{font-size:var(--text-body);color:var(--color-muted);margin:0 0 var(--sp-4);font-style:italic}.brief-table-wrap{overflow-x:auto;border-radius:var(--radius-input);border:1px solid var(--color-border)}.brief-table{width:100%;border-collapse:collapse;font-size:var(--text-body)}.brief-table th,.brief-table td{padding:var(--sp-3) var(--sp-4);text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top}.brief-table tr:last-child th,.brief-table tr:last-child td{border-bottom:none}.brief-table th{width:200px;min-width:140px;font-weight:var(--fw-semibold);color:var(--color-text);background:#f8f9fb;white-space:nowrap}.brief-table td{color:var(--color-text)}.domain-section{background:#fff;border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:var(--sp-4);overflow:hidden}.domain-section-header{padding:var(--sp-4) var(--sp-5);background:#f8f9fb;border-left:4px solid transparent;border-bottom:1px solid var(--color-border);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.domain-section-header:hover{background:var(--color-primary-subtle)}.domain-section-title-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-2)}.domain-section-title{font-size:var(--text-section);font-weight:var(--fw-bold);color:#111;margin:0;display:flex;align-items:baseline;gap:var(--sp-2)}.domain-section-num{color:var(--color-primary)}.domain-score-badge{font-size:var(--text-caption);font-weight:var(--fw-semibold);padding:3px var(--sp-3);border-radius:var(--radius-pill);white-space:nowrap;background:var(--k-grey-100, #f3f3f3);color:var(--color-muted)}.domain-mini-bar{height:5px;display:flex;border-radius:var(--radius-pill);overflow:hidden;background:var(--color-border);width:100%}.domain-mini-bar-seg{height:100%;transition:flex .4s ease}.domain-body{padding:var(--sp-5) var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5)}.domain-block-label{font-size:var(--text-caption);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.07em;color:var(--color-muted);margin:0}.domain-block-text{font-size:var(--text-body);color:var(--color-text);margin:0}.domain-findings-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--sp-2)}.research-solutions-heading{margin:0 0 var(--sp-3);font-size:var(--text-card);font-weight:var(--fw-bold);letter-spacing:-.01em;line-height:1.3;color:var(--color-text);text-transform:none}.finding-card.solution-strong .finding-status-icon{color:var(--color-primary)}.finding-card.solution-partial .finding-status-icon{color:var(--color-muted)}.solution-strength-label{font-weight:var(--fw-semibold);color:inherit}.finding-card.solution-strong .solution-strength-label{color:var(--color-primary)}.finding-card.solution-card-featured{background:var(--color-primary-subtle);border-color:color-mix(in srgb,var(--color-primary) 35%,var(--color-border));border-left:4px solid var(--color-primary);padding-left:calc(var(--sp-5) - 3px)}.finding-card.solution-card-featured:hover{border-color:color-mix(in srgb,var(--color-primary) 50%,var(--color-border))}.solution-rationale-sections{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-2)}.solution-rationale-block{display:flex;flex-direction:column;gap:var(--sp-1)}.solution-rationale-label{margin:0;font-size:var(--text-body);font-weight:var(--fw-semibold);color:var(--color-text)}.solution-rationale-list{margin:var(--sp-3) 0 0;padding-left:1.15em;display:flex;flex-direction:column;gap:.15rem;font-size:var(--text-body);line-height:1.45;color:var(--color-text-secondary)}.solution-rationale-list li{padding-left:.15em}.research-solutions-list{gap:var(--sp-4)}.research-solutions-list>.finding-card.solution-strong,.research-solutions-list>.finding-card.solution-partial{margin-bottom:0;padding-bottom:var(--sp-6)}.research-solutions-list>.finding-action-row{margin-top:0}.domain-all-clear{margin:0;font-size:var(--text-body);color:var(--color-success, #049105);font-weight:var(--fw-medium, 500)}.domain-passed-note,.domain-skipped-note{margin:var(--sp-2) 0 0;font-size:var(--text-small, .8rem);color:var(--color-muted, #888)}.next-steps-section .report-section-title{margin-bottom:var(--sp-3)}.report-footer-actions{display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) 0 var(--sp-8)}.btn-spinner{display:inline-block;width:.85em;height:.85em;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:btn-spin .7s linear infinite;vertical-align:-.15em;margin-right:.3em}@keyframes btn-spin{to{transform:rotate(360deg)}}.error-banner{display:flex;align-items:flex-start;gap:.6rem;margin:0 0 var(--space-4, 1rem);padding:.75rem 1rem;background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-left:4px solid var(--color-danger);border-radius:var(--radius-card);color:var(--color-danger);font-size:.9rem;line-height:1.4}.error-banner-icon{flex-shrink:0;font-size:1rem;line-height:1.4}.error-banner-text{flex:1}:root{--status-green: var(--color-success, #049105);--status-orange: var(--color-warning, #cc3702);--status-blue: var(--color-primary, #0060ff)}.validate-step{width:100%;max-width:900px;margin:0 auto;padding-bottom:var(--sp-4, 1rem)}.validate-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4, 1rem);flex-wrap:wrap;margin-bottom:var(--sp-3, .75rem)}.validate-title{font-size:var(--text-page);font-weight:var(--fw-bold);color:var(--color-text);margin-bottom:var(--sp-1);line-height:1.2;letter-spacing:-.01em}.validate-source{font-size:var(--text-body);color:var(--color-text-secondary)}.validate-source strong{color:var(--color-text);font-weight:var(--fw-semibold, 600)}.brief-strip{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem 1.25rem;padding:.65rem .95rem;margin:var(--sp-4, 1rem) 0 var(--sp-5, 1.25rem);background:var(--color-surface, #fff);border:1px solid var(--color-border);border-radius:var(--radius-card, 10px);font-size:var(--text-small, .8rem);color:var(--color-text-secondary, inherit)}.brief-strip-lead{font-weight:var(--fw-semibold, 600);color:var(--color-text, inherit)}.brief-strip-analysis strong{color:var(--color-text, inherit);font-weight:var(--fw-semibold, 600)}.brief-strip-spacer{flex:1}.brief-legend{display:flex;flex-wrap:wrap;gap:.9rem}.brief-legend span{display:inline-flex;align-items:center;gap:.4rem}.brief-section{margin-bottom:var(--sp-5, 1.5rem)}.brief-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem;margin:0 .25rem var(--sp-2, .5rem)}.section-title{text-transform:uppercase;letter-spacing:.1em;font-size:var(--text-small, .72rem);font-weight:var(--fw-bold, 700);color:var(--color-text-secondary, inherit)}.brief-section-count{font-size:var(--text-small, .8rem);font-weight:var(--fw-semibold, 600);color:var(--color-muted, #888);font-variant-numeric:tabular-nums}.brief-section-count.complete{color:var(--status-green)}.brief-section-toggle{cursor:pointer;-webkit-user-select:none;user-select:none}.brief-section-toggle:hover{opacity:.8}.brief-card{background:var(--color-surface, #fff);border:1px solid var(--color-border);border-radius:var(--radius-card, 12px)}.brief-row{display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:.75rem 1rem;padding:.7rem 1.1rem;border-top:1px solid var(--color-border)}.brief-row:first-child{border-top:none}.brief-row.tall{align-items:start}.brief-row.tall .brief-row-label{padding-top:.5rem}.brief-row.tall .brief-row-status{padding-top:.45rem}.brief-row-label{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;font-size:var(--text-body, .85rem);font-weight:var(--fw-semibold, 600);color:var(--color-text, inherit)}.brief-row-name,.brief-row-field{min-width:0}.brief-val{width:100%;font:inherit;font-size:var(--text-body, .9rem);color:var(--color-text, inherit);background:transparent;border:1px solid transparent;border-radius:var(--radius-btn, 7px);padding:.45rem .55rem;transition:background .12s,border-color .12s}.brief-val::placeholder{color:var(--color-muted, #999)}.brief-val:hover{background:color-mix(in srgb,var(--color-text, #000) 4%,transparent)}.brief-val.brief-val-invalid{border-color:var(--color-danger);background:var(--color-danger-bg)}.brief-field-error{margin:var(--sp-1) 0 0;font-size:var(--text-caption);font-weight:var(--fw-semibold);color:var(--color-danger)}.brief-val:focus{outline:none;background:var(--color-surface, #fff);border-color:var(--color-primary, #0060FF);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary, #0060FF) 18%,transparent)}textarea.brief-val{resize:vertical;line-height:1.5;min-height:66px}.brief-row-status{justify-self:end}.brief-ok{color:var(--status-green);font-size:.95rem}.brief-chip{font-size:.7rem;font-weight:var(--fw-bold, 700);padding:.15rem .55rem;border-radius:var(--radius-pill, 999px);white-space:nowrap}.brief-chip.check{color:var(--status-orange);background:color-mix(in srgb,var(--status-orange) 14%,transparent)}.brief-chip.miss-mandatory{color:var(--status-blue);background:color-mix(in srgb,var(--status-blue) 13%,transparent)}.brief-chip.miss-optional{color:var(--color-muted);background:var(--k-grey-100)}.brief-conflict{margin-top:.45rem;display:flex;flex-direction:column;gap:.35rem}.brief-conflict-label{font-size:var(--text-caption, .75rem);color:var(--status-orange);font-weight:500}.brief-conflict-options{display:flex;flex-wrap:wrap;gap:.35rem}.brief-conflict-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--status-orange) 45%,transparent);background:color-mix(in srgb,var(--status-orange) 8%,transparent);color:var(--color-text, inherit);border-radius:4px;padding:.3rem .55rem;font-size:var(--text-caption, .75rem);cursor:pointer;text-align:left;max-width:100%}.brief-conflict-btn:hover{background:color-mix(in srgb,var(--status-orange) 16%,transparent)}.brief-conflict-btn.selected{border-color:var(--status-orange);background:color-mix(in srgb,var(--status-orange) 22%,transparent);font-weight:600}.brief-conflict-src{display:block;margin-top:.1rem;opacity:.7;font-weight:400;font-size:.7rem}.brief-row.conflict .brief-val{border-color:color-mix(in srgb,var(--status-orange) 40%,transparent)}.brief-row .required-tag{font-style:normal;font-size:.6rem;font-weight:var(--fw-bold, 700);text-transform:uppercase;letter-spacing:.04em;color:var(--color-danger)}.status-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex-shrink:0}.status-dot.status-green{background:var(--status-green)}.status-dot.status-orange{background:var(--status-orange)}.status-dot.status-blue{background:var(--status-blue)}.status-dot.status-grey{background:var(--color-muted)}.field-info{position:relative;display:inline-flex}.field-info-btn{width:16px;height:16px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-surface, #fff);color:var(--color-muted, #666);font-size:11px;font-style:italic;font-weight:700;line-height:1;cursor:pointer;padding:0}.field-info-btn:hover{border-color:var(--color-primary, #0060FF);color:var(--color-primary, #0060FF)}.upload-lede-info{vertical-align:middle;margin-left:.2rem;top:-1px}.upload-info-pop{width:340px}.upload-info-pop .field-info-desc{font-size:var(--text-small, .8rem);line-height:1.45;color:var(--color-text-secondary, inherit)}.upload-info-gap{margin-top:.55rem}.field-info-pop{position:absolute;top:130%;left:0;z-index:20;width:260px;display:block;padding:.6rem .7rem;background:var(--color-surface, #fff);color:var(--color-text, inherit);border:1px solid var(--color-border);border-radius:var(--radius-card, 8px);box-shadow:0 6px 20px #0000002e;font-weight:400;white-space:normal}.field-info-desc{display:block;font-size:var(--text-small, .8rem);line-height:1.45}.field-info-eg-label{display:block;margin-top:.5rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted, #888)}.field-info-eg{margin:.2rem 0 0;padding-left:1rem;font-size:var(--text-small, .8rem)}.field-info-eg li{margin:.15rem 0;color:var(--color-text-secondary, inherit)}@media(max-width:640px){.brief-row{grid-template-columns:1fr auto}.brief-row .brief-row-field{grid-column:1 / -1}.brief-row.tall .brief-row-label{padding-top:0}}.analysis-bar{display:flex;align-items:center;gap:.75rem;margin-bottom:var(--sp-4, 1rem)}.analysis-select{position:relative}.analysis-select-toggle{display:inline-flex;align-items:center;gap:.5rem;min-width:200px;justify-content:space-between;padding:.45rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-btn, 6px);background:var(--color-surface, #fff);color:var(--color-text, inherit);font:inherit;font-size:var(--text-body, .9rem);cursor:pointer}.analysis-select-toggle .chevron{font-size:.7em;opacity:.6}.analysis-select-menu{position:absolute;top:110%;left:0;z-index:30;min-width:220px;padding:.35rem;background:var(--color-surface, #fff);border:1px solid var(--color-border);border-radius:var(--radius-card, 8px);box-shadow:0 6px 20px #0000002e}.analysis-option{display:flex;align-items:center;gap:.55rem;padding:.45rem .5rem;border-radius:var(--radius-btn, 6px);cursor:pointer;font-size:var(--text-body, .9rem)}.analysis-option:hover{background:var(--color-hover, rgba(0,0,0,.04))}.analysis-clear{border:none;background:none;color:var(--color-primary, #0060FF);font:inherit;font-size:var(--text-small, .8rem);cursor:pointer;text-decoration:underline}.analysis-head{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem}.analysis-head .upload-section-title{margin:0}.analysis-info-pop{width:320px}.analysis-info-item{display:block;margin-top:.55rem}.analysis-info-item strong{display:block;font-size:var(--text-small, .82rem);color:var(--color-text, inherit)}.analysis-info-item span{display:block;font-size:var(--text-small, .8rem);line-height:1.45;color:var(--color-text-secondary, inherit)}.analysis-info-note{display:block;margin-top:.6rem;padding-top:.5rem;border-top:1px solid var(--color-border);font-size:.72rem;color:var(--color-muted, #888)}.analysis-tiles{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:var(--sp-4, 1rem)}.analysis-tile{display:inline-flex;align-items:center;gap:.55rem;padding:.6rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius-card, 8px);background:var(--color-surface, #fff);color:var(--color-text, inherit);font:inherit;font-size:var(--text-body, .9rem);font-weight:var(--fw-medium, 500);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.analysis-tile:hover:not(:disabled){border-color:var(--color-primary, #0060FF)}.analysis-tile.on{border-color:var(--color-primary, #0060FF);background:color-mix(in srgb,var(--color-primary, #0060FF) 8%,transparent)}.analysis-tile:disabled{opacity:.6;cursor:not-allowed}.analysis-tile-check{width:18px;height:18px;flex:0 0 auto;display:inline-grid;place-items:center;border-radius:5px;border:1.5px solid var(--color-border);font-size:11px;font-weight:700;line-height:1;color:#fff}.analysis-tile.on .analysis-tile-check{background:var(--color-primary, #0060FF);border-color:var(--color-primary, #0060FF)}.upload-section{margin-top:var(--sp-5, 1.25rem)}.upload-section-title{font-size:var(--text-lg, 1.05rem);font-weight:var(--fw-bold, 700);color:var(--color-text, inherit);margin:0 0 .35rem}.upload-section-desc{font-size:var(--text-body, .9rem);color:var(--color-text-secondary, inherit);line-height:1.55;margin:0 0 .75rem}.dropzone.has-file{border-style:solid;border-color:var(--color-primary, #0060FF);background:color-mix(in srgb,var(--color-primary, #0060FF) 6%,transparent)}.upload-limit-hint{margin:var(--sp-3) 0 0;font-size:var(--text-caption, .8rem);color:var(--color-warning, #cc3702);line-height:1.4}.upload-file-list{list-style:none;margin:var(--sp-4) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.upload-file-item{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border:1px solid var(--color-border);border-radius:var(--radius-card, 8px);background:var(--color-bg)}.upload-file-meta{display:flex;flex-direction:column;gap:.15rem;min-width:0}.upload-file-name{font-size:var(--text-body, .9rem);font-weight:var(--fw-semibold, 600);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-file-size{font-size:var(--text-caption, .8rem);color:var(--color-muted)}.upload-file-remove{flex-shrink:0;background:none;border:none;color:var(--color-primary, #0060FF);font-size:var(--text-caption, .8rem);font-weight:var(--fw-semibold, 600);cursor:pointer;padding:var(--sp-1) var(--sp-2)}.upload-file-remove:hover:not(:disabled){text-decoration:underline}.upload-file-remove:disabled{opacity:.5;cursor:not-allowed}.field-info-evidence{display:block;margin-top:.2rem;font-size:var(--text-small, .8rem);font-style:italic;color:var(--color-text-secondary, inherit);line-height:1.4}
