.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:2rem}.auth-container{width:100%;max-width:420px}.auth-card{background:var(--pane);border:1px solid var(--line);border-radius:12px;padding:2.5rem;box-shadow:0 4px 24px #0006}.auth-logo{text-align:center;margin-bottom:1.5rem}.auth-logo svg,.auth-logo img{height:48px;width:auto}.auth-logo-text{font-size:1.5rem;font-weight:700;color:var(--text);letter-spacing:.025em;margin-top:.5rem}.auth-title{font-size:1.25rem;font-weight:600;color:var(--text);text-align:center;margin:0 0 1.5rem}.auth-subtitle{font-size:.9rem;color:var(--muted);text-align:center;margin:-1rem 0 1.5rem}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-field{display:flex;flex-direction:column;gap:.375rem}.auth-label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input{width:100%;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:.9rem;transition:border-color .2s,background-color .2s,box-shadow .2s}.auth-input:focus{outline:none;border-color:var(--secondary);background:var(--bg-tertiary);box-shadow:0 0 0 3px #17a2b826}.auth-input::placeholder{color:var(--muted);opacity:.6}.auth-input.error{border-color:var(--error)}.auth-input.error:focus{box-shadow:0 0 0 3px #e74c3c26}.auth-password-toggle{position:absolute;right:.75rem;background:none;border:none;color:var(--muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.auth-password-toggle:hover{color:var(--text)}.auth-button{width:100%;padding:.875rem 1.5rem;background:var(--secondary);color:#fff;border:none;border-radius:6px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .2s,transform .1s;display:flex;align-items:center;justify-content:center;gap:.5rem}.auth-button:hover:not(:disabled){background:#1abc9c}.auth-button:active:not(:disabled){transform:scale(.98)}.auth-button:disabled{opacity:.6;cursor:not-allowed}.auth-button-secondary{background:transparent;border:1px solid var(--line);color:var(--text)}.auth-button-secondary:hover:not(:disabled){background:var(--bg-secondary);border-color:var(--secondary)}.auth-links{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line)}.auth-link{color:var(--secondary);text-decoration:none;font-size:.875rem;transition:color .2s}.auth-link:hover{color:#1abc9c;text-decoration:underline}.auth-divider{display:flex;align-items:center;gap:1rem;margin:1rem 0;color:var(--muted);font-size:.8rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--line)}.auth-error{background:#e74c3c26;border:1px solid rgba(231,76,60,.3);border-radius:6px;padding:.75rem 1rem;color:#f87171;font-size:.875rem;display:flex;align-items:flex-start;gap:.5rem}.auth-error-icon{flex-shrink:0;margin-top:.125rem}.auth-success{background:#48bb7826;border:1px solid rgba(72,187,120,.3);border-radius:6px;padding:.75rem 1rem;color:#68d391;font-size:.875rem;display:flex;align-items:flex-start;gap:.5rem}.auth-field-error{color:#f87171;font-size:.8rem;margin-top:.25rem}.password-strength{margin-top:.5rem}.password-strength-bar{height:4px;background:var(--bg-tertiary);border-radius:2px;overflow:hidden;margin-bottom:.5rem}.password-strength-fill{height:100%;border-radius:2px;transition:width .3s,background-color .3s}.password-strength-fill.weak{width:25%;background:#ef4444}.password-strength-fill.fair{width:50%;background:#f59e0b}.password-strength-fill.good{width:75%;background:#84cc16}.password-strength-fill.strong{width:100%;background:#22c55e}.password-strength-label{font-size:.75rem;font-weight:500;margin-bottom:.375rem}.password-strength-label.weak{color:#ef4444}.password-strength-label.fair{color:#f59e0b}.password-strength-label.good{color:#84cc16}.password-strength-label.strong{color:#22c55e}.password-requirements{display:flex;flex-direction:column;gap:.25rem}.password-requirement{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--muted);transition:color .2s}.password-requirement.met{color:#22c55e}.password-requirement-icon{font-size:.875rem}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:var(--muted)}.auth-loading-spinner{width:40px;height:40px;border:3px solid var(--line);border-top-color:var(--secondary);border-radius:50%;animation:auth-spin .8s linear infinite;margin-bottom:1rem}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-button-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:auth-spin .8s linear infinite}.user-dropdown{position:relative}.user-dropdown-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--text);cursor:pointer;transition:background-color .2s,border-color .2s}.user-dropdown-trigger:hover{background:var(--bg-secondary);border-color:var(--line)}.user-avatar{width:32px;height:32px;border-radius:50%;background:var(--secondary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600}.user-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.user-name{font-size:.875rem;font-weight:500;line-height:1.2}.user-role{font-size:.75rem;color:var(--muted)}.user-dropdown-menu{position:absolute;top:calc(100% + 4px);right:0;min-width:200px;background:var(--pane);border:1px solid var(--line);border-radius:8px;box-shadow:0 4px 16px #0000004d;overflow:hidden;z-index:1000}.user-dropdown-header{padding:.75rem 1rem;border-bottom:1px solid var(--line)}.user-dropdown-email{font-size:.8rem;color:var(--muted);word-break:break-all}.user-dropdown-org{font-size:.75rem;color:var(--muted);margin-top:.25rem}.user-dropdown-item{display:flex;align-items:center;gap:.5rem;width:100%;padding:.625rem 1rem;background:none;border:none;color:var(--text);font-size:.875rem;text-align:left;cursor:pointer;transition:background-color .15s}.user-dropdown-item:hover{background:var(--bg-secondary)}.user-dropdown-item.danger{color:#f87171}.user-dropdown-item.danger:hover{background:#e74c3c26}.user-dropdown-divider{height:1px;background:var(--line);margin:.25rem 0}.role-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.role-badge.admin{background:#6366f133;color:#a5b4fc}.role-badge.analyst{background:#17a2b833;color:#7dd3fc}.role-badge.viewer{background:#8ea1c733;color:var(--muted)}.access-denied-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg);padding:2rem;text-align:center}.access-denied-icon{font-size:4rem;color:var(--error);margin-bottom:1.5rem}.access-denied-title{font-size:1.5rem;font-weight:600;color:var(--text);margin:0 0 .5rem}.access-denied-message{color:var(--muted);margin:0 0 1.5rem;max-width:400px}.mfa-setup,.mfa-backup-codes{padding:1rem 0}.mfa-setup-title{font-size:1.25rem;font-weight:600;color:var(--text);margin:0 0 .5rem;text-align:center}.mfa-setup-subtitle{font-size:.9rem;color:var(--muted);text-align:center;margin:0 0 1.5rem;line-height:1.5}.mfa-setup-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem}.mfa-spinner{width:32px;height:32px;border:3px solid var(--line);border-top-color:var(--secondary);border-radius:50%;animation:spin 1s linear infinite}.mfa-qr-container{display:flex;justify-content:center;margin:1.5rem 0}.mfa-qr-code{padding:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.mfa-qr-code img{display:block}.mfa-manual-entry{text-align:center;margin:1rem 0}.mfa-toggle-manual{background:none;border:none;color:var(--secondary);cursor:pointer;font-size:.875rem;text-decoration:underline}.mfa-toggle-manual:hover{color:#1abc9c}.mfa-secret-display{margin-top:1rem;padding:1rem;background:var(--bg-secondary);border-radius:6px;text-align:center}.mfa-secret-display label{display:block;font-size:.75rem;color:var(--muted);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.mfa-secret-code{display:block;font-family:Monaco,Menlo,monospace;font-size:1rem;letter-spacing:.1em;color:var(--text);margin-bottom:.5rem;word-break:break-all}.mfa-copy-button{background:var(--bg-tertiary);border:1px solid var(--line);border-radius:4px;padding:.25rem .75rem;font-size:.75rem;color:var(--text);cursor:pointer;transition:background-color .2s}.mfa-copy-button:hover{background:var(--secondary);color:#fff}.mfa-code-input-container{display:flex;justify-content:center;margin:1.5rem 0}.mfa-code-inputs{display:flex;gap:.5rem}.mfa-code-input{width:48px;height:56px;text-align:center;font-size:1.5rem;font-weight:600;font-family:Monaco,Menlo,monospace;background:var(--bg-secondary);border:2px solid var(--line);border-radius:8px;color:var(--text);transition:border-color .2s,box-shadow .2s}.mfa-code-input:focus{outline:none;border-color:var(--secondary);box-shadow:0 0 0 3px #17a2b826}.mfa-code-input:disabled{opacity:.6}.mfa-setup-actions{display:flex;gap:1rem;margin-top:1.5rem}.mfa-setup-actions .auth-button{flex:1}.mfa-backup-warning{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ffc10726;border:1px solid rgba(255,193,7,.3);border-radius:6px;margin-bottom:1.5rem}.mfa-backup-warning-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#ffc107;color:#000;border-radius:50%;font-size:.75rem;font-weight:700}.mfa-backup-codes-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin-bottom:1.5rem}.mfa-backup-code{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:6px}.mfa-backup-code-number{font-size:.75rem;color:var(--muted);min-width:1.5rem}.mfa-backup-code-value{font-family:Monaco,Menlo,monospace;font-size:.95rem;letter-spacing:.05em;color:var(--text)}.mfa-backup-actions{display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.mfa-backup-action-button{display:flex;align-items:center;gap:.25rem;padding:.5rem 1rem;background:var(--bg-secondary);border:1px solid var(--line);border-radius:6px;color:var(--text);font-size:.875rem;cursor:pointer;transition:background-color .2s,border-color .2s}.mfa-backup-action-button:hover{background:var(--bg-tertiary);border-color:var(--secondary)}.mfa-icon{font-size:1rem}.mfa-backup-confirm{padding:1rem;background:var(--bg-secondary);border-radius:6px;margin-bottom:1rem}.mfa-backup-confirm-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.9rem;color:var(--text)}.mfa-backup-confirm-checkbox{margin-top:.15rem;width:18px;height:18px;cursor:pointer}.mfa-status{padding:1rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:1.5rem}.mfa-status-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.mfa-status-title{font-size:.9rem;font-weight:600;color:var(--text)}.mfa-status-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.mfa-status-badge.enabled{background:#22c55e26;color:#22c55e}.mfa-status-badge.disabled{background:#6b728026;color:var(--muted)}.mfa-status-details{display:flex;flex-direction:column;gap:.5rem;font-size:.85rem;color:var(--muted)}.mfa-status-row{display:flex;justify-content:space-between}.mfa-section{min-height:200px}.mfa-status-card{background:var(--bg-secondary);border-radius:8px;padding:1.5rem;border:1px solid var(--border)}.mfa-status-card .mfa-status-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:0}.mfa-status-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.mfa-status-icon[data-enabled=true]{background:#22c55e26}.mfa-status-icon[data-enabled=false]{background:#6b728026}.mfa-status-info{flex:1}.mfa-status-card .mfa-status-title{font-size:1rem;font-weight:600;margin-bottom:.25rem}.mfa-status-subtitle{font-size:.875rem;color:var(--muted)}.mfa-backup-status{display:flex;align-items:center;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.mfa-backup-label{font-size:.875rem;color:var(--muted)}.mfa-backup-count{font-size:1rem;font-weight:600}.mfa-details-grid{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border)}.mfa-detail-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.mfa-detail-row:not(:last-child){border-bottom:1px solid var(--border)}.mfa-detail-label{font-size:.875rem;color:var(--muted)}.mfa-detail-value{font-size:.875rem;color:var(--text)}.mfa-enable-section{text-align:center;padding:1rem 0}.mfa-challenge{text-align:center}.mfa-challenge-header{margin-bottom:1.5rem}.mfa-challenge-icon{width:64px;height:64px;margin:0 auto 1rem;background:#3b82f61a;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem}.mfa-challenge-title{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text)}.mfa-challenge-subtitle{font-size:.875rem;color:var(--muted);margin:0 0 .25rem}.mfa-challenge-email{font-size:.875rem;color:var(--text);font-weight:500;margin:0}.mfa-rate-limit-warning{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:6px;color:#d97706;font-size:.875rem;margin-bottom:1rem}.mfa-warning-icon{font-weight:600;font-size:1rem}.mfa-challenge-actions{margin-top:1.5rem}.mfa-challenge-alt{margin-top:1rem;text-align:center}.mfa-alt-link{background:none;border:none;color:var(--primary);font-size:.875rem;cursor:pointer;text-decoration:underline;padding:0}.mfa-alt-link:hover{color:#1d4ed8}.mfa-alt-link:disabled{color:var(--muted);cursor:not-allowed}.mfa-challenge-footer{margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border)}.mfa-cancel-link{background:none;border:none;color:var(--muted);font-size:.875rem;cursor:pointer;padding:0}.mfa-cancel-link:hover{color:var(--danger)}.mfa-cancel-link:disabled{cursor:not-allowed}.mfa-backup-input-container{margin:1.5rem 0}.mfa-backup-input{text-align:center;font-size:1.25rem;letter-spacing:.1em;font-family:monospace;text-transform:uppercase}.mfa-backup-hint{font-size:.75rem;color:var(--muted);margin-top:.5rem}@media (max-width: 480px){.auth-page{padding:1rem}.auth-card{padding:1.5rem}.user-dropdown-trigger .user-info{display:none}}.ontology-chat{display:flex;flex-direction:column;height:100%;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a}.ontology-chat__header{position:relative;padding:1.5rem;border-bottom:1px solid #e0e0e0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:8px 8px 0 0}.ontology-chat__title{margin:0;font-size:1.5rem;font-weight:600}.ontology-chat__subtitle{margin:.5rem 0 0;font-size:.875rem;opacity:.9}.ontology-chat__close{position:absolute;top:1rem;right:1rem;background:#fff3;border:none;color:#fff;font-size:1.5rem;width:32px;height:32px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.ontology-chat__close:hover{background:#ffffff4d}.ontology-chat__messages{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.ontology-chat__welcome{text-align:center;padding:2rem;color:#666}.ontology-chat__welcome h3{margin:0 0 .5rem;color:#333}.ontology-chat__welcome p{margin:0 0 1.5rem}.ontology-chat__suggestions{display:flex;flex-direction:column;gap:.5rem;align-items:center;margin-top:1.5rem}.ontology-chat__suggestions p{font-weight:600;margin-bottom:.5rem}.ontology-chat__suggestion{background:#f5f5f5;border:1px solid #ddd;padding:.75rem 1rem;border-radius:4px;cursor:pointer;transition:all .2s;font-size:.875rem;text-align:left;max-width:400px}.ontology-chat__suggestion:hover{background:#667eea;color:#fff;border-color:#667eea}.ontology-chat__message{display:flex;flex-direction:column;gap:.5rem;max-width:80%}.ontology-chat__message--user{align-self:flex-end}.ontology-chat__message--assistant{align-self:flex-start}.ontology-chat__message-header{display:flex;justify-content:space-between;font-size:.75rem;color:#666}.ontology-chat__message-role{font-weight:600}.ontology-chat__message-content{padding:1rem;border-radius:8px;line-height:1.5}.ontology-chat__message--user .ontology-chat__message-content{background:#667eea;color:#fff}.ontology-chat__message--assistant .ontology-chat__message-content{background:#f5f5f5;color:#333}.ontology-chat__loading{display:flex;gap:.5rem}.ontology-chat__loading span{width:8px;height:8px;background:#666;border-radius:50%;animation:loading-bounce 1.4s infinite ease-in-out both}.ontology-chat__loading span:nth-child(1){animation-delay:-.32s}.ontology-chat__loading span:nth-child(2){animation-delay:-.16s}@keyframes loading-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.ontology-chat__provenance-preview{display:flex;gap:.75rem;align-items:center;padding:.75rem;background:#667eea1a;border-radius:4px;font-size:.75rem}.ontology-chat__show-provenance{background:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.75rem;transition:background .2s}.ontology-chat__show-provenance:hover{background:#5568d3}.ontology-chat__confidence{padding:.25rem .5rem;border-radius:3px;font-weight:600;text-transform:uppercase}.ontology-chat__confidence--high{background:#d4edda;color:#155724}.ontology-chat__confidence--medium{background:#fff3cd;color:#856404}.ontology-chat__confidence--low{background:#f8d7da;color:#721c24}.ontology-chat__result-count,.ontology-chat__execution-time{color:#666}.ontology-chat__results{margin-top:.5rem}.ontology-chat__results details{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:.5rem}.ontology-chat__results summary{cursor:pointer;font-weight:600;padding:.5rem}.ontology-chat__results-table{margin-top:.5rem;overflow-x:auto}.ontology-chat__results-table table{width:100%;border-collapse:collapse;font-size:.875rem}.ontology-chat__results-table th,.ontology-chat__results-table td{padding:.5rem;border:1px solid #e0e0e0;text-align:left}.ontology-chat__results-table th{background:#f5f5f5;font-weight:600}.ontology-chat__results-more{margin-top:.5rem;color:#666;font-style:italic}.ontology-chat__input-container{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e0e0e0;background:#fafafa;border-radius:0 0 8px 8px}.ontology-chat__input{flex:1;padding:.75rem 1rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;transition:border-color .2s}.ontology-chat__input:focus{outline:none;border-color:#667eea}.ontology-chat__input:disabled{background:#f5f5f5;cursor:not-allowed}.ontology-chat__send{background:#667eea;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:600;transition:background .2s}.ontology-chat__send:hover:not(:disabled){background:#5568d3}.ontology-chat__send:disabled{background:#ccc;cursor:not-allowed}.ontology-chat__provenance-modal{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000}.ontology-chat__provenance-backdrop{position:absolute;inset:0;background:#00000080;z-index:1}.ontology-chat__provenance-content{position:relative;background:#fff;border-radius:8px;max-width:800px;width:90%;max-height:80vh;overflow-y:auto;z-index:2;box-shadow:0 4px 16px #0003}.ontology-chat__provenance-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e0e0e0;background:#f5f5f5}.ontology-chat__provenance-header h3{margin:0;font-size:1.25rem}.ontology-chat__provenance-body{padding:1.5rem}.ontology-chat__provenance-section{margin-bottom:1.5rem}.ontology-chat__provenance-section:last-child{margin-bottom:0}.ontology-chat__provenance-section h4{margin:0 0 .75rem;font-size:1rem;color:#667eea}.ontology-chat__code{background:#2d2d2d;color:#f8f8f2;padding:1rem;border-radius:4px;overflow-x:auto;font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.5}.ontology-chat__provenance-section dl{display:grid;grid-template-columns:auto 1fr;gap:.5rem 1rem;margin:0}.ontology-chat__provenance-section dt{font-weight:600;color:#666}.ontology-chat__provenance-section dd{margin:0}.journey-dashboard{max-width:1400px;margin:0 auto;padding:2rem}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:2rem}.dashboard-header .header-left h1{margin:0 0 .5rem;font-size:2rem;font-weight:600;color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.3)}.dashboard-header .subtitle{margin:0;font-size:1rem;color:#e2e8f0!important;text-shadow:0 1px 2px rgba(0,0,0,.2)}.dashboard-header .header-right{flex-shrink:0;display:flex;align-items:center;gap:.75rem}.dashboard-controls{display:flex;gap:1.5rem;align-items:center;margin-bottom:2rem;padding:1rem;background:#f7fafc;border-radius:8px;border:1px solid #e2e8f0}.filter-group,.search-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:#4a5568}.filter-select{padding:.5rem 1rem;border:1px solid #cbd5e0;border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer;transition:border-color .2s}.filter-select:hover{border-color:#4299e1}.filter-select:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.search-input{width:350px;padding:.5rem 1rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.875rem;transition:border-color .2s}.search-input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.results-count{margin-left:auto;font-size:.875rem;color:#718096}.journey-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.5rem;margin-bottom:2rem}.journey-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;transition:all .2s ease;cursor:pointer}.journey-card:hover{border-color:#4299e1;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.journey-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;gap:1rem}.journey-card .header-left{flex:1;min-width:0}.journey-card .journey-name{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:#1a202c;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journey-card .journey-id{font-size:.75rem;color:#718096;font-family:Monaco,Courier New,monospace}.journey-card .status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.status-gray{background:#edf2f7;color:#4a5568}.status-blue{background:#ebf8ff;color:#2c5282}.status-green{background:#f0fff4;color:#276749}.status-red{background:#fff5f5;color:#9b2c2c}.journey-card .journey-description{margin:0 0 1rem;font-size:.875rem;color:#718096;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.progress-section{margin-bottom:1rem;padding:1rem;background:#f7fafc;border-radius:8px}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-label{font-size:.75rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.progress-percentage{font-size:.875rem;font-weight:600;color:#2d3748}.progress-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#667eea);border-radius:4px;transition:width .3s ease}.progress-details{display:flex;gap:.5rem;font-size:.75rem;color:#718096}.progress-details span{white-space:nowrap}.health-metrics{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.health-metric{flex:1;min-width:0;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;text-align:center}.health-metric .metric-label{display:block;font-size:.75rem;color:#718096;margin-bottom:.25rem}.health-metric .metric-value{display:block;font-size:1.25rem;font-weight:600;color:#2d3748}.health-good{background:#f0fff4;border-color:#9ae6b4}.health-good .metric-value{color:#276749}.health-fair{background:#fffaf0;border-color:#fbd38d}.health-fair .metric-value{color:#7c2d12}.health-poor{background:#fff5f5;border-color:#fc8181}.health-poor .metric-value{color:#9b2c2c}.health-critical{background:#fff5f5;border-color:#fc8181}.health-critical .metric-value{color:#9b2c2c}.health-unknown{background:#f7fafc;border-color:#e2e8f0}.card-metadata{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.75rem;color:#718096}.metadata-item{white-space:nowrap}.card-actions{display:flex;gap:.75rem}.card-actions .btn{flex:1;padding:.625rem 1rem;font-size:.875rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background:linear-gradient(135deg,#4299e1,#667eea);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#3182ce,#5a67d8);box-shadow:0 4px 12px #4299e14d;transform:translateY(-1px)}.btn-secondary{background:#fff;color:#4a5568;border:1px solid #cbd5e0}.btn-secondary:hover:not(:disabled){background:#f7fafc;border-color:#a0aec0}.btn .icon{font-size:1.25rem;line-height:1}.btn-text{color:#4299e1;text-decoration:none;font-size:.875rem;font-weight:600;transition:color .2s}.btn-text:hover{color:#3182ce;text-decoration:underline}.btn-icon-only{background:#fff;color:#4a5568;border:1px solid #cbd5e0;padding:.625rem;min-width:42px;min-height:42px}.btn-icon-only:hover:not(:disabled){background:#f7fafc;border-color:#a0aec0;transform:rotate(45deg)}.btn-icon-only .icon{font-size:1.25rem;line-height:1;transition:transform .3s ease}.btn-icon-only:hover .icon{transform:rotate(-45deg)}.loading-state,.error-state,.empty-state,.no-results-state{text-align:center;padding:4rem 2rem}.spinner{display:inline-block;width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-state p{font-size:1rem;color:#718096}.error-state .error-icon{font-size:3rem;margin-bottom:1rem}.error-state h3{margin:0 0 .5rem;font-size:1.5rem;color:#1a202c}.error-state p{margin:0 0 1.5rem;font-size:1rem;color:#718096}.empty-state .empty-illustration{font-size:4rem;margin-bottom:1rem}.empty-state h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:#1a202c}.empty-state p{margin:0 0 2rem;font-size:1rem;color:#718096;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.6}.empty-state .btn-text{display:block;margin-top:1rem}.no-results-state p{font-size:1rem;color:#718096;margin-bottom:1rem}@media (max-width: 768px){.journey-dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:stretch}.dashboard-header .header-right,.dashboard-header .btn-lg{width:100%}.dashboard-controls{flex-direction:column;align-items:stretch}.search-input{width:100%}.results-count{margin-left:0;text-align:center}.journey-grid{grid-template-columns:1fr}.health-metrics{flex-direction:column}.health-metric{min-width:100%}.card-actions{flex-direction:column}}.modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease-out}.journey-creation-modal{--text: #1a202c;--muted: #718096;--line: #e2e8f0;--bg: #ffffff;--bg-card: #ffffff;--pane: #ffffff;--color-text-secondary: #666666;--color-border: #e0e0e0;--color-bg-secondary: #f8f9fa;--color-bg-hover: #e9ecef;background:#fff;color:#1a202c;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.journey-creation-modal .node-name,.journey-creation-modal .tree-header,.journey-creation-modal .expand-icon,.journey-creation-modal .loading-item,.journey-creation-modal .loading-indicator,.journey-creation-modal .details-empty,.journey-creation-modal .details-section h4,.journey-creation-modal .form-group label,.journey-creation-modal .form-hint,.journey-creation-modal .jcf-optional,.journey-creation-modal .jcf-advanced-toggle,.journey-creation-modal .jcf-deep-label,.journey-creation-modal .jcf-deep-desc,.journey-creation-modal .jcf-table-path,.journey-creation-modal .jcf-selected-table,.journey-creation-modal .jcf-toggle-btn,.journey-creation-modal .error-message{color:#1a202c}.journey-creation-modal .jcf-optional,.journey-creation-modal .form-hint,.journey-creation-modal .jcf-deep-desc,.journey-creation-modal .expand-icon,.journey-creation-modal .loading-item,.journey-creation-modal .loading-indicator,.journey-creation-modal .details-empty{color:#718096}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1a202c}.modal-close{background:none;border:none;font-size:2rem;line-height:1;color:#718096;cursor:pointer;padding:0;width:32px;height:32px;border-radius:6px;transition:all .2s}.modal-close:hover{background:#f7fafc;color:#2d3748}.journey-creation-modal.jcf-modal--normal{max-width:640px!important;transition:max-width .3s ease}.journey-creation-modal.jcf-modal--wide{max-width:960px!important;transition:max-width .3s ease}.journey-creation-modal>.modal-content{max-width:none!important;width:100%!important;box-sizing:border-box;background:#fff!important;border:none!important;color:#1a202c}.journey-creation-modal>.modal-header{background:#fff!important;border-bottom:1px solid #e2e8f0!important}.journey-creation-modal>.modal-header h2{color:#1a202c!important}.journey-creation-modal>.modal-header .modal-close{color:#718096}.journey-creation-modal>.modal-header .modal-close:hover{color:#2d3748;background:#f7fafc}.journey-creation-modal>.modal-footer{background:#fff!important;border-top:1px solid #e2e8f0!important}.jcf-form-phase,.jcf-analyze-phase{width:100%}.jcf-phase--visible{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.jcf-phase--hidden{opacity:0;height:0;overflow:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease}.jcf-zone{margin-bottom:1.25rem;width:100%}.jcf-zone:last-child{margin-bottom:0}.jcf-zone .form-input,.jcf-zone .form-textarea{width:100%;box-sizing:border-box}.jcf-zone .form-group,.jcf-databricks-section{width:100%}.jcf-auto-name{font-style:italic;color:#64748b}.jcf-auto-name:focus{font-style:normal;color:inherit}.jcf-optional{font-weight:400;color:#94a3b8;font-size:.8125rem}.jcf-toggle{display:flex;background:#f1f5f9;border-radius:10px;padding:4px;gap:4px;margin-bottom:1rem}.jcf-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;border:none;border-radius:8px;background:transparent;color:#64748b;font-size:.875rem;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s ease;position:relative}.jcf-toggle-btn:hover:not(.jcf-toggle-btn--disabled){color:#334155;background:#ffffff80}.jcf-toggle-btn--active{background:#fff;color:#1e293b;font-weight:600;box-shadow:0 1px 3px #00000014}.jcf-toggle-btn--disabled{opacity:.5;cursor:not-allowed}.jcf-toggle-icon{font-size:1.125rem;line-height:1}.jcf-toggle-badge{position:absolute;top:-6px;right:-4px;font-size:.625rem;font-weight:600;padding:1px 6px;background:#e2e8f0;color:#64748b;border-radius:8px;white-space:nowrap}.jcf-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2.5rem 2rem;border:2px dashed #cbd5e0;border-radius:12px;background:#f8fafc;cursor:pointer;transition:all .2s ease;text-align:center;outline:none}.jcf-dropzone:hover{border-color:#93c5fd;background:#eff6ff}.jcf-dropzone--active{border-color:#3b82f6;background:#dbeafe;box-shadow:0 0 0 4px #3b82f626;transform:scale(1.01)}.jcf-dropzone--compact{padding:1rem}.jcf-file-input{position:absolute;opacity:0;pointer-events:none;width:0;height:0}.jcf-dropzone-icon{opacity:.6}.jcf-dropzone-text{font-size:.9375rem;color:#475569}.jcf-dropzone-text strong{color:#3b82f6}.jcf-dropzone-hint{font-size:.8125rem;color:#94a3b8}.jcf-dropzone-add{font-size:.875rem;font-weight:500;color:#3b82f6}.jcf-file-chips{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.jcf-file-chip{display:flex;align-items:center;gap:.625rem;padding:.5rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .15s ease}.jcf-file-chip:hover{background:#f8fafc;border-color:#cbd5e0}.jcf-chip-icon{font-size:1.125rem;flex-shrink:0}.jcf-chip-name{flex:1;font-size:.875rem;font-weight:500;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jcf-chip-size{font-size:.75rem;color:#94a3b8;flex-shrink:0}.jcf-chip-remove{background:none;border:none;font-size:1.25rem;line-height:1;color:#cbd5e0;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s ease;flex-shrink:0}.jcf-chip-remove:hover{background:#fee2e2;color:#ef4444}.jcf-databricks-section{display:flex;flex-direction:column;gap:.75rem}.jcf-selected-table{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#f0fdf4;border:1px solid #86efac;border-radius:8px}.jcf-table-icon{font-size:1.25rem;flex-shrink:0}.jcf-table-path{font-size:.875rem;font-weight:600;color:#15803d;word-break:break-all}.jcf-deep-analysis{display:flex;align-items:flex-start;gap:.625rem;padding:.75rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.875rem}.jcf-deep-analysis input[type=checkbox]{margin-top:2px;cursor:pointer;flex-shrink:0}.jcf-deep-label{display:block;font-weight:600;color:#1e293b}.jcf-deep-desc{display:block;font-size:.8125rem;color:#94a3b8;line-height:1.4;margin-top:2px}.jcf-advanced-toggle{display:flex;align-items:center;gap:.5rem;width:100%;background:none;border:none;padding:.625rem 0;font-size:.875rem;font-weight:500;color:#64748b;cursor:pointer;font-family:inherit;transition:color .15s ease}.jcf-advanced-toggle:hover{color:#334155}.jcf-chevron{display:inline-block;font-size:.625rem;transition:transform .2s ease}.jcf-chevron--open{transform:rotate(90deg)}.jcf-template-badge{margin-left:auto;padding:2px 8px;background:#eff6ff;color:#3b82f6;border-radius:6px;font-size:.75rem;font-weight:600}.jcf-advanced-content{padding:.75rem 0 0;display:flex;flex-direction:column;gap:1rem;animation:jcf-slideDown .2s ease-out}.jcf-intake-inline{border-top:1px solid #e2e8f0;padding-top:1rem}@keyframes jcf-slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.jcf-analyze-phase .analysis-progress-panel{max-height:none;margin:0}.modal-content{padding:1.5rem 2rem 2rem;flex:1;overflow-y:auto}.form-step{display:flex;flex-direction:column;gap:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#1a202c!important;margin-bottom:.5rem}.form-input,.form-textarea{padding:.75rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;transition:all .2s;font-family:inherit}.form-input:focus,.form-textarea:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e11a}.form-hint{font-size:.75rem;color:#718096}.upload-zone{position:relative;margin-bottom:1.5rem}.upload-input{position:absolute;opacity:0;pointer-events:none}.upload-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;border:2px dashed #cbd5e0;border-radius:12px;background:#f7fafc;cursor:pointer;transition:all .2s}.upload-label:hover{border-color:#4299e1;background:#ebf8ff}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-text{font-size:1rem;color:#2d3748;margin-bottom:.5rem}.upload-hint{font-size:.875rem;color:#718096}.asset-list{margin-top:1.5rem;padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.asset-list h4{font-size:.875rem;font-weight:600;color:#2d3748;margin:0 0 1rem}.asset-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.5rem;transition:all .2s}.asset-item:hover{background:#edf2f7;border-color:#cbd5e0}.asset-icon{font-size:1.5rem}.asset-info{flex:1}.asset-name{font-size:.875rem;font-weight:500;color:#2d3748}.asset-meta{font-size:.75rem;color:#718096}.asset-remove{background:none;border:none;font-size:1.5rem;color:#cbd5e0;cursor:pointer;padding:0;width:28px;height:28px;border-radius:4px;transition:all .2s}.asset-remove:hover{background:#fed7d7;color:#e53e3e}.station-intro{font-size:.875rem;color:#4a5568!important;margin-bottom:1rem}.station-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.station-option{padding:1rem;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;position:relative}.station-option:hover{border-color:#cbd5e0;background:#f7fafc}.station-option.selected{border-color:#4299e1;background:#ebf8ff}.station-option.required{border-color:#cbd5e0;background:#f7fafc;cursor:default}.station-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.station-icon{font-size:1.25rem}.station-name{font-size:.875rem;font-weight:600;color:#1a202c!important}.required-badge{margin-left:auto;padding:.125rem .5rem;background:#edf2f7;color:#4a5568;font-size:.625rem;font-weight:600;border-radius:4px;text-transform:uppercase}.station-description{font-size:.75rem;color:#4a5568!important;margin-bottom:.5rem}.station-pillar{font-size:.6875rem;color:#718096;margin-bottom:.5rem}.station-pillar .pillar-label{font-weight:600;color:#4a5568}.station-checkbox{display:flex;justify-content:flex-end}.station-checkbox input{width:18px;height:18px;cursor:pointer}.journey-summary{display:flex;justify-content:space-around;padding:1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.summary-item{text-align:center;font-size:.875rem;color:#718096}.summary-item strong{display:block;font-size:1.5rem;color:#2d3748;margin-bottom:.25rem}.step-title{font-size:1.125rem;font-weight:600;color:#1a202c;margin:0 0 1rem}.upload-warning{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:1rem;font-size:.8125rem;color:#92400e}.upload-warning .warning-icon{font-size:1rem;flex-shrink:0}.org-redirect-hint{display:flex;gap:.75rem;padding:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:1.5rem}.org-redirect-hint .hint-icon{font-size:1.25rem;color:#0284c7;flex-shrink:0}.org-redirect-hint .hint-content{flex:1}.org-redirect-hint .hint-content p{margin:0 0 .375rem;font-size:.8125rem;color:#0c4a6e;line-height:1.4}.org-redirect-hint .hint-content p:last-of-type{margin-bottom:.625rem}.org-redirect-hint .hint-link{display:inline-flex;align-items:center;gap:.25rem;font-size:.8125rem;font-weight:600;color:#0284c7;text-decoration:none;transition:color .15s}.org-redirect-hint .hint-link:hover{color:#0369a1;text-decoration:underline}.data-source-step{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;padding:1rem 0}.data-source-card{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2rem 1.5rem;background:#fff;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center;font-family:inherit;font-size:inherit}.data-source-card:hover:not(.disabled){border-color:#3b82f6;background:#f0f7ff;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.data-source-card.selected{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 3px #3b82f626}.data-source-card.disabled{opacity:.5;cursor:not-allowed;background:#f8fafc}.data-source-icon{font-size:2.5rem;line-height:1}.data-source-label{font-size:1.125rem;font-weight:600;color:#1e293b}.data-source-desc{font-size:.875rem;color:#64748b;line-height:1.4}.databricks-table-step{display:flex;flex-direction:column;gap:1rem}.databricks-table-step .form-group{margin-bottom:0}.selected-table-summary{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin-top:.5rem}.selected-table-summary .summary-icon{font-size:1.5rem;flex-shrink:0}.selected-table-summary .summary-content{flex:1;min-width:0}.selected-table-summary .summary-label{font-size:.75rem;font-weight:500;color:#16a34a;text-transform:uppercase;letter-spacing:.05em}.selected-table-summary .summary-value{font-size:.95rem;font-weight:600;color:#15803d;word-break:break-all}@media (max-width: 600px){.data-source-step{grid-template-columns:1fr}}.scoring-info{padding:1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1.5rem}.scoring-info h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#1e293b}.pillar-weights{display:flex;flex-direction:column;gap:.5rem}.pillar-item{display:flex;align-items:center;gap:.75rem;font-size:.8125rem}.pillar-item .pillar-name{font-weight:500;color:#334155;min-width:130px}.pillar-item .pillar-weight{font-weight:700;color:#3b82f6;min-width:40px}.pillar-item .pillar-stations{color:#64748b;font-size:.75rem}.modal-footer{padding:1rem 2rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;gap:1rem;align-items:center}.footer-spacer{flex:1}.error-message{padding:1rem;background:#fed7d7;border:1px solid #fc8181;border-radius:8px;color:#c53030;font-size:.875rem;display:flex;align-items:center;gap:.5rem}.error-icon{font-size:1.25rem}.spinner-sm{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.journey-navigator{max-width:1400px;margin:0 auto;padding:2rem;display:flex;flex-direction:column;gap:2rem}.navigator-header{display:flex;flex-direction:column;gap:1rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.header-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#718096}.breadcrumb-link{background:none;border:none;color:#4299e1;cursor:pointer;padding:0;font-size:.875rem;font-weight:500;transition:color .2s}.breadcrumb-link:hover{color:#3182ce;text-decoration:underline}.breadcrumb-separator{color:#cbd5e0}.breadcrumb-current{font-weight:600;color:#2d3748}.header-main{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.header-left{flex:1;min-width:0}.header-left h1{margin:0 0 .5rem;font-size:2rem;font-weight:600;color:var(--text, #e8eefc)}.journey-subtitle{margin:0 0 .75rem;font-size:1rem;color:var(--text-secondary, #a0aec0);line-height:1.5}.journey-meta{display:flex;gap:.75rem;flex-wrap:wrap;font-size:.875rem;color:var(--text-secondary, #a0aec0)}.meta-item strong{color:var(--text, #e8eefc)}.meta-separator{color:#cbd5e0}.header-actions{display:flex;gap:.75rem;flex-shrink:0}.overall-progress{display:flex;flex-direction:column;gap:.5rem}.overall-progress .progress-bar{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden}.overall-progress .progress-fill{height:100%;background:linear-gradient(90deg,#48bb78,#38a169);border-radius:6px;transition:width .5s ease}.overall-progress .progress-label{font-size:.875rem;font-weight:600;color:#2d3748;text-align:center}.station-track{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:2rem}.track-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.track-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1a202c}.station-legend{display:flex;gap:1rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#718096}.legend-dot{width:12px;height:12px;border-radius:50%}.legend-dot.pending{background:#cbd5e0}.legend-dot.in-progress{background:#4299e1}.legend-dot.completed{background:#48bb78}.legend-dot.failed{background:#f56565}.station-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.track-layout{position:relative;width:100%;min-height:2400px;background:linear-gradient(135deg,#f8fafc,#e2e8f0);border-radius:12px;overflow-x:hidden;padding:2rem 0}.railroad-track{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.stations-container{position:relative;z-index:2;width:100%;height:100%}.station-position{position:absolute;transform:translate(-50%);width:240px;max-width:90%;transition:all .3s ease}.station-position.expanded{width:320px}.station-card{background:#fff;border-radius:16px;box-shadow:0 8px 24px #0000001f;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;position:relative}.station-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#667eea,#764ba2);opacity:0;transition:opacity .3s ease}.station-card:hover:before{opacity:1}.station-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #00000029}.station-card.selected{border:3px solid #4299e1;box-shadow:0 12px 32px #4299e14d}.station-card.status-completed{border-color:#48bb78}.station-card.status-in-progress{border-color:#ed8936;animation:pulse-border 2s infinite}@keyframes pulse-border{0%,to{box-shadow:0 8px 24px #ed893633}50%{box-shadow:0 8px 24px #ed893666}}.station-card.status-failed{border-color:#f56565}.station-building-header{background:linear-gradient(135deg,#667eea,#764ba2);padding:0;color:#fff;position:relative;overflow:hidden}.station-header-content{padding:1rem;display:flex;align-items:center;gap:.75rem;position:relative;z-index:2}.station-card.expanded .station-header-content{padding:1.5rem}.station-roof-beam{position:absolute;top:0;left:0;right:0;height:8px;background:linear-gradient(180deg,rgba(0,0,0,.3) 0%,transparent 100%);z-index:1}.station-card.expanded .station-roof-beam{height:12px}.station-platform-base{position:absolute;bottom:0;left:0;right:0;height:6px;background:linear-gradient(0deg,rgba(0,0,0,.2) 0%,transparent 100%);z-index:1}.station-card.expanded .station-platform-base{height:8px}.station-sign-board{background:#ffffff26;border:2px solid rgba(255,255,255,.3);border-radius:6px;padding:.25rem .5rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.station-card.expanded .station-sign-board{padding:.35rem .75rem}.station-building-header.status-pending{background:linear-gradient(135deg,#cbd5e0,#a0aec0)}.station-building-header.status-in-progress{background:linear-gradient(135deg,#4299e1,#2b6cb0)}.station-building-header.status-completed{background:linear-gradient(135deg,#48bb78,#2f855a)}.station-building-header.status-failed{background:linear-gradient(135deg,#f56565,#c53030)}.station-icon-large{font-size:2rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));transition:font-size .3s ease}.station-card.expanded .station-icon-large{font-size:3rem}.station-name-block h3{margin:0;font-size:.9rem;font-weight:700;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2);transition:font-size .3s ease}.station-card.expanded .station-name-block h3{margin:0 0 .25rem;font-size:1.25rem}.station-description-text{margin:0;font-size:.875rem;color:#ffffffe6;font-weight:400}.station-required-badge{position:absolute;top:.75rem;right:.75rem;background:#ffd700f2;color:#744210;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.station-required-badge-compact{position:absolute;top:.5rem;right:.5rem;font-size:1.25rem;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.station-compact-footer{padding:.75rem;background:#ffffff1a;display:flex;flex-direction:column;gap:.75rem}.platform-queue{display:flex;flex-direction:column;align-items:center;gap:.25rem}.platform-label{font-size:.7rem;font-weight:600;color:#0009;text-transform:uppercase;letter-spacing:.5px}.platform-content{display:flex;align-items:center;gap:.5rem}.platform-assets{display:flex;gap:.25rem;align-items:center}.platform-asset-icon{font-size:1.1rem;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.platform-expected-text{font-size:.65rem;color:#000000b3;font-weight:500;white-space:nowrap}.compact-action-button{width:100%;padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.25rem}.compact-action-button.pending{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.compact-action-button.pending:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 8px #667eea66}.compact-action-button.in-progress{background:#4299e1;color:#fff}.compact-action-button.completed{background:#48bb78;color:#fff}.compact-action-button:disabled{opacity:.6;cursor:not-allowed}.station-building-body{padding:1.5rem}.station-progress-section{margin-bottom:1.5rem}.progress-label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.progress-label-row strong{font-size:.875rem;color:#4a5568}.progress-percentage{font-size:1.25rem;font-weight:700;color:#2d3748}.station-progress-bar{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;position:relative}.station-progress-fill{height:100%;background:linear-gradient(90deg,#4299e1,#667eea);border-radius:6px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.station-progress-fill.completed{background:linear-gradient(90deg,#48bb78,#38a169)}.station-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.station-status-row{display:flex;gap:1rem;margin-bottom:1rem}.status-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;flex:1;justify-content:center}.status-chip.pending{background:#edf2f7;color:#4a5568}.status-chip.in-progress{background:#ebf8ff;color:#2c5282}.status-chip.completed{background:#f0fff4;color:#276749}.status-chip.failed{background:#fff5f5;color:#c53030}.time-estimate-chip{background:#faf5ff;color:#6b46c1;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;flex:1;text-align:center}.station-action-button{width:100%;padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:none;display:flex;align-items:center;justify-content:center;gap:.5rem}.station-action-button:disabled{opacity:.5;cursor:not-allowed}.station-action-button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.station-action-button.primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.station-action-button.secondary{background:#edf2f7;color:#4a5568}.station-action-button.secondary:hover:not(:disabled){background:#e2e8f0}.station-action-button.success{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.station-contextual-link{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.75rem;padding:.5rem 1rem;font-size:.875rem;color:#667eea;text-decoration:none;background:#f0f4ff;border-radius:6px;transition:all .2s ease}.station-contextual-link:hover{background:#e0e7ff;color:#5a67d8;text-decoration:none}.station-contextual-link span{font-size:1rem}.loading-dock{margin-top:1rem;padding:1rem;background:#f7fafc;border-radius:8px;border:2px dashed #cbd5e0}.loading-dock-text{font-size:.875rem;color:#4a5568;margin-bottom:.5rem;text-align:center}.loading-spinner{width:40px;height:40px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}.station-educational-output{margin:1rem 0;padding:1rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.educational-headline{font-size:.9375rem;font-weight:600;color:#1a202c;margin-bottom:.75rem;line-height:1.4}.educational-findings{margin-bottom:.75rem}.finding-item{display:flex;align-items:flex-start;gap:.5rem;padding:.375rem 0;font-size:.8125rem}.finding-icon{flex-shrink:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.625rem;font-weight:700}.finding-item.finding-strength .finding-icon{background:#dcfce7;color:#16a34a}.finding-item.finding-concern .finding-icon{background:#fef3c7;color:#d97706}.finding-item.finding-blocker .finding-icon{background:#fee2e2;color:#dc2626}.finding-text{color:#4a5568;line-height:1.4}.findings-more{font-size:.75rem;color:#718096;font-style:italic;margin-top:.375rem}.educational-actions{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0}.actions-header{font-size:.75rem;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.action-item{display:flex;align-items:flex-start;gap:.5rem;padding:.375rem 0;font-size:.8125rem}.action-priority{font-weight:600;color:#718096;flex-shrink:0}.action-text{flex:1;color:#2d3748;line-height:1.4}.action-effort{flex-shrink:0;font-size:.875rem}.action-effort.effort-quick{color:#16a34a}.action-effort.effort-moderate{color:#d97706}.action-effort.effort-significant{color:#dc2626}.view-full-analysis-btn{display:block;width:100%;margin-top:.75rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:500;color:#4299e1;background:transparent;border:1px solid #4299e1;border-radius:6px;cursor:pointer;transition:all .15s ease}.view-full-analysis-btn:hover{background:#4299e1;color:#fff}.view-full-analysis-btn:focus{outline:2px solid #4299e1;outline-offset:2px}@media (max-width: 768px){.track-layout{min-height:2800px}.station-position{width:95%;left:50%!important}.railroad-track{display:none}.station-icon-large{font-size:2.5rem}.station-building-header,.station-building-body{padding:1rem}}.current-station-panel{background:#fff;border:2px solid #4299e1;border-radius:12px;padding:2rem;box-shadow:0 4px 16px #4299e11a}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.panel-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#1a202c}.status-badge.status-pending{background:#edf2f7;color:#4a5568}.status-badge.status-in-progress{background:#ebf8ff;color:#2c5282}.status-badge.status-completed{background:#f0fff4;color:#276749}.status-badge.status-failed{background:#fff5f5;color:#9b2c2c}.station-description{margin:0 0 1.5rem;font-size:1rem;color:#718096;line-height:1.6}.station-metrics{display:flex;gap:1rem;flex-wrap:wrap}.metric-card{flex:1;min-width:150px;padding:1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;text-align:center}.metric-label{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.metric-value{font-size:1.5rem;font-weight:600;color:#2d3748}.recommendations-sidebar{position:fixed;top:0;right:0;width:400px;height:100vh;background:#fff;border-left:1px solid #e2e8f0;box-shadow:-4px 0 16px #0000001a;z-index:1000;display:flex;flex-direction:column;animation:slideInRight .3s ease-out}.sidebar-header{padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.sidebar-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a202c}.close-button{background:none;border:none;font-size:2rem;line-height:1;color:#718096;cursor:pointer;padding:0;width:32px;height:32px;border-radius:6px;transition:all .2s}.close-button:hover{background:#f7fafc;color:#2d3748}@media (max-width: 768px){.journey-navigator{padding:1rem}.header-main{flex-direction:column}.header-actions{width:100%;flex-direction:column}.header-actions .btn{width:100%}.station-grid{grid-template-columns:1fr}.station-metrics{flex-direction:column}.recommendations-sidebar{width:100%}}.train-visualization{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:2rem}.train-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.train-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1a202c}.train-header-left{display:flex;align-items:center;gap:.75rem}.train-header .header-icon{font-size:1.5rem}.train-header .header-stats{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;color:#475569}.train-header .stat-item strong{color:#1e293b;font-weight:600}.train-header .stat-separator{color:#cbd5e1;margin:0 .25rem}.score-excellent{color:#22c55e!important}.score-good{color:#3b82f6!important}.score-fair{color:#f59e0b!important}.score-poor{color:#ef4444!important}.btn-sm{padding:.5rem 1rem;font-size:.875rem}.train-track{display:flex;align-items:flex-end;gap:0;padding:2rem 0;overflow-x:auto;position:relative}.train-track:before{content:"";position:absolute;bottom:1rem;left:0;right:0;height:4px;background:linear-gradient(90deg,#8B4513 0%,#8B4513 48%,transparent 48%,transparent 52%,#8B4513 52%,#8B4513 100%);background-size:40px 4px;z-index:0}.train-car{position:relative;display:flex;flex-direction:column;align-items:center;min-width:120px;transition:transform .3s ease;z-index:1}.train-car.hovered{transform:translateY(-8px)}.train-engine .car-top{display:flex;flex-direction:column;align-items:center;gap:.25rem}.engine-smokestack{font-size:1.5rem;animation:smoke 2s ease-in-out infinite}@keyframes smoke{0%,to{opacity:.5;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-4px) scale(1.1)}}.engine-cabin{width:80px;height:60px;background:linear-gradient(135deg,#4299e1,#667eea);border-radius:12px 12px 0 0;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #4299e14d}.captain-icon{font-size:2rem}.train-engine .car-body{width:80px;height:40px;background:#2c5282;border-radius:0 0 8px 8px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:.75rem;font-weight:600}.asset-car{position:relative;border:2px solid;border-radius:8px;overflow:visible;cursor:pointer}.asset-car .car-top{width:100px;height:60px;border-radius:8px 8px 0 0;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 2px 8px #0000001a}.asset-icon{font-size:2rem}.status-indicator{position:absolute;top:4px;right:4px;font-size:.875rem}.asset-car .car-body{width:100px;padding:.5rem;background:#fff;display:flex;flex-direction:column;align-items:center;gap:.25rem}.asset-name{font-size:.75rem;font-weight:600;color:#2d3748;text-align:center;word-break:break-word}.asset-type{font-size:.625rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.health-badge{margin-top:.25rem;padding:.125rem .5rem;border-radius:12px;font-size:.625rem;font-weight:600;color:#fff}.governance-indicator{position:absolute;top:-8px;right:-8px;font-size:1rem;z-index:10;background:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #00000026;cursor:help}.asset-car.clickable{transition:transform .2s,box-shadow .2s}.asset-car.clickable:hover{transform:translateY(-4px);box-shadow:0 8px 16px #00000026}.tooltip-hint{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #e2e8f0;font-size:.75rem;color:#4299e1;font-style:italic}.car-wheels{display:flex;gap:1.5rem;margin-top:.25rem}.wheel{width:20px;height:20px;background:#2d3748;border:3px solid #718096;border-radius:50%;animation:roll 3s linear infinite}@keyframes roll{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.train-connector{width:20px;height:4px;background:#718096;margin-bottom:2rem;flex-shrink:0}.asset-tooltip{position:absolute;top:-140px;left:50%;transform:translate(-50%);width:200px;padding:.75rem;background:#2d3748;color:#fff;border-radius:8px;box-shadow:0 8px 24px #0000004d;z-index:100;animation:tooltipFadeIn .2s ease-out}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.asset-tooltip:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:0;height:0;border-left:8px solid transparent;border-right:8px solid transparent;border-top:8px solid #2d3748}.tooltip-header{margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.2);font-size:.875rem}.tooltip-row{display:flex;justify-content:space-between;gap:.5rem;margin-bottom:.25rem;font-size:.75rem}.tooltip-label{color:#cbd5e0}.train-empty-state{text-align:center;padding:3rem 2rem}.train-empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.train-empty-state p{margin:0 0 1rem;font-size:1rem;color:#718096}.asset-summary{display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0}.summary-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;min-width:80px}.stat-value{font-size:1.25rem;font-weight:600;color:#2d3748}@media (max-width: 768px){.train-track{padding:1rem 0}.asset-summary{flex-wrap:wrap}.summary-stat{flex:1 1 40%}}.station-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;cursor:pointer;transition:all .3s ease;position:relative;display:flex;flex-direction:column;gap:1rem}.station-card:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.station-card.selected{border-color:#4299e1;box-shadow:0 4px 16px #4299e133}.station-card.completed{border-color:#48bb78;background:linear-gradient(135deg,#fff,#f0fff4)}.station-card.failed{border-color:#f56565;background:linear-gradient(135deg,#fff,#fff5f5)}.station-card.in_progress{border-color:#4299e1}.station-card-header{display:flex;gap:1rem;align-items:flex-start}.station-icon-wrapper{position:relative;flex-shrink:0}.station-icon-large{font-size:2.5rem}.required-indicator{position:absolute;top:-4px;right:-4px;width:16px;height:16px;background:#f56565;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.station-info{flex:1;min-width:0}.station-title{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:#1a202c}.station-desc{margin:0;font-size:.875rem;color:#718096;line-height:1.4}.station-status-badge{padding:.375rem .75rem;border-radius:16px;font-size:.75rem;font-weight:600;text-align:center;align-self:flex-start}.station-progress-circle{display:flex;justify-content:center;margin:.5rem 0}.station-progress-circle svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.station-metrics-row{display:flex;gap:1rem;justify-content:space-around;padding:.75rem;background:#f7fafc;border-radius:8px}.metric-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.metric-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1rem;font-weight:600;color:#2d3748}.completion-info{font-size:.875rem;color:#48bb78;text-align:center;padding:.5rem;background:#f0fff4;border-radius:6px}.station-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fff5f5;border:1px solid #fc8181;border-radius:6px;font-size:.875rem;color:#c53030}.station-error .error-icon{font-size:1.125rem;flex-shrink:0}.station-error .error-text{flex:1;line-height:1.4}.station-action-btn{width:100%;margin-top:auto}.recommendation-list{flex:1;overflow-y:auto;padding:1.5rem 2rem}.recommendation-list-loading,.recommendation-list-error,.recommendation-list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem 2rem;text-align:center;color:#718096}.recommendation-list-empty .empty-hint{font-size:.875rem;color:#a0aec0}.recommendation-filter{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.filter-btn{padding:.5rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500;color:#4a5568;cursor:pointer;transition:all .2s}.filter-btn:hover{background:#f7fafc;border-color:#cbd5e0}.filter-btn.active{background:#4299e1;color:#fff;border-color:#4299e1}.recommendation-items{display:flex;flex-direction:column;gap:.75rem}.recommendation-item{background:#fff;border:1px solid #e2e8f0;border-left:4px solid;border-radius:8px;overflow:hidden;transition:all .2s ease}.recommendation-item:hover{box-shadow:0 2px 8px #0000001a}.recommendation-item.high{border-left-color:#f56565}.recommendation-item.medium{border-left-color:#ed8936}.recommendation-item.low{border-left-color:#4299e1}.rec-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;cursor:pointer;transition:background .2s}.rec-header:hover{background:#f7fafc}.rec-title-row{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.priority-icon{font-size:1.25rem;flex-shrink:0}.rec-title{margin:0;font-size:1rem;font-weight:600;color:#1a202c;flex:1;min-width:0}.quick-win-badge{padding:.25rem .5rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border-radius:12px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;flex-shrink:0}.expand-btn{background:none;border:none;color:#718096;font-size:.875rem;cursor:pointer;padding:.25rem .5rem;transition:color .2s;flex-shrink:0}.expand-btn:hover{color:#2d3748}.rec-compact-info{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;padding:0 1rem 1rem;font-size:.875rem;color:#718096}.info-item{white-space:nowrap}.info-item strong{color:#2d3748}.info-separator{color:#cbd5e0}.rec-details{padding:0 1rem 1rem;border-top:1px solid #e2e8f0;animation:expandDetails .2s ease-out}@keyframes expandDetails{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.rec-description{margin:1rem 0;font-size:.875rem;color:#4a5568;line-height:1.6}.rec-metrics{display:flex;gap:1rem;margin-bottom:1rem}.metric-box{flex:1;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px;text-align:center}.metric-box .metric-label{display:block;font-size:.625rem;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem}.metric-box .metric-value{display:block;font-size:1.125rem;font-weight:600;color:#2d3748}.affected-assets{margin-bottom:1rem}.assets-label{font-size:.875rem;font-weight:600;color:#2d3748;margin-bottom:.5rem}.assets-list{display:flex;gap:.5rem;flex-wrap:wrap}.asset-tag{padding:.25rem .75rem;background:#edf2f7;border:1px solid #cbd5e0;border-radius:16px;font-size:.75rem;color:#4a5568}.rec-source{font-size:.875rem;color:#718096;padding-top:.75rem;border-top:1px solid #e2e8f0}.journey-context-banner{position:sticky;top:0;z-index:1000;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;box-shadow:0 4px 12px #00000026;margin-bottom:1.5rem;border-radius:0 0 12px 12px}.journey-context-banner.success{background:linear-gradient(135deg,#48bb78,#38a169)}.banner-content{display:flex;align-items:center;gap:1.5rem;max-width:1200px;margin:0 auto}.banner-icon{font-size:2rem;line-height:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.banner-text{flex:1;font-size:.95rem;line-height:1.4}.banner-text strong{font-size:1.1rem;display:block;margin-bottom:.25rem}.banner-text span{opacity:.9;font-size:.875rem}.banner-actions{display:flex;gap:.75rem}.btn-return-journey,.btn-view-report{padding:.5rem 1.25rem;border:2px solid white;background:#ffffff26;color:#fff;border-radius:8px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-return-journey:hover,.btn-view-report:hover{background:#ffffff40;transform:translateY(-1px);box-shadow:0 4px 8px #0003}@media (max-width: 768px){.banner-content{flex-direction:column;text-align:center;gap:1rem}.banner-actions{flex-direction:column;width:100%}.btn-return-journey,.btn-view-report{width:100%}}.dq-journey-preselect{background:linear-gradient(135deg,#f5f7fa,#fff);border:2px solid #667eea;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 4px 12px #667eea26}.dq-journey-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #667eea}.dq-journey-icon{font-size:2rem}.dq-journey-header h4{margin:0;font-size:1.5rem;color:#667eea;font-weight:600}.dq-asset-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.dq-asset-item{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease}.dq-asset-item:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea1a}.dq-asset-icon{font-size:1.5rem}.dq-asset-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.dq-asset-name{font-weight:600;font-size:1.1rem;color:#2d3748}.dq-asset-path{font-size:.9rem;color:#718096;font-family:Courier New,monospace}.dq-asset-status{display:inline-block;padding:.25rem .75rem;background:#48bb78;color:#fff;border-radius:12px;font-size:.85rem;font-weight:500;align-self:flex-start}.dq-journey-actions{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding-top:1rem;border-top:1px solid #e2e8f0}.dq-journey-actions .btn-primary{padding:1rem 2rem;font-size:1.1rem;font-weight:600;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #667eea4d}.dq-journey-actions .btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.dq-asset-count{margin:0;color:#718096;font-size:.95rem}.journey-notice{background:linear-gradient(135deg,#f5f7fa,#fff);border:2px solid #667eea;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.journey-notice-content{display:flex;align-items:flex-start;gap:1rem}.journey-notice-content .journey-icon{font-size:2rem}.journey-notice-content strong{color:#667eea;font-size:1.1rem}.journey-notice-content p{margin:.5rem 0;color:#4a5568}.journey-notice-content ul{margin:.5rem 0 0 1.5rem;color:#2d3748}.journey-notice-content li{margin:.25rem 0}.recommendation-planner{max-width:100%;margin:0;padding:0;background:#f7fafc;min-height:100vh}.rec-summary-header{background:#fff;border-bottom:2px solid #e2e8f0;padding:1.5rem 2rem;margin-bottom:0}.rec-summary-stats{display:flex;gap:2rem;flex-wrap:wrap;align-items:center}.rec-stat{display:flex;flex-direction:column;gap:.25rem}.rec-stat-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.rec-stat-value{font-size:1.5rem;font-weight:700;color:#2d3748}.rec-stat-value.highlight{color:#f59e0b}.rec-stat-value.cost{color:#4299e1}.rec-stat-value.attention{color:#f56565}.rec-planner-layout{display:flex;height:calc(100vh - 140px);overflow:hidden}.rec-filters-panel{width:280px;background:#fff;border-right:1px solid #e2e8f0;overflow-y:auto;flex-shrink:0}.rec-filters-header{padding:1.5rem;border-bottom:1px solid #e2e8f0}.rec-filters-header h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1a202c}.rec-filters-description{font-size:.875rem;color:#718096;margin:0}.rec-filters-content{padding:1.5rem}.rec-filter-group{margin-bottom:1.5rem}.rec-filter-group:last-child{margin-bottom:0}.rec-filter-group-label{font-size:.875rem;font-weight:600;color:#2d3748;margin-bottom:.75rem;display:block}.rec-filter-options{display:flex;flex-direction:column;gap:.5rem}.filter-checkbox-label{display:flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:6px;cursor:pointer;transition:background .2s;font-size:.875rem;color:#4a5568}.filter-checkbox-label:hover{background:#f7fafc}.filter-checkbox{width:16px;height:16px;border:2px solid #cbd5e0;border-radius:4px;cursor:pointer;accent-color:#4299e1}.filter-checkbox-text{flex:1}.filter-count{font-size:.75rem;color:#718096;background:#edf2f7;padding:.125rem .5rem;border-radius:10px;font-weight:600}.rec-grid-panel{flex:1;overflow-y:auto;padding:1.5rem;background:#f7fafc}.rec-quick-wins-section{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #f59e0b;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 12px #f59e0b26}.rec-quick-wins-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f59e0b}.rec-quick-wins-icon{font-size:2rem}.rec-quick-wins-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#92400e}.rec-quick-wins-description{font-size:.875rem;color:#78350f;margin:0 0 1rem;line-height:1.5}.rec-quick-wins-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.rec-category-section{margin-bottom:2rem}.rec-category-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.rec-category-icon{font-size:1.5rem}.rec-category-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1a202c}.rec-category-count{margin-left:auto;font-size:.875rem;color:#718096;background:#edf2f7;padding:.25rem .75rem;border-radius:12px;font-weight:600}.rec-category-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1rem}.rec-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid;border-radius:8px;padding:1.25rem;cursor:pointer;transition:all .2s ease;position:relative}.rec-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.rec-card.selected{border-color:#4299e1;box-shadow:0 4px 16px #4299e133}.rec-card.category-critical{border-left-color:#f56565}.rec-card.category-optimization{border-left-color:#ed8936}.rec-card.category-best-practice{border-left-color:#4299e1}.rec-card.category-future{border-left-color:#9f7aea}.rec-card-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.rec-category-badge{font-size:1.5rem;line-height:1;flex-shrink:0}.rec-card-title-section{flex:1;min-width:0}.rec-card-title{font-size:1rem;font-weight:600;color:#1a202c;margin:0 0 .5rem;line-height:1.3}.rec-card-badges{display:flex;gap:.5rem;flex-wrap:wrap}.badge-priority{padding:.25rem .625rem;border-radius:12px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-priority.high{background:#fff5f5;color:#c53030}.badge-priority.medium{background:#fffaf0;color:#c05621}.badge-priority.low{background:#ebf8ff;color:#2c5282}.badge-quick-win{padding:.25rem .625rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border-radius:12px;font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.rec-card-description{font-size:.875rem;color:#4a5568;line-height:1.5;margin:0 0 1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rec-card-metrics{display:flex;gap:1rem;margin-bottom:1rem}.rec-metric{flex:1;text-align:center;padding:.5rem;background:#f7fafc;border-radius:6px}.rec-metric-label{font-size:.625rem;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;display:block}.rec-metric-value{font-size:1.125rem;font-weight:700;color:#2d3748}.rec-metric-value.impact{color:#f59e0b}.rec-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.75rem;color:#718096}.rec-station-tag{display:inline-flex;align-items:center;gap:.25rem}.rec-status-badge{padding:.25rem .625rem;border-radius:12px;font-size:.625rem;font-weight:600;text-transform:uppercase}.rec-status-badge.status-new{background:#edf2f7;color:#4a5568}.rec-status-badge.status-reviewing{background:#ebf8ff;color:#2c5282}.rec-status-badge.status-approved{background:#f0fff4;color:#276749}.rec-status-badge.status-implemented{background:#e6fffa;color:#234e52}.rec-status-badge.status-verified{background:#e9d8fd;color:#44337a}.rec-detail-panel{width:480px;background:#fff;border-left:1px solid #e2e8f0;overflow-y:auto;flex-shrink:0}.rec-detail-header{padding:1.5rem;border-bottom:1px solid #e2e8f0;position:sticky;top:0;background:#fff;z-index:10}.rec-detail-close{background:none;border:none;font-size:1.5rem;color:#718096;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s;float:right}.rec-detail-close:hover{background:#f7fafc;color:#2d3748}.rec-detail-content{padding:1.5rem}.rec-detail-title{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 1rem;line-height:1.3}.rec-detail-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1.5rem}.rec-detail-description{font-size:.9375rem;color:#4a5568;line-height:1.6;margin-bottom:1.5rem;padding:1rem;background:#f7fafc;border-radius:8px;border-left:4px solid #4299e1}.rec-detail-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #e2e8f0}.rec-detail-section:last-child{border-bottom:none}.rec-detail-section-title{font-size:.875rem;font-weight:600;color:#2d3748;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem}.rec-detail-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.rec-detail-metric-card{text-align:center;padding:1rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px}.rec-detail-metric-card .rec-metric-label{display:block;font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.rec-detail-metric-card .rec-metric-value{display:block;font-size:1.5rem;font-weight:700;color:#2d3748}.rec-pillar-tags{display:flex;gap:.5rem;flex-wrap:wrap}.rec-pillar-tag{padding:.375rem .75rem;border-radius:16px;font-size:.75rem;font-weight:600;color:#fff}.rec-pillar-tag.pillar-F{background:#4299e1}.rec-pillar-tag.pillar-A{background:#48bb78}.rec-pillar-tag.pillar-I{background:#ed8936}.rec-pillar-tag.pillar-R{background:#9f7aea}.rec-evidence-list{display:flex;flex-direction:column;gap:.75rem}.rec-evidence-card{padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px}.rec-evidence-source{font-size:.75rem;color:#718096;margin-bottom:.5rem;font-weight:600}.rec-evidence-text{font-size:.875rem;color:#2d3748;line-height:1.5}.rec-evidence-link{margin-top:.5rem;font-size:.75rem}.rec-evidence-link a{color:#4299e1;text-decoration:none;font-weight:500}.rec-evidence-link a:hover{text-decoration:underline}.rec-detail-actions{display:flex;flex-direction:column;gap:.75rem}.rec-action-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.rec-action-btn.primary{background:linear-gradient(135deg,#4299e1,#667eea);color:#fff}.rec-action-btn.primary:hover{background:linear-gradient(135deg,#3182ce,#5a67d8);box-shadow:0 4px 12px #4299e14d}.rec-action-btn.secondary{background:#fff;color:#4a5568;border:2px solid #e2e8f0}.rec-action-btn.secondary:hover{background:#f7fafc;border-color:#cbd5e0}.rec-action-btn.success{background:#48bb78;color:#fff}.rec-action-btn.success:hover{background:#38a169}.rec-empty-state{text-align:center;padding:4rem 2rem;color:#718096}.rec-empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.rec-empty-title{font-size:1.25rem;font-weight:600;color:#2d3748;margin:0 0 .5rem}.rec-empty-description{font-size:.875rem;margin:0}.rec-loading-state{text-align:center;padding:4rem 2rem}.rec-loading-spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.rec-loading-text{font-size:1rem;color:#718096}@media (max-width: 1200px){.rec-planner-layout{flex-direction:column;height:auto}.rec-filters-panel{width:100%;border-right:none;border-bottom:1px solid #e2e8f0}.rec-detail-panel{width:100%;border-left:none;border-top:1px solid #e2e8f0}.rec-grid-panel{min-height:60vh}}@media (max-width: 768px){.rec-summary-stats{flex-direction:column;gap:1rem}.rec-category-grid,.rec-quick-wins-grid,.rec-detail-metrics-grid{grid-template-columns:1fr}.rec-card-metrics{flex-direction:column}}.business-value-cta-card{display:flex;align-items:center;gap:2rem;margin:2rem auto;max-width:1200px;padding:2rem;background:linear-gradient(135deg,#0094ab,#004772);border-radius:16px;box-shadow:0 8px 24px #0094ab33;transition:transform .2s ease,box-shadow .2s ease}.business-value-cta-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0094ab4d}.business-value-cta-icon{flex-shrink:0;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#ffffff26;border-radius:50%;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.business-value-cta-content{flex:1;color:#fff}.business-value-cta-title{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;color:#fff}.business-value-cta-description{font-size:1rem;line-height:1.6;margin:0;color:#fffffff2}.business-value-cta-description strong{font-weight:700;color:#fff}.business-value-cta-button{flex-shrink:0;display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:1.125rem;font-weight:700;color:#0094ab;background:#fff;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #00000026}.business-value-cta-button:hover{background:#f7fafc;transform:translateY(-2px);box-shadow:0 6px 16px #0003}.business-value-cta-button:active{transform:translateY(0)}.business-value-cta-button svg{width:20px;height:20px}@media (max-width: 968px){.business-value-cta-card{flex-direction:column;text-align:center;gap:1.5rem}.business-value-cta-button{width:100%;justify-content:center}}@media (max-width: 640px){.business-value-cta-card{margin:1rem;padding:1.5rem}.business-value-cta-title{font-size:1.25rem}.business-value-cta-description{font-size:.9375rem}.business-value-cta-button{font-size:1rem;padding:.875rem 1.5rem}}.journey-tabs{display:flex;gap:.5rem;padding:1rem 1.5rem 0;background:#ffffff08;border-bottom:2px solid var(--line);margin-bottom:1.5rem}.journey-tabs button{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;color:#a0aec0;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.journey-tabs button:hover{color:#e2e8f0;background:#ffffff0d}.journey-tabs button.tab-active{color:var(--secondary);border-bottom-color:var(--secondary);font-weight:600}.journey-tabs button:focus{outline:2px solid var(--secondary);outline-offset:2px}.journey-tab-content{padding:1.5rem;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.control-tower-bridge{max-width:1400px;margin:0 auto}.ct-hero-section{background:linear-gradient(135deg,var(--pane),#0d1734);border:1px solid var(--line);border-radius:12px;padding:2rem;margin-bottom:2rem}.hero-title h2{font-size:1.5rem;font-weight:600;color:#e2e8f0;margin:0 0 .5rem}.hero-subtitle{font-size:.95rem;color:#a0aec0;margin:0}.hero-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1.5rem}.hero-metric{text-align:center;padding:1rem;background:#ffffff0d;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.hero-metric .metric-label{font-size:.85rem;color:#a0aec0;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.hero-metric .metric-value{font-size:1.75rem;font-weight:700;color:var(--secondary)}.hero-updated{margin-top:1rem;font-size:.85rem;color:#718096;text-align:right}.ct-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.dataset-card{background:#ffffff08;border:1px solid var(--line);border-radius:8px;padding:1.25rem;transition:all .3s ease}.dataset-card:hover{border-color:var(--secondary);box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.dataset-card-header h3{font-size:1rem;font-weight:600;color:#e2e8f0;margin:0 0 1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dataset-card-scores{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.score-row{display:flex;justify-content:space-between;align-items:center}.score-label{font-weight:600;color:#a0aec0}.score-value{font-weight:700;font-size:1.1rem}.score-value.score-high{color:#48bb78}.score-value.score-medium{color:#ed8936}.score-value.score-low{color:#f56565}.dataset-card-metrics{border-top:1px solid rgba(255,255,255,.1);padding-top:.75rem;margin-bottom:1rem}.metric-item{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.5rem}.metric-item .metric-label{color:#a0aec0}.metric-item .metric-value{color:#e2e8f0;font-weight:600}.loading-skeleton{padding:2rem}.skeleton-hero{background:#ffffff08;border-radius:12px;padding:2rem;margin-bottom:2rem}.skeleton-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1.5rem}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem;margin-bottom:1rem}.skeleton-box{background:#ffffff0d;border-radius:8px;animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-title{height:2rem;width:60%;margin-bottom:1rem}.skeleton-metric{height:80px}.skeleton-card{height:250px}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.7}}.loading-text{text-align:center;color:#a0aec0;font-size:1rem;margin-top:1rem}.empty-state{text-align:center;padding:4rem 2rem;max-width:600px;margin:0 auto}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-size:1.5rem;font-weight:600;color:#e2e8f0;margin-bottom:1rem}.empty-state p{font-size:1rem;color:#a0aec0;line-height:1.6;margin-bottom:1rem}.empty-subtitle{font-size:.9rem;color:#718096}.error-state{text-align:center;padding:4rem 2rem;max-width:600px;margin:0 auto}.error-state h3{font-size:1.5rem;font-weight:600;color:#f56565;margin-bottom:1rem}.error-state p{font-size:1rem;color:#a0aec0;line-height:1.6;margin-bottom:1.5rem}.maturity-dashboard-loading,.maturity-dashboard-error,.maturity-dashboard-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;background:var(--background-secondary, #1e2a3a);border-radius:12px;border:1px solid var(--line, #2d3748);min-height:300px}.maturity-dashboard-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--line, #2d3748);border-top-color:var(--secondary, #17A2B8);border-radius:50%;animation:spin 1s linear infinite}.maturity-dashboard-loading .loading-text{margin-top:1rem;color:var(--text-secondary, #a0aec0);font-size:.9rem}.maturity-dashboard-error .error-icon,.maturity-dashboard-empty .empty-icon{font-size:3rem;margin-bottom:1rem}.maturity-dashboard-error .error-message{font-size:1.25rem;font-weight:600;color:#f56565;margin-bottom:.5rem}.maturity-dashboard-error .error-detail{color:var(--text-secondary, #a0aec0);font-size:.9rem}.maturity-dashboard-empty .empty-title{font-size:1.25rem;font-weight:600;color:var(--text, #e8eefc);margin-bottom:.75rem}.maturity-dashboard-empty .empty-description{color:var(--text-secondary, #a0aec0);font-size:.95rem;line-height:1.6;max-width:400px;margin-bottom:1rem}.maturity-dashboard-empty .empty-hint{color:var(--secondary, #17A2B8);font-size:.875rem;padding:.75rem 1rem;background:#17a2b81a;border-radius:8px;border:1px solid rgba(23,162,184,.2)}.maturity-dashboard-empty .empty-hint strong{color:var(--secondary, #17A2B8)}@media (max-width: 768px){.journey-tabs{flex-direction:column;gap:0}.journey-tabs button{border-bottom:1px solid var(--line);border-left:3px solid transparent}.journey-tabs button.tab-active{border-left-color:var(--secondary);border-bottom-color:var(--line)}.ct-dashboard-grid,.hero-metrics-grid{grid-template-columns:1fr}}.journey-summary-page{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b);color:#e2e8f0}.journey-summary-page .loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;gap:1rem}.journey-summary-page .loading-spinner{width:48px;height:48px;border:3px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.summary-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;background:#1e293bcc;border-bottom:1px solid rgba(148,163,184,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.summary-header .header-nav{flex-shrink:0}.summary-header .back-button{background:#3b82f61a;color:#93c5fd;border:1px solid rgba(59,130,246,.3);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-size:.875rem;transition:all .2s ease}.summary-header .back-button:hover{background:#3b82f633;border-color:#3b82f680}.summary-header .header-content{flex:1;text-align:center}.summary-header h1{font-size:1.5rem;font-weight:700;color:#f1f5f9;margin:0 0 .25rem}.summary-header .header-subtitle{font-size:.875rem;color:#94a3b8;margin:0}.summary-header .header-actions{display:flex;gap:.75rem;flex-shrink:0}.summary-header .action-btn{padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.summary-header .action-btn.secondary{background:#94a3b81a;color:#cbd5e1;border:1px solid rgba(148,163,184,.2)}.summary-header .action-btn.secondary:hover{background:#94a3b833;border-color:#94a3b866}.summary-main{padding:2rem;max-width:1100px;margin:0 auto}.summary-footer{padding:2rem;background:#0f172a80;border-top:1px solid rgba(148,163,184,.1)}.footer-explanation{max-width:1000px;margin:0 auto}.footer-explanation h3{font-size:1rem;font-weight:600;color:#94a3b8;margin:0 0 1.25rem;text-align:center}.explanation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.explanation-item{display:flex;gap:.75rem;padding:1rem;background:#1e293b80;border-radius:10px;border:1px solid rgba(148,163,184,.1)}.explanation-item .item-icon{font-size:1.5rem;flex-shrink:0}.explanation-item .item-content strong{display:block;font-size:.875rem;color:#e2e8f0;margin-bottom:.25rem}.explanation-item .item-content p{font-size:.8125rem;color:#94a3b8;margin:0;line-height:1.5}@media (max-width: 768px){.summary-header{flex-direction:column;gap:1rem;text-align:center}.summary-header .header-actions{width:100%;justify-content:center}.explanation-grid{grid-template-columns:1fr}}.scores-overview{display:grid;grid-template-columns:1fr 1fr;gap:2rem;max-width:1400px;margin:0 auto 2rem;padding:0 2rem;width:100%;box-sizing:border-box}.scores-overview .score-panel{min-height:300px;width:100%;box-sizing:border-box}.scores-overview .technical-asset-dashboard{width:100%;box-sizing:border-box}.scores-overview .pillar-bar{min-width:0;overflow:visible;width:100%}.scores-overview .pillar-bar-header{flex-wrap:nowrap}.scores-overview .pillar-bar-track{width:100%;min-width:150px}.scores-overview .pillars-section{width:100%;min-width:0;box-sizing:border-box}.scores-overview .pillars-grid{display:flex!important;flex-direction:column!important;flex-wrap:nowrap!important;width:100%}.scores-overview .pillar-bar{width:100%!important;flex-shrink:0}@media (max-width: 1400px){.scores-overview{grid-template-columns:1fr;max-width:800px;padding:0 1rem}.scores-overview .technical-asset-dashboard,.scores-overview .pillars-section{min-width:100%}}@media (max-width: 768px){.scores-overview{padding:0 .5rem}}.execution-risk-panel{padding:1.5rem;background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #334155;border-radius:12px}.risk-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #334155}.risk-panel-header h3{margin:0;font-size:1.125rem;color:#e2e8f0}.risk-badge{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.risk-badge--low{background:#22c55e33;color:#22c55e}.risk-badge--moderate{background:#eab30833;color:#eab308}.risk-badge--high{background:#ef444433;color:#ef4444}.risk-badge--critical{background:#b91c1c33;color:#b91c1c}.risk-badge--pending{background:#94a3b833;color:#94a3b8}.risk-panel-body{display:flex;flex-wrap:wrap;align-items:center;gap:2rem}.risk-score-main{display:flex;flex-direction:column;align-items:center;padding:1rem 2rem;background:#ffffff0d;border-radius:8px}.risk-score-value{font-size:2.5rem;font-weight:700;color:#f1f5f9}.risk-score-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.risk-breakdown{display:flex;gap:1.5rem;flex:1;justify-content:center}.risk-pillar{display:flex;flex-direction:column;align-items:center;padding:.75rem 1rem;background:#ffffff08;border-radius:6px;min-width:100px}.pillar-value{font-size:1.5rem;font-weight:600;color:#e2e8f0}.pillar-label{font-size:.6875rem;color:#94a3b8;text-align:center}.risk-recommendation{width:100%;margin:1rem 0 0;padding:.75rem 1rem;background:#eab3081a;border-left:3px solid #eab308;border-radius:0 6px 6px 0;font-size:.875rem;color:#fcd34d}.risk-configure-link{display:inline-block;margin-top:1rem;padding:.5rem 1rem;font-size:.8125rem;color:#60a5fa;text-decoration:none;background:#60a5fa1a;border-radius:6px;transition:all .2s ease}.risk-configure-link:hover{background:#60a5fa33;color:#93c5fd;text-decoration:none}@media (max-width: 768px){.risk-panel-body{flex-direction:column;align-items:stretch}.risk-breakdown{flex-wrap:wrap;justify-content:space-around}.risk-pillar{flex:1 1 80px}}.risk-panel-body{display:flex;flex-direction:column;gap:1.25rem}.risk-factors-section{width:100%}.risk-section-title{font-size:.875rem;font-weight:600;color:#94a3b8;margin:0 0 .75rem}.risk-factors-grid{display:flex;flex-direction:column;gap:.5rem}.risk-factor-row{display:grid;grid-template-columns:1.5rem 1fr auto auto;align-items:center;gap:.75rem;padding:.625rem .875rem;background:#ffffff08;border-radius:6px;border:1px solid rgba(255,255,255,.05)}.factor-icon{font-size:1rem}.factor-label{font-size:.875rem;font-weight:500;color:#e2e8f0}.factor-value{font-size:1rem;font-weight:700;min-width:50px;text-align:right}.factor-source{font-size:.75rem;color:#64748b;min-width:130px}.risk-insights-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%}.risk-insights-column{padding:.875rem;background:#0003;border-radius:8px}.insights-title{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;color:#94a3b8;margin:0 0 .625rem}.insights-icon{font-size:.875rem}.insights-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem}.insight-item{padding:.5rem .625rem;border-radius:4px;font-size:.8125rem;line-height:1.4}.insight-item.warning{background:#ef44441f;border-left:3px solid #ef4444;color:#fca5a5}.insight-item.success{background:#22c55e1f;border-left:3px solid #22c55e;color:#86efac}.insight-item.neutral{background:#94a3b81a;border-left:3px solid #64748b;color:#94a3b8;font-style:italic}@media (max-width: 768px){.risk-insights-grid{grid-template-columns:1fr}.risk-factor-row{grid-template-columns:1.5rem 1fr auto}.factor-source{display:none}}.pipeline-dashboard-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px;height:600px;margin-top:20px}.card-glass{background:#1e293bcc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(148,163,184,.1);border-radius:16px;padding:20px}.pipeline-visualizer{display:flex;flex-direction:column;background:#1e293bcc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(148,163,184,.1);border-radius:16px;overflow:hidden}.pipeline-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid rgba(148,163,184,.1)}.pipeline-header h3{margin:0;font-size:16px;font-weight:600;color:#f1f5f9}.asset-badge{background:#3b82f633;padding:6px 12px;border-radius:20px;border:1px solid #3B82F6;color:#93c5fd;font-size:12px;font-weight:600}.graph-hint{padding:12px 20px;text-align:center;color:#64748b;border-top:1px solid rgba(148,163,184,.1)}.pipeline-inspector{display:flex;flex-direction:column;background:#1e293bcc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(148,163,184,.1);border-radius:16px;overflow:hidden}.inspector-panel{padding:20px;display:flex;flex-direction:column;gap:16px;height:100%;overflow-y:auto}.inspector-header{display:flex;align-items:center;gap:16px;padding-bottom:16px;border-bottom:1px solid rgba(148,163,184,.1)}.inspector-icon{font-size:32px;width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:#3b82f626;border-radius:12px}.inspector-title h2{margin:0 0 8px;font-size:18px;font-weight:600;color:#f1f5f9}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.inspector-actions{display:flex;flex-direction:column;gap:12px}.inspector-actions .btn{width:100%;padding:14px 20px;font-size:15px;font-weight:600;border-radius:10px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease}.inspector-actions .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.inspector-actions .btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.inspector-actions .btn-secondary{background:#64748b4d;color:#94a3b8}.inspector-actions .btn-secondary:disabled{cursor:not-allowed}.inspector-actions .btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.inspector-actions .btn-success:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.inspector-actions .btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.inspector-actions .btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);transform:translateY(-1px)}.action-hint{text-align:center;color:#64748b;font-size:13px;margin:0}.progress-indicator{display:flex;flex-direction:column;gap:6px}.progress-bar-mini{height:6px;background:#64748b4d;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:3px;transition:width .3s ease}.progress-text{text-align:center;color:#94a3b8;font-size:12px}.inspector-divider{border:none;border-top:1px solid rgba(148,163,184,.1);margin:8px 0}.inspector-details{display:flex;flex-direction:column;gap:12px}.inspector-details h4{margin:0;font-size:13px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#33415566;border-radius:8px}.metric-row span{color:#94a3b8;font-size:13px}.metric-row strong{color:#f1f5f9;font-size:14px}.description-box{display:flex;flex-direction:column;gap:8px}.description-box h4{margin:0;font-size:13px;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.description-box p{margin:0;color:#cbd5e1;font-size:14px;line-height:1.5}.error-banner{display:flex;align-items:flex-start;gap:12px;padding:14px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:10px}.error-banner strong{display:block;color:#fca5a5;font-size:13px;margin-bottom:4px}.error-banner p{margin:0;color:#fecaca;font-size:13px;line-height:1.4}.quick-actions{display:flex;gap:10px;margin-top:auto;padding-top:16px;border-top:1px solid rgba(148,163,184,.1)}.quick-actions .btn-outline{flex:1;padding:10px 14px;font-size:13px;background:transparent;border:1px solid rgba(148,163,184,.3);color:#94a3b8;border-radius:8px;cursor:pointer;transition:all .2s ease}.quick-actions .btn-outline:hover:not(:disabled){background:#94a3b81a;border-color:#94a3b880;color:#f1f5f9}.inspector-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:40px 20px;text-align:center}.inspector-empty .empty-icon{font-size:48px;margin-bottom:16px;opacity:.6}.inspector-empty h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#f1f5f9}.inspector-empty p{margin:0;color:#64748b;font-size:14px;line-height:1.5}.animate-slide-left{animation:slideInLeft .3s ease-out}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.pulsing-dot{width:10px;height:10px;background:#3b82f6;border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}@media (max-width: 1024px){.pipeline-dashboard-grid{grid-template-columns:1fr;height:auto}.pipeline-visualizer{min-height:400px}.pipeline-inspector{min-height:500px}}.lineage-section{margin:2rem auto;max-width:1200px;padding:0 1rem}.lineage-toggles{display:flex;gap:1rem;margin-bottom:1rem;justify-content:center}.lineage-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.lineage-toggle-btn:hover{border-color:#3b82f6;background:#eff6ff}.lineage-toggle-btn.active{border-color:#3b82f6;background:#3b82f6;color:#fff}.toggle-icon{font-size:1.1rem}.lineage-panel-wrapper{margin-top:1rem;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px #0000001a}@media (max-width: 640px){.lineage-toggles{flex-direction:column;align-items:stretch}.lineage-toggle-btn{justify-content:center}}.analysis-progress-panel{margin-top:1rem;padding:1.5rem;background:linear-gradient(145deg,#0c1426,#152038,#111d33);border-radius:14px;border:1px solid rgba(59,130,246,.18);color:#e2e8f0;box-shadow:0 4px 24px #0003,inset 0 1px #ffffff0a;max-height:520px;overflow-y:auto}.analysis-progress-panel::-webkit-scrollbar{width:5px}.analysis-progress-panel::-webkit-scrollbar-track{background:transparent}.analysis-progress-panel::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:3px}.ap-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.ap-title{display:flex;align-items:center;gap:10px;font-size:.95rem;font-weight:600;color:#f1f5f9;min-width:0}.ap-title>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-pulse-dot{width:8px;height:8px;min-width:8px;border-radius:50%;background:#3b82f6;box-shadow:0 0 8px #3b82f680;animation:ap-pulse 1.5s ease-in-out infinite}.ap-elapsed{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.85rem;color:#94a3b8;background:#ffffff0d;padding:4px 10px;border-radius:6px;white-space:nowrap;margin-left:12px}.ap-bar-track{height:5px;background:#ffffff0f;border-radius:3px;overflow:hidden;margin-bottom:4px}.ap-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#06b6d4,#10b981);border-radius:3px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.ap-bar-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:ap-shimmer 2s ease-in-out infinite}.ap-bar-label{font-size:.72rem;color:#64748b;text-align:right;margin-bottom:1rem;letter-spacing:.02em}.ap-phases{display:flex;flex-direction:column;gap:1px}.ap-phase{padding:7px 10px;border-radius:8px;transition:all .3s ease}.ap-phase-row{display:flex;align-items:center;gap:10px}.ap-phase-icon{width:20px;min-width:20px;text-align:center;font-size:.8rem;line-height:1}.ap-phase-label{font-size:.84rem;flex:1;line-height:1.3}.ap-phase-badge{font-size:.65rem;padding:2px 8px;border-radius:10px;background:#ffffff0d;color:#64748b;white-space:nowrap;letter-spacing:.02em;text-transform:uppercase;font-weight:500}.ap-phase--done .ap-phase-icon{color:#10b981}.ap-phase--done .ap-phase-label{color:#64748b}.ap-phase--active{background:#3b82f612;border:1px solid rgba(59,130,246,.18);margin-top:3px;margin-bottom:3px}.ap-phase--active .ap-phase-icon{color:#3b82f6;animation:ap-pulse 1.2s ease-in-out infinite}.ap-phase--active .ap-phase-label{color:#f1f5f9;font-weight:600}.ap-phase--active .ap-phase-badge{background:#3b82f626;color:#93c5fd}.ap-phase--pending .ap-phase-icon{color:#334155}.ap-phase--pending .ap-phase-label{color:#475569}.ap-phase--pending .ap-phase-badge{color:#334155}.ap-algorithms{margin:10px 0 4px 30px;display:grid;grid-template-columns:1fr 1fr;gap:6px}.ap-algo-card{padding:8px 11px;background:#ffffff08;border-radius:6px;border-left:2px solid rgba(59,130,246,.35);transition:background .2s ease}.ap-algo-card:hover{background:#ffffff0f}.ap-algo-name{display:block;font-size:.78rem;font-weight:600;color:#93c5fd;font-family:SF Mono,Fira Code,Consolas,monospace;letter-spacing:-.01em;line-height:1.3}.ap-algo-detail{display:block;font-size:.68rem;color:#64748b;margin-top:2px;line-height:1.35}.ap-done-summary{margin-left:30px;margin-top:2px;font-size:.68rem;color:#3e4c5e;font-family:SF Mono,Fira Code,Consolas,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4}@keyframes ap-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.15)}}@keyframes ap-shimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}@media (max-width: 600px){.ap-algorithms{grid-template-columns:1fr}}.deep-analysis-checkbox{display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin-top:1rem;padding:.75rem 1rem;background:var(--surface-secondary, #f8f9fa);border-radius:8px;border:1px solid var(--border-color, #e2e8f0);cursor:pointer;font-size:.9rem}.deep-analysis-checkbox input[type=checkbox]{margin-top:3px;cursor:pointer}.checkbox-label{font-weight:600;color:var(--text-primary, #1a1a2e)}.checkbox-description{flex-basis:100%;margin-left:26px;font-size:.8rem;color:var(--text-tertiary, #94a3b8);line-height:1.4}.warehouse-stopped-warning{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:.85rem;margin-top:8px}.warehouse-stopped-warning .warning-icon{font-size:1.1rem;flex-shrink:0}.warehouse-starting-info{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;color:#92400e;font-size:.85rem;margin-top:8px}.contextual-fit-panel{padding:1.5rem;max-width:1200px;margin:0 auto}.contextual-fit-panel.loading,.contextual-fit-panel.error{display:flex;justify-content:center;align-items:center;min-height:400px}.loading-state,.error-state{text-align:center;padding:2rem}.loading-state .spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.error-state .error-icon{font-size:3rem;color:#e53e3e;margin-bottom:1rem}.setup-state{text-align:center;padding:3rem 2rem;background:var(--bg-secondary, #f7fafc);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.setup-icon{font-size:4rem;margin-bottom:1rem}.setup-state h2{color:var(--text-primary, #1a202c);margin-bottom:.5rem}.setup-state>p{color:var(--text-secondary, #4a5568);max-width:600px;margin:0 auto 2rem}.setup-steps{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.setup-step{display:flex;align-items:flex-start;gap:.75rem;text-align:left;background:var(--card-bg, #ffffff);padding:1rem;border-radius:8px;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .05));min-width:180px;border:1px solid var(--border-color, #e2e8f0)}.step-number{width:28px;height:28px;background:#4299e1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.step-content h4{margin:0 0 .25rem;color:var(--text-primary, #1a202c);font-size:.95rem}.step-content p{margin:0;color:var(--text-secondary, #4a5568);font-size:.85rem}.step-arrow{color:var(--text-muted, #718096);font-size:1.5rem}.btn-large{padding:.875rem 2rem;font-size:1.1rem}.panel-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.header-left h2{display:flex;align-items:center;gap:.5rem;margin:0 0 .25rem;color:var(--text-primary, #1a202c)}.header-icon{font-size:1.5rem}.panel-subtitle{color:var(--text-secondary, #4a5568);margin:0}.header-score{display:flex;flex-direction:column;align-items:center;gap:.5rem}.score-circle{width:80px;height:80px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid currentColor}.score-circle .score-value{font-size:1.75rem;font-weight:700;line-height:1}.score-circle .score-label{font-size:.75rem;opacity:.8}.score-good{color:#48bb78;border-color:#48bb78}.score-fair{color:#ecc94b;border-color:#ecc94b}.score-warning{color:#ed8936;border-color:#ed8936}.score-poor{color:#e53e3e;border-color:#e53e3e}.section{background:var(--card-bg, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e2e8f0);padding:1.25rem;margin-bottom:1rem}.section-header h3{margin:0;color:var(--text-primary, #1a202c);font-size:1.1rem}.section>h3{margin:0 0 1rem;color:var(--text-primary, #1a202c);font-size:1.1rem}.declaration-summary{background:var(--bg-secondary, #f7fafc);padding:1rem;border-radius:6px;border:1px solid var(--border-color, #e2e8f0)}.declaration-statement{margin-bottom:.75rem;font-size:1rem;color:var(--text-primary, #1a202c)}.declaration-statement strong{color:var(--text-secondary, #4a5568)}.declaration-meta{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-bottom:.75rem}.meta-item{font-size:.9rem;color:var(--text-primary, #1a202c)}.meta-item strong{color:var(--text-secondary, #4a5568)}.protected-attributes-summary{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.75rem;color:var(--text-primary, #1a202c)}.protected-tag{background:var(--bg-tertiary, #e2e8f0);color:var(--text-primary, #1a202c);padding:.25rem .5rem;border-radius:4px;font-size:.8rem}.sensitivity-badge{padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600}.sensitivity-low{background:#c6f6d5;color:#276749}.sensitivity-medium{background:#fefcbf;color:#975a16}.sensitivity-high{background:#fed7d7;color:#c53030}.sensitivity-critical{background:#feb2b2;color:#9b2c2c}.proxy-list{display:flex;flex-direction:column;gap:.75rem}.no-proxies{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#c6f6d5;border-radius:6px;color:#276749}.success-icon{font-size:1.25rem}.analysis-summary{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #4a5568)}.proxy-warning-card{border:1px solid var(--border-color, #e2e8f0);border-radius:8px;overflow:hidden;background:var(--card-bg, #ffffff)}.proxy-warning-card.risk-critical{border-left:4px solid #e53e3e}.proxy-warning-card.risk-high{border-left:4px solid #ed8936}.proxy-warning-card.risk-moderate{border-left:4px solid #ecc94b}.proxy-warning-card.risk-low{border-left:4px solid #48bb78}.proxy-card-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;cursor:pointer;background:var(--bg-secondary, #f7fafc)}.proxy-card-header:hover{background:var(--bg-tertiary, #edf2f7)}.proxy-feature-info{display:flex;align-items:center;gap:.5rem}.risk-indicator{font-size:1rem}.proxy-feature-name{font-weight:600;color:var(--text-primary, #1a202c)}.proxy-badges{display:flex;align-items:center;gap:.5rem}.risk-badge{padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600}.risk-badge.risk-critical{background:#fed7d7;color:#c53030}.risk-badge.risk-high{background:#feebc8;color:#c05621}.risk-badge.risk-moderate{background:#fefcbf;color:#975a16}.risk-badge.risk-low{background:#c6f6d5;color:#276749}.confidence-badge{background:var(--bg-tertiary, #e2e8f0);color:var(--text-secondary, #4a5568);padding:.2rem .5rem;border-radius:4px;font-size:.7rem}.expand-icon{color:var(--text-muted, #718096);font-size:.75rem}.proxy-card-body{padding:1rem;border-top:1px solid var(--border-color, #e2e8f0)}.proxy-detail-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.proxy-detail-label{color:var(--text-muted, #718096);font-size:.85rem;min-width:100px}.protected-tags{display:flex;flex-wrap:wrap;gap:.25rem}.detection-method{font-size:.85rem;color:var(--text-secondary, #4a5568)}.confidence-bar-container{display:flex;align-items:center;gap:.5rem;flex:1}.confidence-bar{flex:1;height:6px;background:var(--bg-tertiary, #e2e8f0);border-radius:3px;overflow:hidden}.confidence-fill{height:100%;border-radius:3px;transition:width .3s ease}.confidence-fill.risk-critical{background:#e53e3e}.confidence-fill.risk-high{background:#ed8936}.confidence-fill.risk-moderate{background:#ecc94b}.confidence-fill.risk-low{background:#48bb78}.confidence-value{font-size:.85rem;font-weight:600;color:var(--text-secondary, #4a5568);min-width:40px}.proxy-recommendation{display:flex;gap:.5rem;padding:.75rem;background:#ebf8ff;border-radius:6px;margin-top:.5rem}.recommendation-icon{font-size:1rem}.proxy-recommendation p{margin:0;font-size:.9rem;color:#2c5282}.proxy-actions{margin-top:.75rem;text-align:right}.fit-assessment{display:flex;flex-direction:column;gap:1rem}.fit-score-display{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary, #f7fafc);border-radius:6px}.fit-score{display:flex;flex-direction:column;align-items:center}.fit-score .score-value{font-size:2rem;font-weight:700}.fit-score .score-label{font-size:.8rem;color:var(--text-muted, #718096)}.fit-level-badge,.fit-badge{padding:.25rem .75rem;border-radius:4px;font-size:.8rem;font-weight:600}.fit-excellent{background:#c6f6d5;color:#276749}.fit-good{background:#b2f5ea;color:#234e52}.fit-adequate{background:#fefcbf;color:#975a16}.fit-poor{background:#fed7d7;color:#c53030}.fit-inappropriate{background:#feb2b2;color:#742a2a}.fit-summary{padding:.75rem;background:var(--bg-tertiary, #edf2f7);border-radius:6px}.fit-summary p{margin:0;color:var(--text-primary, #1a202c)}.findings-list{margin-top:1rem}.findings-list h4{margin:0 0 .75rem;color:var(--text-primary, #1a202c)}.finding-card{padding:.75rem;margin-bottom:.5rem;border-radius:6px;border-left:3px solid;background:var(--bg-secondary, #141d3a)}.finding-card.severity-critical{background:#e53e3e26;border-color:#e53e3e}.finding-card.severity-high{background:#ed893626;border-color:#ed8936}.finding-card.severity-medium{background:#ecc94b1f;border-color:#ecc94b}.finding-card.severity-low{background:#48bb7826;border-color:#48bb78}.finding-card.severity-none{background:var(--bg-secondary, #141d3a);border-color:var(--text-muted, #718096)}.finding-category{font-size:.8rem;color:var(--text-muted, #718096);text-transform:uppercase}.severity-badge{padding:.15rem .4rem;border-radius:3px;font-size:.65rem;font-weight:600}.severity-badge.severity-critical{background:#e53e3e;color:#fff}.severity-badge.severity-high{background:#ed8936;color:#fff}.severity-badge.severity-medium{background:#ecc94b;color:#744210}.severity-badge.severity-low{background:#48bb78;color:#fff}.severity-badge.severity-none{background:#a0aec0;color:#fff}.finding-text{margin:0 0 .5rem;color:var(--text-primary, #1a202c)}.finding-recommendation{margin:0;font-size:.9rem;color:var(--text-secondary, #4a5568)}.ethical-considerations{margin-top:1rem;padding:1rem;background:#f0fff4;border-radius:6px}.ethical-considerations h4{margin:0 0 .5rem;color:#276749}.ethical-considerations ul{margin:0;padding-left:1.25rem;color:#2f855a}.ethical-considerations li{margin-bottom:.25rem}.no-fit-assessment{padding:1rem;background:var(--bg-secondary, #f7fafc);border-radius:6px;text-align:center;color:var(--text-muted, #718096)}.questions-meta{display:flex;align-items:center;gap:1rem}.answered-count{font-size:.85rem;color:var(--text-muted, #718096)}.questions-list{display:flex;flex-direction:column;gap:.75rem}.no-questions{padding:1rem;background:var(--bg-secondary, #f7fafc);border-radius:6px;text-align:center;color:var(--text-muted, #718096)}.probing-question-card{border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:1rem;background:var(--card-bg, #ffffff)}.probing-question-card.answered{border-color:#c6f6d5;background:#f0fff4}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.question-meta{display:flex;align-items:center;gap:.5rem}.category-icon{font-size:1rem}.category-label{font-size:.8rem;color:var(--text-muted, #718096)}.importance-badge{padding:.15rem .4rem;border-radius:3px;font-size:.65rem;font-weight:600}.importance-high{background:#fed7d7;color:#c53030}.importance-medium{background:#fefcbf;color:#975a16}.importance-low{background:#e2e8f0;color:#4a5568}.answered-badge{color:#38a169;font-size:.85rem;font-weight:500}.question-text{margin-bottom:1rem}.question-text p{margin:0;color:var(--text-primary, #1a202c);font-size:1rem}.question-error{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#fed7d7;border-radius:4px;color:#c53030;margin-bottom:.75rem;font-size:.9rem}.question-answer-form{display:flex;flex-direction:column;gap:.75rem}.question-answer-form textarea{width:100%;padding:.75rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.95rem;resize:vertical;min-height:80px;background:var(--input-bg, #ffffff);color:var(--text-primary, #1a202c)}.question-answer-form textarea:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.answer-actions{display:flex;justify-content:flex-end;gap:.5rem}.question-answer-display{background:var(--bg-secondary, #f7fafc);padding:.75rem;border-radius:6px}.saved-answer{margin-bottom:.5rem}.saved-answer p{margin:.25rem 0 0;color:var(--text-secondary, #4a5568)}.recommendations-section .recommendation-item{display:flex;gap:.75rem;padding:.75rem;background:#141d3a!important;border-radius:6px;border:1px solid var(--border-color, #e2e8f0)!important;border-left:3px solid var(--text-muted, #718096)!important;color:#e8eefc!important}.recommendations-section .recommendation-item.priority-immediate,.recommendations-section .recommendation-item.priority-critical{border-left-color:#e53e3e!important;background:#e53e3e40!important}.recommendations-section .recommendation-item.priority-high{border-left-color:#ed8936!important;background:#ed893640!important}.recommendations-section .recommendation-item.priority-medium{border-left-color:#ecc94b!important;background:#ecc94b33!important}.recommendations-section .recommendation-item.priority-low{border-left-color:#48bb78!important;background:#48bb7840!important}.priority-icon{font-size:.75rem}.recommendation-content{flex:1}.recommendation-category{font-size:.75rem;color:#8ea1c7!important;text-transform:uppercase;display:block;margin-bottom:.25rem;font-weight:600}.recommendation-content p{margin:0;color:#e8eefc!important}.recommendations-section .recommendation-item{color:#e8eefc!important}.recommendations-section .recommendation-item *{color:inherit}.recommendations-section .recommendation-content p{color:#e8eefc!important}.remediation-cta-section{margin-top:1.5rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#2563eb1f,#6366f11a);border:1px solid rgba(99,102,241,.25);border-radius:10px}.remediation-cta-content{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.remediation-cta-text{flex:1;min-width:0}.remediation-cta-text h3{margin:0 0 .35rem;font-size:1rem;font-weight:700;color:#e8eefc}.remediation-cta-text p{margin:0;font-size:.85rem;line-height:1.5;color:#a0aec0}.remediation-cta-btn{flex-shrink:0;padding:.7rem 1.5rem!important;font-size:.95rem!important;font-weight:600!important;border-radius:8px!important;white-space:nowrap;background:#4f46e5!important;border-color:#4f46e5!important;box-shadow:0 2px 8px #4f46e54d;transition:background .15s,box-shadow .15s,transform .1s}.remediation-cta-btn:hover:not(:disabled){background:#4338ca!important;box-shadow:0 4px 14px #4f46e566;transform:translateY(-1px)}.remediation-cta-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.remediation-cta-error{margin-top:.75rem;padding:.6rem 1rem;background:#dc262626;border:1px solid rgba(220,38,38,.3);border-radius:6px;color:#fca5a5;font-size:.8rem;display:flex;align-items:center;gap:.5rem}.remediation-cta-error .error-icon{flex-shrink:0}.remediation-cta-error .btn-link{margin-left:auto;color:#fca5a5;font-size:.75rem}@media (max-width: 640px){.remediation-cta-content{flex-direction:column;align-items:stretch;gap:1rem}.remediation-cta-btn{width:100%;text-align:center}}.panel-actions{margin-top:1.5rem;display:flex;justify-content:center;gap:1rem}.panel-metadata{display:flex;justify-content:center;gap:2rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e2e8f0);color:var(--text-muted, #718096);font-size:.8rem}.panel-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fed7d7;border-radius:6px;color:#c53030;margin-bottom:1rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:var(--card-bg, #ffffff);border-radius:12px;max-width:700px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 40px #0003}.problem-declaration-form{padding:1.5rem;background:var(--card-bg, #ffffff);color:var(--text-primary, #1a202c);border-radius:8px}.problem-declaration-form.loading{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:2rem;color:var(--text-muted, #718096)}.problem-declaration-form .form-header{margin-bottom:1.5rem}.problem-declaration-form .form-header h3{margin:0 0 .25rem;color:var(--text-primary, #1a202c)}.form-subtitle{color:var(--text-secondary, #4a5568);margin:0}.form-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fed7d7;border-radius:6px;color:#c53030;margin-bottom:1rem}.form-validation-errors{padding:.75rem;background:#fffaf0;border:1px solid #ed8936;border-radius:6px;margin-bottom:1rem}.form-validation-errors ul{margin:.5rem 0 0;padding-left:1.25rem;color:#c05621}.form-body{display:flex;flex-direction:column;gap:1.25rem}.form-group label{font-weight:600;color:var(--text-primary, #1a202c)}.form-group input[type=text],.form-group input[type=number],.form-group textarea,.form-group select{padding:.625rem .75rem;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s;background:var(--input-bg, #ffffff);color:var(--text-primary, #1a202c)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted, #718096)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.field-hint,.field-explanation{font-size:.85rem;color:var(--text-secondary, #4a5568)}.field-explanation{margin-bottom:.5rem}.sensitivity-selector{display:flex;gap:.5rem;flex-wrap:wrap}.sensitivity-option{padding:.5rem 1rem;border:2px solid var(--border-color, #e2e8f0);border-radius:6px;background:var(--card-bg, #ffffff);cursor:pointer;transition:all .2s;color:var(--text-primary, #1a202c)}.sensitivity-option:hover{border-color:var(--text-muted, #a0aec0)}.sensitivity-option.selected{border-color:#4299e1;background:#ebf8ff}.sensitivity-option.sensitivity-low.selected{border-color:#48bb78;background:#f0fff4}.sensitivity-option.sensitivity-medium.selected{border-color:#ecc94b;background:ivory}.sensitivity-option.sensitivity-high.selected{border-color:#ed8936;background:#fffaf0}.sensitivity-option.sensitivity-critical.selected{border-color:#e53e3e;background:#fff5f5}.sensitivity-label{font-weight:600}.protected-attributes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.attribute-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem;border:1px solid var(--border-color, #e2e8f0);border-radius:4px;cursor:pointer;font-weight:400;transition:background .2s;background:var(--card-bg, #ffffff);color:var(--text-primary, #1a202c)}.attribute-checkbox:hover{background:var(--bg-secondary, #f7fafc)}.attribute-checkbox input:checked+span{color:var(--accent-color, #2b6cb0);font-weight:500}.attribute-checkbox span{color:var(--text-primary, #1a202c)}.custom-attributes{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem;align-items:center}.custom-label{color:var(--text-muted, #718096);font-size:.85rem}.custom-attribute-tag{display:flex;align-items:center;gap:.25rem;background:#4299e1;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.85rem}.remove-tag{background:none;border:none;color:#fff;cursor:pointer;padding:0;font-size:1rem;line-height:1}.add-custom-attribute{display:flex;gap:.5rem;margin-top:.75rem}.add-custom-attribute input{flex:1;padding:.5rem;border:1px solid #e2e8f0;border-radius:4px}.btn-small{padding:.4rem .75rem;font-size:.85rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#4299e1;color:#fff}.btn-primary:hover:not(:disabled){background:#3182ce}.btn-secondary{background:#edf2f7;color:#4a5568}.btn-secondary:hover:not(:disabled){background:#e2e8f0}.btn-link{background:none;border:none;color:#4299e1;cursor:pointer;padding:.25rem;font-size:.9rem}.btn-link:hover{text-decoration:underline}.spinner-small{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}@media (max-width: 768px){.contextual-fit-panel{padding:1rem}.panel-header{flex-direction:column;gap:1rem}.header-score{align-self:flex-start;flex-direction:row;align-items:center}.setup-steps{flex-direction:column}.step-arrow{transform:rotate(90deg)}.sensitivity-selector{flex-direction:column}.protected-attributes-grid{grid-template-columns:repeat(2,1fr)}.modal-content{margin:1rem;width:calc(100% - 2rem);max-height:calc(100vh - 2rem)}}.problem-confirmation-modal{max-width:800px;width:95%}.confirmation-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f7fafc}.confirmation-modal-header .header-title{display:flex;align-items:center;gap:.75rem}.confirmation-modal-header .header-icon{font-size:1.5rem}.confirmation-modal-header h2{margin:0;font-size:1.25rem;color:#2d3748}.overall-confidence{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.5rem;background:#edf2f7;border-bottom:1px solid #e2e8f0}.overall-confidence .confidence-label{font-weight:500;color:#4a5568}.overall-confidence .confidence-badge{padding:.25rem .75rem;border-radius:4px;font-size:.85rem;font-weight:600}.confidence-high{background:#c6f6d5;color:#276749}.confidence-medium{background:#fefcbf;color:#975a16}.confidence-low{background:#fed7d7;color:#c53030}.confidence-very-low{background:#e2e8f0;color:#4a5568}.confirmation-required{margin-left:auto;padding:.25rem .75rem;background:#fefcbf;color:#975a16;border-radius:4px;font-size:.8rem;font-weight:500}.confirmation-body{padding:1.5rem;max-height:60vh;overflow-y:auto}.confirmation-section{margin-bottom:1.5rem}.confirmation-section:last-child{margin-bottom:0}.confirmation-section>label{display:block;font-weight:600;color:#2d3748;margin-bottom:.5rem}.confirmation-section textarea,.confirmation-section input[type=text],.confirmation-section select{width:100%;padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.95rem}.confirmation-section textarea:focus,.confirmation-section input:focus,.confirmation-section select:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.inferred-field{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.inferred-field .field-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.inferred-field .field-header label{font-weight:600;color:#2d3748;margin:0}.confidence-indicator{font-size:.8rem;padding:.2rem .5rem;border-radius:4px;font-weight:500}.confidence-indicator.confidence-high{background:#c6f6d5;color:#276749}.confidence-indicator.confidence-medium{background:#fefcbf;color:#975a16}.confidence-indicator.confidence-low{background:#fed7d7;color:#c53030}.confidence-indicator.confidence-very-low,.confidence-indicator.edited{background:#e2e8f0;color:#4a5568}.confidence-indicator .edit-icon{margin-right:.25rem}.ai-reasoning{display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.5rem .75rem;background:#ebf8ff;border-radius:4px;font-size:.85rem;color:#2c5282}.ai-reasoning .reasoning-icon{flex-shrink:0}.protected-attributes-list{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.protected-attr-item{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:.75rem;cursor:pointer;transition:all .2s}.protected-attr-item:hover{border-color:#a0aec0}.protected-attr-item.selected{border-color:#4299e1;background:#ebf8ff}.protected-attr-item .attr-header{display:flex;align-items:center;gap:.5rem}.protected-attr-item .attr-name{font-weight:600;color:#2d3748}.protected-attr-item .attr-type-badge{padding:.15rem .4rem;background:#e2e8f0;border-radius:3px;font-size:.7rem;color:#4a5568;text-transform:uppercase}.protected-attr-item .confidence-mini{margin-left:auto;padding:.15rem .4rem;border-radius:3px;font-size:.7rem;font-weight:600}.protected-attr-item .attr-reasoning{margin-top:.5rem;font-size:.85rem;color:#718096;padding-left:1.5rem}.feature-roles-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.feature-role-item{display:flex;align-items:center;gap:.25rem;padding:.35rem .6rem;background:#fff;border:1px solid #e2e8f0;border-radius:4px;font-size:.8rem}.feature-role-item .fr-column{font-weight:500;color:#2d3748}.feature-role-item .fr-role{color:#718096}.feature-role-more{padding:.35rem .6rem;background:#edf2f7;border-radius:4px;font-size:.8rem;color:#718096}.confirmation-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f7fafc}@media (max-width: 768px){.problem-confirmation-modal{width:calc(100% - 2rem)}.confirmation-body{max-height:50vh}.overall-confidence{flex-wrap:wrap}.confirmation-required{margin-left:0;margin-top:.5rem;width:100%}}.ready-to-analyze-state{text-align:center;padding:2rem;background:var(--card-bg, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.ready-to-analyze-state h2{color:var(--text-primary, #1a202c);margin-bottom:.5rem}.ready-to-analyze-state>p{color:var(--text-secondary, #4a5568);max-width:600px;margin:0 auto 1.5rem}.declaration-summary-card{background:var(--card-bg, #ffffff);border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;text-align:left;box-shadow:var(--card-shadow, 0 2px 4px rgba(0, 0, 0, .05));max-width:600px;margin-left:auto;margin-right:auto;border:1px solid var(--border-color, #e2e8f0)}.declaration-summary-card .declaration-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.declaration-summary-card .declaration-header h4{margin:0;color:var(--text-primary, #1a202c);font-size:1rem}.declaration-details{display:flex;flex-direction:column;gap:.5rem}.detail-row{display:flex;align-items:flex-start;gap:.5rem}.detail-label{font-weight:600;color:var(--text-secondary, #4a5568);min-width:100px;font-size:.875rem}.detail-value{color:var(--text-primary, #1a202c);font-size:.875rem;flex:1}.dq-status-card{margin-bottom:1.5rem}.dq-status{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:6px;font-size:.9rem;max-width:600px;margin:0 auto}.dq-status.checking{background:var(--bg-secondary, #f7fafc);color:var(--text-muted, #718096);border:1px solid var(--border-color, #e2e8f0)}.dq-status.available{background:var(--success-bg, #f0fff4);color:var(--success-text, #22543d);border:1px solid var(--success-border, #9ae6b4)}.dq-status.warning{background:var(--warning-bg, #fffaf0);color:var(--warning-text, #c05621);border:1px solid var(--warning-border, #fbd38d)}.help-text{color:var(--text-muted, #718096);font-size:.85rem;margin-top:.75rem}.btn-large{font-size:1.1rem;padding:.875rem 2rem}.btn-large .spinner-small{width:18px;height:18px;margin-right:.5rem}.section.collapsed{opacity:.7;background:var(--bg-secondary, #f7fafc)}.section.collapsed .section-header h3{color:var(--text-muted, #718096)}.section-note{color:var(--text-muted, #718096);font-size:.9rem;font-style:italic;margin:.5rem 0 0;line-height:1.5}.badge-muted{background:var(--bg-tertiary, #e2e8f0);color:var(--text-muted, #718096);padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.model-risk-matrix{background:var(--bg-secondary, #f7fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:8px;padding:1.25rem;margin:1rem 0}.risk-matrix-header{margin-bottom:1rem;border-bottom:1px solid var(--border-color, #e2e8f0);padding-bottom:.75rem}.risk-matrix-header h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--text-primary, #1a202c)}.risk-matrix-subtitle{margin:0;font-size:.85rem;color:var(--text-muted, #718096)}.risk-selector{display:flex;gap:.5rem;flex-wrap:wrap}.risk-option{flex:1;min-width:80px;padding:.625rem .75rem;border:2px solid var(--border-color, #e2e8f0);border-radius:6px;background:var(--bg-primary, #ffffff);cursor:pointer;transition:all .15s ease;text-align:center}.risk-option:hover:not(:disabled){border-color:var(--primary-color, #4299e1);background:var(--primary-bg-light, #ebf8ff)}.risk-option:disabled{opacity:.6;cursor:not-allowed}.risk-option.selected{border-color:var(--primary-color, #4299e1);background:var(--primary-color, #4299e1);color:#fff}.risk-option-label{font-weight:600;font-size:.9rem}.risk-option.influence-low.selected{background:#48bb78;border-color:#48bb78}.risk-option.influence-medium.selected{background:#ed8936;border-color:#ed8936}.risk-option.influence-high.selected{background:#e53e3e;border-color:#e53e3e}.risk-option.consequence-low.selected{background:#48bb78;border-color:#48bb78}.risk-option.consequence-medium.selected{background:#ecc94b;border-color:#ecc94b;color:#1a202c}.risk-option.consequence-high.selected{background:#ed8936;border-color:#ed8936}.risk-option.consequence-critical.selected{background:#e53e3e;border-color:#e53e3e}.calculated-risk-display{margin-top:1rem;padding:1rem;border-radius:6px;border:2px solid var(--border-color, #e2e8f0)}.calculated-risk-display.risk-level-low{background:#f0fff4;border-color:#48bb78}.calculated-risk-display.risk-level-medium{background:#fffaf0;border-color:#ed8936}.calculated-risk-display.risk-level-high{background:#fff5f5;border-color:#e53e3e}.calculated-risk-display.risk-level-empty{background:var(--bg-tertiary, #edf2f7);border-color:var(--border-color, #e2e8f0);border-style:dashed}.risk-level-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.risk-level-label{font-weight:600;font-size:.9rem;color:var(--text-primary, #1a202c)}.risk-level-badge{padding:.25rem .75rem;border-radius:4px;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.risk-level-badge.low{background:#48bb78;color:#fff}.risk-level-badge.medium{background:#ed8936;color:#fff}.risk-level-badge.high{background:#e53e3e;color:#fff}.risk-level-description{margin:0;font-size:.875rem;color:var(--text-secondary, #4a5568);line-height:1.5}.risk-level-prompt{margin:0;font-size:.875rem;color:var(--text-muted, #718096);font-style:italic;text-align:center}.regulatory-frameworks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem;margin-top:.5rem}.framework-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;cursor:pointer;transition:all .15s ease}.framework-checkbox:hover{border-color:var(--primary-color, #4299e1);background:var(--primary-bg-light, #ebf8ff)}.framework-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.framework-checkbox span{font-size:.875rem;color:var(--text-primary, #1a202c)}.perspective-selector{margin-bottom:2rem}.perspective-selector-header{text-align:center;margin-bottom:1.5rem}.perspective-selector-header h3{margin:0 0 .5rem;color:var(--text-primary, #1a202c);font-size:1.15rem}.perspective-selector-subtitle{margin:0;color:var(--text-secondary, #4a5568);font-size:.9rem}.perspective-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.perspective-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:1.25rem;border:2px solid var(--border-color, #e2e8f0);border-radius:10px;background:var(--card-bg, #ffffff);cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:inherit;color:var(--text-primary, #1a202c)}.perspective-card:hover:not(:disabled){border-color:#4299e1;box-shadow:0 4px 12px #4299e126;transform:translateY(-2px)}.perspective-card:disabled{opacity:.6;cursor:not-allowed}.perspective-card.selected{border-color:#4299e1;background:#4299e114;box-shadow:0 0 0 3px #4299e133}.perspective-card-icon{font-size:2rem;margin-bottom:.75rem}.perspective-card-content{flex:1}.perspective-card-title{margin:0 0 .25rem;font-size:1.05rem;font-weight:600;color:var(--text-primary, #1a202c)}.perspective-card-subtitle{display:block;font-size:.8rem;color:var(--text-muted, #718096);margin-bottom:.5rem}.perspective-card-description{margin:0 0 .75rem;font-size:.85rem;color:var(--text-secondary, #4a5568);line-height:1.4}.perspective-card-bullets{margin:0;padding-left:1.25rem;font-size:.8rem;color:var(--text-secondary, #4a5568);line-height:1.6}.perspective-card-bullets li{margin-bottom:.15rem}.source-systems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.5rem}.source-system-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;cursor:pointer;transition:all .15s ease}.source-system-checkbox:hover{border-color:var(--primary-color, #4299e1);background:var(--primary-bg-light, #ebf8ff)}.source-system-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.source-system-checkbox span{font-size:.875rem;color:var(--text-primary, #1a202c)}.kpi-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.kpi-tag{display:flex;align-items:center;gap:.25rem;background:#4299e1;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.85rem}.kpi-tag .remove-tag{background:none;border:none;color:#fff;cursor:pointer;padding:0;font-size:1rem;line-height:1}.kpi-input-row{display:flex;gap:.5rem}.kpi-input-row input{flex:1;padding:.5rem;border:1px solid var(--border-color, #e2e8f0);border-radius:4px;font-size:.9rem;background:var(--input-bg, #ffffff);color:var(--text-primary, #1a202c)}.kpi-input-row input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.kpi-suggestions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.kpi-suggestion{padding:.2rem .5rem;background:var(--bg-tertiary, #edf2f7);border:1px solid var(--border-color, #e2e8f0);border-radius:3px;font-size:.75rem;color:var(--text-secondary, #4a5568);cursor:pointer;transition:all .15s ease}.kpi-suggestion:hover{background:var(--primary-bg-light, #ebf8ff);border-color:#4299e1;color:#2b6cb0}.quality-standards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.5rem}.quality-standard-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:4px;cursor:pointer;transition:all .15s ease}.quality-standard-checkbox:hover{border-color:var(--primary-color, #4299e1);background:var(--primary-bg-light, #ebf8ff)}.quality-standard-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer}.quality-standard-checkbox span{font-size:.875rem;color:var(--text-primary, #1a202c)}@media (max-width: 900px){.perspective-cards{grid-template-columns:1fr}}@media (max-width: 768px){.source-systems-grid,.quality-standards-grid{grid-template-columns:repeat(2,1fr)}}.dictionary-panel{border:1px solid var(--line, #1c2a54);border-radius:8px;margin-bottom:1.5rem;background:var(--pane, #0f1730)}.dictionary-panel-header{display:flex;flex-direction:column;align-items:flex-start;width:100%;padding:.75rem 1rem;border:none;background:var(--bg, #0b1220);border-radius:8px;cursor:pointer;text-align:left}.dictionary-panel-header:hover{background:var(--line, #1c2a54)}.dictionary-panel-title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;color:var(--text-primary, #1a202c)}.dictionary-panel-icon{font-size:.7rem;color:var(--text-muted, #718096)}.dictionary-panel-subtitle{font-size:.8rem;color:var(--text-muted, #718096);margin-top:.25rem}.dictionary-count-badge{display:inline-block;padding:.1rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500;background:var(--accent-bg, #ebf8ff);color:var(--accent-text, #2b6cb0)}.dictionary-panel-body{padding:.75rem 1rem 1rem}.dictionary-error{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin-bottom:.75rem;background:#fff5f5;border:1px solid #feb2b2;border-radius:6px;color:#c53030;font-size:.85rem}.dictionary-error-dismiss,.dictionary-paste-dismiss{border:none;background:none;cursor:pointer;color:inherit;text-decoration:underline;font-size:.8rem}.dictionary-paste-message{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;margin-bottom:.75rem;background:#4299e126;border:1px solid rgba(66,153,225,.3);border-radius:6px;color:#90cdf4;font-size:.85rem}.dictionary-toolbar{display:flex;gap:.5rem;margin-bottom:.75rem}.dictionary-btn{padding:.4rem .75rem;border:1px solid var(--line, #1c2a54);border-radius:4px;background:var(--pane, #0f1730);cursor:pointer;font-size:.8rem;color:var(--text, #e8eefc)}.dictionary-btn:hover:not(:disabled){background:var(--line, #1c2a54)}.dictionary-btn:disabled{opacity:.5;cursor:not-allowed}.dictionary-btn-paste{border-color:#4299e166;color:#90cdf4}.dictionary-btn-save-detail{margin-top:.5rem;background:#2b6cb0;color:#fff;border-color:#2b6cb0}.dictionary-btn-save-detail:hover:not(:disabled){background:#2c5282}.dictionary-loading{text-align:center;padding:1.5rem;color:var(--muted, #8ea1c7);font-size:.85rem}.dictionary-table-wrapper{overflow-x:auto}.dictionary-table{width:100%;border-collapse:collapse;font-size:.85rem}.dictionary-table th{text-align:left;padding:.5rem .75rem;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted, #8ea1c7);border-bottom:2px solid var(--line, #1c2a54);white-space:nowrap}.dictionary-table td{padding:.5rem .75rem;border-bottom:1px solid var(--line, #1c2a54);vertical-align:top;color:var(--text, #e8eefc)}.dict-col-name{width:22%;min-width:160px}.dict-col-desc{width:38%}.dict-col-rule{width:30%}.dict-col-actions{width:10%;text-align:center}.dictionary-row.has-definition{background:var(--pane, #0f1730)}.dictionary-row.no-definition{background:var(--bg, #0b1220)}.dictionary-row:hover{background:var(--line, #1c2a54)}.dict-expand-btn{border:none;background:none;cursor:pointer;font-size:.65rem;color:var(--text-muted, #718096);padding:0 .25rem;margin-right:.25rem}.dict-col-name-text{font-weight:500;font-family:Fira Code,Consolas,monospace;font-size:.82rem;color:var(--text, #e8eefc)}.dict-col-type{color:var(--text-muted, #718096);font-size:.75rem;margin-left:.25rem}.dict-source-badge{display:inline-block;padding:.05rem .35rem;border-radius:3px;font-size:.65rem;font-weight:500;margin-left:.35rem;vertical-align:middle}.badge-manual{background:#e2e8f0;color:#4a5568}.badge-clipboard{background:#fefcbf;color:#975a16}.badge-integration{background:#c6f6d5;color:#276749}.badge-upload{background:#e9d8fd;color:#553c9a}.dict-editable{cursor:text}.dict-placeholder{color:var(--muted, #8ea1c7);font-style:italic}.dict-edit-input{width:100%;padding:.25rem .35rem;border:1px solid var(--line, #1c2a54);border-radius:3px;font-size:.85rem;font-family:inherit;resize:vertical;min-height:2rem;outline:none;background:var(--bg, #0b1220);color:var(--text, #e8eefc)}.dict-edit-input:focus{border-color:#3182ce;box-shadow:0 0 0 1px #3182ce}.dict-delete-btn{border:none;background:none;cursor:pointer;color:#e53e3e;font-size:.75rem;text-decoration:underline}.dict-delete-btn:hover{color:#c53030}.dictionary-detail-row td{padding:.75rem 1rem .75rem 2rem;background:var(--bg, #0b1220)}.dict-detail-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.dict-detail-field{display:flex;flex-direction:column;gap:.25rem}.dict-detail-field label{font-size:.75rem;font-weight:600;color:var(--muted, #8ea1c7);text-transform:uppercase;letter-spacing:.03em}.dict-detail-field input,.dict-detail-field select{padding:.35rem .5rem;border:1px solid var(--line, #1c2a54);border-radius:4px;font-size:.85rem;font-family:inherit;background:var(--bg, #0b1220);color:var(--text, #e8eefc)}.dict-detail-field input:focus,.dict-detail-field select:focus{border-color:#3182ce;outline:none;box-shadow:0 0 0 1px #3182ce}.dictionary-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.5rem;margin-top:.5rem;font-size:.8rem;color:var(--muted, #8ea1c7)}.dictionary-saving{color:#2b6cb0;font-style:italic}@media (max-width: 768px){.dict-detail-fields{grid-template-columns:1fr}.dict-col-rule{display:none}.dictionary-table th:nth-child(3),.dictionary-table td:nth-child(3){display:none}}.ts-container{display:flex;flex-direction:column;gap:.5rem;width:100%}.ts-container.ts-compact{gap:.25rem}.ts-label{font-size:.875rem;font-weight:500;color:#374151}.ts-trigger{min-height:2.75rem;padding:.5rem .75rem;background:#fff;border:1px solid #D1D5DB;border-radius:.5rem;cursor:pointer;transition:border-color .2s,box-shadow .2s}.ts-trigger:hover:not(:disabled){border-color:#2563eb}.ts-trigger:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.ts-trigger:disabled{background:#f3f4f6;cursor:not-allowed;opacity:.6}.ts-selected-value{display:flex;align-items:center;gap:.5rem}.ts-selected-icon{font-size:1rem}.ts-selected-name{font-weight:500;color:#111827}.ts-placeholder{color:#9ca3af}.ts-content{max-height:400px;overflow-y:auto;background:#fff;border:1px solid #E5E7EB;border-radius:.5rem;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;z-index:10000}.ts-category-group{padding:.25rem 0}.ts-category-group:not(:first-child){border-top:1px solid #E5E7EB;margin-top:.25rem;padding-top:.5rem}.ts-category-header{display:flex;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.ts-category-icon{font-size:.875rem}.ts-template-item{padding:.75rem .75rem .75rem 1.5rem;cursor:pointer;transition:background-color .15s}.ts-template-item:hover{background-color:#f3f4f6}.ts-template-item[data-state=checked]{background-color:#eff6ff}.ts-template-option{display:flex;flex-direction:column;gap:.25rem}.ts-template-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.ts-template-name{font-weight:500;color:#111827;font-size:.875rem}.ts-risk-badge{font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap}.ts-template-description{font-size:.75rem;color:#6b7280;line-height:1.4}.ts-template-meta{display:flex;align-items:center;gap:.5rem;margin-top:.25rem}.ts-stations-count{font-size:.6875rem;color:#9ca3af}.ts-system-badge{font-size:.625rem;font-weight:500;color:#6366f1;background:#eef2ff;padding:.0625rem .375rem;border-radius:.25rem}.ts-none-item{padding:.75rem;border-bottom:1px solid #E5E7EB}.ts-none-option{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ts-none-icon{font-size:1rem}.ts-none-label{font-weight:500;color:#111827}.ts-none-desc{font-size:.75rem;color:#6b7280;width:100%;padding-left:1.5rem}.ts-selected-summary{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#6b7280;padding-top:.25rem}.ts-summary-label{color:#9ca3af}.ts-summary-name{font-weight:500;color:#374151}.ts-summary-risk{font-weight:500}.ts-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef2f2;border:1px solid #FECACA;border-radius:.5rem}.ts-error-icon{color:#dc2626}.ts-error-text{flex:1;font-size:.875rem;color:#991b1b}.ts-retry-btn{font-size:.75rem;font-weight:500;color:#2563eb;background:none;border:none;cursor:pointer;padding:.25rem .5rem;border-radius:.25rem}.ts-retry-btn:hover{background:#2563eb1a}.ts-compact .ts-trigger{min-height:2.25rem;padding:.375rem .5rem}.ts-compact .ts-template-description,.ts-compact .ts-template-meta,.ts-compact .ts-none-desc{display:none}.ts-compact .ts-template-item{padding:.5rem .5rem .5rem 1.25rem}.tif-form{display:flex;flex-direction:column;gap:1.5rem;max-width:600px}.tif-header{margin-bottom:.5rem}.tif-title{font-size:1.25rem;font-weight:600;color:#111827;margin:0 0 .5rem}.tif-description{font-size:.875rem;color:#6b7280;margin:0}.tif-progress{display:flex;flex-direction:column;gap:.5rem}.tif-progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.tif-progress-fill{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:3px;transition:width .3s ease}.tif-progress-text{font-size:.75rem;color:#6b7280}.tif-questions{display:flex;flex-direction:column;gap:1.25rem}.tif-question{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#f9fafb;border:1px solid #E5E7EB;border-radius:.5rem;transition:border-color .2s,box-shadow .2s}.tif-question:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.tif-question--error{border-color:#fca5a5;background:#fef2f2}.tif-question-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.tif-question-label{font-size:.875rem;font-weight:500;color:#374151;flex:1}.tif-required{color:#dc2626;margin-left:.25rem}.tif-help-toggle{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;font-size:.75rem;font-weight:600;color:#6b7280;background:#e5e7eb;border:none;border-radius:50%;cursor:pointer;transition:background-color .2s,color .2s;flex-shrink:0}.tif-help-toggle:hover{background:#2563eb;color:#fff}.tif-help-text{font-size:.75rem;color:#6b7280;background:#eff6ff;padding:.5rem .75rem;border-radius:.375rem;border-left:3px solid #2563EB;line-height:1.5}.tif-field{display:flex;flex-direction:column}.tif-input{padding:.625rem .75rem;font-size:.875rem;color:#111827;background:#fff;border:1px solid #D1D5DB;border-radius:.375rem;transition:border-color .2s,box-shadow .2s}.tif-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.tif-input:disabled{background:#f3f4f6;cursor:not-allowed}.tif-input--error{border-color:#dc2626}.tif-input::placeholder{color:#9ca3af}.tif-select{padding:.625rem 2.5rem .625rem .75rem;font-size:.875rem;color:#111827;background-color:#fff;border:1px solid #D1D5DB;border-radius:.375rem;cursor:pointer;transition:border-color .2s,box-shadow .2s;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236B7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.25rem}.tif-select option{color:#111827;background-color:#fff}.tif-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.tif-select:disabled{background-color:#f3f4f6;cursor:not-allowed}.tif-select--error{border-color:#dc2626}.tif-multiselect{display:flex;flex-wrap:wrap;gap:.5rem}.tif-multiselect--error .tif-multiselect-option{border-color:#fca5a5}.tif-multiselect-option{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#fff;border:1px solid #D1D5DB;border-radius:.375rem;cursor:pointer;transition:background-color .2s,border-color .2s}.tif-multiselect-option:hover:not(.tif-multiselect-option--disabled){border-color:#2563eb}.tif-multiselect-option--selected{background:#eff6ff;border-color:#2563eb}.tif-multiselect-option--disabled{opacity:.5;cursor:not-allowed}.tif-multiselect-option input[type=checkbox]{width:1rem;height:1rem;accent-color:#2563EB;cursor:pointer}.tif-multiselect-label{font-size:.8125rem;color:#374151}.tif-toggle-container{display:flex;align-items:center}.tif-toggle{display:flex;align-items:center;gap:.75rem;padding:.375rem .75rem;background:#fff;border:1px solid #D1D5DB;border-radius:.375rem;cursor:pointer;transition:border-color .2s}.tif-toggle:hover:not(:disabled){border-color:#2563eb}.tif-toggle:disabled{opacity:.5;cursor:not-allowed}.tif-toggle--error{border-color:#dc2626}.tif-toggle-track{position:relative;width:2.5rem;height:1.375rem;background:#d1d5db;border-radius:.75rem;transition:background-color .2s}.tif-toggle--on .tif-toggle-track{background:#2563eb}.tif-toggle-thumb{position:absolute;top:2px;left:2px;width:1.125rem;height:1.125rem;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0000001a;transition:transform .2s}.tif-toggle--on .tif-toggle-thumb{transform:translate(1.125rem)}.tif-toggle-label{font-size:.875rem;font-weight:500;color:#374151;min-width:2rem}.tif-range-container{display:flex;flex-direction:column;gap:.5rem}.tif-range{width:100%;height:6px;background:#e5e7eb;border-radius:3px;appearance:none;cursor:pointer}.tif-range::-webkit-slider-thumb{appearance:none;width:1.25rem;height:1.25rem;background:#2563eb;border-radius:50%;cursor:pointer;transition:box-shadow .2s}.tif-range::-webkit-slider-thumb:hover{box-shadow:0 0 0 4px #2563eb33}.tif-range::-moz-range-thumb{width:1.25rem;height:1.25rem;background:#2563eb;border:none;border-radius:50%;cursor:pointer}.tif-range:disabled{opacity:.5;cursor:not-allowed}.tif-range--error::-webkit-slider-thumb{background:#dc2626}.tif-range-labels{display:flex;justify-content:space-between;align-items:center}.tif-range-min,.tif-range-max{font-size:.6875rem;color:#9ca3af}.tif-range-value{font-size:.875rem;font-weight:600;color:#2563eb;background:#eff6ff;padding:.125rem .5rem;border-radius:.25rem}.tif-error-message{font-size:.75rem;color:#dc2626;display:flex;align-items:center;gap:.25rem}.tif-error-message:before{content:"!";display:flex;align-items:center;justify-content:center;width:.875rem;height:.875rem;font-size:.625rem;font-weight:700;color:#fff;background:#dc2626;border-radius:50%}.tif-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #E5E7EB}.tif-btn{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;border-radius:.375rem;cursor:pointer;transition:background-color .2s,box-shadow .2s}.tif-btn:disabled{opacity:.5;cursor:not-allowed}.tif-btn--cancel{color:#374151;background:#fff;border:1px solid #D1D5DB}.tif-btn--cancel:hover:not(:disabled){background:#f3f4f6}.tif-btn--submit{color:#fff;background:#2563eb;border:1px solid #2563EB}.tif-btn--submit:hover:not(:disabled){background:#1d4ed8}.tif-btn--submit:disabled{background:#93c5fd;border-color:#93c5fd}.databricks-table-browser{display:flex;height:500px;border:1px solid var(--color-border, #e0e0e0);border-radius:8px;overflow:hidden}.browser-tree{width:300px;min-width:250px;border-right:1px solid var(--color-border, #e0e0e0);background:var(--color-bg-secondary, #f8f9fa);display:flex;flex-direction:column}.tree-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border, #e0e0e0);font-weight:600;font-size:14px;background:#fff}.refresh-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;transition:background .2s}.refresh-btn:hover{background:var(--color-bg-hover, #e9ecef)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.warehouse-status-badge{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:500;padding:2px 8px;border-radius:10px;margin-left:auto;margin-right:6px}.warehouse-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.warehouse-running .warehouse-dot{background:#22c55e;box-shadow:0 0 4px #22c55e80}.warehouse-running{color:#16a34a;background:#dcfce7}.warehouse-stopped .warehouse-dot{background:#ef4444;box-shadow:0 0 4px #ef444480}.warehouse-stopped{color:#dc2626;background:#fee2e2}.warehouse-starting .warehouse-dot{background:#f59e0b;box-shadow:0 0 4px #f59e0b80;animation:pulse-dot 1.2s infinite}.warehouse-starting{color:#d97706;background:#fef3c7}.warehouse-stopping .warehouse-dot{background:#f59e0b}.warehouse-stopping{color:#d97706;background:#fef3c7}.warehouse-unknown .warehouse-dot{background:#9ca3af}.warehouse-unknown{color:#6b7280;background:#f3f4f6}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.browser-error{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;margin:8px;background:#fff3f3;border:1px solid #ffcccc;border-radius:4px;font-size:12px;color:#c00}.browser-error button{background:none;border:none;color:#c00;cursor:pointer;font-size:16px;line-height:1}.loading-indicator{padding:16px;text-align:center;color:var(--color-text-secondary, #666);font-size:13px}.tree-root{list-style:none;margin:0;padding:8px;overflow-y:auto;flex:1}.tree-item{list-style:none}.tree-children{list-style:none;margin:0;padding:0 0 0 16px}.tree-node{display:flex;align-items:center;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:13px;transition:background .2s}.tree-node:hover{background:var(--color-bg-hover, #e9ecef)}.tree-item.selected>.tree-node{background:var(--color-primary-light, #e3f2fd)}.expand-icon{width:16px;font-size:10px;color:var(--color-text-secondary, #666);text-align:center}.node-icon{margin-right:6px}.node-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-type{font-size:10px;color:var(--color-text-secondary, #666);background:var(--color-bg-secondary, #f0f4f8);padding:2px 6px;border-radius:4px;margin-left:6px}.loading-item{padding:8px 8px 8px 24px;color:var(--color-text-secondary, #666);font-size:12px;font-style:italic}.browser-details{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.details-empty,.details-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary, #666)}.details-loading .loading-spinner{width:32px;height:32px;border:3px solid var(--color-border, #e0e0e0);border-top-color:var(--color-primary, #4a90d9);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.details-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--color-border, #e0e0e0)}.details-header h3{margin:0;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analyze-btn{padding:8px 16px;background:var(--color-primary, #4a90d9);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s;white-space:nowrap}.analyze-btn:hover{background:var(--color-primary-dark, #3a7fc9)}.details-section{padding:16px;border-bottom:1px solid var(--color-border, #e0e0e0);flex:1;overflow-y:auto;min-height:0}.details-section:last-child{border-bottom:none;flex:1;overflow-y:auto;display:flex;flex-direction:column}.details-section h4{margin:0 0 12px;font-size:13px;font-weight:600;color:var(--color-text-secondary, #666)}.columns-table{width:100%;border-collapse:collapse;font-size:12px}.columns-table th,.columns-table td{padding:6px 12px;text-align:left;border-bottom:1px solid var(--color-border, #e0e0e0)}.columns-table th{position:sticky;top:0;background:var(--color-bg-secondary, #f8f9fa);font-weight:600;color:var(--color-text-secondary, #666);z-index:1}.columns-table .type-cell{font-family:monospace;font-size:11px;color:var(--color-primary, #4a90d9)}.preview-table-container{flex:1;overflow:auto;border:1px solid var(--color-border, #e0e0e0);border-radius:4px}.preview-table{width:100%;border-collapse:collapse;font-size:11px}.preview-table th,.preview-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--color-border, #e0e0e0);border-right:1px solid var(--color-border, #e0e0e0);white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.preview-table th{position:sticky;top:0;background:var(--color-bg-secondary, #f8f9fa);font-weight:600;color:var(--color-text-secondary, #666)}.preview-table th:last-child,.preview-table td:last-child{border-right:none}.null-value{color:#999;font-style:italic}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border:none;border-radius:var(--radius-button);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal);cursor:pointer;transition:var(--transition-all);box-shadow:var(--shadow-button);overflow:hidden}.btn-primary{background-color:var(--color-primary-500);color:var(--color-text-primary)}.btn-primary:hover{background-color:var(--color-primary-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-primary:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-primary:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.btn-secondary{background-color:transparent;color:var(--color-primary-500);border:var(--border-width-medium) solid var(--color-primary-500)}.btn-secondary:hover{background-color:var(--color-overlay-hover);border-color:var(--color-primary-400);color:var(--color-primary-400);transform:translateY(-2px)}.btn-secondary:active{transform:translateY(0)}.btn-success{background-color:var(--color-success-500);color:var(--color-text-primary)}.btn-success:hover{background-color:var(--color-success-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-warning{background-color:var(--color-warning-500);color:var(--color-navy-900)}.btn-warning:hover{background-color:var(--color-warning-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-error{background-color:var(--color-error-500);color:var(--color-text-primary)}.btn-error:hover{background-color:var(--color-error-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-h4)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.btn-icon{display:inline-flex;align-items:center;gap:var(--space-2)}.btn-icon svg{width:20px;height:20px;transition:var(--transition-transform)}.btn-icon:hover svg{transform:scale(1.1)}.btn-loading{position:relative;color:transparent!important;pointer-events:none}.btn-loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:var(--radius-full);animation:spin .6s linear infinite}.btn-ripple:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:var(--radius-full);background-color:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-ripple:active:before{width:300px;height:300px}.card{background-color:var(--color-card-background);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--radius-card);padding:var(--space-card);transition:var(--transition-all);box-shadow:var(--shadow-card)}.card-hover:hover{background-color:var(--color-card-hover);border-color:var(--color-primary-500);transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.card-clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.card-clickable:active{transform:translateY(-2px);box-shadow:var(--shadow-card)}.card-status{position:relative;border-left:var(--border-width-thick) solid transparent;transition:var(--transition-all)}.card-status.status-success{border-left-color:var(--color-success-500)}.card-status.status-success:hover{box-shadow:0 0 20px #10b98133}.card-status.status-warning{border-left-color:var(--color-warning-500)}.card-status.status-warning:hover{box-shadow:0 0 20px #f59e0b33}.card-status.status-error{border-left-color:var(--color-error-500)}.card-status.status-error:hover{box-shadow:0 0 20px #ef444433}.card-enter{animation:slideInUp var(--duration-normal) var(--ease-default)}.card-glow:hover{box-shadow:0 0 30px #17a2b84d}.progress-bar{position:relative;width:100%;height:8px;background-color:var(--color-input-background);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background-color:var(--color-primary-500);border-radius:var(--radius-full);transition:width var(--duration-slow) var(--ease-out);position:relative}.progress-bar-fill:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}.progress-bar-success .progress-bar-fill{background-color:var(--color-success-500)}.progress-bar-warning .progress-bar-fill{background-color:var(--color-warning-500)}.progress-bar-error .progress-bar-fill{background-color:var(--color-error-500)}.input{width:100%;padding:var(--space-3) var(--space-4);background-color:var(--color-input-background);border:var(--border-width-thin) solid var(--color-input-border);border-radius:var(--radius-input);color:var(--color-text-primary);font-size:var(--font-size-base);transition:var(--transition-all)}.input:hover{border-color:var(--color-primary-500);background-color:#00000040}.input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #17a2b833;background-color:#0000004d}.input:disabled{opacity:.5;cursor:not-allowed}.input::placeholder{color:var(--color-text-tertiary)}.input-error{border-color:var(--color-error-500)}.input-error:focus{box-shadow:0 0 0 3px #ef444433}.checkbox,.radio{position:relative;display:inline-flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox input,.radio input{position:absolute;opacity:0;cursor:pointer}.checkbox-custom,.radio-custom{width:20px;height:20px;border:var(--border-width-medium) solid var(--color-input-border);border-radius:var(--radius-sm);margin-right:var(--space-2);transition:var(--transition-all);display:flex;align-items:center;justify-content:center}.radio-custom{border-radius:var(--radius-full)}.checkbox:hover .checkbox-custom,.radio:hover .radio-custom{border-color:var(--color-primary-500);background-color:var(--color-overlay-hover)}.checkbox input:checked~.checkbox-custom,.radio input:checked~.radio-custom{background-color:var(--color-primary-500);border-color:var(--color-primary-500)}.checkbox input:checked~.checkbox-custom:after{content:"✓";color:#fff;font-size:14px;font-weight:var(--font-weight-bold);animation:scaleIn var(--duration-fast) var(--ease-spring)}.radio input:checked~.radio-custom:after{content:"";width:8px;height:8px;border-radius:var(--radius-full);background-color:#fff;animation:scaleIn var(--duration-fast) var(--ease-spring)}.toggle{position:relative;display:inline-block;width:48px;height:24px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:var(--color-gray-600);border-radius:var(--radius-full);transition:var(--transition-all)}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;border-radius:var(--radius-full);transition:var(--transition-all)}.toggle input:checked~.toggle-slider{background-color:var(--color-primary-500)}.toggle input:checked~.toggle-slider:before{transform:translate(24px)}.toggle:hover .toggle-slider{box-shadow:0 0 8px #17a2b84d}.tooltip{position:relative;display:inline-block;cursor:help}.tooltip-text{visibility:hidden;opacity:0;position:absolute;bottom:125%;left:50%;transform:translate(-50%);padding:var(--space-2) var(--space-3);background-color:var(--color-navy-700);color:var(--color-text-primary);font-size:var(--font-size-sm);border-radius:var(--radius-md);white-space:nowrap;box-shadow:var(--shadow-lg);z-index:var(--z-index-tooltip);transition:var(--transition-opacity);pointer-events:none}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--color-navy-700)}.tooltip:hover .tooltip-text{visibility:visible;opacity:1}.badge-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.badge-pulse:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:inherit;background-color:inherit;animation:ping 1s cubic-bezier(0,0,.2,1) infinite}@keyframes ping{75%,to{transform:scale(2);opacity:0}}.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 2s linear infinite;border-radius:var(--radius-md)}.skeleton-line{height:1rem;margin-bottom:var(--space-2)}.skeleton-title{height:1.5rem;width:60%;margin-bottom:var(--space-4)}.skeleton-text{height:1rem;margin-bottom:var(--space-2)}.skeleton-avatar{width:48px;height:48px;border-radius:var(--radius-full)}.skeleton-card{padding:var(--space-card);border-radius:var(--radius-card)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.btn:hover,.card-hover:hover{transform:none}}.fairy-dashboard-panel-overlay{position:fixed;inset:0;background-color:#00000080;z-index:var(--z-index-modal);display:flex;justify-content:flex-end;animation:fadeIn var(--duration-normal) var(--ease-default)}.fairy-dashboard-panel{width:500px;max-width:90vw;height:100vh;background-color:var(--color-card-background);box-shadow:var(--shadow-2xl);overflow-y:auto;animation:slideInRight var(--duration-normal) var(--ease-default)}.fairy-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6);border-bottom:var(--border-width-thin) solid var(--color-border-primary);background:linear-gradient(135deg,var(--color-primary-500),var(--color-navy-700));color:var(--color-text-primary)}.fairy-header h3{flex:1;margin:0;font-size:var(--font-size-h3);font-weight:var(--font-weight-bold)}.fairy-mode-badge{padding:var(--space-1) var(--space-3);background-color:#fff3;border-radius:var(--radius-badge);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.fairy-close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border:none;border-radius:var(--radius-full);color:var(--color-text-primary);font-size:24px;cursor:pointer;transition:var(--transition-all)}.fairy-close-btn:hover{background-color:#fff3;transform:scale(1.1)}.fairy-loading,.fairy-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);text-align:center}.fairy-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top-color:var(--color-primary-500);border-radius:var(--radius-full);animation:spin .8s linear infinite;margin-bottom:var(--space-4)}.fairy-error{color:var(--color-error-500)}.fairy-portfolio-summary{padding:var(--space-6);border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.fairy-portfolio-summary h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.portfolio-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-4)}.stat-card{background-color:var(--color-card-hover);border:var(--border-width-thin) solid var(--color-border-primary);border-radius:var(--radius-card);padding:var(--space-4);text-align:center;transition:var(--transition-all)}.stat-card:hover{border-color:var(--color-primary-500);box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.stat-card.stat-warning{border-color:var(--color-warning-500);background-color:var(--color-status-warning-bg)}.stat-value{font-size:var(--font-size-h2);font-weight:var(--font-weight-bold);color:var(--color-primary-500);margin-bottom:var(--space-2)}.stat-card.stat-warning .stat-value{color:var(--color-warning-500)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.stat-trend{margin-top:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.stat-trend.up{color:var(--color-success-500)}.stat-trend.up:before{content:"↑ "}.stat-trend.down{color:var(--color-error-500)}.stat-trend.down:before{content:"↓ "}.fairy-suggestions{padding:var(--space-6);border-bottom:var(--border-width-thin) solid var(--color-border-primary)}.fairy-suggestions h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.suggestion-card{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background-color:var(--color-card-hover);border:var(--border-width-medium) solid transparent;border-radius:var(--radius-card);margin-bottom:var(--space-3);transition:var(--transition-all);animation:slideInUp var(--duration-normal) var(--ease-default)}.suggestion-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.suggestion-card.priority-high{border-left-color:var(--color-error-500);background:linear-gradient(90deg,rgba(239,68,68,.1),transparent)}.suggestion-card.priority-medium{border-left-color:var(--color-warning-500);background:linear-gradient(90deg,rgba(245,158,11,.1),transparent)}.suggestion-card.priority-low{border-left-color:var(--color-info-500);background:linear-gradient(90deg,rgba(59,130,246,.1),transparent)}.suggestion-icon{font-size:24px;flex-shrink:0}.suggestion-content{flex:1}.suggestion-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.suggestion-description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.suggestion-actions{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0}.suggestion-actions .btn{white-space:nowrap}.fairy-chat{padding:var(--space-6);display:flex;flex-direction:column;height:calc(100vh - 600px);min-height:300px}.fairy-chat h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.fairy-chat-messages{flex:1;overflow-y:auto;margin-bottom:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.chat-message{display:flex;gap:var(--space-3);animation:fadeIn var(--duration-fast) var(--ease-default)}.chat-message.user{flex-direction:row-reverse}.message-avatar{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);background-color:var(--color-primary-500);font-size:16px;flex-shrink:0}.chat-message.user .message-avatar{background-color:var(--color-navy-700)}.message-content{flex:1;background-color:var(--color-card-hover);border-radius:var(--radius-card);padding:var(--space-3);max-width:80%}.chat-message.user .message-content{background-color:var(--color-primary-500);color:var(--color-text-primary)}.message-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);white-space:pre-wrap}.message-suggestions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.suggestion-chip{padding:var(--space-2) var(--space-3);background-color:var(--color-primary-500);color:var(--color-text-primary);border:none;border-radius:var(--radius-badge);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-all)}.suggestion-chip:hover{background-color:var(--color-primary-600);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.message-related{margin-top:var(--space-2);padding-top:var(--space-2);border-top:var(--border-width-thin) solid var(--color-border-primary);color:var(--color-text-tertiary)}.fairy-chat-input{display:flex;gap:var(--space-2)}.fairy-chat-input input{flex:1;padding:var(--space-3) var(--space-4);background-color:var(--color-input-background);border:var(--border-width-thin) solid var(--color-input-border);border-radius:var(--radius-input);color:var(--color-text-primary);font-size:var(--font-size-base);transition:var(--transition-all)}.fairy-chat-input input:focus{outline:none;border-color:var(--color-primary-500);box-shadow:0 0 0 3px #17a2b833}.fairy-chat-input button{padding:var(--space-3) var(--space-6);background-color:var(--color-primary-500);color:var(--color-text-primary);border:none;border-radius:var(--radius-button);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-all)}.fairy-chat-input button:hover:not(:disabled){background-color:var(--color-primary-600);transform:translateY(-2px);box-shadow:var(--shadow-md)}.fairy-chat-input button:disabled{opacity:.5;cursor:not-allowed}.fairy-welcome-overlay{position:fixed;inset:0;background-color:#000000b3;z-index:var(--z-index-modal);display:flex;align-items:center;justify-content:center;animation:fadeIn var(--duration-normal) var(--ease-default);padding:var(--space-4)}.fairy-welcome-modal{width:600px;max-width:100%;max-height:90vh;background-color:var(--color-card-background);border-radius:var(--radius-card);box-shadow:var(--shadow-2xl);overflow-y:auto}.modal-header{position:relative;padding:var(--space-8);background:linear-gradient(135deg,var(--color-primary-500),var(--color-navy-700));color:var(--color-text-primary);text-align:center;border-radius:var(--radius-card) var(--radius-card) 0 0}.modal-icon{font-size:48px;margin-bottom:var(--space-4)}.modal-header h2{margin:0;font-size:var(--font-size-h2);font-weight:var(--font-weight-bold)}.modal-close-btn{position:absolute;top:var(--space-4);right:var(--space-4);width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#ffffff1a;border:none;border-radius:var(--radius-full);color:var(--color-text-primary);font-size:24px;cursor:pointer;transition:var(--transition-all)}.modal-close-btn:hover{background-color:#fff3;transform:scale(1.1)}.modal-body{padding:var(--space-8)}.modal-intro{font-size:var(--font-size-h4);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8);text-align:center;color:var(--color-text-primary)}.welcome-steps{margin-bottom:var(--space-8)}.step{display:flex;gap:var(--space-4);margin-bottom:var(--space-6);animation:slideInUp var(--duration-normal) var(--ease-default);animation-fill-mode:both}.step:nth-child(1){animation-delay:0ms}.step:nth-child(2){animation-delay:.1s}.step:nth-child(3){animation-delay:.2s}.step-icon{font-size:32px;flex-shrink:0}.step-title{font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-primary-500);margin-bottom:var(--space-2)}.step-description{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.fairy-capabilities{background-color:var(--color-card-hover);border-left:var(--border-width-thick) solid var(--color-primary-500);padding:var(--space-6);border-radius:var(--radius-md)}.fairy-capabilities h4{margin:0 0 var(--space-4) 0;font-size:var(--font-size-h4);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.fairy-capabilities ul{list-style:none;padding:0;margin:0}.fairy-capabilities li{padding:var(--space-2) 0;font-size:var(--font-size-base);color:var(--color-text-secondary)}.modal-footer{display:flex;flex-direction:column;gap:var(--space-3);padding:0 var(--space-8) var(--space-6)}.modal-footer .btn{width:100%;justify-content:center}.modal-note{padding:var(--space-4);text-align:center;color:var(--color-text-tertiary);font-size:var(--font-size-sm);border-top:var(--border-width-thin) solid var(--color-border-primary)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@media (max-width: 768px){.fairy-dashboard-panel{width:100vw}.portfolio-stats{grid-template-columns:repeat(2,1fr)}.fairy-welcome-modal{width:95vw;margin:var(--space-4)}.modal-header,.modal-body,.modal-footer{padding:var(--space-4)}.step{flex-direction:column;gap:var(--space-2)}.step-icon{font-size:24px}}@media (max-width: 480px){.portfolio-stats{grid-template-columns:1fr}.suggestion-card{flex-direction:column}.suggestion-actions,.suggestion-actions .btn{width:100%}}@media (prefers-reduced-motion: reduce){.fairy-dashboard-panel-overlay,.fairy-dashboard-panel,.fairy-welcome-overlay,.fairy-welcome-modal,.suggestion-card,.chat-message,.step{animation:none!important}.fairy-dashboard-panel{transform:none}*{transition-duration:.01ms!important}}.fairy-close-btn:focus-visible,.modal-close-btn:focus-visible,.suggestion-chip:focus-visible,.fairy-chat-input button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.CircularProgressbar{width:100%;vertical-align:middle}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;-webkit-transition:stroke-dashoffset .5s ease 0s;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;font-size:20px;dominant-baseline:middle;text-anchor:middle}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:transparent}.prism-container{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px;padding:1.5rem 2rem;box-shadow:0 8px 32px #0000004d;color:#e2e8f0;max-width:1000px;margin:0 auto}.prism-container.prism-loading,.prism-container.prism-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.prism-spinner{width:40px;height:40px;border:3px solid rgba(59,130,246,.2);border-top-color:#3b82f6;border-radius:50%;animation:prism-spin 1s linear infinite}@keyframes prism-spin{to{transform:rotate(360deg)}}.prism-error-content{text-align:center;max-width:400px}.prism-error-content h3{margin:0 0 .5rem;font-size:1.125rem;color:#f1f5f9}.prism-error-content>p{color:#94a3b8;font-size:.875rem;margin:0 0 1rem}.error-detail{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;padding:.75rem;color:#fca5a5;font-size:.8125rem;margin-bottom:1rem;text-align:left}.error-actions{text-align:left;color:#94a3b8;font-size:.8125rem}.error-actions p{margin:0 0 .5rem}.error-actions ul{margin:0;padding-left:1.25rem}.error-actions li{margin-bottom:.375rem}.prism-container.prism-awaiting{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.prism-awaiting-content{text-align:center;max-width:480px}.awaiting-icon{font-size:3rem;margin-bottom:1rem;opacity:.8;animation:awaiting-pulse 2s ease-in-out infinite}@keyframes awaiting-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.prism-awaiting-content h3{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#f1f5f9}.prism-awaiting-content>p{color:#94a3b8;font-size:.9375rem;line-height:1.6;margin:0 0 1rem}.awaiting-instruction{color:#cbd5e1;font-size:.9375rem}.awaiting-instruction strong{color:#60a5fa}.awaiting-preview{margin-top:1.5rem;padding:1rem;background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:8px}.preview-label{display:block;font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.preview-flow{display:flex;align-items:center;justify-content:center;gap:.75rem}.flow-item{padding:.5rem .75rem;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);border-radius:6px;font-size:.8125rem;color:#e2e8f0}.flow-arrow{color:#64748b;font-size:1rem}.prism-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(148,163,184,.1)}.prism-title h2{font-size:1.375rem;font-weight:700;color:#f1f5f9;margin:0 0 .25rem}.prism-subtitle{font-size:.8125rem;color:#94a3b8;font-weight:500}.prism-badge{display:flex;align-items:center;gap:.5rem;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:20px;padding:.375rem .875rem;font-size:.75rem;color:#6ee7b7}.prism-badge .badge-icon{font-size:.875rem}.prism-summary-bar{display:flex;align-items:center;justify-content:center;gap:.5rem;background:#1e293b80;border:1px solid rgba(148,163,184,.1);border-radius:12px;padding:.875rem 1.5rem;margin-bottom:1.5rem}.summary-step{display:flex;flex-direction:column;align-items:center;padding:.5rem 1rem;border-radius:8px;transition:all .2s ease}.summary-step:hover{background:#94a3b81a}.summary-step.highlight{background:#8b5cf626;border:1px solid rgba(139,92,246,.3)}.summary-step.highlight .step-number{color:#a78bfa}.summary-step.success{background:#10b98126;border:1px solid rgba(16,185,129,.3)}.summary-step.success .step-number{color:#6ee7b7}.step-number{font-size:1.5rem;font-weight:700;color:#f1f5f9;line-height:1}.step-label{font-size:.6875rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.summary-arrow{color:#475569;font-size:1.25rem;font-weight:300}.prism-visualization{position:relative;min-height:480px}.prism-svg-layer{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;overflow:visible;z-index:1}.prism-path{transition:all .3s ease}.prism-glow{opacity:.15}@keyframes prism-pulse{0%,to{opacity:.1}50%{opacity:.2}}.prism-column{position:absolute;top:0;height:100%;width:180px;z-index:10}.prism-column-left{left:0}.prism-column-right{right:0}.column-header{display:flex;flex-direction:column;align-items:center;margin-bottom:.5rem}.column-label{font-size:.625rem;color:#64748b;text-transform:uppercase;letter-spacing:1px;font-weight:600}.column-title{font-size:.8125rem;color:#94a3b8;font-weight:500}.column-nodes{position:relative;height:calc(100% - 40px)}.prism-node{position:absolute;width:100%;display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:#1e293b;border:1px solid #334155;border-radius:8px;cursor:pointer;transition:all .25s ease;transform:translateY(-50%)}.prism-node:hover{border-color:#3b82f6;box-shadow:0 4px 12px #3b82f633;transform:translateY(-50%) scale(1.02)}.prism-node.active{border-color:#3b82f6;background:#3b82f61a;box-shadow:0 0 20px #3b82f64d}.prism-node.dimmed{opacity:.3;transform:translateY(-50%) scale(.98)}.prism-station .node-icon{font-size:1.25rem;flex-shrink:0}.node-content{flex:1;min-width:0;display:flex;flex-direction:column}.node-name{font-size:.75rem;font-weight:600;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-metric,.node-tasks{font-size:.625rem;color:#64748b}.node-badge{font-size:.6875rem;font-weight:700;padding:.125rem .375rem;border-radius:4px;flex-shrink:0}.findings-badge{background:#ef444426;color:#fca5a5;border:1px solid rgba(239,68,68,.3)}.source-badge{display:inline-block;font-size:.5rem;font-weight:700;padding:.1rem .25rem;border-radius:3px;text-transform:uppercase;letter-spacing:.02em;margin-left:.25rem}.source-badge--org{background:#a855f733;color:#c4b5fd;border:1px solid rgba(168,85,247,.4)}.source-badge--merged{background:#3b82f633;color:#93c5fd;border:1px solid rgba(59,130,246,.4)}.prism-driver{border-width:2px}.prism-driver .node-value{font-size:.8125rem;font-weight:700;flex-shrink:0}.prism-engine{position:absolute;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;width:160px;height:120px;background:linear-gradient(135deg,#1e3a5f,#0f172a);border:2px solid #3b82f6;border-radius:16px;box-shadow:0 0 30px #3b82f64d,0 8px 32px #0006;transform:translate(0)}.engine-label{font-size:.5625rem;color:#60a5fa;text-transform:uppercase;letter-spacing:2px;font-weight:700;opacity:.8}.engine-title{font-size:1.25rem;font-weight:800;color:#f1f5f9;margin:.25rem 0}.engine-stats{display:flex;flex-direction:column;align-items:center;margin-top:.25rem}.engine-stat{display:flex;align-items:center;gap:.375rem}.engine-stat .stat-value{font-size:1rem;font-weight:700;color:#e2e8f0}.engine-stat .stat-arrow{color:#3b82f6;font-size:.875rem}.engine-stats .stat-label{font-size:.5625rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-top:.125rem}.engine-badge{margin-top:.5rem;padding:.25rem .625rem;background:#8b5cf633;border:1px solid rgba(139,92,246,.4);border-radius:12px;font-size:.5625rem;color:#c4b5fd;font-weight:600}.prism-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.25rem;padding-top:1rem;border-top:1px solid rgba(148,163,184,.1)}.footer-legend{display:flex;gap:1rem}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.6875rem;color:#94a3b8}.legend-color{width:10px;height:10px;border-radius:2px}.footer-total{display:flex;flex-direction:column;align-items:flex-end}.total-label{font-size:.625rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.total-value{font-size:1.5rem;font-weight:800;color:#6ee7b7}@media (max-width: 900px){.prism-container{padding:1rem 1.25rem}.prism-summary-bar{flex-wrap:wrap;gap:.25rem}.summary-step{padding:.375rem .625rem}.step-number{font-size:1.125rem}.prism-column{width:150px}.prism-engine{width:140px;height:100px}.engine-title{font-size:1rem}}@keyframes path-flow{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}.prism-path-animated{stroke-dasharray:10 5;animation:path-flow 2s linear infinite}.severity-indicator{position:absolute;top:-4px;left:-4px;width:10px;height:10px;border-radius:50%;border:2px solid;box-shadow:0 0 6px #0000004d;z-index:5}.prism-tooltip{max-width:280px;background:#1e293b!important;border:1px solid #334155!important;border-radius:8px!important;padding:0!important;box-shadow:0 4px 12px #0006!important}.prism-tooltip__content{padding:.75rem}.prism-tooltip__header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.prism-tooltip__icon{font-size:1rem}.prism-tooltip__title{font-weight:600;font-size:.875rem;color:#f1f5f9;flex:1}.prism-tooltip__severity{font-size:1rem;font-weight:700}.prism-tooltip__summary{font-size:.8125rem;color:#94a3b8;line-height:1.5;margin:0 0 .5rem}.prism-tooltip__metric{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#1e293b80;border-radius:6px}.prism-tooltip__metric-label{font-size:.6875rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.prism-tooltip__metric-value{font-size:.8125rem;font-weight:600;color:#e2e8f0}.prism-node.prism-driver.governance-driver{position:relative}.prism-node .governance-badge{position:absolute;top:-8px;left:-8px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#805ad5,#6b46c1);border-radius:50%;font-size:12px;box-shadow:0 2px 4px #6b46c166;border:2px solid rgba(255,255,255,.2);z-index:10}.prism-node.prism-driver.governance-driver:hover .governance-badge{transform:scale(1.1);box-shadow:0 3px 8px #6b46c199}.causal-flow-diagram{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;border:1px solid #e2e8f0}.causal-flow-diagram--compact{padding:.75rem;margin-top:.75rem}.causal-flow-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid #e2e8f0}.causal-flow-title{margin:0;font-size:.875rem;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.05em}.causal-confidence-badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:500}.causal-confidence-badge--high{background-color:#dcfce7;color:#166534;border:1px solid #86efac}.causal-confidence-badge--medium{background-color:#fef9c3;color:#854d0e;border:1px solid #fde047}.causal-confidence-badge--low{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.causal-flow-boxes{display:flex;align-items:stretch;gap:.5rem;overflow-x:auto;padding:.5rem 0}.causal-flow-boxes::-webkit-scrollbar{height:6px}.causal-flow-boxes::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.causal-flow-boxes::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.causal-flow-box{flex:1;min-width:140px;max-width:200px;padding:.75rem;border-radius:8px;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 1px 3px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.causal-flow-box:hover{transform:translateY(-2px);box-shadow:0 4px 6px #0000001a}.causal-flow-box--compact{min-width:100px;max-width:150px;padding:.5rem}.causal-flow-box__label{font-size:.625rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.8}.causal-flow-box__content{margin:0;font-size:.8125rem;line-height:1.4;font-weight:500}.causal-flow-box--compact .causal-flow-box__content{font-size:.75rem}.causal-flow-box--problem{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border:1px solid #fda4af}.causal-flow-box--problem .causal-flow-box__label{color:#be123c}.causal-flow-box--problem .causal-flow-box__content{color:#9f1239}.causal-flow-box--cause{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fcd34d}.causal-flow-box--cause .causal-flow-box__label{color:#b45309}.causal-flow-box--cause .causal-flow-box__content{color:#92400e}.causal-flow-box--intervention{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #93c5fd}.causal-flow-box--intervention .causal-flow-box__label{color:#1d4ed8}.causal-flow-box--intervention .causal-flow-box__content{color:#1e40af}.causal-flow-box--outcome{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac}.causal-flow-box--outcome .causal-flow-box__label{color:#15803d}.causal-flow-box--outcome .causal-flow-box__content{color:#166534}.causal-flow-arrow{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;color:#94a3b8}.causal-flow-arrow svg{width:20px;height:20px}.causal-flow-arrow--compact{width:16px}.causal-flow-arrow--compact svg{width:14px;height:14px}.causal-counterfactual-banner{display:flex;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #f59e0b;border-radius:6px;border-left:4px solid #f59e0b}.causal-counterfactual-icon{flex-shrink:0;width:18px;height:18px;color:#d97706;margin-top:2px}.causal-counterfactual-text{font-size:.8125rem;line-height:1.5;color:#92400e}.causal-counterfactual-text strong{font-weight:600;color:#78350f}@media (max-width: 768px){.causal-flow-boxes{flex-direction:column;align-items:center}.causal-flow-box{min-width:unset;max-width:100%;width:100%}.causal-flow-arrow{transform:rotate(90deg);width:auto;height:24px}}@media (prefers-color-scheme: dark){.causal-flow-diagram{background:linear-gradient(135deg,#1e293b,#0f172a);border-color:#334155}.causal-flow-header{border-bottom-color:#334155}.causal-flow-title{color:#e2e8f0}.causal-flow-arrow{color:#64748b}}@media print{.causal-flow-diagram{background:#fff;border:1px solid #000;page-break-inside:avoid}.causal-flow-box{box-shadow:none;border:1px solid #000}.causal-counterfactual-banner{background:#f5f5f5;border-color:#000}}.citation-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:12px;margin-bottom:8px;transition:box-shadow .2s ease}.citation-card:hover{box-shadow:0 2px 8px #00000014}.citation-card--compact{padding:8px;margin-bottom:6px}.citation-card__header{display:flex;align-items:flex-start;gap:8px;margin-bottom:6px}.citation-card__title{font-size:14px;font-weight:600;color:#2563eb;text-decoration:none;line-height:1.4;flex:1}.citation-card__title:hover{text-decoration:underline;color:#1d4ed8}.citation-card--compact .citation-card__title{font-size:13px}.citation-card__fulltext-badge{flex-shrink:0;font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:3px;background-color:#d1fae5;color:#065f46;white-space:nowrap}.citation-card__meta{font-size:12px;color:#6b7280;margin-bottom:8px;line-height:1.4}.citation-card__authors{color:#374151}.citation-card__separator{margin:0 6px;color:#d1d5db}.citation-card__journal{font-style:italic}.citation-card__year{font-weight:500}.citation-card__badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.citation-card__badge{display:inline-block;font-size:10px;font-weight:500;font-family:Monaco,Menlo,monospace;padding:3px 6px;border-radius:3px;text-decoration:none}.citation-card__badge--pmid{background-color:#dbeafe;color:#1e40af}.citation-card__badge--doi{background-color:#f3e8ff;color:#7c3aed;cursor:pointer}.citation-card__badge--doi:hover{background-color:#e9d5ff}.citation-card__relevance{margin-bottom:8px}.citation-card__relevance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.citation-card__relevance-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#6b7280}.citation-card__relevance-score{font-size:12px;font-weight:700}.citation-card__relevance-score.relevance-high{color:#059669}.citation-card__relevance-score.relevance-moderate{color:#d97706}.citation-card__relevance-score.relevance-low{color:#6b7280}.citation-card__relevance-bar-container{height:4px;background-color:#e5e7eb;border-radius:2px;overflow:hidden}.citation-card__relevance-bar{height:100%;border-radius:2px;transition:width .3s ease}.citation-card__relevance-bar.relevance-high{background-color:#10b981}.citation-card__relevance-bar.relevance-moderate{background-color:#f59e0b}.citation-card__relevance-bar.relevance-low{background-color:#9ca3af}.citation-card__relevance-explanation{font-size:11px;color:#6b7280;font-style:italic;margin:6px 0 0;line-height:1.4}.citation-card__quote-section{border-top:1px solid #e5e7eb;padding-top:8px;margin-top:8px}.citation-card__quote-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;font-size:11px;font-weight:500;color:#2563eb;cursor:pointer;padding:4px 0}.citation-card__quote-toggle:hover{text-decoration:underline}.citation-card__quote-icon{font-size:10px;color:#6b7280}.citation-card__quote{font-size:12px;font-style:italic;color:#374151;margin:8px 0 0;padding:10px 12px;background-color:#f9fafb;border-left:3px solid #2563eb;border-radius:0 4px 4px 0;line-height:1.5}.citation-list{background-color:#f9fafb;border-radius:6px;padding:12px;border:1px solid #e5e7eb}.citation-list__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-wrap:wrap;gap:8px}.citation-list__title{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:600;color:#111827;margin:0}.citation-list__title-icon{font-size:16px}.citation-list__confidence{display:flex;align-items:center;gap:6px}.citation-list__confidence-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;padding:3px 8px;border-radius:12px}.citation-list__confidence-badge--high{background-color:#d1fae5;color:#065f46}.citation-list__confidence-badge--moderate{background-color:#fef3c7;color:#92400e}.citation-list__confidence-badge--expert_guidance{background-color:#dbeafe;color:#1e40af}.citation-list__source{font-size:10px;color:#6b7280;font-style:italic}.citation-list__toggle{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #d1d5db;border-radius:4px;padding:4px 8px;font-size:11px;font-weight:500;color:#2563eb;cursor:pointer;transition:background-color .2s}.citation-list__toggle:hover{background-color:#f3f4f6}.citation-list__toggle-icon{font-size:10px}.citation-list__citations{display:flex;flex-direction:column;gap:0}.citation-list__citations .citation-card{margin-bottom:0;border-radius:0;border-top:none}.citation-list__citations .citation-card:first-child{border-radius:6px 6px 0 0;border-top:1px solid #e5e7eb}.citation-list__citations .citation-card:last-child{border-radius:0 0 6px 6px}.citation-list__citations .citation-card:only-child{border-radius:6px}.citation-list__show-more{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;padding:8px;font-size:12px;font-weight:500;color:#2563eb;cursor:pointer;margin-top:8px;transition:background-color .2s}.citation-list__show-more:hover{background-color:#f3f4f6}.citation-list__empty{text-align:center;padding:16px;color:#6b7280;font-size:13px;font-style:italic}.export-citations{position:relative;display:inline-block}.export-citations__button{display:flex;align-items:center;gap:6px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;padding:6px 12px;font-size:12px;font-weight:500;color:#374151;cursor:pointer;transition:all .2s}.export-citations__button:hover{background-color:#f3f4f6;border-color:#2563eb;color:#2563eb}.export-citations__button:disabled{opacity:.5;cursor:not-allowed}.export-citations__icon{font-size:14px}.export-citations__dropdown{position:absolute;top:100%;right:0;margin-top:4px;background-color:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;min-width:180px;z-index:100;overflow:hidden}.export-citations__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;font-size:13px;color:#374151;cursor:pointer;text-align:left;transition:background-color .2s}.export-citations__item:hover{background-color:#f3f4f6}.export-citations__item-icon{font-size:16px;width:20px;text-align:center}.export-citations__item-content{display:flex;flex-direction:column}.export-citations__item-label{font-weight:500}.export-citations__item-description{font-size:11px;color:#6b7280}.recommendation-card .literature-support-section{background-color:#f9fafb;border-radius:6px;padding:12px;margin-bottom:16px;border:1px solid #e5e7eb}.recommendation-card .literature-support-section h5{margin:0 0 12px;font-size:14px;color:#111827}.recommendation-card .literature-support-section .section-icon{margin-right:6px}.role-modal-overlay{position:fixed;inset:0;background:#000000b3;z-index:1100;display:flex;justify-content:center;align-items:center;padding:2rem;animation:roleModalFadeIn .2s ease forwards}@keyframes roleModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes roleModalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.role-modal-overlay .modal-container,.modal-container.role-assignment-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;animation:roleModalSlideUp .3s ease forwards;overflow:hidden}.role-assignment-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e8eaed;background:#f8f9fa;border-radius:12px 12px 0 0}.role-assignment-modal .modal-title{font-size:18px;font-weight:600;color:#202124;margin:0}.role-assignment-modal .modal-close-btn{background:none;border:none;font-size:28px;color:#5f6368;cursor:pointer;padding:0;line-height:1;transition:color .2s}.role-assignment-modal .modal-close-btn:hover{color:#202124}.role-assignment-modal .modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.role-assignment-modal,.modal-container.role-assignment-modal{max-width:520px;width:90%;max-height:80vh;display:flex;flex-direction:column}.role-assignment-modal .modal-body{flex:1;overflow-y:auto;padding:20px 24px}.role-assignment-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e8eaed;background:#fafafa}.persona-info-section{background-color:#f3e5f5;border-radius:8px;padding:16px;margin-bottom:20px}.persona-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.persona-icon{font-size:24px}.persona-name{font-size:18px;font-weight:600;color:#7b1fa2}.persona-description{font-size:14px;color:#5f6368;margin:0 0 12px;line-height:1.5}.recommendation-context{display:flex;flex-direction:column;gap:4px;padding-top:12px;border-top:1px solid rgba(123,31,162,.2)}.context-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#7b1fa2}.context-value{font-size:13px;color:#3c4043;font-style:italic}.role-assignment-modal .form-group{margin-bottom:16px}.role-assignment-modal .form-label{display:block;font-size:14px;font-weight:600;color:#202124;margin-bottom:8px}.role-assignment-modal .form-input{width:100%;padding:10px 12px;border:1px solid #dadce0;border-radius:6px;font-size:14px;color:#202124;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.role-assignment-modal .form-input:focus{outline:none;border-color:#7b1fa2;box-shadow:0 0 0 3px #7b1fa21a}.role-assignment-modal .form-input:disabled{background-color:#f1f3f4;cursor:not-allowed}.role-assignment-modal .search-input{margin-bottom:12px}.employee-list{max-height:280px;overflow-y:auto;border:1px solid #e8eaed;border-radius:6px;background:#fff}.employee-option{display:flex;align-items:center;gap:12px;padding:12px 14px;cursor:pointer;border-bottom:1px solid #f1f3f4;transition:background-color .15s}.employee-option:last-child{border-bottom:none}.employee-option:hover{background-color:#f8f9fa}.employee-option.selected{background-color:#e8f0fe}.employee-option.suggested{border-left:3px solid #7b1fa2}.employee-option input[type=radio]{width:18px;height:18px;accent-color:#7b1fa2;cursor:pointer}.employee-details{flex:1;display:flex;flex-direction:column;gap:2px}.employee-name{font-size:14px;font-weight:600;color:#202124}.employee-title{font-size:12px;color:#5f6368}.employee-department{font-size:12px;color:#7b1fa2;font-weight:500}.employee-email{font-size:11px;color:#70757a}.suggested-badge{font-size:10px;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:12px;background-color:#7b1fa2;color:#fff}.role-assignment-modal .loading-state,.role-assignment-modal .empty-state{padding:24px;text-align:center;color:#5f6368;font-size:14px}.role-assignment-modal .loading-state:before{content:"";display:inline-block;width:20px;height:20px;border:2px solid #e8eaed;border-top-color:#7b1fa2;border-radius:50%;animation:spin .8s linear infinite;margin-right:10px;vertical-align:middle}.role-assignment-modal .error-message{padding:12px 16px;background-color:#fce8e6;border:1px solid #f5c6cb;border-radius:6px;color:#c53030;font-size:14px;margin-top:16px}.role-assignment-modal .success-message{padding:12px 16px;background-color:#e6f4ea;border:1px solid #c3e6cb;border-radius:6px;color:#1e7e34;font-size:14px;margin-top:16px;display:flex;align-items:center;gap:8px}.role-assignment-modal .success-message:before{content:"✓";font-weight:700}.role-assignment-modal .btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.role-assignment-modal .btn:disabled{opacity:.6;cursor:not-allowed}.role-assignment-modal .btn-secondary{background-color:#fff;color:#5f6368;border:1px solid #dadce0}.role-assignment-modal .btn-secondary:hover:not(:disabled){background-color:#f1f3f4}.role-assignment-modal .btn-primary{background-color:#7b1fa2;color:#fff;border:none}.role-assignment-modal .btn-primary:hover:not(:disabled){background-color:#6a1b9a}.raci-modal-overlay{position:fixed;inset:0;background:#000000b3;z-index:1100;display:flex;justify-content:center;align-items:center;padding:2rem;animation:raciModalFadeIn .2s ease forwards}@keyframes raciModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes raciModalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.raci-modal-overlay .modal-container,.modal-container.raci-builder-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;animation:raciModalSlideUp .3s ease forwards;overflow:hidden}.raci-builder-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e8eaed;background:#f8f9fa;border-radius:12px 12px 0 0}.raci-builder-modal .modal-title{font-size:18px;font-weight:600;color:#202124;margin:0}.raci-builder-modal .modal-close-btn{background:none;border:none;font-size:28px;color:#5f6368;cursor:pointer;padding:0;line-height:1;transition:color .2s}.raci-builder-modal .modal-close-btn:hover{color:#202124}.raci-builder-modal .modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.raci-builder-modal,.modal-container.raci-builder-modal{max-width:700px;width:95%;max-height:85vh;display:flex;flex-direction:column}.raci-builder-modal .modal-body{flex:1;overflow-y:auto;padding:20px 24px}.raci-builder-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e8eaed;background:#fafafa}.raci-builder-modal .recommendation-context{display:flex;flex-direction:column;gap:4px;padding:12px 16px;background-color:#e3f2fd;border-radius:6px;margin-bottom:20px}.raci-builder-modal .context-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#1565c0}.raci-builder-modal .context-value{font-size:13px;color:#3c4043;font-style:italic}.template-info{padding:16px;background-color:#f8f9fa;border-radius:8px;margin-bottom:20px}.template-name{font-size:16px;font-weight:600;color:#202124;margin:0 0 8px}.template-description{font-size:14px;color:#5f6368;margin:0;line-height:1.5}.raci-builder-modal .raci-legend{margin-bottom:20px}.raci-builder-modal .legend-title{font-size:13px;font-weight:600;color:#5f6368;text-transform:uppercase;letter-spacing:.3px;margin:0 0 10px}.raci-builder-modal .legend-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.raci-builder-modal .legend-item{display:flex;flex-direction:column;align-items:center;padding:10px 8px;border-radius:6px;background-color:#f8f9fa;text-align:center;min-width:0;width:auto;height:auto}.raci-builder-modal .legend-letter{font-size:18px;font-weight:700;margin-bottom:4px;flex-shrink:0}.raci-builder-modal .legend-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.raci-builder-modal .legend-desc{font-size:10px;color:#70757a}.raci-builder-modal .role-R{color:#1e8e3e}.raci-builder-modal .role-A{color:#d93025}.raci-builder-modal .role-C{color:#1a73e8}.raci-builder-modal .role-I{color:#f9ab00}.raci-builder-modal .legend-item.role-R{background-color:#e6f4ea}.raci-builder-modal .legend-item.role-A{background-color:#fce8e6}.raci-builder-modal .legend-item.role-C{background-color:#e8f0fe}.raci-builder-modal .legend-item.role-I{background-color:#fef7e0}.raci-matrix{border:1px solid #e8eaed;border-radius:8px;overflow:hidden}.matrix-header{display:grid;grid-template-columns:60px 1fr 200px;gap:12px;padding:12px 16px;background-color:#f8f9fa;border-bottom:2px solid #e8eaed;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#5f6368}.matrix-body{max-height:300px;overflow-y:auto}.matrix-row{display:grid;grid-template-columns:60px 1fr 200px;gap:12px;padding:12px 16px;border-bottom:1px solid #f1f3f4;align-items:center}.matrix-row:last-child{border-bottom:none}.matrix-row:hover{background-color:#fafafa}.col-role{text-align:center}.col-persona{font-size:14px;color:#202124}.col-employee{font-size:13px}.role-badge{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;font-size:14px;font-weight:700}.role-badge.role-R{background-color:#e6f4ea;color:#1e8e3e}.role-badge.role-A{background-color:#fce8e6;color:#d93025}.role-badge.role-C{background-color:#e8f0fe;color:#1a73e8}.role-badge.role-I{background-color:#fef7e0;color:#b78103}.raci-builder-modal .form-group{margin-bottom:20px}.raci-builder-modal .form-label{display:block;font-size:14px;font-weight:600;color:#202124;margin-bottom:8px}.raci-builder-modal .form-select{width:100%;padding:10px 12px;border:1px solid #dadce0;border-radius:6px;font-size:14px;color:#202124;background-color:#fff;cursor:pointer;transition:border-color .2s,box-shadow .2s}.raci-builder-modal .form-select:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 3px #1a73e81a}.raci-builder-modal .form-select:disabled{background-color:#f1f3f4;cursor:not-allowed}.raci-builder-modal .loading-state,.raci-builder-modal .empty-state{padding:40px 24px;text-align:center;color:#5f6368;font-size:14px}.raci-builder-modal .validation-errors{padding:12px 16px;background-color:#fef7e0;border:1px solid #f9c74f;border-radius:6px;margin-top:16px}.raci-builder-modal .validation-errors ul{margin:0;padding-left:20px;color:#b78103;font-size:13px}.raci-builder-modal .validation-errors li{margin-bottom:4px}.raci-builder-modal .error-message{padding:12px 16px;background-color:#fce8e6;border:1px solid #f5c6cb;border-radius:6px;color:#c53030;font-size:14px;margin-top:16px}.raci-builder-modal .success-message{padding:12px 16px;background-color:#e6f4ea;border:1px solid #c3e6cb;border-radius:6px;color:#1e7e34;font-size:14px;margin-top:16px;display:flex;align-items:center;gap:8px}.raci-builder-modal .success-message:before{content:"✓";font-weight:700}.raci-builder-modal .btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.raci-builder-modal .btn:disabled{opacity:.6;cursor:not-allowed}.raci-builder-modal .btn-secondary{background-color:#fff;color:#5f6368;border:1px solid #dadce0}.raci-builder-modal .btn-secondary:hover:not(:disabled){background-color:#f1f3f4}.raci-builder-modal .btn-primary{background-color:#1a73e8;color:#fff;border:none}.raci-builder-modal .btn-primary:hover:not(:disabled){background-color:#1557b0}.raci-builder-modal.raci-wide,.modal-container.raci-builder-modal.raci-wide{max-width:960px}.raci-matrix-dynamic{overflow-x:auto}.matrix-header-dynamic{display:grid;grid-template-columns:1fr 72px 72px 72px 72px;gap:4px;padding:10px 12px;background-color:#f8f9fa;border-bottom:2px solid #e8eaed;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#5f6368;position:sticky;top:0;z-index:1}.col-recommendation-header{font-size:11px;padding-right:8px}.col-persona-header{display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center}.persona-abbrev{font-size:13px;font-weight:700;color:#202124}.persona-employee{font-size:9px;font-weight:400;color:#1a73e8;text-transform:none;letter-spacing:0;max-width:68px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.matrix-body-dynamic{max-height:400px;overflow-y:auto}.matrix-row-dynamic{display:grid;grid-template-columns:1fr 72px 72px 72px 72px;gap:4px;padding:8px 12px;border-bottom:1px solid #f1f3f4;align-items:center}.matrix-row-dynamic:last-child{border-bottom:none}.matrix-row-dynamic:hover{background-color:#fafafa}.col-recommendation{font-size:13px;color:#202124;line-height:1.3;display:flex;align-items:center;gap:6px;padding-right:8px}.rec-priority{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;font-size:10px;font-weight:700;flex-shrink:0}.rec-priority.priority-critical{background-color:#fce8e6;color:#d93025}.rec-priority.priority-warning{background-color:#fef7e0;color:#b78103}.rec-priority.priority-optimization{background-color:#e8f0fe;color:#1a73e8}.col-raci-cell{display:flex;justify-content:center}.raci-select{width:48px;height:32px;padding:0 4px;border:1px solid #dadce0;border-radius:4px;font-size:14px;font-weight:600;text-align:center;background-color:#fff;cursor:pointer;transition:border-color .2s,background-color .2s;appearance:none;-webkit-appearance:none;-moz-appearance:none}.raci-select:focus{outline:none;border-color:#1a73e8;box-shadow:0 0 0 2px #1a73e826}.raci-select:disabled{background-color:#f1f3f4;cursor:not-allowed}.raci-select.has-value.role-R{background-color:#e6f4ea;color:#1e8e3e;border-color:#a8dab5}.raci-select.has-value.role-A{background-color:#fce8e6;color:#d93025;border-color:#f5c6cb}.raci-select.has-value.role-C{background-color:#e8f0fe;color:#1a73e8;border-color:#aecbfa}.raci-select.has-value.role-I{background-color:#fef7e0;color:#b78103;border-color:#f9c74f}.raci-builder-modal .form-hint{display:block;font-size:12px;color:#70757a;margin-top:6px}@media (max-width: 640px){.raci-builder-modal .legend-items{grid-template-columns:repeat(2,1fr)}.matrix-header,.matrix-row{grid-template-columns:50px 1fr;gap:8px}.matrix-header .col-employee,.matrix-row .col-employee{grid-column:1 / -1;margin-top:8px}}.policy-modal-overlay{position:fixed;inset:0;background:#000000b3;z-index:1100;display:flex;justify-content:center;align-items:center;padding:2rem;animation:policyModalFadeIn .2s ease forwards}@keyframes policyModalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes policyModalSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.policy-modal-overlay .modal-container,.modal-container.policy-editor-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;animation:policyModalSlideUp .3s ease forwards;overflow:hidden}.policy-editor-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid #e8eaed;background:linear-gradient(135deg,#1565c0,#0d47a1);border-radius:12px 12px 0 0}.policy-editor-modal .modal-title{font-size:18px;font-weight:600;color:#fff;margin:0}.policy-editor-modal .modal-close-btn{background:none;border:none;font-size:28px;color:#fffc;cursor:pointer;padding:0;line-height:1;transition:color .2s}.policy-editor-modal .modal-close-btn:hover{color:#fff}.policy-editor-modal .modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.policy-editor-modal,.modal-container.policy-editor-modal{max-width:800px;width:95%;max-height:90vh;display:flex;flex-direction:column}.policy-editor-modal .modal-body{flex:1;overflow-y:auto;padding:20px 24px}.policy-editor-modal .modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e8eaed;background:#fafafa}.policy-editor-modal .recommendation-context{display:flex;flex-direction:column;gap:4px;padding:12px 16px;background-color:#e8f5e9;border-radius:6px;margin-bottom:20px}.policy-editor-modal .context-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:#2e7d32}.policy-editor-modal .context-value{font-size:13px;color:#3c4043;font-style:italic}.policy-editor-modal .template-info{padding:16px;background-color:#f8f9fa;border-radius:8px;margin-bottom:20px}.template-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.template-name{font-size:16px;font-weight:600;color:#202124;margin:0}.template-category{font-size:11px;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:4px;background-color:#e8f0fe;color:#1a73e8}.template-description{font-size:14px;color:#5f6368;margin:0 0 12px;line-height:1.5}.compliance-frameworks{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.frameworks-label{font-size:12px;font-weight:600;color:#5f6368}.framework-badge{font-size:11px;font-weight:500;padding:3px 8px;border-radius:12px;background-color:#e6f4ea;color:#1e7e34}.variables-section{margin-bottom:20px}.section-title{font-size:14px;font-weight:600;color:#202124;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e8eaed}.variables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.variable-input{margin-bottom:0}.input-hint{display:block;font-size:11px;color:#70757a;margin-bottom:6px}.required-marker{color:#d93025;margin-left:4px}.form-group{margin-bottom:16px}.form-label{display:block;font-size:14px;font-weight:600;color:#202124;margin-bottom:6px}.form-input,.form-select{width:100%;padding:10px 12px;border:1px solid #dadce0;border-radius:6px;font-size:14px;color:#202124;background-color:#fff;transition:border-color .2s,box-shadow .2s}.form-input:focus,.form-select:focus{outline:none;border-color:#1e7e34;box-shadow:0 0 0 3px #1e7e341a}.form-input:disabled,.form-select:disabled{background-color:#f1f3f4;cursor:not-allowed}.form-select{cursor:pointer}.form-select[multiple]{min-height:100px}.preview-section{display:flex;flex-direction:column;gap:12px}.preview-toolbar{display:flex;gap:12px}.unfilled-warning{display:flex;align-items:center;gap:8px;padding:10px 14px;background-color:#fef7e0;border-radius:6px;font-size:13px;color:#b78103}.warning-icon{font-size:16px}.preview-content{border:1px solid #e8eaed;border-radius:8px;background-color:#fafafa;max-height:400px;overflow:auto}.policy-preview{margin:0;padding:16px 20px;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:13px;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;color:#3c4043}.policy-preview-highlighted{background-color:#fef7e0;padding:1px 4px;border-radius:2px;color:#b78103;font-weight:500}.loading-state,.empty-state{padding:40px 24px;text-align:center;color:#5f6368;font-size:14px}.validation-errors{padding:12px 16px;background-color:#fef7e0;border:1px solid #f9c74f;border-radius:6px;margin-top:16px}.validation-errors ul{margin:0;padding-left:20px;color:#b78103;font-size:13px}.validation-errors li{margin-bottom:4px}.error-message{padding:12px 16px;background-color:#fce8e6;border:1px solid #f5c6cb;border-radius:6px;color:#c53030;font-size:14px;margin-top:16px}.success-message{padding:12px 16px;background-color:#e6f4ea;border:1px solid #c3e6cb;border-radius:6px;color:#1e7e34;font-size:14px;margin-top:16px;display:flex;align-items:center;gap:8px}.success-message:before{content:"✓";font-weight:700}.covered-recommendations{margin-bottom:16px}.toggle-covered-btn{background:none;border:none;font-size:13px;font-weight:600;color:#1a73e8;cursor:pointer;padding:6px 0}.toggle-covered-btn:hover{color:#1557b0}.covered-list{list-style:none;margin:8px 0 0;padding:0;border:1px solid #e8eaed;border-radius:6px;max-height:160px;overflow-y:auto}.covered-item{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:13px;color:#3c4043;border-bottom:1px solid #f1f3f4}.covered-item:last-child{border-bottom:none}.covered-priority{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;font-size:10px;font-weight:700;flex-shrink:0}.covered-priority.priority-critical{background-color:#fce8e6;color:#d93025}.covered-priority.priority-warning{background-color:#fef7e0;color:#b78103}.covered-priority.priority-optimization{background-color:#e8f0fe;color:#1a73e8}.btn{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s,opacity .2s}.btn-sm{padding:6px 14px;font-size:13px}.btn-secondary{background-color:#fff;color:#5f6368;border:1px solid #dadce0}.btn-secondary:hover:not(:disabled){background-color:#f1f3f4}.btn-primary{background-color:#1e7e34;color:#fff;border:none}.btn-primary:hover:not(:disabled){background-color:#1b5e20}@media (max-width: 640px){.variables-grid{grid-template-columns:1fr}.template-header{flex-direction:column;align-items:flex-start;gap:8px}.preview-toolbar{flex-direction:column}}.recommendation-card,.recommendation-card p,.recommendation-card span,.recommendation-card li,.recommendation-card td,.recommendation-card div:not([class*=chip]):not([class*=badge]){color:#202124}.recommendation-card .metadata-item,.recommendation-card .feedback-label,.recommendation-card .driver-id,.recommendation-card .param-label,.recommendation-card .synthesis-explanation,.recommendation-card .rationale-text{color:#5f6368}.recommendation-card{background-color:#fff!important;border-radius:8px;box-shadow:0 2px 4px #00000014;margin-bottom:1rem;padding:16px;transition:transform .2s ease,box-shadow .2s ease;position:relative;cursor:pointer}.recommendation-card:hover{transform:translateY(-1px);box-shadow:0 4px 8px #0000001f}.recommendation-card.priority-critical{border-left:4px solid #d93025}.recommendation-card.priority-warning{border-left:4px solid #f9ab00}.recommendation-card.priority-optimization{border-left:4px solid #1e8e3e}.recommendation-card .card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.recommendation-card .card-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.recommendation-card .card-title h4{margin:0;font-size:16px;font-weight:600;color:#202124;line-height:1.4}.recommendation-card .status-chip{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:4px;white-space:nowrap}.recommendation-card .chip-critical{color:#d93025;background-color:#fce8e6}.recommendation-card .chip-warning{color:#b78103;background-color:#fff8e1}.recommendation-card .chip-optimization{color:#1e7e34;background-color:#e6f4ea}.recommendation-card .expand-btn{background:none;border:none;color:#5f6368;cursor:pointer;font-size:14px;padding:4px 8px;border-radius:4px}.recommendation-card .expand-btn:hover{background-color:#f1f3f4}.recommendation-card .card-metadata{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;background-color:#fff}.recommendation-card .card-metadata .metadata-item{font-size:13px;color:#5f6368!important}.recommendation-card .card-metadata .metadata-item strong{color:#202124!important}.recommendation-card .card-financial-summary{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;padding:8px 12px;background-color:#f0f7ff;border-radius:6px;border-left:3px solid #1a73e8}.recommendation-card .card-financial-summary .financial-item{font-size:13px;color:#5f6368}.recommendation-card .card-financial-summary .financial-item strong{color:#202124}.recommendation-card .card-financial-summary .financial-item.return strong{color:#1e8e3e}.recommendation-card .card-financial-summary .financial-item.cost strong{color:#d93025}.recommendation-card .card-financial-summary .financial-item.roi strong{color:#1a73e8}.recommendation-card .card-financial-summary .financial-item.payback strong{color:#7b1fa2}.recommendation-card .description{color:#3c4043;font-size:14px;line-height:1.6;margin:0 0 16px}.recommendation-card .recommendation-feedback{display:flex;align-items:center;gap:8px;padding:8px 0;border-top:1px solid #f1f3f4;margin-top:8px}.recommendation-card .feedback-label{font-size:12px;color:#70757a}.recommendation-card .feedback-btn{background:none;border:1px solid #dadce0;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:14px;transition:background-color .2s}.recommendation-card .feedback-btn:hover{background-color:#f1f3f4}.recommendation-card .feedback-thanks{font-size:12px;color:#1e8e3e;font-weight:500}.recommendation-card .card-details{border-top:1px solid #e8eaed;padding:16px;margin:16px -16px -16px;background-color:#fff!important;color:#202124}.recommendation-card .card-details h5,.recommendation-card h5{margin:0 0 8px;font-size:13px;font-weight:600;color:#202124!important;display:flex;align-items:center;gap:6px}.recommendation-card .pistoia-driver-section{background-color:#f8f9fa;border-radius:6px;padding:12px;margin-bottom:16px}.recommendation-card .driver-info{display:flex;align-items:center;gap:8px;margin-bottom:8px}.recommendation-card .driver-name{font-weight:600;color:#1a73e8}.recommendation-card .driver-id{font-size:11px;color:#70757a}.recommendation-card .params-table{width:100%;font-size:12px;border-collapse:collapse}.recommendation-card .params-table td{padding:4px 8px 4px 0;vertical-align:top}.recommendation-card .param-label{color:#5f6368;white-space:nowrap}.recommendation-card .param-value{color:#202124;font-weight:500}.recommendation-card .impact-assessment-section{background-color:#e8f0fe;border-radius:6px;padding:12px;margin-bottom:16px}.recommendation-card .state-description,.recommendation-card .datasets-affected{font-size:13px;color:#3c4043;margin:4px 0}.recommendation-card .stakeholder-section{background-color:#fef7e0;border-radius:6px;padding:12px;margin-bottom:16px}.recommendation-card .readiness-badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;padding:4px 8px;border-radius:4px;margin-bottom:8px}.recommendation-card .readiness-high{background-color:#e6f4ea;color:#1e7e34}.recommendation-card .readiness-medium{background-color:#fff8e1;color:#b78103}.recommendation-card .readiness-low{background-color:#fce8e6;color:#c53030}.recommendation-card .champions,.recommendation-card .resistance,.recommendation-card .concerns{font-size:12px;color:#3c4043;margin:4px 0}.recommendation-card .rationale-section{margin-bottom:16px}.recommendation-card .rationale-text{font-size:13px;color:#5f6368;font-style:italic;margin:0}.recommendation-card .lineage-section{background-color:#f1f3f4;border-radius:6px;padding:12px;margin-bottom:16px}.recommendation-card .synthesis-explanation{font-size:12px;color:#5f6368;margin:0 0 8px}.recommendation-card .source-recommendations{display:flex;flex-direction:column;gap:6px}.recommendation-card .source-rec{display:flex;align-items:center;gap:8px;font-size:12px;padding:6px 8px;background-color:#fff;border-radius:4px;flex-wrap:wrap}.recommendation-card .source-station{font-weight:600;color:#1a73e8}.recommendation-card .source-title{color:#3c4043;flex:1}.recommendation-card .source-priority{font-size:10px;padding:2px 6px;border-radius:3px}.recommendation-card .source-priority.priority-critical{background-color:#fce8e6;color:#c53030}.recommendation-card .source-priority.priority-warning{background-color:#fff8e1;color:#b78103}.recommendation-card .source-priority.priority-optimization{background-color:#e6f4ea;color:#1e7e34}.recommendation-card .contribution-badge{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:3px}.recommendation-card .contribution-primary{background-color:#e8f0fe;color:#1967d2}.recommendation-card .contribution-supporting{background-color:#f1f3f4;color:#5f6368}.recommendation-card .provenance-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;padding:3px 8px;border-radius:12px;white-space:nowrap}.recommendation-card .provenance-icon{font-size:12px}.recommendation-card .provenance-journey{background-color:#e3f2fd;color:#1565c0}.recommendation-card .provenance-organization{background-color:#f3e5f5;color:#7b1fa2}.recommendation-card .provenance-merged{background-color:#e8f5e9;color:#2e7d32}.recommendation-card .provenance-details-section{background-color:#fafafa;border-radius:6px;padding:12px;margin-bottom:16px;border:1px solid #e0e0e0}.recommendation-card .provenance-details-section h5{display:flex;align-items:center;gap:8px}.recommendation-card .provenance-icon-lg{font-size:16px}.recommendation-card .provenance-sources{display:flex;flex-direction:column;gap:10px}.recommendation-card .provenance-source-group{display:flex;flex-direction:column;gap:6px}.recommendation-card .source-group-label{font-size:11px;font-weight:600;color:#5f6368;text-transform:uppercase;letter-spacing:.3px}.recommendation-card .source-tags{display:flex;flex-wrap:wrap;gap:6px}.recommendation-card .source-tag{display:inline-block;font-size:11px;font-weight:500;padding:4px 10px;border-radius:14px}.recommendation-card .source-tag-journey{background-color:#e3f2fd;color:#1565c0}.recommendation-card .source-tag-org{background-color:#f3e5f5;color:#7b1fa2}.recommendation-card .implementation-steps{margin-bottom:16px;background-color:#fff}.recommendation-card .implementation-steps h5{color:#202124}.recommendation-card .implementation-steps ol{padding-left:20px;margin:8px 0;background-color:#fff;color:#3c4043}.recommendation-card .implementation-steps ol li{color:#3c4043}.recommendation-card .step-item{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:8px;font-size:13px;color:#3c4043;background-color:#fff}.recommendation-card .step-text{flex:1;margin-right:12px;color:#3c4043}.recommendation-card .complexity-badge{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 8px;border-radius:12px;white-space:nowrap}.recommendation-card .complexity-low{background-color:#e6f4ea;color:#1e7e34}.recommendation-card .complexity-medium{background-color:#fff8e1;color:#b78103}.recommendation-card .complexity-high{background-color:#fce8e6;color:#c53030}.recommendation-card .related-rules,.recommendation-card .affected-stations{font-size:12px;color:#3c4043;margin-bottom:8px;background-color:#fff;padding:4px 0}.recommendation-card .related-rules strong,.recommendation-card .affected-stations strong{color:#202124}.recommendation-card .card-actions{display:flex;gap:8px;margin-top:16px;padding-top:12px;border-top:1px solid #f1f3f4}.recommendation-card .action-btn{padding:8px 16px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;transition:background-color .2s}.recommendation-card .action-btn.primary{background-color:#1a73e8;color:#fff;border:none}.recommendation-card .action-btn.primary:hover{background-color:#1557b0}.recommendation-card .governance-actions{display:flex;gap:8px;flex-wrap:wrap}.recommendation-card .action-btn.governance{background-color:#805ad5;color:#fff;border:none}.recommendation-card .action-btn.governance:hover{background-color:#6b46c1}.recommendation-card .action-btn.governance.assign-role{background-color:#2e7d32}.recommendation-card .action-btn.governance.assign-role:hover{background-color:#1b5e20}.recommendation-card .action-btn.governance.create-raci{background-color:#1565c0}.recommendation-card .action-btn.governance.create-raci:hover{background-color:#0d47a1}.recommendation-card .action-btn.governance.use-template{background-color:#7b1fa2}.recommendation-card .action-btn.governance.use-template:hover{background-color:#6a1b9a}.recommendation-card .action-btn.governance.review-policy{background-color:#e65100}.recommendation-card .action-btn.governance.review-policy:hover{background-color:#bf360c}.recommendation-card .action-btn.governance.completed{background-color:#e0e0e0;color:#4caf50;cursor:default;opacity:.9}.recommendation-card .action-btn.governance.completed:hover{background-color:#e0e0e0}.recommendation-card .action-btn.governance .completed-check{font-weight:700}.regulatory-basis__overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:fadeIn .2s ease}.regulatory-basis__drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:560px;background-color:#fff;z-index:1000;display:flex;flex-direction:column;animation:slideInRight .3s ease;box-shadow:-4px 0 24px #00000026}.regulatory-basis__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.regulatory-basis__header-content{flex:1;min-width:0}.regulatory-basis__title{margin:0;font-size:18px;font-weight:600;color:#111827;line-height:1.4}.regulatory-basis__metric-name{display:inline-block;margin-top:6px;padding:4px 10px;font-size:.85rem;font-weight:600;background:#dbeafe;color:#1d4ed8;border-radius:6px}.regulatory-basis__close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.regulatory-basis__close-btn:hover{background-color:#f3f4f6;color:#111827}.regulatory-basis__close-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.regulatory-basis__content{flex:1;overflow-y:auto;padding:20px 24px}.regulatory-basis__section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f3f4f6}.regulatory-basis__section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.regulatory-basis__section-title{margin:0 0 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.regulatory-basis__result{padding:16px;background:#f9fafb;border-radius:8px}.regulatory-basis__score-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.regulatory-basis__score{display:flex;flex-direction:column}.regulatory-basis__score-value{font-size:2rem;font-weight:700;color:#111827;line-height:1}.regulatory-basis__score-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.regulatory-basis__status{padding:6px 14px;font-size:.85rem;font-weight:600;border-radius:6px}.regulatory-basis__status--compliant{background:#dcfce7;color:#166534}.regulatory-basis__status--partial{background:#fff7ed;color:#c2410c}.regulatory-basis__status--non-compliant{background:#fee2e2;color:#991b1b}.regulatory-basis__status--not-assessed{background:#f3f4f6;color:#6b7280}.regulatory-basis__result-description{margin:0;font-size:.9rem;color:#374151;line-height:1.6}.regulatory-basis__findings-list,.regulatory-basis__recommendations-list{margin:0;padding-left:20px;color:#374151;font-size:.9rem}.regulatory-basis__findings-list li,.regulatory-basis__recommendations-list li{margin-bottom:8px;line-height:1.5}.regulatory-basis__findings-list li:last-child,.regulatory-basis__recommendations-list li:last-child{margin-bottom:0}.regulatory-basis__requirement{padding:16px;background:#eff6ff;border-radius:8px;border-left:4px solid #3b82f6;margin-bottom:16px}.regulatory-basis__requirement-principle{margin:0 0 8px;font-size:1rem;font-weight:600;color:#1e40af}.regulatory-basis__requirement-text{margin:0 0 12px;font-size:.9rem;color:#374151;line-height:1.6}.regulatory-basis__requirement-meta{display:flex;gap:12px;font-size:.8rem}.regulatory-basis__requirement-category{padding:2px 8px;background:#dbeafe;color:#1d4ed8;border-radius:4px;font-weight:500}.regulatory-basis__requirement-frameworks{color:#64748b}.regulatory-basis__rationale{margin-bottom:16px}.regulatory-basis__rationale h4{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#374151}.regulatory-basis__rationale p{margin:0;font-size:.9rem;color:#4b5563;line-height:1.6}.regulatory-basis__thresholds h4{margin:0 0 12px;font-size:.9rem;font-weight:600;color:#374151}.regulatory-basis__thresholds-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.regulatory-basis__threshold{padding:10px 12px;border-radius:6px;text-align:center}.regulatory-basis__threshold-label{display:block;font-size:.75rem;font-weight:500;margin-bottom:4px}.regulatory-basis__threshold-value{display:block;font-size:.9rem;font-weight:600}.regulatory-basis__threshold--compliant{background:#dcfce7;color:#166534}.regulatory-basis__threshold--partial{background:#fff7ed;color:#c2410c}.regulatory-basis__threshold--non{background:#fee2e2;color:#991b1b}.regulatory-basis__citations{display:flex;flex-direction:column;gap:12px}.regulatory-basis__citation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.regulatory-basis__citation-header{display:flex;gap:8px;margin-bottom:6px;font-size:.8rem}.regulatory-basis__citation-framework{font-weight:600;color:#1d4ed8}.regulatory-basis__citation-document{color:#374151}.regulatory-basis__citation-section{margin:0 0 8px;font-size:.8rem;color:#6b7280}.regulatory-basis__citation-text{margin:0 0 8px;padding:8px 12px;background:#f9fafb;border-left:3px solid #3b82f6;font-style:italic;font-size:.85rem;color:#374151;line-height:1.5}.regulatory-basis__citation-link{font-size:.8rem;color:#3b82f6;text-decoration:none;font-weight:500}.regulatory-basis__citation-link:hover{text-decoration:underline}.regulatory-basis__show-more{display:block;width:100%;padding:10px;margin-top:8px;background:none;border:1px dashed #d1d5db;border-radius:6px;color:#3b82f6;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease}.regulatory-basis__show-more:hover{background:#f9fafb;border-color:#3b82f6}.regulatory-basis__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.regulatory-basis__loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.regulatory-basis__error{padding:40px 20px;text-align:center;color:#dc2626}.regulatory-basis__footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.regulatory-basis__footer-link{font-size:.875rem;color:#3b82f6;text-decoration:none;font-weight:500}.regulatory-basis__footer-link:hover{text-decoration:underline}.regulatory-basis__footer-btn{padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.regulatory-basis__footer-btn:hover{background:#2563eb}.regulatory-basis__footer-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (max-width: 640px){.regulatory-basis__drawer{max-width:100%}.regulatory-basis__header,.regulatory-basis__content{padding:16px}.regulatory-basis__footer{padding:12px 16px;flex-direction:column;gap:12px}.regulatory-basis__thresholds-grid{grid-template-columns:1fr}}.alcoa-summary-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.alcoa-summary-card:hover{box-shadow:0 4px 12px #00000026}.alcoa-summary-card.exemplary{border-left:4px solid #22c55e}.alcoa-summary-card.compliant{border-left:4px solid #84cc16}.alcoa-summary-card.partial{border-left:4px solid #eab308}.alcoa-summary-card.non_compliant{border-left:4px solid #f97316}.alcoa-summary-card.critical{border-left:4px solid #ef4444}.alcoa-card-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #f1f5f9;background:linear-gradient(to right,#f8fafc,#fff)}.alcoa-card-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#f1f5f9;border-radius:8px;font-size:18px}.alcoa-card-title-group{flex:1;min-width:0}.alcoa-card-title{margin:0;font-size:16px;font-weight:600;color:#1e293b}.alcoa-asset-name{display:block;font-size:12px;color:#64748b;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alcoa-compliance-badge{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase}.alcoa-card-content{padding:20px;display:flex;flex-direction:column;gap:20px}.alcoa-score-section{display:flex;flex-direction:column;align-items:center;gap:8px}.alcoa-score-gauge{position:relative;display:flex;align-items:center;justify-content:center}.alcoa-score-value{position:absolute;font-weight:700;color:#1e293b}.alcoa-compliance-description{margin:0;font-size:13px;color:#64748b;text-align:center}.alcoa-principles-section{display:flex;flex-direction:column;gap:8px}.section-label{margin:0;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.alcoa-principles-grid{display:flex;flex-direction:column;gap:6px}.alcoa-principles-grid.compact{display:grid;grid-template-columns:repeat(9,1fr);gap:4px}.alcoa-principle-bar{display:flex;align-items:center;gap:8px}.alcoa-principle-bar.compact{flex-direction:column;gap:2px}.principle-label{font-size:12px;color:#475569;min-width:110px}.alcoa-principle-bar.compact .principle-label{font-size:10px;font-weight:600;min-width:unset}.principle-bar-track{flex:1;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.alcoa-principle-bar.compact .principle-bar-track{width:100%;height:4px}.principle-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.principle-score{font-size:12px;font-weight:600;color:#1e293b;min-width:28px;text-align:right}.alcoa-findings-section{display:flex;flex-direction:column;gap:8px}.alcoa-findings-badges{display:flex;flex-wrap:wrap;gap:8px}.alcoa-finding-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;border:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.alcoa-finding-badge:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.badge-count{font-weight:700}.badge-label{text-transform:capitalize}.alcoa-findings-compact{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b}.finding-dot{width:8px;height:8px;border-radius:50%}.finding-dot.critical{background:#ef4444}.finding-dot.major{background:#f97316}.finding-count{margin-left:4px}.alcoa-card-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.alcoa-timestamp{font-size:11px;color:#94a3b8}.alcoa-card-actions{display:flex;gap:8px}.alcoa-action-btn{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.alcoa-action-btn.primary{background:#3b82f6;color:#fff;border:none}.alcoa-action-btn.primary:hover{background:#2563eb}.alcoa-action-btn.secondary{background:#fff;color:#475569;border:1px solid #e2e8f0}.alcoa-action-btn.secondary:hover{background:#f8fafc;border-color:#cbd5e1}.alcoa-action-btn:disabled{opacity:.6;cursor:not-allowed}.alcoa-empty-state{padding:32px 20px;text-align:center}.alcoa-empty-state p{margin:0 0 16px;font-size:14px;color:#64748b}.alcoa-run-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease}.alcoa-run-btn.primary{background:#3b82f6;color:#fff;border:none}.alcoa-run-btn.primary:hover{background:#2563eb}.alcoa-run-btn:disabled{opacity:.6;cursor:not-allowed}.alcoa-error-state{padding:32px 20px;text-align:center}.alcoa-error-state p{margin:0 0 16px;font-size:14px;color:#ef4444}.alcoa-retry-btn{padding:8px 16px;background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.alcoa-retry-btn:hover{background:#f8fafc;border-color:#cbd5e1}.alcoa-summary-card.loading .alcoa-card-content{padding:24px 20px}.alcoa-loading-skeleton{display:flex;flex-direction:column;align-items:center;gap:16px}.skeleton-gauge{width:100px;height:100px;border-radius:50%;background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}.skeleton-bars{width:100%;display:flex;flex-direction:column;gap:8px}.skeleton-bar{height:20px;border-radius:4px;background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}.skeleton-bar:nth-child(1){width:100%}.skeleton-bar:nth-child(2){width:85%}.skeleton-bar:nth-child(3){width:92%}.skeleton-bar:nth-child(4){width:78%}.skeleton-bar:nth-child(5){width:88%}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.alcoa-summary-card.compact{min-width:200px}.alcoa-summary-card.compact .alcoa-card-header{padding:12px 16px}.alcoa-summary-card.compact .alcoa-card-icon{width:28px;height:28px;font-size:14px}.alcoa-summary-card.compact .alcoa-card-title{font-size:14px}.alcoa-summary-card.compact .alcoa-compliance-badge{font-size:10px;padding:3px 8px}.alcoa-summary-card.compact .alcoa-card-content{padding:12px 16px;gap:12px}.alcoa-summary-card.compact .alcoa-principles-section{gap:4px}@media (max-width: 480px){.alcoa-card-header{flex-wrap:wrap;gap:8px}.alcoa-compliance-badge{order:-1;margin-left:auto}.alcoa-card-title-group{flex-basis:100%;order:1}.alcoa-card-footer{flex-direction:column;gap:12px}.alcoa-card-actions{width:100%;justify-content:stretch}.alcoa-action-btn{flex:1;text-align:center}}@media print{.alcoa-summary-card{box-shadow:none;border:1px solid #e2e8f0;break-inside:avoid}.alcoa-card-actions,.alcoa-run-btn,.alcoa-retry-btn{display:none}.alcoa-finding-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.alcoa-basis-btn{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;margin-left:6px;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:50%;color:#64748b;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease;flex-shrink:0}.alcoa-basis-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.alcoa-basis-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.alcoa-no-assets-hint{font-size:12px;color:#94a3b8;font-style:italic;margin-top:8px}.compliance-lens-card{--color-compliant: #22c55e;--color-partial: #f59e0b;--color-non-compliant: #ef4444;--color-not-applicable: #9ca3af;--color-critical: #dc2626;--color-major: #f59e0b;--color-minor: #3b82f6;--color-observation: #6b7280}.compliance-lens-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.compliance-lens-card:hover{box-shadow:0 4px 12px #00000026}.compliance-lens-card.compliant{border-left:4px solid var(--color-compliant)}.compliance-lens-card.partial{border-left:4px solid var(--color-partial)}.compliance-lens-card.non_compliant{border-left:4px solid var(--color-non-compliant)}.compliance-lens-card.not_applicable{border-left:4px solid var(--color-not-applicable)}.compliance-card-header{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #f1f5f9;background:linear-gradient(to right,#f8fafc,#fff)}.compliance-card-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);border-radius:8px;font-size:18px}.compliance-card-title-group{flex:1;min-width:0}.compliance-card-title{margin:0;font-size:16px;font-weight:600;color:#1e293b}.compliance-card-subtitle{display:block;font-size:12px;color:#64748b;margin-top:2px}.compliance-level-badge{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:700;color:#fff;letter-spacing:.5px;text-transform:uppercase}.compliance-run-btn{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:4px;transition:background .15s ease}.compliance-run-btn:hover:not(:disabled){background:#2563eb}.compliance-run-btn:disabled{opacity:.6;cursor:not-allowed}.compliance-card-content{padding:20px;display:flex;flex-direction:column;gap:20px}.compliance-score-section{display:flex;align-items:center;gap:16px}.compliance-score-gauge{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0}.compliance-score-value{position:absolute;font-weight:700;color:#1e293b;display:flex;flex-direction:column;align-items:center;line-height:1.2}.compliance-score-value .score-num{font-size:24px}.compliance-score-value .score-max{font-size:12px;color:#64748b}.compliance-score-info{flex:1}.compliance-score-info .score-level{font-size:14px;font-weight:600;color:#1e293b;text-transform:uppercase;margin-bottom:4px}.compliance-score-info .score-description{font-size:13px;color:#64748b;margin:0}.compliance-regulations-section{display:flex;flex-direction:column;gap:8px}.regulations-header{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin:0}.regulations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.regulation-card{background:#f8fafc;border-radius:8px;padding:12px;text-align:center;border:1px solid #e2e8f0;transition:border-color .15s ease}.regulation-card:hover{border-color:#cbd5e1}.regulation-card .reg-name{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.regulation-card .reg-score{font-size:20px;font-weight:700;margin-bottom:4px}.regulation-card .reg-score.compliant{color:var(--color-compliant)}.regulation-card .reg-score.partial{color:var(--color-partial)}.regulation-card .reg-score.non_compliant{color:var(--color-non-compliant)}.regulation-card .reg-score.not_applicable{color:var(--color-not-applicable)}.regulation-card .reg-bar{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden;margin-bottom:6px}.regulation-card .reg-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.regulation-card .reg-level{font-size:10px;color:#64748b;text-transform:capitalize}.compliance-findings-section{display:flex;flex-direction:column;gap:8px}.findings-header{font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin:0}.findings-badges{display:flex;flex-wrap:wrap;gap:8px}.finding-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;border:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.finding-badge:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.finding-badge.critical{background:#fef2f2;color:var(--color-critical)}.finding-badge.major{background:#fff7ed;color:#ea580c}.finding-badge.minor{background:#eff6ff;color:var(--color-minor)}.finding-badge.observation{background:#f9fafb;color:var(--color-observation)}.finding-badge .badge-count{font-weight:700}.finding-badge .badge-label{text-transform:capitalize}.compliance-findings-compact{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b}.compliance-findings-compact .finding-dot{width:8px;height:8px;border-radius:50%}.compliance-findings-compact .finding-dot.critical{background:var(--color-critical)}.compliance-findings-compact .finding-dot.major{background:var(--color-major)}.compliance-findings-compact .finding-count{margin-left:4px}.compliance-card-footer{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.compliance-timestamp{font-size:11px;color:#94a3b8}.compliance-card-actions{display:flex;gap:8px}.compliance-action-btn{padding:6px 14px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.compliance-action-btn.primary{background:#3b82f6;color:#fff;border:none}.compliance-action-btn.primary:hover{background:#2563eb}.compliance-action-btn.secondary{background:#fff;color:#475569;border:1px solid #e2e8f0}.compliance-action-btn.secondary:hover{background:#f8fafc;border-color:#cbd5e1}.compliance-action-btn:disabled{opacity:.6;cursor:not-allowed}.compliance-empty-state{padding:32px 20px;text-align:center}.compliance-empty-state p{margin:0 0 16px;font-size:14px;color:#64748b}.compliance-empty-state .empty-btn{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s ease}.compliance-empty-state .empty-btn:hover{background:#2563eb}.compliance-empty-state .empty-btn:disabled{opacity:.6;cursor:not-allowed}.compliance-error-state{padding:32px 20px;text-align:center}.compliance-error-state p{margin:0 0 16px;font-size:14px;color:#ef4444}.compliance-retry-btn{padding:8px 16px;background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.compliance-retry-btn:hover{background:#f8fafc;border-color:#cbd5e1}.compliance-lens-card.loading .compliance-card-content{padding:24px 20px}.compliance-loading-skeleton{display:flex;flex-direction:column;align-items:center;gap:16px}.compliance-loading-skeleton .skeleton-gauge{width:100px;height:100px;border-radius:50%;background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:compliance-skeleton-shimmer 1.5s infinite}.compliance-loading-skeleton .skeleton-regulations{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.compliance-loading-skeleton .skeleton-reg{height:70px;border-radius:8px;background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%;animation:compliance-skeleton-shimmer 1.5s infinite}@keyframes compliance-skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.compliance-lens-card.compact{min-width:240px}.compliance-lens-card.compact .compliance-card-header{padding:12px 16px}.compliance-lens-card.compact .compliance-card-icon{width:28px;height:28px;font-size:14px}.compliance-lens-card.compact .compliance-card-title{font-size:14px}.compliance-lens-card.compact .compliance-level-badge{font-size:10px;padding:3px 8px}.compliance-lens-card.compact .compliance-card-content{padding:12px 16px;gap:12px}.compliance-lens-card.compact .regulations-grid{gap:8px}.compliance-lens-card.compact .regulation-card{padding:8px}.compliance-lens-card.compact .regulation-card .reg-name{font-size:10px;margin-bottom:4px}.compliance-lens-card.compact .regulation-card .reg-score{font-size:16px}@media (max-width: 640px){.regulations-grid{grid-template-columns:1fr;gap:8px}.regulation-card{display:flex;align-items:center;gap:12px;text-align:left;padding:10px 12px}.regulation-card .reg-name{min-width:50px;margin-bottom:0}.regulation-card .reg-score{font-size:18px;margin-bottom:0}.regulation-card .reg-bar{flex:1;margin-bottom:0}.regulation-card .reg-level{min-width:70px;text-align:right}}@media (max-width: 480px){.compliance-card-header{flex-wrap:wrap;gap:8px}.compliance-level-badge{order:-1;margin-left:auto}.compliance-card-title-group{flex-basis:100%;order:1}.compliance-card-footer{flex-direction:column;gap:12px}.compliance-card-actions{width:100%;justify-content:stretch}.compliance-action-btn{flex:1;text-align:center}}@media print{.compliance-lens-card{box-shadow:none;border:1px solid #e2e8f0;break-inside:avoid}.compliance-card-actions,.compliance-run-btn,.compliance-retry-btn,.empty-btn{display:none}.finding-badge,.compliance-level-badge{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.ecr-container{position:relative;display:inline-block}.ecr-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.ecr-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.ecr-button:focus{outline:none;box-shadow:0 0 0 2px #3b82f64d}.ecr-button:disabled{opacity:.5;cursor:not-allowed}.ecr-button--exporting{color:#3b82f6;border-color:#93c5fd;background:#eff6ff}.ecr-button--success{color:#16a34a;border-color:#86efac;background:#f0fdf4}.ecr-button--error{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.ecr-button__icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.ecr-button__icon svg{width:16px;height:16px}.ecr-button__label{line-height:1}.ecr-button__caret{width:14px;height:14px;margin-left:2px;transition:transform .15s ease}.ecr-button__caret--open{transform:rotate(180deg)}.ecr-spinner{animation:ecr-spin 1s linear infinite}@keyframes ecr-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ecr-container--compact .ecr-button{padding:4px 8px;font-size:12px}.ecr-container--compact .ecr-button__icon{width:14px;height:14px}.ecr-container--compact .ecr-button__icon svg{width:14px;height:14px}.ecr-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:200px;padding:4px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a,0 2px 4px #0000000d;animation:ecr-dropdown-appear .15s ease}@keyframes ecr-dropdown-appear{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.ecr-dropdown__item{display:flex;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;text-align:left;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:background .1s ease}.ecr-dropdown__item:hover{background:#f3f4f6}.ecr-dropdown__item:focus{outline:none;background:#e5e7eb}.ecr-dropdown__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:14px;color:#6b7280;background:#f3f4f6;border-radius:4px}.ecr-dropdown__content{display:flex;flex-direction:column;gap:2px;min-width:0}.ecr-dropdown__label{font-size:14px;font-weight:500;color:#111827}.ecr-dropdown__description{font-size:12px;color:#6b7280;line-height:1.3}.ecr-error-tooltip{position:absolute;top:calc(100% + 4px);right:0;z-index:50;max-width:250px;padding:8px 12px;font-size:12px;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;box-shadow:0 2px 8px #0000001a;animation:ecr-dropdown-appear .15s ease}@media (prefers-color-scheme: dark){.ecr-button{color:#e5e7eb;background:#374151;border-color:#4b5563}.ecr-button:hover:not(:disabled){background:#4b5563;border-color:#6b7280}.ecr-button--exporting{color:#93c5fd;border-color:#3b82f6;background:#1e3a5f}.ecr-button--success{color:#86efac;border-color:#16a34a;background:#14532d}.ecr-button--error{color:#fca5a5;border-color:#dc2626;background:#450a0a}.ecr-dropdown{background:#1f2937;border-color:#374151}.ecr-dropdown__item:hover{background:#374151}.ecr-dropdown__item:focus{background:#4b5563}.ecr-dropdown__icon{color:#9ca3af;background:#374151}.ecr-dropdown__label{color:#f3f4f6}.ecr-dropdown__description{color:#9ca3af}.ecr-error-tooltip{color:#fca5a5;background:#450a0a;border-color:#7f1d1d}}.fda-credibility-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden;transition:box-shadow .2s ease}.fda-credibility-card:hover{box-shadow:0 4px 12px #0000001a}.fda-credibility-card--compact{max-width:320px}.fda-credibility-card__header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f3f4f6}.fda-credibility-card--compact .fda-credibility-card__header{padding:12px 16px}.fda-credibility-card__title-row{display:flex;align-items:center;gap:12px}.fda-credibility-card__title{margin:0;font-size:16px;font-weight:600;color:#111827}.fda-credibility-card--compact .fda-credibility-card__title{font-size:14px}.fda-credibility-card__actions{display:flex;gap:8px}.fda-credibility-card__action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#6b7280;cursor:pointer;transition:all .15s ease}.fda-credibility-card__action-btn:hover:not(:disabled){background:#f9fafb;color:#374151;border-color:#d1d5db}.fda-credibility-card__action-btn:disabled{opacity:.5;cursor:not-allowed}.fda-credibility-card__action-btn svg{width:16px;height:16px}.fda-credibility-card__body{padding:20px}.fda-credibility-card--compact .fda-credibility-card__body{padding:16px}.fda-credibility-card__body--empty,.fda-credibility-card__body--error{display:flex;align-items:center;justify-content:center;min-height:200px}.fda-credibility-card__score-section{display:flex;align-items:center;gap:20px;margin-bottom:20px}.fda-credibility-card--compact .fda-credibility-card__score-section{gap:16px;margin-bottom:16px}.fda-credibility-card__gauge{flex-shrink:0}.fda-credibility-card__score-info{flex:1;min-width:0}.fda-credibility-card__score-desc{margin:8px 0 0;font-size:13px;color:#6b7280;line-height:1.5}.fda-credibility-badge{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;border-radius:16px;border:1px solid;text-transform:capitalize}.fda-credibility-badge--compact{padding:2px 8px;font-size:11px}.fda-fit-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:600;border-radius:4px}.fda-fit-badge--yes{background:#dcfce7;color:#16a34a}.fda-fit-badge--no{background:#fee2e2;color:#dc2626}.fda-credibility-card__dimensions{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;padding:12px;background:#f9fafb;border-radius:8px}.fda-dimension-score__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.fda-dimension-score__label{font-size:13px;font-weight:500;color:#374151}.fda-dimension-score__value{font-size:13px;font-weight:600;color:#111827}.fda-dimension-score__bar-bg{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.fda-dimension-score__bar-fill{height:100%;border-radius:3px;transition:width .5s ease}.fda-dimension-score__header-right{display:flex;align-items:center;gap:6px}.fda-basis-btn{display:flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:50%;color:#64748b;font-size:10px;font-weight:600;cursor:pointer;transition:all .15s ease;flex-shrink:0}.fda-basis-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}.fda-basis-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.fda-model-risk{margin-bottom:16px;padding:12px;background:#f9fafb;border-radius:8px}.fda-model-risk__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.fda-model-risk__title{font-size:13px;font-weight:600;color:#374151}.fda-model-risk__level{padding:2px 8px;font-size:11px;font-weight:600;border-radius:4px}.fda-model-risk__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.fda-model-risk__item{display:flex;flex-direction:column;gap:2px}.fda-model-risk__item-label{font-size:11px;color:#6b7280}.fda-model-risk__item-value{font-size:13px;font-weight:500;color:#111827}.fda-gaps-summary{margin-bottom:16px}.fda-gaps-summary--compact{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.fda-gaps-summary__title{font-size:13px;font-weight:600;color:#374151;margin-bottom:10px}.fda-gaps-summary__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.fda-gaps-summary__item{display:flex;flex-direction:column;align-items:center;padding:8px;background:#f9fafb;border-radius:6px}.fda-gaps-summary__count{font-size:20px;font-weight:700;line-height:1}.fda-gaps-summary__label{font-size:10px;color:#6b7280;margin-top:4px}.fda-gaps-summary__badge{padding:2px 8px;font-size:11px;font-weight:600;border-radius:4px}.fda-gaps-summary__none{font-size:12px;color:#16a34a;font-weight:500}.fda-credibility-card__view-details{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:10px 16px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.fda-credibility-card__view-details:hover{background:#f9fafb;border-color:#d1d5db}.fda-credibility-card__view-details svg{width:14px;height:14px}.fda-credibility-card__footer{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:#f9fafb;border-top:1px solid #e5e7eb;font-size:11px;color:#9ca3af}.fda-credibility-card--compact .fda-credibility-card__footer{padding:8px 16px}.fda-credibility-card--loading .fda-credibility-card__body{display:flex;flex-direction:column;gap:16px}.fda-loading-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:fda-skeleton-loading 1.5s infinite;border-radius:4px}.fda-loading-skeleton--title{width:140px;height:20px}.fda-loading-skeleton--gauge{width:100px;height:100px;border-radius:50%;margin:0 auto}.fda-loading-skeleton--text{width:100%;height:16px}@keyframes fda-skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.fda-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px}.fda-empty-state__icon{width:48px;height:48px;color:#9ca3af;margin-bottom:12px}.fda-empty-state__text{margin:0 0 16px;font-size:14px;color:#6b7280}.fda-empty-state__button{padding:8px 16px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease}.fda-empty-state__button:hover:not(:disabled){background:#1d4ed8}.fda-empty-state__button:disabled{opacity:.6;cursor:not-allowed}.fda-error-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px}.fda-error-state__icon{width:48px;height:48px;color:#dc2626;margin-bottom:12px}.fda-error-state__text{margin:0 0 16px;font-size:14px;color:#dc2626}.fda-error-state__button{padding:8px 16px;background:#fff;color:#dc2626;border:1px solid #dc2626;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.fda-error-state__button:hover{background:#fef2f2}.fda-spinner{animation:fda-spin 1s linear infinite}@keyframes fda-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-color-scheme: dark){.fda-credibility-card{background:#1f2937;border-color:#374151}.fda-credibility-card__header{border-bottom-color:#374151}.fda-credibility-card__title{color:#f9fafb}.fda-credibility-card__action-btn{background:#374151;border-color:#4b5563;color:#9ca3af}.fda-credibility-card__action-btn:hover:not(:disabled){background:#4b5563;color:#f3f4f6}.fda-credibility-card__score-desc{color:#9ca3af}.fda-credibility-card__dimensions,.fda-model-risk,.fda-gaps-summary__item{background:#374151}.fda-dimension-score__label,.fda-model-risk__title{color:#d1d5db}.fda-dimension-score__value,.fda-model-risk__item-value{color:#f9fafb}.fda-dimension-score__bar-bg{background:#4b5563}.fda-gaps-summary__title{color:#d1d5db}.fda-credibility-card__view-details{background:#374151;border-color:#4b5563;color:#d1d5db}.fda-credibility-card__view-details:hover{background:#4b5563}.fda-credibility-card__footer{background:#111827;border-top-color:#374151;color:#6b7280}.fda-loading-skeleton{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%);background-size:200% 100%}.fda-empty-state__icon,.fda-empty-state__text{color:#9ca3af}.fda-basis-btn{background:#4b5563;border-color:#6b7280;color:#9ca3af}.fda-basis-btn:hover{background:#3b82f6;border-color:#3b82f6;color:#fff}}.ffu-indicator{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.ffu-indicator--compact{max-width:400px}.ffu-indicator__banner{display:flex;align-items:center;gap:16px;padding:20px 24px;flex-wrap:wrap}.ffu-indicator--compact .ffu-indicator__banner{padding:16px 20px;gap:12px}.ffu-indicator__banner--fit{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-bottom:2px solid #16a34a}.ffu-indicator__banner--not-fit{background:linear-gradient(135deg,#fee2e2,#fecaca);border-bottom:2px solid #dc2626}.ffu-indicator__banner-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%}.ffu-indicator--compact .ffu-indicator__banner-icon{width:40px;height:40px}.ffu-indicator__banner--fit .ffu-indicator__banner-icon{background:#16a34a}.ffu-indicator__banner--not-fit .ffu-indicator__banner-icon{background:#dc2626}.ffu-indicator__banner-icon svg{width:24px;height:24px;color:#fff}.ffu-indicator--compact .ffu-indicator__banner-icon svg{width:20px;height:20px}.ffu-indicator__banner-content{flex:1;min-width:0}.ffu-indicator__banner-title{margin:0;font-size:20px;font-weight:700;letter-spacing:.5px}.ffu-indicator--compact .ffu-indicator__banner-title{font-size:16px}.ffu-indicator__banner--fit .ffu-indicator__banner-title{color:#15803d}.ffu-indicator__banner--not-fit .ffu-indicator__banner-title{color:#b91c1c}.ffu-indicator__banner-subtitle{margin:4px 0 0;font-size:14px}.ffu-indicator--compact .ffu-indicator__banner-subtitle{font-size:13px}.ffu-indicator__banner--fit .ffu-indicator__banner-subtitle{color:#166534}.ffu-indicator__banner--not-fit .ffu-indicator__banner-subtitle{color:#991b1b}.ffu-indicator__banner-actions{display:flex;gap:8px;flex-shrink:0}.ffu-indicator__action-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;border:none}.ffu-indicator__action-btn--primary{background:#dc2626;color:#fff}.ffu-indicator__action-btn--primary:hover{background:#b91c1c}.ffu-indicator__action-btn--secondary{background:#fff;color:#dc2626;border:1px solid #dc2626}.ffu-indicator__action-btn--secondary:hover{background:#fef2f2}.ffu-indicator__dimensions{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5e7eb}.ffu-dimension-card{background:#fff}.ffu-dimension-card__header{display:flex;flex-direction:column;gap:8px;width:100%;padding:16px 20px;border:none;background:transparent;cursor:pointer;text-align:left;transition:background .15s ease}.ffu-dimension-card__header:hover:not(:disabled){background:#f9fafb}.ffu-dimension-card__header:disabled{cursor:default}.ffu-dimension-card--compact .ffu-dimension-card__header{padding:12px 16px;gap:6px}.ffu-dimension-card__title-row{display:flex;justify-content:space-between;align-items:center}.ffu-dimension-card__title{font-size:14px;font-weight:600;color:#374151}.ffu-dimension-card--compact .ffu-dimension-card__title{font-size:13px}.ffu-dimension-card__chevron{width:16px;height:16px;color:#9ca3af;transition:transform .2s ease}.ffu-dimension-card__chevron--expanded{transform:rotate(180deg)}.ffu-dimension-card__score-row{display:flex;align-items:center;gap:12px}.ffu-dimension-card__score{font-size:28px;font-weight:700;line-height:1}.ffu-dimension-card--compact .ffu-dimension-card__score{font-size:24px}.ffu-dimension-card__status{padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600}.ffu-dimension-card__status--pass{background:#dcfce7;color:#16a34a}.ffu-dimension-card__status--fail{background:#fee2e2;color:#dc2626}.ffu-dimension-card__details{padding:0 20px 16px;display:flex;flex-direction:column;gap:8px;animation:ffu-slide-down .2s ease}@keyframes ffu-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.ffu-dimension-card__sub-item{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f9fafb;border-radius:6px}.ffu-dimension-card__sub-label{font-size:13px;color:#4b5563}.ffu-dimension-card__sub-status{font-size:14px;font-weight:600}.ffu-dimension-card__sub-status--pass{color:#16a34a}.ffu-dimension-card__sub-status--fail{color:#ea580c}.ffu-indicator__footer{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f9fafb;border-top:1px solid #e5e7eb;font-size:12px;flex-wrap:wrap}.ffu-indicator__evidence-label{color:#6b7280}.ffu-indicator__evidence-value{font-weight:600;color:#374151}.ffu-indicator__fda-ref{margin-left:auto;color:#9ca3af;font-style:italic}@media (max-width: 480px){.ffu-indicator__dimensions{grid-template-columns:1fr}.ffu-indicator__banner{flex-direction:column;text-align:center}.ffu-indicator__banner-actions{width:100%;justify-content:center}.ffu-indicator__footer{flex-direction:column;text-align:center;gap:4px}.ffu-indicator__fda-ref{margin-left:0}}.fda-results-view .ffu-indicator{background:#1f2937;border-color:#374151}.fda-results-view .ffu-indicator__banner--fit{background:linear-gradient(135deg,#14532d,#166534);border-bottom-color:#22c55e}.fda-results-view .ffu-indicator__banner--not-fit{background:linear-gradient(135deg,#7f1d1d,#991b1b);border-bottom-color:#f87171}.fda-results-view .ffu-indicator__banner--fit .ffu-indicator__banner-title,.fda-results-view .ffu-indicator__banner--fit .ffu-indicator__banner-subtitle{color:#bbf7d0}.fda-results-view .ffu-indicator__banner--not-fit .ffu-indicator__banner-title,.fda-results-view .ffu-indicator__banner--not-fit .ffu-indicator__banner-subtitle{color:#fecaca}.fda-results-view .ffu-indicator__dimensions{background:#374151}.fda-results-view .ffu-dimension-card{background:#1f2937}.fda-results-view .ffu-dimension-card__header:hover:not(:disabled){background:#374151}.fda-results-view .ffu-dimension-card__title{color:#e5e7eb}.fda-results-view .ffu-dimension-card__sub-item{background:#374151}.fda-results-view .ffu-dimension-card__sub-label{color:#9ca3af}.fda-results-view .ffu-indicator__footer{background:#111827;border-top-color:#374151}.fda-results-view .ffu-indicator__evidence-label{color:#9ca3af}.fda-results-view .ffu-indicator__evidence-value{color:#e5e7eb}.fda-results-view .ffu-indicator__fda-ref{color:#6b7280}.fda-results-view .ffu-indicator__action-btn--secondary{background:#1f2937;color:#f87171;border-color:#f87171}.fda-results-view .ffu-indicator__action-btn--secondary:hover{background:#374151}@media (prefers-color-scheme: dark){.ffu-indicator{background:#1f2937;border-color:#374151}.ffu-indicator__banner--fit{background:linear-gradient(135deg,#14532d,#166534);border-bottom-color:#22c55e}.ffu-indicator__banner--not-fit{background:linear-gradient(135deg,#7f1d1d,#991b1b);border-bottom-color:#f87171}.ffu-indicator__banner--fit .ffu-indicator__banner-title,.ffu-indicator__banner--fit .ffu-indicator__banner-subtitle{color:#bbf7d0}.ffu-indicator__banner--not-fit .ffu-indicator__banner-title,.ffu-indicator__banner--not-fit .ffu-indicator__banner-subtitle{color:#fecaca}.ffu-indicator__dimensions{background:#374151}.ffu-dimension-card{background:#1f2937}.ffu-dimension-card__header:hover:not(:disabled){background:#374151}.ffu-dimension-card__title{color:#e5e7eb}.ffu-dimension-card__sub-item{background:#374151}.ffu-dimension-card__sub-label{color:#9ca3af}.ffu-indicator__footer{background:#111827;border-top-color:#374151}.ffu-indicator__evidence-label{color:#9ca3af}.ffu-indicator__evidence-value{color:#e5e7eb}.ffu-indicator__fda-ref{color:#6b7280}.ffu-indicator__action-btn--secondary{background:#1f2937;color:#f87171;border-color:#f87171}.ffu-indicator__action-btn--secondary:hover{background:#374151}}.cgp-panel{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:visible}.dark-theme .cgp-panel,.fda-results-view .cgp-panel{background:#1f2937;border-color:#374151}.cgp-panel--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.cgp-panel__header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f3f4f6}.cgp-panel__title{margin:0;font-size:16px;font-weight:600;color:#111827}.cgp-export-menu{position:relative}.cgp-export-menu__trigger{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.cgp-export-menu__trigger:hover{background:#f9fafb;border-color:#d1d5db}.cgp-export-menu__trigger svg{width:14px;height:14px}.cgp-export-menu__dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #00000026;z-index:10;min-width:140px}.cgp-export-menu__dropdown button{display:block;width:100%;padding:10px 16px;text-align:left;background:transparent;border:none;font-size:13px;color:#374151;cursor:pointer;transition:background .15s ease}.cgp-export-menu__dropdown button:hover{background:#f9fafb}.cgp-export-menu__dropdown button:first-child{border-radius:6px 6px 0 0}.cgp-export-menu__dropdown button:last-child{border-radius:0 0 6px 6px}.cgp-summary-bar{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#f9fafb;font-size:13px;flex-wrap:wrap}.cgp-summary-bar__total{font-weight:600;color:#374151}.cgp-summary-bar__separator{color:#d1d5db}.cgp-summary-bar__count{font-weight:500}.cgp-filters{display:flex;gap:8px;padding:12px 20px;flex-wrap:wrap;border-bottom:1px solid #f3f4f6}.cgp-filter-chip{padding:6px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:20px;font-size:12px;font-weight:500;color:#6b7280;cursor:pointer;transition:all .15s ease}.cgp-filter-chip:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.cgp-filter-chip:disabled{opacity:.5;cursor:not-allowed}.cgp-filter-chip--active{background:var(--chip-bg, #eff6ff);border-color:var(--chip-color, #2563eb);color:var(--chip-color, #2563eb)}.cgp-gaps-list{padding:16px 20px;display:flex;flex-direction:column;gap:16px}.cgp-severity-group{border-radius:8px;overflow:hidden}.cgp-severity-group__header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 16px;border:1px solid;border-radius:8px;font-size:12px;font-weight:700;letter-spacing:.5px;cursor:pointer;transition:all .15s ease}.cgp-severity-group__header:hover{filter:brightness(.98)}.cgp-severity-group__chevron{width:16px;height:16px;color:currentColor;opacity:.7;transition:transform .2s ease}.cgp-severity-group__chevron--expanded{transform:rotate(180deg)}.cgp-severity-group__content{display:flex;flex-direction:column;gap:12px;padding-top:12px;animation:cgp-slide-down .2s ease}@keyframes cgp-slide-down{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cgp-gap-card{background:#fff;border:1px solid #e5e7eb;border-left-width:4px;border-radius:8px;overflow:hidden}.cgp-gap-card__header{display:flex;flex-direction:column;gap:8px;width:100%;padding:14px 16px;background:transparent;border:none;text-align:left;cursor:pointer;transition:background .15s ease}.cgp-gap-card__header:hover{background:#f9fafb}.cgp-gap-card__title-row{display:flex;align-items:flex-start;gap:10px}.cgp-gap-card__severity-icon{flex-shrink:0;font-size:14px;line-height:1.4}.cgp-gap-card__title{flex:1;font-size:14px;font-weight:600;color:#111827;line-height:1.4}.cgp-gap-card__chevron{flex-shrink:0;width:16px;height:16px;color:#9ca3af;transition:transform .2s ease}.cgp-gap-card__chevron--expanded{transform:rotate(180deg)}.cgp-gap-card__meta{display:flex;align-items:center;gap:8px;margin-left:24px;font-size:12px;color:#6b7280}.cgp-gap-card__separator{color:#d1d5db}.cgp-gap-card__description-preview{padding:0 16px 14px 40px;font-size:13px;color:#4b5563;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cgp-gap-card__details{padding:0 16px 16px 40px;display:flex;flex-direction:column;gap:16px;animation:cgp-slide-down .2s ease}.cgp-gap-card__section{display:flex;flex-direction:column;gap:4px}.cgp-gap-card__section-title{margin:0;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.cgp-gap-card__section-content{margin:0;font-size:13px;color:#374151;line-height:1.5}.cgp-gap-card__remediation{background:#f9fafb;padding:12px;border-radius:6px;display:flex;flex-direction:column;gap:10px}.cgp-gap-card__remediation .cgp-gap-card__section-title{color:#374151}.cgp-gap-card__remediation-meta{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-start}.cgp-effort{display:flex;align-items:center;gap:6px;font-size:12px}.cgp-effort__label{color:#6b7280}.cgp-effort__dots{display:flex;gap:3px}.cgp-effort__dot{width:8px;height:8px;border-radius:50%;background:#e5e7eb}.cgp-effort__dot--filled{background:#374151}.cgp-effort__text{color:#374151;font-weight:500;text-transform:capitalize}.cgp-gap-card__evidence{display:flex;flex-direction:column;gap:6px}.cgp-gap-card__evidence-label{font-size:12px;color:#6b7280}.cgp-gap-card__evidence-tags{display:flex;flex-wrap:wrap;gap:6px}.cgp-gap-card__evidence-tag{padding:3px 8px;background:#e5e7eb;border-radius:4px;font-size:11px;color:#374151;text-transform:capitalize}.cgp-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px}.cgp-empty-state__icon{width:56px;height:56px;color:#16a34a;margin-bottom:16px}.cgp-empty-state__text{margin:0;font-size:16px;font-weight:600;color:#16a34a}.cgp-empty-state__subtext{margin:8px 0 0;font-size:14px;color:#6b7280}@media (max-width: 480px){.cgp-panel__header{flex-direction:column;gap:12px;align-items:flex-start}.cgp-gap-card__meta{flex-wrap:wrap}.cgp-gap-card__remediation-meta{flex-direction:column}}.fda-results-view .cgp-panel__header{border-bottom-color:#374151}.fda-results-view .cgp-panel__title{color:#f9fafb}.fda-results-view .cgp-export-menu__trigger{background:#374151;border-color:#4b5563;color:#d1d5db}.fda-results-view .cgp-export-menu__trigger:hover{background:#4b5563}.fda-results-view .cgp-export-menu__dropdown{background:#374151;border-color:#4b5563}.fda-results-view .cgp-export-menu__dropdown button{color:#d1d5db}.fda-results-view .cgp-export-menu__dropdown button:hover{background:#4b5563}.fda-results-view .cgp-summary-bar{background:#111827}.fda-results-view .cgp-summary-bar__total{color:#e5e7eb}.fda-results-view .cgp-filter-chip{background:#374151;border-color:#4b5563;color:#9ca3af}.fda-results-view .cgp-filter-chip:hover:not(:disabled){background:#4b5563}.fda-results-view .cgp-filters{border-bottom-color:#374151}.fda-results-view .cgp-gap-card{background:#1f2937;border-color:#374151}.fda-results-view .cgp-gap-card__header:hover{background:#374151}.fda-results-view .cgp-gap-card__title{color:#f9fafb}.fda-results-view .cgp-gap-card__meta,.fda-results-view .cgp-gap-card__separator,.fda-results-view .cgp-gap-card__description-preview,.fda-results-view .cgp-gap-card__section-title{color:#9ca3af}.fda-results-view .cgp-gap-card__section-content{color:#d1d5db}.fda-results-view .cgp-gap-card__remediation{background:#374151}.fda-results-view .cgp-gap-card__remediation .cgp-gap-card__section-title{color:#d1d5db}.fda-results-view .cgp-effort__label,.fda-results-view .cgp-gap-card__evidence-label{color:#9ca3af}.fda-results-view .cgp-effort__dot{background:#4b5563}.fda-results-view .cgp-effort__dot--filled{background:#d1d5db}.fda-results-view .cgp-effort__text{color:#d1d5db}.fda-results-view .cgp-gap-card__evidence-tag{background:#4b5563;color:#d1d5db}.fda-results-view .cgp-empty-state__subtext{color:#9ca3af}.fda-results-view .cgp-severity-group__header{filter:brightness(.85)}@media (prefers-color-scheme: dark){.cgp-panel{background:#1f2937;border-color:#374151}.cgp-panel__header{border-bottom-color:#374151}.cgp-panel__title{color:#f9fafb}.cgp-export-menu__trigger{background:#374151;border-color:#4b5563;color:#d1d5db}.cgp-export-menu__trigger:hover{background:#4b5563}.cgp-export-menu__dropdown{background:#374151;border-color:#4b5563}.cgp-export-menu__dropdown button{color:#d1d5db}.cgp-export-menu__dropdown button:hover{background:#4b5563}.cgp-summary-bar{background:#111827}.cgp-summary-bar__total{color:#e5e7eb}.cgp-filter-chip{background:#374151;border-color:#4b5563;color:#9ca3af}.cgp-filter-chip:hover:not(:disabled){background:#4b5563}.cgp-filters{border-bottom-color:#374151}.cgp-gap-card{background:#1f2937;border-color:#374151}.cgp-gap-card__header:hover{background:#374151}.cgp-gap-card__title{color:#f9fafb}.cgp-gap-card__meta,.cgp-gap-card__separator,.cgp-gap-card__description-preview,.cgp-gap-card__section-title{color:#9ca3af}.cgp-gap-card__section-content{color:#d1d5db}.cgp-gap-card__remediation{background:#374151}.cgp-gap-card__remediation .cgp-gap-card__section-title{color:#d1d5db}.cgp-effort__label,.cgp-gap-card__evidence-label{color:#9ca3af}.cgp-effort__dot{background:#4b5563}.cgp-effort__dot--filled{background:#d1d5db}.cgp-effort__text{color:#d1d5db}.cgp-gap-card__evidence-tag{background:#4b5563;color:#d1d5db}.cgp-empty-state__subtext{color:#9ca3af}}.causal-insights-panel{background:#0f172a66;border:1px solid #334155;border-radius:12px;overflow:hidden;color:#e2e8f0}.causal-initial-state{display:flex;flex-direction:column;align-items:center;padding:3rem 2rem;text-align:center}.initial-icon{font-size:3rem;margin-bottom:1rem;filter:drop-shadow(0 4px 6px rgba(0,0,0,.3))}.initial-title{font-size:1.5rem;font-weight:600;color:#f1f5f9;margin:0 0 .75rem}.initial-description{font-size:.95rem;color:#94a3b8;max-width:500px;line-height:1.6;margin:0 0 1.5rem}.initial-features{list-style:none;padding:0;margin:0 0 2rem;display:flex;flex-direction:column;gap:.5rem;text-align:left}.initial-features li{font-size:.875rem;color:#cbd5e1;padding:.5rem 1rem;background:#3b82f614;border-radius:6px;border-left:3px solid rgba(59,130,246,.4)}.btn-analyze{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.btn-analyze:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease}.btn-analyze:active:before{width:300px;height:300px}.btn-analyze:hover{transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf673}.btn-analyze:active{transform:translateY(0)}.initial-note{font-size:.8rem;color:#64748b;margin:1rem 0 0;font-style:italic}.causal-loading-state{display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;text-align:center}.causal-loading-state .loading-spinner{width:56px;height:56px;border:4px solid #334155;border-top-color:#8b5cf6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.loading-title{font-size:1.25rem;font-weight:600;color:#f1f5f9;margin:0 0 1.5rem}.loading-progress-bar{width:100%;max-width:320px;height:8px;background:#1e293b;border-radius:4px;overflow:hidden;margin-bottom:1rem}.loading-progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:4px;transition:width .5s ease-out}.loading-status{font-size:.95rem;color:#cbd5e1;margin:0 0 .5rem}.loading-time{font-size:.8rem;color:#64748b;margin:0}.causal-error-state{display:flex;flex-direction:column;align-items:center;padding:3rem 2rem;text-align:center}.error-title{font-size:1.25rem;font-weight:600;color:#fca5a5;margin:0 0 .75rem}.error-message{font-size:.95rem;color:#94a3b8;max-width:400px;margin:0 0 1.5rem;line-height:1.5}.btn-retry{padding:.625rem 1.5rem;background:#ef444426;border:1px solid rgba(239,68,68,.4);border-radius:6px;color:#fca5a5;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-retry:hover{background:#ef444440;border-color:#ef444499}.causal-loaded-state{display:flex;flex-direction:column}.loaded-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #334155;background:#1e293b99}.header-left{display:flex;align-items:center;gap:.75rem}.header-icon{font-size:1.25rem}.header-title{font-size:1.125rem;font-weight:600;color:#f1f5f9;margin:0}.confidence-indicator{font-size:.75rem;font-weight:500;padding:.25rem .5rem;background:#22c55e26;border-radius:9999px;cursor:help}.btn-refresh{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;background:#33415580;border:1px solid #475569;border-radius:6px;color:#94a3b8;font-size:.8rem;cursor:pointer;transition:all .2s ease}.btn-refresh:hover{background:#47556980;color:#f1f5f9}.loaded-summary{display:flex;justify-content:space-around;gap:1rem;padding:1.25rem;background:#0f172a66;border-bottom:1px solid #334155}.summary-stat .stat-value{font-size:1.75rem;font-weight:700;color:#a78bfa}.summary-stat .stat-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.loaded-sections{display:flex;flex-direction:column;gap:1px;background:#334155}.loaded-footer{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.25rem;border-top:1px solid #334155;background:#0f172a99}.confidence-notes{font-size:.8rem;color:#94a3b8}.confidence-notes summary{cursor:pointer;font-weight:500}.confidence-notes summary:hover{color:#cbd5e1}.confidence-notes p{margin:.5rem 0 0;padding-left:.75rem;border-left:2px solid #475569;line-height:1.5}.generated-at{font-size:.75rem;color:#64748b}.causal-section{background:#0f172a99}.section-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.25rem;background:transparent;border:none;cursor:pointer;transition:background-color .2s ease}.section-header:hover{background:#1e293b80}.section-header-left{display:flex;align-items:center;gap:.75rem}.section-title{font-size:1rem;font-weight:600;color:#f1f5f9;margin:0}.section-count{font-size:.75rem;font-weight:600;color:#a78bfa;background:#8b5cf626;padding:.125rem .5rem;border-radius:9999px}.section-toggle{font-size:.75rem;color:#64748b;transition:transform .2s ease}.section-content{padding:.5rem 1.25rem 1.25rem;animation:slideDown .2s ease-out}.causal-section--root-causes{border-left:3px solid #ef4444}.root-cause-card{background:#1e293b80;border:1px solid #475569;border-radius:8px;padding:1rem;margin-bottom:.75rem}.root-cause-card:last-child{margin-bottom:0}.cause-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.confidence-badge{font-size:.65rem;font-weight:700;padding:.125rem .375rem;border:1px solid;border-radius:4px;flex-shrink:0}.cause-description{font-size:.95rem;color:#f1f5f9;margin:0;line-height:1.5}.cause-details{display:flex;flex-direction:column;gap:.75rem;padding-top:.75rem;border-top:1px solid #334155}.detail-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.375rem}.evidence-list{margin:0;padding-left:1.25rem}.evidence-list li{font-size:.85rem;color:#cbd5e1;margin-bottom:.25rem;line-height:1.4}.evidence-list li:last-child{margin-bottom:0}.metrics-tags{display:flex;flex-wrap:wrap;gap:.375rem}.metric-tag{font-size:.75rem;padding:.25rem .5rem;background:#3b82f626;color:#93c5fd;border-radius:4px}.causal-section--interventions{border-left:3px solid #8b5cf6}.intervention-card{background:#1e293b80;border:1px solid #475569;border-radius:8px;padding:1rem;margin-bottom:.75rem}.intervention-card:last-child{margin-bottom:0}.intervention-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.intervention-rank{font-size:.8rem;font-weight:700;color:#a78bfa;background:#8b5cf633;padding:.25rem .5rem;border-radius:4px}.priority-score{font-size:.75rem;color:#64748b}.intervention-title{font-size:1rem;font-weight:600;color:#f1f5f9;margin:0 0 .375rem;line-height:1.4}.intervention-description{font-size:.875rem;color:#94a3b8;margin:0 0 .75rem;line-height:1.5}.intervention-badges{display:flex;gap:.5rem;margin-bottom:.75rem}.badge{font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.cascading-benefits{padding-top:.75rem;border-top:1px solid #334155}.benefits-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;display:block;margin-bottom:.375rem}.benefits-list{margin:0;padding-left:1.25rem}.benefits-list li{font-size:.85rem;color:#a78bfa;margin-bottom:.25rem}.benefits-list li:last-child{margin-bottom:0}.more-benefits{color:#64748b!important;font-style:italic}.causal-section--scenarios{border-left:3px solid #3b82f6}.scenarios-intro{font-size:.875rem;color:#94a3b8;margin:0 0 1rem;line-height:1.5}.scenarios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.scenario-card{background:#1e293b80;border:1px solid #475569;border-radius:8px;overflow:hidden}.scenario-header{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:2px solid;background:#0f172a66}.scenario-icon{font-size:1rem}.scenario-label{font-size:.875rem;font-weight:600}.scenario-description{font-size:.8rem;color:#94a3b8;padding:.75rem;margin:0;line-height:1.5;border-bottom:1px solid #334155}.scenario-outcomes{padding:.5rem}.outcome-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;font-size:.75rem;border-radius:4px}.outcome-row:hover{background:#3341554d}.outcome-metric{color:#94a3b8;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outcome-values{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.outcome-current{color:#64748b}.outcome-arrow{color:#475569}.outcome-projected{font-weight:600}.scenario-card--best_case{border-color:#22c55e4d}.scenario-card--partial_fix{border-color:#f59e0b4d}.scenario-card--no_action{border-color:#f973164d}.scenario-card--worst_case{border-color:#ef44444d}@media (max-width: 768px){.causal-initial-state,.causal-loading-state,.causal-error-state{padding:2rem 1rem}.initial-features{width:100%}.loaded-summary{flex-wrap:wrap;gap:.75rem}.summary-stat{flex:1 1 40%;min-width:80px}.scenarios-grid{grid-template-columns:1fr}.loaded-header{flex-direction:column;gap:.75rem;align-items:flex-start}.btn-refresh{width:100%;justify-content:center}.loaded-footer{flex-direction:column;gap:.5rem;align-items:flex-start}.intervention-badges{flex-wrap:wrap}}@media print{.causal-insights-panel{background:#fff;color:#000;border:1px solid #000}.btn-analyze,.btn-retry,.btn-refresh{display:none}.causal-section{page-break-inside:avoid}.section-header{background:#f5f5f5}.root-cause-card,.intervention-card,.scenario-card{border:1px solid #ccc;box-shadow:none}.summary-stat .stat-value,.intervention-rank{color:#333}}.lineage-history-panel{background:#fff;border-radius:8px;border:1px solid #e5e7eb;padding:16px;min-height:400px}.lineage-history-panel.loading,.lineage-history-panel.error{display:flex;align-items:center;justify-content:center}.error-message{display:flex;align-items:center;gap:8px;color:#dc2626}.error-icon{font-size:20px}.lineage-history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.lineage-history-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.event-count{font-size:13px;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:12px}.lineage-filters{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:12px;font-weight:500;color:#6b7280}.filter-group select{padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff;min-width:150px}.filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.lineage-timeline{max-height:500px;overflow-y:auto;padding-right:8px}.no-events{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 16px;color:#6b7280}.no-events-icon{font-size:32px;margin-bottom:8px}.no-events p{margin:0;font-size:14px}.timeline-day{margin-bottom:16px}.timeline-date{font-size:12px;font-weight:600;color:#374151;background:#f9fafb;padding:4px 8px;border-radius:4px;margin-bottom:8px;position:sticky;top:0;z-index:1}.timeline-events{display:flex;flex-direction:column;gap:8px;padding-left:16px;border-left:2px solid #e5e7eb}.timeline-event{display:flex;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:6px;border:1px solid;cursor:pointer;transition:transform .1s,box-shadow .1s}.timeline-event:hover{transform:translate(2px);box-shadow:0 2px 4px #0000000d}.timeline-event.selected{box-shadow:0 0 0 2px #3b82f680}.event-time{font-size:11px;color:#6b7280;font-family:monospace;min-width:48px}.event-icon{font-size:16px}.event-content{flex:1;min-width:0}.event-type{font-size:13px;font-weight:500;color:#111827;text-transform:capitalize}.event-source{font-size:12px;color:#6b7280;margin-top:2px}.event-parents{font-size:11px;color:#9ca3af;margin-top:4px}.event-details-panel{margin-top:16px;padding:16px;background:#fff;border-radius:8px;border:1px solid #d1d5db;box-shadow:0 2px 8px #0000001a}.event-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.event-details-header h4{margin:0;font-size:15px;font-weight:600;color:#111827}.close-btn{background:#f3f4f6;border:1px solid #d1d5db;font-size:18px;color:#374151;cursor:pointer;padding:4px 8px;border-radius:4px;line-height:1}.close-btn:hover{background:#e5e7eb;color:#111827}.event-details-content{display:flex;flex-direction:column;gap:10px}.detail-row{display:flex;gap:12px;font-size:13px;padding:4px 0}.detail-row.payload{flex-direction:column}.detail-label{color:#374151;font-weight:600;min-width:80px;flex-shrink:0}.detail-value{color:#000!important;font-weight:600!important;word-break:break-all}span.detail-value{color:#000!important;font-weight:600!important;font-size:13px!important}code.detail-value{font-family:monospace!important;background:#fef3c7!important;color:#000!important;font-weight:600!important;padding:3px 8px!important;border-radius:4px!important;font-size:12px!important;border:1px solid #f59e0b!important}.event-details-content span.detail-value{color:#000!important;font-weight:600!important}.event-details-content code.detail-value{color:#000!important;font-weight:600!important;background:#fef3c7!important}.detail-value pre{margin:0!important;padding:12px!important;background:#fffbeb!important;color:#000!important;font-weight:600!important;border:2px solid #f59e0b!important;border-radius:6px!important;font-size:13px!important;overflow-x:auto;max-height:200px;overflow-y:auto}.event-details-panel pre{background:#fffbeb!important;color:#000!important;font-weight:600!important}.lineage-timeline::-webkit-scrollbar{width:6px}.lineage-timeline::-webkit-scrollbar-track{background:#f3f4f6;border-radius:3px}.lineage-timeline::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.lineage-timeline::-webkit-scrollbar-thumb:hover{background:#9ca3af}.lineage-comparison-panel{background:#fff;border-radius:8px;border:1px solid #e5e7eb;padding:16px}.lineage-comparison-panel.loading{display:flex;align-items:center;justify-content:center;min-height:200px}.loading-spinner{color:#6b7280;font-size:14px}.comparison-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.comparison-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.create-snapshot-btn{padding:6px 12px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:background .15s}.create-snapshot-btn:hover{background:#2563eb}.error-banner{display:flex;align-items:center;gap:8px;padding:12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;margin-bottom:16px}.no-snapshots{display:flex;flex-direction:column;align-items:center;padding:48px 16px;color:#6b7280;text-align:center}.no-snapshots-icon{font-size:32px;margin-bottom:8px}.no-snapshots p{margin:4px 0;font-size:14px}.no-snapshots .hint{color:#9ca3af;font-size:13px}.snapshot-selection{display:flex;align-items:flex-end;gap:16px;margin-bottom:24px;flex-wrap:wrap}.snapshot-select{flex:1;min-width:200px}.snapshot-select label{display:block;font-size:12px;font-weight:500;color:#6b7280;margin-bottom:4px}.snapshot-select select{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;background:#fff}.snapshot-select select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.comparison-arrow{font-size:24px;color:#9ca3af;padding-bottom:4px}.compare-btn{padding:8px 20px;background:#10b981;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .15s}.compare-btn:hover:not(:disabled){background:#059669}.compare-btn:disabled{background:#d1d5db;cursor:not-allowed}.comparison-results{border-top:1px solid #e5e7eb;padding-top:16px}.stats-comparison{display:flex;gap:24px;margin-bottom:24px}.stats-column{flex:1;background:#f9fafb;border-radius:8px;padding:16px}.stats-column h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.stat-item{display:flex;flex-direction:column;gap:2px}.stat-label{font-size:11px;color:#6b7280;text-transform:uppercase}.stat-value{font-size:18px;font-weight:600;color:#111827;display:flex;align-items:center;gap:8px}.delta-indicator{font-size:12px;padding:1px 4px;border-radius:4px}.delta-indicator.positive{background:#d1fae5;color:#059669}.delta-indicator.negative{background:#fef2f2;color:#dc2626}.stats-divider{display:flex;flex-direction:column;justify-content:center;gap:8px}.delta-badge{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:500;text-align:center}.delta-badge.added{background:#d1fae5;color:#059669}.delta-badge.removed{background:#fef2f2;color:#dc2626}.event-changes{display:flex;gap:16px}.change-section{flex:1;border-radius:8px;padding:16px}.change-section.added{background:#f0fdf4;border:1px solid #bbf7d0}.change-section.removed{background:#fef2f2;border:1px solid #fecaca}.change-section h4{margin:0 0 12px;font-size:13px;font-weight:600}.change-section.added h4{color:#059669}.change-section.removed h4{color:#dc2626}.event-list{display:flex;flex-direction:column;gap:8px}.change-event{display:flex;gap:8px;font-size:13px;padding:6px 8px;background:#ffffff80;border-radius:4px}.event-type{font-weight:500;color:#111827;text-transform:capitalize}.event-source{color:#6b7280}.more-events{font-size:12px;color:#6b7280;font-style:italic;padding:4px 8px}.no-changes{display:flex;flex-direction:column;align-items:center;padding:24px;color:#059669;text-align:center;width:100%}.no-changes-icon{font-size:24px;margin-bottom:8px}.no-changes p{margin:0;font-size:14px}.strategic-dashboard{display:flex;flex-direction:column;gap:2rem;padding:1.5rem;background:linear-gradient(180deg,#0f172a,#1e293b);min-height:100vh;color:#e2e8f0}.strategic-dashboard--loading{display:flex;align-items:center;justify-content:center;min-height:60vh}.dashboard-loading-container{text-align:center}.dashboard-loading-container .loading-spinner{width:48px;height:48px;border:4px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.error-banner{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5}.error-banner button{background:transparent;border:1px solid rgba(239,68,68,.5);color:#fca5a5;padding:.25rem .75rem;border-radius:4px;cursor:pointer}.error-banner button:hover{background:#ef444433}.zone-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.zone-header--with-action{justify-content:space-between}.zone-header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.zone-header-right{display:flex;align-items:center;gap:1rem}.zone-title{font-size:1.25rem;font-weight:600;color:#f1f5f9;margin:0}.zone-subtitle{font-size:.875rem;color:#94a3b8}.zone-executive-panel{background:linear-gradient(135deg,#1e293bcc,#0f172ae6);border:1px solid #334155;border-radius:12px;padding:1.5rem}.panel-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}@media (max-width: 1200px){.panel-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.panel-grid{grid-template-columns:1fr}}.status-card{background:#0f172a99;border:1px solid #334155;border-radius:10px;padding:1.25rem;transition:all .25s ease;animation:fadeInUp .4s ease-out forwards}.panel-grid .status-card:nth-child(1){animation-delay:0ms}.panel-grid .status-card:nth-child(2){animation-delay:.1s}.panel-grid .status-card:nth-child(3){animation-delay:.2s}.status-card:hover{border-color:#475569;box-shadow:0 8px 24px #00000059;transform:translateY(-2px)}.status-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.status-card-icon{font-size:1.25rem}.status-card-title{font-size:.95rem;font-weight:600;color:#e2e8f0;margin:0;flex:1}.status-card-badge{font-size:.7rem;padding:.2rem .5rem;background:#3b82f626;color:#60a5fa;border-radius:4px;font-weight:500}.status-card-body{display:flex;flex-direction:column;gap:1rem}.status-card--asset .asset-gauge{width:120px;height:120px;margin:0 auto}.status-card--asset .asset-rating{text-align:center}.status-card--asset .rating-badge{display:inline-block;padding:.35rem .75rem;border-radius:6px;font-size:.85rem;font-weight:600;color:#fff}.score-guidance{background:#3b82f614;border-radius:8px;padding:.75rem;border-left:3px solid rgba(59,130,246,.4)}.score-guidance--ai{border-left-color:#8b5cf6;background:#8b5cf614}.guidance-target{display:flex;align-items:center;gap:.35rem;margin-bottom:.5rem}.target-label{font-size:.75rem;color:#94a3b8}.target-value{font-size:1rem;font-weight:700;color:#60a5fa}.target-rating{font-size:.75rem;color:#94a3b8}.guidance-summary{font-size:.8rem;color:#cbd5e1;margin:0;line-height:1.4}.score-guidance--ai .guidance-summary{color:#c4b5fd}.mece-pillars-widget{background:#0f172a99;border:1px solid #334155;border-radius:10px;padding:1.25rem}.mece-pillars-widget--empty{display:flex;align-items:center;justify-content:center;min-height:200px;color:#64748b}.mece-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.mece-icon{font-size:1.25rem}.mece-title{font-size:.95rem;font-weight:600;color:#e2e8f0;margin:0;flex:1}.mece-badge{font-size:.7rem;padding:.2rem .5rem;background:#22c55e26;color:#4ade80;border-radius:4px;font-weight:500}.mece-pillars-list{display:flex;flex-direction:column;gap:1rem}.pillar-main-row{display:flex;align-items:center;gap:.75rem}.pillar-info{min-width:140px;display:flex;flex-direction:column}.pillar-name{font-size:.85rem;color:#e2e8f0;font-weight:500}.pillar-weight{font-size:.7rem;color:#64748b}.pillar-bar-container{flex:1;height:10px;background:#1e293b;border-radius:5px;overflow:hidden}.pillar-bar-fill{height:100%;border-radius:5px;transition:width .5s ease-out}.pillar-score{min-width:32px;text-align:right;font-size:.9rem;font-weight:600}.pillar-sub-items{margin-left:1rem;padding-left:.5rem;border-left:1px solid #334155;margin-top:.5rem}.pillar-sub-row{display:flex;align-items:center;gap:.5rem;padding:.25rem 0;font-size:.8rem}.sub-connector{color:#475569;font-family:monospace}.sub-label{color:#94a3b8;flex:1}.sub-score{color:#e2e8f0;font-weight:500;min-width:28px;text-align:right}.mece-note{font-size:.75rem;color:#64748b;text-align:center;margin:0;padding-top:.75rem;border-top:1px solid #334155;margin-top:.75rem}.execution-risk-card{background:#0f172a99;border:1px solid #78350f;border-radius:10px;padding:1.25rem}.risk-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.risk-icon{font-size:1.25rem}.risk-title{font-size:.95rem;font-weight:600;color:#e2e8f0;margin:0;flex:1}.risk-badge{font-size:.7rem;padding:.2rem .5rem;background:#f59e0b26;color:#fbbf24;border-radius:4px;font-weight:500}.help-button{background:transparent;border:1px solid rgba(148,163,184,.3);border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:.85rem;color:#94a3b8;transition:all .2s ease;margin-left:auto;flex-shrink:0}.help-button:hover{background:#3b82f626;border-color:#3b82f6;color:#60a5fa;transform:scale(1.1)}.help-button:focus{outline:2px solid #3b82f6;outline-offset:2px}.risk-body{display:flex;flex-direction:column;gap:1rem}.risk-gauge-section{display:flex;flex-direction:column;align-items:center;gap:.5rem}.risk-gauge-wrapper{width:120px;height:120px;margin:0 auto}.risk-level-label{font-size:.9rem;font-weight:600}.risk-context{background:#f59e0b14;border-radius:6px;padding:.75rem;border-left:3px solid rgba(245,158,11,.5)}.risk-context--ai{border-left-color:#8b5cf6;background:#8b5cf614}.risk-narrative{font-size:.8rem;color:#fcd34d;margin:0;line-height:1.4}.risk-context--ai .risk-narrative{color:#c4b5fd}.risk-factors{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;padding-top:.75rem;border-top:1px solid #334155}.risk-factor{display:flex;flex-direction:column;align-items:center;gap:.15rem;text-align:center}.risk-factor .factor-icon{font-size:1rem}.risk-factor .factor-label{font-size:.7rem;color:#94a3b8}.risk-factor .factor-value{font-size:.85rem;font-weight:600;color:#e2e8f0}.risk-factor .factor-source{font-size:.65rem;color:#64748b}.zone-trust-bridge{background:linear-gradient(135deg,#1e293b99,#0f172acc);border:1px solid #334155;border-radius:12px;padding:1.5rem}.zone-trust-bridge .zone-header{border-bottom:1px solid #334155;padding-bottom:1rem;margin-bottom:1.5rem}.bridge-ai-badge{display:flex;align-items:center;gap:.5rem;margin-left:auto;padding:.4rem .75rem;background:linear-gradient(135deg,#8b5cf633,#3b82f633);border:1px solid rgba(139,92,246,.3);border-radius:20px;font-size:.8rem;color:#a78bfa;font-weight:500}.badge-indicator{width:8px;height:8px;background:#a78bfa;border-radius:50%}@keyframes dashboard-highlight{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.1)}}.prism-wrapper{min-height:400px}.zone-actionable-intelligence{background:linear-gradient(135deg,#1e293b99,#0f172acc);border:1px solid #334155;border-radius:12px;padding:1.5rem}.zone-actionable-intelligence .zone-header{border-bottom:1px solid #334155;padding-bottom:1rem;margin-bottom:1rem}.pistoia-badge{display:flex;align-items:center;gap:.4rem;padding:.35rem .7rem;background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:20px;font-size:.75rem;color:#34d399;font-weight:500}.pistoia-badge .badge-icon{font-weight:700}.btn-synthesize{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.btn-synthesize:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .4s ease,height .4s ease}.btn-synthesize:active:before{width:300px;height:300px}.btn-synthesize:hover:not(:disabled){transform:translateY(-2px) scale(1.02);box-shadow:0 6px 24px #3b82f673}.btn-synthesize:active:not(:disabled){transform:translateY(0) scale(.98)}.btn-synthesize:disabled{opacity:.7;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.action-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid #334155;padding-bottom:.5rem}.action-tab{padding:.6rem 1.25rem;background:transparent;border:1px solid transparent;border-radius:6px 6px 0 0;color:#94a3b8;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.action-tab:after{content:"";position:absolute;bottom:-1px;left:50%;width:0;height:2px;background:#3b82f6;transition:all .25s ease;transform:translate(-50%)}.action-tab:hover:not(:disabled){color:#e2e8f0;background:#ffffff0d;transform:translateY(-1px)}.action-tab.active{color:#3b82f6;border-color:#334155;border-bottom-color:#0f172a;background:#3b82f61a}.action-tab.active:after{width:80%}.action-tab.disabled{opacity:.4;cursor:not-allowed}.action-content{position:relative;min-height:200px;animation:fadeIn .3s ease-out}.generating-overlay{position:absolute;inset:0;background:#0f172af2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;border-radius:8px;z-index:10}.generating-spinner{width:40px;height:40px;border:3px solid #334155;border-top-color:#8b5cf6;border-radius:50%;animation:spin 1s linear infinite}.generating-overlay p{color:#e2e8f0;margin:0}.generating-note{color:#64748b!important;font-size:.85rem}.summary-empty,.actions-empty,.value-drivers-empty{text-align:center;padding:3rem 2rem;background:#0f172a80;border:2px dashed #334155;border-radius:10px}.summary-empty .empty-icon,.actions-empty .empty-icon,.value-drivers-empty .empty-icon{font-size:3rem;margin-bottom:1rem}.summary-empty h3,.actions-empty h3,.value-drivers-empty h3{font-size:1.25rem;color:#e2e8f0;margin:0 0 .75rem}.summary-empty p,.actions-empty p,.value-drivers-empty p{color:#94a3b8;max-width:400px;margin:0 auto}.executive-summary-content{padding:1.5rem;background:#0f172a66;border-radius:8px}.summary-text{line-height:1.7;color:#e2e8f0}.summary-text p{margin:0 0 1rem}.summary-text p:last-child{margin-bottom:0}.key-takeaway{margin-top:1.5rem;padding:1rem;background:#3b82f61a;border-left:4px solid #3b82f6;border-radius:0 8px 8px 0;color:#e2e8f0}.key-takeaway strong{color:#60a5fa}.value-drivers-content{padding:1.5rem}.value-drivers-content .no-data{color:#64748b;text-align:center}.roi-total{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#10b9811a,#0596691a);border:1px solid rgba(16,185,129,.3);border-radius:10px;margin-bottom:1.5rem}.roi-label{font-size:1rem;color:#94a3b8}.roi-value{font-size:2rem;font-weight:700;color:#34d399}.drivers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.driver-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;background:#0f172a99;border:1px solid #334155;border-radius:8px;text-align:center}.driver-name{font-size:.85rem;color:#94a3b8}.driver-value{font-size:1.5rem;font-weight:700;color:#22c55e}.driver-tasks{font-size:.75rem;color:#64748b}.value-drivers-hierarchical{padding:1rem}.value-drivers-summary{display:flex;justify-content:space-around;gap:1.5rem;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#10b9811f,#05966914);border:1px solid rgba(16,185,129,.25);border-radius:10px;margin-bottom:1.5rem}.summary-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.summary-stat .stat-value{font-size:1.75rem;font-weight:700;color:#34d399}.summary-stat .stat-label{font-size:.8rem;color:#94a3b8}.driver-accordion{display:flex;flex-direction:column;gap:.5rem}.driver-group{border:1px solid #334155;border-radius:8px;overflow:hidden;transition:border-color .2s}.driver-group:hover{border-color:#475569}.driver-group.expanded{border-color:#3b82f6}.driver-header{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#0f172a99;cursor:pointer;transition:background-color .2s}.driver-header:hover{background:#1e293bcc}.driver-expand-icon{color:#64748b;font-size:.75rem;width:1rem;flex-shrink:0}.driver-info{flex:1;display:flex;align-items:center;gap:.75rem;min-width:0}.driver-info .driver-name{font-size:.95rem;font-weight:600;color:#e2e8f0}.driver-task-count{font-size:.75rem;color:#64748b;background:#3b82f61a;padding:.125rem .5rem;border-radius:9999px}.driver-header .driver-value{font-size:1.1rem;font-weight:700;color:#34d399;flex-shrink:0}.driver-tasks-list{background:#0f172a66;border-top:1px solid #334155}.task-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgba(51,65,85,.5);transition:background-color .2s}.task-row:last-child{border-bottom:none}.task-row:hover{background:#1e293b66}.task-station{flex-shrink:0}.task-station .station-icon{font-size:1.1rem}.task-info{flex:1;display:flex;flex-direction:column;gap:.25rem;min-width:0}.task-title{font-size:.875rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-fair-rules{font-size:.7rem;color:#64748b}.task-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.task-priority{font-size:.65rem;font-weight:600;text-transform:uppercase;color:#fff;padding:.125rem .4rem;border-radius:4px}.task-effort{font-size:.75rem;color:#94a3b8;min-width:2.5rem;text-align:center}.task-value{font-size:.85rem;font-weight:600;color:#34d399;min-width:4rem;text-align:right}.value-drivers-cta{margin-top:1.5rem;padding:1.25rem;background:#3b82f614;border:1px dashed rgba(59,130,246,.3);border-radius:8px;text-align:center}.cta-text{font-size:.875rem;color:#94a3b8;margin:0 0 1rem;line-height:1.5}.btn-action-plan{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .15s,box-shadow .15s}.btn-action-plan:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-action-plan:active{transform:translateY(0)}.action-content .bridge-recommendations{background:transparent;border:none;padding:0}.context-modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.context-modal{background:#1e293b;border:1px solid #334155;border-radius:12px;width:90%;max-width:560px;box-shadow:0 20px 60px #00000080;animation:modal-appear .2s ease-out}@keyframes modal-appear{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.context-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #334155}.context-modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#f1f5f9}.close-modal-btn{background:transparent;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.close-modal-btn:hover{color:#e2e8f0}.context-modal-body{padding:1.5rem}.context-modal-body label{display:block;margin-bottom:.5rem;color:#e2e8f0}.context-help-text{font-size:.875rem;color:#94a3b8;margin:0 0 1rem;line-height:1.5}.context-textarea{width:100%;min-height:120px;padding:.875rem 1rem;border:1px solid #334155;border-radius:8px;background:#0f172a;color:#e2e8f0;font-size:.9375rem;font-family:inherit;resize:vertical;transition:border-color .2s,box-shadow .2s}.context-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.context-textarea::placeholder{color:#64748b}.context-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;background:#0f172a80;border-top:1px solid #334155;border-radius:0 0 12px 12px}.btn-cancel{padding:.625rem 1.25rem;border:1px solid #334155;border-radius:6px;background:transparent;color:#94a3b8;font-size:.9375rem;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#33415580;color:#e2e8f0}.btn-generate{padding:.625rem 1.5rem;border:none;border-radius:6px;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-generate:hover{background:linear-gradient(135deg,#a78bfa,#8b5cf6);box-shadow:0 4px 12px #8b5cf666}.driver-header.clickable{cursor:pointer;-webkit-user-select:none;user-select:none}.driver-tasks{background:#0f172a66;border-top:1px solid #334155;padding:.75rem}.driver-tasks.empty{padding:1rem;text-align:center;color:#64748b;font-style:italic}.driver-task-item{background:#1e293b80;border-radius:6px;padding:.75rem;margin-bottom:.5rem}.driver-task-item:last-child{margin-bottom:0}.task-header{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;flex-wrap:wrap}.task-priority{font-size:.7rem;font-weight:600;text-transform:uppercase;padding:.125rem .375rem;border-radius:4px;flex-shrink:0}.task-priority.priority-critical,.task-priority.priority-Critical{background:#ef444433;color:#fca5a5}.task-priority.priority-high,.task-priority.priority-High{background:#f9731633;color:#fdba74}.task-priority.priority-medium,.task-priority.priority-Medium{background:#eab30833;color:#fcd34d}.task-priority.priority-low,.task-priority.priority-Low{background:#22c55e33;color:#86efac}.task-title{font-size:.95rem;font-weight:600;color:#f1f5f9;line-height:1.4;flex:1;text-align:right}.driver-task-item .task-header .task-title{color:#fff!important;font-weight:700!important;font-size:1rem!important;opacity:1!important}.task-steps{margin-top:.5rem;padding-left:.5rem;border-left:2px solid #334155}.task-step{display:flex;align-items:flex-start;gap:.5rem;padding:.25rem 0;font-size:.8rem}.step-number{color:#64748b;flex-shrink:0;width:1.25rem}.step-text{color:#94a3b8;flex:1}.step-complexity{font-size:.65rem;font-weight:600;text-transform:uppercase;padding:.0625rem .25rem;border-radius:3px;flex-shrink:0}.step-complexity.complexity-low{background:#22c55e26;color:#86efac}.step-complexity.complexity-medium{background:#eab30826;color:#fcd34d}.step-complexity.complexity-high{background:#f9731626;color:#fdba74}.task-step-more{font-size:.75rem;color:#64748b;font-style:italic;padding:.25rem 0}.task-source{font-size:.6rem;font-weight:700;text-transform:uppercase;padding:.125rem .375rem;border-radius:3px;flex-shrink:0}.task-source.source-journey,.task-source.source-data{background:#3b82f633;color:#93c5fd}.task-source.source-org{background:#a855f733;color:#d8b4fe}.task-description{font-size:.8rem;color:#94a3b8;margin-top:.25rem;line-height:1.4}.task-value{font-size:.75rem;color:#34d399;font-weight:600;margin-top:.5rem;padding-top:.375rem;border-top:1px solid #334155}.driver-task-item.source-org{border-left:3px solid #a855f7}.driver-task-item.source-journey{border-left:3px solid #3b82f6}.prism-glow{animation:none!important;fill-opacity:.05!important;pointer-events:none}.zone-regulatory-compliance{background:linear-gradient(135deg,#581c871a,#1e293bf2);border:1px solid rgba(139,92,246,.2);border-radius:12px;padding:1.5rem}.zone-regulatory-compliance .zone-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.zone-regulatory-compliance .zone-title{color:#c4b5fd}.zone-regulatory-compliance .zone-subtitle{color:#a78bfa}.regulatory-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:9999px;font-size:.75rem;color:#c4b5fd;margin-left:auto}.regulatory-badge .badge-indicator{width:8px;height:8px;border-radius:50%;background:#a855f7;animation:pulse 2s ease-in-out infinite}.regulatory-content{display:flex;justify-content:center}.regulatory-content--grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;max-width:1200px;margin:0 auto}@media (max-width: 900px){.regulatory-content--grid{grid-template-columns:1fr;gap:16px}}.regulatory-badges{display:flex;gap:12px;margin-left:auto}.regulatory-badge.privacy-badge .badge-indicator{background:#22c55e}.regulatory-badge.fda-badge .badge-indicator{background:#0891b2}.zone-regulatory-compliance .alcoa-summary-card{max-width:600px;width:100%;background:#1e293bcc;border-color:#8b5cf633}.zone-regulatory-compliance .alcoa-summary-card:hover{border-color:#8b5cf666;box-shadow:0 4px 20px #8b5cf61a}.zone-regulatory-compliance .alcoa-summary-card .alcoa-card-header{background:linear-gradient(to right,#1e293be6,#1e293bcc);border-bottom-color:#ffffff1a}.zone-regulatory-compliance .alcoa-summary-card .alcoa-card-icon{background:#8b5cf633}.zone-regulatory-compliance .alcoa-summary-card .alcoa-card-title{color:#f1f5f9}.zone-regulatory-compliance .alcoa-summary-card .alcoa-asset-name{color:#94a3b8}.zone-regulatory-compliance .alcoa-summary-card .alcoa-score-value{color:#f1f5f9!important}.zone-regulatory-compliance .alcoa-summary-card .alcoa-compliance-description,.zone-regulatory-compliance .alcoa-summary-card .section-label{color:#94a3b8}.zone-regulatory-compliance .alcoa-summary-card .principle-label{color:#cbd5e1}.zone-regulatory-compliance .alcoa-summary-card .principle-score{color:#f1f5f9}.zone-regulatory-compliance .alcoa-summary-card .principle-bar-track{background:#ffffff1a}.zone-regulatory-compliance .alcoa-summary-card .alcoa-finding-badge{border:1px solid rgba(255,255,255,.1)}.zone-regulatory-compliance .alcoa-summary-card .alcoa-findings-compact{color:#94a3b8}.zone-regulatory-compliance .alcoa-summary-card .alcoa-card-footer{background:#1e293be6;border-top-color:#ffffff1a}.zone-regulatory-compliance .alcoa-summary-card .alcoa-timestamp{color:#64748b}.zone-regulatory-compliance .alcoa-summary-card .alcoa-action-btn.secondary{background:#33415580;color:#f1f5f9;border-color:#fff3}.zone-regulatory-compliance .alcoa-summary-card .alcoa-action-btn.secondary:hover{background:#47556980}.zone-regulatory-compliance .alcoa-summary-card .alcoa-empty-state p,.zone-regulatory-compliance .alcoa-summary-card .alcoa-error-state p{color:#94a3b8}.zone-regulatory-compliance .alcoa-summary-card .alcoa-run-btn.primary{background:#8b5cf6}.zone-regulatory-compliance .alcoa-summary-card .alcoa-run-btn.primary:hover{background:#7c3aed}.zone-regulatory-compliance .alcoa-summary-card .alcoa-retry-btn{background:#33415580;color:#f1f5f9;border-color:#fff3}.zone-regulatory-compliance .alcoa-summary-card .skeleton-gauge,.zone-regulatory-compliance .alcoa-summary-card .skeleton-bar{background:linear-gradient(90deg,#33415580 25%,#47556980,#33415580 75%);background-size:200% 100%}.zone-regulatory-compliance .compliance-lens-card{max-width:600px;width:100%;background:#1e293bcc;border-color:#22c55e33}.zone-regulatory-compliance .compliance-lens-card:hover{border-color:#22c55e66;box-shadow:0 4px 20px #22c55e1a}.zone-regulatory-compliance .compliance-lens-card .compliance-card-header{background:linear-gradient(to right,#1e293be6,#1e293bcc);border-bottom-color:#ffffff1a}.zone-regulatory-compliance .compliance-lens-card .compliance-card-title{color:#f1f5f9}.zone-regulatory-compliance .compliance-lens-card .compliance-card-subtitle{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .compliance-card-content{color:#f1f5f9}.zone-regulatory-compliance .compliance-lens-card .regulations-header,.zone-regulatory-compliance .compliance-lens-card .findings-header{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .regulation-card{background:#33415580;border-color:#ffffff1a}.zone-regulatory-compliance .compliance-lens-card .regulation-card .reg-name{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .regulation-card .reg-bar{background:#ffffff1a}.zone-regulatory-compliance .compliance-lens-card .regulation-card .reg-level{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .compliance-card-footer{background:#1e293be6;border-top-color:#ffffff1a}.zone-regulatory-compliance .compliance-lens-card .compliance-timestamp{color:#64748b}.zone-regulatory-compliance .compliance-lens-card .compliance-action-btn.secondary{background:#33415580;color:#f1f5f9;border-color:#fff3}.zone-regulatory-compliance .compliance-lens-card .compliance-action-btn.secondary:hover{background:#47556980}.zone-regulatory-compliance .compliance-lens-card .compliance-empty-state p,.zone-regulatory-compliance .compliance-lens-card .compliance-error-state p{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .compliance-score-value{color:#f1f5f9}.zone-regulatory-compliance .compliance-lens-card .compliance-score-value .score-max{color:#94a3b8}.zone-regulatory-compliance .compliance-lens-card .compliance-score-info .score-level{color:#f1f5f9}.zone-regulatory-compliance .compliance-lens-card .compliance-score-info .score-description{color:#94a3b8}.zone-regulatory-compliance .fda-credibility-card{max-width:600px;width:100%;background:#1e293bcc;border-color:#0891b233}.zone-regulatory-compliance .fda-credibility-card:hover{border-color:#0891b266;box-shadow:0 4px 20px #0891b21a}.zone-regulatory-compliance .fda-credibility-card__header{background:linear-gradient(to right,#1e293be6,#1e293bcc);border-bottom-color:#ffffff1a}.zone-regulatory-compliance .fda-credibility-card__title{color:#f1f5f9}.zone-regulatory-compliance .fda-credibility-card__score-desc{color:#94a3b8}.zone-regulatory-compliance .fda-credibility-card__body{color:#f1f5f9}.zone-regulatory-compliance .fda-credibility-card__dimensions{background:#33415580}.zone-regulatory-compliance .fda-dimension-score__label{color:#94a3b8}.zone-regulatory-compliance .fda-dimension-score__value{color:#f1f5f9}.zone-regulatory-compliance .fda-dimension-score__bar-bg{background:#ffffff1a}.zone-regulatory-compliance .fda-model-risk{background:#33415580}.zone-regulatory-compliance .fda-model-risk__title{color:#94a3b8}.zone-regulatory-compliance .fda-model-risk__item-label{color:#64748b}.zone-regulatory-compliance .fda-model-risk__item-value{color:#f1f5f9}.zone-regulatory-compliance .fda-gaps-summary__title{color:#94a3b8}.zone-regulatory-compliance .fda-gaps-summary__item{background:#33415580}.zone-regulatory-compliance .fda-gaps-summary__label{color:#94a3b8}.zone-regulatory-compliance .fda-credibility-card__footer{background:#1e293be6;border-top-color:#ffffff1a}.zone-regulatory-compliance .fda-credibility-card__timestamp,.zone-regulatory-compliance .fda-credibility-card__version{color:#64748b}.zone-regulatory-compliance .fda-credibility-card__view-details{background:#33415580;color:#f1f5f9;border-color:#fff3}.zone-regulatory-compliance .fda-credibility-card__view-details:hover{background:#47556980}.zone-regulatory-compliance .fda-credibility-card__action-btn{background:#33415580;color:#94a3b8;border-color:#ffffff1a}.zone-regulatory-compliance .fda-credibility-card__action-btn:hover:not(:disabled){background:#47556980;color:#f1f5f9}.zone-regulatory-compliance .fda-empty-state__text,.zone-regulatory-compliance .fda-error-state__text{color:#94a3b8}.zone-regulatory-compliance .fda-empty-state__button{background:#0891b2cc}.zone-regulatory-compliance .fda-empty-state__button:hover:not(:disabled){background:#0891b2}.lineage-controls{display:flex;gap:1rem;margin-top:1.5rem;justify-content:center;padding:0 1rem}.lineage-toggle-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:2px solid #e5e7eb;border-radius:8px;background:#fff;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.lineage-toggle-btn:hover{border-color:#6366f1;background:#f5f5ff}.lineage-toggle-btn.active{border-color:#6366f1;background:#6366f1;color:#fff}.toggle-icon{font-size:1rem}.lineage-panel-wrapper{margin-top:1rem;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 6px #0000001a}@media (max-width: 640px){.lineage-controls{flex-direction:column;align-items:stretch}.lineage-toggle-btn{justify-content:center}}.assessment-value-banner{background:linear-gradient(135deg,#1e3a5f,#2563eb,#1e40af);border-radius:12px;padding:24px 32px;margin-bottom:24px;color:#fff;position:relative;overflow:hidden}.assessment-value-banner:before{content:"";position:absolute;top:-50%;right:-20%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);pointer-events:none}.avb-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.avb-label{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:#ffffffb3}.avb-badge{font-size:10px;font-weight:500;letter-spacing:.5px;background:#ffffff26;padding:3px 10px;border-radius:10px;color:#ffffffd9}.avb-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-bottom:16px}.avb-metric{text-align:center}.avb-metric-value{display:block;font-size:28px;font-weight:700;line-height:1.2;color:#fff}.avb-metric-value--highlight{color:#93c5fd}.avb-metric-label{display:block;font-size:11px;font-weight:500;color:#ffffffa6;margin-top:4px;line-height:1.3}.avb-explanation-toggle{background:none;border:none;color:#fff9;font-size:12px;cursor:pointer;padding:4px 0;display:inline-flex;align-items:center;gap:4px;transition:color .2s}.avb-explanation-toggle:hover{color:#ffffffe6}.avb-explanation-arrow{font-size:10px;transition:transform .2s}.avb-explanation-arrow--open{transform:rotate(90deg)}.avb-explanation{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;line-height:1.6;color:#ffffffbf}.avb-explanation p{margin:0 0 8px}.avb-explanation p:last-child{margin-bottom:0}.assessment-value-banner--empty{background:linear-gradient(135deg,#1e293b,#334155);padding:16px 24px;text-align:center}.avb-empty-text{font-size:13px;color:#ffffff80;margin:0}@media (max-width: 768px){.assessment-value-banner{padding:16px 20px}.avb-metrics{grid-template-columns:repeat(2,1fr);gap:16px}.avb-metric-value{font-size:22px}}@media (max-width: 480px){.avb-metrics{grid-template-columns:1fr 1fr;gap:12px}}.ai-profile-selector{display:flex;flex-direction:column;gap:.5rem}.ai-profile-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.ai-profile-trigger{background:#1e293b;border:1px solid #334155;color:#e2e8f0;font-size:.875rem}.ai-profile-trigger:hover{border-color:#475569}.ai-profile-trigger:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.ai-profile-content{background:#1e293b;border:1px solid #334155;max-height:300px;overflow-y:auto}.ai-profile-item{padding:.75rem;cursor:pointer}.ai-profile-item:hover{background:#334155}.ai-profile-item-content{display:flex;flex-direction:column;gap:.25rem}.ai-profile-item-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ai-profile-item-name{font-weight:600;color:#f1f5f9}.ai-profile-item-type{font-size:.75rem;padding:.125rem .5rem;background:#3b82f6;color:#fff;border-radius:9999px}.ai-profile-item-default{font-size:.75rem;padding:.125rem .5rem;background:#10b981;color:#fff;border-radius:9999px}.ai-profile-item-description{font-size:.75rem;color:#94a3b8}.ai-profile-item-weights{font-size:.7rem;color:#64748b;font-family:monospace}.ai-profile-summary{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:#64748b;margin-top:.25rem}.ai-profile-summary-label{color:#94a3b8}.ai-profile-summary-weights{font-family:monospace}.ai-profile-error{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:.375rem;color:#f87171;font-size:.875rem}.ai-profile-error-icon{font-size:1rem}.ai-sampling-indicator{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500;cursor:default}.ai-sampling-full{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.ai-sampling-sampled{background:#3b82f626;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.ai-sampling-icon{font-size:.875rem}.ai-sampling-text{white-space:nowrap}.ai-sampling-percent{opacity:.8;font-size:.7rem}.mece-profile-section{padding:.75rem 0;border-bottom:1px solid #334155;margin-bottom:.5rem}.mece-profile-selector{width:100%}.mece-profile-selector .ai-profile-label{display:none}.mece-blockers-section{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #334155}.mece-blockers-toggle{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:.375rem;color:#f87171;font-size:.8125rem;cursor:pointer;transition:background .15s}.mece-blockers-toggle:hover{background:#ef444426}.blockers-icon{font-size:.875rem}.blockers-count{flex:1;text-align:left;font-weight:600}.blockers-arrow{font-size:.625rem;opacity:.7}.mece-blockers-list{margin-top:.5rem;display:flex;flex-direction:column;gap:.375rem}.mece-blocker-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;background:#0003;border-left:3px solid;border-radius:0 .25rem .25rem 0;font-size:.75rem}.blocker-severity{font-weight:700;font-size:.625rem;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.blocker-message{color:#cbd5e1;line-height:1.4}.blockers-more{font-size:.75rem;color:#64748b;text-align:center;padding:.25rem;margin:0}.mece-footer{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #334155}.mece-footer-actions{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mece-sampling{flex:1}.mece-recalculate-btn{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;background:#334155;border:1px solid #475569;border-radius:.375rem;color:#e2e8f0;font-size:.875rem;cursor:pointer;transition:all .15s}.mece-recalculate-btn:hover:not(:disabled){background:#3b82f6;border-color:#3b82f6}.mece-recalculate-btn:disabled{opacity:.5;cursor:not-allowed}.cost-configuration-panel{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001f;max-height:90vh;overflow-y:auto;padding:1.5rem}.cost-config-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.cost-config-title{font-size:1.5rem;font-weight:600;color:#1a202c;margin:0 0 .25rem}.cost-config-subtitle{font-size:.875rem;color:#718096;margin:0}.cost-config-actions{display:flex;gap:.5rem}.cost-config-actions .btn{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.cost-config-actions .btn-primary{background:#3182ce;color:#fff;border:none}.cost-config-actions .btn-primary:hover:not(:disabled){background:#2c5282}.cost-config-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.cost-config-actions .btn-secondary{background:#f7fafc;color:#1a202c;border:1px solid #e2e8f0}.cost-config-actions .btn-secondary:hover{background:#edf2f7}.cost-config-actions .btn-ghost{background:transparent;border:none;font-size:1.5rem;color:#718096;padding:.25rem .5rem;line-height:1}.cost-config-actions .btn-ghost:hover{color:#1a202c}.cost-summary-banner{background:linear-gradient(135deg,#1a365d,#2c5282);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem;color:#fff}.cost-summary-main{text-align:center;margin-bottom:1rem}.cost-summary-label{font-size:.875rem;opacity:.9;margin-bottom:.25rem}.cost-summary-value{font-size:2.5rem;font-weight:700;letter-spacing:-.02em}.cost-summary-breakdown{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.cost-summary-item{display:flex;flex-direction:column;align-items:center}.cost-summary-item-label{font-size:.75rem;opacity:.8;text-transform:uppercase;letter-spacing:.05em}.cost-summary-item-value{font-size:1.125rem;font-weight:600}.cost-sections{display:flex;flex-direction:column;gap:.75rem}.cost-section{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;transition:all .2s ease}.cost-section:hover{border-color:#cbd5e0}.cost-section.disabled{opacity:.6}.cost-section.disabled .cost-section-total{color:#718096}.cost-section-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#f7fafc;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.cost-section-header:hover{background:#edf2f7}.cost-section-left{display:flex;align-items:center;gap:.75rem}.cost-section-icon{font-size:1.25rem;color:#4a5568}.cost-section-title{font-weight:600;font-size:1rem;color:#1a202c}.cost-section-right{display:flex;align-items:center;gap:1rem}.cost-section-total{font-weight:600;color:#3182ce;font-size:1rem}.cost-section-chevron{font-size:.75rem;color:#718096;transition:transform .2s ease}.cost-section-chevron.rotated{transform:rotate(180deg)}.cost-section-content{padding:1.25rem;border-top:1px solid #e2e8f0;background:#fff}.cost-section-toggle{position:relative;display:inline-block;width:40px;height:22px}.cost-section-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#cbd5e0;transition:.3s;border-radius:22px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #0003}.cost-section-toggle input:checked+.toggle-slider{background-color:#48bb78}.cost-section-toggle input:checked+.toggle-slider:before{transform:translate(18px)}.advanced-sections{margin-top:1.5rem;padding-top:1.5rem;border-top:2px dashed #e2e8f0}.advanced-sections-title{font-size:.875rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:1rem}.cost-table{width:100%;border-collapse:collapse;font-size:.875rem}.cost-table th{text-align:left;padding:.5rem .75rem;font-weight:600;color:#718096;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid #e2e8f0}.cost-table td{padding:.5rem .75rem;border-bottom:1px solid #f0f4f8;vertical-align:middle}.cost-table tr:last-child td{border-bottom:none}.cost-table .total-cell{font-weight:700;color:#1e293b!important;text-align:right;font-size:.9375rem}.cost-table td.total-cell{color:#0f172a!important;font-weight:700}.cost-table .basis-cell{font-size:.75rem;color:#718096}.input-text,.input-number{width:100%;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#1a202c;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.input-text:focus,.input-number:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.input-number{width:80px;text-align:right}.input-percentage{width:60px}.input-duration,.input-phase{width:120px}.input-suffix{margin-left:.25rem;color:#718096;font-size:.75rem}.btn-add{margin-top:.75rem;font-size:.8125rem}.btn-icon{width:28px;height:28px;padding:0;border:none;border-radius:4px;background:transparent;color:#718096;cursor:pointer;font-size:1.25rem;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-icon:hover:not(:disabled){background:#edf2f7;color:#1a202c}.btn-icon.btn-delete:hover:not(:disabled){background:#fed7d7;color:#c53030}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.personnel-section h4,.technology-section h4{font-size:.875rem;font-weight:600;color:#1a202c;margin:0 0 .75rem}.technology-section h4:not(:first-child){margin-top:1.5rem}@media (max-width: 768px){.cost-configuration-panel{padding:1rem}.cost-config-header{flex-direction:column;gap:1rem}.cost-summary-breakdown{gap:1rem}.cost-section-header{flex-wrap:wrap;gap:.5rem}.cost-section-right{width:100%;justify-content:space-between}.cost-table{font-size:.8125rem}.input-number{width:60px}}@media (prefers-color-scheme: dark){.cost-configuration-panel{background:#1a202c;color:#e2e8f0}.cost-config-title{color:#f7fafc}.cost-section{border-color:#4a5568}.cost-section-header{background:#2d3748}.cost-section-header:hover{background:#3d4a5c}.cost-section-title{color:#f7fafc}.cost-section-content{background:#1a202c}.cost-table th{color:#a0aec0;border-bottom-color:#4a5568}.cost-table td{border-bottom-color:#2d3748}.cost-table .total-cell,.cost-table td.total-cell{color:#f7fafc!important;font-weight:700}.input-text,.input-number{background:#2d3748;border-color:#4a5568;color:#f7fafc}.input-text:focus,.input-number:focus{border-color:#63b3ed}.btn-secondary{background:#2d3748;border-color:#4a5568;color:#e2e8f0}.btn-secondary:hover{background:#3d4a5c}.cost-summary-banner{background:linear-gradient(135deg,#1a365d,#2c5282)}}:root{--font-size-display-lg: 3.815rem;--font-size-display: 3.052rem;--font-size-display-sm: 2.441rem;--font-size-h1: 2rem;--font-size-h2: 1.6rem;--font-size-h3: 1.28rem;--font-size-h4: 1.024rem;--font-size-base: 1rem;--font-size-sm: .875rem;--font-size-xs: .75rem;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.2;--line-height-snug: 1.375;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--line-height-loose: 2;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .025em;--letter-spacing-wider: .05em;--letter-spacing-widest: .1em;--font-family-base: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;--font-family-mono: "Courier New", monospace;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-section: var(--space-16);--space-card: var(--space-6);--space-element: var(--space-4);--space-inline: var(--space-2);--border-width-thin: 1px;--border-width-medium: 2px;--border-width-thick: 4px;--radius-none: 0;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--radius-card: var(--radius-lg);--radius-button: var(--radius-md);--radius-input: var(--radius-md);--radius-badge: var(--radius-full);--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .06);--shadow-none: none;--shadow-card: var(--shadow-md);--shadow-card-hover: var(--shadow-lg);--shadow-modal: var(--shadow-2xl);--shadow-dropdown: var(--shadow-lg);--shadow-button: var(--shadow-sm);--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .35s;--duration-slower: .5s;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.68, -.55, .265, 1.55);--transition-all: all var(--duration-normal) var(--ease-default);--transition-colors: background-color var(--duration-fast) var(--ease-default), border-color var(--duration-fast) var(--ease-default), color var(--duration-fast) var(--ease-default);--transition-transform: transform var(--duration-normal) var(--ease-default);--transition-opacity: opacity var(--duration-fast) var(--ease-default);--z-index-base: 0;--z-index-dropdown: 100;--z-index-sticky: 200;--z-index-fixed: 300;--z-index-modal-backdrop: 400;--z-index-modal: 500;--z-index-popover: 600;--z-index-tooltip: 700;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}.text-display-lg{font-size:var(--font-size-display-lg);line-height:var(--line-height-tight)}.text-display{font-size:var(--font-size-display);line-height:var(--line-height-tight)}.text-display-sm{font-size:var(--font-size-display-sm);line-height:var(--line-height-tight)}.text-h1{font-size:var(--font-size-h1);line-height:var(--line-height-tight)}.text-h2{font-size:var(--font-size-h2);line-height:var(--line-height-snug)}.text-h3{font-size:var(--font-size-h3);line-height:var(--line-height-snug)}.text-h4{font-size:var(--font-size-h4);line-height:var(--line-height-normal)}.text-base{font-size:var(--font-size-base);line-height:var(--line-height-normal)}.text-sm{font-size:var(--font-size-sm);line-height:var(--line-height-normal)}.text-xs{font-size:var(--font-size-xs);line-height:var(--line-height-normal)}.font-light{font-weight:var(--font-weight-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-extrabold{font-weight:var(--font-weight-extrabold)}.tracking-tight{letter-spacing:var(--letter-spacing-tight)}.tracking-normal{letter-spacing:var(--letter-spacing-normal)}.tracking-wide{letter-spacing:var(--letter-spacing-wide)}.tracking-wider{letter-spacing:var(--letter-spacing-wider)}.tracking-widest{letter-spacing:var(--letter-spacing-widest)}.m-0{margin:var(--space-0)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mt-0{margin-top:var(--space-0)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-0{margin-bottom:var(--space-0)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-0{padding:var(--space-0)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.pt-4{padding-top:var(--space-4)}.pb-4{padding-bottom:var(--space-4)}.pl-4{padding-left:var(--space-4)}.pr-4{padding-right:var(--space-4)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-none{box-shadow:var(--shadow-none)}.transition-all{transition:var(--transition-all)}.transition-colors{transition:var(--transition-colors)}.transition-transform{transition:var(--transition-transform)}.transition-opacity{transition:var(--transition-opacity)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-default)}.animate-slide-in-up{animation:slideInUp var(--duration-normal) var(--ease-default)}.animate-slide-in-down{animation:slideInDown var(--duration-normal) var(--ease-default)}.animate-scale-in{animation:scaleIn var(--duration-fast) var(--ease-spring)}.animate-shimmer{animation:shimmer 2s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}:root{--color-primary-50: #e6f7f9;--color-primary-100: #b3e8ee;--color-primary-200: #80d8e3;--color-primary-300: #4dc9d8;--color-primary-400: #2eb9cd;--color-primary-500: #17a2b8;--color-primary-600: #138496;--color-primary-700: #106674;--color-primary-800: #0c4852;--color-primary-900: #082a30;--color-navy-50: #e8eaf0;--color-navy-100: #c4c9d8;--color-navy-200: #9fa8c0;--color-navy-300: #7a87a8;--color-navy-400: #556690;--color-navy-500: #3d4a6d;--color-navy-600: #2f3a54;--color-navy-700: #212a3b;--color-navy-800: #141a24;--color-navy-900: #0b1220;--color-success-50: #e6f9f1;--color-success-100: #b3edd9;--color-success-200: #80e1c1;--color-success-300: #4dd5a9;--color-success-400: #26c991;--color-success-500: #10b981;--color-success-600: #0d9468;--color-success-700: #0a6f4f;--color-success-800: #074a36;--color-success-900: #04251d;--color-warning-50: #fffbeb;--color-warning-100: #fef3c7;--color-warning-200: #fde68a;--color-warning-300: #fcd34d;--color-warning-400: #fbbf24;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-700: #b45309;--color-warning-800: #92400e;--color-warning-900: #78350f;--color-error-50: #fef2f2;--color-error-100: #fee2e2;--color-error-200: #fecaca;--color-error-300: #fca5a5;--color-error-400: #f87171;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-700: #b91c1c;--color-error-800: #991b1b;--color-error-900: #7f1d1d;--color-info-50: #eff6ff;--color-info-100: #dbeafe;--color-info-200: #bfdbfe;--color-info-300: #93c5fd;--color-info-400: #60a5fa;--color-info-500: #3b82f6;--color-info-600: #2563eb;--color-info-700: #1d4ed8;--color-info-800: #1e40af;--color-info-900: #1e3a8a;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-background-primary: var(--color-navy-900);--color-background-secondary: var(--color-navy-800);--color-background-tertiary: var(--color-navy-700);--color-background-overlay: rgba(11, 18, 32, .8);--color-text-primary: #ffffff;--color-text-secondary: rgba(255, 255, 255, .8);--color-text-tertiary: rgba(255, 255, 255, .6);--color-text-disabled: rgba(255, 255, 255, .4);--color-text-inverse: var(--color-navy-900);--color-border-primary: rgba(255, 255, 255, .1);--color-border-secondary: rgba(255, 255, 255, .05);--color-border-focus: var(--color-primary-500);--color-border-error: var(--color-error-500);--color-link: var(--color-primary-400);--color-link-hover: var(--color-primary-300);--color-link-visited: var(--color-primary-600);--color-card-background: rgba(255, 255, 255, .05);--color-card-hover: rgba(255, 255, 255, .08);--color-input-background: rgba(0, 0, 0, .2);--color-input-border: rgba(255, 255, 255, .2);--color-overlay-hover: rgba(255, 255, 255, .05);--color-overlay-focus: rgba(23, 162, 184, .1);--color-overlay-active: rgba(23, 162, 184, .2);--color-status-critical: var(--color-error-500);--color-status-critical-bg: rgba(239, 68, 68, .1);--color-status-critical-border: var(--color-error-600);--color-status-warning: var(--color-warning-500);--color-status-warning-bg: rgba(245, 158, 11, .1);--color-status-warning-border: var(--color-warning-600);--color-status-success: var(--color-success-500);--color-status-success-bg: rgba(16, 185, 129, .1);--color-status-success-border: var(--color-success-600);--color-status-info: var(--color-info-500);--color-status-info-bg: rgba(59, 130, 246, .1);--color-status-info-border: var(--color-info-600);--color-status-neutral: var(--color-gray-400);--color-status-neutral-bg: rgba(156, 163, 175, .1);--color-status-neutral-border: var(--color-gray-500);--color-health-excellent: var(--color-success-500);--color-health-excellent-bg: rgba(16, 185, 129, .15);--color-health-good: #22c55e;--color-health-good-bg: rgba(34, 197, 94, .15);--color-health-fair: var(--color-warning-500);--color-health-fair-bg: rgba(245, 158, 11, .15);--color-health-poor: #f97316;--color-health-poor-bg: rgba(249, 115, 22, .15);--color-health-critical: var(--color-error-500);--color-health-critical-bg: rgba(239, 68, 68, .15);--color-priority-critical: var(--color-error-500);--color-priority-critical-bg: rgba(239, 68, 68, .1);--color-priority-high: #f97316;--color-priority-high-bg: rgba(249, 115, 22, .1);--color-priority-medium: var(--color-warning-500);--color-priority-medium-bg: rgba(245, 158, 11, .1);--color-priority-low: var(--color-info-500);--color-priority-low-bg: rgba(59, 130, 246, .1)}.bg-primary{background-color:var(--color-primary-500)}.bg-primary-light{background-color:var(--color-primary-100)}.bg-primary-dark{background-color:var(--color-primary-700)}.bg-success{background-color:var(--color-success-500)}.bg-success-light{background-color:var(--color-success-100)}.bg-warning{background-color:var(--color-warning-500)}.bg-warning-light{background-color:var(--color-warning-100)}.bg-error{background-color:var(--color-error-500)}.bg-error-light{background-color:var(--color-error-100)}.bg-info{background-color:var(--color-info-500)}.bg-info-light{background-color:var(--color-info-100)}.bg-card{background-color:var(--color-card-background)}.bg-overlay{background-color:var(--color-background-overlay)}.text-primary{color:var(--color-primary-500)}.text-success{color:var(--color-success-500)}.text-warning{color:var(--color-warning-500)}.text-error{color:var(--color-error-500)}.text-info{color:var(--color-info-500)}.text-white{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-tertiary{color:var(--color-text-tertiary)}.text-disabled{color:var(--color-text-disabled)}.border-primary{border-color:var(--color-border-primary)}.border-secondary{border-color:var(--color-border-secondary)}.border-focus{border-color:var(--color-border-focus)}.border-error{border-color:var(--color-border-error)}.border-success{border-color:var(--color-success-500)}.border-warning{border-color:var(--color-warning-500)}.border-info{border-color:var(--color-info-500)}.badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-badge);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;transition:var(--transition-colors)}.badge-success{background-color:var(--color-status-success-bg);color:var(--color-success-500);border:var(--border-width-thin) solid var(--color-status-success-border)}.badge-warning{background-color:var(--color-status-warning-bg);color:var(--color-warning-500);border:var(--border-width-thin) solid var(--color-status-warning-border)}.badge-error{background-color:var(--color-status-critical-bg);color:var(--color-error-500);border:var(--border-width-thin) solid var(--color-status-critical-border)}.badge-info{background-color:var(--color-status-info-bg);color:var(--color-info-500);border:var(--border-width-thin) solid var(--color-status-info-border)}.badge-neutral{background-color:var(--color-status-neutral-bg);color:var(--color-status-neutral);border:var(--border-width-thin) solid var(--color-status-neutral-border)}.health-excellent{background-color:var(--color-health-excellent-bg);color:var(--color-health-excellent)}.health-good{background-color:var(--color-health-good-bg);color:var(--color-health-good)}.health-fair{background-color:var(--color-health-fair-bg);color:var(--color-health-fair)}.health-poor{background-color:var(--color-health-poor-bg);color:var(--color-health-poor)}.health-critical{background-color:var(--color-health-critical-bg);color:var(--color-health-critical)}.priority-critical{background-color:var(--color-priority-critical-bg);color:var(--color-priority-critical);border-left:var(--border-width-thick) solid var(--color-priority-critical)}.priority-high{background-color:var(--color-priority-high-bg);color:var(--color-priority-high);border-left:var(--border-width-thick) solid var(--color-priority-high)}.priority-medium{background-color:var(--color-priority-medium-bg);color:var(--color-priority-medium);border-left:var(--border-width-thick) solid var(--color-priority-medium)}.priority-low{background-color:var(--color-priority-low-bg);color:var(--color-priority-low);border-left:var(--border-width-thick) solid var(--color-priority-low)}.traffic-light{display:inline-block;width:12px;height:12px;border-radius:var(--radius-full);box-shadow:0 0 4px currentColor}.traffic-light-green{background-color:var(--color-success-500);color:var(--color-success-500)}.traffic-light-yellow{background-color:var(--color-warning-500);color:var(--color-warning-500)}.traffic-light-red{background-color:var(--color-error-500);color:var(--color-error-500)}.traffic-light-gray{background-color:var(--color-gray-500);color:var(--color-gray-500)}.gradient-primary{background:linear-gradient(135deg,var(--color-primary-500),var(--color-primary-700))}.gradient-success{background:linear-gradient(135deg,var(--color-success-500),var(--color-success-700))}.gradient-warning{background:linear-gradient(135deg,var(--color-warning-400),var(--color-warning-600))}.gradient-error{background:linear-gradient(135deg,var(--color-error-400),var(--color-error-600))}.gradient-navy{background:linear-gradient(135deg,var(--color-navy-700),var(--color-navy-900))}.focus-ring:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.action-plan-panel{max-width:1600px;margin:0 auto;padding:2rem;background:#f7fafc;min-height:100vh}.action-plan-panel.loading{display:flex;align-items:center;justify-content:center;min-height:400px}.loading-spinner{text-align:center}.spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.action-plan-panel.error{display:flex;align-items:center;justify-content:center;min-height:400px}.error-message{text-align:center;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;max-width:500px}.error-message h3{color:#dc2626;margin-bottom:1rem}.action-plan-panel.empty{display:flex;align-items:center;justify-content:center;min-height:600px;background:linear-gradient(180deg,#fff,#f7fafc)}.action-plan-panel .empty-state{text-align:center;max-width:700px;padding:4rem 2rem}.action-plan-panel .empty-icon{font-size:5rem;margin-bottom:1.5rem;filter:drop-shadow(0 4px 12px rgba(66,153,225,.15))}.action-plan-panel .empty-state h2{margin:0 0 1rem;font-size:2rem;font-weight:700;color:#1a202c;letter-spacing:-.02em}.action-plan-panel .empty-state p{color:#718096;margin:0 0 2.5rem;line-height:1.7;font-size:1.05rem;max-width:600px;margin-left:auto;margin-right:auto}.btn-generate-plan{background:linear-gradient(135deg,#4299e1,#3182ce);color:#fff;border:none;padding:1.125rem 2.5rem;border-radius:10px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:.625rem;box-shadow:0 4px 12px #4299e140;letter-spacing:.01em}.btn-generate-plan:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 24px #4299e159;background:linear-gradient(135deg,#3182ce,#2c5282)}.btn-generate-plan:active:not(:disabled){transform:translateY(-1px)}.btn-generate-plan:disabled{opacity:.65;cursor:not-allowed;transform:none}.spinner-small{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.25);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.empty-features{margin-top:3rem;text-align:left;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 12px #0000000f;border:1px solid #e2e8f0}.empty-features h4{margin:0 0 1.25rem;color:#2d3748;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.empty-features ul{list-style:none;padding:0;margin:0}.empty-features li{padding:.625rem 0;color:#4a5568;font-size:.975rem;line-height:1.6;display:flex;align-items:flex-start;gap:.75rem}.empty-features li:before{content:"";flex-shrink:0;width:5px;height:5px;border-radius:50%;background:#48bb78;margin-top:.5rem}.empty-state.prerequisite{max-width:800px}.prerequisite-steps{background:#fff;border-radius:12px;padding:2rem;margin:2rem 0;box-shadow:0 2px 12px #0000000f;border:1px solid #e2e8f0}.prerequisite-steps .step{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;margin-bottom:.75rem;transition:all .2s ease}.prerequisite-steps .step:last-child{margin-bottom:0}.prerequisite-steps .step.completed{background:#f0fdf4;border-left:4px solid #10b981}.prerequisite-steps .step.pending{background:#fef3c7;border-left:4px solid #f59e0b}.prerequisite-steps .step.disabled{background:#f7fafc;border-left:4px solid #cbd5e0;opacity:.6}.prerequisite-steps .step-icon{font-size:1.5rem;flex-shrink:0}.prerequisite-steps .step-label{font-size:1rem;font-weight:500;color:#2d3748}.prerequisite-info{margin-top:2.5rem;text-align:left;background:#ebf8ff;border:1px solid #bee3f8;border-radius:8px;padding:1.5rem}.prerequisite-info .info-text{color:#2c5282;font-weight:600;margin:0 0 .5rem}.prerequisite-info .info-subtext{color:#2d3748;margin:0;line-height:1.6;font-size:.95rem}.action-plan-header{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000d}.header-title{margin-bottom:2rem}.header-title h1{margin:0 0 .5rem;color:#2d3748;font-size:2rem}.header-title .subtitle{color:#718096;font-size:1rem}.header-actions{position:absolute;top:2rem;right:2rem}.btn-secondary{background:#fff;border:1px solid #cbd5e0;color:#4a5568;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-secondary:hover{border-color:#4299e1;color:#4299e1}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:linear-gradient(135deg,#f7fafc,#fff);border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;align-items:flex-start;gap:1rem;transition:all .2s}.summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.card-icon{font-size:2rem;flex-shrink:0}.card-content{flex:1}.card-label{font-size:.875rem;color:#718096;margin-bottom:.5rem}.card-value{font-size:1.75rem;font-weight:700;color:#2d3748;margin-bottom:.25rem}.card-subtext{font-size:.875rem;color:#a0aec0}.progress-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden;margin:.5rem 0}.progress-fill{height:100%;background:linear-gradient(90deg,#48bb78,#38a169);transition:width .3s ease}.improvement-positive{color:#48bb78;font-weight:600}.fair-breakdown{border-top:1px solid #e2e8f0;padding-top:2rem;margin-top:2rem}.fair-breakdown h3{margin-bottom:1.5rem;color:#2d3748}.fair-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.fair-pillar{background:#f7fafc;padding:1rem;border-radius:8px}.pillar-label{font-size:.875rem;font-weight:600;color:#4a5568;margin-bottom:.5rem}.pillar-bar{height:24px;background:#e2e8f0;border-radius:4px;position:relative;overflow:hidden;margin-bottom:.5rem}.bar-current{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#cbd5e0,#a0aec0);opacity:.6}.bar-projected{position:absolute;left:0;top:0;height:100%;background:linear-gradient(90deg,#4299e1,#3182ce)}.pillar-values{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.pillar-values .current{color:#a0aec0}.pillar-values .arrow{color:#cbd5e0}.pillar-values .projected{color:#4299e1;font-weight:600}.pillar-values .improvement{color:#48bb78;font-weight:600;margin-left:auto}.view-controls{background:#fff;border-radius:12px;padding:1rem 1.5rem;margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #0000000d}.view-mode-tabs{display:flex;gap:.5rem}.view-tab{background:transparent;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem;color:#718096}.view-tab:hover{background:#f7fafc;color:#2d3748}.view-tab.active{background:#4299e1;color:#fff}.view-options{display:flex;gap:.75rem}.option-toggle{background:#fff;border:1px solid #cbd5e0;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s}.option-toggle:hover{border-color:#4299e1}.option-toggle.active{background:#4299e1;color:#fff;border-color:#4299e1}.action-plan-content{display:grid;grid-template-columns:1fr 350px;gap:2rem}.main-view{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000000d;overflow-x:auto}.prism-view-container{background:transparent;border-radius:0;padding:0;box-shadow:none;margin:-2rem;width:calc(100% + 4rem)}.prism-view-container .prism-container{border-radius:0;max-width:100%}.sidebar{display:flex;flex-direction:column;gap:2rem}@media (max-width: 1280px){.action-plan-content{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr 1fr;display:grid}}.list-view{display:flex;flex-direction:column;gap:1.5rem}.phase-accordion{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.phase-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#f7fafc,#fff);cursor:pointer;transition:all .2s;border-bottom:1px solid #e2e8f0}.phase-header:hover{background:#f7fafc}.phase-left{display:flex;align-items:center;gap:1rem}.phase-chevron{color:#a0aec0;font-size:.875rem}.phase-name{margin:0;color:#2d3748;font-size:1.25rem}.phase-timeline{color:#718096;font-size:.875rem;margin-left:1rem}.phase-right{display:flex;align-items:center;gap:1.5rem}.phase-tasks-count,.phase-value{font-size:.875rem;color:#718096}.phase-progress-mini{color:#4299e1;font-weight:600;font-size:.875rem}.phase-body{padding:1rem;background:#fff}.phase-empty{padding:2rem;text-align:center;color:#a0aec0}.task-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:1rem;transition:all .2s;cursor:pointer}.task-card:hover{border-color:#4299e1;box-shadow:0 2px 8px #4299e11a}.task-card.critical-path{border-color:#f59e0b;background:linear-gradient(135deg,#fffbeb,#fff)}.task-header{display:flex;justify-content:space-between;align-items:center;padding:1rem}.task-left{display:flex;align-items:center;gap:1rem;flex:1}.status-toggle{background:none;border:none;font-size:1.5rem;cursor:pointer;transition:transform .2s;padding:0}.status-toggle:hover{transform:scale(1.2)}.task-title-section{display:flex;align-items:center;gap:.5rem;flex:1}.critical-badge{font-size:1rem}.task-title{margin:0;color:#2d3748;font-size:1rem}.task-right{display:flex;align-items:center;gap:.75rem}.priority-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase}.value-badge{padding:.25rem .75rem;background:#edf2f7;border-radius:12px;font-size:.75rem;font-weight:600;color:#48bb78}.source-badge{display:inline-flex;align-items:center;gap:4px;padding:.2rem .6rem;border-radius:10px;font-size:.7rem;font-weight:600}.source-badge .source-icon{font-size:.8rem}.source-badge .source-label{text-transform:uppercase;letter-spacing:.02em}.source-badge.source-journey{background:#e3f2fd;color:#1565c0}.source-badge.source-organization{background:#f3e5f5;color:#7b1fa2}.source-badge.source-merged{background:#e8f5e9;color:#2e7d32}.source-badge.source-default{background:#eceff1;color:#546e7a}.chevron{color:#a0aec0;font-size:.875rem}.task-body{padding:0 1rem 1rem;border-top:1px solid #e2e8f0;background:#f7fafc}.task-section{margin-top:1rem}.section-label{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.task-description{color:#4a5568;line-height:1.6;margin:0}.implementation-steps{list-style:none;padding:0;margin:0}.implementation-steps li{padding:.5rem 0 .5rem 1.5rem;color:#4a5568;position:relative}.implementation-steps li:before{content:"▹";position:absolute;left:0;color:#4299e1}.task-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-top:1rem;padding:1rem;background:#fff;border-radius:8px}.metadata-label{font-size:.75rem;color:#a0aec0}.metadata-value{font-size:.875rem;font-weight:600;color:#2d3748}.fair-tags{display:flex;flex-wrap:wrap;gap:.5rem}.fair-tag{padding:.25rem .75rem;background:#ebf8ff;color:#2c5282;border-radius:12px;font-size:.75rem;font-weight:600}.dependency-list{display:flex;flex-direction:column;gap:.5rem}.dependency-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#fff;border-radius:6px}.dep-status{font-size:1rem}.dep-title{color:#4a5568;font-size:.875rem}.value-breakdown{background:#fff;padding:1rem;border-radius:8px}.improvement-item{padding:.75rem 0;border-bottom:1px solid #e2e8f0}.improvement-item:last-child{border-bottom:none}.improvement-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.improvement-rule{font-weight:700;color:#2c5282}.improvement-driver{color:#4a5568;font-size:.875rem}.improvement-value{color:#48bb78;font-weight:600}.improvement-calc{font-size:.875rem;color:#718096}.value-total{display:flex;justify-content:space-between;padding-top:1rem;margin-top:1rem;border-top:2px solid #4299e1;font-weight:600}.total-amount{color:#48bb78;font-size:1.125rem}.progress-panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.progress-panel h3{margin:0 0 1.5rem;color:#2d3748;font-size:1.25rem}.overall-progress{margin-bottom:2rem}.progress-label{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;color:#4a5568}.progress-percentage{font-weight:700;color:#4299e1}.progress-bar-large{height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden;margin-bottom:.75rem}.progress-details{display:flex;justify-content:space-between;font-size:.75rem;color:#718096}.status-breakdown{margin-bottom:2rem}.status-breakdown h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.status-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.status-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f7fafc;border-radius:8px}.status-content{flex:1}.status-count{font-size:1.125rem;font-weight:700;color:#2d3748}.status-label{font-size:.75rem;color:#718096}.phase-progress h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.phase-list{display:flex;flex-direction:column;gap:1rem}.phase-item{padding:.75rem;background:#f7fafc;border-radius:8px}.phase-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.phase-name{font-size:.875rem;font-weight:600;color:#2d3748}.phase-percentage{font-size:.875rem;font-weight:600;color:#4299e1}.phase-progress-bar{height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;margin-bottom:.5rem}.phase-fill{height:100%;background:linear-gradient(90deg,#4299e1,#3182ce)}.phase-meta{display:flex;justify-content:space-between;font-size:.75rem;color:#718096}.value-progress{margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0}.value-progress h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.value-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem}.value-stat{text-align:center;padding:.75rem;background:#f7fafc;border-radius:8px}.value-label{font-size:.75rem;color:#718096;margin-bottom:.25rem}.value-amount{font-size:1rem;font-weight:700}.value-amount.realized{color:#48bb78}.value-amount.remaining{color:#ed8936}.value-amount.total{color:#4299e1}.value-bar{height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.value-fill{height:100%;background:linear-gradient(90deg,#48bb78,#38a169)}.critical-path-status{margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0}.critical-path-status h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.critical-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.critical-stat{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fffbeb;border-radius:8px}.stat-icon{font-size:1.5rem}.stat-content{flex:1}.stat-value{font-size:1.125rem;font-weight:700;color:#2d3748}.value-realization-chart{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000d}.value-realization-chart h3{margin:0 0 1.5rem;color:#2d3748;font-size:1.25rem}.chart-svg{display:block;margin:0 auto}.chart-legend{display:flex;justify-content:center;gap:1.5rem;margin-top:1rem;font-size:.875rem}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-marker{width:12px;height:12px;border-radius:2px}.legend-marker.current{background:#4299e1}.legend-marker.projected{background:#cbd5e0}.chart-empty{text-align:center;padding:3rem;color:#a0aec0}.milestones-list{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.milestones-list h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.milestone-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f7fafc;border-radius:6px;margin-bottom:.5rem}.milestone-week{font-size:.875rem;font-weight:600;color:#4299e1}.milestone-desc{font-size:.875rem;color:#4a5568}.dependency-review-panel{background:#fff;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000d}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.panel-header h3{margin:0;color:#2d3748;font-size:1.25rem}.close-button{background:none;border:none;font-size:1.5rem;color:#a0aec0;cursor:pointer;transition:color .2s}.close-button:hover{color:#4a5568}.dependency-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#f7fafc;border-radius:8px}.stat-label{font-size:.75rem;color:#718096}.stat-value{font-size:1.5rem;font-weight:700;color:#2d3748}.filter-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}.filter-tab{background:#fff;border:1px solid #cbd5e0;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s}.filter-tab:hover{border-color:#4299e1}.filter-tab.active{background:#4299e1;color:#fff;border-color:#4299e1}.dependency-list{max-height:600px;overflow-y:auto}.task-dependency-group{margin-bottom:2rem}.dependent-task-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0;color:#2d3748}.dep-count{font-size:.875rem;font-weight:500;color:#718096}.dependencies{display:flex;flex-direction:column;gap:.75rem}.dependency-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f7fafc;border-radius:8px;border-left:4px solid #4299e1}.dependency-item.soft{border-left-color:#cbd5e0}.dep-left{display:flex;align-items:center;gap:1rem;flex:1}.dep-icon{font-size:1.25rem;color:#4299e1}.dep-content{flex:1}.dep-title{font-weight:600;color:#2d3748;margin-bottom:.25rem}.dep-reason{font-size:.875rem;color:#718096}.dep-right{display:flex;align-items:center;gap:1rem}.dep-source{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.source-icon{font-size:1rem}.source-label{color:#718096}.confidence-badge{padding:.125rem .5rem;background:#ebf8ff;color:#2c5282;border-radius:12px;font-size:.75rem;font-weight:600}.remove-dep-button{background:none;border:none;color:#dc2626;font-size:1.25rem;cursor:pointer;opacity:.5;transition:opacity .2s}.remove-dep-button:hover{opacity:1}.dependency-legend{margin-top:2rem;padding-top:2rem;border-top:1px solid #e2e8f0}.dependency-legend h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.legend-items{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#4a5568}.legend-symbol{font-weight:700;color:#4299e1}.timeline-view{overflow-x:auto}.timeline-header{position:sticky;top:0;background:#fff;z-index:10;border-bottom:2px solid #e2e8f0}.timeline-header-row{display:flex}.phase-label-column{flex-shrink:0;background:#f7fafc;border-right:1px solid #e2e8f0;display:flex;align-items:center;padding:0 1rem;font-weight:600;color:#4a5568}.week-columns{display:flex}.week-column{flex-shrink:0;border-right:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;padding:.5rem}.week-label{font-size:.75rem;color:#718096}.quarter-markers{display:flex;height:30px;background:#f7fafc}.quarter-columns{position:relative;flex:1}.quarter-marker{position:absolute;top:0;height:100%;border-left:1px solid #cbd5e0;border-right:1px solid #cbd5e0;display:flex;align-items:center;justify-content:center}.quarter-label{font-size:.75rem;font-weight:600;color:#4a5568}.timeline-body{display:flex;flex-direction:column}.phase-swimlane{display:flex;border-bottom:1px solid #e2e8f0}.phase-label{flex-shrink:0;background:#f7fafc;border-right:1px solid #e2e8f0;padding:1rem}.phase-label h4{margin:0 0 .25rem;color:#2d3748;font-size:1rem}.phase-weeks{font-size:.75rem;color:#718096}.phase-timeline{position:relative;flex:1}.week-grid{position:absolute;top:0;left:0;width:100%;height:100%;display:flex}.week-grid-line{flex-shrink:0;border-right:1px solid #f7fafc}.task-bars{position:relative;padding:1rem 0}.task-bar{position:absolute;display:flex;align-items:center;padding:0 .75rem;border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.task-bar:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0003;z-index:5}.task-bar.critical-path{border:3px solid #f59e0b}.task-bar-content{display:flex;align-items:center;gap:.5rem;overflow:hidden}.critical-star{font-size:.875rem}.task-bar-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timeline-legend{margin-top:2rem;padding:1rem;background:#f7fafc;border-radius:8px}.timeline-legend h4{margin:0 0 1rem;font-size:1rem;color:#2d3748}.legend-items{display:flex;flex-wrap:wrap;gap:1.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.legend-color{width:16px;height:16px;border-radius:4px}.legend-symbol{font-size:1rem}.matrix-view{min-height:600px}.matrix-header{margin-bottom:2rem;text-align:center}.matrix-header h3{margin:0 0 .5rem;color:#2d3748;font-size:1.5rem}.matrix-subtitle{color:#718096;font-size:1rem}.matrix-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.quadrant{background:#f7fafc;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;min-height:400px}.quadrant.quick-wins{border-color:#48bb78;background:linear-gradient(135deg,#f0fff4,#fff)}.quadrant.strategic-bets{border-color:#4299e1;background:linear-gradient(135deg,#ebf8ff,#fff)}.quadrant.fill-ins{border-color:#ecc94b;background:linear-gradient(135deg,#fefcbf,#fff)}.quadrant.major-projects{border-color:#f56565;background:linear-gradient(135deg,#fff5f5,#fff)}.quadrant-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.quadrant-header h4{margin:0;color:#2d3748;font-size:1.125rem}.quadrant-count{padding:.25rem .75rem;background:#fff;border-radius:12px;font-size:.875rem;font-weight:600;color:#718096}.quadrant-description{color:#718096;font-size:.875rem;margin-bottom:1.5rem}.quadrant-tasks{display:flex;flex-direction:column;gap:1rem;max-height:500px;overflow-y:auto}.quadrant-empty{text-align:center;padding:3rem;color:#a0aec0}.matrix-task-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;cursor:pointer;transition:all .2s}.matrix-task-card:hover{border-color:#4299e1;box-shadow:0 2px 8px #4299e11a}.matrix-task-card.critical-path{border-color:#f59e0b}.task-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.status-icon{font-size:1rem}.priority-dot{width:8px;height:8px;border-radius:50%;margin-left:auto}.task-card-title{margin:0 0 .75rem;color:#2d3748;font-size:.9rem}.task-card-meta{display:flex;justify-content:space-between;font-size:.75rem}.task-card-meta .effort{color:#718096}.task-card-meta .value{color:#48bb78;font-weight:600}.matrix-axes{position:relative;margin-top:2rem;padding:1rem;background:#f7fafc;border-radius:8px;text-align:center}.y-axis-label,.x-axis-label{font-size:.875rem;color:#718096;font-weight:600}.export-panel-container{background:#fff;border-radius:12px;padding:2rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000d}.export-panel h4{margin:0 0 .5rem;color:#2d3748;font-size:1.25rem}.export-description{color:#718096;font-size:.875rem;margin-bottom:1.5rem}.export-disabled-message{color:#a0aec0;font-style:italic;padding:1rem;background:#f7fafc;border-radius:8px;text-align:center}.export-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.export-button{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .2s}.export-button:hover:not(:disabled){border-color:#4299e1;box-shadow:0 4px 12px #4299e126;transform:translateY(-2px)}.export-button:disabled{opacity:.6;cursor:not-allowed}.export-button.status-exporting{border-color:#f59e0b;background:#fffbeb}.export-button.status-success{border-color:#48bb78;background:#f0fff4}.export-button.status-error{border-color:#f56565;background:#fff5f5}.export-icon{font-size:2rem;flex-shrink:0}.export-content{flex:1;text-align:left}.export-label{font-weight:600;color:#2d3748;font-size:1rem;margin-bottom:.25rem}.export-meta{font-size:.75rem;color:#718096}.export-errors{background:#fff5f5;border:1px solid #feb2b2;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.export-error{color:#c53030;font-size:.875rem;margin-bottom:.5rem}.export-error:last-child{margin-bottom:0}.export-details{background:#f7fafc;border-radius:8px;padding:1.5rem;margin-bottom:1rem}.export-details h5{margin:0 0 1rem;color:#2d3748;font-size:1rem}.export-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.detail-item{font-size:.875rem}.detail-item strong{display:block;margin-bottom:.5rem;color:#2d3748}.detail-item ul{margin:0;padding-left:1.25rem;color:#4a5568}.detail-item li{margin-bottom:.25rem}.export-notice{text-align:center;padding:.75rem;background:#ebf8ff;border-radius:6px;color:#2c5282;font-size:.875rem}.cost-config-overlay{position:fixed;inset:0;background:#00000080;z-index:1000;display:flex;justify-content:flex-end}.cost-config-slideout{width:950px;max-width:95vw;height:100vh;background:#fff;box-shadow:-4px 0 24px #00000026;overflow-y:auto;animation:slideIn .3s ease-out}.business-config-section{margin:2rem 0;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;text-align:left;max-width:600px;margin-left:auto;margin-right:auto}.business-config-section h3{margin-top:0;margin-bottom:1rem;color:#2d3748;font-size:1.1rem}.summary-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}@media (max-width: 1200px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.summary-cards{grid-template-columns:1fr}}.summary-card.cost-card{border-left:4px solid #f6ad55}.summary-card.net-card{border-left:4px solid #68d391}.summary-card.payback-card{border-left:4px solid #9f7aea}.regenerate-config-modal{width:700px;max-width:95vw;max-height:90vh;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;overflow:hidden;margin:auto;display:flex;flex-direction:column}.regenerate-config-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;background:#f7fafc}.regenerate-config-modal .modal-header h2{margin:0;font-size:1.25rem;color:#2d3748}.regenerate-config-modal .btn-close{background:none;border:none;font-size:1.5rem;color:#718096;cursor:pointer;padding:.25rem .5rem;line-height:1}.regenerate-config-modal .btn-close:hover{color:#2d3748}.regenerate-config-modal .modal-body{padding:2rem;overflow-y:auto;flex:1}.cost-config-overlay{display:flex;align-items:center;justify-content:center}.generating-indicator{display:flex;flex-direction:column;align-items:center;padding:2rem;margin:1rem 0}.generating-indicator .spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.business-config-form{background:#fff;border-radius:12px;overflow:hidden}.business-config-form.loading{display:flex;align-items:center;justify-content:center;padding:2rem;gap:.75rem;color:#718096}.business-config-form .form-header{padding:1.5rem 2rem;border-bottom:1px solid #e2e8f0;background:#f7fafc}.business-config-form .form-header h3{margin:0 0 .5rem;font-size:1.1rem;color:#2d3748}.business-config-form .form-subtitle{margin:0;color:#718096;font-size:.9rem}.business-config-form .form-body{padding:1.5rem 2rem}.business-config-form .form-group{margin-bottom:1.5rem}.business-config-form .form-group label{display:block;font-weight:600;color:#2d3748;margin-bottom:.5rem;font-size:.95rem}.business-config-form .field-explanation{font-size:.85rem;color:#718096;margin:0 0 .75rem}.business-config-form .size-selector{display:flex;gap:.75rem}.business-config-form .size-option{flex:1;padding:1rem;border:2px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;text-align:center;transition:all .15s ease}.business-config-form .size-option:hover{border-color:#4299e1}.business-config-form .size-option.selected{border-color:#4299e1;background:#ebf8ff}.business-config-form .size-label{display:block;font-weight:600;color:#2d3748;margin-bottom:.25rem}.business-config-form .size-rate{display:block;font-size:.85rem;color:#4299e1}.business-config-form .input-with-hint{display:flex;flex-direction:column;gap:.5rem}.business-config-form .input-with-hint input{padding:.75rem 1rem;border:1px solid #e2e8f0;border-radius:6px;font-size:1rem;width:200px}.business-config-form .input-with-hint input:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px #4299e126}.business-config-form .input-hint{font-size:.85rem;color:#718096}.business-config-form .checkbox-group{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.business-config-form .checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:400}.business-config-form .checkbox-label input{width:18px;height:18px}.business-config-form .form-actions{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem 2rem;border-top:1px solid #e2e8f0;background:#f7fafc}.business-config-form .btn-primary{padding:.75rem 1.5rem;background:#4299e1;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.5rem}.business-config-form .btn-primary:hover{background:#3182ce}.business-config-form .btn-primary:disabled{background:#a0aec0;cursor:not-allowed}.business-config-form .btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#4a5568;border:1px solid #e2e8f0;border-radius:6px;font-weight:500;cursor:pointer}.business-config-form .btn-secondary:hover{background:#f7fafc}.business-config-banner{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#ebf8ff;border-radius:8px;border:1px solid #bee3f8}.business-config-banner .config-summary{display:flex;align-items:center;gap:.75rem}.business-config-banner .config-icon{font-size:1.25rem}.business-config-banner .config-text{color:#2c5282}.business-config-banner .btn-link{background:none;border:none;color:#4299e1;cursor:pointer;text-decoration:underline;font-size:.9rem}.business-config-banner .btn-link:hover{color:#2b6cb0}.business-config-banner .btn-primary{padding:.5rem 1rem;background:#4299e1;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer}.business-config-banner .btn-primary:hover{background:#3182ce}.spinner-small{width:16px;height:16px;border:2px solid #e2e8f0;border-top-color:#4299e1;border-radius:50%;animation:spin .8s linear infinite;display:inline-block}.view-calculation-panel{background:#fff;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden}.view-calculation-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:linear-gradient(135deg,#f0fdf4,#fff);border-bottom:1px solid #e2e8f0;cursor:pointer;transition:background .2s}.view-calculation-header:hover{background:#f0fdf4}.calc-header-left{display:flex;align-items:center;gap:.75rem}.calc-icon{font-size:1.25rem}.calc-header-text{display:flex;flex-direction:column}.calc-label{font-size:.75rem;color:#718096;text-transform:uppercase;letter-spacing:.05em}.calc-value{font-size:1.25rem;font-weight:700;color:#48bb78}.calc-header-right{display:flex;align-items:center;gap:1rem}.calc-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.calc-badge.high{background:#c6f6d5;color:#276749}.calc-badge.medium{background:#fef3c7;color:#92400e}.calc-badge.low{background:#fed7d7;color:#c53030}.calc-chevron{color:#a0aec0;font-size:.875rem;transition:transform .2s}.calc-chevron.expanded{transform:rotate(180deg)}.view-calculation-body{padding:1rem;background:#fafafa}.calc-tabs{display:flex;gap:.5rem;margin-bottom:1rem;border-bottom:1px solid #e2e8f0;padding-bottom:.5rem}.calc-tab{padding:.5rem 1rem;background:none;border:none;border-radius:6px;font-size:.875rem;color:#718096;cursor:pointer;transition:all .2s}.calc-tab:hover{background:#f7fafc;color:#2d3748}.calc-tab.active{background:#4299e1;color:#fff}.calc-section{margin-bottom:1.5rem}.calc-section:last-child{margin-bottom:0}.calc-section-title{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.calc-section-title .section-icon{font-size:1rem}.pistoia-driver-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.driver-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.driver-name{font-weight:600;color:#2d3748;font-size:1rem}.driver-category{padding:.25rem .5rem;background:#ebf8ff;color:#2c5282;border-radius:4px;font-size:.75rem;font-weight:500}.driver-formula{background:#f7fafc;padding:.75rem;border-radius:6px;font-family:Monaco,Menlo,monospace;font-size:.8rem;color:#4a5568;margin-bottom:.75rem;overflow-x:auto}.driver-parameters{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.5rem}.param-item{display:flex;flex-direction:column;padding:.5rem;background:#f7fafc;border-radius:4px}.param-name{font-size:.7rem;color:#a0aec0;text-transform:uppercase}.param-value{font-size:.875rem;font-weight:600;color:#2d3748}.evidence-chain-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.evidence-recommendation-id{font-size:.8rem;color:#718096;margin-bottom:1rem}.evidence-recommendation-id code{background:#f7fafc;padding:.125rem .5rem;border-radius:4px;font-family:monospace}.parameter-sources{margin-bottom:1rem}.parameter-sources-title{font-size:.8rem;font-weight:600;color:#4a5568;margin-bottom:.5rem}.param-source-item{display:flex;justify-content:space-between;align-items:flex-start;padding:.75rem;background:#f7fafc;border-radius:6px;margin-bottom:.5rem;border-left:3px solid #4299e1}.param-source-item.source-bridge_recommendation{border-left-color:#9f7aea}.param-source-item.source-station_data{border-left-color:#48bb78}.param-source-item.source-organization_context{border-left-color:#ed8936}.param-source-item.source-default{border-left-color:#a0aec0}.param-source-left{flex:1}.param-source-name{font-weight:600;color:#2d3748;font-size:.875rem}.param-source-desc{font-size:.8rem;color:#718096;margin-top:.25rem}.param-source-right{text-align:right}.param-source-value{font-weight:700;color:#4299e1;font-size:1rem}.param-source-type{font-size:.7rem;color:#a0aec0;text-transform:uppercase}.calculation-steps{display:flex;flex-direction:column;gap:.5rem}.calc-step{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f7fafc;border-radius:6px}.step-number{width:24px;height:24px;background:#4299e1;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;flex-shrink:0}.step-content{flex:1}.step-desc{font-size:.85rem;color:#4a5568;margin-bottom:.25rem}.step-formula{font-family:monospace;font-size:.8rem;color:#718096;background:#fff;padding:.25rem .5rem;border-radius:4px;display:inline-block}.step-result{font-weight:700;color:#48bb78;font-size:.9rem}.validation-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.validation-status{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem;border-radius:6px}.validation-status.valid{background:#f0fff4;border:1px solid #c6f6d5}.validation-status.invalid{background:#fff5f5;border:1px solid #fed7d7}.validation-icon{font-size:1.5rem}.validation-text{font-weight:600;color:#2d3748}.validation-warnings{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.warning-item{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;border-radius:6px}.warning-item.severity-error{background:#fff5f5;border-left:3px solid #f56565}.warning-item.severity-warning{background:#fffbeb;border-left:3px solid #f59e0b}.warning-item.severity-info{background:#ebf8ff;border-left:3px solid #4299e1}.warning-icon{font-size:1rem;flex-shrink:0}.warning-content{flex:1}.warning-rule{font-weight:600;color:#2d3748;font-size:.85rem}.warning-message{font-size:.8rem;color:#4a5568;margin-top:.125rem}.warning-suggestion{font-size:.75rem;color:#718096;font-style:italic;margin-top:.25rem}.validation-rules{display:flex;gap:1rem}.rules-list{flex:1}.rules-title{font-size:.75rem;font-weight:600;color:#718096;margin-bottom:.5rem}.rule-tags{display:flex;flex-wrap:wrap;gap:.25rem}.rule-tag{padding:.125rem .5rem;border-radius:4px;font-size:.7rem;font-weight:500}.rule-tag.passed{background:#c6f6d5;color:#276749}.rule-tag.failed{background:#fed7d7;color:#c53030}.confidence-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.confidence-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.confidence-level-display{display:flex;align-items:center;gap:.5rem}.confidence-level-badge{padding:.375rem 1rem;border-radius:20px;font-weight:700;font-size:.9rem}.confidence-level-badge.high{background:linear-gradient(135deg,#c6f6d5,#9ae6b4);color:#22543d}.confidence-level-badge.medium{background:linear-gradient(135deg,#fef3c7,#fcd34d);color:#78350f}.confidence-level-badge.low{background:linear-gradient(135deg,#fed7d7,#fc8181);color:#742a2a}.confidence-multiplier{font-size:.875rem;color:#718096}.confidence-explanation{background:#f7fafc;padding:.75rem;border-radius:6px;font-size:.875rem;color:#4a5568;line-height:1.5;margin-bottom:1rem}.confidence-factors{display:flex;flex-direction:column;gap:.5rem}.factor-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f7fafc;border-radius:6px}.factor-left{display:flex;align-items:center;gap:.5rem}.factor-impact{font-size:1rem}.factor-name{font-size:.85rem;color:#4a5568}.factor-right{display:flex;flex-direction:column;align-items:flex-end}.factor-value{font-weight:600;color:#2d3748;font-size:.875rem}.factor-source{font-size:.7rem;color:#a0aec0}.attribution-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.attribution-header{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.attribution-percentage{font-size:2rem;font-weight:700;color:#4299e1}.attribution-label{font-size:.875rem;color:#718096}.attribution-explanation{background:#ebf8ff;padding:.75rem;border-radius:6px;font-size:.85rem;color:#2c5282;margin-bottom:1rem}.complexity-breakdown{display:flex;flex-direction:column;gap:.5rem}.complexity-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f7fafc;border-radius:6px}.complexity-step{font-size:.85rem;color:#4a5568}.complexity-level{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.complexity-level.low{background:#c6f6d5;color:#276749}.complexity-level.medium{background:#fef3c7;color:#92400e}.complexity-level.high{background:#fed7d7;color:#c53030}.station-sources-section{background:#fff;border-radius:8px;padding:1rem;border:1px solid #e2e8f0}.station-sources-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem}.station-source-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:#f7fafc;border-radius:8px;text-align:center;transition:all .2s}.station-source-item:hover{background:#edf2f7;transform:translateY(-2px)}.station-icon{font-size:2rem;margin-bottom:.5rem}.station-name{font-weight:600;color:#2d3748;font-size:.85rem;margin-bottom:.25rem}.station-contribution{font-size:.75rem;color:#718096}.station-data-point{font-size:.8rem;color:#4299e1;font-weight:500;margin-top:.25rem}.calc-legacy-fallback{padding:1rem}.calc-legacy-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.calc-legacy-item{display:flex;flex-direction:column}.calc-legacy-label{font-size:.75rem;color:#718096;margin-bottom:.25rem}.calc-legacy-value{font-size:1.125rem;font-weight:600;color:#2d3748}.calc-formula-trace{background:#f7fafc;padding:.75rem;border-radius:6px;font-family:monospace;font-size:.8rem;color:#4a5568;overflow-x:auto}.confidence-distribution{border-top:1px solid #e2e8f0;padding-top:2rem;margin-top:2rem}.confidence-distribution h3{margin:0 0 .5rem;color:#2d3748;font-size:1.125rem}.distribution-subtitle{color:#718096;font-size:.9rem;margin:0 0 1.5rem}.confidence-bar-container{margin-bottom:1.5rem}.confidence-bar{display:flex;height:32px;border-radius:6px;overflow:hidden;background:#e2e8f0;box-shadow:inset 0 1px 3px #0000001a}.confidence-segment{transition:all .3s ease}.confidence-segment:hover{filter:brightness(1.1)}.confidence-segment.high{background:linear-gradient(135deg,#48bb78,#38a169)}.confidence-segment.medium{background:linear-gradient(135deg,#ecc94b,#d69e2e)}.confidence-segment.low{background:linear-gradient(135deg,#fc8181,#f56565)}.confidence-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}@media (max-width: 768px){.confidence-legend{grid-template-columns:1fr;gap:.75rem}}.confidence-legend .legend-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f7fafc;border-radius:8px}.confidence-legend .legend-item.high{border-left:4px solid #48bb78}.confidence-legend .legend-item.medium{border-left:4px solid #ecc94b}.confidence-legend .legend-item.low{border-left:4px solid #fc8181}.confidence-legend .legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.confidence-legend .legend-item.high .legend-dot{background:#48bb78}.confidence-legend .legend-item.medium .legend-dot{background:#ecc94b}.confidence-legend .legend-item.low .legend-dot{background:#fc8181}.confidence-legend .legend-label{font-size:.85rem;font-weight:600;color:#2d3748;flex:1}.confidence-legend .legend-count{font-size:.75rem;color:#718096}.confidence-legend .legend-value{font-size:.9rem;font-weight:700;color:#48bb78}.confidence-legend .legend-item.medium .legend-value{color:#d69e2e}.confidence-legend .legend-item.low .legend-value{color:#e53e3e}.confidence-legend .legend-pct{font-size:.8rem;color:#4a5568;font-weight:600;min-width:40px;text-align:right}.confidence-note{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ebf8ff;border:1px solid #bee3f8;border-radius:8px}.confidence-note .note-icon{font-size:1.25rem;flex-shrink:0}.confidence-note .note-text{font-size:.85rem;color:#2c5282;line-height:1.5}.validation-warning-badge{font-size:1rem;cursor:help;animation:pulse-warning 2s infinite}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}.task-card.has-validation-warning{border-color:#f6ad55}.task-card.has-validation-warning .task-header{background:linear-gradient(135deg,#fffbeb,#fff)}.action-plan-header{position:relative}@media (max-width: 768px){.header-actions{position:static;margin-top:1rem;justify-content:flex-end}}.value-calculation-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.governance-topology .topology-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.governance-topology .header-left h2{font-size:1.5rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .25rem;border-bottom:none!important;padding-bottom:0!important}.governance-topology .subtitle{color:#4b5563!important;font-size:.95rem;margin:0}.governance-topology .stats-bar{display:flex;gap:2rem;padding:1rem 1.5rem;background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;flex-wrap:wrap}.governance-topology .stats-bar .stat-item{display:flex;flex-direction:column}.governance-topology .stats-bar .stat-value{font-size:1.5rem;font-weight:600;color:#1a1a2e}.governance-topology .stats-bar .stat-label{font-size:.85rem;font-weight:500;color:#374151}.governance-topology .stats-bar .stat-highlight{padding-left:1.5rem;border-left:2px solid var(--color-border, #e0e0e0)}.governance-topology .topology-filters{display:flex;align-items:center;gap:2rem;margin-bottom:1.5rem}.governance-topology .filter-group{display:flex;align-items:center;gap:.75rem}.governance-topology .filter-group label{font-size:.9rem;font-weight:500;color:#374151}.governance-topology .filter-group select{padding:.5rem .75rem;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;font-size:.9rem;background:#fff;cursor:pointer;min-width:150px}.governance-topology .filter-group select:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.governance-topology .checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;color:#374151;cursor:pointer}.governance-topology .checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.governance-topology .topology-main{display:flex;gap:1.5rem;min-height:600px}.governance-topology .graph-container{flex:1;position:relative;background:#fff;border:1px solid #d1d5db;border-radius:12px;overflow:hidden;min-height:600px}.governance-topology .topology-svg{width:100%;height:100%;min-height:600px}.governance-topology .topology-node{transition:transform .2s ease}.governance-topology .topology-node:hover{filter:brightness(1.1)}.governance-topology .topology-node.baseline .node-circle{filter:drop-shadow(0 0 8px rgba(245,158,11,.5))}.governance-topology .topology-node.critical .node-circle{filter:drop-shadow(0 0 8px rgba(239,68,68,.5))}.governance-topology .node-circle,.governance-topology .node-ring{transition:all .2s ease}.governance-topology .topology-link{transition:opacity .2s ease}.governance-topology .node-label{text-shadow:0 1px 2px rgba(255,255,255,.8)}.governance-topology .node-initials{text-shadow:0 1px 2px rgba(0,0,0,.2)}.governance-topology .topology-legend{position:absolute;bottom:1rem;left:1rem;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:1rem;font-size:.85rem;box-shadow:0 2px 8px #0000001a;max-width:280px;z-index:10}.governance-topology .topology-legend h4{margin:0 0 .75rem;font-size:.95rem;font-weight:700;color:#1a1a2e}.governance-topology .legend-items{display:flex;flex-direction:column;gap:1rem}.governance-topology .legend-section{display:flex;flex-direction:column;gap:.5rem}.governance-topology .legend-label{font-weight:600;color:#1a1a2e;font-size:.8rem}.governance-topology .legend-item{display:flex;align-items:center;gap:.5rem;color:#1a1a2e;font-weight:500;font-size:.9rem}.governance-topology .legend-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.governance-topology .legend-ring{width:16px;height:16px;border-radius:50%;border:2px solid;flex-shrink:0}.governance-topology .legend-ring.baseline{border-color:#f59e0b}.governance-topology .legend-ring.critical{border-color:#ef4444;border-style:dashed}.governance-topology .legend-badge{width:16px;height:16px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700;color:#fff}.governance-topology .legend-badge:after{content:"!"}.governance-topology .legend-badge.critical{background-color:#dc2626}.governance-topology .legend-badge.warning{background-color:#f59e0b}.governance-topology .legend-badge.warning:after{content:"W"}.governance-topology .legend-badge.optimization{background-color:#3b82f6}.governance-topology .legend-badge.optimization:after{content:"i"}.governance-topology .persona-detail-panel{width:380px;flex-shrink:0;background:#fff;border:1px solid var(--color-border, #e0e0e0);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;max-height:700px}.governance-topology .panel-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border, #e0e0e0);background:var(--color-bg-secondary, #f8f9fa)}.governance-topology .panel-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.governance-topology .panel-title-row h3{margin:0;font-size:1.15rem;font-weight:600;color:var(--color-text-primary, #1a1a2e);padding-right:1rem}.governance-topology .panel-close{width:28px;height:28px;border:none;background:none;font-size:1.5rem;color:var(--color-text-secondary, #666);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;flex-shrink:0}.governance-topology .panel-close:hover{background:#0000000d}.governance-topology .panel-badges{display:flex;flex-wrap:wrap;gap:.5rem}.governance-topology .role-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;color:#fff}.governance-topology .baseline-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.governance-topology .critical-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.governance-topology .panel-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1}.governance-topology .panel-section{margin-bottom:1.25rem}.governance-topology .panel-section:last-child{margin-bottom:0}.governance-topology .panel-section h4{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:var(--color-text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.governance-topology .panel-section p{margin:0;font-size:.95rem;color:var(--color-text-primary, #374151);line-height:1.6}.governance-topology .tasks-list{margin:0;padding-left:1.25rem;font-size:.9rem;color:var(--color-text-primary, #374151)}.governance-topology .tasks-list li{margin-bottom:.35rem}.governance-topology .tasks-list .more-tasks{color:var(--color-text-secondary, #666);font-style:italic;list-style:none;margin-left:-1.25rem}.governance-topology .impact-narrative{font-style:italic;color:var(--color-text-secondary, #555)}.governance-topology .criticality-reason{padding:.75rem;background:#fef2f2;border-left:3px solid #ef4444;border-radius:4px;font-size:.9rem}.governance-topology .synonyms-list,.governance-topology .related-list{display:flex;flex-wrap:wrap;gap:.5rem}.governance-topology .synonym-tag,.governance-topology .related-tag{display:inline-block;padding:.25rem .6rem;background:var(--color-bg-secondary, #f3f4f6);border-radius:4px;font-size:.85rem;color:var(--color-text-secondary, #555)}.governance-topology .reference-link{color:var(--color-primary, #2563eb);text-decoration:none;font-size:.9rem}.governance-topology .reference-link:hover{text-decoration:underline}.governance-topology .panel-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.governance-topology .btn-assign{width:100%}.governance-topology .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.governance-topology .modal-content{background:#fff;border-radius:12px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.governance-topology .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.governance-topology .modal-header h2{font-size:1.25rem;font-weight:600;color:#1a1a2e;margin:0}.governance-topology .modal-close{width:32px;height:32px;border:none;background:none;font-size:1.5rem;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px}.governance-topology .modal-close:hover{background:#f3f4f6}.governance-topology .modal-body{padding:1.5rem}.governance-topology .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#f9fafb}.governance-topology .assignment-persona-info{padding:1rem;background:#f9fafb;border-radius:8px;margin-bottom:1.25rem}.governance-topology .persona-preview{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.governance-topology .persona-dot{width:12px;height:12px;border-radius:50%;flex-shrink:0}.governance-topology .persona-preview strong{font-size:1rem;color:#1a1a2e;display:block}.governance-topology .persona-role-label{font-size:.85rem;color:#6b7280;display:block}.governance-topology .persona-definition-preview{font-size:.9rem;color:#4b5563;margin:0;line-height:1.5}.governance-topology .form-group{margin-bottom:1.25rem}.governance-topology .form-group label{display:block;font-size:.9rem;font-weight:500;color:#374151;margin-bottom:.5rem}.governance-topology .form-group .required{color:#dc2626}.governance-topology .form-group select,.governance-topology .form-group textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;color:#1a1a2e;background:#fff}.governance-topology .form-group select:focus,.governance-topology .form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.governance-topology .form-group textarea{resize:vertical;min-height:80px}.governance-topology .form-error{padding:.75rem 1rem;background:#fee2e2;color:#dc2626;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.governance-topology .loading-inline{padding:.75rem;color:#6b7280;font-size:.9rem}.governance-topology .empty-employees{padding:1rem;background:#fef3c7;border-radius:8px;text-align:center}.governance-topology .empty-employees p{margin:0 0 .5rem;color:#92400e;font-size:.9rem}.governance-topology .link-to-team{color:#2563eb;font-size:.9rem;text-decoration:none}.governance-topology .link-to-team:hover{text-decoration:underline}.governance-topology .loading-state,.governance-topology .error-state,.governance-topology .empty-state,.governance-topology .no-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border:1px solid var(--color-border, #e0e0e0);border-radius:12px;min-height:400px}.governance-topology .empty-illustration{font-size:4rem;margin-bottom:1rem;color:var(--color-text-tertiary, #999)}.governance-topology .empty-state h2,.governance-topology .error-state h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.governance-topology .empty-state p,.governance-topology .error-state p,.governance-topology .no-results-state p{color:var(--color-text-secondary, #666);margin:0 0 1.5rem;max-width:400px}.governance-topology .error-icon{font-size:3rem;margin-bottom:1rem;color:#ef4444}.governance-topology .spinner{width:40px;height:40px;border:3px solid var(--color-border, #e0e0e0);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.governance-topology .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.governance-topology .btn-primary{background:var(--color-primary, #2563eb);color:#fff}.governance-topology .btn-primary:hover{background:var(--color-primary-dark, #1d4ed8)}.governance-topology .btn-secondary{background:#fff;color:var(--color-text-primary, #374151);border:1px solid var(--color-border, #e0e0e0)}.governance-topology .btn-secondary:hover{background:var(--color-bg-hover, #f5f5f5);border-color:var(--color-primary, #2563eb)}@media (max-width: 1024px){.governance-topology .topology-main{flex-direction:column}.governance-topology .persona-detail-panel{width:100%;max-height:400px}.governance-topology .topology-legend{position:relative;bottom:auto;left:auto;margin:1rem;max-width:none}}@media (max-width: 768px){.governance-topology .topology-header{flex-direction:column;gap:1rem}.governance-topology .stats-bar{gap:1rem}.governance-topology .topology-filters{flex-direction:column;align-items:flex-start;gap:1rem}.governance-topology .filter-group{width:100%}.governance-topology .filter-group select{flex:1}.governance-topology .graph-container{min-height:400px}}.journey-governance{background:#fff;padding:1.5rem;border-radius:8px}.journey-governance .topology-header{margin-bottom:1rem;background:transparent}.journey-governance .topology-header h2{color:#1a1a2e!important;font-size:1.5rem;font-weight:600;margin:0 0 .25rem}.journey-governance .topology-header .subtitle{color:#4b5563!important;font-size:.95rem;margin:0}.governance-quick-nav{display:flex;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.governance-quick-nav .quick-nav-link{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#374151;text-decoration:none;font-size:.875rem;font-weight:500;transition:all .15s ease}.governance-quick-nav .quick-nav-link:hover{background:#e5e7eb;border-color:#d1d5db;color:#1f2937}.governance-quick-nav .nav-icon{font-size:1rem}.governance-quick-nav .nav-label{white-space:nowrap}.governance-progress{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.governance-progress .progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.9rem;color:#374151;font-weight:500}.governance-progress .progress-value{font-weight:600;color:#1a1a2e}.governance-progress .progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.governance-progress .progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:4px;transition:width .5s ease}.governance-progress .progress-detail{display:flex;justify-content:space-between;font-size:.8rem}.governance-progress .baseline-progress{color:#6b7280}.governance-progress .unassigned-warning{color:#f59e0b;font-weight:500}.journey-governance .topology-main.compact{min-height:400px}.journey-governance .topology-main.compact .graph-container{min-height:380px}.journey-governance .topology-filters{gap:1.5rem;margin-bottom:1rem}.assignment-section{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #86efac;border-radius:8px;padding:.75rem;margin-bottom:.5rem}.assignment-card{display:flex;align-items:center;gap:.75rem}.assignee-avatar{width:40px;height:40px;border-radius:50%;background:#10b981;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem}.assignee-info{display:flex;flex-direction:column}.assignee-info strong{color:#1a1a2e;font-size:.95rem}.assignee-email{color:#6b7280;font-size:.8rem}.legend-ring.assigned{width:16px;height:16px;border-radius:50%;border:3px solid #10b981;flex-shrink:0}.legend-ring.unassigned{width:16px;height:16px;border-radius:50%;border:3px solid #9ca3af;border-style:dashed;flex-shrink:0}.topology-node.assigned .node-circle{opacity:1}.topology-node.unassigned .node-circle{opacity:.6}.alert-bar{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;border-radius:8px;margin-bottom:1rem}.alert-bar .alert-icon{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.8rem}.alert-bar .alert-content{flex:1}.alert-bar .alert-content strong{display:block;font-size:.95rem;margin-bottom:.25rem}.alert-bar .alert-content p{margin:0;font-size:.85rem;line-height:1.4}.alert-bar.alert-orphan{background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #fbbf24}.alert-bar.alert-orphan .alert-icon{background:#f59e0b;color:#fff}.alert-bar.alert-orphan .alert-content strong{color:#92400e}.alert-bar.alert-orphan .alert-content p{color:#78350f}.alert-bar.alert-bus-factor{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #f87171}.alert-bar.alert-bus-factor .alert-icon{background:#ef4444;color:#fff}.alert-bar.alert-bus-factor .alert-content strong{color:#991b1b}.alert-bar.alert-bus-factor .alert-content p{color:#7f1d1d}.bus-factor-item{display:inline-block;background:#ef44441a;padding:.125rem .5rem;border-radius:4px;margin-right:.5rem;font-weight:500}.btn-warning{background:#f59e0b;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-warning:hover{background:#d97706}.btn-sm{padding:.375rem .75rem;font-size:.85rem}@keyframes fadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.alert-bar{animation:fadeIn .4s ease-out}.alert-bar.alert-orphan{animation:slideInFromLeft .5s ease-out}.alert-bar.alert-bus-factor{animation:slideInFromLeft .5s ease-out .1s both}.governance-topology .stats-bar{animation:fadeIn .3s ease-out}.governance-topology .stats-bar .stat-item{animation:fadeIn .4s ease-out backwards}.governance-topology .stats-bar .stat-item:nth-child(1){animation-delay:.05s}.governance-topology .stats-bar .stat-item:nth-child(2){animation-delay:.1s}.governance-topology .stats-bar .stat-item:nth-child(3){animation-delay:.15s}.governance-topology .stats-bar .stat-item:nth-child(4){animation-delay:.2s}.governance-topology .stats-bar .stat-item:nth-child(5){animation-delay:.25s}.persona-detail-panel{animation:slideInFromRight .3s ease-out}.topology-node{transition:transform .2s ease,filter .2s ease}.topology-node:hover{transform:scale(1.08);filter:brightness(1.1)}.topology-node .node-circle{transition:stroke-width .2s ease,filter .2s ease}.topology-node:hover .node-circle{stroke-width:3;filter:drop-shadow(0 2px 8px rgba(0,0,0,.2))}.topology-node .node-ring{transition:stroke-width .2s ease,r .2s ease}.topology-node:hover .node-ring{stroke-width:4}.topology-node .node-label{transition:opacity .2s ease,font-weight .2s ease}.topology-node:hover .node-label{font-weight:600}.topology-link{transition:stroke-opacity .3s ease,stroke-width .3s ease}.topology-node:hover~.topology-link,.topology-link:hover{stroke-opacity:.9;stroke-width:2.5}.loading-state{animation:fadeIn .3s ease-out}.loading-state .spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.graph-container{animation:fadeIn .5s ease-out}.modal-overlay{animation:fadeIn .2s ease-out}.modal-content{animation:slideInFromRight .3s ease-out}.btn{transition:all .2s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn:active{transform:translateY(0)}.panel-section{animation:fadeIn .3s ease-out backwards}.panel-section:nth-child(1){animation-delay:.05s}.panel-section:nth-child(2){animation-delay:.1s}.panel-section:nth-child(3){animation-delay:.15s}.panel-section:nth-child(4){animation-delay:.2s}.panel-section:nth-child(5){animation-delay:.25s}.role-badge,.baseline-badge,.critical-badge{transition:transform .2s ease,box-shadow .2s ease}.role-badge:hover,.baseline-badge:hover,.critical-badge:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.filter-group select{transition:border-color .2s ease,box-shadow .2s ease}.filter-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.checkbox-label{transition:color .2s ease}.checkbox-label:hover{color:#1a1a2e}.checkbox-label input[type=checkbox]{transition:transform .2s ease}.checkbox-label:hover input[type=checkbox]{transform:scale(1.1)}.legend-item{transition:transform .2s ease}.legend-item:hover{transform:translate(4px)}.governance-progress .progress-fill{transition:width .6s cubic-bezier(.4,0,.2,1)}.assignment-card{animation:fadeIn .3s ease-out}.topology-node title{transition:opacity .2s ease}.empty-state{animation:fadeIn .5s ease-out}.empty-state .empty-illustration{animation:pulse 2s ease-in-out infinite}.error-state{animation:fadeIn .4s ease-out}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.employee-sidebar{width:260px;flex-shrink:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;display:flex;flex-direction:column;max-height:700px;animation:slideInFromLeft .3s ease-out}.employee-sidebar.collapsed{width:48px;border-radius:8px;padding:0}.sidebar-toggle{width:48px;height:100%;min-height:200px;border:none;background:transparent;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#6b7280;transition:background .2s ease,color .2s ease}.sidebar-toggle:hover{background:#f3f4f6;color:#1a1a2e}.sidebar-toggle .toggle-icon{font-size:.75rem}.sidebar-toggle .toggle-label{writing-mode:vertical-rl;text-orientation:mixed;font-size:.85rem;font-weight:500}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:#f8f9fa;border-radius:12px 12px 0 0}.sidebar-header h4{margin:0;font-size:.95rem;font-weight:600;color:#1a1a2e}.sidebar-collapse{width:28px;height:28px;border:none;background:none;font-size:.75rem;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s ease}.sidebar-collapse:hover{background:#0000000d}.sidebar-search{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}.sidebar-search .search-input{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.85rem;color:#1a1a2e;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.sidebar-search .search-input:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf626}.sidebar-search .search-input::placeholder{color:#9ca3af}.sidebar-hint{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#f3e8ff;font-size:.8rem;color:#7c3aed}.sidebar-hint .hint-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#8b5cf6;color:#fff;border-radius:4px;font-size:.65rem;font-weight:600}.sidebar-loading,.sidebar-empty{padding:2rem 1rem;text-align:center;color:#6b7280;font-size:.9rem}.sidebar-empty p{margin:0 0 .75rem}.link-add-team{color:#8b5cf6;text-decoration:none;font-weight:500}.link-add-team:hover{text-decoration:underline}.employee-list{flex:1;overflow-y:auto;padding:.5rem}.employee-card{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;margin-bottom:.375rem;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:grab;transition:all .2s ease}.employee-card:hover{border-color:#8b5cf6;background:#faf5ff;box-shadow:0 2px 8px #8b5cf626}.employee-card:active{cursor:grabbing}.employee-card.draggable:active{opacity:.6}.employee-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem;flex-shrink:0}.employee-info{flex:1;min-width:0;display:flex;flex-direction:column}.employee-name{font-size:.85rem;font-weight:500;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-email{font-size:.75rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-dept{font-size:.7rem;color:#9ca3af;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drag-handle{flex-shrink:0;color:#9ca3af}.drag-dots{font-size:.7rem;color:#9ca3af}.no-results{padding:1rem;text-align:center;color:#9ca3af;font-size:.85rem}.topology-main.drag-active .graph-container{border-color:#8b5cf6;border-style:dashed;background:linear-gradient(135deg,#faf5ff,#f5f3ff)}.drop-overlay{position:absolute;inset:0;pointer-events:none;display:flex;align-items:center;justify-content:center;z-index:5}.drop-hint{background:#8b5cf6f2;color:#fff;padding:.75rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:500;box-shadow:0 4px 12px #8b5cf64d;animation:fadeIn .2s ease-out}.topology-node .drop-target{transition:all .2s ease}.topology-node:hover .drop-target{stroke:#8b5cf64d}.drop-feedback-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;border-radius:8px;font-size:.95rem;font-weight:500;box-shadow:0 8px 24px #00000026;z-index:1000;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.drop-feedback-toast.success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.drop-feedback-toast.error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.drop-feedback-toast .toast-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#fff3;border-radius:50%;font-size:.85rem;font-weight:700}.drop-feedback-toast .toast-message{flex:1}@media (max-width: 1200px){.employee-sidebar{width:220px}}@media (max-width: 1024px){.employee-sidebar{width:100%;max-height:250px;border-radius:12px;margin-bottom:1rem}.employee-sidebar.collapsed{width:100%;height:48px}.sidebar-toggle{flex-direction:row;width:100%;min-height:auto;padding:.5rem 1rem}.sidebar-toggle .toggle-label{writing-mode:horizontal-tb}}.view-tier-toggle{display:flex;align-items:center;gap:.75rem}.view-tier-toggle .toggle-label{font-size:.9rem;font-weight:500;color:#374151}.tier-buttons{display:flex;background:#f3f4f6;border-radius:8px;padding:3px;gap:2px}.tier-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:none;background:transparent;border-radius:6px;font-size:.85rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.tier-btn:hover{color:#374151;background:#ffffff80}.tier-btn.active{background:#fff;color:#8b5cf6;box-shadow:0 1px 3px #0000001a}.tier-btn .tier-icon{font-size:.75rem}.tier-btn .tier-name{font-weight:500}.macro-group{transition:transform .2s ease}.macro-group:hover{transform:scale(1.05)}.macro-group circle{transition:all .2s ease}.macro-group:hover circle:first-child{r:75;stroke-opacity:.5}.topology-node.tier-micro .node-tasks{font-size:10px;fill:#6b7280}.topology-node.tier-micro .node-label{font-weight:600}@keyframes tierTransition{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.topology-svg{animation:tierTransition .3s ease-out}@media (max-width: 768px){.view-tier-toggle{width:100%}.tier-buttons{flex:1;justify-content:center}.tier-btn .tier-name{display:none}.tier-btn{padding:.5rem .75rem}.tier-btn .tier-icon{font-size:1rem}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.graph-container:focus{outline:2px solid #2563eb;outline-offset:2px}.graph-container.keyboard-focused{outline:3px solid #2563eb;outline-offset:4px}.focus-ring{pointer-events:none;transition:opacity .15s ease-out}@keyframes focusPulse{0%{stroke-opacity:1}50%{stroke-opacity:.5}to{stroke-opacity:1}}.topology-node .focus-ring[opacity="1"]{animation:focusPulse 1.5s ease-in-out infinite}.keyboard-shortcuts-help{position:fixed;bottom:24px;right:24px;z-index:1000}.shortcuts-toggle{width:36px;height:36px;border-radius:50%;background:var(--compass-purple-500, #8b5cf6);color:#fff;border:none;font-size:18px;font-weight:700;cursor:pointer;box-shadow:0 2px 8px #0003;transition:all .2s ease}.shortcuts-toggle:hover{background:var(--compass-purple-600, #7c3aed);transform:scale(1.1)}.shortcuts-toggle:focus{outline:2px solid #2563eb;outline-offset:2px}.shortcuts-panel{position:absolute;bottom:48px;right:0;width:280px;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;padding:16px;display:none}.shortcuts-panel.visible{display:block;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.shortcuts-panel h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#374151}.shortcuts-panel ul{list-style:none;margin:0;padding:0}.shortcuts-panel li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:#4b5563;border-bottom:1px solid #f3f4f6}.shortcuts-panel li:last-child{border-bottom:none}.shortcuts-panel kbd{display:inline-block;padding:2px 6px;font-size:11px;font-family:ui-monospace,monospace;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#374151}.skip-link{position:absolute;top:-100px;left:16px;padding:8px 16px;background:#2563eb;color:#fff;text-decoration:none;border-radius:4px;z-index:10000;transition:top .2s}.skip-link:focus{top:16px}.persona-detail-panel:focus{outline:none}.persona-detail-panel:focus-visible{box-shadow:0 0 0 3px #2563eb4d}@media (prefers-contrast: high){.focus-ring{stroke:#000!important;stroke-width:4!important}.graph-container:focus,.graph-container.keyboard-focused{outline-width:4px;outline-color:#000}.shortcuts-toggle{border:2px solid #000}.topology-node .node-circle{stroke-width:3}}@media (prefers-reduced-motion: reduce){.focus-ring,.topology-node .focus-ring[opacity="1"],.shortcuts-panel.visible,.topology-svg{animation:none!important;transition:none!important}}.topology-node:focus-visible .node-circle,.macro-group:focus-visible circle{stroke:#2563eb;stroke-width:4}.topology-header{display:flex;justify-content:space-between;align-items:flex-start}.header-right{display:flex;gap:.5rem}.btn-alert-history{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:13px}.btn-alert-history .btn-icon{font-size:16px}.alert-history-panel{position:fixed;top:80px;right:24px;width:380px;max-height:calc(100vh - 120px);background:#fff;border-radius:12px;box-shadow:0 8px 32px #00000026;z-index:1200;display:flex;flex-direction:column;animation:slideIn .2s ease-out}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.alert-history-panel:focus{outline:none}.alert-panel-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.alert-panel-header h3{margin:0;font-size:16px;font-weight:600;color:#111827}.alert-summary-stats{display:flex;gap:8px;padding:12px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.summary-stat{flex:1;text-align:center;padding:8px;background:#fff;border-radius:8px;border:1px solid #e5e7eb}.summary-stat .stat-number{display:block;font-size:20px;font-weight:700;color:#374151}.summary-stat .stat-label{display:block;font-size:10px;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.summary-stat.warning .stat-number{color:#f59e0b}.summary-stat.error .stat-number{color:#ef4444}.alert-filter-tabs{display:flex;padding:0 20px;border-bottom:1px solid #e5e7eb;background:#fafafa}.filter-tab{flex:1;padding:10px 8px;font-size:12px;font-weight:500;color:#6b7280;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease}.filter-tab:hover{color:#374151;background:#f3f4f6}.filter-tab.active{color:#8b5cf6;border-bottom-color:#8b5cf6}.alert-list{flex:1;overflow-y:auto;padding:8px 0;max-height:400px}.alert-loading,.alert-empty{padding:40px 20px;text-align:center;color:#9ca3af}.alert-empty .empty-icon{display:block;font-size:32px;margin-bottom:8px;opacity:.5}.alert-item{display:flex;gap:12px;padding:12px 20px;border-bottom:1px solid #f3f4f6;transition:background .15s ease}.alert-item:hover{background:#f9fafb}.alert-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.alert-icon.severity-info{background:#dbeafe;color:#2563eb}.alert-icon.severity-warning{background:#fef3c7;color:#d97706}.alert-icon.severity-error{background:#fee2e2;color:#dc2626}.alert-message{margin:0 0 4px;font-size:13px;color:#374151;line-height:1.4}.alert-meta{font-size:11px;color:#9ca3af;display:flex;align-items:center;gap:4px}.alert-time{color:#6b7280}.alert-separator{color:#d1d5db}.alert-actor{color:#6b7280;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.alert-item.severity-error{border-left:3px solid #ef4444}.alert-item.severity-warning{border-left:3px solid #f59e0b}.alert-item.severity-info{border-left:3px solid #3b82f6}.alert-panel-footer{padding:12px 20px;border-top:1px solid #e5e7eb;text-align:center}.footer-text{font-size:12px;color:#9ca3af}.perf-toggle{display:flex;align-items:center;gap:.5rem;margin-left:auto}.perf-toggle select{padding:.375rem .75rem;border-radius:6px;border:1px solid #d1d5db;background:#fff;font-size:13px;color:#374151;cursor:pointer;transition:border-color .15s ease}.perf-toggle select:hover{border-color:#9ca3af}.perf-toggle select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.perf-indicator{display:inline-flex;align-items:center;padding:.25rem .5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:11px;font-weight:600;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;animation:pulse-perf 2s infinite}@keyframes pulse-perf{0%,to{opacity:1}50%{opacity:.8}}@media (max-width: 768px){.alert-history-panel{width:calc(100% - 32px);right:16px;left:16px}.topology-header{flex-direction:column;gap:1rem}.header-right{width:100%}.btn-alert-history{width:100%;justify-content:center}.perf-toggle{margin-left:0;margin-top:.5rem}}.sidebar-filter-tabs{display:flex;border-bottom:1px solid #e5e7eb;background:#f9fafb}.sidebar-filter-tabs .filter-tab{flex:1;padding:.5rem .25rem;font-size:.7rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .15s ease;text-align:center}.sidebar-filter-tabs .filter-tab:hover{color:#374151;background:#f3f4f6}.sidebar-filter-tabs .filter-tab.active{color:#8b5cf6;border-bottom-color:#8b5cf6;background:#fff}.employee-card.has-assignments{border-left:3px solid #10b981}.employee-card.has-assignments .employee-avatar{background:linear-gradient(135deg,#10b981,#059669)}.assignment-status{margin-top:.25rem}.assignment-status .status-badge{display:inline-block;padding:.125rem .5rem;border-radius:10px;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.assignment-status .status-badge.assigned{background:#dcfce7;color:#166534}.assignment-status .status-badge.unassigned{background:#f3f4f6;color:#6b7280}.assigned-roles{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.assigned-roles .role-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;border-radius:4px;font-size:.6rem;font-weight:500;background:transparent;border:1px solid currentColor;white-space:nowrap;max-width:120px}.assigned-roles .role-tag .unassign-btn{display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;padding:0;margin-left:2px;border:none;background:#0000001a;color:inherit;border-radius:50%;font-size:10px;font-weight:700;line-height:1;cursor:pointer;opacity:.6;transition:all .15s ease}.assigned-roles .role-tag .unassign-btn:hover{opacity:1;background:#ef4444;color:#fff}.assigned-roles .role-tag .unassign-btn:focus{outline:2px solid #2563eb;outline-offset:1px}.assigned-roles .more-roles{font-size:.6rem;color:#9ca3af;padding:.125rem .25rem}.employee-card.has-assignments .employee-email{display:none}.employee-card:not(.has-assignments){opacity:.85}.employee-card:not(.has-assignments):hover{opacity:1}.recommendation-badge{cursor:pointer;filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.recommendation-badge-text{-webkit-user-select:none;user-select:none}.persona-detail-panel .recommendations-section{border-top:1px solid #e5e7eb;padding-top:1rem;margin-top:.5rem}.persona-detail-panel .recommendations-section h4{font-size:.9rem;font-weight:600;color:#374151;margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.persona-detail-panel .recommendations-section h4:before{content:"⚖️";font-size:1rem}.persona-detail-panel .recommendations-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.persona-detail-panel .recommendation-item{display:flex;align-items:flex-start;gap:.75rem;padding:.625rem .75rem;background:#f9fafb;border-radius:6px;border-left:3px solid #6b7280}.persona-detail-panel .recommendation-item.priority-critical{background:#fef2f2;border-left-color:#dc2626}.persona-detail-panel .recommendation-item.priority-warning{background:#fffbeb;border-left-color:#f59e0b}.persona-detail-panel .recommendation-item.priority-optimization{background:#eff6ff;border-left-color:#3b82f6}.persona-detail-panel .priority-indicator{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:.7rem;font-weight:700;flex-shrink:0;background:#6b7280;color:#fff}.persona-detail-panel .priority-indicator.critical{background:#dc2626}.persona-detail-panel .priority-indicator.warning{background:#f59e0b}.persona-detail-panel .priority-indicator.optimization{background:#3b82f6}.persona-detail-panel .recommendation-content{display:flex;flex-direction:column;gap:.25rem}.persona-detail-panel .recommendation-title{font-size:.85rem;color:#1f2937;line-height:1.4}.persona-detail-panel .recommendation-action-type{font-size:.75rem;text-transform:capitalize;color:#6b7280;font-weight:500}.asset-detail-overlay{position:fixed;inset:0;background:#0006;z-index:999;display:flex;justify-content:flex-end;animation:fadeIn .2s ease-out}.asset-detail-panel{position:relative;width:480px;max-width:90vw;height:100vh;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease-out;overflow:hidden}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.asset-detail-panel .panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.asset-detail-panel .header-content{display:flex;align-items:center;gap:1rem}.asset-detail-panel .asset-icon-large{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#f0f4f8;border-radius:12px}.asset-detail-panel .header-text h2{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#1a202c}.asset-detail-panel .asset-type-label{font-size:.75rem;font-weight:500;text-transform:uppercase;color:#718096;letter-spacing:.5px}.asset-detail-panel .close-button,.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#718096;padding:.25rem .5rem;line-height:1;border-radius:4px;transition:all .2s ease}.asset-detail-panel .close-button:hover,.close-btn:hover{background:#edf2f7;color:#2d3748}.panel-tabs{display:flex;border-bottom:1px solid #e2e8f0;background:#fff}.panel-tabs .tab-btn,.panel-tabs .tab{flex:1;padding:.875rem 1rem;border:none;background:none;font-size:.9rem;font-weight:500;color:#718096;cursor:pointer;position:relative;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.panel-tabs .tab-btn:hover,.panel-tabs .tab:hover{background:#f7fafc;color:#4a5568}.panel-tabs .tab-btn.active,.panel-tabs .tab.active{color:#3182ce}.panel-tabs .tab-btn.active:after,.panel-tabs .tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:#3182ce}.panel-tabs .status-indicator{font-size:.9rem}.panel-content{flex:1;overflow-y:auto;padding:1.25rem}.overview-content,.overview-tab{display:flex;flex-direction:column;gap:1rem}.info-grid{display:grid;gap:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:.95rem;color:#2d3748;word-break:break-word}.info-row{display:flex;flex-direction:column;gap:.25rem}.info-row .label{font-size:.75rem;font-weight:600;color:#718096;text-transform:uppercase;letter-spacing:.5px}.info-row .value{font-size:.95rem;color:#2d3748;word-break:break-word}.info-row .value.mono{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;background:#f7fafc;padding:.25rem .5rem;border-radius:4px}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:12px;font-size:.8rem;font-weight:500}.status-badge.ready{background:#c6f6d5;color:#22543d}.status-badge.processing{background:#feebc8;color:#744210}.status-badge.pending{background:#e2e8f0;color:#4a5568}.status-badge.error{background:#fed7d7;color:#742a2a}.health-score-display{display:flex;align-items:center;gap:.75rem}.health-bar{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.health-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.health-label{font-size:.85rem;font-weight:600;min-width:45px}.governance-content,.governance-tab{display:flex;flex-direction:column;gap:1.5rem}.governance-status-summary,.governance-status-banner{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f7fafc;border-radius:8px;border-left:4px solid #e2e8f0}.governance-status-summary.complete,.governance-status-banner.status-complete{border-left-color:#48bb78;background:#f0fff4}.governance-status-summary.partial,.governance-status-banner.status-partial{border-left-color:#ed8936;background:#fffaf0}.governance-status-summary.missing,.governance-status-banner.status-missing{border-left-color:#f56565;background:#fff5f5}.governance-status-summary .status-icon,.governance-status-banner .status-icon{font-size:1.5rem}.governance-status-summary .status-text,.governance-status-banner .status-text{flex:1}.governance-status-summary .status-text strong,.governance-status-banner .status-text strong{display:block;font-size:.95rem;color:#2d3748}.governance-status-summary .status-text span,.governance-status-banner .status-text span{font-size:.8rem;color:#718096}.governance-section{margin-bottom:1rem}.governance-section h3{margin:0 0 .75rem;font-size:.9rem;font-weight:600;color:#4a5568}.section-hint{font-size:.8rem;color:#718096;margin:0 0 .75rem}.governance-content h4{margin:0;font-size:.9rem;font-weight:600;color:#4a5568;display:flex;align-items:center;gap:.5rem}.governance-content h4 .count-badge{background:#e2e8f0;padding:.125rem .5rem;border-radius:10px;font-size:.75rem;font-weight:500}.assigned-roles-list,.assignment-list{display:flex;flex-direction:column;gap:.5rem}.assignment-card{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .2s ease;position:relative}.assignment-card:hover{border-color:#cbd5e0;box-shadow:0 2px 4px #0000000d}.assignment-card .assignment-role{display:flex;flex-direction:column;gap:.25rem;flex:1}.assignment-card .assignment-role .role-name{font-weight:600;font-size:.9rem;color:#2d3748}.assignment-card .assignment-role .role-badge{font-size:.7rem;background:#c6f6d5;color:#22543d;padding:.125rem .375rem;border-radius:4px;width:fit-content}.assignment-card .assignment-person{display:flex;align-items:center;gap:.5rem}.assignment-card .person-avatar{width:32px;height:32px;border-radius:50%;background:#3182ce;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:600}.assignment-card .person-info{display:flex;flex-direction:column}.assignment-card .person-info strong{font-size:.85rem;color:#2d3748}.assignment-card .person-info span{font-size:.75rem;color:#718096}.assignment-card .persona-icon{width:36px;height:36px;border-radius:50%;background:#ebf4ff;display:flex;align-items:center;justify-content:center;font-size:1rem}.assignment-card .assignment-details{flex:1;min-width:0}.assignment-card .persona-name{font-weight:600;font-size:.9rem;color:#2d3748}.assignment-card .employee-name{font-size:.8rem;color:#718096;display:flex;align-items:center;gap:.25rem}.assignment-card .remove-btn{background:none;border:none;color:#a0aec0;cursor:pointer;padding:.375rem .5rem;border-radius:4px;font-size:1.25rem;line-height:1;transition:all .2s ease;position:absolute;top:.5rem;right:.5rem}.assignment-card .remove-btn:hover{background:#fed7d7;color:#c53030}.missing-baseline-section{background:#fffaf0;border:1px solid #fbd38d;border-radius:8px;padding:1rem}.missing-baseline-section h4{color:#c05621;margin-bottom:.75rem}.missing-roles-list{display:flex;flex-direction:column;gap:.5rem}.missing-role-item,.missing-role-card{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#fffaf0;border:1px solid #fbd38d;border-radius:8px}.missing-role-item:last-child{border-bottom:none}.missing-role-item .role-info,.missing-role-card .role-info{display:flex;align-items:center;gap:.5rem}.missing-role-item .role-info .icon,.missing-role-card .role-info .role-icon{font-size:1rem}.missing-role-item .role-info .role-name,.missing-role-card .role-info strong{font-size:.9rem;color:#744210}.role-type-badge{display:inline-block;font-size:.65rem;font-weight:500;color:#fff;padding:.125rem .375rem;border-radius:4px;margin-left:.5rem;text-transform:uppercase}.missing-role-item .assign-btn,.missing-role-card .assign-btn{padding:.375rem .75rem;font-size:.8rem;background:#ed8936;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease}.missing-role-item .assign-btn:hover,.missing-role-card .assign-btn:hover{background:#dd6b20}.add-assignment-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:#ebf8ff;border:2px dashed #90cdf4;border-radius:8px;color:#3182ce;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.add-assignment-btn:hover{background:#bee3f8;border-color:#63b3ed}.empty-state{text-align:center;padding:2rem 1rem;color:#718096}.empty-state .empty-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}.empty-state p{margin:0 0 1rem;font-size:.9rem}.assignment-modal-overlay,.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .2s ease}.assignment-modal{background:#fff;border-radius:12px;width:420px;max-width:90vw;max-height:85vh;overflow:hidden;box-shadow:0 20px 40px #0003;animation:scaleIn .2s ease}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.modal-header h4{margin:0;font-size:1rem;color:#2d3748}.modal-close-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#718096;padding:.25rem;line-height:1;border-radius:4px;transition:all .2s ease}.modal-close-btn:hover{background:#edf2f7;color:#2d3748}.modal-body{padding:1.25rem;overflow-y:auto;max-height:calc(85vh - 140px)}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.85rem;font-weight:600;color:#4a5568;margin-bottom:.5rem}.form-group select{width:100%;padding:.625rem .75rem;font-size:.9rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#2d3748;cursor:pointer;transition:all .2s ease}.form-group select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.form-group select:disabled{background:#f7fafc;cursor:not-allowed}.form-group .help-text{font-size:.75rem;color:#718096;margin-top:.375rem}.form-group textarea{width:100%;padding:.625rem .75rem;font-size:.9rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#2d3748;resize:vertical;font-family:inherit;transition:all .2s ease}.form-group textarea:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.asset-preview{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:6px}.asset-preview .asset-icon{font-size:1.25rem}.modal-header h3{margin:0;font-size:1rem;font-weight:600;color:#2d3748}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;background:#f8fafc}.modal-footer .btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease}.modal-footer .btn-secondary{background:#fff;border:1px solid #e2e8f0;color:#4a5568}.modal-footer .btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}.modal-footer .btn-primary{background:#3182ce;border:1px solid #3182ce;color:#fff}.modal-footer .btn-primary:hover:not(:disabled){background:#2c5282;border-color:#2c5282}.modal-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed}.loading-state{display:flex;align-items:center;justify-content:center;padding:3rem 1rem;color:#718096}.loading-state .spinner{width:24px;height:24px;border:2px solid #e2e8f0;border-top-color:#3182ce;border-radius:50%;animation:spin .8s linear infinite;margin-right:.75rem}.error-state{text-align:center;padding:2rem 1rem;color:#c53030}.error-state .error-icon{font-size:2rem;margin-bottom:.5rem}.error-state p{margin:0;font-size:.9rem}.btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:.5rem}.btn-primary{background:#3182ce;border:1px solid #3182ce;color:#fff}.btn-primary:hover:not(:disabled){background:#2c5282;border-color:#2c5282}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#fff;border:1px solid #e2e8f0;color:#4a5568}.btn-secondary:hover{background:#f7fafc;border-color:#cbd5e0}.btn-full{width:100%}.legacy-asset-banner{display:flex;gap:.75rem;padding:1rem;background:#fffaf0;border:1px solid #fbd38d;border-radius:8px;margin-bottom:1rem}.legacy-banner-icon{font-size:1.5rem;flex-shrink:0}.legacy-banner-content{flex:1}.legacy-banner-content strong{display:block;font-size:.95rem;color:#c05621;margin-bottom:.25rem}.legacy-banner-content p{margin:0;font-size:.85rem;color:#744210;line-height:1.5}.legacy-asset-actions{margin-top:1.5rem;padding:1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.legacy-asset-actions h4{margin:0 0 .5rem;font-size:.95rem;font-weight:600;color:#2d3748}.legacy-asset-actions .action-description{margin:0 0 1rem;font-size:.85rem;color:#718096;line-height:1.5}.legacy-asset-actions .action-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.btn-danger-outline{background:#fff;border:1px solid #fc8181;color:#c53030}.btn-danger-outline:hover{background:#fff5f5;border-color:#f56565}.btn-danger{background:#e53e3e;border:1px solid #e53e3e;color:#fff}.btn-danger:hover{background:#c53030;border-color:#c53030}.confirm-dialog{background:#fff;border-radius:12px;width:420px;max-width:90vw;box-shadow:0 20px 40px #0003;animation:scaleIn .2s ease}.confirm-dialog--danger .confirm-header{background:#fff5f5;border-bottom-color:#fed7d7}.confirm-dialog--danger .confirm-header h3{color:#c53030}.confirm-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#f8fafc;border-radius:12px 12px 0 0}.confirm-header h3{margin:0;font-size:1rem;font-weight:600;color:#2d3748}.confirm-body{padding:1.25rem}.confirm-body p{margin:0 0 .75rem;font-size:.9rem;color:#4a5568;line-height:1.6}.confirm-body .confirm-note{font-size:.85rem;color:#718096;background:#f7fafc;padding:.75rem;border-radius:6px;margin-bottom:0}.confirm-body .confirm-warning{font-size:.85rem;color:#c05621;background:#fffaf0;padding:.75rem;border-radius:6px;border:1px solid #fbd38d;margin-bottom:0}.confirm-body .error-message{margin-top:.75rem;padding:.75rem;background:#fff5f5;border:1px solid #fed7d7;border-radius:6px;color:#c53030;font-size:.85rem}.confirm-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;border-top:1px solid #e2e8f0;background:#f8fafc;border-radius:0 0 12px 12px}@media (max-width: 640px){.asset-detail-panel{width:100%;max-width:100%}.assignment-modal,.confirm-dialog{width:95vw;margin:0 auto}.legacy-asset-actions .action-buttons{flex-direction:column}.legacy-asset-actions .action-buttons .btn{width:100%}}.org-context-bar{background:#f8fafc;border-bottom:1px solid #e2e8f0;transition:all .2s ease}.org-context-bar.loading{padding:10px 16px;text-align:center}.org-context-bar .loading-text{font-size:12px;color:#64748b}.org-context-bar .context-bar-compact{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;cursor:pointer;transition:background-color .15s}.org-context-bar .context-bar-compact:hover{background:#f1f5f9}.org-context-bar .context-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.org-context-bar .context-label{font-size:12px;font-weight:500;color:#475569}.org-context-bar .cold-start-badge{font-size:11px;font-weight:600;padding:3px 8px;background:#fef3c7;color:#92400e;border-radius:4px}.org-context-bar .risk-indicator{font-size:11px;font-weight:700;padding:3px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.org-context-bar .risk-low{background:#dcfce7;color:#166534}.org-context-bar .risk-moderate{background:#fef3c7;color:#92400e}.org-context-bar .risk-high{background:#fed7aa;color:#9a3412}.org-context-bar .risk-critical{background:#fecaca;color:#991b1b}.org-context-bar .risk-unknown{background:#e5e7eb;color:#4b5563}.org-context-bar .data-counts{font-size:11px;color:#64748b}.org-context-bar .context-actions{display:flex;align-items:center;gap:12px}.org-context-bar .settings-link{display:flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:#3b82f6;background:none;border:none;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background-color .15s}.org-context-bar .settings-link:hover{background:#eff6ff}.org-context-bar .settings-icon{font-size:14px}.org-context-bar .expand-icon{font-size:10px;color:#94a3b8}.org-context-bar .context-bar-expanded{padding:12px 16px;border-top:1px solid #e2e8f0;background:#fff}.org-context-bar .org-factors{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:12px}@media (max-width: 768px){.org-context-bar .org-factors{grid-template-columns:1fr}}.org-context-bar .factor-card{display:flex;align-items:center;gap:10px;padding:10px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.org-context-bar .factor-icon{font-size:20px}.org-context-bar .factor-info{display:flex;flex-direction:column;flex:1}.org-context-bar .factor-label{font-size:11px;color:#64748b}.org-context-bar .factor-value{font-size:16px;font-weight:700;color:#1e293b}.org-context-bar .factor-source{font-size:10px;color:#94a3b8;white-space:nowrap}.org-context-bar .cold-start-message{padding:12px;background:#fef3c7;border-radius:6px;text-align:center}.org-context-bar .cold-start-message p{margin:0 0 10px;font-size:12px;color:#92400e}.org-context-bar .configure-btn{padding:8px 16px;background:#f59e0b;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:background-color .15s}.org-context-bar .configure-btn:hover{background:#d97706}.org-context-bar .combined-factor{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:10px;border-top:1px solid #e2e8f0}.org-context-bar .combined-label{font-size:12px;color:#64748b}.org-context-bar .combined-value{font-size:14px;font-weight:700;padding:2px 8px;border-radius:4px}.rsv-modal-overlay{position:fixed;inset:0;background:#000000bf;z-index:1200;display:flex;justify-content:center;align-items:center;padding:2rem;animation:rsvFadeIn .2s ease forwards;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@keyframes rsvFadeIn{0%{opacity:0}to{opacity:1}}@keyframes rsvSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.rsv-modal-container{background:#fff;border-radius:10px;box-shadow:0 24px 80px #00000059,0 0 0 1px #0000000f;animation:rsvSlideUp .25s ease forwards;overflow:hidden;max-width:960px;width:95%;max-height:80vh;display:flex;flex-direction:column}.rsv-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px 16px;border-bottom:1px solid #e4e7ec;background:#f9fafb;flex-shrink:0}.rsv-header-text{display:flex;flex-direction:column;gap:4px;min-width:0}.rsv-title{margin:0;font-size:17px;font-weight:700;color:#111827;letter-spacing:-.2px;line-height:1.3}.rsv-subtitle{display:flex;align-items:center;gap:6px;font-size:12px;color:#6b7280;font-family:Courier New,Consolas,Monaco,monospace;flex-wrap:wrap}.rsv-subtitle-sep{color:#d1d5db;font-weight:700}.rsv-close-btn{background:none;border:none;font-size:26px;color:#9ca3af;cursor:pointer;padding:0;line-height:1;transition:color .15s;flex-shrink:0;margin-left:16px}.rsv-close-btn:hover{color:#374151}.rsv-summary-bar{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;background:#f3f4f6;border-bottom:1px solid #e5e7eb;flex-shrink:0;gap:12px;flex-wrap:wrap}.rsv-summary-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.rsv-summary-total{font-size:13px;font-weight:600;color:#374151;margin-right:4px}.rsv-summary-right{display:flex;align-items:center;gap:4px}.rsv-text-btn{background:none;border:none;font-size:12px;font-weight:600;color:#2563eb;cursor:pointer;padding:4px 10px;border-radius:4px;transition:background-color .15s,color .15s}.rsv-text-btn:hover{background:#eff6ff;color:#1d4ed8}.rsv-confidence-badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:10px;font-size:11px;font-weight:700;letter-spacing:.3px;text-transform:uppercase;white-space:nowrap}.rsv-badge-high{background-color:#dcfce7;color:#166534;border:1px solid #bbf7d0}.rsv-badge-medium{background-color:#fef9c3;color:#854d0e;border:1px solid #fde68a}.rsv-badge-low{background-color:#fee2e2;color:#991b1b;border:1px solid #fecaca}.rsv-modal-body{flex:1;overflow-y:auto;padding:16px 24px;display:flex;flex-direction:column;gap:10px}.rsv-modal-body::-webkit-scrollbar{width:6px}.rsv-modal-body::-webkit-scrollbar-track{background:#f3f4f6}.rsv-modal-body::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.rsv-modal-body::-webkit-scrollbar-thumb:hover{background:#9ca3af}.rsv-section-card{border:1px solid #e5e7eb;border-radius:8px;background:#fff;transition:border-color .15s,box-shadow .15s}.rsv-section-card:hover{border-color:#d1d5db;box-shadow:0 1px 4px #0000000a}.rsv-section-card.rsv-section-disabled{opacity:.55}.rsv-section-card.rsv-section-disabled:hover{opacity:.7}.rsv-section-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;gap:12px;transition:background-color .1s;border-radius:8px}.rsv-section-header:hover{background-color:#f9fafb}.rsv-section-header-left{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.rsv-expand-icon{font-size:12px;color:#9ca3af;width:14px;flex-shrink:0;text-align:center}.rsv-section-title{font-size:14px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rsv-toggle{flex-shrink:0;cursor:pointer;outline:none}.rsv-toggle:focus-visible .rsv-toggle-track{box-shadow:0 0 0 3px #2563eb40}.rsv-toggle-track{width:36px;height:20px;border-radius:10px;position:relative;transition:background-color .2s}.rsv-toggle-on .rsv-toggle-track{background-color:#22c55e}.rsv-toggle-off .rsv-toggle-track{background-color:#d1d5db}.rsv-toggle-thumb{position:absolute;top:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:left .2s cubic-bezier(.4,0,.2,1)}.rsv-toggle-on .rsv-toggle-thumb{left:18px}.rsv-toggle-off .rsv-toggle-thumb{left:2px}.rsv-section-body{overflow:hidden;transition:max-height .25s ease,opacity .2s ease}.rsv-section-body-open{max-height:2000px;opacity:1}.rsv-section-body-closed{max-height:0;opacity:0}.rsv-section-body-inner{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px;border-top:1px solid #f3f4f6}.rsv-source-block{background:#f8fafc;border-left:3px solid #60a5fa;border-radius:0 6px 6px 0;padding:12px 14px}.rsv-source-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:6px}.rsv-source-text{margin:0 0 10px;font-size:13px;line-height:1.55;color:#374151}.rsv-source-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rsv-meta-chip{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:600;background:#e5e7eb;color:#4b5563;letter-spacing:.2px}.rsv-severity-critical{background:#fee2e2;color:#991b1b}.rsv-severity-high{background:#ffedd5;color:#9a3412}.rsv-severity-medium{background:#fef9c3;color:#854d0e}.rsv-severity-low{background:#dcfce7;color:#166534}.rsv-rationale{font-size:13px;line-height:1.5;color:#6b7280;font-style:italic;padding:0 2px}.rsv-rationale-label{font-weight:600;font-style:normal;color:#4b5563}.rsv-code-wrapper{border-radius:6px;overflow:hidden;border:1px solid #e5e7eb}.rsv-code-block{margin:0;padding:14px 16px;background:#1e2030;color:#d4d8e8;font-family:Courier New,Consolas,Monaco,monospace;font-size:12.5px;line-height:1.6;overflow-x:auto;tab-size:4;white-space:pre;border:none}.rsv-code-block code{font-family:inherit;font-size:inherit;background:none;padding:0;border-radius:0;color:inherit}.rsv-modal-footer{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;flex-shrink:0;gap:16px}.rsv-footer-left{flex-shrink:0;display:flex;align-items:center;gap:12px}.rsv-regenerate-btn{font-size:13px;padding:4px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#374151;cursor:pointer;transition:all .15s ease}.rsv-regenerate-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.rsv-regenerate-btn:disabled{opacity:.6;cursor:not-allowed}.rsv-enabled-count{font-size:13px;color:#6b7280;font-weight:500}.rsv-footer-right{display:flex;align-items:center;gap:10px}.rsv-modal-container .btn{padding:9px 20px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s,opacity .15s,box-shadow .15s;white-space:nowrap}.rsv-modal-container .btn:disabled{opacity:.5;cursor:not-allowed}.rsv-modal-container .btn-secondary{background:#fff;color:#4b5563;border:1px solid #d1d5db}.rsv-modal-container .btn-secondary:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.rsv-modal-container .btn-primary{background:#2563eb;color:#fff;border:none}.rsv-modal-container .btn-primary:hover:not(:disabled){background:#1d4ed8;box-shadow:0 1px 4px #2563eb4d}@media (max-width: 640px){.rsv-modal-overlay{padding:1rem}.rsv-modal-container{max-height:90vh;width:100%}.rsv-modal-header{padding:16px 16px 12px}.rsv-summary-bar{padding:8px 16px;flex-direction:column;align-items:flex-start}.rsv-modal-body{padding:12px 16px}.rsv-section-header{padding:10px 12px}.rsv-section-body-inner{padding:0 12px 12px}.rsv-modal-footer{padding:12px 16px;flex-direction:column;gap:10px}.rsv-footer-right{width:100%;justify-content:flex-end}.rsv-section-title{font-size:13px}.rsv-subtitle{font-size:11px}}.journey-report-button{position:relative;display:inline-block}.journey-report-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#1e40af;color:#e2e8f0;border:1px solid #2563eb;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.journey-report-trigger:hover:not(:disabled){background:#2563eb;border-color:#3b82f6}.journey-report-trigger:disabled{opacity:.5;cursor:not-allowed}.journey-report-chevron{transition:transform .15s ease}.journey-report-button:has(.journey-report-dropdown) .journey-report-chevron{transform:rotate(180deg)}.journey-report-spinner{display:inline-block;width:14px;height:14px;border:2px solid #60a5fa;border-top-color:transparent;border-radius:50%;animation:journey-report-spin .6s linear infinite}@keyframes journey-report-spin{to{transform:rotate(360deg)}}.journey-report-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:300px;max-height:420px;overflow-y:auto;background:#1e293b;border:1px solid #334155;border-radius:.5rem;box-shadow:0 10px 25px #0000004d}.journey-report-station-group{padding:.625rem 1rem;border-bottom:1px solid #334155}.journey-report-station-group:last-child{border-bottom:none}.journey-report-station-label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.375rem}.journey-report-format-row{display:flex;gap:.5rem}.journey-report-format-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:transparent;color:#e2e8f0;border:1px solid #475569;border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease}.journey-report-format-btn:hover:not(:disabled){background:#334155;border-color:#60a5fa;color:#93c5fd}.journey-report-format-btn:disabled{opacity:.4;cursor:not-allowed}.journey-report-format-btn svg{flex-shrink:0;color:#94a3b8}.journey-report-loading,.journey-report-empty{padding:1rem;text-align:center;font-size:.8125rem;color:#94a3b8;display:flex;align-items:center;justify-content:center;gap:.5rem}.journey-report-error{position:absolute;top:calc(100% + 4px);right:0;z-index:50;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#7f1d1d;border:1px solid #991b1b;border-radius:.375rem;font-size:.75rem;color:#fca5a5;white-space:nowrap;box-shadow:0 4px 12px #0000004d}.journey-report-error-dismiss{background:none;border:none;color:#fca5a5;cursor:pointer;font-size:1rem;line-height:1;padding:0 .25rem}.journey-report-error-dismiss:hover{color:#fef2f2}.cold-start-panel{background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px;padding:2rem;color:#e2e8f0;animation:fadeIn .5s ease-out}.cold-start-header{text-align:center;margin-bottom:2rem;animation:fadeInDown .5s ease-out}.welcome-icon{font-size:3rem;margin-bottom:1rem;animation:pulseScale 2s ease-in-out infinite}.welcome-title{font-size:1.75rem;font-weight:700;color:#f1f5f9;margin:0 0 .5rem}.welcome-subtitle{font-size:1rem;color:#94a3b8;max-width:600px;margin:0 auto}.cold-start-content{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem}@media (max-width: 1024px){.cold-start-content{grid-template-columns:1fr}}.benchmarks-section{animation:fadeInLeft .5s ease-out .1s backwards}.section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.section-header h3{font-size:1.25rem;font-weight:600;color:#f1f5f9;margin:0}.section-badge{font-size:.7rem;padding:.2rem .5rem;background:#3b82f626;color:#60a5fa;border-radius:4px;font-weight:500}.section-description{font-size:.9rem;color:#94a3b8;margin:0 0 1.25rem}.benchmark-cards{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.benchmark-card{flex:1 1 calc(50% - .75rem);min-width:140px;background:#1e293b99;border:1px solid #334155;border-radius:10px;padding:1rem;cursor:pointer;transition:all .25s ease}.benchmark-card:hover{border-color:#475569;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.benchmark-card--selected{border-color:#3b82f6;background:#3b82f61a;box-shadow:0 0 0 2px #3b82f633}.benchmark-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.benchmark-icon{font-size:1.25rem}.benchmark-name{font-weight:600;color:#f1f5f9;flex:1}.selected-indicator{color:#3b82f6;font-weight:700}.benchmark-stats{display:flex;flex-wrap:wrap;gap:.5rem}.stat-item{display:flex;flex-direction:column;gap:.15rem}.stat-label{font-size:.7rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1rem;font-weight:600}.stat-item--small .stat-value{font-size:.85rem;color:#94a3b8}.percentile-bar{margin-top:1rem;padding-top:.75rem;border-top:1px solid #334155}.percentile-track{position:relative;height:24px;background:#1e293b;border-radius:6px;overflow:hidden}.percentile-zone{position:absolute;top:0;height:100%;transition:opacity .2s ease}.zone-p10-25{background:#ef44444d}.zone-p25-50{background:#f59e0b4d}.zone-p50-75{background:#3b82f64d}.zone-p75-90{background:#22c55e4d}.percentile-marker{position:absolute;top:0;width:3px;height:100%;border-radius:2px;transform:translate(-50%)}.marker-median{background:#f59e0b;box-shadow:0 0 6px #f59e0b99}.marker-top{background:#22c55e;box-shadow:0 0 6px #22c55e99}.percentile-labels{display:flex;justify-content:space-between;margin-top:.35rem;font-size:.7rem;color:#64748b}.selected-details{background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:10px;padding:1.25rem;animation:fadeIn .3s ease-out}.selected-details h4{font-size:1rem;font-weight:600;color:#f1f5f9;margin:0 0 1rem}.details-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}@media (max-width: 768px){.details-grid{grid-template-columns:repeat(2,1fr)}}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;color:#64748b}.detail-value{font-size:1.1rem;font-weight:600;color:#e2e8f0}.benchmark-insight{font-size:.9rem;color:#94a3b8;margin:0;line-height:1.5}.getting-started-section{animation:fadeInRight .5s ease-out .2s backwards}.getting-started{background:#1e293b99;border:1px solid #334155;border-radius:12px;padding:1.5rem}.getting-started-title{font-size:1.1rem;font-weight:600;color:#f1f5f9;margin:0 0 1.25rem}.steps-list{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.step-item{display:flex;gap:.75rem;align-items:flex-start}.step-number{font-size:1.5rem;line-height:1;flex-shrink:0}.step-content{display:flex;flex-direction:column;gap:.2rem}.step-title{font-weight:600;color:#f1f5f9;font-size:.95rem}.step-description{font-size:.85rem;color:#94a3b8}.btn-start-journey{width:100%;padding:.9rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden}.btn-start-journey:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f666}.btn-start-journey:active{transform:translateY(0)}.btn-learn-more{width:100%;padding:.75rem 1rem;background:transparent;border:1px solid #334155;border-radius:8px;color:#94a3b8;font-size:.9rem;cursor:pointer;margin-top:1rem;transition:all .2s ease}.btn-learn-more:hover{border-color:#475569;color:#e2e8f0;background:#ffffff08}@media (prefers-reduced-motion: reduce){.cold-start-panel,.cold-start-header,.benchmarks-section,.getting-started-section,.selected-details,.welcome-icon{animation:none}}.home-dashboard{--header-bg: #0d1b2a;--foundation-bg: #253858;--foundation-text: #ffffff;--journey-bg: #f4f5f7;--primary: #0052cc;--primary-hover: #0747a6;--text-dark: #172b4d;--text-muted: #5e6c84;--border-light: #dfe1e6;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444}.skip-link{position:absolute;top:-100%;left:1rem;z-index:1000;padding:.75rem 1.25rem;background:var(--primary);color:#fff;border-radius:0 0 6px 6px;font-size:.875rem;font-weight:500;text-decoration:none;transition:top .2s}.skip-link:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.home-dashboard.two-plane{min-height:100vh;background:var(--journey-bg);display:flex;flex-direction:column}.home-dashboard main{display:flex;flex-direction:column;flex:1}.home-header{background:var(--header-bg);padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center}.home-header .header-content h1{margin:0;font-size:1.5rem;font-weight:700;color:#fff}.home-header .tagline{margin:.25rem 0 0;font-size:.875rem;color:#94a3b8}.home-header .header-actions{display:flex;gap:.75rem}.home-header .btn-icon-only{width:40px;height:40px;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.25rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.home-header .btn-icon-only:hover{background:#fff3}.plane-org{background:var(--foundation-bg);color:var(--foundation-text);padding:1.5rem 2rem 2rem}.plane-org .plane-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.15)}.plane-org .plane-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:#ffffffe6}.plane-org .plane-frequency{font-size:.75rem;color:#ffffffc7;font-weight:400}.plane-org .org-dashboard{display:flex;align-items:flex-start;gap:1.5rem;flex-wrap:wrap}.plane-org .org-dashboard.loading,.plane-org .org-dashboard.error{justify-content:center;align-items:center;min-height:120px;text-align:center}.plane-org .org-loading-spinner{width:32px;height:32px;border:3px solid rgba(255,255,255,.2);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:.75rem}.plane-org .org-error-icon{font-size:2rem;margin-bottom:.5rem;display:block}.plane-org .org-modules{display:flex;gap:1rem;flex:1;min-width:0}.plane-org .org-actions{display:flex;align-items:center}.plane-org .org-cold-start-banner{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem;padding:.75rem 1rem;background:#fbbf2426;border:1px solid rgba(251,191,36,.3);border-radius:6px}.plane-org .org-cold-start-banner .banner-icon{font-size:1rem;color:#fbbf24}.plane-org .org-cold-start-banner .banner-text{font-size:.8125rem;color:#ffffffe6}.plane-org .org-cold-start-banner .banner-text strong{color:#fbbf24}.compact-gauge{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#ffffff14;border-radius:8px;border:1px solid rgba(255,255,255,.1)}.compact-gauge.is-default .compact-gauge-progress{stroke:#94a3b8!important}.compact-gauge-circle{position:relative;width:64px;height:64px;flex-shrink:0}.compact-gauge-svg{width:100%;height:100%}.compact-gauge-progress{transition:stroke-dasharray .5s ease}.compact-gauge-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.compact-gauge-value .value{font-size:1rem;font-weight:700;color:#fff}.compact-gauge-info{display:flex;flex-direction:column;gap:.25rem}.compact-gauge-label{font-size:.75rem;color:#ffffffd9}.compact-gauge-risk{font-size:.75rem;font-weight:700;padding:.125rem .375rem;border-radius:3px;display:inline-block;width:fit-content}.compact-gauge-risk.risk-low{background:#22c55e33;color:#86efac}.compact-gauge-risk.risk-moderate{background:#f59e0b33;color:#fcd34d}.compact-gauge-risk.risk-high{background:#f9731633;color:#fdba74}.compact-gauge-risk.risk-critical{background:#ef444433;color:#fca5a5}.compact-gauge-risk.risk-default{background:#94a3b833;color:#cbd5e1}.compact-gauge-subtitle{font-size:.75rem;color:#ffffffc7}.readiness-module{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s;text-align:left;color:inherit;font-family:inherit;min-width:160px}.readiness-module:hover{background:#ffffff26;border-color:#fff3}.readiness-module .module-icon{font-size:1.25rem;line-height:1}.readiness-module .module-content{flex:1;min-width:0}.readiness-module .module-title{font-size:.875rem;font-weight:600;color:#fff;margin-bottom:.125rem}.readiness-module .module-subtitle{font-size:.75rem;color:#ffffffd9;margin-bottom:.375rem}.readiness-module .module-metric{font-size:.75rem;color:#ffffffc7}.readiness-module .metric-value{font-weight:600;color:#ffffffe6;margin-left:.25rem}.readiness-module .module-status{font-size:.625rem;font-weight:700;padding:.125rem .375rem;border-radius:3px;white-space:nowrap}.readiness-module .status-calibrated{background:#22c55e33;color:#86efac}.readiness-module .status-active{background:#3b82f633;color:#93c5fd}.readiness-module .status-not-configured{background:#94a3b833;color:#cbd5e1}.btn-org-configure{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-org-configure:hover{background:#fff3;border-color:#ffffff4d}.btn-org-configure .btn-arrow{font-size:1rem}.plane-journey{flex:1;background:var(--journey-bg);padding:2rem}.plane-journey .plane-header{display:flex;align-items:baseline;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-light)}.plane-journey .plane-label{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--text-dark)}.plane-journey .plane-frequency{font-size:.75rem;color:var(--text-muted);font-weight:400}.station-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.station-preview-card{background:#fff;border-radius:8px;padding:1rem;border-top:4px solid var(--station-accent, var(--primary));box-shadow:0 1px 3px #00000014}.station-preview-card .station-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.station-preview-card .station-number{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;margin:0;display:inline;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.station-preview-card .station-weight{font-size:.625rem;font-weight:600;color:var(--text-muted);background:#f1f5f9;padding:.125rem .375rem;border-radius:3px}.station-preview-card .station-title{margin:0 0 .625rem;font-size:1rem;font-weight:600;color:var(--text-dark)}.station-preview-card .station-metrics{list-style:none;margin:0;padding:0}.station-preview-card .station-metrics li{font-size:.75rem;color:var(--text-muted);position:relative;padding:.125rem 0 .125rem .75rem}.station-preview-card .station-metrics li:before{content:"•";position:absolute;left:0;color:var(--station-accent, var(--primary))}.station-preview-card .station-metrics .more-metrics{color:#94a3b8;font-style:italic}.station-preview-card .station-metrics .more-metrics:before{content:""}.station-preview-card .station-pillar{margin-top:.75rem;padding-top:.5rem;border-top:1px solid #f1f5f9;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--station-accent, var(--primary))}.workspace-bottom{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}.upload-zone{background:#fff;border:2px dashed var(--border-light);border-radius:12px;padding:2.5rem 2rem;text-align:center;transition:border-color .2s,background .2s;position:relative}.upload-zone:hover,.upload-zone.drag-active{border-color:var(--primary);background:#fafbfc}.upload-zone.drag-active{border-style:solid}.upload-zone .upload-zone-content{position:relative;z-index:1}.upload-zone .upload-icon{color:#94a3b8;margin-bottom:1rem}.upload-zone .upload-icon svg{width:48px;height:48px}.upload-zone.drag-active .upload-icon{color:var(--primary)}.upload-zone .upload-title{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:var(--text-dark)}.upload-zone .upload-description{margin:0 0 1.25rem;font-size:.875rem;color:var(--text-muted)}.upload-zone .upload-btn{margin-bottom:1rem}.upload-zone .upload-formats{margin:0;font-size:.75rem;color:#94a3b8}.upload-zone .upload-hint{margin:1.25rem 0 0;padding-top:1rem;border-top:1px solid #f1f5f9;font-size:.8125rem;color:var(--text-muted)}.upload-zone .link-button{background:none;border:none;color:var(--primary);font-size:inherit;font-family:inherit;cursor:pointer;padding:0;text-decoration:underline}.upload-zone .link-button:hover{color:var(--primary-hover)}.upload-zone .upload-input{display:none}.upload-zone .upload-zone-footer{margin-top:1rem;padding-top:.75rem;border-top:1px solid #f1f5f9}.upload-zone .upload-databricks-link{font-size:.8125rem}.upload-zone--form{border-style:solid;border-color:var(--primary);text-align:left;padding:1.5rem}.upload-zone--form:hover{border-color:var(--primary);background:#fff}.upload-zone-form-content{display:flex;flex-direction:column;gap:1rem}.inline-file-chips{display:flex;flex-direction:column;gap:.5rem}.file-chip{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.file-chip-icon{font-size:1rem;flex-shrink:0}.file-chip-name{font-size:.875rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.file-chip-size{font-size:.75rem;color:var(--text-muted);flex-shrink:0}.file-chip-remove{background:none;border:none;color:#94a3b8;font-size:1.25rem;cursor:pointer;padding:0 .25rem;line-height:1;flex-shrink:0;transition:color .15s}.file-chip-remove:hover{color:var(--danger)}.inline-form-group{display:flex;flex-direction:column;gap:.25rem}.inline-form-label{font-size:.75rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.inline-form-input{padding:.625rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.9375rem;color:var(--text-dark);transition:border-color .15s;font-family:inherit;width:100%;box-sizing:border-box}.inline-form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1a}.inline-form-textarea{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:var(--text-dark);font-family:inherit;resize:vertical;width:100%;box-sizing:border-box;transition:border-color .15s}.inline-form-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #0052cc1a}.inline-advanced-toggle{display:flex;align-items:center;gap:.5rem;background:none;border:none;color:var(--text-muted);font-size:.8125rem;font-family:inherit;cursor:pointer;padding:0;transition:color .15s}.inline-advanced-toggle:hover{color:var(--text-dark)}.inline-chevron{font-size:.5rem;transition:transform .2s}.inline-chevron--open{transform:rotate(90deg)}.inline-advanced-content{padding-top:.5rem}.inline-create-btn{width:100%}.inline-form-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;padding-top:.5rem;border-top:1px solid #f1f5f9}.inline-form-footer .link-button{font-size:.8125rem}.inline-footer-dot{color:#cbd5e1}.upload-zone--creating{border-style:solid;border-color:var(--primary);padding:1.5rem;text-align:left}.upload-zone--creating:hover{background:#fff}.inline-progress-header{margin-bottom:.75rem}.inline-progress-title{font-size:.9375rem;font-weight:600;color:var(--text-dark)}.inline-progress-bar{width:100%;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.inline-progress-bar-fill{height:100%;background:var(--primary);border-radius:3px;transition:width .3s ease}.inline-progress-pct{font-size:.75rem;color:var(--text-muted);text-align:right;margin-top:.25rem;margin-bottom:.75rem}.inline-progress-steps{display:flex;flex-direction:column;gap:.375rem}.inline-step{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.inline-step-icon{width:16px;text-align:center;flex-shrink:0}.inline-step--done,.inline-step--done .inline-step-icon{color:var(--success)}.inline-step--active{color:var(--primary);font-weight:500}.inline-step--active .inline-step-icon{color:var(--primary);animation:pulse 1.5s infinite}.inline-step--pending{color:#cbd5e1}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.upload-zone--error{border-style:solid;border-color:var(--danger);padding:1.5rem;text-align:center}.upload-zone--error:hover{border-color:var(--danger);background:#fff5f5}.inline-error-content{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:1rem}.inline-error-icon{font-size:1.25rem;color:var(--danger)}.inline-error-message{font-size:.875rem;color:var(--text-dark)}.inline-error-actions{display:flex;align-items:center;justify-content:center;gap:.75rem}.btn-secondary{background:#f1f5f9;color:var(--text-dark);border:1px solid #e2e8f0}.btn-secondary:hover{background:#e2e8f0}.recent-journeys-panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #00000014}.recent-journeys-panel .panel-loading,.recent-journeys-panel .panel-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;color:var(--text-muted)}.recent-journeys-panel .spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:.75rem}.recent-journeys-panel .error-icon{font-size:2rem;color:var(--danger);margin-bottom:.5rem}.recent-journeys-panel .journey-counts{display:flex;justify-content:center;align-items:center;gap:1.25rem;padding-bottom:1rem;margin-bottom:1rem;border-bottom:1px solid #f1f5f9}.recent-journeys-panel .count-item{display:flex;flex-direction:column;align-items:center}.recent-journeys-panel .count-value{font-size:1.75rem;font-weight:700;color:var(--text-dark);line-height:1}.recent-journeys-panel .count-label{font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.recent-journeys-panel .count-separator{color:#e2e8f0;font-size:1.25rem;font-weight:300}.recent-journeys-panel .panel-title{margin:0 0 .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.recent-journeys-panel .journey-list{list-style:none;margin:0;padding:0}.recent-journeys-panel .journey-list-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .625rem;margin:0 -.625rem;border-radius:6px;cursor:pointer;transition:background .15s}.recent-journeys-panel .journey-list-item:hover{background:#f8fafc}.recent-journeys-panel .journey-info{display:flex;align-items:center;gap:.5rem;min-width:0}.recent-journeys-panel .status-indicator{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.5rem;flex-shrink:0}.recent-journeys-panel .status-gray{background:#e2e8f0;color:#64748b}.recent-journeys-panel .status-blue{background:#dbeafe;color:#1d4ed8}.recent-journeys-panel .status-green{background:#dcfce7;color:#166534}.recent-journeys-panel .status-red{background:#fecaca;color:#991b1b}.recent-journeys-panel .journey-name{font-size:.875rem;font-weight:500;color:var(--text-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-journeys-panel .journey-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.recent-journeys-panel .health-score{font-size:.6875rem;font-weight:600;padding:.125rem .375rem;border-radius:3px}.recent-journeys-panel .health-good{background:#dcfce7;color:#166534}.recent-journeys-panel .health-fair{background:#fef3c7;color:#92400e}.recent-journeys-panel .health-poor{background:#fecaca;color:#991b1b}.recent-journeys-panel .health-unknown{background:#f1f5f9;color:#94a3b8}.recent-journeys-panel .updated-at{font-size:.6875rem;color:#94a3b8}.recent-journeys-panel .empty-journeys{text-align:center;padding:1.5rem 1rem}.recent-journeys-panel .empty-icon{font-size:2.5rem;display:block;margin-bottom:.75rem}.recent-journeys-panel .empty-journeys p{margin:0;font-size:.875rem;color:var(--text-dark)}.recent-journeys-panel .empty-hint{color:var(--text-muted)!important;font-size:.8125rem!important;margin-top:.25rem!important}.recent-journeys-panel .view-all-btn{width:100%;margin-top:1rem;padding-top:1rem;border-top:1px solid #f1f5f9}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;font-family:inherit}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-lg{padding:.875rem 1.75rem;font-size:1rem}.btn-icon{margin-right:.5rem;font-size:1.25rem;font-weight:300}.btn-link{background:transparent;color:var(--primary);padding:.5rem}.btn-link:hover{color:var(--primary-hover);text-decoration:underline}.btn-arrow{margin-left:.5rem}.readiness-module:focus-visible,.journey-list-item:focus-visible,.btn:focus-visible,.btn-org-configure:focus-visible,.btn-icon-only:focus-visible,.link-button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.home-header .btn-icon-only:focus-visible{outline-color:#fff}.plane-label{margin:0}@media (max-width: 1200px){.station-grid{grid-template-columns:repeat(2,1fr)}.workspace-bottom{grid-template-columns:1fr}.plane-org .org-modules{flex-wrap:wrap}}@media (max-width: 768px){.home-header{padding:1rem}.plane-org{padding:1.25rem 1rem}.plane-org .org-dashboard{flex-direction:column;align-items:stretch}.plane-org .org-modules{flex-direction:column}.readiness-module,.plane-org .org-actions{width:100%}.btn-org-configure{width:100%;justify-content:center}.plane-journey{padding:1.5rem 1rem}.station-grid{grid-template-columns:1fr}.upload-zone{padding:1.5rem 1rem}.upload-zone--form,.upload-zone--creating,.upload-zone--error{padding:1rem}.inline-form-footer{flex-direction:column;gap:.25rem}.inline-footer-dot{display:none}.recent-journeys-panel .journey-list-item{flex-direction:column;align-items:flex-start;gap:.375rem}.recent-journeys-panel .journey-meta{width:100%;justify-content:space-between}}.home-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media (max-width: 900px){.home-content{grid-template-columns:1fr}}.alcoa-findings-panel{background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;overflow:hidden}.findings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #f1f5f9;background:linear-gradient(to right,#f8fafc,#fff)}.findings-title{margin:0;font-size:16px;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.findings-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;background:#e2e8f0;color:#475569;border-radius:12px;font-size:12px;font-weight:600}.findings-actions{display:flex;align-items:center;gap:12px}.group-by-toggle{display:flex;background:#f1f5f9;border-radius:6px;padding:2px}.group-by-toggle button{padding:6px 12px;border:none;background:transparent;border-radius:4px;font-size:12px;font-weight:500;color:#64748b;cursor:pointer;transition:all .15s ease}.group-by-toggle button.active{background:#fff;color:#1e293b;box-shadow:0 1px 2px #0000001a}.expand-collapse-btn{padding:6px 12px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:12px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.expand-collapse-btn:hover{background:#f8fafc;border-color:#cbd5e1}.alcoa-filter-bar{padding:12px 20px;background:#f8fafc;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:12px}.filter-group{display:flex;align-items:center;gap:12px}.filter-label{font-size:12px;font-weight:600;color:#64748b;min-width:70px}.filter-buttons{display:flex;flex-wrap:wrap;gap:6px}.filter-btn{padding:4px 10px;border:1px solid #e2e8f0;border-radius:16px;font-size:11px;font-weight:500;background:#fff;color:#64748b;cursor:pointer;transition:all .15s ease}.filter-btn:disabled{opacity:.5;cursor:not-allowed}.filter-btn.active{background:var(--severity-bg, #f1f5f9);color:var(--severity-color, #475569);border-color:var(--severity-color, #cbd5e1)}.filter-btn:not(:disabled):hover{background:var(--severity-bg, #f1f5f9);border-color:var(--severity-color, #cbd5e1)}.principle-filters{flex-wrap:wrap}.principle-btn{font-size:10px;padding:3px 8px}.findings-list{flex:1;overflow-y:auto;padding:16px 20px;display:flex;flex-direction:column;gap:12px}.findings-group{margin-bottom:8px}.group-header{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:600;color:#475569;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.group-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#e2e8f0;color:#64748b;border-radius:10px;font-size:11px}.alcoa-finding-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;border-left:4px solid var(--severity-color);overflow:hidden;transition:box-shadow .2s ease}.alcoa-finding-card:hover{box-shadow:0 2px 8px #00000014}.finding-header{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.finding-severity-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;background:var(--severity-bg);color:var(--severity-color);border-radius:4px;font-size:11px;font-weight:600;flex-shrink:0}.severity-icon{font-weight:700}.finding-main{flex:1;min-width:0}.finding-code-row{display:flex;align-items:center;gap:8px;margin-bottom:4px}.finding-code{font-family:SF Mono,Consolas,monospace;font-size:12px;font-weight:600;color:#475569}.finding-principle{font-size:11px;color:#94a3b8}.finding-title{margin:0;font-size:14px;font-weight:500;color:#1e293b;line-height:1.4}.finding-expand-btn{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:none;background:#f1f5f9;border-radius:4px;font-size:16px;font-weight:600;color:#64748b;cursor:pointer;flex-shrink:0;transition:all .15s ease}.finding-expand-btn:hover{background:#e2e8f0}.finding-details{padding:0 16px 16px;border-top:1px solid #f1f5f9;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.finding-description{margin:12px 0;font-size:13px;color:#475569;line-height:1.6}.finding-affected{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:10px 12px;background:#f8fafc;border-radius:6px;font-size:12px;color:#64748b}.affected-item strong{color:#475569}.finding-remediation{margin-bottom:16px}.finding-remediation h5{margin:0 0 8px;font-size:12px;font-weight:600;color:#1e293b;text-transform:uppercase;letter-spacing:.5px}.finding-remediation p{margin:0 0 12px;font-size:13px;color:#475569;line-height:1.6}.remediation-meta{display:flex;align-items:center;gap:12px}.effort-badge{font-size:11px;font-weight:600}.remediation-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.remediation-action-btn:hover{background:#2563eb;transform:translateY(-1px)}.action-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:#fff3;border-radius:4px;font-size:10px;font-weight:700}.finding-citation{padding:12px;background:#fffbeb;border-radius:6px;border-left:3px solid #f59e0b}.finding-citation h5{margin:0 0 6px;font-size:11px;font-weight:600;color:#92400e;text-transform:uppercase;letter-spacing:.5px}.citation-code{font-family:SF Mono,Consolas,monospace;font-size:12px;font-weight:600;color:#b45309}.citation-text{margin:8px 0 0;font-size:12px;font-style:italic;color:#78350f;line-height:1.5}.findings-footer{padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9}.severity-summary{display:flex;flex-wrap:wrap;gap:12px}.summary-item{font-size:12px;font-weight:500}.summary-item.critical{color:#dc2626}.summary-item.major{color:#ea580c}.summary-item.minor{color:#ca8a04}.summary-item.observation{color:#0284c7}.findings-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;gap:16px;color:#64748b;font-size:14px}.loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.findings-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;gap:16px;text-align:center}.findings-error p{margin:0;color:#ef4444;font-size:14px}.findings-error button{padding:8px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:500;color:#475569;cursor:pointer}.findings-error button:hover{background:#f8fafc}.findings-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 20px;gap:8px;text-align:center}.empty-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#dcfce7;color:#22c55e;border-radius:50%;font-size:24px;font-weight:700}.findings-empty p{margin:8px 0 0;font-size:16px;font-weight:500;color:#1e293b}.empty-subtext{font-size:13px;color:#64748b}.alcoa-findings-panel.compact .findings-header{padding:12px 16px}.alcoa-findings-panel.compact .findings-title{font-size:14px}.alcoa-findings-panel.compact .findings-list{padding:12px 16px;gap:8px}.alcoa-findings-panel.compact .finding-header{padding:10px 12px}.alcoa-findings-panel.compact .finding-details{padding:0 12px 12px}@media (max-width: 640px){.findings-header{flex-direction:column;gap:12px;align-items:flex-start}.findings-actions{width:100%;justify-content:space-between}.alcoa-filter-bar{padding:10px 16px}.filter-group{flex-direction:column;align-items:flex-start;gap:8px}.finding-header{flex-wrap:wrap}.finding-severity-badge{order:-1}.finding-main{flex-basis:100%;order:1}.finding-expand-btn{position:absolute;right:12px;top:12px}.alcoa-finding-card{position:relative}.remediation-meta{flex-direction:column;align-items:flex-start;gap:8px}.remediation-action-btn{width:100%;justify-content:center}}@media print{.alcoa-findings-panel{box-shadow:none;border:1px solid #e2e8f0;break-inside:avoid}.findings-actions,.alcoa-filter-bar,.finding-expand-btn,.remediation-action-btn{display:none}.finding-details{display:block!important}.alcoa-finding-card{break-inside:avoid;-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bv-color-primary-teal: #0094AB;--bv-color-primary-navy: #004772;--bv-color-rwd-orange: #FF6B35;--bv-color-success: #27ae60;--bv-color-warning: #FFC107;--bv-color-error: #DC3545;--bv-color-background: #0A0E1A;--bv-color-panel: #1C2A54;--bv-color-card: #243558;--bv-color-hover: rgba(255, 255, 255, .05);--bv-color-text-primary: #FFFFFF;--bv-color-text-muted: rgba(255, 255, 255, .7);--bv-color-border: rgba(28, 42, 84, .5);--bv-color-border-hover: rgba(0, 148, 171, .5);--bv-space-1: .25rem;--bv-space-2: .5rem;--bv-space-3: .75rem;--bv-space-4: 1rem;--bv-space-5: 1.25rem;--bv-space-6: 1.5rem;--bv-space-8: 2rem;--bv-space-12: 3rem;--bv-font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--bv-font-family-mono: "Fira Code", "Courier New", monospace;--bv-font-size-xs: .75rem;--bv-font-size-sm: .875rem;--bv-font-size-base: 1rem;--bv-font-size-lg: 1.125rem;--bv-font-size-xl: 1.25rem;--bv-font-size-2xl: 1.5rem;--bv-font-size-3xl: 2rem;--bv-font-weight-light: 300;--bv-font-weight-normal: 400;--bv-font-weight-medium: 500;--bv-font-weight-semibold: 600;--bv-line-height-tight: 1.25;--bv-line-height-normal: 1.5;--bv-line-height-relaxed: 1.75;--bv-radius-sm: 4px;--bv-radius-md: 8px;--bv-radius-lg: 12px;--bv-radius-full: 9999px;--bv-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--bv-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3);--bv-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3);--bv-shadow-glow-teal: 0 0 20px rgba(0, 148, 171, .4);--bv-shadow-glow-orange: 0 0 20px rgba(255, 107, 53, .4);--bv-transition-fast: .15s ease-in-out;--bv-transition-base: .25s ease-in-out;--bv-transition-smooth: .35s cubic-bezier(.4, 0, .2, 1);--bv-z-base: 0;--bv-z-sticky: 100;--bv-z-modal: 1000;--bv-z-tooltip: 2000}.business-value-calculator{max-width:1200px;margin:0 auto;padding:var(--bv-space-6);font-family:var(--bv-font-family);color:var(--bv-color-text-primary)}.bv-header{margin-bottom:var(--bv-space-8)}.bv-title{font-size:var(--bv-font-size-3xl);font-weight:var(--bv-font-weight-light);margin-bottom:var(--bv-space-3);color:var(--bv-color-text-primary)}.bv-subtitle{font-size:var(--bv-font-size-base);color:var(--bv-color-text-muted);margin-bottom:var(--bv-space-2)}.bv-journey-info{display:flex;align-items:center;gap:var(--bv-space-2);font-size:var(--bv-font-size-sm);color:var(--bv-color-text-muted)}.bv-journey-badge{padding:var(--bv-space-1) var(--bv-space-3);background:#0094ab1a;color:var(--bv-color-primary-teal);border-radius:var(--bv-radius-full);font-weight:var(--bv-font-weight-medium)}.bv-tab-nav{display:flex;gap:var(--bv-space-2);margin-bottom:var(--bv-space-6);border-bottom:1px solid var(--bv-color-border)}.bv-tab-button{padding:var(--bv-space-3) var(--bv-space-6);background:transparent;border:none;border-bottom:2px solid transparent;color:var(--bv-color-text-muted);font-size:var(--bv-font-size-base);font-weight:var(--bv-font-weight-medium);font-family:var(--bv-font-family);cursor:pointer;transition:all var(--bv-transition-fast)}.bv-tab-button:hover{color:var(--bv-color-text-primary);background:var(--bv-color-hover)}.bv-tab-button.active{color:var(--bv-color-primary-teal);border-bottom-color:var(--bv-color-primary-teal)}.bv-tab-button:focus{outline:2px solid var(--bv-color-primary-teal);outline-offset:2px}.bv-tab-content{display:none}.bv-tab-content.active{display:block;animation:bv-fade-in var(--bv-transition-base)}@keyframes bv-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.bv-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--bv-space-12);text-align:center}.bv-spinner{width:48px;height:48px;border:4px solid var(--bv-color-border);border-top-color:var(--bv-color-primary-teal);border-radius:50%;animation:bv-spin 1s linear infinite;margin-bottom:var(--bv-space-4)}@keyframes bv-spin{to{transform:rotate(360deg)}}.bv-loading-text{font-size:var(--bv-font-size-base);color:var(--bv-color-text-muted)}.bv-error{background:#dc35451a;border:1px solid var(--bv-color-error);border-left:4px solid var(--bv-color-error);border-radius:var(--bv-radius-md);padding:var(--bv-space-6);margin-bottom:var(--bv-space-6)}.bv-error-title{display:flex;align-items:center;gap:var(--bv-space-2);font-size:var(--bv-font-size-lg);font-weight:var(--bv-font-weight-semibold);color:var(--bv-color-error);margin-bottom:var(--bv-space-2)}.bv-error-message{font-size:var(--bv-font-size-base);color:var(--bv-color-text-muted);line-height:var(--bv-line-height-relaxed)}.bv-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--bv-space-2);padding:var(--bv-space-3) var(--bv-space-6);font-size:var(--bv-font-size-base);font-weight:var(--bv-font-weight-medium);font-family:var(--bv-font-family);line-height:1;text-align:center;white-space:nowrap;border:none;border-radius:var(--bv-radius-md);cursor:pointer;transition:all var(--bv-transition-fast);text-decoration:none}.bv-btn:disabled{opacity:.5;cursor:not-allowed}.bv-btn-primary{background:linear-gradient(135deg,var(--bv-color-primary-teal),var(--bv-color-primary-navy));color:#fff;box-shadow:var(--bv-shadow-sm)}.bv-btn-primary:hover:not(:disabled){transform:scale(1.02);box-shadow:var(--bv-shadow-glow-teal)}.bv-btn-primary:active:not(:disabled){transform:scale(.98)}.bv-btn-secondary{background:var(--bv-color-panel);color:var(--bv-color-text-primary);border:1px solid var(--bv-color-border)}.bv-btn-secondary:hover:not(:disabled){background:var(--bv-color-hover);border-color:var(--bv-color-border-hover)}.bv-btn-sm{padding:var(--bv-space-2) var(--bv-space-4);font-size:var(--bv-font-size-sm)}.bv-btn-lg{padding:var(--bv-space-4) var(--bv-space-8);font-size:var(--bv-font-size-lg)}.bv-card{background:var(--bv-color-panel);border:1px solid var(--bv-color-border);border-radius:var(--bv-radius-lg);padding:var(--bv-space-6);box-shadow:var(--bv-shadow-sm)}.bv-text-muted{color:var(--bv-color-text-muted)}.bv-text-center{text-align:center}.bv-d-none{display:none}.bv-d-block{display:block}.bv-mb-4{margin-bottom:var(--bv-space-4)}.bv-mb-6{margin-bottom:var(--bv-space-6)}.benefits-tab{padding:var(--bv-space-4) 0}.benefits-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--bv-space-4);margin-bottom:var(--bv-space-8)}.summary-card{background:linear-gradient(135deg,#0047721a,#0094ab1a);border:1px solid var(--bv-color-primary-teal);border-radius:var(--bv-radius-lg);padding:var(--bv-space-6);text-align:center;transition:all var(--bv-transition-fast)}.summary-card:hover{box-shadow:var(--bv-shadow-glow-teal);transform:translateY(-2px)}.summary-card h3{font-size:var(--bv-font-size-sm);font-weight:var(--bv-font-weight-medium);color:var(--bv-color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--bv-space-2)}.metric-value{font-size:var(--bv-font-size-3xl);font-weight:var(--bv-font-weight-light);color:var(--bv-color-primary-teal);margin-bottom:var(--bv-space-1)}.metric-label{font-size:var(--bv-font-size-xs);color:var(--bv-color-text-muted);margin:0}.bv-summary-banner{background:linear-gradient(135deg,#0047720d,#0094ab0d);border:1px solid var(--bv-color-primary-teal);border-radius:var(--bv-radius-lg);padding:var(--bv-space-6);margin-bottom:var(--bv-space-6);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#fffffff2}.bv-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--bv-space-4)}.bv-summary-metric{text-align:center;padding:var(--bv-space-3);background:#fff;border-radius:var(--bv-radius-md);border:1px solid rgba(0,148,171,.1);transition:all var(--bv-transition-fast)}.bv-summary-metric:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0094ab1a}.bv-metric-content{display:flex;flex-direction:column;gap:var(--bv-space-1)}.bv-metric-label{font-size:var(--bv-font-size-xs);font-weight:var(--bv-font-weight-medium);color:#718096!important;text-transform:uppercase;letter-spacing:.05em}.bv-metric-value{font-size:var(--bv-font-size-2xl);font-weight:var(--bv-font-weight-bold);color:var(--bv-color-primary-teal)!important}.bv-metric-sublabel{font-size:var(--bv-font-size-xs);color:#a0aec0!important}.driver-groups{display:flex;flex-direction:column;gap:var(--bv-space-4)}.driver-group{background:var(--bv-color-panel);border:1px solid var(--bv-color-border);border-radius:var(--bv-radius-lg);overflow:hidden;transition:all var(--bv-transition-fast)}.driver-group:hover{border-color:var(--bv-color-primary-teal)}.group-header{width:100%;padding:var(--bv-space-6);background:linear-gradient(135deg,#0047720d,#0094ab0d);border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--bv-space-4);transition:all var(--bv-transition-fast);text-align:left}.group-header:hover{background:linear-gradient(135deg,#0047721a,#0094ab1a)}.group-header:focus{outline:2px solid var(--bv-color-primary-teal);outline-offset:-2px}.group-header-content{flex:1}.group-title{font-size:var(--bv-font-size-xl);font-weight:var(--bv-font-weight-semibold);color:var(--bv-color-text-primary);margin:0 0 var(--bv-space-1) 0}.group-description{font-size:var(--bv-font-size-sm);color:var(--bv-color-text-muted);margin:0;line-height:var(--bv-line-height-relaxed)}.group-header-right{display:flex;align-items:center;gap:var(--bv-space-3)}.group-badge{font-size:var(--bv-font-size-sm);padding:var(--bv-space-1) var(--bv-space-3);background:#0094ab1a;color:var(--bv-color-primary-teal);border-radius:var(--bv-radius-full);white-space:nowrap;font-weight:var(--bv-font-weight-medium)}.group-header .chevron{color:var(--bv-color-text-muted);transition:transform var(--bv-transition-fast)}.group-header .chevron-up{transform:rotate(180deg)}.group-children{padding:var(--bv-space-6);background:var(--bv-color-panel);border-top:1px solid var(--bv-color-border)}.no-data-message{text-align:center;font-size:var(--bv-font-size-base);color:var(--bv-color-text-muted);padding:var(--bv-space-12);background:var(--bv-color-hover);border-radius:var(--bv-radius-lg);border:1px dashed var(--bv-color-border)}@media (max-width: 767px){.business-value-calculator{padding:var(--bv-space-4)}.bv-title{font-size:var(--bv-font-size-2xl)}.bv-tab-nav{flex-direction:column;gap:var(--bv-space-2)}.bv-tab-button{width:100%;text-align:left;padding:var(--bv-space-3) var(--bv-space-4)}.benefits-summary{grid-template-columns:1fr}.group-header{padding:var(--bv-space-4)}.group-header-right{flex-direction:column;align-items:flex-end}.group-children{padding:var(--bv-space-4)}}.bv-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;margin-bottom:1rem}.bv-header-content{flex:1}.bv-reset-button{flex-shrink:0;display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:600;color:#e53e3e;background:#fff;border:2px solid #e53e3e;border-radius:8px;cursor:pointer;transition:all .2s ease}.bv-reset-button:hover{background:#fff5f5;border-color:#c53030;color:#c53030;transform:translateY(-2px);box-shadow:0 4px 12px #e53e3e33}.bv-reset-button:active{transform:translateY(0)}.bv-reset-button svg{width:16px;height:16px}.bv-last-saved{font-size:.875rem;color:#718096;font-style:italic}.bv-modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.bv-modal-dialog{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;margin:1rem;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.bv-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e2e8f0}.bv-modal-title{display:flex;align-items:center;gap:.75rem;font-size:1.25rem;font-weight:700;color:#2d3748;margin:0}.bv-modal-title svg{color:#e53e3e}.bv-modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:300;color:#718096;background:transparent;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.bv-modal-close:hover{background:#f7fafc;color:#2d3748}.bv-modal-body{padding:1.5rem}.bv-modal-text{margin:0 0 1rem;font-size:1rem;line-height:1.6;color:#4a5568}.bv-modal-text:last-child{margin-bottom:0}.bv-modal-text strong{font-weight:700;color:#e53e3e}.bv-modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e2e8f0}.bv-modal-button{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:700;border:2px solid;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:120px}.bv-modal-button-secondary{color:#4a5568;background:#fff;border-color:#cbd5e0}.bv-modal-button-secondary:hover{background:#f7fafc;border-color:#a0aec0}.bv-modal-button-danger{color:#fff;background:#e53e3e;border-color:#e53e3e}.bv-modal-button-danger:hover{background:#c53030;border-color:#c53030;transform:translateY(-2px);box-shadow:0 4px 12px #e53e3e4d}.bv-modal-button:active{transform:translateY(0)}.benefits-tab{display:flex;flex-direction:column;gap:var(--bv-space-6)}.benefit-pillar-drivers{display:flex;flex-direction:column;gap:var(--bv-space-4);padding:var(--bv-space-4) 0}.benefit-driver-section{background:var(--bv-color-surface);border:1px solid var(--bv-color-border);border-radius:var(--bv-radius-lg);padding:var(--bv-space-4);transition:all var(--bv-transition-base)}.benefit-driver-section:hover{border-color:var(--bv-color-primary-teal);box-shadow:0 2px 8px #0094ab1a}.benefit-driver-section.has-recommendations{background:linear-gradient(to right,rgba(16,185,129,.03),transparent);border-left:3px solid #10b981}.benefit-driver-section.disabled{opacity:.6}.benefit-driver-section.disabled:hover{border-color:var(--bv-color-border);box-shadow:none}.driver-header{display:flex;align-items:center;justify-content:space-between;gap:var(--bv-space-3);margin-bottom:var(--bv-space-3)}.driver-checkbox-label{display:flex;align-items:center;gap:var(--bv-space-2);cursor:pointer;flex:1;color:#1a202c}.driver-checkbox{width:18px;height:18px;cursor:pointer}.driver-title{font-size:var(--bv-font-size-lg);font-weight:var(--bv-font-weight-semibold);color:#1a202c!important;display:flex;align-items:center;gap:var(--bv-space-2)}.driver-value-display{font-size:var(--bv-font-size-xl);font-weight:var(--bv-font-weight-bold);color:var(--bv-color-primary-teal)}.recommendation-badge{padding:2px 8px;background:#10b98126;color:#059669;border-radius:var(--bv-radius-full);font-size:var(--bv-font-size-xs);font-weight:var(--bv-font-weight-medium);white-space:nowrap}.driver-content{display:flex;flex-direction:column;gap:var(--bv-space-4);padding-top:var(--bv-space-3);border-top:1px solid var(--bv-color-border)}.driver-description{font-size:var(--bv-font-size-sm);color:var(--bv-color-text-muted);margin:0}.driver-formula{font-size:var(--bv-font-size-sm);padding:var(--bv-space-2) var(--bv-space-3);background:#00000005;border-left:2px solid var(--bv-color-primary-teal);border-radius:var(--bv-radius-sm)}.driver-formula code{font-family:Monaco,Courier New,monospace;font-size:var(--bv-font-size-xs);color:#2d3748}.parameters-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--bv-space-4);padding:var(--bv-space-3);background:#00000003;border-radius:var(--bv-radius-md)}.parameter-field{display:flex;flex-direction:column;gap:var(--bv-space-1)}.parameter-label{font-size:var(--bv-font-size-sm);font-weight:var(--bv-font-weight-medium);color:var(--bv-color-text-secondary);display:flex;align-items:center;gap:var(--bv-space-1)}.parameter-tooltip{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;background:#0094ab1a;color:var(--bv-color-primary-teal);border-radius:50%;font-size:12px;cursor:help}.parameter-input-wrapper{display:flex;align-items:center;gap:var(--bv-space-2)}.parameter-input{flex:1;padding:var(--bv-space-2) var(--bv-space-3);border:1px solid var(--bv-color-border);border-radius:var(--bv-radius-md);font-size:var(--bv-font-size-base);font-family:var(--bv-font-family);transition:all var(--bv-transition-fast)}.parameter-input:focus{outline:none;border-color:var(--bv-color-primary-teal);box-shadow:0 0 0 3px #0094ab1a}.parameter-unit{font-size:var(--bv-font-size-sm);color:var(--bv-color-text-muted);white-space:nowrap;min-width:30px}.driver-actions{display:flex;justify-content:flex-start}.calculate-button{padding:var(--bv-space-2) var(--bv-space-6);background:var(--bv-color-primary-teal);color:#fff;border:none;border-radius:var(--bv-radius-md);font-size:var(--bv-font-size-sm);font-weight:var(--bv-font-weight-medium);font-family:var(--bv-font-family);cursor:pointer;transition:all var(--bv-transition-fast)}.calculate-button:hover{background:#00849a;transform:translateY(-1px);box-shadow:0 4px 12px #0094ab33}.calculate-button:active{transform:translateY(0)}.results-display{display:flex;flex-direction:column;gap:var(--bv-space-3);padding:var(--bv-space-4);background:linear-gradient(135deg,#0094ab0d,#10b9810d);border-radius:var(--bv-radius-lg);border:1px solid rgba(0,148,171,.2)}.results-header{font-size:var(--bv-font-size-sm);font-weight:var(--bv-font-weight-semibold);color:#4a5568!important;text-transform:uppercase;letter-spacing:.05em}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--bv-space-3)}.result-item{display:flex;flex-direction:column;gap:var(--bv-space-1);padding:var(--bv-space-3);background:#fff;border-radius:var(--bv-radius-md);border:1px solid rgba(0,0,0,.05)}.result-item.total{background:linear-gradient(135deg,var(--bv-color-primary-teal),#00849a);color:#fff;border:none}.result-label{font-size:var(--bv-font-size-xs);font-weight:var(--bv-font-weight-medium);color:#718096!important;text-transform:uppercase;letter-spacing:.05em}.result-item.total .result-label{color:#ffffffe6!important}.result-value{font-size:var(--bv-font-size-xl);font-weight:var(--bv-font-weight-bold);color:#1a202c!important}.result-item.total .result-value{color:#fff!important}.results-details{padding-top:var(--bv-space-3);border-top:1px solid rgba(0,0,0,.1)}.details-header{font-size:var(--bv-font-size-xs);font-weight:var(--bv-font-weight-semibold);color:#4a5568!important;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--bv-space-2)}.details-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--bv-space-1)}.details-list li{font-size:var(--bv-font-size-sm);color:#4a5568!important}.details-list strong{color:#1a202c!important;font-weight:var(--bv-font-weight-medium)}.no-data-message{padding:var(--bv-space-8);text-align:center;color:var(--bv-color-text-muted);font-size:var(--bv-font-size-base)}@media (max-width: 768px){.bv-header-top{flex-direction:column;align-items:stretch}.bv-reset-button{justify-content:center}.bv-modal-footer{flex-direction:column}.bv-modal-button{width:100%}.parameters-grid,.results-grid{grid-template-columns:1fr}.driver-header{flex-direction:column;align-items:flex-start}}.driver-card{background:var(--color-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);margin-bottom:var(--space-4);transition:all var(--transition-fast)}.driver-card:hover{border-color:var(--color-primary-teal);box-shadow:var(--shadow-glow-teal)}.driver-card-header{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);margin-bottom:var(--space-4);align-items:center}.driver-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.recommendation-badge{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-3);background:#0094ab1a;color:var(--color-primary-teal);border-radius:var(--radius-full);white-space:nowrap;font-weight:var(--font-weight-medium)}.driver-impacts{display:flex;gap:var(--space-6);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);margin-bottom:var(--space-4);flex-wrap:wrap}.impact-item{display:flex;flex-direction:column;gap:var(--space-1);min-width:120px}.impact-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-weight-medium)}.impact-value{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.driver-controls{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4)}.control-group{display:flex;flex-direction:column;gap:var(--space-2)}.control-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.help-icon{background:none;border:none;padding:0;cursor:help;color:var(--color-text-muted);transition:color var(--transition-fast);display:flex;align-items:center}.help-icon:hover{color:var(--color-primary-teal)}.control-input{width:100%;padding:var(--space-3);font-size:var(--font-size-base);text-align:right;border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),box-shadow var(--transition-fast);background:var(--color-panel);color:var(--color-text-primary);font-family:inherit}.control-input:focus{outline:none;border-color:var(--color-primary-teal);box-shadow:0 0 0 3px #0094ab1a}.control-input:disabled{opacity:.6;cursor:not-allowed}.risk-slider{width:100%;height:8px;background:linear-gradient(to right,#ff6b3533,#0094ab33,#0094ab66);border-radius:var(--radius-full);outline:none;-webkit-appearance:none;appearance:none;cursor:pointer}.risk-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:var(--color-primary-teal);border:2px solid white;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 4px #0003}.risk-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:var(--shadow-glow-teal)}.risk-slider::-moz-range-thumb{width:20px;height:20px;background:var(--color-primary-teal);border:2px solid white;border-radius:50%;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 4px #0003}.risk-slider::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:var(--shadow-glow-teal)}.risk-slider-value{margin-top:var(--space-1);text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-primary-teal)}.expand-button{width:100%;padding:var(--space-3);background:var(--color-hover);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.expand-button:hover{background:var(--color-primary-teal);border-color:var(--color-primary-teal);color:#fff}.expand-button:focus{outline:none;box-shadow:0 0 0 3px #0094ab33}.expand-button svg{transition:transform var(--transition-fast)}.expand-button svg.chevron-up{transform:rotate(180deg)}.recommendations-list{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.recommendation-item{padding:var(--space-3);background:#0094ab0d;border-left:3px solid var(--color-primary-teal);border-radius:var(--radius-sm);margin-bottom:var(--space-2);transition:all var(--transition-fast)}.recommendation-item:hover{background:#0094ab1a}.recommendation-title{font-size:var(--font-size-sm);color:var(--color-text-primary);margin-bottom:var(--space-1);font-weight:var(--font-weight-medium)}.recommendation-meta{font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex;gap:var(--space-3);align-items:center}.recommendation-id{font-family:Courier New,monospace;background:#0000000d;padding:2px var(--space-2);border-radius:var(--radius-sm)}.no-recommendations{font-size:var(--font-size-sm);color:var(--color-text-muted);font-style:italic;text-align:center;padding:var(--space-4)}@media (max-width: 1023px){.driver-controls{gap:var(--space-3)}.driver-impacts{gap:var(--space-4)}}@media (max-width: 767px){.driver-card{padding:var(--space-4)}.driver-card-header{grid-template-columns:1fr;gap:var(--space-2)}.recommendation-badge{justify-self:start}.driver-controls{grid-template-columns:1fr;gap:var(--space-3)}.driver-impacts{flex-direction:column;gap:var(--space-3)}.impact-item{flex-direction:row;align-items:center;justify-content:space-between;min-width:unset}.impact-label{text-transform:none;font-size:var(--font-size-sm)}}.accordion-group{display:flex;flex-direction:column;gap:1rem;margin-bottom:3rem}.accordion-item{background:#fff;border:2px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:all .2s ease}.accordion-item:hover{border-color:#cbd5e0;box-shadow:0 4px 12px #00000014}.accordion-item.active{border-color:#0094ab;box-shadow:0 8px 24px #0094ab26}.accordion-header{display:flex;align-items:center;gap:1rem;padding:1.5rem;cursor:pointer;background:#fff;transition:background .2s ease;-webkit-user-select:none;user-select:none}.accordion-header:hover{background:#f7fafc}.accordion-item.active .accordion-header{background:linear-gradient(135deg,#0094ab1a,#0047720d);border-bottom:2px solid #e2e8f0}.accordion-header:focus{outline:2px solid #0094ab;outline-offset:-2px}.accordion-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0094ab,#004772);border-radius:12px;color:#fff;flex-shrink:0}.accordion-icon svg{width:24px;height:24px}.accordion-title-group{flex:1}.accordion-title{font-size:1.125rem;font-weight:700;color:#1a202c;margin:0 0 .25rem}.accordion-subtitle{font-size:.875rem;color:#718096;margin:0}.accordion-value{font-size:1.5rem;font-weight:700;color:#0094ab;margin-right:1rem}.accordion-chevron{width:24px;height:24px;color:#718096;transition:transform .3s ease;flex-shrink:0}.accordion-item.active .accordion-chevron{transform:rotate(180deg)}.accordion-body{padding:0;max-height:0;overflow:hidden;opacity:0;transition:max-height .3s ease,opacity .3s ease,padding .3s ease}.accordion-item.active .accordion-body{max-height:5000px;opacity:1;padding:0 1.5rem 1.5rem}@media (max-width: 968px){.accordion-header{padding:1rem}.accordion-item.active .accordion-body{padding:0 1rem 1rem}.accordion-value{font-size:1.125rem}}@media (max-width: 640px){.accordion-title{font-size:1rem}.accordion-subtitle{font-size:.8125rem}.accordion-icon{width:40px;height:40px}.accordion-icon svg{width:20px;height:20px}}.sentiment-dashboard{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.sentiment-dashboard__header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.sentiment-dashboard__header h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:#1a1a1a}.sentiment-dashboard__meta{font-size:.875rem;color:#666}.sentiment-dashboard__grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2rem}@media (max-width: 768px){.sentiment-dashboard__grid{grid-template-columns:1fr}}.sentiment-dashboard__section{background:#f9f9f9;border-radius:6px;padding:1.25rem}.sentiment-dashboard__section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#333}.emotion-bars{display:flex;flex-direction:column;gap:.75rem}.emotion-bar{display:grid;grid-template-columns:120px 1fr 80px;align-items:center;gap:.75rem}.emotion-bar__label{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:#333}.emotion-bar__emoji{font-size:1.25rem}.emotion-bar__name{white-space:nowrap}.emotion-bar__track{height:24px;background:#e0e0e0;border-radius:12px;overflow:hidden;position:relative}.emotion-bar__fill{height:100%;border-radius:12px;transition:width .5s ease;background:linear-gradient(90deg,#ccc,#999)}.emotion-bar__fill--frustration{background:linear-gradient(90deg,#ff6b6b,#c92a2a)}.emotion-bar__fill--confusion{background:linear-gradient(90deg,#ffd43b,#fab005)}.emotion-bar__fill--anxiety{background:linear-gradient(90deg,#ff8787,#ff6b6b)}.emotion-bar__fill--confidence{background:linear-gradient(90deg,#51cf66,#37b24d)}.emotion-bar__fill--joy{background:linear-gradient(90deg,#74c0fc,#339af0)}.emotion-bar__value{text-align:right;font-size:.875rem;font-weight:600;color:#333}.fair-heatmap{display:table;width:100%;border-collapse:separate;border-spacing:4px;margin-bottom:1rem}.fair-heatmap__header,.fair-heatmap__row{display:table-row}.fair-heatmap__cell{display:table-cell;text-align:center;padding:.75rem;font-weight:600;border-radius:4px}.fair-heatmap__cell--header{background:#f0f0f0;color:#666;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.fair-heatmap__cell--role,.fair-heatmap__cell--persona{background:#f0f0f0;color:#666;font-size:.6875rem;font-weight:600;text-transform:uppercase;cursor:help;min-width:40px}.fair-heatmap__cell--sentiment{font-size:1.5rem;cursor:help;transition:transform .2s ease}.fair-heatmap__cell--sentiment:hover{transform:scale(1.2)}.sentiment-negative{background:#ffe5e5}.sentiment-mixed-negative{background:#fff3e5}.sentiment-neutral{background:#fffde5}.sentiment-mixed-positive{background:#e5ffe5}.sentiment-positive{background:#e5f8e5}.fair-heatmap__legend{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem;padding:.5rem;background:#fff;border-radius:4px;font-size:.75rem}.fair-heatmap__legend-item{display:flex;align-items:center;gap:.25rem;color:#666}.fair-heatmap__legend-emoji{font-size:1rem}.fair-heatmap__insights{background:#fff;border-radius:4px;padding:.75rem;font-size:.875rem;color:#333}.fair-heatmap__insight{margin-bottom:.5rem}.fair-heatmap__insight:last-child{margin-bottom:0}.fair-heatmap__insight strong{color:#1a1a1a;font-weight:600}.sentiment-dashboard__quotes{background:#fff;border:1px solid #e0e0e0}.sentiment-quotes{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 768px){.sentiment-quotes{grid-template-columns:1fr}}.sentiment-quotes__group-title{margin:0 0 .75rem;font-size:.875rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.sentiment-quotes__group-title--negative{color:#c92a2a}.sentiment-quotes__group-title--positive{color:#37b24d}.sentiment-quote{background:#f9f9f9;border-left:3px solid #ccc;border-radius:4px;padding:.75rem;margin-bottom:.75rem;font-size:.875rem}.sentiment-quote--negative{border-left-color:#ff6b6b;background:#fff5f5}.sentiment-quote--positive{border-left-color:#51cf66;background:#f4fdf4}.sentiment-quote__text{font-style:italic;color:#333;margin-bottom:.5rem;line-height:1.5}.sentiment-quote__meta{font-size:.75rem;color:#666;font-weight:500}@media (max-width: 768px){.sentiment-dashboard{padding:1rem}.emotion-bar{grid-template-columns:100px 1fr 60px;gap:.5rem}.fair-heatmap__cell{padding:.5rem;font-size:1.25rem}.sentiment-quote{padding:.5rem}}.station-results{max-width:1400px;margin:0 auto;padding:2rem}.station-results__header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:3px solid #e0e0e0}.station-results__title{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.station-results__icon{font-size:2.5rem}.station-results__title h2{margin:0;font-size:2rem;font-weight:700;color:#1a1a1a}.station-results__meta{display:flex;gap:2rem;flex-wrap:wrap}.meta-item{display:flex;gap:.5rem;align-items:baseline}.meta-label{font-size:.875rem;font-weight:600;color:#666}.meta-value{font-size:1.125rem;font-weight:700;color:#1a1a1a}.station-results__section{margin-bottom:2rem;background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 2px 8px #0000001a}.station-results__section h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#1a1a1a;padding-bottom:.75rem;border-bottom:2px solid #e0e0e0}.station-results-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.spinner{width:48px;height:48px;border:4px solid #e0e0e0;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.station-results-error{background:#fff5f5;border:2px solid #ff6b6b;border-radius:8px;padding:2rem;text-align:center;max-width:600px;margin:2rem auto}.station-results-error h3{color:#c92a2a;margin:0 0 1rem}.station-results-error p{color:#666;margin-bottom:1.5rem}.btn-retry{background:#3b82f6;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-retry:hover{background:#2563eb}.recommendations-list{display:grid;gap:1rem}.recommendation-card{background:#f9f9f9;border-left:4px solid #ccc;border-radius:4px;padding:1.25rem;transition:transform .2s ease,box-shadow .2s ease}.recommendation-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.recommendation-header{display:flex;gap:.75rem;margin-bottom:.75rem}.recommendation-priority{font-size:.75rem;font-weight:700;padding:.25rem .5rem;border-radius:4px;letter-spacing:.5px}.recommendation-priority--high{background:#ffe5e5;color:#c92a2a;border:1px solid #ff6b6b}.recommendation-priority--medium{background:#fff3e5;color:#d9770d;border:1px solid #fab005}.recommendation-priority--low{background:#e5ffe5;color:#2f7c2f;border:1px solid #51cf66}.recommendation-pillar{font-size:.75rem;font-weight:600;padding:.25rem .5rem;background:#e0e0e0;color:#333;border-radius:4px}.recommendation-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:#1a1a1a}.recommendation-description{margin:0 0 1rem;color:#666;line-height:1.6}.recommendation-footer{display:flex;gap:1.5rem;font-size:.875rem;color:#666}.recommendation-effort,.recommendation-impact{font-weight:500}.station-results__metadata{background:#f9f9f9;border:1px solid #e0e0e0}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.metadata-item{display:flex;flex-direction:column;gap:.25rem}.metadata-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666}.metadata-value{font-size:.875rem;font-weight:500;color:#1a1a1a;word-break:break-all}@media (max-width: 768px){.station-results{padding:1rem}.station-results__title h2{font-size:1.5rem}.station-results__meta{flex-direction:column;gap:.75rem}.station-results__section{padding:1rem}.metadata-grid{grid-template-columns:1fr}}.dq-enhance-panel{background:var(--surface-secondary, #f8fafc);border-radius:12px;padding:24px;margin-bottom:24px}.dq-enhance-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px}.dq-enhance-panel__title{display:flex;align-items:center;gap:12px}.dq-enhance-panel__title h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #0f172a)}.dq-enhance-panel__actions{display:flex;gap:8px;align-items:center}.dq-enhance-btn{padding:8px 16px;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;border:none;transition:all .2s ease}.dq-enhance-btn--primary{background:var(--primary, #2563eb);color:#fff}.dq-enhance-btn--primary:hover{background:var(--primary-hover, #1d4ed8)}.dq-enhance-btn--primary:disabled{background:var(--disabled, #94a3b8);cursor:not-allowed}.dq-enhance-severity-badge{padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase}.dq-enhance-severity--none{background:#dcfce7;color:#16a34a}.dq-enhance-severity--low{background:#dbeafe;color:#2563eb}.dq-enhance-severity--medium{background:#fef3c7;color:#d97706}.dq-enhance-severity--high{background:#fee2e2;color:#dc2626}.dq-enhance-mini-badge{padding:2px 8px;border-radius:10px;font-size:.7rem;font-weight:500}.dq-enhance-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fee2e2;border-radius:8px;color:#dc2626;margin-bottom:16px}.dq-enhance-error__icon{font-size:1.2rem}.dq-enhance-error button{margin-left:auto;background:none;border:none;color:#dc2626;font-size:1.2rem;cursor:pointer;padding:0 4px}.dq-enhance-loading{display:flex;align-items:center;gap:12px;padding:24px;justify-content:center;color:var(--text-secondary, #64748b)}.dq-enhance-spinner{width:24px;height:24px;border:3px solid #e2e8f0;border-top-color:var(--primary, #2563eb);border-radius:50%;animation:dq-enhance-spin 1s linear infinite}@keyframes dq-enhance-spin{to{transform:rotate(360deg)}}.dq-enhance-content{animation:dq-enhance-fadeIn .3s ease}@keyframes dq-enhance-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dq-enhance-overall-summary{background:#fff;padding:16px;border-radius:8px;margin-bottom:20px;border-left:4px solid var(--primary, #2563eb)}.dq-enhance-overall-summary p{margin:0;color:var(--text-primary, #0f172a);line-height:1.5}.dq-enhance-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1px solid #e2e8f0;padding-bottom:4px}.dq-enhance-tab{padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary, #64748b);transition:all .2s ease;display:flex;align-items:center;gap:8px}.dq-enhance-tab:hover{color:var(--text-primary, #0f172a)}.dq-enhance-tab--active{color:var(--primary, #2563eb);border-bottom-color:var(--primary, #2563eb)}.dq-enhance-tab-badge{background:#fee2e2;color:#dc2626;padding:2px 6px;border-radius:10px;font-size:.7rem;font-weight:600}.dq-enhance-tab-content{background:#fff;border-radius:8px;padding:20px}.dq-enhance-section{animation:dq-enhance-fadeIn .2s ease}.dq-enhance-section__summary{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.dq-enhance-stat{display:flex;flex-direction:column;gap:4px}.dq-enhance-stat__value{font-size:1.5rem;font-weight:700;color:var(--text-primary, #0f172a)}.dq-enhance-stat__label{font-size:.75rem;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.05em}.dq-enhance-summary-text{color:var(--text-secondary, #64748b);line-height:1.5;margin:0 0 16px}.dq-enhance-config-info,.dq-enhance-method-info{display:flex;gap:16px;flex-wrap:wrap;padding:12px 16px;background:#f8fafc;border-radius:6px;margin-bottom:16px;font-size:.875rem;color:var(--text-secondary, #64748b)}.dq-enhance-method{display:flex;flex-direction:column;gap:4px}.dq-enhance-method strong{color:var(--text-primary, #0f172a)}.dq-enhance-results-list{margin-top:16px}.dq-enhance-results-list h4{margin:0 0 12px;font-size:.875rem;font-weight:600;color:var(--text-primary, #0f172a)}.dq-enhance-result-item{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:8px;overflow:hidden}.dq-enhance-result-header{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8fafc;cursor:pointer;transition:background .2s ease}.dq-enhance-result-header:hover{background:#f1f5f9}.dq-enhance-result-name{font-weight:500;color:var(--text-primary, #0f172a);flex:1}.dq-enhance-similarity{font-size:.8rem;color:var(--text-secondary, #64748b)}.dq-enhance-expand-icon{color:var(--text-secondary, #64748b);font-size:.75rem}.dq-enhance-result-details{padding:16px;border-top:1px solid #e2e8f0;background:#fff;animation:dq-enhance-slideDown .2s ease}@keyframes dq-enhance-slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dq-enhance-recommendation{margin:0 0 12px;padding:8px 12px;background:#eff6ff;border-left:3px solid #2563eb;border-radius:4px;font-size:.875rem;color:var(--text-primary, #0f172a)}.dq-enhance-patterns ul,.dq-enhance-outlier-list ul{margin:8px 0 0;padding-left:20px}.dq-enhance-patterns li,.dq-enhance-outlier-list li{margin-bottom:4px;font-size:.875rem;color:var(--text-secondary, #64748b)}.dq-enhance-patterns code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-family:monospace;color:#e11d48}.dq-enhance-method-comparison{display:flex;gap:24px;margin-top:12px;font-size:.875rem}.dq-enhance-more-info{text-align:center;color:var(--text-secondary, #64748b);font-size:.875rem;margin-top:12px}.dq-enhance-empty{text-align:center;padding:40px 20px;color:var(--text-secondary, #64748b)}.dq-enhance-empty-state{text-align:center;padding:40px 20px}.dq-enhance-empty-icon{font-size:3rem;margin-bottom:16px}.dq-enhance-empty-state h4{margin:0 0 12px;font-size:1.125rem;color:var(--text-primary, #0f172a)}.dq-enhance-empty-state p{color:var(--text-secondary, #64748b);margin:0 0 16px}.dq-enhance-empty-state ul{list-style:none;padding:0;text-align:left;max-width:400px;margin:0 auto}.dq-enhance-empty-state li{padding:8px 0;color:var(--text-secondary, #64748b);font-size:.875rem}.dq-enhance-empty-state li strong{color:var(--text-primary, #0f172a)}@media (max-width: 768px){.dq-enhance-panel__header{flex-direction:column;align-items:flex-start}.dq-enhance-section__summary{gap:16px}.dq-enhance-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.dq-enhance-tab{white-space:nowrap}.dq-enhance-method-comparison{flex-direction:column;gap:8px}}.anomaly-panel{background:var(--card-bg, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e5e7eb);padding:1.5rem;margin-bottom:1.5rem}.anomaly-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.anomaly-panel__title{display:flex;align-items:center;gap:1rem}.anomaly-panel__title h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.anomaly-panel__severity-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.anomaly-panel__actions{display:flex;gap:1rem;align-items:center}.anomaly-panel__checkbox{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--text-secondary, #6b7280);cursor:pointer}.anomaly-panel__checkbox input{width:16px;height:16px;cursor:pointer}.anomaly-panel__btn{padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.anomaly-panel__btn--primary{background:var(--primary-color, #2563eb);color:#fff}.anomaly-panel__btn--primary:hover:not(:disabled){background:var(--primary-dark, #1d4ed8)}.anomaly-panel__btn--primary:disabled{background:var(--gray-300, #d1d5db);cursor:not-allowed}.anomaly-panel__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:3rem;color:var(--text-secondary, #6b7280)}.anomaly-panel__loading .spinner{width:32px;height:32px;border:3px solid var(--gray-200, #e5e7eb);border-top-color:var(--primary-color, #2563eb);border-radius:50%;animation:spin .8s linear infinite}.anomaly-panel__error{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--error-light, #fee2e2);color:var(--error-color, #dc2626);border-radius:8px;margin-bottom:1rem}.anomaly-panel__error button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem;padding:0 .5rem}.anomaly-panel__empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary, #6b7280)}.anomaly-panel__empty-icon{font-size:3rem;margin-bottom:1rem}.anomaly-panel__empty h4{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.anomaly-panel__empty p{margin:0;font-size:.9rem}.anomaly-panel__summary{display:flex;gap:2rem;padding:1.25rem;background:var(--bg-secondary, #f9fafb);border-radius:10px;margin-bottom:1rem;flex-wrap:wrap}.anomaly-panel__score{display:flex;flex-direction:column;align-items:center;padding-right:2rem;border-right:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__score-value{font-size:2.5rem;font-weight:700}.anomaly-panel__score-label{font-size:.8rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.anomaly-panel__stats{display:flex;gap:2rem;flex-wrap:wrap;align-items:center}.anomaly-panel__stat{display:flex;flex-direction:column;align-items:center}.anomaly-panel__stat-value{font-size:1.5rem;font-weight:600}.anomaly-panel__stat-label{font-size:.75rem;color:var(--text-secondary, #6b7280)}.anomaly-panel__summary-text{padding:.75rem 1rem;background:var(--info-light, #dbeafe);border-radius:8px;font-size:.9rem;color:var(--info-color, #2563eb);margin-bottom:1.5rem}.anomaly-severity--none{color:var(--success-color, #16a34a);background:var(--success-light, #dcfce7)}.anomaly-severity--low{color:var(--info-color, #2563eb);background:var(--info-light, #dbeafe)}.anomaly-severity--medium{color:var(--warning-color, #d97706);background:var(--warning-light, #fef3c7)}.anomaly-severity--high{color:var(--error-color, #dc2626);background:var(--error-light, #fee2e2)}.anomaly-panel__section{margin-bottom:1.5rem}.anomaly-panel__section h4{margin:0 0 .75rem;font-size:1rem;color:var(--text-primary, #1f2937)}.anomaly-panel__section-desc{font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0 0 1rem}.anomaly-panel__column-list{display:flex;flex-direction:column;gap:.5rem}.anomaly-panel__column{border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.anomaly-panel__column:hover{box-shadow:0 2px 8px #0000000d}.anomaly-panel__column--expanded{border-color:var(--primary-color, #2563eb)}.anomaly-panel__column-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);cursor:pointer}.anomaly-panel__column-info{display:flex;align-items:center;gap:.75rem}.anomaly-panel__column-name{font-weight:600;color:var(--text-primary, #1f2937)}.anomaly-panel__consensus-badge{font-size:.75rem;padding:.15rem .5rem;background:var(--gray-200, #e5e7eb);border-radius:4px;color:var(--text-secondary, #6b7280)}.anomaly-panel__column-status{display:flex;align-items:center;gap:.5rem}.anomaly-panel__method-badge{font-size:.7rem;padding:.2rem .5rem;border-radius:4px;font-weight:500}.anomaly-panel__expand-icon{font-size:.7rem;color:var(--text-secondary, #6b7280);margin-left:.5rem}.anomaly-panel__column-details{padding:1rem;background:#fff;border-top:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__method{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__method:last-of-type{border-bottom:none;margin-bottom:0;padding-bottom:0}.anomaly-panel__method-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.anomaly-panel__method-name{font-weight:600;font-size:.9rem;color:var(--text-primary, #1f2937)}.anomaly-panel__method-value{font-weight:700;font-family:monospace}.anomaly-panel__bounds{font-size:.8rem;color:var(--text-secondary, #6b7280);font-family:monospace}.anomaly-panel__recommendation{font-size:.85rem;padding:.75rem;background:var(--info-light, #dbeafe);border-radius:6px;color:var(--info-color, #2563eb);margin-top:1rem}.anomaly-panel__benford-list{display:flex;flex-direction:column;gap:.5rem}.anomaly-panel__benford{border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.anomaly-panel__benford--expanded{border-color:var(--primary-color, #2563eb)}.anomaly-panel__benford-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);cursor:pointer}.anomaly-panel__benford-info{display:flex;align-items:center;gap:.75rem}.anomaly-panel__benford-name{font-weight:600;color:var(--text-primary, #1f2937)}.anomaly-panel__benford-sample{font-size:.75rem;color:var(--text-secondary, #6b7280)}.anomaly-panel__benford-status{display:flex;align-items:center;gap:.5rem}.anomaly-panel__benford-badge{font-size:.7rem;padding:.25rem .5rem;border-radius:4px;font-weight:600}.anomaly-panel__benford-details{padding:1rem;background:#fff;border-top:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__benford-stats{display:flex;gap:1.5rem;font-size:.85rem;color:var(--text-secondary, #6b7280);margin-bottom:1rem;font-family:monospace}.anomaly-panel__digit-chart{margin-bottom:1rem}.anomaly-panel__digit-header{display:grid;grid-template-columns:40px 1fr 60px;gap:.5rem;font-size:.7rem;color:var(--text-tertiary, #9ca3af);text-transform:uppercase;margin-bottom:.5rem;padding-bottom:.25rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__digit-row{display:grid;grid-template-columns:40px 1fr 60px;gap:.5rem;align-items:center;padding:.25rem 0}.anomaly-panel__digit-num{font-weight:600;font-size:.9rem;color:var(--text-primary, #1f2937)}.anomaly-panel__digit-bars{display:flex;flex-direction:column;gap:2px}.anomaly-panel__digit-bar{height:8px;border-radius:2px;min-width:2px;transition:width .3s ease}.anomaly-panel__digit-bar--observed{background:var(--primary-color, #2563eb)}.anomaly-panel__digit-bar--expected{background:var(--gray-400, #9ca3af)}.anomaly-panel__digit-pct{font-size:.75rem;color:var(--text-secondary, #6b7280);text-align:right;font-family:monospace}.anomaly-panel__footer{display:flex;justify-content:flex-end;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-color, #e5e7eb);font-size:.75rem;color:var(--text-tertiary, #9ca3af)}@media (max-width: 640px){.anomaly-panel__header{flex-direction:column;align-items:flex-start}.anomaly-panel__summary{flex-direction:column;align-items:center}.anomaly-panel__score{padding-right:0;padding-bottom:1rem;border-right:none;border-bottom:1px solid var(--border-color, #e5e7eb)}.anomaly-panel__stats{justify-content:center}.anomaly-panel__actions{flex-direction:column;align-items:flex-start;gap:.5rem}}.drift-panel{background:var(--card-bg, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e5e7eb);padding:1.5rem;margin-bottom:1.5rem}.drift-panel--loading{min-height:200px}.drift-panel__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.drift-panel__title{display:flex;align-items:center;gap:1rem}.drift-panel__title h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1f2937)}.drift-panel__baseline-badge{font-size:.8rem;padding:.25rem .75rem;background:var(--primary-light, #dbeafe);color:var(--primary-color, #2563eb);border-radius:12px;font-weight:500}.drift-panel__actions{display:flex;gap:.75rem}.drift-panel__btn{padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.drift-panel__btn--primary{background:var(--primary-color, #2563eb);color:#fff}.drift-panel__btn--primary:hover:not(:disabled){background:var(--primary-dark, #1d4ed8)}.drift-panel__btn--primary:disabled{background:var(--gray-300, #d1d5db);cursor:not-allowed}.drift-panel__btn--secondary{background:var(--gray-100, #f3f4f6);color:var(--text-primary, #1f2937);border:1px solid var(--border-color, #e5e7eb)}.drift-panel__btn--secondary:hover{background:var(--gray-200, #e5e7eb)}.drift-panel__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:2rem;color:var(--text-secondary, #6b7280)}.drift-panel__loading .spinner{width:32px;height:32px;border:3px solid var(--gray-200, #e5e7eb);border-top-color:var(--primary-color, #2563eb);border-radius:50%;animation:spin .8s linear infinite}.drift-panel__error{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--error-light, #fee2e2);color:var(--error-color, #dc2626);border-radius:8px;margin-bottom:1rem}.drift-panel__error button{background:none;border:none;color:inherit;cursor:pointer;font-size:1.25rem;padding:0 .5rem}.drift-panel__empty{text-align:center;padding:3rem 2rem;color:var(--text-secondary, #6b7280)}.drift-panel__empty-icon{font-size:3rem;margin-bottom:1rem}.drift-panel__empty h4{margin:0 0 .5rem;font-size:1.1rem;color:var(--text-primary, #1f2937)}.drift-panel__empty p{margin:0;font-size:.9rem}.drift-panel__modal{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.drift-panel__modal-content{background:#fff;padding:1.5rem;border-radius:12px;max-width:400px;width:90%}.drift-panel__modal-content h4{margin:0 0 .5rem}.drift-panel__modal-content p{color:var(--text-secondary, #6b7280);font-size:.9rem;margin-bottom:1rem}.drift-panel__input{width:100%;padding:.75rem;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:.95rem;margin-bottom:1rem}.drift-panel__input:focus{outline:none;border-color:var(--primary-color, #2563eb);box-shadow:0 0 0 2px var(--primary-light, #dbeafe)}.drift-panel__modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.drift-panel__summary{display:flex;gap:2rem;padding:1.25rem;background:var(--bg-secondary, #f9fafb);border-radius:10px;margin-bottom:1.5rem;flex-wrap:wrap}.drift-panel__score{display:flex;flex-direction:column;align-items:center;padding-right:2rem;border-right:1px solid var(--border-color, #e5e7eb)}.drift-panel__score-value{font-size:2.5rem;font-weight:700}.drift-panel__score-label{font-size:.8rem;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em}.drift-panel__stats{display:flex;gap:2rem;flex-wrap:wrap}.drift-panel__stat{display:flex;flex-direction:column;align-items:center}.drift-panel__stat-value{font-size:1.5rem;font-weight:600}.drift-panel__stat-label{font-size:.75rem;color:var(--text-secondary, #6b7280)}.drift-severity--none{color:var(--success-color, #16a34a)}.drift-severity--minor{color:var(--info-color, #2563eb)}.drift-severity--moderate{color:var(--warning-color, #d97706)}.drift-severity--significant{color:var(--error-color, #dc2626)}.drift-panel__columns h4{margin:0 0 1rem;font-size:1rem;color:var(--text-primary, #1f2937)}.drift-panel__column-list{display:flex;flex-direction:column;gap:.5rem}.drift-panel__column{border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.drift-panel__column:hover{box-shadow:0 2px 8px #0000000d}.drift-panel__column--expanded{border-color:var(--primary-color, #2563eb)}.drift-panel__column-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-secondary, #f9fafb);cursor:pointer}.drift-panel__column-info{display:flex;align-items:center;gap:.75rem}.drift-panel__column-name{font-weight:600;color:var(--text-primary, #1f2937)}.drift-panel__column-type{font-size:.75rem;padding:.15rem .5rem;background:var(--gray-200, #e5e7eb);border-radius:4px;color:var(--text-secondary, #6b7280)}.drift-panel__column-status{display:flex;align-items:center;gap:.75rem}.drift-panel__severity-badge{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;font-weight:500}.drift-panel__severity-badge.drift-severity--none{background:var(--success-light, #dcfce7)}.drift-panel__severity-badge.drift-severity--minor{background:var(--info-light, #dbeafe)}.drift-panel__severity-badge.drift-severity--moderate{background:var(--warning-light, #fef3c7)}.drift-panel__severity-badge.drift-severity--significant{background:var(--error-light, #fee2e2)}.drift-panel__expand-icon{font-size:.7rem;color:var(--text-secondary, #6b7280)}.drift-panel__column-details{padding:1rem;background:#fff;border-top:1px solid var(--border-color, #e5e7eb)}.drift-panel__metric{margin-bottom:1rem}.drift-panel__metric-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.drift-panel__metric-name{font-weight:600;font-size:.9rem;color:var(--text-primary, #1f2937)}.drift-panel__metric-value{font-weight:700;font-family:monospace}.drift-panel__interpretation{font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0 0 .75rem;line-height:1.4}.drift-panel__chart{display:flex;gap:4px;height:60px;padding:.5rem 0}.drift-panel__bar-group{display:flex;flex-direction:column;align-items:center;flex:1;min-width:20px}.drift-panel__bar-container{display:flex;align-items:flex-end;gap:2px;height:50px;width:100%}.drift-panel__bar{flex:1;min-width:8px;border-radius:2px 2px 0 0;transition:height .3s ease}.drift-panel__bar--baseline{background:var(--gray-400, #9ca3af)}.drift-panel__bar--current{background:var(--primary-color, #2563eb)}.drift-panel__bar-label{font-size:.6rem;color:var(--text-tertiary, #9ca3af);margin-top:2px}.drift-panel__recommendation{font-size:.85rem;padding:.75rem;background:var(--info-light, #dbeafe);border-radius:6px;color:var(--info-color, #2563eb)}.drift-panel__footer{display:flex;justify-content:space-between;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--border-color, #e5e7eb);font-size:.75rem;color:var(--text-tertiary, #9ca3af);flex-wrap:wrap;gap:.5rem}@media (max-width: 640px){.drift-panel__header{flex-direction:column;align-items:flex-start}.drift-panel__summary{flex-direction:column;align-items:center}.drift-panel__score{padding-right:0;padding-bottom:1rem;border-right:none;border-bottom:1px solid var(--border-color, #e5e7eb)}.drift-panel__stats{justify-content:center}}.textual-quality-panel{background:var(--bg-secondary, #1a1d23);border-radius:12px;padding:24px;margin-bottom:24px}.textual-quality-panel h3{color:var(--text-primary, #ffffff);font-size:1.25rem;font-weight:600;margin:0 0 8px;display:flex;align-items:center;gap:8px}.textual-quality-panel h3 .icon{font-size:1.5rem}.panel-description{color:var(--text-secondary, #8b8d98);font-size:.875rem;margin:0 0 20px;line-height:1.5}.textual-upload-section{background:var(--bg-tertiary, #22252d);border:2px dashed var(--border-color, #2d3139);border-radius:8px;padding:24px;text-align:center;margin-bottom:20px;transition:border-color .2s ease}.textual-upload-section:hover{border-color:var(--accent-color, #6366f1)}.textual-upload-section input[type=file]{display:none}.upload-label{display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;color:var(--text-secondary, #8b8d98)}.upload-label .upload-icon{font-size:2.5rem;color:var(--accent-color, #6366f1)}.upload-label span{font-size:.875rem}.upload-label .browse-link{color:var(--accent-color, #6366f1);text-decoration:underline}.selected-file{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;padding:8px 16px;background:var(--bg-primary, #13151a);border-radius:6px;color:var(--text-primary, #ffffff);font-size:.875rem}.selected-file .file-icon{color:var(--success-color, #22c55e)}.analyze-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 24px;background:var(--accent-color, #6366f1);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s ease;margin-top:16px}.analyze-btn:hover:not(:disabled){background:var(--accent-hover, #5558e3)}.analyze-btn:disabled{opacity:.5;cursor:not-allowed}.textual-loading{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px;color:var(--text-secondary, #8b8d98)}.textual-loading .spinner{width:40px;height:40px;border:3px solid var(--border-color, #2d3139);border-top-color:var(--accent-color, #6366f1);border-radius:50%;animation:spin 1s linear infinite}.textual-error{display:flex;align-items:center;gap:12px;padding:16px;background:#ef44441a;border:1px solid var(--error-color, #ef4444);border-radius:8px;color:var(--error-color, #ef4444);margin-bottom:20px}.textual-error .error-icon{font-size:1.5rem}.textual-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;margin-bottom:24px}.summary-stat{background:var(--bg-tertiary, #22252d);border-radius:8px;padding:16px;text-align:center}.summary-stat .stat-value{font-size:1.75rem;font-weight:700;color:var(--text-primary, #ffffff);margin-bottom:4px}.summary-stat .stat-label{font-size:.75rem;color:var(--text-secondary, #8b8d98);text-transform:uppercase;letter-spacing:.05em}.summary-stat.severity-none .stat-value{color:var(--success-color, #22c55e)}.summary-stat.severity-low .stat-value{color:var(--info-color, #3b82f6)}.summary-stat.severity-medium .stat-value{color:var(--warning-color, #f59e0b)}.summary-stat.severity-high .stat-value{color:var(--error-color, #ef4444)}.textual-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border-color, #2d3139);margin-bottom:20px;overflow-x:auto;padding-bottom:1px}.textual-tab{padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #8b8d98);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.textual-tab:hover{color:var(--text-primary, #ffffff)}.textual-tab.active{color:var(--accent-color, #6366f1);border-bottom-color:var(--accent-color, #6366f1)}.textual-tab-content{min-height:200px}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.section-title{font-size:1rem;font-weight:600;color:var(--text-primary, #ffffff);margin:0}.section-badge{padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:500}.section-badge.severity-none{background:#22c55e26;color:var(--success-color, #22c55e)}.section-badge.severity-low{background:#3b82f626;color:var(--info-color, #3b82f6)}.section-badge.severity-medium{background:#f59e0b26;color:var(--warning-color, #f59e0b)}.section-badge.severity-high{background:#ef444426;color:var(--error-color, #ef4444)}.column-results{display:flex;flex-direction:column;gap:12px}.column-result-card{background:var(--bg-tertiary, #22252d);border-radius:8px;overflow:hidden}.column-result-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;transition:background .2s ease}.column-result-header:hover{background:var(--bg-primary, #13151a)}.column-name{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--text-primary, #ffffff)}.column-name .column-icon{color:var(--accent-color, #6366f1)}.expand-icon{color:var(--text-secondary, #8b8d98);transition:transform .2s ease}.column-result-card.expanded .expand-icon{transform:rotate(180deg)}.column-result-body{padding:0 16px 16px;display:none}.column-result-card.expanded .column-result-body{display:block}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:12px}.metric-item{background:var(--bg-primary, #13151a);border-radius:6px;padding:12px}.metric-label{font-size:.75rem;color:var(--text-secondary, #8b8d98);margin-bottom:4px}.metric-value{font-size:1.125rem;font-weight:600;color:var(--text-primary, #ffffff)}.metric-value.good{color:var(--success-color, #22c55e)}.metric-value.moderate{color:var(--warning-color, #f59e0b)}.metric-value.poor{color:var(--error-color, #ef4444)}.interpretation-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:500;margin-top:8px}.interpretation-badge.good{background:#22c55e26;color:var(--success-color, #22c55e)}.interpretation-badge.moderate{background:#3b82f626;color:var(--info-color, #3b82f6)}.interpretation-badge.poor{background:#ef444426;color:var(--error-color, #ef4444)}.interpretation-badge.limited{background:#f59e0b26;color:var(--warning-color, #f59e0b)}.readability-scores{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.readability-score{background:var(--bg-primary, #13151a);border-radius:6px;padding:12px}.readability-score .score-name{font-size:.75rem;color:var(--text-secondary, #8b8d98);margin-bottom:4px}.readability-score .score-value{font-size:1.25rem;font-weight:600;color:var(--text-primary, #ffffff)}.readability-score .score-interpretation{font-size:.7rem;color:var(--text-tertiary, #6b6e7a);margin-top:4px}.grade-level{background:var(--bg-primary, #13151a);border-radius:6px;padding:12px;text-align:center;grid-column:span 2}.grade-level .level-value{font-size:1.5rem;font-weight:700;color:var(--accent-color, #6366f1)}.grade-level .level-label{font-size:.75rem;color:var(--text-secondary, #8b8d98)}.topics-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.topic-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-primary, #13151a);border-radius:6px}.topic-terms{display:flex;flex-wrap:wrap;gap:6px}.topic-term{padding:2px 8px;background:#6366f126;border-radius:4px;font-size:.75rem;color:var(--accent-color, #6366f1)}.topic-weight{font-size:.875rem;font-weight:500;color:var(--text-secondary, #8b8d98)}.coherence-score{display:flex;align-items:center;gap:8px;margin-top:12px;padding:12px;background:var(--bg-primary, #13151a);border-radius:6px}.coherence-score .score-bar{flex:1;height:8px;background:var(--border-color, #2d3139);border-radius:4px;overflow:hidden}.coherence-score .score-fill{height:100%;background:var(--accent-color, #6366f1);border-radius:4px;transition:width .3s ease}.coherence-score .score-text{font-size:.875rem;font-weight:600;color:var(--text-primary, #ffffff);min-width:50px;text-align:right}.tfidf-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-top:12px}.tfidf-stat{background:var(--bg-primary, #13151a);border-radius:6px;padding:12px;text-align:center}.tfidf-stat .stat-value{font-size:1.25rem;font-weight:600;color:var(--text-primary, #ffffff)}.tfidf-stat .stat-label{font-size:.75rem;color:var(--text-secondary, #8b8d98);margin-top:4px}.top-terms{margin-top:16px}.top-terms h5{font-size:.875rem;color:var(--text-primary, #ffffff);margin:0 0 12px}.term-list{display:flex;flex-wrap:wrap;gap:8px}.term-tag{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-tertiary, #22252d);border-radius:16px;font-size:.8rem}.term-tag .term-text{color:var(--text-primary, #ffffff)}.term-tag .term-score{color:var(--text-secondary, #8b8d98);font-size:.7rem}.no-text-columns{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px;text-align:center;color:var(--text-secondary, #8b8d98)}.no-text-columns .empty-icon{font-size:3rem;opacity:.5}.no-text-columns p{margin:0;max-width:300px}.no-results{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px;text-align:center;color:var(--text-secondary, #8b8d98)}.no-results .empty-icon{font-size:2.5rem;opacity:.5}@media (max-width: 768px){.textual-quality-panel{padding:16px}.textual-tabs{gap:4px}.textual-tab{padding:10px 14px;font-size:.8rem}.textual-summary{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:1fr 1fr}.readability-scores{grid-template-columns:1fr}.grade-level{grid-column:span 1}}.dq-category__overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:dqFadeIn .2s ease}@keyframes dqFadeIn{0%{opacity:0}to{opacity:1}}.dq-category__drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:560px;background-color:#fff;z-index:1000;display:flex;flex-direction:column;animation:dqSlideIn .3s ease;box-shadow:-4px 0 24px #00000026}@keyframes dqSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.dq-category__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.dq-category__header-content{flex:1;min-width:0}.dq-category__title{margin:0;font-size:18px;font-weight:600;color:#111827;line-height:1.4}.dq-category__name{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.85rem;font-weight:600;background:#e0f2fe;color:#0369a1;border-radius:6px}.dq-category__icon{font-size:1rem}.dq-category__close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.dq-category__close-btn:hover{background-color:#f3f4f6;color:#111827}.dq-category__close-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.dq-category__content{flex:1;overflow-y:auto;padding:20px 24px}.dq-category__section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f3f4f6}.dq-category__section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.dq-category__section--notice{background:#fefce8;margin:0 -24px;padding:16px 24px;border-bottom:none}.dq-category__section-title{margin:0 0 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.dq-category__result{padding:16px;background:#f9fafb;border-radius:8px}.dq-category__score-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.dq-category__score{display:flex;flex-direction:column}.dq-category__score-value{font-size:2rem;font-weight:700;color:#111827;line-height:1}.dq-category__score-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.dq-category__status{padding:6px 14px;font-size:.85rem;font-weight:600;border-radius:6px}.dq-category__status--excellent{background:#dcfce7;color:#166534}.dq-category__status--good{background:#dbeafe;color:#1e40af}.dq-category__status--poor{background:#fff7ed;color:#c2410c}.dq-category__status--critical{background:#fee2e2;color:#991b1b}.dq-category__result-summary{margin:0;font-size:.9rem;color:#374151;line-height:1.6}.dq-category__findings-list{margin:0;padding:0;list-style:none}.dq-category__finding{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;margin-bottom:8px;border-radius:6px;font-size:.9rem;line-height:1.5}.dq-category__finding:last-child{margin-bottom:0}.dq-category__finding--critical{background:#fee2e2;color:#991b1b}.dq-category__finding--warning{background:#fff7ed;color:#9a3412}.dq-category__finding--info{background:#f0f9ff;color:#075985}.dq-category__finding--positive{background:#f0fdf4;color:#166534}.dq-category__finding-icon{flex-shrink:0;font-size:1rem}.dq-category__finding-message{flex:1}.dq-category__finding-value{font-size:.8rem;opacity:.8}.dq-category__definition{padding:16px;background:#eff6ff;border-radius:8px;border-left:4px solid #3b82f6;margin-bottom:16px}.dq-category__definition-name{margin:0 0 8px;font-size:1rem;font-weight:600;color:#1e40af}.dq-category__definition-text{margin:0;font-size:.9rem;color:#374151;line-height:1.6;white-space:pre-line}.dq-category__rationale{margin-bottom:16px}.dq-category__rationale h4{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#374151}.dq-category__rationale p{margin:0;font-size:.9rem;color:#4b5563;line-height:1.6;white-space:pre-line}.dq-category__thresholds h4{margin:0 0 12px;font-size:.9rem;font-weight:600;color:#374151}.dq-category__thresholds-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.dq-category__threshold{padding:10px 8px;border-radius:6px;text-align:center}.dq-category__threshold-label{display:block;font-size:.7rem;font-weight:500;margin-bottom:4px}.dq-category__threshold-value{display:block;font-size:.85rem;font-weight:600}.dq-category__threshold--excellent{background:#dcfce7;color:#166534}.dq-category__threshold--good{background:#dbeafe;color:#1e40af}.dq-category__threshold--poor{background:#fff7ed;color:#c2410c}.dq-category__threshold--critical{background:#fee2e2;color:#991b1b}.dq-category__submetrics{display:flex;flex-direction:column;gap:12px}.dq-category__submetric{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;border-left-width:4px}.dq-category__submetric--excellent{border-left-color:#22c55e}.dq-category__submetric--good{border-left-color:#3b82f6}.dq-category__submetric--warning{border-left-color:#f97316}.dq-category__submetric--critical{border-left-color:#ef4444}.dq-category__submetric--na{border-left-color:#9ca3af;opacity:.7}.dq-category__submetric-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.dq-category__submetric-name{font-size:.9rem;font-weight:600;color:#374151}.dq-category__submetric-value{font-size:1rem;font-weight:700;color:#111827}.dq-category__submetric-unit{font-size:.8rem;font-weight:400;color:#6b7280;margin-left:2px}.dq-category__submetric-details{margin:0;font-size:.8rem;color:#6b7280;line-height:1.4}.dq-category__citations{display:flex;flex-direction:column;gap:12px}.dq-category__citation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.dq-category__citation-header{display:flex;gap:8px;margin-bottom:6px;font-size:.8rem}.dq-category__citation-framework{font-weight:600;color:#1d4ed8}.dq-category__citation-document{color:#374151}.dq-category__citation-section{margin:0 0 8px;font-size:.8rem;color:#6b7280}.dq-category__citation-text{margin:0 0 8px;padding:8px 12px;background:#f9fafb;border-left:3px solid #3b82f6;font-style:italic;font-size:.85rem;color:#374151;line-height:1.5}.dq-category__citation-link{font-size:.8rem;color:#3b82f6;text-decoration:none;font-weight:500}.dq-category__citation-link:hover{text-decoration:underline}.dq-category__recommendations{display:flex;flex-direction:column;gap:12px}.dq-category__recommendation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;border-left-width:4px}.dq-category__priority--high{border-left-color:#ef4444}.dq-category__priority--medium{border-left-color:#f97316}.dq-category__priority--low{border-left-color:#3b82f6}.dq-category__recommendation-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.dq-category__recommendation-priority{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:4px;background:#f3f4f6;color:#6b7280}.dq-category__priority--high .dq-category__recommendation-priority{background:#fee2e2;color:#991b1b}.dq-category__priority--medium .dq-category__recommendation-priority{background:#fff7ed;color:#c2410c}.dq-category__priority--low .dq-category__recommendation-priority{background:#dbeafe;color:#1e40af}.dq-category__recommendation-title{font-size:.9rem;font-weight:600;color:#374151}.dq-category__recommendation-description{margin:0 0 6px;font-size:.85rem;color:#4b5563;line-height:1.5}.dq-category__recommendation-impact{font-size:.75rem;color:#6b7280}.dq-category__show-more{display:block;width:100%;padding:10px;margin-top:8px;background:none;border:1px dashed #d1d5db;border-radius:6px;color:#3b82f6;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease}.dq-category__show-more:hover{background:#f9fafb;border-color:#3b82f6}.dq-category__notice{display:flex;align-items:flex-start;gap:8px}.dq-category__notice-icon{font-size:1.2rem}.dq-category__notice p{margin:0;font-size:.9rem;color:#854d0e;line-height:1.5}.dq-category__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.dq-category__loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:dqSpin .8s linear infinite;margin-bottom:12px}@keyframes dqSpin{to{transform:rotate(360deg)}}.dq-category__error{padding:40px 20px;text-align:center;color:#dc2626}.dq-category__empty{padding:40px 20px;text-align:center;color:#6b7280}.dq-category__footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb}.dq-category__footer-link{font-size:.875rem;color:#3b82f6;text-decoration:none;font-weight:500}.dq-category__footer-link:hover{text-decoration:underline}.dq-category__footer-btn{padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.dq-category__footer-btn:hover{background:#2563eb}.dq-category__footer-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (max-width: 640px){.dq-category__drawer{max-width:100%}.dq-category__header,.dq-category__content{padding:16px}.dq-category__footer{padding:12px 16px;flex-direction:column;gap:12px}.dq-category__thresholds-grid{grid-template-columns:repeat(2,1fr)}}.ml-readiness-results{max-width:1200px;margin:0 auto;padding:1.5rem}.ml-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:2rem}.ml-readiness-results.loading .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.ml-readiness-results .spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#8b5cf6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.ml-readiness-results .loading-state p{font-size:1rem;font-weight:500;color:#1e293b;margin:0 0 .25rem}.ml-readiness-results .loading-state small{font-size:.875rem;color:#64748b}.ml-readiness-results.error .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.ml-readiness-results .error-state .error-icon{font-size:3rem;color:#ef4444;margin-bottom:1rem}.ml-readiness-results .error-state h3{margin:0 0 .5rem;font-size:1.25rem;color:#1e293b}.ml-readiness-results .error-state p{margin:0 0 1.5rem;color:#64748b}.ml-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;background:linear-gradient(135deg,#7c3aed,#8b5cf6);border-radius:12px;margin-bottom:1.5rem;color:#fff}.ml-header-left h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.ml-header-left .header-icon{font-size:1.75rem}.ml-header .ml-subtitle{margin:0;font-size:.9375rem;opacity:.9}.ml-overall-score{display:flex;flex-direction:column;align-items:center}.ml-overall-score .score-circle{width:80px;height:80px;border-radius:50%;background:#fff3;display:flex;flex-direction:column;align-items:center;justify-content:center;border:3px solid rgba(255,255,255,.4)}.ml-overall-score .score-value{font-size:1.75rem;font-weight:700;line-height:1}.ml-overall-score .score-label{font-size:.75rem;opacity:.8}.ml-overall-score .score-title{font-size:.75rem;font-weight:500;margin-top:.5rem;text-transform:uppercase;letter-spacing:.05em}.ml-overall-score .score-circle.score-good{border-color:#4ade80;background:#4ade8033}.ml-overall-score .score-circle.score-fair{border-color:#fbbf24;background:#fbbf2433}.ml-overall-score .score-circle.score-poor{border-color:#f87171;background:#f8717133}.ml-dimensions{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:1.5rem}@media (max-width: 1024px){.ml-dimensions{grid-template-columns:1fr}}.dimension-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.dimension-header{display:flex;align-items:center;gap:.5rem;padding:1rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.dimension-header .dimension-icon{font-size:1.25rem}.dimension-header .dimension-score{font-size:1.25rem;font-weight:700}.dimension-score.score-good{color:#22c55e}.dimension-score.score-fair{color:#f59e0b}.dimension-score.score-poor{color:#ef4444}.dimension-header .dimension-badge{padding:.25rem .625rem;border-radius:4px;font-size:.6875rem;font-weight:700;letter-spacing:.05em}.dimension-badge.risk-low{background:#dcfce7;color:#166534}.dimension-badge.risk-medium{background:#fef3c7;color:#92400e}.dimension-badge.risk-high{background:#fecaca;color:#991b1b}.dimension-body{padding:1.25rem}.metric-row{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.metric-row:last-child{border-bottom:none}.metric-label{font-size:.8125rem;color:#64748b;min-width:80px}.metric-status{font-size:.6875rem;font-weight:600;padding:.125rem .5rem;border-radius:4px;text-transform:uppercase}.metric-status.status-sufficient,.metric-status.status-complete,.metric-status.status-balanced,.metric-status.status-good{background:#dcfce7;color:#166534}.metric-status.status-marginal,.metric-status.status-acceptable,.metric-status.status-skewed,.metric-status.status-warning{background:#fef3c7;color:#92400e}.metric-status.status-insufficient,.metric-status.status-incomplete,.metric-status.status-severely_imbalanced,.metric-status.status-severely_skewed{background:#fecaca;color:#991b1b}.metric-value{margin-left:auto;font-size:.875rem;font-weight:500;color:#1e293b}.metric-value.score-good{color:#22c55e}.metric-value.score-fair{color:#f59e0b}.metric-value.score-poor{color:#ef4444}.class-distribution{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.class-distribution h4{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:#475569}.distribution-bars{display:flex;flex-direction:column;gap:.375rem}.distribution-bar .bar-label{font-size:.75rem;color:#64748b;min-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.distribution-bar .bar-track{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.distribution-bar .bar-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:4px;transition:width .3s ease}.distribution-bar .bar-value{font-size:.75rem;font-weight:500;color:#1e293b;min-width:40px;text-align:right}.warning-box{display:flex;gap:.625rem;padding:.75rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-top:1rem}.warning-box .warning-icon{color:#f59e0b;flex-shrink:0}.warning-box .warning-content strong{display:block;font-size:.8125rem;color:#92400e;margin-bottom:.25rem}.warning-box .warning-content p{margin:0;font-size:.75rem;color:#a16207}.demographics-summary{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.demographics-summary h4{margin:0 0 .5rem;font-size:.8125rem;font-weight:600;color:#475569}.demographic-row{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.8125rem}.demographic-row .demo-name{color:#64748b;text-transform:capitalize;min-width:60px}.demographic-row .demo-status{font-size:.625rem;font-weight:600;padding:.125rem .375rem;border-radius:3px;text-transform:uppercase}.demographic-row .demo-detail{margin-left:auto;color:#475569}.feature-types{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-bottom:1rem}.feature-type{display:flex;flex-direction:column;align-items:center;padding:.625rem;background:#f8fafc;border-radius:8px}.feature-type .type-icon{font-size:1.25rem;margin-bottom:.25rem}.feature-type .type-count{font-size:1.125rem;font-weight:700;color:#1e293b}.feature-type .type-label{font-size:.625rem;color:#64748b;text-transform:uppercase}.correlation-pairs{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.correlation-pairs h4{margin:0 0 .5rem;font-size:.8125rem;font-weight:600;color:#475569}.correlation-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem 0;font-size:.8125rem}.correlation-row .corr-columns{color:#475569}.correlation-row .corr-value{font-weight:600}.correlation-row .corr-value.high{color:#ef4444}.correlation-row .corr-value.medium{color:#f59e0b}.feature-issues{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.feature-issues h4{margin:0 0 .5rem;font-size:.8125rem;font-weight:600;color:#475569}.issue-row{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;border-radius:4px;margin-bottom:.25rem;font-size:.8125rem}.issue-row.severity-critical{background:#fef2f2}.issue-row.severity-high,.issue-row.severity-warning{background:#fffbeb}.issue-row .issue-column{font-weight:500;color:#1e293b}.issue-row .issue-type{font-size:.75rem;color:#64748b;text-transform:capitalize}.ml-recommendations{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem}.ml-recommendations h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem}.ml-recommendations .section-icon{font-size:1.25rem}.recommendations-list{display:flex;flex-direction:column;gap:.75rem}.recommendation-item{padding:1rem;border-radius:8px;border-left:4px solid #e2e8f0;background:#f8fafc}.recommendation-item.priority-critical{border-left-color:#ef4444;background:#fef2f2}.recommendation-item.priority-high{border-left-color:#f97316;background:#fff7ed}.recommendation-item.priority-medium{border-left-color:#eab308;background:#fefce8}.recommendation-item.priority-low{border-left-color:#22c55e;background:#f0fdf4}.recommendation-item .rec-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.recommendation-item .rec-priority{font-size:1rem}.recommendation-item .rec-category{font-size:.875rem}.recommendation-item .rec-title{font-size:.9375rem;font-weight:600;color:#1e293b}.recommendation-item .rec-description{margin:0;font-size:.8125rem;color:#475569;line-height:1.5}.ml-readiness-results .btn{display:inline-flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.ml-readiness-results .btn-primary{background:#8b5cf6;color:#fff}.ml-readiness-results .btn-primary:hover{background:#7c3aed}.tsd-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.tsd-details{padding:.75rem;background:#f8fafc;border-radius:8px;margin-top:.5rem}.tsd-gauge{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.tsd-bar{flex:1;height:12px;background:#e2e8f0;border-radius:6px;overflow:hidden}.tsd-fill{height:100%;border-radius:6px;transition:width .3s ease}.tsd-fill.tsd-no_bias{background:linear-gradient(90deg,#22c55e,#4ade80)}.tsd-fill.tsd-slight_bias{background:linear-gradient(90deg,#84cc16,#a3e635)}.tsd-fill.tsd-moderate_bias{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.tsd-fill.tsd-severe_bias{background:linear-gradient(90deg,#ef4444,#f87171)}.tsd-value{font-size:.875rem;font-weight:600;color:#1e293b;min-width:50px;text-align:right}.tsd-groups{display:block;font-size:.75rem;color:#64748b}.metric-status.status-no-bias{background:#dcfce7;color:#166534}.metric-status.status-slight-bias{background:#ecfccb;color:#3f6212}.metric-status.status-moderate-bias{background:#fef3c7;color:#92400e}.metric-status.status-severe-bias{background:#fecaca;color:#991b1b}.discrimination-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.discrimination-details{padding:.75rem;background:#f8fafc;border-radius:8px;margin-top:.5rem}.discrimination-details .metric-row{padding:.375rem 0}.significant-attributes{margin-top:.75rem;padding-top:.75rem;border-top:1px dashed #e2e8f0}.significant-attributes .attr-label{display:block;font-size:.75rem;color:#64748b;margin-bottom:.5rem}.significant-attributes .attr-tags{display:flex;flex-wrap:wrap;gap:.375rem}.significant-attributes .attr-tag{font-size:.6875rem;padding:.25rem .5rem;border-radius:4px;font-weight:500}.significant-attributes .attr-tag.warning{background:#fef3c7;color:#92400e}.analyzed-attrs{display:block;margin-top:.5rem;font-size:.6875rem;color:#94a3b8}.metric-status.status-low{background:#dcfce7;color:#166534}.metric-status.status-medium{background:#fef3c7;color:#92400e}.metric-status.status-high{background:#fed7aa;color:#9a3412}.metric-status.status-critical{background:#fecaca;color:#991b1b}.feature-importance{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.feature-importance h4{margin:0 0 .75rem;font-size:.8125rem;font-weight:600;color:#475569;display:flex;align-items:center;gap:.375rem}.feature-importance .section-icon{font-size:1rem}.importance-bars{display:flex;flex-direction:column;gap:.5rem}.importance-bar{display:grid;grid-template-columns:minmax(120px,200px) 1fr 45px;gap:.75rem;align-items:center;padding:.25rem 0}.importance-bar .bar-label{font-size:.8rem;color:#475569;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:default;transition:all .2s ease}.importance-bar:hover .bar-label{white-space:normal;word-break:break-word;overflow:visible;background:#f8fafc;padding:.25rem .5rem;border-radius:4px;box-shadow:0 2px 4px #0000001a;position:relative;z-index:10}.importance-bar .bar-track{flex:1;height:10px;background:#e2e8f0;border-radius:5px;overflow:hidden}.importance-bar .bar-fill{height:100%;border-radius:5px;transition:width .3s ease}.importance-bar .bar-fill.high{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.importance-bar .bar-fill.medium{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.importance-bar .bar-fill.low{background:linear-gradient(90deg,#94a3b8,#cbd5e1)}.importance-bar .bar-value{font-size:.75rem;font-weight:500;color:#1e293b;min-width:35px;text-align:right}.top-features{margin-top:.75rem;padding:.5rem .75rem;background:#f0f9ff;border-radius:6px;font-size:.75rem;color:#0369a1}.top-features strong{color:#0c4a6e}.privacy-card .dimension-header{background:linear-gradient(135deg,#1e1b4b,#312e81)}.risk-critical{background:#ef4444;color:#fff}.privacy-reid-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.privacy-reid-section h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#475569}.reid-risks{display:flex;flex-direction:column;gap:.5rem}.reid-risk-row{display:flex;align-items:center;gap:.5rem}.reid-label{width:80px;font-size:.75rem;color:#64748b}.reid-bar-track{flex:1;height:10px;background:#f1f5f9;border-radius:.25rem;overflow:hidden}.reid-bar-fill{height:100%;border-radius:.25rem;transition:width .3s ease}.reid-bar-fill.low{background:linear-gradient(90deg,#22c55e,#16a34a)}.reid-bar-fill.medium{background:linear-gradient(90deg,#f97316,#ea580c)}.reid-bar-fill.high{background:linear-gradient(90deg,#ef4444,#dc2626)}.reid-value{width:45px;font-size:.75rem;font-weight:600;color:#334155;text-align:right}.qi-summary{display:flex;gap:.75rem;margin-top:1rem}.qi-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:.5rem;border-radius:.375rem;background:#f8fafc}.qi-count{font-size:1.25rem;font-weight:700;color:#1e293b}.qi-label{font-size:.625rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.phase3-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:1.5rem;overflow:hidden}.phase3-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#0f766e,#14b8a6);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.phase3-header:hover{background:linear-gradient(135deg,#115e59,#0d9488)}.phase3-header h3{margin:0;font-size:1rem;font-weight:600;flex:1;display:flex;align-items:center;gap:.5rem}.phase3-header .section-icon{font-size:1.25rem}.phase3-header .toggle-icon{font-size:.75rem;opacity:.8}.tier-status{padding:.25rem .625rem;border-radius:4px;font-size:.6875rem;font-weight:600;letter-spacing:.025em}.tier-status.tier-complete{background:#4ade8033;color:#dcfce7;border:1px solid rgba(74,222,128,.3)}.tier-status.tier-partial{background:#fbbf2433;color:#fef3c7;border:1px solid rgba(251,191,36,.3)}.tier-status.tier-basic{background:#94a3b833;color:#e2e8f0;border:1px solid rgba(148,163,184,.3)}.tier-status.tier-none{background:#64748b33;color:#cbd5e1;border:1px solid rgba(100,116,139,.3)}.phase3-summary-row{display:flex;flex-wrap:wrap;gap:.75rem;padding:1rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.summary-metric{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0;min-width:140px}.summary-metric.good{border-color:#22c55e;background:#f0fdf4}.summary-metric.fair{border-color:#f59e0b;background:#fffbeb}.summary-metric.warning{border-color:#ef4444;background:#fef2f2}.summary-metric .metric-icon{font-size:1rem}.summary-metric .metric-name{font-size:.6875rem;color:#64748b;text-transform:uppercase;letter-spacing:.025em}.summary-metric .metric-value{margin-left:auto;font-size:.8125rem;font-weight:600;color:#1e293b}.phase3-details{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.25rem}@media (max-width: 768px){.phase3-details{grid-template-columns:1fr}}.phase3-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.phase3-card h4{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem}.phase3-card .card-icon{font-size:1rem}.phase3-description{margin:0 0 .75rem;font-size:.8125rem;color:#64748b;line-height:1.4}.phase3-metrics{margin-bottom:.75rem}.phase3-metrics .metric-row{padding:.375rem 0}.separability-pairs{display:flex;flex-direction:column;gap:.375rem}.sep-pair{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;background:#fff;border-radius:4px;font-size:.8125rem}.sep-pair .pair-name{color:#475569}.sep-pair .pair-interpretation{padding:.125rem .375rem;border-radius:3px;font-size:.6875rem;font-weight:500;text-transform:capitalize}.sep-pair .pair-interpretation.excellent,.sep-pair .pair-interpretation.good{background:#dcfce7;color:#166534}.sep-pair .pair-interpretation.moderate{background:#fef3c7;color:#92400e}.sep-pair .pair-interpretation.poor,.sep-pair .pair-interpretation.overlapping{background:#fecaca;color:#991b1b}.disparities-list h5{margin:0 0 .5rem;font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.025em}.disparity-row{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;background:#fff;border-radius:4px;font-size:.8125rem;margin-bottom:.25rem}.disparity-row.significant{border-left:3px solid #ef4444;background:#fef2f2}.disparity-row .attr-name{flex:1;color:#1e293b;font-weight:500}.disparity-row .cdd-value{color:#7c3aed;font-weight:600;font-family:monospace;font-size:.75rem}.disparity-row .p-value{color:#64748b;font-family:monospace;font-size:.6875rem}.mislabels-list{overflow-x:auto}.mislabels-table{width:100%;border-collapse:collapse;font-size:.8125rem}.mislabels-table th,.mislabels-table td{padding:.5rem;text-align:left;border-bottom:1px solid #e2e8f0}.mislabels-table th{background:#f1f5f9;font-weight:600;color:#475569;font-size:.6875rem;text-transform:uppercase;letter-spacing:.025em}.mislabels-table td{color:#1e293b}.mislabels-table tr:hover td{background:#f8fafc}.influence-list{display:flex;flex-direction:column;gap:.375rem}.influence-row{display:flex;align-items:center;gap:.75rem;padding:.5rem .625rem;background:#fff;border-radius:4px;font-size:.8125rem;border-left:3px solid #f59e0b}.influence-row .row-idx{color:#1e293b;font-weight:500;min-width:60px}.influence-row .influence-score{color:#7c3aed;font-family:monospace;font-size:.75rem}.influence-row .shapley-value{color:#0d9488;font-family:monospace;font-size:.75rem;margin-left:auto}.phase3-card{border-left:4px solid #0d9488}.phase3-card .sample-size-header{background:linear-gradient(135deg,#0f766e,#14b8a6)}.phase3-card .separability-header{background:linear-gradient(135deg,#6d28d9,#8b5cf6)}.phase3-card .mislabel-header{background:linear-gradient(135deg,#b45309,#f59e0b)}.phase3-card .discrimination-header{background:linear-gradient(135deg,#7c3aed,#a78bfa)}.phase3-card .influence-header{background:linear-gradient(135deg,#dc2626,#f87171)}.phase3-interpretation{margin:.75rem 0 0;padding:.625rem .75rem;background:#f0fdfa;border-radius:6px;font-size:.8125rem;color:#0d9488;line-height:1.4}.separability-pairs-inline{margin-top:.75rem;display:flex;flex-direction:column;gap:.375rem}.sep-pair-inline{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;background:#f8fafc;border-radius:4px;font-size:.8125rem}.sep-pair-inline .pair-name{color:#1e293b;font-weight:500}.sep-pair-inline .pair-interp{font-size:.75rem;font-weight:500;padding:.125rem .5rem;border-radius:3px}.sep-pair-inline .pair-interp.excellent{background:#dcfce7;color:#166534}.sep-pair-inline .pair-interp.good{background:#dbeafe;color:#1e40af}.sep-pair-inline .pair-interp.moderate{background:#fef3c7;color:#92400e}.sep-pair-inline .pair-interp.poor{background:#fee2e2;color:#991b1b}.mislabels-preview{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.mislabel-row-inline{display:grid;grid-template-columns:60px 1fr 50px;gap:.5rem;align-items:center;padding:.375rem .5rem;background:#fef3c7;border-radius:4px;font-size:.75rem}.mislabel-row-inline .row-num{color:#92400e;font-weight:600}.mislabel-row-inline .label-change{color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mislabel-row-inline .confidence{color:#78350f;font-weight:500;text-align:right}.disparities-preview{margin-top:.75rem}.disparity-label{font-size:.75rem;color:#64748b;display:block;margin-bottom:.375rem}.disparity-attrs{display:flex;flex-wrap:wrap;gap:.375rem}.disparity-attr{padding:.25rem .625rem;background:#fee2e2;color:#991b1b;border-radius:4px;font-size:.75rem;font-weight:500}.influence-preview{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.influence-row-inline{display:flex;justify-content:space-between;align-items:center;padding:.375rem .5rem;background:#fef2f2;border-left:3px solid #f59e0b;border-radius:4px;font-size:.75rem}.influence-row-inline .row-num{color:#1e293b;font-weight:600}.influence-row-inline .influence-val{color:#7c3aed;font-family:monospace}.dimension-badge.status-good{background:#dcfce7;color:#166534}.dimension-badge.status-fair{background:#fef3c7;color:#92400e}.dimension-badge.status-warning{background:#fee2e2;color:#991b1b}.metric-value.good{color:#16a34a}.metric-value.fair{color:#ca8a04}.metric-value.poor{color:#dc2626}.metric-value.warning{color:#dc2626;font-weight:600}.phase3-toggle-section{margin:1.5rem 0;padding:1rem 1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:8px}.phase3-toggle-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}.phase3-checkbox{width:18px;height:18px;margin-top:2px;accent-color:#7c3aed;cursor:pointer}.phase3-toggle-text{display:flex;flex-direction:column;gap:.25rem;font-weight:500;color:#1e293b;font-size:.9375rem}.phase3-toggle-hint{font-size:.8125rem;font-weight:400;color:#64748b}.phase3-analysis-section{margin-top:1.5rem;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.phase3-section-title{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:600;color:#1e293b;margin:0 0 1rem;padding-bottom:.75rem;border-bottom:2px solid #e2e8f0}.phase3-section-title .section-icon{font-size:1.25rem}.phase3-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;margin-bottom:1rem;overflow:hidden}.phase3-card-header{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.25rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.phase3-icon{font-size:1.125rem}.phase3-card-header h4{margin:0;font-size:.9375rem;font-weight:600;color:#1e293b;flex:1}.phase3-badge{padding:.25rem .625rem;border-radius:6px;font-size:.75rem;font-weight:500}.phase3-badge.badge-good{background:#dcfce7;color:#166534}.phase3-badge.badge-warning{background:#fef3c7;color:#92400e}.phase3-badge.badge-concern{background:#fee2e2;color:#991b1b}.phase3-card-body{padding:1rem 1.25rem}.phase3-metrics-row{display:flex;gap:2rem;flex-wrap:wrap}.phase3-metric{display:flex;flex-direction:column;gap:.25rem;min-width:120px}.phase3-metric .metric-label{font-size:.8125rem;font-weight:500;color:#64748b}.phase3-metric .metric-value{font-size:1.25rem;font-weight:700;font-family:JetBrains Mono,monospace}.phase3-metric .metric-value.good{color:#16a34a}.phase3-metric .metric-value.warning{color:#ca8a04}.phase3-metric .metric-hint{font-size:.75rem;color:#94a3b8}.phase3-details{margin-top:1rem;padding-top:1rem;border-top:1px dashed #e2e8f0}.phase3-expand-btn{background:transparent;border:none;padding:.5rem 0;font-size:.8125rem;color:#7c3aed;cursor:pointer;font-weight:500}.phase3-expand-btn:hover{color:#5b21b6}.phase3-detail-list{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.phase3-detail-list .detail-header{font-size:.8125rem;font-weight:500;color:#64748b;margin:0 0 .5rem}.phase3-detail-item{display:flex;gap:1rem;align-items:center;padding:.5rem .75rem;background:#f8fafc;border-radius:6px;font-size:.8125rem}.phase3-detail-item .detail-label{font-weight:500;color:#1e293b;min-width:100px}.phase3-detail-item .detail-value{font-family:JetBrains Mono,monospace;color:#7c3aed}.phase3-detail-item .detail-interp{color:#64748b;font-style:italic}.phase3-detail-item .detail-shapley{color:#059669;font-family:JetBrains Mono,monospace}.phase3-warning{display:flex;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:.75rem 1rem;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:0 6px 6px 0}.phase3-warning .warning-icon{flex-shrink:0}.phase3-warning .warning-text{font-size:.8125rem;color:#92400e}@media (max-width: 768px){.phase3-metrics-row{flex-direction:column;gap:1rem}.phase3-detail-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.ml-metric-info-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;padding:0;font-size:11px;font-weight:700;color:#7c3aed;background:#f5f3ff;border:1px solid #c4b5fd;border-radius:50%;cursor:pointer;transition:all .15s ease;flex-shrink:0;vertical-align:middle}.ml-metric-info-btn:hover{background:#ede9fe;border-color:#7c3aed;color:#5b21b6}.ml-metric-info-btn:focus{outline:2px solid #7c3aed;outline-offset:2px}.ml-metric-info-btn:active{background:#ddd6fe}.ml-metric-info-btn--inline{width:16px;height:16px;font-size:10px;margin-left:4px}.privacy-results{display:flex;flex-direction:column;gap:1.5rem;padding:1rem;font-family:var(--font-family, system-ui, -apple-system, sans-serif)}.privacy-results.loading,.privacy-results.error{min-height:300px}.privacy-results .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.privacy-results .spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#6366f1;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.privacy-results .loading-state p{margin:0;font-size:1rem;color:#334155}.privacy-results .loading-state small{color:#64748b;margin-top:.5rem}.privacy-results .error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.privacy-results .error-icon{font-size:3rem;color:#ef4444;margin-bottom:1rem}.privacy-results .error-state h3{margin:0 0 .5rem;color:#1e293b}.privacy-results .error-state p{margin:0 0 1rem;color:#64748b}.privacy-results .btn{padding:.5rem 1rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s}.privacy-results .btn-primary{background:#6366f1;color:#fff;border:none}.privacy-results .btn-primary:hover{background:#4f46e5}.privacy-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#1e1b4b,#312e81);border-radius:.75rem;color:#fff}.privacy-header-left h2{margin:0;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.privacy-header-left .header-icon{font-size:1.5rem}.privacy-subtitle{margin:.25rem 0 0;font-size:.875rem;opacity:.8}.privacy-overall-score{display:flex;flex-direction:column;align-items:center;gap:.5rem}.score-circle{display:flex;align-items:baseline;justify-content:center;width:80px;height:80px;border-radius:50%;background:#ffffff1a;border:3px solid currentColor}.score-circle.score-good{color:#22c55e}.score-circle.score-fair{color:#eab308}.score-circle.score-warning{color:#f97316}.score-circle.score-poor{color:#ef4444}.score-value{font-size:1.75rem;font-weight:700}.score-label{font-size:.75rem;opacity:.7}.risk-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.risk-badge.risk-low{background:#22c55e;color:#fff}.risk-badge.risk-medium{background:#eab308;color:#1e293b}.risk-badge.risk-high{background:#f97316;color:#fff}.risk-badge.risk-critical{background:#ef4444;color:#fff}.privacy-dimensions{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.dimension-card{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;overflow:hidden;box-shadow:0 1px 3px #0000000d}.dimension-header{display:flex;align-items:center;gap:.5rem;padding:1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.dimension-icon{font-size:1.25rem}.dimension-header h3{margin:0;font-size:1rem;font-weight:600;color:#1e293b;flex:1}.dimension-badge{padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600}.dimension-badge.pass{background:#dcfce7;color:#166534}.dimension-badge.fail{background:#fee2e2;color:#991b1b}.dimension-body{padding:1rem}.metric-row{display:flex;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.metric-row:last-of-type{border-bottom:none}.metric-label{flex:1;font-size:.875rem;color:#64748b}.metric-value{font-size:.875rem;font-weight:500;color:#334155}.metric-status{padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;margin-right:.5rem}.metric-status.status-pass{background:#dcfce7;color:#166534}.metric-status.status-fail{background:#fee2e2;color:#991b1b}.k-distribution{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.k-distribution h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#475569}.distribution-bars{display:flex;flex-direction:column;gap:.5rem}.distribution-bar{display:flex;align-items:center;gap:.5rem}.bar-label{width:40px;font-size:.75rem;color:#64748b;font-family:monospace}.bar-track{flex:1;height:16px;background:#f1f5f9;border-radius:.25rem;overflow:hidden}.bar-fill{height:100%;border-radius:.25rem;transition:width .3s ease}.bar-fill.safe{background:linear-gradient(90deg,#22c55e,#16a34a)}.bar-fill.at-risk{background:linear-gradient(90deg,#f97316,#ea580c)}.bar-value{width:40px;font-size:.75rem;color:#64748b;text-align:right;font-family:monospace}.interpretation{margin-top:1rem;padding:.75rem;background:#f8fafc;border-radius:.5rem;border-left:3px solid #6366f1}.interpretation p{margin:0;font-size:.875rem;color:#475569;line-height:1.5}.qi-summary{display:flex;gap:1rem;margin-bottom:1rem}.qi-stat{flex:1;display:flex;flex-direction:column;align-items:center;padding:.75rem;border-radius:.5rem;background:#f8fafc}.qi-stat.high{border:2px solid #ef4444}.qi-stat.medium{border:2px solid #f97316}.qi-stat.low{border:2px solid #22c55e}.qi-count{font-size:1.5rem;font-weight:700;color:#1e293b}.qi-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.qi-list{margin-top:1rem}.qi-list h4{margin:0 0 .5rem;font-size:.875rem;font-weight:600;color:#475569}.qi-row{display:flex;align-items:center;padding:.5rem;border-radius:.25rem;margin-bottom:.25rem}.qi-row.type-direct{background:#fef2f2}.qi-row.type-quasi{background:#fff7ed}.qi-row.type-sensitive{background:#fefce8}.qi-row.type-safe{background:#f0fdf4}.qi-column{flex:1;font-size:.875rem;font-weight:500;color:#334155;font-family:monospace}.qi-type{padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;margin-right:.5rem}.qi-type.type-direct{background:#ef4444;color:#fff}.qi-type.type-quasi{background:#f97316;color:#fff}.qi-type.type-sensitive{background:#eab308;color:#1e293b}.qi-type.type-safe{background:#22c55e;color:#fff}.qi-uniqueness{font-size:.75rem;color:#64748b}.warning-box{display:flex;gap:.75rem;padding:.75rem;background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;margin-top:1rem}.warning-icon{color:#ef4444;font-size:1.25rem;flex-shrink:0}.warning-content strong{display:block;font-size:.875rem;color:#991b1b;margin-bottom:.25rem}.warning-content p{margin:0;font-size:.75rem;color:#7f1d1d;font-family:monospace}.risk-types{display:flex;flex-direction:column;gap:.75rem}.risk-type{display:flex;align-items:center;gap:.75rem}.risk-type .risk-label{width:120px;font-size:.875rem;color:#64748b}.risk-bar-track{flex:1;height:12px;background:#f1f5f9;border-radius:.25rem;overflow:hidden}.risk-bar-fill{height:100%;border-radius:.25rem;transition:width .3s ease}.risk-bar-fill.low{background:linear-gradient(90deg,#22c55e,#16a34a)}.risk-bar-fill.medium{background:linear-gradient(90deg,#f97316,#ea580c)}.risk-bar-fill.high{background:linear-gradient(90deg,#ef4444,#dc2626)}.risk-type .risk-value{width:50px;font-size:.75rem;font-weight:600;color:#334155;text-align:right}.privacy-recommendations{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem 1.5rem}.privacy-recommendations h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:.5rem}.section-icon{font-size:1.25rem}.recommendations-list{display:flex;flex-direction:column;gap:.5rem}.recommendation-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f0f9ff;border-radius:.5rem;border-left:3px solid #0ea5e9}.recommendation-item p{margin:0;font-size:.875rem;color:#334155;line-height:1.5}.privacy-metadata{display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem 1rem;background:#f8fafc;border-radius:.5rem;font-size:.75rem;color:#64748b}.privacy-metadata span{display:flex;align-items:center;gap:.25rem}@media (max-width: 768px){.privacy-header{flex-direction:column;text-align:center;gap:1rem}.privacy-dimensions{grid-template-columns:1fr}.qi-summary{flex-direction:column}.risk-type .risk-label{width:100px;font-size:.75rem}.privacy-metadata{flex-direction:column;gap:.5rem}}@media (prefers-color-scheme: dark){.privacy-results{color:#e2e8f0}.dimension-card{background:#1e293b;border-color:#334155}.dimension-header{background:#0f172a;border-color:#334155}.dimension-header h3{color:#f1f5f9}.metric-label{color:#94a3b8}.metric-value{color:#e2e8f0}.metric-row,.k-distribution{border-color:#334155}.k-distribution h4,.qi-list h4{color:#94a3b8}.bar-track,.risk-bar-track{background:#334155}.bar-label,.bar-value{color:#94a3b8}.interpretation{background:#0f172a;border-left-color:#818cf8}.interpretation p{color:#cbd5e1}.qi-stat{background:#0f172a}.qi-count{color:#f1f5f9}.qi-label{color:#94a3b8}.qi-column{color:#e2e8f0}.qi-uniqueness{color:#94a3b8}.warning-box{background:#ef44441a;border-color:#ef44444d}.warning-content strong{color:#fca5a5}.warning-content p{color:#fecaca}.privacy-recommendations{background:#1e293b;border-color:#334155}.privacy-recommendations h3{color:#f1f5f9}.recommendation-item{background:#0ea5e91a;border-left-color:#38bdf8}.recommendation-item p{color:#e2e8f0}.privacy-metadata{background:#0f172a;color:#94a3b8}}.settings-page{max-width:1200px;margin:0 auto;padding:2rem;background:#fff!important;min-height:100vh}.settings-page,.settings-page *{--bg: #ffffff;--pane: #f8f9fa;--text: #1a1a2e;--muted: #6b7280;--line: #e5e7eb}.back-to-home{display:inline-flex;align-items:center;gap:.5rem;color:#2563eb;text-decoration:none;font-size:.875rem;font-weight:500;margin-bottom:1.5rem;padding:.5rem 0;transition:color .15s ease}.back-to-home:hover{color:#1d4ed8}.back-to-home .back-arrow{font-size:1.125rem;transition:transform .15s ease}.back-to-home:hover .back-arrow{transform:translate(-3px)}.settings-header{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:flex-start}.settings-header-content{flex:1}.settings-header-actions{display:flex;align-items:center;gap:.75rem}.settings-header h1{font-size:2rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .5rem;border-bottom:none!important;padding-bottom:0!important}.settings-subtitle{color:#4b5563!important;font-size:1rem;margin:0}.settings-tabs{display:flex;gap:.5rem;border-bottom:2px solid var(--color-border, #e0e0e0);margin-bottom:2rem}.settings-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;text-decoration:none;color:#666!important;font-weight:500;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .2s ease}.settings-tab:hover{color:#2563eb!important;background:#f5f5f5}.settings-tab.active{color:#2563eb!important;border-bottom-color:#2563eb}.tab-icon{font-size:1.25rem}.tab-label{font-size:.95rem}.settings-content{min-height:400px;background:#fff;color:#1a1a1a}.settings-content h1,.settings-content h2,.settings-content h3,.settings-content h4,.settings-content h5,.settings-content h6{color:#1a1a1a!important}.settings-content p{color:#4a4a4a}.settings-landing{padding:2rem 0}.settings-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.settings-card{display:block;padding:2rem;background:#fff;border:1px solid var(--color-border, #e0e0e0);border-radius:12px;text-decoration:none;transition:all .2s ease}.settings-card:hover{border-color:var(--color-primary, #2563eb);box-shadow:0 4px 12px #2563eb26;transform:translateY(-2px)}.settings-card .card-icon{font-size:3rem;margin-bottom:1rem}.settings-card h3{font-size:1.25rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .5rem}.settings-card p{color:#666!important;font-size:.95rem;margin:0;line-height:1.5}.settings-content .ontology-management,.settings-content .ontology-management *{--bg: #0f172a;--pane: #1e293b;--text: #f8fafc;--muted: #94a3b8;--line: #334155;color:#f8fafc}.settings-content .ontology-management .stat-value{color:#fff!important;background:transparent!important}.settings-content .ontology-management .stat-label{color:#94a3b8!important}.settings-content .ontology-management .ontology-name,.settings-content .ontology-management h3{color:#f8fafc!important}.settings-content .ontology-management .ontology-description{color:#e2e8f0!important}.settings-content .ontology-management .metadata-item,.settings-content .ontology-management .ontology-metadata{color:#94a3b8!important}@media (max-width: 768px){.settings-page{padding:1rem}.settings-tabs{flex-wrap:wrap}.settings-tab{padding:.5rem 1rem;font-size:.9rem}.settings-cards{grid-template-columns:1fr}}.ontology-management{max-width:1400px;margin:0 auto;padding:2rem;min-height:100vh;background:#0f172a!important}.ontology-management,.ontology-management *{--bg: #0f172a;--pane: #1e293b;--text: #f8fafc;--muted: #94a3b8;--line: #334155}.management-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:2rem}.management-header h1{margin:0 0 .5rem;font-size:2rem;font-weight:700;color:#f8fafc!important}.management-header .subtitle{margin:0;font-size:1rem;color:#94a3b8!important;line-height:1.5}.header-right{display:flex;gap:1rem;flex-shrink:0}.status-tabs{display:flex;gap:.5rem;padding:.5rem;background:#1e293b;border-radius:12px;margin-bottom:1.5rem}.status-tab{padding:.75rem 1.5rem;background:transparent;border:none;border-radius:8px;font-size:.875rem;font-weight:500;color:#94a3b8;cursor:pointer;transition:all .2s ease}.status-tab:hover{color:#e2e8f0;background:#ffffff0d}.status-tab.active{background:#3b82f6;color:#fff}.search-section{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem}.search-input{flex:1;max-width:400px;padding:.75rem 1rem;background:#1e293b;border:1px solid #334155;border-radius:8px;font-size:.875rem;color:#f8fafc;transition:border-color .2s}.search-input:focus{outline:none;border-color:#3b82f6}.search-input::placeholder{color:#94a3b8}.results-count{font-size:.875rem;color:#94a3b8}.ontology-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem}.ontology-card{background:#1e293b!important;border:1px solid #334155;border-radius:12px;padding:1.5rem;transition:all .2s ease;overflow:hidden;box-sizing:border-box}.ontology-card:hover{border-color:#3b82f6;box-shadow:0 4px 20px #3b82f61a}.ontology-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.ontology-info{flex:1;min-width:0}.ontology-management .ontology-card .ontology-name,.ontology-management .ontology-card h3.ontology-name,h3.ontology-name{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:#f8fafc!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ontology-namespace{font-size:.8125rem;font-family:Monaco,Courier New,monospace;color:#cbd5e1!important}.ontology-description{margin:0 0 1rem;font-size:.875rem;color:#e2e8f0!important;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ontology-stats{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.ontology-management .ontology-card .stat-item,.stat-item{display:inline-flex;align-items:baseline;gap:.25rem}.onto-stat-num{color:#10b981!important;font-weight:700!important;font-size:1rem!important;margin-right:4px}.ontology-management .ontology-card .stat-item .stat-value,.ontology-management .ontology-card .stat-value,.ontology-management .stat-value,.ontology-stats .stat-value,.stat-item .stat-value,span.stat-value,.stat-value{font-size:.875rem;font-weight:600;color:#fff!important;background:transparent!important}.ontology-management .ontology-card .stat-label,.ontology-management .stat-label,span.stat-label{font-size:.6875rem;color:#64748b!important;text-transform:lowercase}.ontology-metadata{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.75rem;font-size:.75rem;color:#94a3b8!important}.metadata-item{color:#94a3b8!important}.metadata-item strong{color:#e2e8f0!important}.ontology-actions{display:flex;gap:.5rem;justify-content:flex-end}.action-menu-container{position:relative}.action-menu{position:absolute;top:100%;right:0;margin-top:.5rem;min-width:160px;background:#1e293b;border:1px solid #334155;border-radius:8px;box-shadow:0 10px 40px #0000004d;z-index:100;overflow:hidden}.action-menu-item{display:block;width:100%;padding:.75rem 1rem;background:transparent;border:none;font-size:.875rem;color:#e2e8f0;text-align:left;cursor:pointer;transition:background .2s}.action-menu-item:hover{background:#334155}.action-menu-item.action-danger{color:#ef4444}.action-menu-item.action-danger:hover{background:#ef44441a}.status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-active{background:#10b98126;color:#10b981}.status-draft{background:#f59e0b26;color:#f59e0b}.status-deprecated{background:#ef444426;color:#ef4444}.wizard-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.wizard-modal{width:100%;max-width:700px;max-height:90vh;background:#1e293b;border:1px solid #334155;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.wizard-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid #334155}.wizard-header h1{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc}.wizard-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;font-size:1.25rem;color:#64748b;cursor:pointer;transition:all .2s}.wizard-close:hover{background:#334155;color:#f8fafc}.wizard-steps{display:flex;align-items:center;justify-content:center;padding:1.5rem 2rem;background:#0f172a80;border-bottom:1px solid #334155}.wizard-step{display:flex;align-items:center;gap:.75rem}.step-number{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#334155;border-radius:50%;font-size:.875rem;font-weight:600;color:#64748b;transition:all .2s}.step-label{font-size:.875rem;color:#64748b;font-weight:500;transition:color .2s}.wizard-step.step-active .step-number{background:#3b82f6;color:#fff}.wizard-step.step-active .step-label{color:#f8fafc}.wizard-step.step-complete .step-number{background:#10b981;color:#fff}.wizard-step.step-complete .step-label{color:#10b981}.step-connector{width:60px;height:2px;background:#334155;margin:0 .75rem;transition:background .2s}.step-connector.connector-complete{background:#10b981}.wizard-body{flex:1;overflow-y:auto;padding:2rem}.wizard-step-content h2{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#f8fafc}.step-description{margin:0 0 1.5rem;font-size:.9375rem;color:#94a3b8;line-height:1.5}.step-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #334155}.upload-dropzone{border:2px dashed #334155;border-radius:12px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .2s ease}.upload-dropzone:hover,.upload-dropzone.dropzone-active{border-color:#3b82f6;background:#3b82f60d}.upload-dropzone.dropzone-has-file{border-style:solid;border-color:#10b981;background:#10b9810d}.hidden-input{display:none}.dropzone-icon{font-size:3rem;margin-bottom:1rem}.dropzone-text{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.dropzone-primary{font-size:1rem;font-weight:600;color:#f8fafc}.dropzone-secondary{font-size:.875rem;color:#94a3b8}.dropzone-formats{font-size:.75rem;color:#94a3b8}.file-preview{display:flex;align-items:center;gap:1rem;padding:1rem;background:#10b9811a;border-radius:8px}.file-icon{font-size:2.5rem}.file-details{flex:1;text-align:left}.file-name{display:block;font-weight:600;color:#f8fafc;margin-bottom:.25rem}.file-size{font-size:.8125rem;color:#94a3b8}.file-remove{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#ef44441a;border:none;border-radius:50%;color:#ef4444;font-size:1rem;cursor:pointer;transition:all .2s}.file-remove:hover{background:#ef444433}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group-full{grid-column:1 / -1}.form-group label{font-size:.875rem;font-weight:500;color:#e2e8f0}.form-group .required{color:#ef4444}.form-group input,.form-group textarea,.form-group select{padding:.75rem 1rem;background:#0f172a;border:1px solid #334155;border-radius:8px;font-size:.875rem;color:#f8fafc;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#3b82f6}.form-group input::placeholder,.form-group textarea::placeholder{color:#94a3b8}.form-group input.input-error,.form-group textarea.input-error{border-color:#ef4444}.form-hint{font-size:.75rem;color:#94a3b8}.error-text{font-size:.75rem;color:#ef4444}.upload-progress{display:flex;flex-direction:column;align-items:center;padding:3rem}.progress-spinner{width:48px;height:48px;border:4px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.progress-text{font-size:1rem;color:#e2e8f0;margin-bottom:1rem}.progress-bar{width:100%;max-width:300px;height:8px;background:#334155;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .3s ease}.progress-percent{font-size:.875rem;font-weight:600;color:#3b82f6}.upload-success,.upload-error{text-align:center;padding:2rem}.success-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;background:#10b98126;border-radius:50%;font-size:2rem;color:#10b981}.upload-success h3{margin:0 0 .25rem;font-size:1.5rem;color:#f8fafc}.success-namespace{font-family:Monaco,Courier New,monospace;font-size:.875rem;color:#64748b}.upload-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}.stat-card{padding:1rem;background:#0f172a80;border:1px solid #334155;border-radius:8px;text-align:center}.upload-status-message{padding:1rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);border-radius:8px;margin-bottom:1rem}.status-draft-badge{display:inline-block;padding:.25rem .5rem;background:#f59e0b26;border-radius:4px;font-size:.75rem;font-weight:600;color:#f59e0b;text-transform:uppercase;margin-bottom:.5rem}.upload-status-message p{margin:0;font-size:.875rem;color:#94a3b8}.error-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;background:#ef444426;border-radius:50%;font-size:2rem;color:#ef4444}.upload-error h3{margin:0 0 .5rem;font-size:1.25rem;color:#f8fafc}.error-message{margin:0;font-size:.875rem;color:#ef4444}.review-section{margin-bottom:1.5rem;padding:1.25rem;background:#0f172a80;border:1px solid #334155;border-radius:8px}.review-section h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#f8fafc}.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.review-item{display:flex;flex-direction:column;gap:.25rem}.review-item-full{grid-column:1 / -1}.review-label{font-size:.75rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.review-value{font-size:.9375rem;color:#e2e8f0}.browser-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.browser-modal{width:100%;max-width:1200px;height:90vh;background:#1e293b;border:1px solid #334155;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.browser-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #334155;background:#0f172a}.browser-title-section h1{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc!important}.browser-namespace{font-size:.8125rem;font-family:Monaco,Courier New,monospace;color:#94a3b8}.browser-actions{display:flex;gap:.75rem;align-items:center}.export-dropdown{position:relative}.export-menu{position:absolute;top:100%;right:0;margin-top:.5rem;min-width:140px;background:#1e293b;border:1px solid #334155;border-radius:8px;box-shadow:0 10px 40px #0000004d;z-index:100;display:none}.export-dropdown:hover .export-menu{display:block}.export-menu button{display:block;width:100%;padding:.75rem 1rem;background:transparent;border:none;font-size:.875rem;color:#e2e8f0;text-align:left;cursor:pointer}.export-menu button:hover{background:#334155}.browser-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;font-size:1.25rem;color:#64748b;cursor:pointer;transition:all .2s}.browser-close:hover{background:#334155;color:#f8fafc}.stats-dashboard{padding:1rem 1.5rem;border-bottom:1px solid #334155;background:#0f172a80}.stats-row{display:flex;gap:1rem;margin-bottom:.75rem}.stats-row:last-child{margin-bottom:0}.stats-card{flex:1;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#1e293b;border:1px solid #334155;border-radius:8px}.stats-card-small{justify-content:center}.stats-icon{font-size:1.5rem}.stats-content{display:flex;flex-direction:column}.stats-value{font-size:1.25rem;font-weight:700;color:#f8fafc}.stats-card-small .stats-value{font-size:1rem}.stats-label{font-size:.6875rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.browser-tabs{display:flex;gap:0;border-bottom:1px solid #334155}.browser-tab{padding:.875rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.875rem;font-weight:500;color:#64748b;cursor:pointer;transition:all .2s}.browser-tab:hover{color:#e2e8f0}.browser-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.browser-content{flex:1;display:flex;overflow:hidden}.browser-left-panel{width:400px;border-right:1px solid #334155;display:flex;flex-direction:column}.browser-right-panel{flex:1;overflow-y:auto}.browser-search{padding:1rem;border-bottom:1px solid #334155;position:relative}.browser-search .search-input{width:100%;padding:.75rem 1rem;background:#0f172a;border:1px solid #334155;border-radius:8px;font-size:.875rem;color:#f8fafc}.browser-search .search-input:focus{outline:none;border-color:#3b82f6}.search-results{position:absolute;top:100%;left:1rem;right:1rem;max-height:300px;overflow-y:auto;background:#0f172a;border:1px solid #334155;border-radius:8px;box-shadow:0 10px 40px #0000004d;z-index:50}.search-results-loading,.search-results-empty{padding:1rem;font-size:.875rem;color:#64748b;text-align:center}.search-results-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.spinner-small{width:16px;height:16px;border:2px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.search-result-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .2s}.search-result-item:hover{background:#1e293b}.search-result-content{flex:1;min-width:0}.search-result-label{display:block;font-size:.875rem;font-weight:500;color:#f8fafc}.search-result-definition{display:block;font-size:.75rem;color:#64748b;margin-top:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.deprecated-badge{padding:.125rem .5rem;background:#ef444426;border-radius:4px;font-size:.625rem;font-weight:600;color:#ef4444;text-transform:uppercase}.browser-tree{flex:1;overflow-y:auto;padding:.5rem 0}.tree-empty{padding:2rem;text-align:center;font-size:.875rem;color:#64748b}.tree-node-container{-webkit-user-select:none;user-select:none}.tree-node{display:flex;align-items:center;gap:.5rem;padding:.5rem;cursor:pointer;transition:background .2s}.tree-node:hover{background:#3b82f61a}.tree-node-selected{background:#3b82f633}.tree-toggle{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;font-size:.625rem;color:#64748b;cursor:pointer;flex-shrink:0}.tree-toggle-spacer{visibility:hidden}.tree-type-badge{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:.625rem;font-weight:700;flex-shrink:0}.tree-type-class{background:#3b82f626;color:#3b82f6}.tree-type-property{background:#10b98126;color:#10b981}.tree-type-individual{background:#f59e0b26;color:#f59e0b}.tree-label{flex:1;font-size:.875rem;color:#e2e8f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tree-count{font-size:.75rem;color:#94a3b8}.browser-list{flex:1;overflow-y:auto}.list-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .2s;border-bottom:1px solid #334155}.list-item:hover{background:#3b82f61a}.list-item-selected{background:#3b82f633}.list-label{flex:1;font-size:.875rem;color:#e2e8f0}.property-type-small{font-size:.6875rem;padding:.25rem .5rem;background:#334155;border-radius:4px;color:#94a3b8}.details-panel{padding:1.5rem}.details-panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#64748b}.details-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.details-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.details-type-badge{padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.details-type-class{background:#3b82f626;color:#3b82f6}.details-type-property{background:#10b98126;color:#10b981}.details-type-individual{background:#f59e0b26;color:#f59e0b}.details-title{flex:1;margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc}.details-section{margin-bottom:1.25rem;padding-bottom:1.25rem;border-bottom:1px solid #334155}.details-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.details-section h4{margin:0 0 .5rem;font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.details-uri{display:block;padding:.5rem .75rem;background:#0f172a;border-radius:6px;font-family:Monaco,Courier New,monospace;font-size:.8125rem;color:#3b82f6;word-break:break-all}.details-definition{margin:0;font-size:.9375rem;color:#e2e8f0;line-height:1.6}.details-tags{display:flex;flex-wrap:wrap;gap:.5rem}.details-tag{padding:.375rem .75rem;background:#334155;border-radius:6px;font-size:.8125rem;color:#e2e8f0}.details-list{margin:0;padding-left:1.25rem;font-size:.875rem;color:#e2e8f0}.details-list li{margin-bottom:.25rem}.property-type-badge{display:inline-block;padding:.375rem .75rem;background:#334155;border-radius:6px;font-size:.8125rem;color:#e2e8f0;text-transform:capitalize}.details-pattern{display:block;padding:.5rem .75rem;background:#0f172a;border-radius:6px;font-family:Monaco,Courier New,monospace;font-size:.8125rem;color:#f59e0b}.details-properties-table{width:100%;font-size:.8125rem;border-collapse:collapse}.details-properties-table td{padding:.5rem 0;vertical-align:top;border-bottom:1px solid #334155}.details-properties-table .property-key{font-weight:600;color:#94a3b8;width:40%}.details-properties-table .property-value{color:#e2e8f0}.browser-loading,.browser-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem}.browser-loading p,.browser-error p{margin:0;font-size:1rem;color:#94a3b8}.browser-error h3{margin:0 0 .5rem;font-size:1.25rem;color:#f8fafc}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-primary:disabled{background:#334155;color:#64748b;cursor:not-allowed}.btn-secondary{background:#334155;color:#e2e8f0}.btn-secondary:hover{background:#475569}.btn-lg{padding:1rem 2rem;font-size:1rem}.btn-icon{padding:.5rem;width:36px;height:36px}.btn .icon{font-size:1.25rem}.loading-state,.error-state,.empty-state,.no-results-state{display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;text-align:center}.spinner{width:48px;height:48px;border:4px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading-state p{margin:0;font-size:1rem;color:#94a3b8}.error-icon,.empty-illustration{font-size:4rem;margin-bottom:1rem}.error-state h3,.empty-state h2{margin:0 0 .5rem;font-size:1.5rem;color:#f8fafc}.error-state p,.empty-state p,.no-results-state p{margin:0 0 1.5rem;font-size:1rem;color:#94a3b8;max-width:400px}@media (max-width: 1024px){.ontology-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.browser-left-panel{width:320px}.stats-row{flex-wrap:wrap}.stats-card{flex:1 1 calc(50% - .5rem);min-width:120px}}@media (max-width: 768px){.ontology-management{padding:1rem}.management-header{flex-direction:column}.header-right{width:100%}.header-right .btn{flex:1}.status-tabs{overflow-x:auto;flex-wrap:nowrap}.status-tab{white-space:nowrap}.ontology-grid,.form-grid{grid-template-columns:1fr}.browser-content{flex-direction:column}.browser-left-panel{width:100%;height:50%;border-right:none;border-bottom:1px solid #334155}.upload-stats{grid-template-columns:repeat(2,1fr)}}.browser-graph-fullwidth{flex:1;display:flex;overflow:hidden;height:calc(100vh - 280px);min-height:400px}.ontology-graph-container{flex:1;position:relative;display:flex;background:#0f172a;width:100%;height:100%}.ontology-graph-canvas{position:absolute;inset:0;background:linear-gradient(135deg,#0f172a,#1e293b)}.graph-controls{position:absolute;top:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:10}.graph-control-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#1e293bf2;border:1px solid #334155;border-radius:8px;color:#e2e8f0;font-size:1.25rem;cursor:pointer;transition:all .2s ease}.graph-control-btn:hover{background:#334155;border-color:#3b82f6;color:#f8fafc}.graph-legend{position:absolute;top:1rem;left:1rem;background:#1e293bf2;border:1px solid #334155;border-radius:12px;padding:1rem;min-width:180px;z-index:10;box-shadow:0 4px 16px #0000004d}.graph-legend h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:#f8fafc}.legend-section{margin-bottom:.75rem}.legend-section:last-of-type{margin-bottom:.5rem}.legend-title{display:block;font-size:.6875rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.legend-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:.8125rem;color:#cbd5e1}.legend-node{width:16px;height:16px;border-radius:3px;flex-shrink:0}.legend-node.legend-class{background:#56b4e9;border:2px solid #0072B2}.legend-node.legend-individual{background:#009e73;border:2px solid #00634A;border-radius:50%;width:14px;height:14px}.legend-edge{width:24px;height:3px;flex-shrink:0}.legend-edge.legend-hierarchy{background:#0072b2}.legend-edge.legend-property{background:repeating-linear-gradient(90deg,#D55E00 0px,#D55E00 4px,transparent 4px,transparent 6px);height:2px}.legend-edge.legend-instance{background:#009e73;height:1px}.legend-hint{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #334155;font-size:.6875rem;color:#64748b;font-style:italic}.graph-traversal-panel{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a}.graph-traversal-panel.loading,.graph-traversal-panel.error,.graph-traversal-panel.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:#64748b}.loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.error-icon{font-size:48px;margin-bottom:12px}.retry-button{margin-top:12px;padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:14px}.retry-button:hover{background:#2563eb}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #e2e8f0}.panel-header h3{margin:0;font-size:18px;font-weight:600;color:#1e293b}.analysis-time{font-size:12px;color:#94a3b8}.metrics-insights-section{margin-bottom:24px}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:16px}@media (max-width: 900px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.metrics-grid{grid-template-columns:1fr}}.metric-card{background:#f8fafc;border-radius:8px;padding:16px;text-align:center}.metric-value{font-size:28px;font-weight:700;color:#1e293b;display:flex;align-items:center;justify-content:center;gap:8px}.metric-label{font-size:14px;font-weight:500;color:#475569;margin-top:4px}.metric-sublabel{font-size:12px;color:#94a3b8;margin-top:2px}.status-badge{font-size:10px;padding:2px 8px;border-radius:12px;color:#fff;font-weight:500}.metric-insights{display:flex;flex-direction:column;gap:12px}.insight-card{display:flex;gap:12px;padding:14px 16px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.insight-card.warning{background:#fffbeb;border-color:#fcd34d}.insight-icon{font-size:20px;flex-shrink:0}.insight-content{flex:1;min-width:0}.insight-summary{font-weight:600;font-size:14px;color:#1e293b;margin-bottom:4px}.insight-detail{font-size:13px;color:#64748b;line-height:1.5}.lift-section{background:#f0f9ff;border-radius:8px;padding:20px;margin-bottom:24px}.lift-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:16px}.lift-section h4{margin:0;font-size:16px;font-weight:600;color:#0369a1}.lift-summary-badge{font-size:12px;font-weight:500;color:#fff;padding:4px 12px;border-radius:16px}.lift-comparison{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}.lift-item{text-align:center}.lift-value{font-size:36px;font-weight:700;color:#1e293b}.lift-label{font-size:12px;color:#64748b;margin-top:4px}.lift-vs{font-size:18px;font-weight:500;color:#94a3b8}.lift-factor{display:flex;flex-direction:column;align-items:center;gap:4px}.factor-badge{font-size:24px;font-weight:700;padding:8px 16px;border-radius:8px;color:#fff}.factor-label{font-size:12px;color:#64748b}.lift-section.reachability-limited{background:linear-gradient(135deg,#fef3c7,#fef9c3);border:1px solid #fcd34d}.lift-section.reachability-limited h4{color:#92400e}.lift-factor-dual{display:flex;align-items:center;gap:6px}.factor-badge.raw{font-size:18px;padding:4px 10px;background:#94a3b8;opacity:.8}.factor-arrow{font-size:14px;color:#64748b}.factor-badge.effective{font-size:24px;padding:8px 16px}.factor-label-dual{display:flex;justify-content:space-between;width:100%;margin-top:4px}.label-raw,.label-effective{font-size:10px;color:#64748b;text-transform:uppercase}.label-raw{opacity:.7}.lift-warning{display:flex;align-items:flex-start;gap:10px;margin-top:16px;padding:12px 14px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.lift-warning-icon{font-size:16px;flex-shrink:0}.lift-warning-text{font-size:13px;color:#92400e;line-height:1.5;font-weight:500}.lift-interpretation{text-align:center;color:#475569;font-size:14px;margin-top:16px;margin-bottom:0}.lift-insights{margin-top:16px;display:flex;flex-direction:column;gap:10px}.lift-insight-row{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:#fff9;border-radius:8px}.lift-insight-row.example{background:#fffc;border:1px dashed #93c5fd}.lift-insight-icon{font-size:16px;flex-shrink:0}.lift-insight-text{font-size:13px;color:#334155;line-height:1.5}.lift-methodology{margin-top:16px;padding-top:16px;border-top:1px solid rgba(147,197,253,.3)}.methodology-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;padding:8px 12px;font-size:13px;color:#0369a1;cursor:pointer;border-radius:6px;transition:background .2s}.methodology-toggle:hover{background:#ffffff80}.methodology-icon{font-size:10px;transition:transform .2s}.methodology-content{margin-top:12px;background:#ffffffb3;border-radius:8px;padding:16px;display:flex;flex-direction:column;gap:16px}.methodology-formula{background:#f8fafc;border-radius:8px;padding:14px 16px;border:1px solid #e2e8f0}.formula-title{font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:10px}.formula-equation{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:15px;margin-bottom:8px}.formula-var{background:#e0f2fe;color:#0369a1;padding:4px 10px;border-radius:4px;font-weight:500}.formula-equals,.formula-times{color:#64748b;font-weight:500}.formula-const{background:#f0fdf4;color:#16a34a;padding:4px 10px;border-radius:4px;font-weight:700}.formula-example{font-size:13px;color:#64748b;font-style:italic;margin-top:8px;padding-top:8px;border-top:1px dashed #e2e8f0}.methodology-rationale{background:#f8fafc;border-radius:8px;padding:14px 16px;border:1px solid #e2e8f0}.rationale-title{font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:10px}.rationale-content{font-size:13px;color:#475569;line-height:1.6}.rationale-content p{margin:0 0 10px}.rationale-content p:last-child{margin-bottom:0}.rationale-content ul{margin:10px 0;padding-left:20px}.rationale-content li{margin-bottom:6px}.rationale-content strong{color:#1e293b}.methodology-scale{background:#f8fafc;border-radius:8px;padding:14px 16px;border:1px solid #e2e8f0}.scale-title{font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:12px}.scale-items{display:flex;flex-direction:column;gap:10px}.scale-item{display:flex;align-items:center;gap:12px}.scale-badge{min-width:50px;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff;text-align:center}.scale-label{font-size:13px;font-weight:600;color:#1e293b;min-width:120px}.scale-desc{font-size:12px;color:#64748b;flex:1}.methodology-breakdown{background:#f8fafc;border-radius:8px;padding:14px 16px;border:1px solid #e2e8f0}.breakdown-title{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;text-transform:uppercase;color:#64748b;margin-bottom:12px}.breakdown-total{font-weight:500;text-transform:none;font-size:11px;color:#94a3b8;background:#e2e8f0;padding:2px 8px;border-radius:10px}.breakdown-table{display:flex;flex-direction:column;gap:1px;background:#e2e8f0;border-radius:6px;overflow:hidden}.breakdown-header{display:flex;background:#f1f5f9;font-size:10px;font-weight:600;text-transform:uppercase;color:#64748b}.breakdown-row{display:flex;background:#fff;font-size:12px;align-items:center}.breakdown-row:hover{background:#f8fafc}.breakdown-col{padding:8px 10px}.breakdown-col.type{flex:0 0 130px}.breakdown-col.count,.breakdown-col.joins{flex:0 0 100px;text-align:center}.breakdown-col.rationale{flex:1;color:#64748b;font-size:11px}.rel-type-badge{display:inline-block;padding:3px 8px;background:#e0f2fe;color:#0369a1;border-radius:4px;font-size:11px;font-weight:500}.count-percent{color:#94a3b8;font-size:10px}.joins-badge{display:inline-block;min-width:24px;padding:3px 8px;color:#fff;border-radius:4px;font-size:12px;font-weight:600;text-align:center}.breakdown-summary{display:flex;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px dashed #e2e8f0;flex-wrap:wrap}.summary-label{font-size:12px;font-weight:600;color:#1e293b}.summary-value{font-size:14px;font-weight:700;color:#0369a1;background:#e0f2fe;padding:4px 10px;border-radius:4px}.summary-note{font-size:11px;color:#64748b;font-style:italic}.hop-distribution{margin-bottom:24px;background:#f8fafc;border-radius:8px;padding:20px;border:1px solid #e2e8f0}.hop-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.hop-distribution h4{margin:0;font-size:16px;font-weight:600;color:#1e293b}.hop-total{font-size:12px;color:#64748b;background:#e2e8f0;padding:2px 10px;border-radius:12px}.hop-insight{background:#fff;border-radius:8px;padding:14px 16px;margin-bottom:16px;border:1px solid #e2e8f0}.hop-insight-summary{display:block;font-weight:600;font-size:14px;color:#1e293b;margin-bottom:4px}.hop-insight-detail{display:block;font-size:13px;color:#64748b;line-height:1.5}.distribution-bars{display:flex;flex-direction:column;gap:8px}.bar-container{display:flex;align-items:center;gap:12px}.bar-label{width:70px;font-size:12px;color:#64748b;text-align:right}.bar-wrapper{flex:1;height:20px;background:#e2e8f0;border-radius:4px;overflow:hidden}.bar{height:100%;border-radius:4px;transition:width .3s ease}.bar-count{width:70px;font-size:12px;color:#475569;font-weight:500}.bar-percent{color:#94a3b8;font-weight:400}.hop-legend{display:flex;justify-content:center;gap:20px;margin-top:16px;padding-top:12px;border-top:1px solid #e2e8f0}.legend-item{display:flex;align-items:center;gap:6px;font-size:11px;color:#64748b}.legend-dot{width:10px;height:10px;border-radius:2px}.sample-paths-section{margin-bottom:24px}.sample-paths-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1e293b}.sample-paths{display:flex;flex-direction:column;gap:8px}.sample-path{background:#f8fafc;border-radius:8px;overflow:hidden}.path-header{display:flex;align-items:center;padding:12px 16px;cursor:pointer;transition:background .2s}.path-header:hover{background:#f1f5f9}.path-summary{flex:1;display:flex;align-items:center;gap:8px}.node-label{font-weight:500;color:#1e293b;font-size:13px;font-family:Monaco,Consolas,monospace}.path-arrow{color:#94a3b8}.hop-badge{font-size:11px;padding:2px 8px;background:#e2e8f0;border-radius:12px;color:#64748b;margin-right:8px}.expand-icon{font-size:10px;color:#94a3b8;transition:transform .2s}.expand-icon.expanded{transform:rotate(90deg)}.path-details{padding:12px 16px;background:#f1f5f9;border-top:1px solid #e2e8f0}.path-visualization{display:flex;flex-wrap:wrap;align-items:center;gap:4px}.path-node{background:#fff;padding:4px 10px;border-radius:4px;font-size:12px;font-family:Monaco,Consolas,monospace;color:#1e293b;border:1px solid #e2e8f0}.path-edge{display:flex;align-items:center;color:#94a3b8;font-size:10px}.edge-line{color:#cbd5e1}.edge-label{padding:0 4px;font-style:italic;color:#64748b}.recommendations-section{margin-bottom:16px}.recommendations-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1e293b}.recommendations-list{margin:0;padding-left:20px}.recommendations-list li{color:#475569;font-size:14px;margin-bottom:8px;line-height:1.5}.structured-recommendations{display:flex;flex-direction:column;gap:16px}.recommendation-card{border-radius:8px;border:1px solid #e2e8f0;overflow:hidden}.recommendation-card.severity-high{border-left:4px solid #dc2626}.recommendation-card.severity-medium{border-left:4px solid #d97706}.recommendation-card.severity-low{border-left:4px solid #16a34a}.rec-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.severity-badge{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;color:#fff}.severity-badge.high{background:#dc2626}.severity-badge.medium{background:#d97706}.severity-badge.low{background:#16a34a}.rec-issue{font-weight:600;color:#1e293b;font-size:14px}.rec-body{padding:12px 16px}.rec-row{display:flex;margin-bottom:12px}.rec-row:last-child{margin-bottom:0}.rec-label{width:70px;flex-shrink:0;font-size:11px;font-weight:600;text-transform:uppercase;color:#64748b;padding-top:2px}.rec-content{flex:1;font-size:13px;color:#475569;line-height:1.5}.graph-stats{display:flex;justify-content:center;gap:8px;font-size:12px;color:#94a3b8;padding-top:16px;border-top:1px solid #e2e8f0}.graph-stats .separator{color:#e2e8f0}@media (prefers-color-scheme: dark){.graph-traversal-panel{background:#1e293b;box-shadow:0 2px 4px #0000004d}.panel-header h3,.metric-value,.lift-value,.node-label,.hop-distribution h4,.sample-paths-section h4,.recommendations-section h4{color:#f1f5f9}.metric-card{background:#334155}.lift-section{background:#0f172a}.lift-section h4{color:#38bdf8}.lift-section.reachability-limited{background:linear-gradient(135deg,#422006,#451a03);border-color:#854d0e}.lift-section.reachability-limited h4{color:#fcd34d}.lift-warning{background:#422006;border-color:#854d0e}.lift-warning-text{color:#fcd34d}.factor-badge.raw{background:#475569}.factor-arrow{color:#94a3b8}.sample-path{background:#334155}.path-header:hover{background:#475569}.path-details{background:#1e293b;border-top-color:#475569}.path-node{background:#334155;border-color:#475569;color:#f1f5f9}.bar-wrapper{background:#475569}.bar-percent{color:#64748b}.hop-legend{border-top-color:#475569}.insight-card{background:#334155;border-color:#475569}.insight-card.warning{background:#422006;border-color:#854d0e}.insight-summary{color:#f1f5f9}.insight-detail{color:#94a3b8}.hop-distribution{background:#334155;border-color:#475569}.hop-total{background:#475569;color:#94a3b8}.hop-insight{background:#1e293b;border-color:#475569}.hop-insight-summary{color:#f1f5f9}.hop-insight-detail{color:#94a3b8}.lift-insight-row{background:#1e293b99}.lift-insight-row.example{background:#1e293bcc;border-color:#1e3a5f}.lift-insight-text{color:#cbd5e1}.lift-methodology{border-top-color:#3b82f64d}.methodology-toggle{color:#38bdf8}.methodology-toggle:hover{background:#1e293b80}.methodology-content{background:#1e293bb3}.methodology-formula,.methodology-rationale,.methodology-scale{background:#1e293b;border-color:#475569}.formula-title,.rationale-title,.scale-title{color:#94a3b8}.formula-var{background:#1e3a5f;color:#38bdf8}.formula-const{background:#14532d;color:#4ade80}.formula-example{color:#94a3b8;border-top-color:#475569}.rationale-content{color:#cbd5e1}.rationale-content strong,.scale-label{color:#f1f5f9}.scale-desc{color:#94a3b8}.methodology-breakdown{background:#1e293b;border-color:#475569}.breakdown-total{background:#475569;color:#94a3b8}.breakdown-table{background:#475569}.breakdown-header{background:#334155}.breakdown-row{background:#1e293b}.breakdown-row:hover{background:#334155}.breakdown-col.rationale{color:#94a3b8}.rel-type-badge{background:#1e3a5f;color:#38bdf8}.count-percent{color:#64748b}.breakdown-summary{border-top-color:#475569}.summary-label{color:#f1f5f9}.summary-value{background:#1e3a5f;color:#38bdf8}.summary-note{color:#94a3b8}.recommendation-card{border-color:#475569}.rec-header{background:#334155;border-bottom-color:#475569}.rec-issue{color:#f1f5f9}.rec-body{background:#1e293b}.rec-content{color:#cbd5e1}}.rec-show-me{margin-top:8px;padding-top:12px;border-top:1px solid #e2e8f0}.show-me-button{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;transition:background .2s}.show-me-button:hover{background:#2563eb}.show-me-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.show-me-modal{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.show-me-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0}.show-me-header h4{margin:0;font-size:18px;font-weight:600;color:#1e293b}.show-me-close{width:32px;height:32px;border:none;background:#f1f5f9;border-radius:8px;cursor:pointer;font-size:20px;color:#64748b;display:flex;align-items:center;justify-content:center;transition:background .2s}.show-me-close:hover{background:#e2e8f0;color:#1e293b}.show-me-body{padding:20px;overflow-y:auto;flex:1}.show-me-description{margin:0 0 16px;color:#64748b;font-size:14px;line-height:1.6}.show-me-empty{color:#94a3b8;font-style:italic;text-align:center;padding:20px}.cluster-list{display:flex;flex-direction:column;gap:16px}.cluster-item{background:#f8fafc;border-radius:8px;padding:16px;border:1px solid #e2e8f0}.cluster-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cluster-name{font-weight:600;color:#1e293b;font-size:14px}.cluster-size{font-size:12px;color:#64748b;background:#e2e8f0;padding:2px 8px;border-radius:12px}.cluster-concepts{display:flex;flex-wrap:wrap;gap:8px}.concept-chip{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:8px 12px;max-width:200px}.concept-chip.more{background:#f1f5f9;color:#64748b;font-size:12px;display:flex;align-items:center}.concept-label{display:block;font-weight:500;font-size:13px;color:#1e293b;font-family:Monaco,Consolas,monospace}.concept-definition{display:block;font-size:11px;color:#64748b;margin-top:4px;line-height:1.4}.pair-list{display:flex;flex-direction:column;gap:12px}.pair-item{background:#f8fafc;border-radius:8px;padding:14px;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:12px}.pair-item.disconnected{border-left:3px solid #dc2626}.pair-item.connected{border-left:3px solid #16a34a}.pair-concepts{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.pair-concept{flex:1;min-width:0}.pair-concept .concept-label,.pair-concept .concept-definition{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pair-separator{font-size:18px;color:#94a3b8;flex-shrink:0}.pair-status{font-size:11px;padding:4px 10px;border-radius:12px;font-weight:500;white-space:nowrap}.pair-status.no-path{background:#fef2f2;color:#dc2626}.pair-status.has-path{background:#f0fdf4;color:#16a34a}.bridge-list{display:flex;flex-direction:column;gap:16px}.bridge-item{background:#f8fafc;border-radius:8px;padding:16px;border:1px solid #e2e8f0;border-left:3px solid #3b82f6}.bridge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.bridge-clusters{font-size:12px;color:#64748b;font-weight:500}.bridge-score{font-size:11px;padding:2px 8px;background:#dbeafe;color:#2563eb;border-radius:12px;font-weight:500}.bridge-concepts{display:flex;align-items:center;gap:12px;margin-bottom:12px}.bridge-concept{flex:1;background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:10px}.bridge-concept.from{border-left:3px solid #f59e0b}.bridge-concept.to{border-left:3px solid #8b5cf6}.bridge-arrow{font-size:20px;color:#3b82f6;flex-shrink:0}.bridge-reason{font-size:13px;color:#475569;background:#f1f5f9;padding:10px 12px;border-radius:6px;line-height:1.5}.reason-label{font-weight:600;color:#1e293b}@media (prefers-color-scheme: dark){.rec-show-me{border-top-color:#475569}.show-me-modal{background:#1e293b}.show-me-header{border-bottom-color:#475569}.show-me-header h4{color:#f1f5f9}.show-me-close{background:#334155;color:#94a3b8}.show-me-close:hover{background:#475569;color:#f1f5f9}.show-me-description{color:#94a3b8}.cluster-item,.pair-item,.bridge-item{background:#334155;border-color:#475569}.cluster-name,.concept-label,.reason-label{color:#f1f5f9}.cluster-size{background:#475569;color:#94a3b8}.concept-chip{background:#1e293b;border-color:#475569}.concept-chip.more{background:#475569}.bridge-concept{background:#1e293b;border-color:#475569}.bridge-reason{background:#0f172a;color:#cbd5e1}.bridge-score{background:#1e3a5f}}.report-export-button{position:relative;display:inline-block}.report-export-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#1e40af;color:#e2e8f0;border:1px solid #2563eb;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.report-export-trigger:hover:not(:disabled){background:#2563eb;border-color:#3b82f6}.report-export-trigger:disabled{opacity:.5;cursor:not-allowed}.report-export-chevron{transition:transform .15s ease}.report-export-button:has(.report-export-dropdown) .report-export-chevron{transform:rotate(180deg)}.report-export-spinner{display:inline-block;width:14px;height:14px;border:2px solid #60a5fa;border-top-color:transparent;border-radius:50%;animation:report-spin .6s linear infinite}@keyframes report-spin{to{transform:rotate(360deg)}}.report-export-dropdown{position:absolute;top:calc(100% + 4px);right:0;z-index:50;min-width:240px;background:#1e293b;border:1px solid #334155;border-radius:.5rem;box-shadow:0 10px 25px #0000004d;overflow:hidden}.report-export-option{display:flex;align-items:flex-start;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;color:#e2e8f0;border:none;cursor:pointer;text-align:left;transition:background .15s ease}.report-export-option:hover:not(:disabled){background:#334155}.report-export-option:not(:last-child){border-bottom:1px solid #334155}.report-export-option:disabled{opacity:.5;cursor:not-allowed}.report-export-option svg{flex-shrink:0;margin-top:2px;color:#94a3b8}.report-export-option-text{display:flex;flex-direction:column;gap:.125rem}.report-export-option-title{font-size:.8125rem;font-weight:500;color:#e2e8f0}.report-export-option-desc{font-size:.6875rem;color:#94a3b8}.report-export-error{position:absolute;top:calc(100% + 4px);right:0;z-index:50;display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#7f1d1d;border:1px solid #991b1b;border-radius:.375rem;font-size:.75rem;color:#fca5a5;white-space:nowrap;box-shadow:0 4px 12px #0000004d}.report-export-error-dismiss{background:none;border:none;color:#fca5a5;cursor:pointer;font-size:1rem;line-height:1;padding:0 .25rem}.report-export-error-dismiss:hover{color:#fef2f2}.ontology-improvements-panel{display:flex;flex-direction:column;gap:1.5rem;padding:1.5rem;max-width:1000px;margin:0 auto}.ontology-improvements-header{display:flex;align-items:center;justify-content:space-between}.ontology-improvements-title{margin:0;font-size:1.125rem;font-weight:600;color:#e2e8f0}.structural-health-card{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:1.5rem}.structural-health-loading,.structural-health-error,.structural-health-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;text-align:center}.structural-loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.structural-health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #334155}.structural-health-title{display:flex;align-items:center;gap:.75rem}.structural-health-title h3{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc}.structural-icon{font-size:1.5rem}.structural-score{font-size:2rem;font-weight:700}.structural-hint{color:#64748b;font-size:.75rem;margin-bottom:1rem;text-align:center}.structural-metrics{display:flex;flex-direction:column;gap:.75rem}.structural-metric{display:flex;flex-direction:column;background:#ffffff08;border-radius:8px;transition:background .2s;overflow:hidden}.structural-metric.expandable{cursor:pointer}.structural-metric .metric-header{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;width:100%;background:transparent;border:none;cursor:pointer;text-align:left;color:inherit;font-family:inherit}.structural-metric .metric-header:hover{background:#ffffff0d}.structural-metric .expand-icon{color:#64748b;font-size:.7rem;transition:transform .2s ease;margin-left:auto;flex-shrink:0;align-self:center}.structural-metric .expand-icon.expanded{transform:rotate(180deg)}.structural-metric.severity-ok{border-left:3px solid #10b981}.structural-metric.severity-warning{border-left:3px solid #f59e0b;background:#f59e0b26}.structural-metric.severity-warning .metric-label{color:#fef3c7}.structural-metric.severity-warning .metric-value{color:#fbbf24}.structural-metric.severity-warning .metric-assessment{color:#fde68a}.structural-metric.severity-critical{border-left:3px solid #ef4444;background:#ef444426}.structural-metric.severity-critical .metric-label{color:#fecaca}.structural-metric.severity-critical .metric-value{color:#fff}.structural-metric.severity-critical .metric-assessment{color:#fca5a5}.metric-icon{font-size:1rem;flex-shrink:0;margin-top:2px}.metric-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.metric-label{color:#94a3b8;font-size:.875rem}.metric-value{color:#f8fafc;font-weight:600;font-size:1rem}.metric-assessment{color:#64748b;font-size:.8rem;font-style:italic}.metric-details{color:#64748b;font-size:.75rem;word-break:break-all}.metric-badge{padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:600;flex-shrink:0}.metric-badge.critical{background:#ef4444;color:#fff}.metric-badge.medium{background:#f59e0b;color:#fff}.metric-explanation{padding:1rem 1rem 1rem 2.75rem;background:#0003;border-top:1px solid rgba(255,255,255,.1)}.explanation-section{margin-bottom:1rem}.explanation-section:last-child{margin-bottom:0}.explanation-section h4{margin:0 0 .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8}.explanation-section p{margin:0;font-size:.875rem;line-height:1.6;color:#e2e8f0}.explanation-section.findings{background:#3b82f61a;border-radius:6px;padding:.75rem;border-left:3px solid #3b82f6}.explanation-section.findings h4{color:#60a5fa}.explanation-section.recommendation{background:#10b9811a;border-radius:6px;padding:.75rem;border-left:3px solid #10b981}.explanation-section.recommendation h4{color:#34d399}.structural-metric.severity-critical .metric-explanation{background:#7f1d1d4d}.structural-metric.severity-critical .explanation-section p{color:#fecaca}.structural-metric.severity-critical .explanation-section h4{color:#fca5a5}.structural-metric.severity-critical .explanation-section.findings{background:#ef444426;border-left-color:#ef4444}.structural-metric.severity-critical .explanation-section.findings h4{color:#fca5a5}.structural-metric.severity-critical .explanation-section.recommendation{background:#10b98126}.structural-metric.severity-warning .metric-explanation{background:#78350f4d}.structural-metric.severity-warning .explanation-section p{color:#fef3c7}.structural-metric.severity-warning .explanation-section h4{color:#fde68a}.structural-metric.severity-warning .explanation-section.findings{background:#f59e0b26;border-left-color:#f59e0b}.structural-metric.severity-warning .explanation-section.findings h4{color:#fbbf24}.structural-metric.severity-warning .explanation-section.recommendation{background:#10b98126}.structural-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.analyzed-at{color:#64748b;font-size:.75rem}.reanalyze-button{background:#3b82f6;color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease}.reanalyze-button:hover{background:#2563eb}.reanalyze-button:active{background:#1d4ed8}.analysis-section{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #334155}.analysis-section-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.analysis-section-header h4{margin:0;font-size:1rem;font-weight:600;color:#f8fafc;flex:1}.severity-indicator{font-size:1.25rem}.analysis-count{background:#334155;color:#94a3b8;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.domain-badge{background:#3b82f6;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.analysis-description{color:#94a3b8;font-size:.875rem;margin:0 0 1rem}.findings-list{display:flex;flex-direction:column;gap:.75rem}.finding-item{background:#0f172a;border:1px solid #334155;border-radius:8px;padding:1rem}.finding-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.finding-label{font-weight:600;color:#f8fafc}.finding-pattern{background:#1e293b;color:#64748b;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-family:monospace}.finding-source{color:#64748b;font-size:.75rem;margin:0 0 .5rem}.finding-pharma{color:#3b82f6;font-size:.75rem;margin:0 0 .5rem;font-style:italic}.finding-recommendation{color:#94a3b8;font-size:.875rem;margin:0;line-height:1.4}.more-findings{color:#64748b;font-size:.875rem;text-align:center;margin:.5rem 0 0}.show-all-toggle{display:block;width:100%;padding:.5rem;margin-top:.75rem;background:#ffffff0d;border:1px solid #334155;border-radius:6px;color:#94a3b8;font-size:.8rem;cursor:pointer;transition:all .2s;text-align:center}.show-all-toggle:hover{background:#ffffff1a;color:#e2e8f0;border-color:#475569}.metric-explanation .findings-list{margin-top:1rem}.metric-explanation .finding-item{background:#0000004d;border-color:#ffffff1a}.metric-explanation .analysis-description{color:#cbd5e1;font-size:.875rem;margin:.75rem 0 .5rem}.deep-analysis-card{background:#1e293b;border:1px solid #334155;border-radius:12px;padding:1.5rem}.deep-analysis-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.deep-analysis-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc;flex:1}.deep-analysis-icon{font-size:1.5rem}.analyzed-date{color:#64748b;font-size:.75rem}.deep-analysis-pending .deep-analysis-intro{margin-bottom:1rem}.deep-analysis-pending .deep-analysis-intro p{color:#94a3b8;margin-bottom:.5rem}.deep-analysis-pending .deep-analysis-intro ul{margin:0;padding-left:1.5rem;color:#cbd5e1}.deep-analysis-pending .deep-analysis-intro li{margin-bottom:.25rem;font-size:.875rem}.deep-analysis-warning{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;margin-bottom:1rem}.deep-analysis-warning .warning-icon{font-size:1rem}.deep-analysis-warning span{color:#fbbf24;font-size:.875rem}.deep-analysis-run-btn{width:100%;padding:1rem;font-size:1rem;font-weight:600;background:#3b82f6;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.deep-analysis-run-btn:hover:not(:disabled){background:#2563eb}.deep-analysis-run-btn:disabled{background:#475569;cursor:not-allowed}.deep-analysis-unavailable{color:#94a3b8;font-size:.875rem;text-align:center;margin-top:1rem}.deep-analysis-loading .deep-analysis-loading-content{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:1rem}.deep-analysis-loading .spinner{width:48px;height:48px;border:4px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.deep-analysis-loading .loading-hint{color:#64748b;font-size:.8rem;margin-top:.5rem}.deep-analysis-error .deep-analysis-error-content{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:150px;gap:1rem;text-align:center}.deep-analysis-error .error-icon{font-size:2rem}.deep-analysis-error p{color:#f87171}.deep-analysis-results .overall-assessment{padding:1rem;background:#3b82f61a;border-radius:8px;margin-bottom:1.5rem}.deep-analysis-results .overall-assessment p{margin:0;color:#e2e8f0;font-size:.9rem;line-height:1.6}.deep-analysis-footer{display:flex;justify-content:space-between;align-items:center;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #334155}.token-usage{color:#64748b;font-size:.75rem}.deep-analysis-card .improvement-recommendation,.improvement-recommendation{background:#1e293b;border-radius:8px;padding:1rem;margin-bottom:1rem}.improvement-recommendation .recommendation-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.improvement-recommendation .recommendation-header .severity-icon{font-size:1.25rem}.improvement-recommendation .recommendation-title{margin:0;font-size:1rem;font-weight:600;color:#f8fafc;flex:1}.improvement-recommendation .recommendation-description{color:#cbd5e1;font-size:.875rem;margin:0 0 1rem;line-height:1.5}.improvement-recommendation .recommendation-items{display:flex;flex-direction:column;gap:.75rem}.improvement-recommendation .recommendation-item{padding:.75rem;background:#0f172a;border-radius:6px;border-left:2px solid #475569}.improvement-recommendation .item-header{display:flex;align-items:center;margin-bottom:.25rem;flex-wrap:wrap;gap:.5rem}.improvement-recommendation .item-label{color:#f1f5f9;font-weight:500;font-size:.9rem}.improvement-recommendation .item-detail{color:#60a5fa;font-family:monospace;font-size:.8rem;margin-left:1rem;margin-bottom:.25rem;word-break:break-word}.improvement-recommendation .item-rationale{color:#94a3b8;font-size:.75rem;margin-left:1rem;font-style:italic}.improvement-recommendation .rationale-label{font-weight:500;color:#cbd5e1}.improvement-recommendation .recommendation-toggle{margin-top:.75rem;padding:.5rem 1rem;background:#334155;border:1px solid #475569;border-radius:6px;color:#e2e8f0;font-size:.8rem;cursor:pointer;transition:all .2s}.improvement-recommendation .recommendation-toggle:hover{background:#475569;border-color:#64748b;color:#f8fafc}.spinner-small{width:24px;height:24px;border:3px solid #334155;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#475569;color:#e2e8f0}.btn-secondary:hover:not(:disabled){background:#64748b}.team-management .management-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.team-management .header-left h2{font-size:1.5rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .25rem}.team-management .subtitle{color:#666!important;font-size:.95rem;margin:0}.stats-bar{display:flex;gap:2rem;padding:1rem 1.5rem;background:var(--color-bg-secondary, #f8f9fa);border-radius:8px;margin-bottom:1.5rem}.stats-bar .stat-item{display:flex;flex-direction:column}.stats-bar .stat-value{font-size:1.5rem;font-weight:600;color:#1a1a2e!important}.stats-bar .stat-label{font-size:.85rem;color:#666!important}.team-management .search-section{display:flex;align-items:center;gap:1.5rem;margin-bottom:1.5rem}.team-management .search-input{flex:1;max-width:400px;padding:.75rem 1rem;border:1px solid var(--color-border, #e0e0e0);border-radius:8px;font-size:.95rem}.team-management .search-input:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.checkbox-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#666!important;cursor:pointer}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.employee-list{display:flex;flex-direction:column;gap:.75rem}.employee-card{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;background:#fff;border:1px solid var(--color-border, #e0e0e0);border-radius:8px;transition:all .2s ease}.employee-card:hover{border-color:var(--color-primary, #2563eb);box-shadow:0 2px 8px #0000000d}.employee-card.inactive{opacity:.6;background:var(--color-bg-secondary, #f8f9fa)}.employee-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;flex-shrink:0}.employee-info{flex:1;min-width:0}.employee-name{font-size:1rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .25rem}.employee-email{font-size:.9rem;color:#666!important;margin:0}.employee-role{font-size:.85rem;color:#888!important;margin:.25rem 0 0}.employee-status{flex-shrink:0}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.status-badge.active{background:#dcfce7;color:#166534}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.employee-actions{display:flex;gap:.5rem;flex-shrink:0}.employee-actions .btn-icon{width:36px;height:36px;padding:0;border:1px solid var(--color-border, #e0e0e0);border-radius:6px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.employee-actions .btn-icon:hover{background:var(--color-bg-hover, #f5f5f5);border-color:var(--color-primary, #2563eb)}.employee-actions .btn-icon.btn-danger:hover{background:#fee2e2;border-color:#ef4444}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--color-border, #e0e0e0)}.modal-header h2{font-size:1.25rem;font-weight:600;color:#1a1a2e!important;margin:0}.modal-close{width:32px;height:32px;border:none;background:none;font-size:1.5rem;color:#666!important;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px}.modal-close:hover{background:var(--color-bg-hover, #f5f5f5)}.form-error{padding:.75rem 1rem;background:#fee2e2;color:#dc2626;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.form-group label{display:block;font-size:.9rem;font-weight:500;color:#1a1a2e!important;margin-bottom:.5rem}.form-group .required{color:#dc2626}.form-group input{width:100%;padding:.75rem 1rem;border:1px solid var(--color-border, #e0e0e0);border-radius:8px;font-size:.95rem}.form-group input:focus{outline:none;border-color:var(--color-primary, #2563eb);box-shadow:0 0 0 3px #2563eb1a}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--color-border, #e0e0e0);background:var(--color-bg-secondary, #f8f9fa)}.loading-state,.error-state,.empty-state,.no-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-illustration{font-size:4rem;margin-bottom:1rem}.empty-state h2,.error-state h3{font-size:1.25rem;font-weight:600;color:#1a1a2e!important;margin:0 0 .5rem}.empty-state p,.error-state p,.no-results-state p{color:#666!important;margin:0 0 1.5rem;max-width:400px}.error-icon{font-size:3rem;margin-bottom:1rem}.spinner{width:40px;height:40px;border:3px solid var(--color-border, #e0e0e0);border-top-color:var(--color-primary, #2563eb);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@media (max-width: 768px){.team-management .management-header{flex-direction:column;gap:1rem}.team-management .search-section{flex-direction:column;align-items:flex-start}.team-management .search-input{max-width:100%;width:100%}.employee-card{flex-wrap:wrap}.employee-actions{width:100%;justify-content:flex-end;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--color-border, #e0e0e0)}}.user-management{padding:0}.management-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.header-left h2{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:#1a1a2e}.header-description{margin:0;color:#6b7280;font-size:.875rem}.header-right{display:flex;gap:.75rem}.action-message{padding:.75rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.action-message.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.action-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.filters-bar{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.search-input-wrapper{flex:1;min-width:200px;position:relative}.search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);font-size:.875rem;pointer-events:none}.search-input{width:100%;padding:.5rem .75rem .5rem 2.25rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;background:#fff;color:#1a1a2e}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-group label{font-size:.875rem;color:#6b7280}.filter-group select{padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;background:#fff;color:#1a1a2e;cursor:pointer}.users-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.users-table th{text-align:left;padding:.75rem 1rem;background:#f9fafb;font-weight:500;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#6b7280;border-bottom:1px solid #e5e7eb}.users-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;vertical-align:middle}.users-table tr:last-child td{border-bottom:none}.users-table tr.inactive{opacity:.6}.users-table tr:hover{background:#f9fafb}.user-cell{min-width:200px}.user-info{display:flex;align-items:center;gap:.75rem}.user-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.user-details{display:flex;flex-direction:column;gap:.125rem}.user-name{font-weight:500;color:#1a1a2e;font-size:.875rem}.current-user-badge{margin-left:.5rem;font-size:.75rem;color:#6b7280;font-weight:400}.email-unverified{font-size:.75rem;color:#f59e0b}.email-cell{color:#6b7280;font-size:.875rem}.role-cell{min-width:120px}.role-select{padding:.375rem .75rem;border:1px solid #e5e7eb;border-radius:4px;font-size:.8125rem;font-weight:500;background:#fff;cursor:pointer;transition:all .2s}.role-select:focus{outline:none;border-color:#3b82f6}.role-select:disabled{opacity:.6;cursor:not-allowed}.role-select.role-admin{color:#dc2626;border-color:#fecaca;background:#fef2f2}.role-select.role-analyst{color:#2563eb;border-color:#bfdbfe;background:#eff6ff}.role-select.role-viewer{color:#6b7280;border-color:#e5e7eb;background:#f9fafb}.status-cell{min-width:100px}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-dot{width:6px;height:6px;border-radius:50%}.status-active{background:#dcfce7;color:#166534}.status-active .status-dot{background:#22c55e}.status-invited{background:#fef3c7;color:#92400e}.status-invited .status-dot{background:#f59e0b}.status-inactive{background:#fef2f2;color:#991b1b}.status-inactive .status-dot{background:#ef4444}.actions-cell{width:40px;text-align:center}.actions-menu-container{position:relative}.actions-trigger{background:none;border:none;cursor:pointer;font-size:1.25rem;color:#6b7280;padding:.25rem .5rem;border-radius:4px;transition:all .2s}.actions-trigger:hover{background:#f3f4f6;color:#1a1a2e}.actions-backdrop{position:fixed;inset:0;z-index:99}.actions-menu{position:absolute;right:0;top:100%;background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 12px #0000001a;z-index:100;min-width:160px;overflow:hidden}.action-item{display:block;width:100%;padding:.5rem .75rem;text-align:left;background:none;border:none;font-size:.875rem;color:#1a1a2e;cursor:pointer;transition:background .15s}.action-item:hover:not(:disabled){background:#f3f4f6}.action-item:disabled{opacity:.5;cursor:not-allowed}.table-footer{padding:.75rem 1rem;text-align:right;font-size:.875rem;color:#6b7280}.loading-state,.error-state,.empty-state,.access-denied{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-state p,.empty-state p,.access-denied p{color:#6b7280;margin-bottom:1rem}.access-denied h2{color:#dc2626;margin-bottom:.5rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:#1a1a2e}.modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:.25rem;line-height:1}.modal-close:hover{color:#1a1a2e}.modal-content form{padding:1.5rem}.form-error{padding:.75rem;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:6px;margin-bottom:1rem;font-size:.875rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#1a1a2e;margin-bottom:.375rem}.form-group input[type=text],.form-group input[type=email]{width:100%;padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;color:#1a1a2e}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input::placeholder{color:#9ca3af}.role-options{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.role-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.role-option:hover{border-color:#bfdbfe;background:#f8fafc}.role-option input[type=radio]{margin-top:.125rem}.role-option-content{display:flex;flex-direction:column;gap:.125rem}.role-option-label{font-weight:500;color:#1a1a2e;font-size:.875rem}.role-option-description{font-size:.75rem;color:#6b7280}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #e5e7eb;margin-top:1rem}.user-management .btn{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.user-management .btn-primary{background:#3b82f6;color:#fff}.user-management .btn-primary:hover{background:#2563eb}.user-management .btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.user-management .btn-secondary{background:#f3f4f6;color:#1a1a2e;border:1px solid #e5e7eb}.user-management .btn-secondary:hover{background:#e5e7eb}.audit-log-viewer{padding:1.5rem;max-width:1400px;margin:0 auto}.audit-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.audit-title-section h1{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.audit-subtitle{margin:.25rem 0 0;color:var(--text-secondary, #666);font-size:.875rem}.audit-actions{display:flex;gap:.5rem}.btn-primary{background:var(--primary, #2563eb);color:#fff;border-color:var(--primary, #2563eb)}.btn-primary:hover:not(:disabled){background:var(--primary-dark, #1d4ed8)}.btn-ghost{background:transparent;color:var(--text-secondary, #666)}.btn-ghost:hover:not(:disabled){background:var(--bg-secondary, #f3f4f6)}.btn-icon{padding:.375rem;background:transparent;border:none;cursor:pointer;border-radius:4px}.btn-pagination{padding:.375rem .625rem;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border, #e5e7eb);border-radius:4px;font-size:.75rem;min-width:2rem}.btn-pagination:hover:not(:disabled){background:var(--bg-hover, #e5e7eb)}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:1rem;display:flex;align-items:center;gap:.75rem}.summary-card.warning{border-left:3px solid var(--warning, #f59e0b)}.summary-card.info{border-left:3px solid var(--info, #3b82f6)}.summary-card.loading{background:var(--bg-secondary, #f9fafb)}.summary-icon{font-size:1.5rem}.summary-content{display:flex;flex-direction:column}.summary-label{font-size:.75rem;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.025em}.summary-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.filters-section{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:1rem;margin-bottom:1.5rem}.filters-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:flex-end}.filter-group label{font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.025em}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid var(--border, #e5e7eb);border-radius:6px;font-size:.875rem;background:#fff;color:var(--text-primary, #1a1a1a)}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--primary, #2563eb);box-shadow:0 0 0 2px #2563eb1a}.date-range{display:flex;align-items:center;gap:.5rem}.date-range span{color:var(--text-secondary, #666);font-size:.875rem}.date-range input{width:140px}.filter-actions{display:flex;gap:.5rem;margin-left:auto}.audit-table-container{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;overflow:hidden}.audit-table{width:100%;border-collapse:collapse}.audit-table th{text-align:left;padding:.75rem 1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #666);background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border, #e5e7eb)}.audit-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-light, #f3f4f6);font-size:.875rem;vertical-align:middle}.audit-row:hover{background:var(--bg-hover, #f9fafb)}.audit-row:last-child td{border-bottom:none}.timestamp-cell{white-space:nowrap}.timestamp-date{display:block;font-weight:500;color:var(--text-primary, #1a1a1a)}.timestamp-time{display:block;font-size:.75rem;color:var(--text-secondary, #666)}.action-cell{min-width:150px}.actor-cell{max-width:200px}.actor-email{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary, #1a1a1a)}.resource-cell{min-width:120px}.resource-type{display:inline-block;background:var(--bg-secondary, #f3f4f6);padding:.125rem .5rem;border-radius:4px;font-size:.75rem;text-transform:capitalize}.resource-id{display:block;font-size:.75rem;color:var(--text-secondary, #666);font-family:monospace}.resource-none{color:var(--text-muted, #999)}.ip-cell{font-family:monospace;font-size:.8125rem;color:var(--text-secondary, #666)}.details-cell{text-align:center;width:60px}.action-badge{display:inline-flex;align-items:center;padding:.25rem .625rem;border-radius:12px;font-size:.75rem;font-weight:500;white-space:nowrap}.action-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a)}.action-success{background:var(--success-bg, #dcfce7);color:var(--success-text, #166534)}.action-warning{background:var(--warning-bg, #fef3c7);color:var(--warning-text, #92400e)}.action-error{background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b)}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:.75rem 1rem;background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;flex-wrap:wrap;gap:1rem}.pagination-info{font-size:.875rem;color:var(--text-secondary, #666)}.pagination-controls{display:flex;align-items:center;gap:.5rem}.pagination-pages{font-size:.875rem;color:var(--text-primary, #1a1a1a);padding:0 .5rem}.modal-content{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.audit-detail-modal .detail-grid{display:flex;flex-direction:column;gap:1rem}.detail-row{display:flex;gap:1rem}.detail-label{flex:0 0 120px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary, #666)}.detail-value.mono{font-family:monospace;font-size:.8125rem}.detail-value.small{font-size:.75rem;color:var(--text-secondary, #666)}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.skeleton-title{height:.875rem;width:60%;margin-bottom:.5rem}.skeleton-cell{height:1rem;width:80%}.skeleton-row td{padding:1rem}@media (max-width: 768px){.audit-log-viewer{padding:1rem}.audit-header{flex-direction:column}.audit-actions{width:100%;justify-content:flex-start}.filters-row{flex-direction:column}.filter-group{width:100%}.date-range{flex-wrap:wrap}.date-range input{width:100%}.filter-actions{width:100%;margin-left:0;margin-top:.5rem}.audit-table-container{overflow-x:auto}.audit-table{min-width:700px}.pagination{flex-direction:column;align-items:flex-start}}.security-dashboard{padding:1.5rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.header-content h1{margin:0;font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.header-subtitle{margin:.25rem 0 0;color:var(--text-secondary, #666);font-size:.875rem}.header-actions{display:flex;align-items:center;gap:1rem}.last-refresh{font-size:.75rem;color:var(--text-secondary, #666)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem}.metric-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;transition:box-shadow .15s ease}.metric-card:hover{box-shadow:0 2px 8px #00000014}.metric-default{border-left:3px solid var(--primary, #2563eb)}.metric-warning{border-left:3px solid var(--warning, #f59e0b);background:var(--warning-bg-light, #fffbeb)}.metric-error{border-left:3px solid var(--error, #ef4444);background:var(--error-bg-light, #fef2f2)}.metric-success{border-left:3px solid var(--success, #22c55e);background:var(--success-bg-light, #f0fdf4)}.metric-icon{font-size:1.75rem;line-height:1}.metric-content{display:flex;flex-direction:column;gap:.25rem}.metric-label{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary, #666)}.metric-value{font-size:1.75rem;font-weight:600;color:var(--text-primary, #1a1a1a);line-height:1.2}.metric-sublabel{font-size:.75rem;color:var(--text-secondary, #666)}.metric-trend{font-size:.75rem;font-weight:500}.trend-up{color:var(--error, #ef4444)}.trend-down{color:var(--success, #22c55e)}.trend-neutral{color:var(--text-secondary, #666)}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.dashboard-column{display:flex;flex-direction:column;gap:1.5rem}.section-card{background:#fff;border:1px solid var(--border, #e5e7eb);border-radius:8px;overflow:hidden}.section-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.section-header h2{margin:0;font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.section-count,.section-period{font-size:.75rem;color:var(--text-secondary, #666)}.alerts-list{max-height:400px;overflow-y:auto}.alert-item{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border-light, #f3f4f6);transition:background .15s ease}.alert-item:hover{background:var(--bg-hover, #f9fafb)}.alert-item:last-child{border-bottom:none}.alert-critical{border-left:3px solid var(--error, #ef4444)}.alert-warning{border-left:3px solid var(--warning, #f59e0b)}.alert-info{border-left:3px solid var(--info, #3b82f6)}.alert-icon{font-size:1.25rem;line-height:1}.alert-content{flex:1;min-width:0}.alert-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.alert-badge{display:inline-block;padding:.125rem .375rem;border-radius:4px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-critical{background:var(--error, #ef4444);color:#fff}.badge-warning{background:var(--warning, #f59e0b);color:#fff}.badge-info{background:var(--info, #3b82f6);color:#fff}.alert-type{font-size:.75rem;font-weight:500;color:var(--text-primary, #1a1a1a)}.alert-message{margin:0;font-size:.8125rem;color:var(--text-secondary, #666);line-height:1.4}.alert-time{font-size:.6875rem;color:var(--text-muted, #999)}.anomaly-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.25rem}.anomaly-item{display:flex;flex-direction:column;align-items:center;padding:1rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;text-align:center}.anomaly-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.anomaly-label{font-size:.75rem;color:var(--text-secondary, #666);margin-top:.25rem}.heatmap-container{padding:1.25rem}.heatmap-bars{display:flex;align-items:flex-end;height:120px;gap:2px}.heatmap-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;position:relative}.heatmap-bar{width:100%;min-height:4px;border-radius:2px 2px 0 0;transition:height .3s ease}.heatmap-label{position:absolute;bottom:-18px;font-size:.625rem;color:var(--text-secondary, #666)}.heatmap-legend{display:flex;justify-content:space-between;padding-top:1.5rem;font-size:.6875rem;color:var(--text-muted, #999)}.compliance-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;color:#fff}.compliance-gauges{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.compliance-gauge{display:grid;grid-template-columns:1fr auto;gap:.5rem;align-items:center}.gauge-label{font-size:.8125rem;color:var(--text-primary, #1a1a1a);grid-column:1}.gauge-bar{grid-column:1;height:8px;background:var(--bg-secondary, #e5e7eb);border-radius:4px;overflow:hidden}.gauge-fill{height:100%;border-radius:4px;transition:width .5s ease}.gauge-value{grid-column:2;grid-row:1 / 3;font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);min-width:3rem;text-align:right}.offenders-list{padding:.5rem 0}.offender-item{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;padding:.75rem 1.25rem;border-bottom:1px solid var(--border-light, #f3f4f6);align-items:center}.offender-item:last-child{border-bottom:none}.offender-email{font-size:.8125rem;color:var(--text-primary, #1a1a1a);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.offender-count{font-size:.75rem;font-weight:500;color:var(--warning, #f59e0b);background:var(--warning-bg, #fef3c7);padding:.125rem .5rem;border-radius:4px}.offender-time{font-size:.6875rem;color:var(--text-muted, #999)}.modal-backdrop{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--border, #e5e7eb)}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-secondary, #666);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text-primary, #1a1a1a)}.detail-grid{display:flex;flex-direction:column;gap:1rem}.detail-row{display:flex;gap:1rem;align-items:flex-start}.detail-row.full-width{flex-direction:column;gap:.5rem}.detail-label{flex:0 0 100px;font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em;color:var(--text-secondary, #666)}.detail-value{flex:1;color:var(--text-primary, #1a1a1a);font-size:.875rem;word-break:break-word}.detail-json{background:var(--bg-secondary, #f3f4f6);border-radius:6px;padding:.75rem;font-family:monospace;font-size:.75rem;overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-all}.btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:.375rem;border:1px solid transparent}.btn-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1a1a1a);border-color:var(--border, #e5e7eb)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover, #e5e7eb)}.btn-icon{padding:.375rem;background:transparent;border:none;cursor:pointer;border-radius:4px;font-size:1rem}.btn-icon:hover{background:var(--bg-secondary, #f3f4f6)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #666)}.empty-icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;background:var(--success-bg, #dcfce7);color:var(--success, #22c55e);border-radius:50%;font-size:1.5rem;margin-bottom:1rem}.empty-hint{font-size:.875rem;color:var(--text-muted, #999);margin-top:.5rem!important}.error-message{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--error-bg, #fee2e2);color:var(--error-text, #991b1b);border-radius:8px;margin-bottom:1rem;font-size:.875rem}.error-icon{display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background:var(--error-text, #991b1b);color:#fff;border-radius:50%;font-size:.75rem;font-weight:700}.error-dismiss{margin-left:auto;background:none;border:none;font-size:1.25rem;color:var(--error-text, #991b1b);cursor:pointer;padding:0;line-height:1}.skeleton{background:linear-gradient(90deg,var(--bg-secondary, #f3f4f6) 25%,var(--bg-hover, #e5e7eb) 50%,var(--bg-secondary, #f3f4f6) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px}.skeleton-card{min-height:100px}.skeleton-icon{width:2rem;height:2rem;border-radius:8px}.skeleton-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.skeleton-label{height:.75rem;width:60%}.skeleton-value{height:1.5rem;width:40%}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1024px){.dashboard-columns{grid-template-columns:1fr}}@media (max-width: 768px){.security-dashboard{padding:1rem}.dashboard-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;justify-content:space-between}.metrics-grid,.anomaly-grid{grid-template-columns:1fr}.offender-item{grid-template-columns:1fr;gap:.25rem}.offender-count,.offender-time{justify-self:start}}.api-key-management{padding:1.5rem;max-width:1400px;margin:0 auto}.api-key-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.api-key-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary, #e8eefc);margin:0}.api-key-header p{color:var(--text-secondary, #8b9dc3);margin:.25rem 0 0;font-size:.875rem}.api-key-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.api-key-table-container{background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.75rem;overflow:hidden}.api-key-table{width:100%;border-collapse:collapse}.api-key-table th{text-align:left;padding:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #8b9dc3);background:var(--surface-tertiary, #232938);border-bottom:1px solid var(--border, #2d3548)}.api-key-table td{padding:1rem;border-bottom:1px solid var(--border, #2d3548);color:var(--text-primary, #e8eefc);vertical-align:middle}.api-key-table tr:last-child td{border-bottom:none}.api-key-table tr:hover{background:var(--surface-hover, #242a3a)}.key-prefix{font-family:JetBrains Mono,Fira Code,monospace;background:var(--surface-tertiary, #232938);padding:.25rem .5rem;border-radius:.25rem;font-size:.875rem}.scope-badges{display:flex;gap:.375rem;flex-wrap:wrap}.scope-badge{padding:.125rem .5rem;border-radius:1rem;font-size:.75rem;font-weight:500}.scope-badge.read{background:var(--info-bg, #1a365d);color:var(--info-text, #63b3ed)}.scope-badge.write{background:var(--warning-bg, #744210);color:var(--warning-text, #f6ad55)}.scope-badge.admin{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.status-badge{padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500}.status-badge.revoked{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.status-badge.expired{background:var(--warning-bg, #744210);color:var(--warning-text, #f6ad55)}.action-btn.rotate{background:var(--warning-bg, #744210);color:var(--warning-text, #f6ad55)}.action-btn.revoke{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.modal-content{background:var(--surface-primary, #141824);border:1px solid var(--border, #2d3548);border-radius:.75rem;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.wide{max-width:600px}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--text-primary, #e8eefc)}.form-group .helper-text{font-size:.75rem;color:var(--text-secondary, #8b9dc3);margin-top:.25rem}.form-input{width:100%;padding:.75rem;background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.5rem;color:var(--text-primary, #e8eefc);font-size:.875rem}.form-input:focus{outline:none;border-color:var(--primary, #4a6cf7);box-shadow:0 0 0 2px #4a6cf733}.form-input::placeholder{color:var(--text-tertiary, #5a6785)}.checkbox-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-item{display:flex;align-items:flex-start;gap:.75rem}.checkbox-item input[type=checkbox]{width:1.25rem;height:1.25rem;margin-top:.125rem;accent-color:var(--primary, #4a6cf7)}.checkbox-label{flex:1}.checkbox-label .label-title{font-weight:500;color:var(--text-primary, #e8eefc)}.checkbox-label .label-desc{font-size:.75rem;color:var(--text-secondary, #8b9dc3)}.key-reveal{background:var(--surface-tertiary, #232938);border:1px solid var(--border, #2d3548);border-radius:.5rem;padding:1rem;margin-bottom:1rem}.key-reveal-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.key-reveal-header .warning-icon{color:var(--warning-text, #f6ad55)}.key-reveal-header h4{margin:0;font-size:.875rem;color:var(--warning-text, #f6ad55)}.key-value{display:flex;align-items:center;gap:.5rem;background:var(--surface-primary, #141824);padding:.75rem;border-radius:.375rem;margin-bottom:.75rem}.key-value code{flex:1;font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem;word-break:break-all;color:var(--text-primary, #e8eefc)}.copy-btn{padding:.5rem;background:var(--primary, #4a6cf7);border:none;border-radius:.375rem;color:#fff;cursor:pointer;transition:background .15s ease}.copy-btn:hover{background:var(--primary-dark, #3a5cd7)}.copy-btn.copied{background:var(--success, #48bb78)}.key-warning{font-size:.75rem;color:var(--error-text, #fc8181);display:flex;align-items:center;gap:.375rem}.detail-row.full-width{grid-template-columns:1fr}@media (max-width: 768px){.api-key-header{flex-direction:column;align-items:flex-start;gap:1rem}.api-key-table{font-size:.875rem}.api-key-table th,.api-key-table td{padding:.75rem .5rem}.action-buttons{flex-direction:column}.detail-row{grid-template-columns:1fr;gap:.25rem}}.session-monitor{padding:1.5rem;max-width:1600px;margin:0 auto}.session-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.session-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary, #e8eefc);margin:0}.session-header p{color:var(--text-secondary, #8b9dc3);margin:.25rem 0 0;font-size:.875rem}.header-actions{display:flex;gap:.75rem}.session-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.75rem;padding:1.25rem;display:flex;align-items:center;gap:1rem}.summary-card .summary-icon{font-size:2rem}.summary-card .summary-content h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #8b9dc3);margin:0}.summary-card .summary-content .summary-value{font-size:1.75rem;font-weight:600;color:var(--text-primary, #e8eefc)}.filter-bar{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.75rem}.filter-group{display:flex;flex-direction:column;gap:.375rem;min-width:150px}.filter-group label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #8b9dc3)}.filter-input{padding:.5rem .75rem;background:var(--surface-primary, #141824);border:1px solid var(--border, #2d3548);border-radius:.375rem;color:var(--text-primary, #e8eefc);font-size:.875rem}.filter-input:focus{outline:none;border-color:var(--primary, #4a6cf7);box-shadow:0 0 0 2px #4a6cf733}.filter-input::placeholder{color:var(--text-tertiary, #5a6785)}.filter-actions{display:flex;align-items:flex-end;gap:.5rem;margin-left:auto}.session-table-container{background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.75rem;overflow:hidden}.session-table{width:100%;border-collapse:collapse}.session-table th{text-align:left;padding:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #8b9dc3);background:var(--surface-tertiary, #232938);border-bottom:1px solid var(--border, #2d3548)}.session-table td{padding:1rem;border-bottom:1px solid var(--border, #2d3548);color:var(--text-primary, #e8eefc);vertical-align:middle}.session-table tr:last-child td{border-bottom:none}.session-table tr:hover{background:var(--surface-hover, #242a3a)}.user-cell{display:flex;flex-direction:column;gap:.125rem}.user-email{font-weight:500}.user-role{font-size:.75rem;color:var(--text-secondary, #8b9dc3)}.device-cell{display:flex;align-items:center;gap:.75rem}.device-icon{font-size:1.25rem;opacity:.8}.device-info{display:flex;flex-direction:column;gap:.125rem}.device-type{font-weight:500;text-transform:capitalize}.device-browser{font-size:.75rem;color:var(--text-secondary, #8b9dc3)}.ip-cell{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem}.time-cell{display:flex;flex-direction:column;gap:.125rem}.time-primary{font-weight:500}.time-secondary{font-size:.75rem;color:var(--text-secondary, #8b9dc3)}.status-badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:500}.status-badge.active{background:var(--success-bg, #22543d);color:var(--success-text, #68d391)}.status-badge.expiring{background:var(--warning-bg, #744210);color:var(--warning-text, #f6ad55)}.status-badge.expired{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.device-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;background:var(--surface-tertiary, #232938)}.device-badge.desktop{color:var(--info-text, #63b3ed)}.device-badge.mobile{color:var(--success-text, #68d391)}.device-badge.tablet{color:var(--warning-text, #f6ad55)}.action-buttons{display:flex;gap:.5rem}.action-btn{padding:.375rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.action-btn.view{background:var(--primary-light, #2d4a8c);color:var(--primary-text, #90cdf4)}.action-btn.terminate{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.action-btn:hover{filter:brightness(1.1)}.action-btn:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--surface-primary, #141824);border:1px solid var(--border, #2d3548);border-radius:.75rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.wide{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:1px solid var(--border, #2d3548)}.modal-header h2{margin:0;font-size:1.25rem;color:var(--text-primary, #e8eefc)}.modal-close{background:none;border:none;color:var(--text-secondary, #8b9dc3);font-size:1.5rem;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text-primary, #e8eefc)}.modal-body{padding:1.25rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem;border-top:1px solid var(--border, #2d3548)}.detail-grid{display:grid;gap:1rem}.detail-row{display:grid;grid-template-columns:140px 1fr;gap:1rem;align-items:start}.detail-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #8b9dc3)}.detail-value{color:var(--text-primary, #e8eefc);word-break:break-word}.detail-value.mono{font-family:JetBrains Mono,Fira Code,monospace;font-size:.875rem}.activity-timeline{margin-top:1.5rem}.activity-timeline h3{font-size:1rem;color:var(--text-primary, #e8eefc);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border, #2d3548)}.timeline-list{display:flex;flex-direction:column;gap:.75rem}.timeline-item{display:flex;gap:1rem;padding:.75rem;background:var(--surface-secondary, #1a1f2e);border-radius:.5rem}.timeline-icon{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:1rem;flex-shrink:0}.timeline-icon.login{background:var(--success-bg, #22543d);color:var(--success-text, #68d391)}.timeline-icon.logout{background:var(--info-bg, #1a365d);color:var(--info-text, #63b3ed)}.timeline-icon.created{background:var(--primary-bg, #2d4a8c);color:var(--primary-text, #90cdf4)}.timeline-icon.revoked{background:var(--error-bg, #742a2a);color:var(--error-text, #fc8181)}.timeline-content{flex:1}.timeline-action{font-weight:500;color:var(--text-primary, #e8eefc);margin-bottom:.25rem}.timeline-meta{font-size:.75rem;color:var(--text-secondary, #8b9dc3);display:flex;gap:1rem}.btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:var(--primary, #4a6cf7);color:#fff}.btn-primary:hover{background:var(--primary-dark, #3a5cd7)}.btn-secondary{background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);color:var(--text-primary, #e8eefc)}.btn-secondary:hover{background:var(--surface-hover, #242a3a)}.btn-danger{background:var(--error, #e53e3e);color:#fff}.btn-danger:hover{background:var(--error-dark, #c53030)}.btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:3rem;color:var(--text-secondary, #8b9dc3)}.empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.empty-state h3{color:var(--text-primary, #e8eefc);margin:0 0 .5rem}.empty-state p{margin:0}.loading-container{display:flex;justify-content:center;align-items:center;padding:3rem}.spinner{width:2rem;height:2rem;border:3px solid var(--border, #2d3548);border-top-color:var(--primary, #4a6cf7);border-radius:50%;animation:spin .8s linear infinite}.error-container{text-align:center;padding:2rem;color:var(--error-text, #fc8181)}.error-container .error-icon{font-size:2rem;margin-bottom:.5rem}.pagination{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-top:1px solid var(--border, #2d3548)}.pagination-info{font-size:.875rem;color:var(--text-secondary, #8b9dc3)}.pagination-controls{display:flex;gap:.5rem}.pagination-btn{padding:.5rem .75rem;background:var(--surface-secondary, #1a1f2e);border:1px solid var(--border, #2d3548);border-radius:.375rem;color:var(--text-primary, #e8eefc);cursor:pointer;transition:all .15s ease}.pagination-btn:hover:not(:disabled){background:var(--surface-hover, #242a3a)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-dialog{text-align:center}.confirm-icon{font-size:3rem;margin-bottom:1rem;color:var(--warning-text, #f6ad55)}.confirm-dialog h3{margin:0 0 .5rem;color:var(--text-primary, #e8eefc)}.confirm-dialog p{color:var(--text-secondary, #8b9dc3);margin:0 0 1.5rem}.confirm-session-info{background:var(--surface-secondary, #1a1f2e);border-radius:.5rem;padding:1rem;margin-bottom:1.5rem;text-align:left}.confirm-session-info .info-row{display:flex;justify-content:space-between;padding:.375rem 0;border-bottom:1px solid var(--border, #2d3548)}.confirm-session-info .info-row:last-child{border-bottom:none}.confirm-session-info .info-label{color:var(--text-secondary, #8b9dc3)}.confirm-session-info .info-value{color:var(--text-primary, #e8eefc);font-weight:500}@media (max-width: 1024px){.filter-bar{flex-direction:column}.filter-group{min-width:100%}.filter-actions{margin-left:0;margin-top:.5rem}}@media (max-width: 768px){.session-header{flex-direction:column;align-items:flex-start;gap:1rem}.session-table{font-size:.875rem}.session-table th,.session-table td{padding:.75rem .5rem}.action-buttons{flex-direction:column}.detail-row{grid-template-columns:1fr;gap:.25rem}.timeline-meta{flex-direction:column;gap:.25rem}}.databricks-connection-form{display:flex;flex-direction:column;gap:16px}.databricks-connection-form .form-group{display:flex;flex-direction:column;gap:6px}.databricks-connection-form label{font-size:14px;font-weight:500;color:#1a1a2e}.databricks-connection-form input[type=text],.databricks-connection-form input[type=url],.databricks-connection-form input[type=password],.databricks-connection-form textarea,.databricks-connection-form select{padding:10px 12px;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;background:#fff;color:#1a1a2e;transition:border-color .2s,box-shadow .2s}.databricks-connection-form input:focus,.databricks-connection-form textarea:focus,.databricks-connection-form select:focus{outline:none;border-color:#4a90d9;box-shadow:0 0 0 3px #4a90d926}.databricks-connection-form input.error,.databricks-connection-form textarea.error{border-color:#dc3545}.databricks-connection-form .error-message{color:#dc3545;font-size:12px}.databricks-connection-form .hint{font-size:12px;color:#666}.databricks-connection-form fieldset{border:1px solid #d0d0d0;border-radius:8px;padding:16px;margin:0}.databricks-connection-form legend{font-size:14px;font-weight:600;color:#1a1a2e;padding:0 8px}.databricks-connection-form .checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:400}.databricks-connection-form .checkbox-group input[type=checkbox]{width:16px;height:16px;cursor:pointer}.databricks-connection-form .checkbox-group span{font-size:14px}.databricks-connection-form .test-result{padding:12px 16px;border-radius:6px;font-size:14px}.databricks-connection-form .test-result.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.databricks-connection-form .test-result.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.databricks-connection-form .submit-error{padding:12px 16px;background:#f8d7da;color:#721c24;border:1px solid #f5c6cb;border-radius:6px;font-size:14px}.databricks-connection-form .form-actions{display:flex;align-items:center;gap:12px;margin-top:8px;padding-top:16px;border-top:1px solid #e0e0e0}.databricks-connection-form .form-actions .spacer{flex:1}.databricks-connection-form .btn-primary{padding:10px 20px;background:#4a90d9;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.databricks-connection-form .btn-primary:hover:not(:disabled){background:#3a7fc9}.databricks-connection-form .btn-primary:disabled{opacity:.5;cursor:not-allowed}.databricks-connection-form .btn-secondary{padding:10px 20px;background:#fff;color:#1a1a2e;border:1px solid #d0d0d0;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s}.databricks-connection-form .btn-secondary:hover:not(:disabled){background:#f8f9fa;border-color:#4a90d9}.databricks-connection-form .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.integrations-page{padding:24px;max-width:1400px;margin:0 auto}.integrations-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.integrations-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a1a2e}.header-subtitle{margin:0;color:#666;font-size:14px}.header-actions{display:flex;gap:12px}.integrations-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#4a90d9;border-radius:50%;animation:spin 1s linear infinite}.integrations-page .error-banner{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff3f3;border:1px solid #ffcccc;border-radius:8px;margin-bottom:24px;color:#c00}.integrations-page .error-banner button{background:none;border:none;color:#c00;cursor:pointer;text-decoration:underline}.integrations-page .intg-action-message{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:8px;margin-bottom:24px;font-size:14px;animation:intg-slide-in .3s ease-out}.integrations-page .intg-action-message.success{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.integrations-page .intg-action-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.integrations-page .intg-action-message button{background:none;border:none;cursor:pointer;font-size:16px;line-height:1;padding:0 0 0 12px;color:inherit;opacity:.7}.integrations-page .intg-action-message button:hover{opacity:1}@keyframes intg-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.integrations-page .registry-status{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#f8f9fa;border-radius:8px;margin-bottom:24px;font-size:14px;color:#666}.status-indicator.initialized{background:#28a745}.status-indicator.not-initialized{background:#dc3545}.available-integrations,.active-connections{margin-bottom:32px}.available-integrations h3,.active-connections h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#1a1a2e}.integration-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.integrations-page .integration-card{display:flex;align-items:flex-start;gap:16px;padding:20px;background:#fff;border:1px solid #e0e0e0;border-radius:12px;transition:box-shadow .2s,border-color .2s}.integrations-page .integration-card:hover{border-color:#4a90d9;box-shadow:0 4px 12px #00000014}.integrations-page .integration-card .card-icon{font-size:32px;line-height:1}.integrations-page .integration-card .card-content{flex:1}.integrations-page .integration-card h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#1a1a2e}.integrations-page .integration-card .card-description{margin:0 0 12px;font-size:13px;color:#666;line-height:1.4}.card-capabilities{display:flex;flex-wrap:wrap;gap:6px}.integrations-page .capability-tag{padding:4px 8px;background:#f0f4f8;border-radius:4px;font-size:11px;color:#666}.integrations-page .empty-state{text-align:center;padding:40px 20px;background:#f8f9fa;border-radius:12px;color:#666}.integrations-page .empty-state p{margin:0 0 8px;color:#666}.integrations-page .empty-state .hint{font-size:13px;opacity:.8}.integrations-page .connections-table{width:100%;border-collapse:collapse;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e0e0e0}.integrations-page .connections-table th{text-align:left;padding:12px 16px;background:#f8f9fa;font-weight:600;font-size:13px;color:#666;border-bottom:1px solid #e0e0e0}.integrations-page .connections-table td{padding:16px;border-bottom:1px solid #e0e0e0;font-size:14px;color:#1a1a2e}.integrations-page .connections-table tr:last-child td{border-bottom:none}.integrations-page .connections-table tr:hover td{background:#f8f9fa}.connections-table td strong{display:block;margin-bottom:4px}.connections-table td .description{display:block;font-size:12px;color:#666}.integrations-page .type-badge{display:inline-block;padding:4px 8px;background:#f0f4f8;border-radius:4px;font-size:12px;font-weight:500;text-transform:capitalize;color:#1a1a2e}.endpoint-cell code{font-size:12px;color:#666;word-break:break-all}.integrations-page .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.integrations-page .status-badge.status-active{background:#d4edda;color:#155724}.integrations-page .status-badge.status-error{background:#f8d7da;color:#721c24}.integrations-page .status-badge.status-testing{background:#fff3cd;color:#856404}.integrations-page .status-badge.status-inactive{background:#e9ecef;color:#6c757d}.integrations-page .status-badge.status-pending{background:#cce5ff;color:#004085}.error-hint{margin-left:6px;cursor:help}.actions-cell{white-space:nowrap}.integrations-page .btn-primary{padding:10px 20px;background:#4a90d9;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.integrations-page .btn-primary:hover:not(:disabled){background:#3a7fc9}.integrations-page .btn-primary:disabled{opacity:.5;cursor:not-allowed;background:#4a90d9}.integrations-page .btn-secondary{padding:8px 16px;background:#fff;color:#4a90d9;border:1px solid #4a90d9;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:background .2s}.integrations-page .btn-secondary:hover{background:#f0f4f8}.integrations-page .btn-icon{padding:6px 10px;background:transparent;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:14px;margin-right:6px;transition:background .2s,border-color .2s}.integrations-page .btn-icon:hover{background:#f8f9fa;border-color:#4a90d9}.integrations-page .btn-icon.btn-danger:hover{background:#fff3f3;border-color:#dc3545}.integrations-page .btn-icon.btn-active{background:#e8f0fe;border-color:#4a90d9;color:#4a90d9}.integrations-page .intg-browser-panel{margin-top:24px;border:1px solid #e0e0e0;border-radius:12px;background:#fff;overflow:hidden}.integrations-page .intg-browser-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.integrations-page .intg-browser-header h4{margin:0;font-size:15px;font-weight:600;color:#1a1a2e}.integrations-page .intg-browser-close{background:none;border:1px solid #e0e0e0;border-radius:6px;padding:4px 10px;cursor:pointer;font-size:14px;color:#666;transition:background .2s,border-color .2s}.integrations-page .intg-browser-close:hover{background:#fff3f3;border-color:#dc3545;color:#dc3545}.integrations-page .intg-browser-body{padding:16px}.intg-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10001;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.intg-modal-content{background:#fff;color:#1a1a2e;border:1px solid #e0e0e0;border-radius:12px;width:100%;max-width:560px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.intg-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0;background:#fff}.intg-modal-header h3{margin:0;font-size:18px;font-weight:600;color:#1a1a2e}.intg-modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:#666;line-height:1}.intg-modal-close:hover{color:#1a1a2e}.intg-modal-body{padding:24px;overflow-y:auto;background:#fff}.intg-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e0e0e0;background:#fff}.connection-form-placeholder{text-align:center;padding:20px;color:#666}.connection-form-placeholder .hint{font-size:13px;opacity:.8;margin-top:8px}.selected-integration-info{margin-top:24px;padding:16px;background:#f8f9fa;border-radius:8px;text-align:left}.selected-integration-info h4{margin:0 0 8px;font-size:16px;color:#1a1a2e}.selected-integration-info p{margin:0 0 8px;font-size:13px;color:#333}.integration-selector{text-align:center}.integration-selector p{margin:0 0 16px;color:#666}.integration-options{display:flex;flex-direction:column;gap:12px}.integration-option{display:flex;align-items:center;gap:12px;padding:16px 20px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:background .2s,border-color .2s;text-align:left}.integration-option:hover{background:#fff;border-color:#4a90d9}.integration-option .option-icon{font-size:24px}.integration-option .option-name{font-size:15px;font-weight:500;color:#1a1a2e}.org-fairy-chat{position:fixed;bottom:24px;right:24px;z-index:1000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.fairy-toggle-btn{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #8b5cf666;transition:all .3s ease;position:relative}.fairy-toggle-btn:hover{transform:scale(1.1);box-shadow:0 6px 24px #8b5cf680}.fairy-toggle-btn:active{transform:scale(.95)}.fairy-icon{font-size:1.75rem;line-height:1}.unread-indicator{position:absolute;top:4px;right:4px;width:12px;height:12px;background:#ef4444;border-radius:50%;border:2px solid white;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.org-fairy-chat--open .fairy-toggle-btn{opacity:0;pointer-events:none;transform:scale(0)}.fairy-panel{position:absolute;bottom:0;right:0;width:380px;height:520px;background:#0f172a;border-radius:16px;box-shadow:0 8px 32px #0006;display:flex;flex-direction:column;overflow:hidden;animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 480px){.fairy-panel{width:calc(100vw - 32px);height:calc(100vh - 120px);max-height:600px}}.fairy-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff}.fairy-title{display:flex;align-items:center;gap:10px}.fairy-avatar{font-size:1.5rem;line-height:1}.fairy-name{display:flex;flex-direction:column}.fairy-name strong{font-size:.95rem}.fairy-subtitle{font-size:.75rem;opacity:.9}.fairy-close-btn{width:28px;height:28px;border-radius:50%;background:#fff3;border:none;color:#fff;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.fairy-close-btn:hover{background:#ffffff4d}.fairy-quick-actions{display:flex;gap:6px;padding:10px 12px;background:#1e293b;border-bottom:1px solid #334155;flex-wrap:wrap}.quick-action-btn{display:flex;align-items:center;gap:4px;padding:5px 10px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.3);border-radius:16px;color:#c4b5fd;font-size:.75rem;cursor:pointer;transition:all .2s ease;white-space:nowrap}.quick-action-btn:hover{background:#8b5cf633;border-color:#8b5cf680}.action-icon{font-size:.85rem}.fairy-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.fairy-message{display:flex;gap:8px;max-width:90%;animation:fadeInUp .3s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fairy-message--user{align-self:flex-end;flex-direction:row-reverse}.fairy-message--fairy{align-self:flex-start}.message-avatar{font-size:1.25rem;line-height:1;flex-shrink:0}.message-content{display:flex;flex-direction:column;gap:8px}.message-text{padding:10px 14px;border-radius:12px;font-size:.875rem;line-height:1.5;margin:0;white-space:pre-line}.fairy-message--fairy .message-text{background:#1e293b;color:#e2e8f0;border-bottom-left-radius:4px}.fairy-message--user .message-text{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;border-bottom-right-radius:4px}.message-suggestions{display:flex;flex-wrap:wrap;gap:6px}.suggestion-chip{padding:5px 10px;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:12px;color:#60a5fa;font-size:.75rem;cursor:pointer;transition:all .2s ease}.suggestion-chip:hover{background:#3b82f640;border-color:#3b82f680}.fairy-typing .message-content{display:none}.typing-indicator{display:flex;gap:4px;padding:12px 16px;background:#1e293b;border-radius:12px}.typing-indicator span{width:6px;height:6px;background:#64748b;border-radius:50%;animation:typingDot 1.4s ease-in-out infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.fairy-input-area{display:flex;gap:8px;padding:12px;background:#1e293b;border-top:1px solid #334155}.fairy-input{flex:1;padding:10px 14px;background:#0f172a;border:1px solid #334155;border-radius:20px;color:#e2e8f0;font-size:.875rem;outline:none;transition:border-color .2s ease}.fairy-input::placeholder{color:#64748b}.fairy-input:focus{border-color:#8b5cf6}.fairy-input:disabled{opacity:.6}.fairy-send-btn{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;color:#fff;font-size:1rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.fairy-send-btn:hover:not(:disabled){transform:scale(1.05);box-shadow:0 4px 12px #8b5cf666}.fairy-send-btn:disabled{opacity:.5;cursor:not-allowed}.fairy-messages::-webkit-scrollbar{width:6px}.fairy-messages::-webkit-scrollbar-track{background:#1e293b}.fairy-messages::-webkit-scrollbar-thumb{background:#475569;border-radius:3px}.fairy-messages::-webkit-scrollbar-thumb:hover{background:#64748b}@media (prefers-reduced-motion: reduce){.fairy-panel,.fairy-message,.fairy-toggle-btn,.unread-indicator{animation:none}.fairy-toggle-btn:hover{transform:none}}.governance-layout{display:flex;flex-direction:column;height:100%;overflow:hidden}.governance-subnav{display:flex;gap:.25rem;padding:.75rem 1rem;background:#1f2937!important;border-bottom:1px solid #374151!important;flex-shrink:0}.governance-tab{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;color:#d1d5db!important;text-decoration:none;transition:all .2s ease;border:1px solid transparent}.governance-tab:hover{background:#374151!important;color:#f9fafb!important}.governance-tab.active{background:#374151!important;color:#60a5fa!important;border-color:#4b5563!important;box-shadow:0 1px 2px #0003}.governance-tab .tab-icon{font-size:1rem}.governance-tab .tab-label{white-space:nowrap}@media (max-width: 768px){.governance-tab .tab-label{display:none}.governance-tab{padding:.625rem .75rem}.governance-tab .tab-icon{font-size:1.25rem}}.governance-content{flex:1;overflow-y:auto;padding:1.5rem;background:#fff;color:#1a1a1a}.governance-content .governance-section__title h2{color:#111827!important}.governance-content .governance-section__subtitle{color:#4b5563!important}.dashboard-header{margin-bottom:2rem}.dashboard-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary, #212529);margin:0 0 .5rem}.dashboard-subtitle{font-size:.9375rem;color:var(--text-secondary, #6c757d);margin:0}.risk-overview{margin-bottom:2rem}.risk-score-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:.5rem;padding:1.5rem;text-align:center}.risk-label{font-size:.875rem;font-weight:500;color:var(--text-secondary, #6c757d);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem}.risk-value{margin-bottom:1rem}.risk-badge{display:inline-block;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:600}.risk-badge.risk-low{background:#d1fae5;color:#065f46}.risk-badge.risk-moderate{background:#fef3c7;color:#92400e}.risk-badge.risk-high{background:#fee2e2;color:#991b1b}.risk-badge.risk-critical{background:#7f1d1d;color:#fff}.risk-badge.risk-unknown{background:#e5e7eb;color:#6b7280}.risk-description{font-size:.875rem;color:var(--text-secondary, #6c757d);max-width:500px;margin:0 auto}.risk-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.pillar-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:.5rem;padding:1.5rem;display:flex;flex-direction:column}.pillar-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.pillar-icon{font-size:1.5rem}.pillar-header h3{font-size:1rem;font-weight:600;color:var(--text-primary, #212529);margin:0}.pillar-score{margin-bottom:1rem}.pillar-score .score-value{font-size:2rem;font-weight:700;color:var(--text-primary, #212529)}.pillar-score .score-max{font-size:1rem;color:var(--text-secondary, #6c757d)}.pillar-status{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.status-indicator{width:8px;height:8px;border-radius:50%}.status-indicator.status-complete{background:#10b981}.status-indicator.status-partial{background:#f59e0b}.status-indicator.status-missing{background:#6b7280}.status-text{font-size:.875rem;color:var(--text-secondary, #6c757d)}.pillar-action{margin-top:auto;padding-top:1rem;font-size:.875rem;font-weight:500;color:var(--primary-color, #0d6efd);text-decoration:none;transition:color .2s ease}.pillar-action:hover{color:var(--primary-hover, #0a58ca)}.dashboard-info{background:var(--bg-info, #eff6ff);border:1px solid var(--border-info, #bfdbfe);border-radius:.5rem;padding:1.5rem}.dashboard-info h4{font-size:1rem;font-weight:600;color:var(--text-primary, #212529);margin:0 0 .75rem}.dashboard-info p{font-size:.875rem;color:var(--text-secondary, #374151);margin:0 0 .75rem;line-height:1.6}.dashboard-info ul{margin:.75rem 0;padding-left:1.25rem}.dashboard-info li{font-size:.875rem;color:var(--text-secondary, #374151);margin-bottom:.5rem;line-height:1.5}.dashboard-info li strong{color:var(--text-primary, #212529)}.governance-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:2rem}.placeholder-icon{font-size:4rem;margin-bottom:1.5rem;opacity:.5}.governance-placeholder h3{font-size:1.25rem;font-weight:600;color:var(--text-primary, #212529);margin:0 0 .75rem}.governance-placeholder p{font-size:.9375rem;color:var(--text-secondary, #6c757d);max-width:400px;margin:0 0 1.5rem;line-height:1.6}.placeholder-badge{display:inline-block;padding:.375rem .75rem;background:var(--bg-secondary, #f3f4f6);border-radius:1rem;font-size:.75rem;font-weight:500;color:var(--text-secondary, #6c757d)}.governance-section{max-width:1200px;margin:0 auto;color:#1a1a1a;background:transparent}.governance-section__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem}.governance-section__title{display:flex;align-items:flex-start;gap:1rem}.governance-section__icon{font-size:2rem}.governance-section__title h2,.governance-section h2{font-size:1.5rem;font-weight:600;color:#111827!important;margin:0;background:transparent!important}.governance-section__subtitle,.governance-section p.governance-section__subtitle{font-size:.9375rem;color:#374151!important;margin:.25rem 0 0;background:transparent!important;font-weight:400}.governance-content h2,.governance-content h3,.governance-content h4{color:#111827!important}.governance-content p{color:#374151!important}.governance-documents .governance-section__title h2,.governance-documents h2,.governance-interviews .governance-section__title h2,.governance-interviews h2,.interoperability-standards .governance-section__title h2,.interoperability-standards h2{color:#111827!important}.governance-documents .governance-section__subtitle,.governance-interviews .governance-section__subtitle,.interoperability-standards .governance-section__subtitle{color:#374151!important}.governance-section__actions{display:flex;gap:.75rem;flex-shrink:0}.governance-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem}.governance-loading .spinner{width:40px;height:40px;border:3px solid var(--border-color, #e0e0e0);border-top-color:var(--primary-color, #0d6efd);border-radius:50%;animation:spin 1s linear infinite}.governance-error{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:.375rem;margin-bottom:1.5rem}.governance-error__icon{font-size:1.25rem}.governance-error__message{flex:1;font-size:.875rem;color:#991b1b}.governance-error__dismiss{padding:.25rem .5rem;background:transparent;border:none;cursor:pointer;font-size:1rem;color:#991b1b}.governance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card{background:#fff!important;border:1px solid #e0e0e0!important;border-radius:.5rem;padding:1rem;text-align:center}.summary-card--primary{background:#eff6ff!important;border-color:#bfdbfe!important}.summary-card__value{font-size:1.75rem;font-weight:700;color:#111827!important;line-height:1.2}.summary-card__label{font-size:.75rem;font-weight:500;color:#374151!important;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.governance-list{background:#fff!important;border:1px solid #e0e0e0!important;border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.governance-list h3{font-size:1rem;font-weight:600;color:#111827!important;margin:0 0 1rem}.governance-table{width:100%;border-collapse:collapse}.governance-table th,.governance-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e0e0e0}.governance-table th{font-size:.75rem;font-weight:600;color:#374151!important;text-transform:uppercase;letter-spacing:.05em;background:#f8f9fa!important}.governance-table td{font-size:.875rem;color:#111827!important}.governance-table__subtitle{font-size:.75rem;color:var(--text-secondary, #6c757d);margin-top:.25rem}.role-badge,.status-badge,.category-badge,.gap-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:.25rem;font-size:.75rem;font-weight:500}.role-badge--researcher{background:#ede9fe;color:#5b21b6}.role-badge--it{background:#dbeafe;color:#1e40af}.status-badge--ready{background:#d1fae5;color:#065f46}.status-badge--pending{background:#e5e7eb;color:#6b7280}.status-badge--warning{background:#fef3c7;color:#92400e}.status-badge--error{background:#fee2e2;color:#991b1b}.category-badge{background:#f3f4f6!important;color:#374151!important}.gap-badge{background:#fef3c7!important;color:#92400e!important}.governance-empty{text-align:center;padding:2rem;color:#4b5563!important}.governance-empty p{margin:0 0 .75rem;color:#374151!important}.governance-empty__hint{font-size:.8125rem;color:#6b7280!important}.governance-empty__hint code{background:#f3f4f6!important;padding:.125rem .375rem;border-radius:.25rem;font-size:.75rem;color:#374151!important}.governance-help{background:#eff6ff!important;border:1px solid #bfdbfe!important;border-radius:.5rem;padding:1.25rem}.governance-help h4{font-size:.9375rem;font-weight:600;color:#1e3a8a!important;margin:0 0 .75rem}.governance-help p{font-size:.875rem;color:#1e40af!important;margin:0 0 .5rem;line-height:1.6}.governance-help ul{margin:.75rem 0;padding-left:1.25rem}.governance-help li{font-size:.875rem;color:#1e40af!important;margin-bottom:.5rem;line-height:1.6}.governance-help li strong{color:#1e3a8a!important;font-weight:600}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;border:1px solid transparent;transition:all .2s ease}.btn--primary{background:var(--primary-color, #0d6efd);color:#fff}.btn--primary:hover:not(:disabled){background:var(--primary-hover, #0a58ca)}.btn--secondary{background:var(--bg-primary, #ffffff);color:var(--text-primary, #212529);border-color:var(--border-color, #e0e0e0)}.btn--secondary:hover:not(:disabled){background:var(--bg-secondary, #f3f4f6)}.btn--small{padding:.375rem .75rem;font-size:.75rem}.btn:disabled{opacity:.6;cursor:not-allowed}.governance-upload{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.governance-upload h3{font-size:1rem;font-weight:600;margin:0 0 1rem}.upload-form{display:flex;gap:1rem;flex-wrap:wrap}.upload-category-select{padding:.625rem 1rem;border:1px solid var(--border-color, #e0e0e0);border-radius:.375rem;font-size:.875rem;min-width:200px}.upload-input{flex:1;min-width:200px}.upload-hint{font-size:.75rem;color:var(--text-muted, #9ca3af);margin:.75rem 0 0}.governance-upload-form{background:#fff!important;border:1px solid #e5e7eb!important;border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.governance-upload-form h3{font-size:1.125rem;font-weight:600;color:#111827!important;margin:0 0 1.25rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group--full{grid-column:1 / -1}.form-group label{font-size:.875rem;font-weight:600;color:#111827!important}.form-input,.form-textarea{padding:.625rem .875rem;border:1px solid #9ca3af!important;border-radius:.375rem;font-size:.875rem;color:#111827!important;background:#fff!important;transition:border-color .2s ease,box-shadow .2s ease}.form-input:focus,.form-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af}.form-textarea{resize:vertical;min-height:120px}.form-actions{display:flex;gap:.75rem;margin-top:1rem}.governance-gaps{background:#fef3c7;border:1px solid #fcd34d;border-radius:.5rem;padding:1rem 1.25rem;margin-bottom:1.5rem}.governance-gaps h4{font-size:.9375rem;font-weight:600;color:#92400e;margin:0 0 .75rem}.gap-badges{display:flex;flex-wrap:wrap;gap:.5rem}.fair-coverage-section{background:var(--bg-secondary, #f8f9fa);border:1px solid var(--border-color, #e0e0e0);border-radius:.5rem;padding:1rem 1.25rem;margin-bottom:1.5rem}.fair-coverage-section h4{font-size:.9375rem;font-weight:600;color:var(--text-primary, #212529);margin:0 0 1rem}.fair-coverage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.fair-pillar-group{background:var(--bg-primary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:.375rem;padding:.75rem}.fair-pillar-group--disabled{opacity:.5;background:var(--bg-tertiary, #f1f5f9)}.fair-pillar-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-light, #e5e7eb)}.fair-pillar-badge{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;font-size:.75rem;font-weight:700;color:#fff;border-radius:.25rem}.fair-pillar-badge--f{background:#3b82f6}.fair-pillar-badge--a{background:#22c55e}.fair-pillar-badge--i{background:#f97316}.fair-pillar-badge--r{background:#a855f7}.fair-pillar-name{font-size:.875rem;font-weight:600;color:var(--text-primary, #212529)}.fair-pillar-disabled{font-size:.75rem;color:var(--text-muted, #6c757d);font-style:italic}.fair-rules-list{display:flex;flex-direction:column;gap:.375rem}.fair-rule-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:.25rem;font-size:.8125rem;transition:background .15s ease}.fair-rule-item:hover{background:var(--bg-hover, #f1f5f9)}.fair-rule-item--covered{color:#16a34a}.fair-rule-item--partial{color:#ca8a04}.fair-rule-item--missing{color:#dc2626}.fair-rule-item--not_evaluated{color:var(--text-muted, #9ca3af)}.fair-rule-status{width:1rem;text-align:center;font-weight:600}.fair-rule-id{font-family:JetBrains Mono,Consolas,monospace;font-size:.75rem;font-weight:600;min-width:2.5rem}.fair-rule-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fair-rule-evidence{font-size:.6875rem;color:var(--text-muted, #6c757d);background:var(--bg-tertiary, #e5e7eb);padding:.125rem .375rem;border-radius:.25rem}.maturity-score{display:flex;align-items:center;gap:.75rem}.maturity-bar{flex:1;height:8px;background:var(--bg-secondary, #e5e7eb);border-radius:4px;overflow:hidden}.maturity-bar__fill{height:100%;background:var(--primary-color, #0d6efd);border-radius:4px;transition:width .3s ease}.standards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.standard-card{background:#1f2937;border:1px solid #374151;border-radius:.5rem;padding:1.25rem;transition:all .2s ease}.standard-card--enabled{border-color:#60a5fa;box-shadow:0 2px 4px #0003}.standard-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.standard-card__info h4{font-size:1rem;font-weight:600;color:#f9fafb!important;margin:0}.standard-card__description{font-size:.8125rem;color:#d1d5db!important;margin:.25rem 0 0}.standard-card__score{margin-bottom:1rem}.compliance-meter{height:8px;background:var(--bg-secondary, #e5e7eb);border-radius:4px;overflow:hidden;margin-bottom:.5rem}.compliance-meter__fill{height:100%;border-radius:4px;transition:width .3s ease}.compliance-meter__fill.compliance--excellent{background:#10b981}.compliance-meter__fill.compliance--good{background:#3b82f6}.compliance-meter__fill.compliance--fair{background:#f59e0b}.compliance-meter__fill.compliance--low{background:#f97316}.compliance-meter__fill.compliance--critical{background:#ef4444}.compliance-info{display:flex;justify-content:space-between;align-items:center}.compliance-label{font-size:.75rem;font-weight:600}.compliance-label.compliance--excellent{color:#34d399}.compliance-label.compliance--good{color:#60a5fa}.compliance-label.compliance--fair{color:#fbbf24}.compliance-label.compliance--low{color:#fb923c}.compliance-label.compliance--critical{color:#f87171}.compliance-score{font-size:.875rem;font-weight:600;color:#f9fafb!important}.toggle-switch{position:relative;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#d1d5db;border-radius:24px;transition:.2s}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background:#fff;border-radius:50%;transition:.2s}.toggle-switch input:checked+.toggle-slider{background:var(--primary-color, #0d6efd)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.standard-card__checklist{margin-bottom:1rem}.checklist-item{display:flex;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.8125rem}.checklist-icon{width:16px;text-align:center;font-weight:600}.checklist-item--pass .checklist-icon{color:#10b981}.checklist-item--partial .checklist-icon{color:#f59e0b}.checklist-item--fail .checklist-icon{color:#ef4444}.checklist-item--unchecked .checklist-icon{color:#9ca3af}.checklist-text{color:var(--text-secondary, #6c757d)}.standard-card__issues{margin-bottom:1rem}.issue-item{font-size:.8125rem;color:#92400e;padding:.25rem 0}.standard-card__actions{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-color, #e0e0e0)}.standard-card__last-validated{font-size:.75rem;color:var(--text-muted, #9ca3af)}.governance-analysis-result{margin-bottom:1.5rem}@media (prefers-color-scheme: dark){.governance-subnav{background:#1f2937;border-color:#374151}.governance-tab{color:#9ca3af}.governance-tab:hover{background:#374151;color:#f3f4f6}.governance-tab.active{background:#111827;color:#60a5fa;border-color:#374151}.governance-section__title h2{color:#f9fafb!important}.governance-section__subtitle{color:#d1d5db!important}.risk-score-card,.pillar-card{background:#1f2937;border-color:#374151}.pillar-card__info h4{color:#f9fafb!important}.pillar-card__weight{color:#9ca3af!important}.pillar-card__value,.metric__value{color:#f9fafb!important}.metric__label{color:#9ca3af!important}.recommendations-summary-card__title h4{color:#f9fafb!important}.recommendations-summary-card__subtitle,.rec-stat__label{color:#d1d5db!important}.dashboard-info{background:#1e3a5f;border-color:#2563eb}.governance-list,.summary-card,.standard-card,.governance-upload-form{background:#1f2937;border-color:#374151}.governance-list h3,.summary-card__value,.governance-table td,.governance-upload-form h3{color:#f9fafb}.form-group label{color:#d1d5db}.form-input,.form-textarea{background:#374151;border-color:#4b5563;color:#f9fafb}.form-input::placeholder,.form-textarea::placeholder{color:#9ca3af}.form-input:focus,.form-textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.governance-help{background:#1e3a5f;border-color:#2563eb}.governance-help h4,.governance-help p,.governance-help li{color:#e5e7eb}}.dcat-details-view{max-width:1200px;margin:0 auto}.dcat-details__nav{margin-bottom:1.5rem}.btn--link{background:transparent;border:none;color:#3b82f6;padding:0;font-weight:500;cursor:pointer;text-decoration:none}.btn--link:hover{color:#2563eb;text-decoration:underline}.dcat-details__header{margin-bottom:2rem}.dcat-details__header h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.dcat-details__subtitle{font-size:.9375rem;color:#6b7280;margin:0}.dcat-details__section{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.dcat-details__section h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.dcat-details__section .section-description{font-size:.875rem;color:#6b7280;margin:0 0 1.5rem}.portfolio-config-form{display:flex;flex-direction:column;gap:1.25rem}.portfolio-config-form .form-group{display:flex;flex-direction:column;gap:.375rem}.portfolio-config-form .form-group label{font-size:.875rem;font-weight:500;color:#374151}.portfolio-config-form .form-group input,.portfolio-config-form .form-group select{padding:.625rem .875rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;color:#1a1a1a;background:#fff;transition:border-color .2s,box-shadow .2s}.portfolio-config-form .form-group input:focus,.portfolio-config-form .form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.portfolio-config-form .form-group input::placeholder{color:#9ca3af}.portfolio-config-form .form-group small{font-size:.75rem;color:#6b7280}.portfolio-config-form .form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.standard-status-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.standard-status-summary .status-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:.375rem}.standard-status-summary .status-label{font-size:.875rem;color:#6b7280}.standard-status-summary .status-value{font-size:.875rem;font-weight:600;color:#1a1a1a}.standard-status-summary .status-value.enabled{color:#10b981}.standard-status-summary .status-value.disabled{color:#6b7280}@media (prefers-color-scheme: dark){.dcat-details__header h2,.dcat-details__section h3{color:#f9fafb}.dcat-details__subtitle,.dcat-details__section .section-description{color:#9ca3af}.dcat-details__section{background:#1f2937;border-color:#374151}.portfolio-config-form .form-group label{color:#d1d5db}.portfolio-config-form .form-group input,.portfolio-config-form .form-group select{background:#374151;border-color:#4b5563;color:#f9fafb}.portfolio-config-form .form-group input::placeholder{color:#6b7280}.portfolio-config-form .form-group small{color:#9ca3af}.portfolio-config-form .form-actions{border-top-color:#374151}.standard-status-summary .status-item{background:#374151}.standard-status-summary .status-label{color:#9ca3af}.standard-status-summary .status-value{color:#f9fafb}}.th-lens-score,.td-lens-score{width:80px;text-align:center}.lens-score-mini{display:flex;justify-content:center;align-items:center}.lens-score-empty{color:#9ca3af;font-size:.875rem}.lens-loading{display:flex;justify-content:center;align-items:center;padding:.25rem}.lens-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:lens-spin 1s linear infinite}@keyframes lens-spin{to{transform:rotate(360deg)}}.th-lenses-run,.td-lenses-run{width:70px;text-align:center}.lenses-count{display:inline-block;padding:.25rem .5rem;background:#ecfdf5;color:#047857;border-radius:.25rem;font-size:.75rem;font-weight:600}.lenses-count--empty{background:#f3f4f6;color:#9ca3af}.td-actions{min-width:180px}.action-buttons{display:flex;gap:.375rem;flex-wrap:wrap}.action-buttons .btn--small{padding:.25rem .5rem;font-size:.6875rem;white-space:nowrap}@media (prefers-color-scheme: dark){.lenses-count{background:#064e3b;color:#6ee7b7}.lenses-count--empty{background:#374151;color:#9ca3af}.lens-score-empty{color:#6b7280}.lens-spinner{border-color:#4b5563;border-top-color:#60a5fa}}.governance-dashboard{--gov-card-bg: #1f2937;--gov-card-border: #374151;--gov-card-shadow: 0 2px 8px rgba(0,0,0,.3);--gov-card-hover: 0 4px 12px rgba(0,0,0,.5);--gov-border-radius: 12px;--gov-spacing: 24px;--gov-primary: #60a5fa;--gov-success: #34d399;--gov-warning: #fbbf24;--gov-error: #f87171;--gov-neutral: #9ca3af;--gov-text-primary: #f9fafb;--gov-text-secondary: #d1d5db;--gov-text-muted: #9ca3af}@media (prefers-color-scheme: dark){.governance-dashboard{--gov-card-bg: #1f2937;--gov-card-border: #374151;--gov-card-shadow: 0 2px 8px rgba(0,0,0,.3);--gov-card-hover: 0 4px 12px rgba(0,0,0,.5);--gov-text-primary: #f9fafb;--gov-text-secondary: #d1d5db;--gov-text-muted: #9ca3af}}.dark .governance-dashboard,.dark-theme .governance-dashboard,[data-theme=dark] .governance-dashboard,body.dark .governance-dashboard{--gov-card-bg: #1f2937;--gov-card-border: #374151;--gov-card-shadow: 0 2px 8px rgba(0,0,0,.3);--gov-card-hover: 0 4px 12px rgba(0,0,0,.5);--gov-text-primary: #f9fafb;--gov-text-secondary: #d1d5db;--gov-text-muted: #9ca3af}.governance-dashboard{max-width:1200px;margin:0 auto}.governance-section__header{margin-bottom:var(--gov-spacing)}.governance-section__title h2{font-size:1.5rem;font-weight:700;color:var(--gov-text-primary);margin:0 0 .5rem}.governance-section__subtitle{font-size:.9375rem;color:var(--gov-text-secondary);margin:0}.risk-overview{margin-bottom:var(--gov-spacing)}.risk-score-card{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #334155;border-radius:var(--gov-border-radius);padding:2rem;display:flex;align-items:center;gap:2rem;position:relative;overflow:hidden}.risk-score-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(59,130,246,.1) 0%,transparent 70%);animation:riskGlow 8s ease-in-out infinite;pointer-events:none}@keyframes riskGlow{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.6;transform:scale(1.1)}}.risk-score-card__header{display:none}.risk-score-card__body{display:flex;align-items:center;gap:2rem;position:relative;z-index:1;width:100%}.risk-gauge{width:140px;height:140px;position:relative;flex-shrink:0}.risk-gauge__svg{width:100%;height:100%;transform:rotate(-90deg)}.risk-gauge__bg{fill:none;stroke:#334155;stroke-width:10}.risk-gauge__fill{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dasharray 1s ease-out,stroke .5s ease}.risk-gauge__fill--low{stroke:#10b981}.risk-gauge__fill--moderate{stroke:#f59e0b}.risk-gauge__fill--high{stroke:#ef4444}.risk-gauge__fill--critical{stroke:#dc2626}.risk-gauge__fill--pending{stroke:#6b7280}.risk-gauge__text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.risk-score-card__value{font-size:2.5rem;font-weight:700;color:#fff;line-height:1;display:block}.risk-score-card__label{font-size:.75rem;color:#d1d5db;text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.risk-details{flex:1;display:flex;flex-direction:column;gap:1rem}.risk-score-card__level{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;width:fit-content}.risk-score-card__level--low{background:#10b98133;color:#34d399}.risk-score-card__level--moderate{background:#f59e0b33;color:#fbbf24}.risk-score-card__level--high{background:#ef444433;color:#f87171}.risk-score-card__level--critical{background:#dc26264d;color:#fca5a5}.risk-score-card__level--pending{background:#6b728033;color:#9ca3af}.risk-score-card__recommendation{font-size:.9375rem;color:#f3f4f6!important;line-height:1.5;margin:0;max-width:500px}.risk-score-card__timestamp{font-size:.75rem;color:#9ca3af}.pillars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--gov-spacing);margin-bottom:var(--gov-spacing)}.pillar-card{background:var(--gov-card-bg);border:1px solid var(--gov-card-border);border-radius:var(--gov-border-radius);padding:1.5rem;box-shadow:var(--gov-card-shadow);transition:all .2s ease;display:flex;flex-direction:column}.pillar-card:hover{box-shadow:var(--gov-card-hover);transform:translateY(-2px)}.pillar-card__header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.pillar-card__icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:linear-gradient(135deg,#3b82f61a,#3b82f60d);color:var(--gov-primary)}.pillar-card__icon.pillar--good{background:linear-gradient(135deg,#10b98126,#10b9810d);color:var(--gov-success)}.pillar-card__icon.pillar--fair{background:linear-gradient(135deg,#f59e0b26,#f59e0b0d);color:var(--gov-warning)}.pillar-card__icon.pillar--low{background:linear-gradient(135deg,#ef444426,#ef44440d);color:var(--gov-error)}.pillar-card__icon.pillar--pending{background:linear-gradient(135deg,#6b728026,#6b72800d);color:var(--gov-neutral)}.pillar-card__info h4{font-size:1rem;font-weight:600;color:var(--gov-text-primary);margin:0}.pillar-card__weight{font-size:.75rem;color:var(--gov-text-muted);font-weight:500}.pillar-card__score{margin-bottom:1rem}.pillar-meter{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:.5rem}@media (prefers-color-scheme: dark){.pillar-meter{background:#374151}}.pillar-meter__fill{height:100%;border-radius:4px;transition:width .6s ease-out;background:linear-gradient(90deg,var(--gov-primary),#3b82f6)}.pillar-card__value{font-size:1.5rem;font-weight:700;color:var(--gov-text-primary)}.pillar-card__metrics{display:flex;gap:1.5rem;padding:.75rem 0;border-top:1px solid var(--gov-card-border);border-bottom:1px solid var(--gov-card-border);margin-bottom:1rem}.metric{display:flex;flex-direction:column;align-items:center}.metric__value{font-size:1.25rem;font-weight:700;color:var(--gov-text-primary);line-height:1}.metric__label{font-size:.6875rem;color:var(--gov-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:.25rem}.pillar-card__link{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:var(--gov-primary);text-decoration:none;margin-top:auto;transition:all .2s ease}.pillar-card__link:hover{color:#1d4ed8}.pillar-card__link:after{content:"→";transition:transform .2s ease}.pillar-card__link:hover:after{transform:translate(4px)}.governance-help{background:var(--gov-card-bg);border:1px solid var(--gov-card-border);border-radius:var(--gov-border-radius);padding:1.5rem;box-shadow:var(--gov-card-shadow)}.governance-help h4{font-size:1rem;font-weight:600;color:var(--gov-text-primary);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.governance-help h4:before{content:"ℹ";display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#3b82f61a;color:var(--gov-primary);border-radius:50%;font-size:.875rem;font-weight:700}.governance-help p{font-size:.875rem;color:var(--gov-text-secondary);line-height:1.6;margin:0 0 .75rem}.governance-help ul{margin:1rem 0;padding:0;list-style:none}.governance-help li{font-size:.875rem;color:var(--gov-text-secondary);line-height:1.6;margin-bottom:.75rem;padding-left:1.5rem;position:relative}.governance-help li:before{content:"";position:absolute;left:0;top:.5rem;width:8px;height:8px;background:var(--gov-primary);border-radius:2px}.governance-help li:nth-child(1):before{background:#10b981}.governance-help li:nth-child(2):before{background:#8b5cf6}.governance-help li:nth-child(3):before{background:#f59e0b}.governance-help li strong{color:var(--gov-text-primary);font-weight:600}@media (max-width: 768px){.risk-score-card{flex-direction:column;text-align:center;padding:1.5rem}.risk-score-card__body{flex-direction:column}.risk-details{align-items:center}.risk-score-card__recommendation{text-align:center}.pillars-grid{grid-template-columns:1fr}.pillar-card__metrics{justify-content:center}}.recommendations-summary-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:var(--gov-border-radius);padding:var(--gov-spacing);margin-bottom:var(--gov-spacing)}.recommendations-summary-card__header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.recommendations-summary-card__icon{font-size:2rem;line-height:1}.recommendations-summary-card__title h4{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:var(--gov-text-primary)}.recommendations-summary-card__subtitle{font-size:.875rem;color:var(--gov-text-secondary)}.recommendations-summary-card__stats{display:flex;gap:1.5rem;margin-bottom:1rem}.rec-stat{display:flex;flex-direction:column;align-items:center;padding:.5rem 1rem;background:#fff;border-radius:.5rem;min-width:70px}.rec-stat__value{font-size:1.5rem;font-weight:700;line-height:1}.rec-stat__label{font-size:.75rem;color:var(--gov-text-secondary);margin-top:.25rem}.rec-stat--total .rec-stat__value{color:var(--gov-primary)}.rec-stat--critical .rec-stat__value{color:var(--gov-error)}.rec-stat--high .rec-stat__value{color:#dc2626}.rec-stat--medium .rec-stat__value{color:var(--gov-warning)}.recommendations-summary-card__sources{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.source-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:9999px;background:#fff;border:1px solid #e5e7eb;color:var(--gov-text-secondary)}.source-badge--document{border-color:#93c5fd;color:#1d4ed8}.source-badge--interview{border-color:#86efac;color:#15803d}.source-badge--standard{border-color:#fcd34d;color:#b45309}.recommendations-summary-card__link{display:inline-flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500;color:var(--gov-primary);text-decoration:none;transition:color .2s ease}.recommendations-summary-card__link:hover{color:#1d4ed8;text-decoration:underline}@media (prefers-color-scheme: dark){.recommendations-summary-card{background:linear-gradient(135deg,#1e3a5f,#1e293b);border-color:#3b82f6}.recommendations-summary-card__title h4{color:#f9fafb}.recommendations-summary-card__subtitle{color:#d1d5db}.rec-stat{background:#374151}.rec-stat__label{color:#d1d5db}.source-badge{background:#374151;border-color:#4b5563;color:#d1d5db}.source-badge--document{color:#93c5fd}.source-badge--interview{color:#86efac}.source-badge--standard{color:#fcd34d}.pillar-card{background:#1f2937;border-color:#374151}.pillar-card__info h4{color:#f9fafb}.pillar-card__weight{color:#9ca3af}.pillar-card__value,.metric__value{color:#f9fafb}.metric__label{color:#9ca3af}.governance-help{background:#1f2937;border-color:#374151}.governance-help h4{color:#f9fafb}.governance-help p,.governance-help li{color:#d1d5db}.governance-help li strong{color:#f9fafb}}.compliance-gap-panel{background:var(--card-bg, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e5e7eb);padding:1.5rem;margin-top:1.5rem}.compliance-gap-panel--loading,.compliance-gap-panel--error,.compliance-gap-panel--empty{opacity:.8}.compliance-gap__header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.compliance-gap__icon{font-size:1.5rem;background:var(--primary-light, #e0f2fe);padding:.75rem;border-radius:10px;line-height:1}.compliance-gap__title{flex:1}.compliance-gap__title h4{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:var(--gov-text-primary, var(--text-primary, #1f2937))}.governance-dashboard .compliance-gap__title h4{color:#f9fafb}.governance-dashboard .compliance-gap__subtitle{color:#d1d5db}.compliance-gap__subtitle{font-size:.85rem;color:var(--gov-text-secondary, var(--text-secondary, #6b7280))}.compliance-gap__subtitle--error{color:var(--error-color, #dc2626)}.compliance-gap__score-badge{display:flex;flex-direction:column;align-items:center;background:var(--success-light, #dcfce7);padding:.5rem 1rem;border-radius:8px}.compliance-gap__score-value{font-size:1.25rem;font-weight:700;color:var(--success-color, #16a34a)}.compliance-gap__score-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--success-color, #16a34a)}.compliance-gap__retry{display:block;margin:1rem auto 0;padding:.5rem 1.5rem;background:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.compliance-gap__retry:hover{background:var(--primary-dark, #2563eb)}.compliance-gap__empty-message{margin-top:1rem;padding:1rem;background:var(--bg-secondary, #f9fafb);border-radius:8px;font-size:.9rem;color:var(--text-secondary, #6b7280)}.compliance-gap__empty-message p{margin:0 0 .5rem}.compliance-gap__empty-message ul{margin:0;padding-left:1.25rem}.compliance-gap__summary{display:flex;gap:.75rem;margin-bottom:1.25rem;flex-wrap:wrap}.compliance-gap__stat{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;font-size:.85rem}.compliance-gap__stat-value{font-weight:700}.compliance-gap__stat-label{font-weight:500}.compliance-gap__stat--exceeds{background:var(--success-light, #dcfce7);color:var(--success-color, #16a34a)}.compliance-gap__stat--on-track{background:var(--info-light, #dbeafe);color:var(--info-color, #2563eb)}.compliance-gap__stat--gap{background:var(--warning-light, #fef3c7);color:var(--warning-color, #d97706)}.compliance-gap__stat--critical{background:var(--error-light, #fee2e2);color:var(--error-color, #dc2626)}.compliance-gap__pillars{display:flex;flex-direction:column;gap:.75rem}.compliance-gap__pillar{border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden;transition:box-shadow .2s ease}.compliance-gap__pillar:hover{box-shadow:0 2px 8px #0000000d}.compliance-gap__pillar--expanded{border-color:var(--primary-color, #3b82f6)}.compliance-gap__pillar-header{display:flex;align-items:center;gap:1rem;padding:1rem;background:var(--bg-secondary, #f9fafb)}.compliance-gap__pillar-icon{font-size:1.25rem;width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:8px;border:1px solid var(--border-color, #e5e7eb)}.compliance-gap__pillar-info{flex:1}.compliance-gap__pillar-name{display:block;font-weight:600;font-size:.95rem;color:var(--text-primary, #1f2937);margin-bottom:.5rem}.compliance-gap__pillar-bars{display:flex;flex-direction:column;gap:.35rem}.compliance-gap__bar-row{display:flex;align-items:center;gap:.5rem}.compliance-gap__bar-label{font-size:.7rem;width:45px;color:var(--text-secondary, #6b7280)}.compliance-gap__bar{flex:1;height:8px;background:var(--bg-tertiary, #e5e7eb);border-radius:4px;overflow:hidden;max-width:200px}.compliance-gap__bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.compliance-gap__bar-fill--benchmark{background:var(--text-secondary, #6b7280)}.compliance-gap__bar-fill--practice{background:var(--info-color, #3b82f6)}.compliance-gap__bar-fill--practice.compliance-gap__status--exceeds{background:var(--success-color, #16a34a)}.compliance-gap__bar-fill--practice.compliance-gap__status--on-track{background:var(--info-color, #3b82f6)}.compliance-gap__bar-fill--practice.compliance-gap__status--gap{background:var(--warning-color, #d97706)}.compliance-gap__bar-fill--practice.compliance-gap__status--critical{background:var(--error-color, #dc2626)}.compliance-gap__bar-value{font-size:.75rem;font-weight:600;width:28px;text-align:right;color:var(--text-primary, #1f2937)}.compliance-gap__pillar-gap{display:flex;flex-direction:column;align-items:center;min-width:70px}.compliance-gap__gap-value{font-size:1.25rem;font-weight:700}.compliance-gap__gap-status{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em}.compliance-gap__status--exceeds{color:var(--success-color, #16a34a)}.compliance-gap__status--on-track{color:var(--info-color, #3b82f6)}.compliance-gap__status--gap{color:var(--warning-color, #d97706)}.compliance-gap__status--critical{color:var(--error-color, #dc2626)}.compliance-gap__expand-icon{font-size:.75rem;color:var(--text-secondary, #6b7280);padding:.5rem}.compliance-gap__drilldown{border-top:1px solid var(--border-color, #e5e7eb);background:#fff;padding:1rem}.compliance-gap__drilldown-header{font-size:.8rem;font-weight:600;color:var(--text-secondary, #6b7280);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.compliance-gap__drilldown-list{display:flex;flex-direction:column;gap:.5rem}.compliance-gap__dataset{display:flex;align-items:center;gap:1rem;padding:.5rem .75rem;background:var(--bg-secondary, #f9fafb);border-radius:6px;font-size:.85rem}.compliance-gap__dataset-name{flex:1;font-weight:500;color:var(--text-primary, #1f2937);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compliance-gap__dataset-score{color:var(--text-secondary, #6b7280);font-size:.8rem}.compliance-gap__dataset-gap{font-weight:700;min-width:40px;text-align:right}.compliance-gap__footer{margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color, #e5e7eb)}.compliance-gap__timestamp{font-size:.75rem;color:var(--text-tertiary, #9ca3af)}.dark .compliance-gap-panel,.dark-theme .compliance-gap-panel,[data-theme=dark] .compliance-gap-panel,body.dark .compliance-gap-panel{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.dark .compliance-gap__title h4,.dark-theme .compliance-gap__title h4,[data-theme=dark] .compliance-gap__title h4,body.dark .compliance-gap__title h4{color:var(--gov-text-primary, #f1f5f9)}.dark .compliance-gap__subtitle,.dark-theme .compliance-gap__subtitle,[data-theme=dark] .compliance-gap__subtitle,body.dark .compliance-gap__subtitle{color:var(--gov-text-secondary, #94a3b8)}.dark .compliance-gap__pillar-header,.dark-theme .compliance-gap__pillar-header,[data-theme=dark] .compliance-gap__pillar-header,body.dark .compliance-gap__pillar-header{background:#0f172a}.dark .compliance-gap__pillar-name,.dark-theme .compliance-gap__pillar-name,[data-theme=dark] .compliance-gap__pillar-name,body.dark .compliance-gap__pillar-name{color:var(--gov-text-primary, #f1f5f9)}.dark .compliance-gap__pillar-icon,.dark-theme .compliance-gap__pillar-icon,[data-theme=dark] .compliance-gap__pillar-icon,body.dark .compliance-gap__pillar-icon{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.dark .compliance-gap__bar-label,.dark-theme .compliance-gap__bar-label,[data-theme=dark] .compliance-gap__bar-label,body.dark .compliance-gap__bar-label{color:var(--gov-text-secondary, #94a3b8)}.dark .compliance-gap__bar-value,.dark-theme .compliance-gap__bar-value,[data-theme=dark] .compliance-gap__bar-value,body.dark .compliance-gap__bar-value{color:var(--gov-text-primary, #e2e8f0)}.dark .compliance-gap__bar,.dark-theme .compliance-gap__bar,[data-theme=dark] .compliance-gap__bar,body.dark .compliance-gap__bar{background:#334155}.dark .compliance-gap__expand-icon,.dark-theme .compliance-gap__expand-icon,[data-theme=dark] .compliance-gap__expand-icon,body.dark .compliance-gap__expand-icon{color:var(--gov-text-secondary, #94a3b8)}.dark .compliance-gap__drilldown,.dark-theme .compliance-gap__drilldown,[data-theme=dark] .compliance-gap__drilldown,body.dark .compliance-gap__drilldown{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.dark .compliance-gap__drilldown-header,.dark-theme .compliance-gap__drilldown-header,[data-theme=dark] .compliance-gap__drilldown-header,body.dark .compliance-gap__drilldown-header{color:var(--gov-text-secondary, #cbd5e1)}.dark .compliance-gap__dataset,.dark-theme .compliance-gap__dataset,[data-theme=dark] .compliance-gap__dataset,body.dark .compliance-gap__dataset{background:#0f172a}.dark .compliance-gap__dataset-name,.dark-theme .compliance-gap__dataset-name,[data-theme=dark] .compliance-gap__dataset-name,body.dark .compliance-gap__dataset-name{color:var(--gov-text-primary, #f1f5f9)}.dark .compliance-gap__dataset-score,.dark-theme .compliance-gap__dataset-score,[data-theme=dark] .compliance-gap__dataset-score,body.dark .compliance-gap__dataset-score{color:var(--gov-text-secondary, #94a3b8)}.dark .compliance-gap__pillar,.dark-theme .compliance-gap__pillar,[data-theme=dark] .compliance-gap__pillar,body.dark .compliance-gap__pillar,.dark .compliance-gap__footer,.dark-theme .compliance-gap__footer,[data-theme=dark] .compliance-gap__footer,body.dark .compliance-gap__footer{border-color:var(--gov-card-border, #334155)}.dark .compliance-gap__timestamp,.dark-theme .compliance-gap__timestamp,[data-theme=dark] .compliance-gap__timestamp,body.dark .compliance-gap__timestamp{color:var(--gov-text-muted, #64748b)}.dark .compliance-gap__empty-message,.dark-theme .compliance-gap__empty-message,[data-theme=dark] .compliance-gap__empty-message,body.dark .compliance-gap__empty-message{background:#0f172a;color:var(--gov-text-secondary, #94a3b8)}.dark .compliance-gap__score-badge,.dark-theme .compliance-gap__score-badge,[data-theme=dark] .compliance-gap__score-badge,body.dark .compliance-gap__score-badge{background:#16a34a26}@media (prefers-color-scheme: dark){.compliance-gap-panel{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.compliance-gap__title h4{color:var(--gov-text-primary, #f1f5f9)}.compliance-gap__subtitle{color:var(--gov-text-secondary, #94a3b8)}.compliance-gap__pillar-header{background:#0f172a}.compliance-gap__pillar-name{color:var(--gov-text-primary, #f1f5f9)}.compliance-gap__pillar-icon{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.compliance-gap__bar-label{color:var(--gov-text-secondary, #94a3b8)}.compliance-gap__bar-value{color:var(--gov-text-primary, #e2e8f0)}.compliance-gap__bar{background:#334155}.compliance-gap__drilldown{background:var(--gov-card-bg, #1e293b);border-color:var(--gov-card-border, #334155)}.compliance-gap__drilldown-header{color:var(--gov-text-secondary, #cbd5e1)}.compliance-gap__dataset{background:#0f172a}.compliance-gap__dataset-name{color:var(--gov-text-primary, #f1f5f9)}.compliance-gap__dataset-score{color:var(--gov-text-secondary, #94a3b8)}.compliance-gap__pillar{border-color:var(--gov-card-border, #334155)}.compliance-gap__expand-icon{color:var(--gov-text-secondary, #94a3b8)}.compliance-gap__empty-message{background:#0f172a;color:var(--gov-text-secondary, #94a3b8)}}@media (max-width: 640px){.compliance-gap__header{flex-wrap:wrap}.compliance-gap__score-badge{margin-left:auto}.compliance-gap__pillar-header{flex-wrap:wrap}.compliance-gap__pillar-info{width:100%;order:2}.compliance-gap__pillar-gap{margin-left:auto}.compliance-gap__bar{max-width:100%}}.org-heatmap{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;overflow:hidden}.org-heatmap__loading,.org-heatmap__error,.org-heatmap__empty{padding:3rem 2rem;text-align:center;color:#6b7280}.org-heatmap__error{color:#dc2626}.org-heatmap__error button{margin-top:1rem}.org-heatmap__empty h3{margin:0 0 .5rem;color:#374151}.org-heatmap__header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;gap:1rem}.org-heatmap__title h3{margin:0;font-size:1.125rem;font-weight:600;color:#111827}.org-heatmap__subtitle{display:block;margin-top:.25rem;font-size:.8125rem;color:#6b7280}.org-heatmap__metrics{display:flex;gap:1.5rem;flex-wrap:wrap}.metric{display:flex;flex-direction:column;align-items:center;gap:.125rem}.metric__label{font-size:.6875rem;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.025em}.metric__value{font-size:1rem;font-weight:700;color:#111827}.metric--pain .metric__value{color:#dc2626}.metric--strength .metric__value{color:#059669}.org-heatmap__grid-container{position:relative;padding:1.5rem;overflow-x:auto}.org-heatmap__grid{display:table;border-collapse:separate;border-spacing:2px;min-width:100%}.heatmap-row{display:table-row}.heatmap-cell{display:table-cell;padding:.5rem .75rem;text-align:center;vertical-align:middle;border-radius:.25rem;transition:all .15s ease}.heatmap-cell--corner{background:transparent;font-size:.75rem;font-weight:600;color:#6b7280;text-align:right;padding-right:1rem;min-width:80px}.heatmap-cell--header{background:#f3f4f6;font-weight:600;min-width:100px}.pillar-letter{display:block;font-size:1.25rem;color:#374151}.pillar-name{display:block;font-size:.6875rem;color:#6b7280;margin-top:.125rem}.heatmap-cell--persona{background:#f3f4f6;text-align:left;min-width:120px;max-width:150px;cursor:help}.persona-abbrev{display:inline-block;font-size:.75rem;font-weight:700;color:#374151;background:#e5e7eb;padding:.125rem .375rem;border-radius:.25rem;margin-right:.5rem}.persona-full{font-size:.75rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.heatmap-cell--data{min-width:80px;cursor:pointer;position:relative}.heatmap-cell--data:hover,.heatmap-cell--hovered{transform:scale(1.05);z-index:10;box-shadow:0 4px 12px #00000026}.cell-score{display:block;font-size:.875rem;font-weight:700}.cell-sample{display:block;font-size:.625rem;opacity:.8;margin-top:.125rem}.cell-empty{font-size:1rem;color:#d1d5db}.heatmap-row--footer .heatmap-cell--corner{font-weight:700;color:#374151}.heatmap-cell--average{font-weight:700}.org-heatmap__detail{position:absolute;top:1rem;right:1rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:20}.org-heatmap__detail h4{margin:0 0 .25rem;font-size:.875rem;font-weight:600;color:#111827}.detail-pillar{margin:0 0 .75rem;font-size:.75rem;color:#6b7280}.detail-stats{display:flex;flex-direction:column;gap:.5rem}.stat{display:flex;justify-content:space-between;align-items:center}.stat-label{font-size:.75rem;color:#6b7280}.stat-value{font-size:.875rem;font-weight:600}.org-heatmap__legend{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;background:#fafafa}.legend-label{font-size:.75rem;font-weight:500;color:#6b7280}.legend-scale{display:flex;gap:2px}.legend-item{width:40px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.625rem;font-weight:600;color:#fff;border-radius:2px}.legend-item:nth-child(4){color:#374151}.org-heatmap__quotes{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#e5e7eb;border-top:1px solid #e5e7eb}.quotes-section{background:#fff;padding:0}.quotes-section h4{margin:0;padding:.875rem 1.25rem;font-size:.875rem;font-weight:600;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:background .15s ease}.quotes-section h4:hover{background:#f9fafb}.quotes-section--negative h4{color:#fff;background:#dc2626;border-left:3px solid #991b1b}.quotes-section--negative h4:hover{background:#b91c1c}.quotes-section--positive h4{color:#fff;background:#059669;border-left:3px solid #047857}.quotes-section--positive h4:hover{background:#047857}.toggle-icon{font-size:.625rem;color:#fffc}.quotes-list{padding:0 1.25rem 1.25rem}.quote-item{padding:.75rem;border-radius:.375rem;margin-bottom:.5rem}.quote-item:last-child{margin-bottom:0}.quote-item--negative{background:#7f1d1d;border-left:3px solid #fca5a5}.quote-item--positive{background:#14532d;border-left:3px solid #86efac}.quote-text{margin:0 0 .5rem;font-size:.8125rem;color:#111827!important;font-style:italic;line-height:1.5}.quote-meta{display:flex;gap:.75rem;font-size:.6875rem}.quote-persona{font-weight:600;color:#1f2937}.quote-pillar{color:#374151;font-weight:500}.quote-score{font-weight:700}.quote-item--negative .quote-text{color:#fef2f2!important}.quote-item--negative .quote-persona,.quote-item--negative .quote-pillar{color:#fecaca}.quote-item--negative .quote-score{color:#fca5a5}.quote-item--positive .quote-text{color:#f0fdf4!important}.quote-item--positive .quote-persona,.quote-item--positive .quote-pillar{color:#bbf7d0}.quote-item--positive .quote-score{color:#86efac}.no-quotes{color:#9ca3af;font-size:.8125rem;font-style:italic;margin:0}.org-heatmap__footer{display:flex;justify-content:space-between;padding:.75rem 1.25rem;background:#f9fafb;border-top:1px solid #e5e7eb;font-size:.6875rem;color:#9ca3af}@media (prefers-color-scheme: dark){.org-heatmap{background:#1f2937;border-color:#374151}.org-heatmap__header{background:#111827;border-color:#374151}.org-heatmap__title h3{color:#f9fafb}.org-heatmap__subtitle{color:#9ca3af}.metric__value{color:#f9fafb}.heatmap-cell--corner{color:#9ca3af}.heatmap-cell--header{background:#374151}.pillar-letter{color:#e5e7eb}.heatmap-cell--persona{background:#374151}.persona-abbrev{background:#4b5563;color:#e5e7eb}.persona-full{color:#9ca3af}.org-heatmap__detail{background:#1f2937;border-color:#374151}.org-heatmap__detail h4{color:#f9fafb}.org-heatmap__legend{background:#111827;border-color:#374151}.org-heatmap__quotes{background:#374151}.quotes-section{background:#1f2937}.quotes-section h4:hover{background:#374151}.quote-item--negative{background:#450a0a}.quote-item--positive{background:#052e16}.quote-text{color:#e5e7eb}.quote-item--negative .quote-text,.quote-item--negative .quote-persona,.quote-item--negative .quote-pillar{color:#fecaca}.quote-item--negative .quote-score{color:#fca5a5}.quote-item--positive .quote-text,.quote-item--positive .quote-persona,.quote-item--positive .quote-pillar{color:#bbf7d0}.quote-item--positive .quote-score{color:#86efac}.org-heatmap__footer{background:#111827;border-color:#374151}}@media (max-width: 768px){.org-heatmap__header{flex-direction:column}.org-heatmap__metrics{justify-content:flex-start}.org-heatmap__quotes{grid-template-columns:1fr}.persona-full{display:none}.heatmap-cell--persona{min-width:60px}}.organizational-interviews .governance-section__title h2,.organizational-interviews h2{color:#111827!important}.organizational-interviews .governance-section__subtitle,.organizational-interviews p{color:#374151!important}.governance-success{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#d1fae5;border:1px solid #6ee7b7;border-radius:.375rem;margin-bottom:1.5rem}.governance-success__icon{font-size:1.25rem;color:#059669}.governance-success__message{flex:1;font-size:.875rem;color:#065f46}.governance-success__dismiss{padding:.25rem .5rem;background:transparent;border:none;cursor:pointer;font-size:1.25rem;color:#065f46;line-height:1}.governance-success__dismiss:hover{color:#047857}.btn--success{background:#10b981;color:#fff;border:1px solid #059669}.btn--success:hover:not(:disabled){background:#059669}.btn--danger{background:#ef4444;color:#fff;border:1px solid #dc2626}.btn--danger:hover:not(:disabled){background:#dc2626}.governance-table--selectable{border-collapse:separate;border-spacing:0}.th-checkbox,.td-checkbox{width:40px;text-align:center;padding:.75rem .5rem!important}.th-checkbox input[type=checkbox],.td-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#2563eb}.governance-table--selectable tbody tr:hover{background:#f9fafb!important}.governance-table--selectable tbody tr:hover td{color:#111827!important}.governance-table--selectable tbody tr.row-selected{background:#eff6ff!important}.governance-table--selectable tbody tr.row-selected td{color:#111827!important}.governance-table--selectable tbody tr.row-selected td strong{color:#1e40af!important}.governance-table--selectable tbody tr.row-selected .status-badge,.governance-table--selectable tbody tr:hover .status-badge{opacity:1}@media (prefers-color-scheme: dark){.governance-table--selectable tbody tr:hover{background:#374151!important}.governance-table--selectable tbody tr:hover td{color:#f9fafb!important}.governance-table--selectable tbody tr.row-selected{background:#1e3a5f!important}.governance-table--selectable tbody tr.row-selected td{color:#f9fafb!important}.governance-table--selectable tbody tr.row-selected td strong{color:#60a5fa!important}}.list-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.list-header h3{margin:0;font-size:1rem;font-weight:600;color:#111827}.list-count{font-size:.875rem;color:#6b7280;font-weight:500}@media (prefers-color-scheme: dark){.list-header h3{color:#f9fafb}.list-count{color:#9ca3af}}.governance-recommendations{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.recommendations-header{margin-bottom:1.25rem}.recommendations-header h3{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 .25rem}.recommendations-subtitle{font-size:.875rem;color:#6b7280;margin:0}.recommendations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.recommendation-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;transition:all .2s ease}.recommendation-card:hover{border-color:#d1d5db;box-shadow:0 2px 4px #0000000d}.recommendation-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.recommendation-priority{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.priority--critical{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.priority--high{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.priority--medium{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.priority--low{background:#f3f4f6;color:#4b5563;border:1px solid #d1d5db}.recommendation-driver{font-size:.75rem;color:#6b7280;font-weight:500}.recommendation-card__title{font-size:.9375rem;font-weight:600;color:#111827;margin:0 0 .5rem;line-height:1.4}.recommendation-card__description{font-size:.8125rem;color:#4b5563;margin:0 0 .75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.recommendation-card__footer{display:flex;gap:1rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.recommendation-meta{font-size:.75rem;color:#6b7280}.recommendations-more{text-align:center;font-size:.875rem;color:#6b7280;margin:1rem 0 0;font-style:italic}@media (prefers-color-scheme: dark){.governance-recommendations{background:#1f2937;border-color:#374151}.recommendations-header h3{color:#f9fafb}.recommendations-subtitle{color:#9ca3af}.recommendation-card{background:#374151;border-color:#4b5563}.recommendation-card__title{color:#f9fafb}.recommendation-card__description{color:#d1d5db}.recommendation-card__footer{border-color:#4b5563}.recommendation-driver,.recommendation-meta,.recommendations-more{color:#9ca3af}.governance-success{background:#064e3b;border-color:#059669}.governance-success__icon,.governance-success__message,.governance-success__dismiss{color:#6ee7b7}}.form-hint{display:block;font-size:.75rem;color:#6b7280;margin-top:.25rem}@media (prefers-color-scheme: dark){.form-hint{color:#9ca3af}}.fair-pillar-checkboxes{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:.5rem}.pillar-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151}.pillar-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#2563eb}.pillar-label{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;font-weight:700;font-size:.75rem}.pillar-label.pillar-F{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.pillar-label.pillar-A{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.pillar-label.pillar-I{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.pillar-label.pillar-R{background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd}@media (prefers-color-scheme: dark){.pillar-checkbox{color:#d1d5db}}.fair-pillar-indicators{display:flex;gap:2px}.pillar-indicator{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;font-weight:700;font-size:.625rem;transition:all .15s ease}.pillar-indicator.pillar-inactive{background:#f3f4f6;color:#9ca3af;border:1px solid #e5e7eb}.pillar-indicator.pillar-active.pillar-F{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.pillar-indicator.pillar-active.pillar-A{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.pillar-indicator.pillar-active.pillar-I{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.pillar-indicator.pillar-active.pillar-R{background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd}@media (prefers-color-scheme: dark){.pillar-indicator.pillar-inactive{background:#374151;color:#6b7280;border-color:#4b5563}.pillar-indicator.pillar-active.pillar-F{background:#78350f;color:#fcd34d}.pillar-indicator.pillar-active.pillar-A{background:#1e3a8a;color:#93c5fd}.pillar-indicator.pillar-active.pillar-I{background:#064e3b;color:#6ee7b7}.pillar-indicator.pillar-active.pillar-R{background:#4c1d95;color:#c4b5fd}}.th-owner{width:60px;text-align:center}.td-owner{text-align:center;padding:.5rem!important}.owner-indicator{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:1rem;cursor:pointer;border:2px solid transparent;transition:all .2s ease;background:transparent}.owner-indicator--assigned{color:#10b981;border-color:#10b981;background:#d1fae5}.owner-indicator--assigned:hover{background:#a7f3d0;border-color:#059669}.owner-indicator--missing{color:#ef4444;border-color:#ef4444;background:#fee2e2}.owner-indicator--missing:hover{background:#fecaca;border-color:#dc2626}.doc-name-button{background:none;border:none;padding:0;cursor:pointer;text-align:left;display:inline-flex;align-items:center;gap:.5rem;transition:color .15s ease}.doc-name-button strong{color:#1e40af;text-decoration:underline;text-decoration-color:transparent;transition:text-decoration-color .15s ease}.doc-name-button:hover strong{text-decoration-color:#1e40af}.doc-name-button .version-tag{color:#6b7280;font-size:.75rem;font-weight:500;background:#f3f4f6;padding:.125rem .375rem;border-radius:.25rem}@media (prefers-color-scheme: dark){.owner-indicator--assigned{color:#34d399;border-color:#34d399;background:#064e3b}.owner-indicator--assigned:hover{background:#065f46}.owner-indicator--missing{color:#f87171;border-color:#f87171;background:#7f1d1d}.owner-indicator--missing:hover{background:#991b1b}.doc-name-button strong{color:#60a5fa}.doc-name-button:hover strong{text-decoration-color:#60a5fa}.doc-name-button .version-tag{color:#9ca3af;background:#374151}}.governance-heatmap-section{margin-bottom:1.5rem}.action-dropdown{padding:.375rem .75rem;font-size:.8125rem;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;color:#374151;cursor:pointer;min-width:100px}.action-dropdown:hover{border-color:#9ca3af;background:#f9fafb}.action-dropdown:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.action-dropdown option:disabled{color:#9ca3af}@media (prefers-color-scheme: dark){.action-dropdown{background:#374151;border-color:#4b5563;color:#e5e7eb}.action-dropdown:hover{background:#4b5563;border-color:#6b7280}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#fff;border-radius:.75rem;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-content--large{width:90%;max-width:1000px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:1.75rem;color:#6b7280;cursor:pointer;padding:.25rem;line-height:1;border-radius:.25rem}.modal-close:hover{color:#111827;background:#e5e7eb}.modal-body{padding:1.5rem;overflow-y:auto}.interview-detail-meta{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem 1.25rem;background:#f3f4f6;border-radius:.5rem;margin-bottom:1.5rem}.meta-item{display:flex;flex-direction:column;gap:.25rem}.meta-label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.025em}.meta-value{font-size:.9375rem;font-weight:600;color:#111827}.no-analysis-message{text-align:center;padding:3rem 2rem;color:#6b7280}.no-analysis-message p:first-child{font-size:1.125rem;font-weight:500;color:#374151;margin-bottom:.5rem}.loading-spinner{background:#fff;padding:2rem 3rem;border-radius:.5rem;font-size:1rem;color:#374151;box-shadow:0 4px 6px -1px #0000001a}.modal-header-actions{display:flex;align-items:center;gap:1rem}.view-toggle{display:flex;background:#e5e7eb;border-radius:.375rem;padding:.25rem}.view-toggle-btn{padding:.5rem 1rem;font-size:.875rem;font-weight:500;border:none;background:transparent;color:#6b7280;cursor:pointer;border-radius:.25rem;transition:all .15s ease}.view-toggle-btn:hover:not(:disabled){color:#374151}.view-toggle-btn.active{background:#fff;color:#1e40af;box-shadow:0 1px 2px #0000001a}.view-toggle-btn:disabled{color:#9ca3af;cursor:not-allowed}.transcript-view{background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem;max-height:60vh;overflow-y:auto}.transcript-content{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.7;color:#374151;white-space:pre-wrap;word-wrap:break-word;margin:0}.no-transcript-message{text-align:center;padding:3rem 2rem;color:#6b7280}.no-transcript-message p{font-size:1rem;margin:0}@media (prefers-color-scheme: dark){.view-toggle{background:#374151}.view-toggle-btn{color:#9ca3af}.view-toggle-btn:hover:not(:disabled){color:#e5e7eb}.view-toggle-btn.active{background:#1f2937;color:#60a5fa}.view-toggle-btn:disabled{color:#6b7280}.transcript-view{background:#111827;border-color:#374151}.transcript-content{color:#e5e7eb}.no-transcript-message{color:#9ca3af}}@media (prefers-color-scheme: dark){.modal-content{background:#1f2937}.modal-header{background:#111827;border-color:#374151}.modal-header h2{color:#f9fafb}.modal-close{color:#9ca3af}.modal-close:hover{color:#f9fafb;background:#374151}.interview-detail-meta{background:#111827}.meta-label{color:#9ca3af}.meta-value{color:#f9fafb}.no-analysis-message{color:#9ca3af}.no-analysis-message p:first-child{color:#e5e7eb}.loading-spinner{background:#374151;color:#e5e7eb}}.doc-panel-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:flex-end;z-index:1000;animation:fadeIn .2s ease}.doc-panel{width:480px;max-width:100%;height:100%;background:#fff;box-shadow:-4px 0 20px #00000026;display:flex;flex-direction:column;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.doc-panel__header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.doc-panel__title-area{display:flex;gap:1rem;align-items:flex-start}.doc-panel__icon{font-size:2rem;line-height:1}.doc-panel__title{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:#111827;line-height:1.3}.doc-panel__meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.doc-panel__type,.doc-panel__category,.doc-panel__version{font-size:.75rem;padding:.125rem .5rem;border-radius:.25rem;background:#e5e7eb;color:#4b5563}.doc-panel__close{background:none;border:none;font-size:1.75rem;cursor:pointer;color:#6b7280;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .15s ease}.doc-panel__close:hover{background:#e5e7eb;color:#111827}.doc-panel__content{flex:1;overflow-y:auto;padding:1.5rem}.doc-panel__section{margin-bottom:2rem}.doc-panel__section:last-child{margin-bottom:0}.doc-panel__section h3{font-size:.875rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em;margin:0 0 1rem}.doc-panel__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.doc-panel__section-header h3{margin:0}.owner-status-badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;padding:.25rem .75rem;border-radius:1rem}.owner-status-badge--assigned{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.owner-status-badge--missing{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.doc-owner-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.doc-owner-card{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.doc-owner-card__info{display:flex;flex-direction:column;gap:.25rem}.doc-owner-card__name{font-weight:600;color:#111827;font-size:.9375rem}.doc-owner-card__email{color:#3b82f6;font-size:.8125rem}.doc-owner-card__dept{color:#6b7280;font-size:.75rem}.doc-owner-card__date{color:#9ca3af;font-size:.6875rem;margin-top:.25rem}.doc-owner-card__notes{color:#6b7280;font-size:.8125rem;font-style:italic;margin-top:.375rem;padding-top:.375rem;border-top:1px dashed #e5e7eb}.doc-owner-card__remove{background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .15s ease}.doc-owner-card__remove:hover:not(:disabled){background:#fee2e2;color:#ef4444}.doc-owner-card__remove:disabled{opacity:.5;cursor:not-allowed}.doc-panel__empty{padding:1.5rem;background:#fffbeb;border:1px solid #fcd34d;border-radius:.5rem;text-align:center;margin-bottom:1rem}.doc-panel__empty p{margin:0;color:#92400e;font-size:.875rem}.doc-panel__empty-hint{margin-top:.5rem!important;color:#b45309!important;font-size:.8125rem!important}.doc-panel__add-btn{width:100%;padding:.75rem;background:#eff6ff;border:2px dashed #3b82f6;border-radius:.5rem;color:#2563eb;font-weight:500;cursor:pointer;transition:all .15s ease}.doc-panel__add-btn:hover{background:#dbeafe;border-style:solid}.doc-assign-form{padding:1rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.5rem;margin-top:1rem}.doc-assign-form h4{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:#374151}.doc-assign-form__field{margin-bottom:.75rem}.doc-assign-form__field label{display:block;font-size:.75rem;font-weight:500;color:#4b5563;margin-bottom:.25rem}.doc-assign-form__select,.doc-assign-form__textarea{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background:#fff;color:#111827}.doc-assign-form__select:focus,.doc-assign-form__textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.doc-assign-form__select option{color:#111827;background:#fff}.doc-assign-form__textarea{resize:vertical;min-height:60px}.doc-assign-form__actions{display:flex;gap:.5rem;margin-top:1rem}.doc-assign-form__actions .btn{flex:1}.doc-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.doc-info-item{display:flex;flex-direction:column;gap:.25rem}.doc-info-item--full{grid-column:1 / -1;margin-top:.5rem}.doc-info-item label{font-size:.6875rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.doc-info-item span{font-size:.875rem;color:#111827}.status-tag{display:inline-block;padding:.125rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-tag--complete{background:#d1fae5;color:#065f46}.status-tag--partial{background:#fef3c7;color:#92400e}.status-tag--missing{background:#fee2e2;color:#991b1b}.doc-pillar-badges{display:flex;gap:.375rem}.pillar-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;font-weight:700;font-size:.75rem;transition:all .15s ease}.pillar-badge--inactive{background:#f3f4f6;color:#9ca3af;border:1px solid #e5e7eb}.pillar-badge--active.pillar-badge--F{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.pillar-badge--active.pillar-badge--A{background:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.pillar-badge--active.pillar-badge--I{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}.pillar-badge--active.pillar-badge--R{background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd}.doc-panel__loading{padding:2rem;text-align:center;color:#6b7280;font-size:.875rem}.doc-panel__error{padding:1rem;background:#fee2e2;border:1px solid #fecaca;border-radius:.5rem;color:#991b1b;font-size:.875rem}@media (max-width: 640px){.doc-panel{width:100%}.doc-info-grid{grid-template-columns:1fr}}@media (prefers-color-scheme: dark){.doc-panel{background:#1f2937;box-shadow:-4px 0 20px #0006}.doc-panel__header{background:#111827;border-color:#374151}.doc-panel__title{color:#f9fafb}.doc-panel__type,.doc-panel__category,.doc-panel__version{background:#374151;color:#d1d5db}.doc-panel__close{color:#9ca3af}.doc-panel__close:hover{background:#374151;color:#f9fafb}.doc-panel__section h3{color:#d1d5db}.owner-status-badge--assigned{background:#064e3b;color:#6ee7b7;border-color:#059669}.owner-status-badge--missing{background:#7f1d1d;color:#fca5a5;border-color:#dc2626}.doc-owner-card{background:#374151;border-color:#4b5563}.doc-owner-card__name{color:#f9fafb}.doc-owner-card__email{color:#60a5fa}.doc-owner-card__dept{color:#9ca3af}.doc-owner-card__date{color:#6b7280}.doc-owner-card__notes{color:#9ca3af;border-color:#4b5563}.doc-owner-card__remove{color:#6b7280}.doc-owner-card__remove:hover:not(:disabled){background:#7f1d1d;color:#f87171}.doc-panel__empty{background:#78350f;border-color:#92400e}.doc-panel__empty p{color:#fcd34d}.doc-panel__empty-hint{color:#fbbf24!important}.doc-panel__add-btn{background:#1e3a8a;border-color:#3b82f6;color:#93c5fd}.doc-panel__add-btn:hover{background:#1e40af}.doc-assign-form{background:#374151;border-color:#4b5563}.doc-assign-form h4{color:#d1d5db}.doc-assign-form__field label{color:#9ca3af}.doc-assign-form__select,.doc-assign-form__textarea{background:#1f2937;border-color:#4b5563;color:#f9fafb}.doc-assign-form__select option{background:#1f2937;color:#f9fafb}.doc-info-item label{color:#9ca3af}.doc-info-item span{color:#f9fafb}.pillar-badge--inactive{background:#374151;color:#6b7280;border-color:#4b5563}.doc-panel__loading{color:#9ca3af}.doc-panel__error{background:#7f1d1d;border-color:#dc2626;color:#fca5a5}}.lsc-card{background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:12px;transition:all .2s ease;position:relative;overflow:hidden}.lsc-card--compact{padding:12px;gap:8px}.lsc-card--clickable{cursor:pointer}.lsc-card--clickable:hover{border-color:var(--accent, #3B82F6);box-shadow:0 4px 12px #3b82f626}.lsc-card--selected{border-color:var(--accent, #3B82F6);box-shadow:0 0 0 2px #3b82f633}.lsc-card--critical{border-color:#dc2626}.lsc-card--disabled{opacity:.6;cursor:not-allowed}.lsc-card--loading,.lsc-card--empty{min-height:160px}.lsc-card--compact.lsc-card--loading,.lsc-card--compact.lsc-card--empty{min-height:100px}.lsc-card__header{display:flex;align-items:center;gap:10px}.lsc-card__icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.lsc-card--compact .lsc-card__icon{width:28px;height:28px;font-size:12px}.lsc-card__name{font-weight:600;font-size:14px;color:var(--text, #E2E8F0);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lsc-card--compact .lsc-card__name{font-size:13px}.lsc-card__alert-icon{color:#dc2626;font-size:16px;animation:pulse-alert 2s infinite}@keyframes pulse-alert{0%,to{opacity:1}50%{opacity:.5}}.lsc-card__body{display:flex;flex-direction:column;align-items:center;gap:12px}.lsc-card--compact .lsc-card__body{gap:8px}.lsc-card__body--empty{justify-content:center;flex:1}.lsc-card__gauge{display:flex;justify-content:center}.lsc-card__score-placeholder{font-size:32px;font-weight:700;color:var(--text-muted, #64748B)}.lsc-card--compact .lsc-card__score-placeholder{font-size:24px}.lsc-card__empty-text{font-size:12px;color:var(--text-muted, #64748B)}.lsc-coverage{width:100%}.lsc-coverage--compact{display:none}.lsc-coverage__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.lsc-coverage__label{font-size:11px;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px}.lsc-coverage__value{font-size:12px;color:var(--text, #E2E8F0);font-weight:500}.lsc-coverage__bar-bg{height:4px;background:var(--bg-tertiary, #0F172A);border-radius:2px;overflow:hidden}.lsc-coverage__bar-fill{height:100%;border-radius:2px;transition:width .6s ease-out}.lsc-findings-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}.lsc-findings-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:500;white-space:nowrap}.lsc-findings-badge--none{background:var(--bg-tertiary, #0F172A);color:var(--text-muted, #64748B)}.lsc-findings-badge--minor{background:#fefce8;color:#ca8a04}.lsc-findings-badge--compact{width:24px;height:24px;padding:0;justify-content:center;border-radius:50%;font-size:10px;font-weight:700;background:var(--bg-tertiary, #0F172A);color:var(--text, #E2E8F0)}.lsc-findings-badge--compact.lsc-findings-badge--critical{background:#fef2f2;color:#dc2626}.lsc-findings-badge--compact.lsc-findings-badge--major{background:#fff7ed;color:#ea580c}.lsc-card__footer{display:flex;justify-content:center;padding-top:8px;border-top:1px solid var(--border, #334155)}.lsc-card__timestamp{font-size:11px;color:var(--text-muted, #64748B)}.lsc-card__selection-indicator{position:absolute;top:0;left:0;right:0;height:3px;background:var(--accent, #3B82F6)}.lsc-loading-skeleton{background:linear-gradient(90deg,var(--bg-tertiary, #0F172A) 25%,var(--border, #334155) 50%,var(--bg-tertiary, #0F172A) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.lsc-loading-skeleton--gauge{width:80px;height:80px;border-radius:50%;margin:0 auto}.lsc-card--compact .lsc-loading-skeleton--gauge{width:60px;height:60px}.lsc-loading-skeleton--text{width:80%;height:12px;margin:0 auto}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 768px){.lsc-card{padding:12px}.lsc-card__icon{width:28px;height:28px;font-size:12px}.lsc-card__name{font-size:13px}}.gls-selector{display:flex;flex-direction:column;gap:16px}.gls-selector--compact{gap:12px}.gls-selector__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px}.gls-selector__title{font-size:14px;font-weight:600;color:var(--text, #E2E8F0);display:flex;align-items:center;gap:8px}.gls-selector__count{font-size:12px;font-weight:500;color:var(--text-muted, #64748B)}.gls-toggle-all{background:transparent;border:1px solid var(--border, #334155);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:500;color:var(--accent, #3B82F6);cursor:pointer;transition:all .2s ease}.gls-toggle-all:hover:not(:disabled){background:var(--accent, #3B82F6);color:#fff;border-color:var(--accent, #3B82F6)}.gls-toggle-all--deselect{color:var(--text-muted, #64748B)}.gls-toggle-all:disabled{opacity:.5;cursor:not-allowed}.gls-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.gls-grid--compact{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.gls-checkbox{display:flex;align-items:flex-start;gap:12px;padding:12px;background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative}.gls-checkbox--compact{padding:10px;gap:8px}.gls-checkbox:hover:not(.gls-checkbox--disabled){border-color:var(--lens-color, #3B82F6);box-shadow:0 2px 8px #0000001a}.gls-checkbox--selected{border-color:var(--lens-color, #3B82F6);background:color-mix(in srgb,var(--lens-color, #3B82F6) 5%,var(--bg-secondary, #1E293B))}.gls-checkbox--disabled{opacity:.6;cursor:not-allowed}.gls-checkbox__input{position:absolute;opacity:0;width:0;height:0}.gls-checkbox__icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0;background:var(--lens-bg, #EFF6FF);color:var(--lens-color, #3B82F6);transition:all .2s ease}.gls-checkbox--compact .gls-checkbox__icon{width:28px;height:28px;font-size:12px;border-radius:6px}.gls-checkbox--selected .gls-checkbox__icon{transform:scale(1.05)}.gls-checkbox__content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.gls-checkbox__name{font-size:13px;font-weight:600;color:var(--text, #E2E8F0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gls-checkbox--compact .gls-checkbox__name{font-size:12px}.gls-checkbox__description{font-size:11px;color:var(--text-muted, #64748B);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.gls-checkbox__checkmark{width:20px;height:20px;border:2px solid var(--border, #334155);border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s ease;margin-top:2px}.gls-checkbox--compact .gls-checkbox__checkmark{width:18px;height:18px}.gls-checkbox--selected .gls-checkbox__checkmark{background:var(--lens-color, #3B82F6);border-color:var(--lens-color, #3B82F6)}.gls-checkbox__checkmark svg{width:12px;height:12px;color:#fff}.gls-checkbox--compact .gls-checkbox__checkmark svg{width:10px;height:10px}.gls-checkbox:focus-within{outline:none;box-shadow:0 0 0 2px var(--accent, #3B82F6)}.gls-checkbox__input:focus-visible+.gls-checkbox__icon{box-shadow:0 0 0 2px var(--accent, #3B82F6)}@media (max-width: 640px){.gls-grid{grid-template-columns:1fr}.gls-grid--compact{grid-template-columns:repeat(2,1fr)}.gls-checkbox{padding:10px}.gls-checkbox__icon{width:32px;height:32px;font-size:14px}.gls-checkbox__description{display:none}}.rec-card{background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-left:4px solid;border-radius:8px;overflow:hidden;transition:all .2s ease}.rec-card:hover{border-color:var(--border-hover, #475569)}.rec-card__header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:transparent;border:none;cursor:pointer;text-align:left;gap:16px}.rec-card__header:hover{background:var(--bg-tertiary, #0F172A)}.rec-card__header-left{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.rec-card__header-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.rec-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;flex-shrink:0}.rec-status-badge__icon{font-size:12px}.rec-status-badge__label{white-space:nowrap}.rec-card__title-group{display:flex;flex-direction:column;gap:2px;min-width:0}.rec-card__req-id{font-size:11px;font-weight:500;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px}.rec-card__title{font-size:14px;font-weight:500;color:var(--text, #E2E8F0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rec-score{display:flex;align-items:center;gap:8px;width:100px}.rec-score__bar-bg{flex:1;height:6px;background:var(--bg-tertiary, #0F172A);border-radius:3px;overflow:hidden}.rec-score__bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.rec-score__value{font-size:12px;font-weight:600;color:var(--text, #E2E8F0);min-width:28px;text-align:right}.rec-card__chevron{width:20px;height:20px;color:var(--text-muted, #64748B);transition:transform .2s ease}.rec-card__chevron--expanded{transform:rotate(180deg)}.rec-card__details{padding:0 16px 16px;display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--border, #334155);margin-top:0}.rec-card__section{display:flex;flex-direction:column;gap:8px}.rec-card__section-title{font-size:12px;font-weight:600;color:var(--text, #E2E8F0);display:flex;align-items:center;gap:6px;margin:0;padding-top:12px}.rec-card__section-title--gap{color:#ca8a04}.rec-card__section-title--remediation{color:#3b82f6}.rec-card__section-icon{font-size:14px}.rec-card__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.rec-card__list-item{font-size:13px;color:var(--text, #E2E8F0);padding-left:16px;position:relative;line-height:1.5}.rec-card__list-item:before{content:"•";position:absolute;left:0;color:var(--text-muted, #64748B)}.rec-card__list-item--evidence:before{content:""}.rec-card__list-item--gap:before{color:#ca8a04}.rec-card__quote{font-style:italic;color:var(--text-muted, #94A3B8);background:var(--bg-tertiary, #0F172A);padding:8px 12px;border-radius:6px;display:block;border-left:3px solid var(--accent, #3B82F6)}.rec-card__remediation{font-size:13px;color:var(--text, #E2E8F0);line-height:1.5;margin:0;padding:12px;background:#3b82f61a;border-radius:6px;border-left:3px solid #3B82F6}.rec-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid var(--border, #334155)}.rec-confidence{display:flex;align-items:center;gap:6px}.rec-confidence__label{font-size:11px;color:var(--text-muted, #64748B)}.rec-confidence__value{font-size:12px;font-weight:600}.rec-card__regulation{font-size:11px;color:var(--text-muted, #64748B);padding:2px 8px;background:var(--bg-tertiary, #0F172A);border-radius:4px}@media (max-width: 640px){.rec-card__header{flex-direction:column;align-items:flex-start;gap:8px}.rec-card__header-right{width:100%;justify-content:space-between}.rec-score{flex:1;width:auto}.rec-card__title-group{max-width:100%}.rec-card__title{white-space:normal}}.dap-panel{background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:20px}.dap-panel--loading,.dap-panel--running{min-height:300px;display:flex;align-items:center;justify-content:center}.dap-panel__header{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.dap-regulation-selector{display:flex;flex-direction:column;gap:6px;flex:1;min-width:200px}.dap-regulation-selector__label{font-size:12px;font-weight:600;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px}.dap-regulation-selector__select{padding:10px 12px;font-size:14px;background:var(--bg-tertiary, #0F172A);border:1px solid var(--border, #334155);border-radius:8px;color:var(--text, #E2E8F0);cursor:pointer;transition:border-color .2s ease}.dap-regulation-selector__select:hover:not(:disabled){border-color:var(--accent, #3B82F6)}.dap-regulation-selector__select:disabled{opacity:.6;cursor:not-allowed}.dap-run-button{padding:10px 20px;font-size:14px;font-weight:600;background:var(--accent, #3B82F6);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;white-space:nowrap}.dap-run-button:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.dap-run-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.dap-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#fef2f2;border:1px solid #FECACA;border-radius:8px;color:#dc2626;font-size:14px}.dap-error__icon{font-size:16px}.dap-loading{text-align:center}.dap-loading__spinner{width:48px;height:48px;border:4px solid var(--border, #334155);border-top-color:var(--accent, #3B82F6);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.dap-loading__text{font-size:14px;color:var(--text-muted, #64748B)}.dap-running{text-align:center}.dap-running__spinner{width:64px;height:64px;border:4px solid var(--border, #334155);border-top-color:var(--accent, #3B82F6);border-right-color:var(--accent, #3B82F6);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.dap-running__title{font-size:18px;font-weight:600;color:var(--text, #E2E8F0);margin:0 0 8px}.dap-running__subtitle{font-size:14px;color:var(--text-muted, #94A3B8);margin:0 0 12px}.dap-running__hint{font-size:12px;color:var(--text-muted, #64748B);margin:0}.dap-empty{text-align:center;padding:40px 20px}.dap-empty__icon{width:64px;height:64px;color:var(--text-muted, #64748B);margin:0 auto 16px}.dap-empty__text{font-size:16px;font-weight:600;color:var(--text, #E2E8F0);margin:0 0 8px}.dap-empty__subtext{font-size:14px;color:var(--text-muted, #64748B);max-width:400px;margin:0 auto 20px}.dap-empty__button{padding:10px 24px;font-size:14px;font-weight:600;background:var(--accent, #3B82F6);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.dap-empty__button:hover:not(:disabled){background:#2563eb}.dap-empty__button:disabled{opacity:.5;cursor:not-allowed}.dap-score-section{display:flex;gap:24px;padding:20px;background:var(--bg-tertiary, #0F172A);border-radius:12px;align-items:center}.dap-score-section__gauge{flex-shrink:0}.dap-score-section__info{flex:1;display:flex;flex-direction:column;gap:12px}.dap-score-section__description{font-size:14px;color:var(--text, #E2E8F0);margin:0;line-height:1.5}.dap-compliance-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:14px;font-weight:600;align-self:flex-start}.dap-stats{display:flex;gap:16px}.dap-stat{display:flex;flex-direction:column;align-items:center;padding:8px 16px;border-radius:8px;background:var(--bg-secondary, #1E293B)}.dap-stat__value{font-size:20px;font-weight:700}.dap-stat--met .dap-stat__value{color:#16a34a}.dap-stat--partial .dap-stat__value{color:#ca8a04}.dap-stat--not-met .dap-stat__value{color:#dc2626}.dap-stat--total .dap-stat__value{color:var(--text, #E2E8F0)}.dap-stat__label{font-size:11px;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px}.dap-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.dap-filter__label{font-size:13px;color:var(--text-muted, #64748B)}.dap-filter__chips{display:flex;gap:8px;flex-wrap:wrap}.dap-filter__chip{padding:6px 12px;font-size:12px;font-weight:500;background:var(--bg-tertiary, #0F172A);border:1px solid var(--border, #334155);border-radius:16px;color:var(--text-muted, #64748B);cursor:pointer;transition:all .2s ease}.dap-filter__chip:hover:not(:disabled){border-color:var(--accent, #3B82F6);color:var(--text, #E2E8F0)}.dap-filter__chip--active{background:var(--accent, #3B82F6);border-color:var(--accent, #3B82F6);color:#fff}.dap-filter__chip--met.dap-filter__chip--active{background:#16a34a;border-color:#16a34a}.dap-filter__chip--partial.dap-filter__chip--active{background:#ca8a04;border-color:#ca8a04}.dap-filter__chip--not-met.dap-filter__chip--active{background:#dc2626;border-color:#dc2626}.dap-filter__chip:disabled{opacity:.5;cursor:not-allowed}.dap-requirements{display:flex;flex-direction:column;gap:12px}.dap-requirements__empty{text-align:center;font-size:14px;color:var(--text-muted, #64748B);padding:24px}.dap-remediation{background:var(--bg-tertiary, #0F172A);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:16px}.dap-remediation__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.dap-remediation__title{font-size:16px;font-weight:600;color:var(--text, #E2E8F0);margin:0}.dap-remediation__effort{font-size:13px;color:var(--text-muted, #64748B);display:flex;align-items:center;gap:8px}.dap-remediation__effort strong{color:var(--text, #E2E8F0)}.dap-remediation__dots{display:flex;gap:4px}.dap-remediation__dot{width:8px;height:8px;border-radius:50%;background:var(--border, #334155)}.dap-remediation__dot--filled{background:var(--accent, #3B82F6)}.dap-remediation__summary{font-size:14px;color:var(--text, #E2E8F0);line-height:1.6;margin:0}.dap-remediation__critical{background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:8px;padding:12px 16px}.dap-remediation__critical-title{font-size:13px;font-weight:600;color:#dc2626;margin:0 0 8px}.dap-remediation__critical-list{margin:0;padding-left:20px;font-size:13px;color:var(--text, #E2E8F0);display:flex;flex-direction:column;gap:4px}.dap-remediation__actions-title{font-size:14px;font-weight:600;color:var(--text, #E2E8F0);margin:0 0 12px}.dap-remediation__actions-list{display:flex;flex-direction:column;gap:12px}.dap-action{display:flex;gap:12px;padding:12px;background:var(--bg-secondary, #1E293B);border-radius:8px}.dap-action__priority{width:28px;height:28px;border-radius:50%;background:var(--accent, #3B82F6);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;flex-shrink:0}.dap-action__content{flex:1;display:flex;flex-direction:column;gap:4px}.dap-action__title{font-size:14px;font-weight:600;color:var(--text, #E2E8F0)}.dap-action__description{font-size:13px;color:var(--text-muted, #94A3B8);line-height:1.5}.dap-action__meta{display:flex;gap:16px;flex-wrap:wrap;margin-top:4px}.dap-action__impact,.dap-action__effort,.dap-action__owner{font-size:11px;color:var(--text-muted, #64748B)}.dap-panel__footer{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid var(--border, #334155)}.dap-panel__timestamp,.dap-panel__model{font-size:11px;color:var(--text-muted, #64748B)}@media (max-width: 768px){.dap-panel{padding:16px}.dap-panel__header{flex-direction:column;align-items:stretch}.dap-run-button{width:100%}.dap-score-section{flex-direction:column;text-align:center}.dap-score-section__info{align-items:center}.dap-stats{flex-wrap:wrap;justify-content:center}.dap-remediation__header{flex-direction:column;align-items:flex-start}}.elar-container{position:relative;display:inline-block}.elar-button{display:flex;align-items:center;gap:6px;padding:8px 14px;background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:6px;color:var(--text, #E2E8F0);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.elar-button:hover:not(:disabled){border-color:var(--accent, #3B82F6);background:var(--bg-tertiary, #0F172A)}.elar-button:disabled{opacity:.5;cursor:not-allowed}.elar-icon{width:16px;height:16px}.elar-chevron{width:14px;height:14px;margin-left:2px;transition:transform .2s ease}.elar-chevron--open{transform:rotate(180deg)}.elar-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:elar-spin 1s linear infinite}@keyframes elar-spin{to{transform:rotate(360deg)}}.elar-dropdown{position:absolute;top:100%;right:0;margin-top:4px;min-width:240px;background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:8px;box-shadow:0 10px 25px #00000040;z-index:100;overflow:hidden}.elar-option{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;background:transparent;border:none;cursor:pointer;text-align:left;transition:background .2s ease}.elar-option:hover:not(:disabled){background:var(--bg-tertiary, #0F172A)}.elar-option:disabled{opacity:.5;cursor:not-allowed}.elar-option+.elar-option{border-top:1px solid var(--border, #334155)}.elar-option-icon{width:20px;height:20px;color:var(--accent, #3B82F6);flex-shrink:0;margin-top:2px}.elar-option-content{display:flex;flex-direction:column;gap:2px}.elar-option-title{font-size:14px;font-weight:600;color:var(--text, #E2E8F0)}.elar-option-description{font-size:12px;color:var(--text-muted, #64748B)}.elar-error{position:absolute;top:100%;right:0;margin-top:4px;display:flex;align-items:center;gap:8px;padding:8px 12px;background:#fef2f2;border:1px solid #FECACA;border-radius:6px;min-width:200px;z-index:100}.elar-error-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;background:#dc2626;color:#fff;border-radius:50%;font-size:10px;font-weight:700;flex-shrink:0}.elar-error-message{flex:1;font-size:12px;color:#dc2626}.elar-error-dismiss{padding:2px 6px;background:transparent;border:none;color:#dc2626;font-size:12px;cursor:pointer;opacity:.7}.elar-error-dismiss:hover{opacity:1}.gdd-page{padding:24px;max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.gdd-page--loading,.gdd-page--error{min-height:400px;display:flex;align-items:center;justify-content:center}.gdd-loading{text-align:center}.gdd-loading__spinner{width:48px;height:48px;border:4px solid var(--border, #334155);border-top-color:var(--accent, #3B82F6);border-radius:50%;animation:gdd-spin 1s linear infinite;margin:0 auto 16px}@keyframes gdd-spin{to{transform:rotate(360deg)}}.gdd-error{text-align:center}.gdd-error h2{color:#dc2626;margin:0 0 12px}.gdd-error p{color:var(--text-muted, #64748B);margin:0 0 20px}.gdd-error button{padding:10px 24px;background:var(--accent, #3B82F6);color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500}.gdd-header{display:flex;align-items:flex-start;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--border, #334155)}.gdd-header__back{display:flex;align-items:center;gap:4px;padding:8px 12px;background:transparent;border:1px solid var(--border, #334155);border-radius:6px;color:var(--text-muted, #64748B);font-size:13px;cursor:pointer;transition:all .2s ease;flex-shrink:0}.gdd-header__back:hover{border-color:var(--accent, #3B82F6);color:var(--text, #E2E8F0)}.gdd-header__back svg{width:16px;height:16px}.gdd-header__info{flex:1}.gdd-header__title{font-size:24px;font-weight:700;color:var(--text, #E2E8F0);margin:0 0 8px}.gdd-header__meta{display:flex;flex-wrap:wrap;gap:12px}.gdd-header__meta-item{font-size:13px;color:var(--text-muted, #64748B)}.gdd-header__meta-item strong{color:var(--text, #E2E8F0)}.gdd-header__actions{display:flex;gap:8px;flex-shrink:0}.gdd-header__export{padding:8px 16px;background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:6px;color:var(--text, #E2E8F0);font-size:13px;cursor:pointer;transition:all .2s ease}.gdd-header__export:hover:not(:disabled){border-color:var(--accent, #3B82F6)}.gdd-header__export:disabled{opacity:.5;cursor:not-allowed}.gdd-alert{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:8px}.gdd-alert--error{background:#fef2f2;border:1px solid #FECACA;color:#dc2626}.gdd-alert__icon{font-size:16px;flex-shrink:0}.gdd-alert__message{flex:1;font-size:14px}.gdd-alert__dismiss{padding:4px 8px;background:transparent;border:none;font-size:18px;cursor:pointer;color:inherit;opacity:.7}.gdd-alert__dismiss:hover{opacity:1}.gdd-section{background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:12px;padding:20px}.gdd-section__title{font-size:16px;font-weight:600;color:var(--text, #E2E8F0);margin:0 0 16px}.gdd-analyze-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:12px 24px;margin-top:16px;background:var(--accent, #3B82F6);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.gdd-analyze-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.gdd-analyze-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.gdd-analyze-btn__spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:gdd-spin 1s linear infinite}.gdd-lens-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.gdd-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border, #334155)}.gdd-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:transparent;border:none;border-bottom:2px solid transparent;color:var(--text-muted, #64748B);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.gdd-tab:hover{color:var(--text, #E2E8F0)}.gdd-tab--active{color:var(--accent, #3B82F6);border-bottom-color:var(--accent, #3B82F6)}.gdd-tab__badge{padding:2px 8px;background:var(--bg-tertiary, #0F172A);border-radius:12px;font-size:11px;font-weight:600}.gdd-tab--active .gdd-tab__badge{background:var(--accent, #3B82F6);color:#fff}.gdd-tab-content{background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-top:none;border-radius:0 0 12px 12px;padding:20px;min-height:300px}.gdd-tier1{display:flex;flex-direction:column;gap:24px}.gdd-tier1__empty{text-align:center;padding:40px 20px;color:var(--text-muted, #64748B)}.gdd-tier1__empty p{margin:0 0 8px}.gdd-tier1__summary{display:flex;gap:24px;padding:20px;background:var(--bg-tertiary, #0F172A);border-radius:12px;align-items:center}.gdd-tier1__score{display:flex;flex-direction:column;align-items:center;padding:0 24px;border-right:1px solid var(--border, #334155)}.gdd-tier1__score-value{font-size:48px;font-weight:700;color:var(--text, #E2E8F0);line-height:1}.gdd-tier1__score-label{font-size:12px;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px;margin-top:8px}.gdd-tier1__stats{display:flex;gap:16px;flex:1}.gdd-tier1__stat{display:flex;flex-direction:column;align-items:center;padding:12px 16px;background:var(--bg-secondary, #1E293B);border-radius:8px;flex:1}.gdd-tier1__stat-value{font-size:24px;font-weight:700}.gdd-tier1__stat--critical .gdd-tier1__stat-value{color:#dc2626}.gdd-tier1__stat--major .gdd-tier1__stat-value{color:#ea580c}.gdd-tier1__stat--minor .gdd-tier1__stat-value{color:#ca8a04}.gdd-tier1__stat--observation .gdd-tier1__stat-value{color:#2563eb}.gdd-tier1__stat-label{font-size:11px;color:var(--text-muted, #64748B);text-transform:uppercase;letter-spacing:.5px}.gdd-tier1__findings{display:flex;flex-direction:column;gap:20px}.gdd-findings-group__title{font-size:14px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.gdd-findings-group__list{display:flex;flex-direction:column;gap:12px}.gdd-finding{padding:12px 16px;background:var(--bg-tertiary, #0F172A);border-radius:8px;border-left:4px solid}.gdd-finding__header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.gdd-finding__lens{font-size:11px;font-weight:600;padding:2px 8px;background:var(--bg-secondary, #1E293B);border-radius:4px;color:var(--text-muted, #64748B)}.gdd-finding__title{font-size:14px;font-weight:600;color:var(--text, #E2E8F0)}.gdd-finding__description{font-size:13px;color:var(--text-muted, #94A3B8);margin:0;line-height:1.5}.gdd-finding__suggestion{font-size:12px;color:var(--accent, #3B82F6);margin:8px 0 0;padding:8px;background:#3b82f61a;border-radius:4px}.gdd-tier1__detected{padding:16px;background:var(--bg-tertiary, #0F172A);border-radius:8px}.gdd-tier1__detected h3{font-size:14px;font-weight:600;color:var(--text, #E2E8F0);margin:0 0 8px}.gdd-tier1__detected p{font-size:13px;color:var(--text-muted, #64748B);margin:0 0 12px}.gdd-tier1__detected-list{display:flex;flex-wrap:wrap;gap:8px}.gdd-tier1__detected-btn{padding:6px 12px;background:var(--bg-secondary, #1E293B);border:1px solid var(--border, #334155);border-radius:6px;color:var(--text, #E2E8F0);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.gdd-tier1__detected-btn:hover{border-color:var(--accent, #3B82F6);background:var(--accent, #3B82F6);color:#fff}.gdd-tier1__footer{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid var(--border, #334155);font-size:11px;color:var(--text-muted, #64748B)}@media (max-width: 768px){.gdd-page{padding:16px}.gdd-header{flex-direction:column}.gdd-header__actions{width:100%}.gdd-header__export{flex:1}.gdd-lens-grid{grid-template-columns:repeat(2,1fr)}.gdd-tier1__summary{flex-direction:column}.gdd-tier1__score{border-right:none;border-bottom:1px solid var(--border, #334155);padding:0 0 16px;width:100%}.gdd-tier1__stats{flex-wrap:wrap;justify-content:center}.gdd-tabs{overflow-x:auto}}.rec-summary-bar{background:var(--surface-elevated, #fafafa);border:1px solid var(--border-color, #e0e0e0);border-radius:8px;padding:16px 20px;margin-bottom:16px}.rec-summary-stats{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.rec-stat-item{display:flex;flex-direction:column;align-items:center;min-width:60px}.rec-stat-value{font-size:1.5rem;font-weight:600;color:var(--text-primary, #1a1a1a);line-height:1.2}.rec-stat-label{font-size:.75rem;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.rec-stat-item--total .rec-stat-value{color:var(--primary-blue, #2196f3)}.rec-stat-item--addressed .rec-stat-value{color:var(--success-green, #4caf50)}.rec-stat-item--critical .rec-stat-value{color:var(--error-red, #f44336)}.rec-stat-item--high .rec-stat-value{color:var(--warning-orange, #ff9800)}.rec-stat-item--medium .rec-stat-value{color:var(--primary-blue, #2196f3)}.rec-stat-item--low .rec-stat-value{color:var(--text-secondary, #666)}.rec-stat-divider{width:1px;height:40px;background:var(--border-color, #e0e0e0)}.rec-filters{display:flex;align-items:flex-end;gap:16px;margin-bottom:20px;flex-wrap:wrap}.rec-filter-group{display:flex;flex-direction:column;gap:4px}.rec-filter-label{font-size:.75rem;font-weight:500;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.rec-filter-select{padding:8px 30px 8px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;background:#fff;font-size:.875rem;color:#1a1a1a;min-width:150px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23333' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.rec-filter-select option{background:#fff;color:#1a1a1a;padding:8px}.rec-filter-select:hover{border-color:var(--primary-blue, #2196f3)}.rec-filter-select:focus{outline:none;border-color:var(--primary-blue, #2196f3);box-shadow:0 0 0 2px #2196f31a}.rec-refresh-btn{padding:8px 16px;background:var(--surface-elevated, #fafafa);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:.875rem;color:var(--text-primary, #1a1a1a);cursor:pointer;transition:all .2s}.rec-refresh-btn:hover:not(:disabled){background:var(--primary-blue, #2196f3);color:#fff;border-color:var(--primary-blue, #2196f3)}.rec-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.rec-list{display:flex;flex-direction:column;gap:12px}.rec-empty{text-align:center;padding:48px 24px;background:var(--surface-elevated, #fafafa);border:1px dashed var(--border-color, #e0e0e0);border-radius:8px}.rec-empty__icon{font-size:3rem;margin-bottom:16px}.rec-empty h4{margin:0 0 8px;color:var(--text-primary, #1a1a1a)}.rec-empty p{margin:0;color:var(--text-secondary, #666)}.rec-card{background:#fff;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;overflow:hidden;transition:all .2s}.rec-card:hover{border-color:var(--primary-blue, #2196f3);box-shadow:0 2px 8px #00000014}.rec-card--expanded{border-color:var(--primary-blue, #2196f3)}.rec-card__header{display:flex;align-items:flex-start;gap:16px;padding:16px;cursor:pointer}.rec-card__priority{flex-shrink:0}.rec-priority-badge{display:inline-block;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.rec-priority-badge.priority--critical{background:#ffebee;color:#c62828}.rec-priority-badge.priority--high{background:#fff3e0;color:#e65100}.rec-priority-badge.priority--medium{background:#e3f2fd;color:#1565c0}.rec-priority-badge.priority--low{background:#f5f5f5;color:#616161}.rec-card__main{flex:1;min-width:0}.rec-card__title{margin:0 0 4px;font-size:1rem;font-weight:600;color:var(--text-primary, #1a1a1a);line-height:1.4}.rec-card__description{margin:0;font-size:.875rem;color:var(--text-secondary, #666);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rec-card--expanded .rec-card__description{display:block}.rec-card__meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0}.rec-source-badge{font-size:.75rem;color:var(--text-secondary, #666);background:var(--surface-elevated, #f5f5f5);padding:4px 8px;border-radius:4px}.rec-driver-badge{font-size:.7rem;color:var(--primary-blue, #2196f3);background:#e3f2fd;padding:3px 6px;border-radius:3px;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rec-card__expand{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.rec-expand-icon{font-size:1.25rem;font-weight:300;color:var(--text-secondary, #666);line-height:1}.rec-card__body{padding:16px;border-top:1px solid var(--border-color, #e0e0e0);margin-top:-4px}.rec-detail-section{margin-bottom:16px}.rec-detail-section:last-child{margin-bottom:0}.rec-detail-label{margin:0 0 6px;font-size:.75rem;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.rec-detail-text{margin:0;font-size:.875rem;color:var(--text-primary, #1a1a1a);line-height:1.6}.rec-detail-text--muted{color:var(--text-secondary, #666);font-style:italic}.rec-impact-row{display:flex;gap:24px;margin-bottom:16px;padding:12px 16px;background:var(--surface-elevated, #fafafa);border-radius:6px}.rec-impact-item{display:flex;flex-direction:column;gap:2px}.rec-impact-label{font-size:.7rem;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.05em}.rec-impact-value{font-size:.875rem;font-weight:500;color:var(--text-primary, #1a1a1a);text-transform:capitalize}.rec-impact-value--high{color:var(--error-red, #f44336)}.rec-impact-value--medium{color:var(--warning-orange, #ff9800)}.rec-impact-value--low{color:var(--success-green, #4caf50)}.rec-fair-rules{display:flex;flex-wrap:wrap;gap:6px}.rec-fair-rule{display:inline-block;padding:4px 8px;background:#e8f5e9;color:#2e7d32;border-radius:4px;font-size:.75rem;font-weight:500}.rec-steps-list{margin:0;padding-left:20px}.rec-step{font-size:.875rem;color:var(--text-primary, #1a1a1a);line-height:1.6;margin-bottom:6px}.rec-step:last-child{margin-bottom:0}.rec-card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid var(--border-color, #e0e0e0)}.rec-date{font-size:.75rem;color:var(--text-muted, #999)}.rec-actions{display:flex;gap:8px}.rec-status-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:500}.rec-status-badge--active{background:#e3f2fd;color:#1565c0}.rec-status-badge--addressed{background:#e8f5e9;color:#2e7d32}.rec-status-badge--dismissed{background:#f5f5f5;color:#616161}@media (max-width: 768px){.rec-card__header{flex-wrap:wrap}.rec-card__meta{width:100%;flex-direction:row;margin-top:8px}.rec-card__expand{position:absolute;right:16px;top:16px}.rec-impact-row{flex-wrap:wrap;gap:16px}.rec-summary-stats{justify-content:center}.rec-filters{flex-direction:column;align-items:stretch}.rec-filter-select{width:100%}}.rec-source-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.rec-source-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:500;background:#f0f0f0;color:#555;white-space:nowrap}.rec-source-tag--interview{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.rec-source-tag--document{background:#e3f2fd;color:#1565c0;border:1px solid #bbdefb}.rec-source-tag--standard{background:#fce4ec;color:#c2185b;border:1px solid #f8bbd9}.rec-source-tag--execution_risk{background:#fff3e0;color:#e65100;border:1px solid #ffe0b2}.rec-multi-source-note{color:var(--text-muted, #999);font-style:italic}.rec-step-complexity{color:var(--text-secondary, #666);font-weight:400;font-size:.8125rem}.dcat-compliance-container{max-width:1200px;margin:0 auto;padding:2rem}.dcat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:2rem}.dcat-title-section h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:#f7fafc}.dcat-title-section .subtitle{margin:0;font-size:.875rem;color:#cbd5e0}.btn-export{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-export:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.btn-export:disabled{opacity:.6;cursor:not-allowed}.btn-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.dcat-score-card{display:flex;align-items:center;gap:2.5rem;padding:2rem;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:2rem;box-shadow:0 1px 3px #0000001a}.score-visual{flex-shrink:0}.score-info{flex:1}.score-info h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:#1a202c}.score-summary{margin:0 0 1rem;font-size:.875rem;color:#4a5568}.score-breakdown{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.score-breakdown-item{display:flex;justify-content:space-between;padding:.5rem 0}.score-breakdown-item .label{font-size:.875rem;color:#718096}.score-breakdown-item .value{font-size:.875rem;font-weight:600}.score-status{display:flex;gap:.5rem}.status-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-excellent{background:#d1fae5;color:#065f46}.status-badge.status-strong{background:#dbeafe;color:#1e40af}.status-badge.status-good{background:#fef3c7;color:#92400e}.status-badge.status-needs-work{background:#fee2e2;color:#991b1b}.dcat-fields-section{margin-bottom:2rem}.section-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#f7fafc}.field-count{font-size:.875rem;color:#cbd5e0}.fields-table{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.table-header,.table-row{display:grid;grid-template-columns:200px 1fr 220px 80px;gap:1.5rem;padding:1rem 1.5rem;align-items:center}.table-header{background:#f7fafc;border-bottom:2px solid #e2e8f0;font-weight:600;font-size:.75rem;color:#4a5568;text-transform:uppercase}.table-row{border-bottom:1px solid #e2e8f0;transition:background .2s}.table-row:last-child{border-bottom:none}.table-row:hover{background:#f7fafc}.property-code{font-family:Monaco,Courier New,monospace;font-size:.875rem;color:#2563eb;background:#eff6ff;padding:.25rem .5rem;border-radius:4px}.col-description{font-size:.875rem;color:#4a5568}.coverage-bar-container{display:flex;flex-direction:column;gap:.375rem}.coverage-bar{width:100%;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.coverage-fill{height:100%;border-radius:4px;transition:width 1s ease}.coverage-text{font-size:.75rem;color:#718096}.col-status{text-align:center}.status-icon{font-size:1.25rem}.status-icon.status-complete{color:#10b981}.status-icon.status-partial{color:#f59e0b}.status-icon.status-incomplete{color:#ef4444}.status-icon.status-missing{color:#cbd5e0}.status-icon.status-empty{color:#e2e8f0}.recommendations-panel{padding:1.5rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-bottom:2rem}.recommendations-header{display:flex;justify-content:space-between;margin-bottom:1rem}.recommendations-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1e40af}.recommendations-count{font-size:.75rem;color:#3b82f6;font-weight:600;background:#dbeafe;padding:.25rem .75rem;border-radius:12px}.recommendations-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.recommendation-item{display:flex;gap:.75rem;padding:.75rem;background:#fff;border-radius:8px;border:1px solid #bfdbfe}.rec-icon{font-size:1.25rem;flex-shrink:0}.rec-text{font-size:.875rem;color:#1e40af;line-height:1.5}.dcat-info-footer{padding:1.5rem;background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px}.info-section h4{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#1a202c}.info-section p{margin:0;font-size:.875rem;color:#4a5568;line-height:1.6}.info-metadata{margin:1rem 0;padding-top:1rem;border-top:1px solid #e2e8f0}.metadata-item{margin:.25rem 0;font-size:.875rem;color:#718096}.metadata-item strong{color:#1a202c}.info-links{display:flex;gap:1.5rem}.info-link{font-size:.875rem;color:#2563eb;text-decoration:none;font-weight:500}.info-link:hover{text-decoration:underline}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;padding:4rem 2rem;text-align:center}.loading-spinner{width:48px;height:48px;border:4px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.error-icon,.empty-icon{font-size:3rem;margin-bottom:1rem}@media (max-width: 1024px){.table-header,.table-row{grid-template-columns:180px 1fr 180px 70px;gap:1rem;padding:.875rem 1rem}}@media (max-width: 768px){.dcat-header{flex-direction:column}.btn-export{width:100%;justify-content:center}.dcat-score-card{flex-direction:column;text-align:center}.table-header,.table-row{grid-template-columns:1fr}}.framework-sidebar{width:240px;flex-shrink:0;overflow-y:auto;background:#f9fafb;border-radius:8px;padding:12px}.framework-sidebar__section{margin-bottom:20px}.framework-sidebar__section:last-child{margin-bottom:0}.framework-sidebar__section-title{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin:0 0 8px 8px}.framework-sidebar__empty{font-size:.85rem;color:#9ca3af;padding:8px 12px;font-style:italic}.framework-sidebar__item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:none;border-radius:6px;background:transparent;color:#374151;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left;margin-bottom:2px}.framework-sidebar__item:hover{background:#fff;box-shadow:0 1px 3px #00000014}.framework-sidebar__item--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #00000014}.framework-sidebar__item-content{display:flex;flex-direction:column;min-width:0}.framework-sidebar__item-abbrev{font-weight:600;font-size:.875rem}.framework-sidebar__item-name{font-size:.75rem;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.framework-sidebar__item--active .framework-sidebar__item-name{color:#60a5fa}.framework-sidebar__item-count{font-size:.75rem;color:#9ca3af;font-weight:400;flex-shrink:0;margin-left:8px}.framework-sidebar__item--active .framework-sidebar__item-count{color:#3b82f6}.framework-sidebar__item-badge{padding:2px 8px;font-size:.7rem;font-weight:600;border-radius:10px;flex-shrink:0;margin-left:8px}.framework-sidebar__item-badge--alcoa{background:#dcfce7;color:#166534}.framework-sidebar__item-badge--fda{background:#fff7ed;color:#c2410c}.framework-sidebar__source-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#fff;border-radius:6px;margin-bottom:6px}.framework-sidebar__source-icon{font-size:1.1rem;flex-shrink:0}.framework-sidebar__source-content{display:flex;flex-direction:column;min-width:0}.framework-sidebar__source-name{font-size:.85rem;font-weight:500;color:#374151}.framework-sidebar__source-desc{font-size:.75rem;color:#9ca3af}@media (max-width: 1024px){.framework-sidebar{width:100%;max-height:200px;display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start;align-content:flex-start}.framework-sidebar__section{margin-bottom:0}.framework-sidebar__section-title{display:none}.framework-sidebar__item{padding:6px 12px;margin-bottom:0}}.requirement-card{border:1px solid #e5e7eb;border-radius:8px;background:#fff;overflow:hidden;transition:all .2s ease}.requirement-card:hover{box-shadow:0 2px 8px #0000000f}.requirement-card--expanded{border-color:#3b82f6}.requirement-card--compact{border-radius:6px}.requirement-card__header{padding:16px;cursor:pointer;transition:background .15s ease}.requirement-card__header:hover{background:#f9fafb}.requirement-card__header:focus{outline:none;background:#f3f4f6}.requirement-card__title-row{display:flex;align-items:center;gap:12px;margin-bottom:8px}.requirement-card__title{margin:0;font-size:1.05rem;font-weight:600;color:#111827}.requirement-card--compact .requirement-card__title{font-size:.95rem}.requirement-card__badge{padding:2px 8px;font-size:.7rem;font-weight:600;text-transform:uppercase;border-radius:4px;flex-shrink:0}.requirement-card__badge--alcoa{background:#dcfce7;color:#166534}.requirement-card__badge--fda{background:#fff7ed;color:#c2410c}.requirement-card__summary{margin:0;font-size:.9rem;color:#4b5563;line-height:1.5}.requirement-card--compact .requirement-card__summary{font-size:.85rem}.requirement-card__meta{display:flex;align-items:center;gap:16px;margin-top:12px;font-size:.8rem;color:#6b7280}.requirement-card__citation-count{font-weight:500}.requirement-card__frameworks{color:#9ca3af}.requirement-card__expand-icon{margin-left:auto;font-size:.7rem;color:#9ca3af;transition:transform .2s ease}.requirement-card--expanded .requirement-card__expand-icon{color:#3b82f6}.requirement-card__highlight{background-color:#fef08a;padding:1px 2px;border-radius:2px}.requirement-card__detail{padding:0 16px 16px;border-top:1px solid #e5e7eb;background:#fafafa}.requirement-card__section{margin-top:16px}.requirement-card__section-title{margin:0 0 8px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.requirement-card__section-text{margin:0;font-size:.9rem;color:#374151;line-height:1.6}.requirement-card__evidence-list{margin:0;padding-left:20px;color:#374151;font-size:.9rem}.requirement-card__evidence-list li{margin-bottom:4px;line-height:1.5}.requirement-card__thresholds{display:flex;flex-wrap:wrap;gap:12px}.requirement-card__threshold{padding:4px 12px;font-size:.8rem;font-weight:500;border-radius:4px}.requirement-card__threshold--compliant{background:#dcfce7;color:#166534}.requirement-card__threshold--partial{background:#fff7ed;color:#c2410c}.requirement-card__threshold--non{background:#fee2e2;color:#991b1b}.requirement-card__section--citations{margin-top:20px}.requirement-card__citations{display:flex;flex-direction:column;gap:12px}.requirement-card__citation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.requirement-card__citation-header{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px;font-size:.8rem}.requirement-card__citation-framework{font-weight:600;color:#1d4ed8}.requirement-card__citation-document{color:#374151}.requirement-card__citation-section{color:#6b7280}.requirement-card__citation-text{margin:0 0 8px;padding:8px 12px;background:#f9fafb;border-left:3px solid #3b82f6;font-style:italic;font-size:.85rem;color:#374151;line-height:1.5}.requirement-card__citation-footer{display:flex;justify-content:space-between;align-items:center;font-size:.8rem}.requirement-card__citation-relevance{color:#6b7280}.requirement-card__citation-actions{display:flex;gap:12px}.requirement-card__citation-btn{padding:0;background:none;border:none;color:#3b82f6;font-size:.8rem;font-weight:500;cursor:pointer}.requirement-card__citation-btn:hover{text-decoration:underline}.requirement-card__citation-link{color:#3b82f6;text-decoration:none;font-weight:500}.requirement-card__citation-link:hover{text-decoration:underline}.requirement-card__loading{display:flex;align-items:center;gap:12px;padding:20px;color:#6b7280;font-size:.9rem}.requirement-card__loading-spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.requirement-card__error{padding:20px;text-align:center;color:#dc2626;font-size:.9rem}@media (max-width: 640px){.requirement-card__header{padding:12px}.requirement-card__detail{padding:0 12px 12px}.requirement-card__thresholds{flex-direction:column;gap:8px}.requirement-card__citation-footer{flex-direction:column;align-items:flex-start;gap:8px}}.citation-drawer__overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:fadeIn .2s ease}.citation-drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:520px;background-color:#fff;z-index:1000;display:flex;flex-direction:column;animation:slideInRight .3s ease;box-shadow:-4px 0 24px #00000026}.citation-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background-color:#f9fafb}.citation-drawer__header-content{flex:1;min-width:0}.citation-drawer__title{margin:0;font-size:18px;font-weight:600;color:#111827;line-height:1.4}.citation-drawer__type-badge{display:inline-block;margin-top:6px;padding:2px 8px;font-size:.7rem;font-weight:500;text-transform:uppercase;background:#e5e7eb;color:#6b7280;border-radius:4px}.citation-drawer__close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.citation-drawer__close-btn:hover{background-color:#f3f4f6;color:#111827}.citation-drawer__close-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.citation-drawer__tabs{display:flex;gap:4px;padding:8px 24px;border-bottom:1px solid #e5e7eb;background-color:#fff}.citation-drawer__tab{padding:8px 16px;font-size:13px;font-weight:500;color:#6b7280;background:none;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.citation-drawer__tab:hover{background-color:#f3f4f6;color:#111827}.citation-drawer__tab--active{background-color:#eff6ff;color:#3b82f6}.citation-drawer__tab:focus{outline:2px solid #3b82f6;outline-offset:2px}.citation-drawer__content{flex:1;overflow-y:auto;padding:20px 24px}.citation-drawer__details{display:flex;flex-direction:column;gap:16px}.citation-drawer__badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.citation-drawer__framework-badge{padding:4px 12px;font-size:.85rem;font-weight:600;background:#dbeafe;color:#1d4ed8;border-radius:6px}.citation-drawer__pmid-badge{padding:4px 10px;font-size:.8rem;font-weight:500;background:#f3f4f6;color:#4b5563;border-radius:4px;font-family:Monaco,Consolas,monospace}.citation-drawer__doi-badge{padding:4px 10px;font-size:.8rem;font-weight:500;background:#fef3c7;color:#92400e;border-radius:4px;text-decoration:none;font-family:Monaco,Consolas,monospace}.citation-drawer__doi-badge:hover{background:#fde68a}.citation-drawer__fulltext-badge{padding:4px 10px;font-size:.75rem;font-weight:600;background:#dcfce7;color:#166534;border-radius:4px;text-transform:uppercase}.citation-drawer__field{display:flex;flex-direction:column;gap:4px}.citation-drawer__field-row{display:flex;gap:24px}.citation-drawer__field-row .citation-drawer__field{flex:1}.citation-drawer__label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.citation-drawer__value{font-size:.9rem;color:#374151;line-height:1.5}.citation-drawer__title-link{font-size:.95rem;color:#1d4ed8;text-decoration:none;line-height:1.5}.citation-drawer__title-link:hover{text-decoration:underline}.citation-drawer__link{font-size:.85rem;color:#3b82f6;text-decoration:none;word-break:break-all}.citation-drawer__link:hover{text-decoration:underline}.citation-drawer__quote{margin:0;padding:12px 16px;background:#f9fafb;border-left:3px solid #3b82f6;font-style:italic;font-size:.9rem;color:#374151;line-height:1.6;border-radius:0 6px 6px 0}.citation-drawer__relevance-container{display:flex;align-items:center;gap:12px}.citation-drawer__relevance-bar-bg{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.citation-drawer__relevance-bar{height:100%;border-radius:4px;transition:width .3s ease}.citation-drawer__relevance--high{background:#22c55e;color:#166534}.citation-drawer__relevance--moderate{background:#f59e0b;color:#92400e}.citation-drawer__relevance--low{background:#9ca3af;color:#4b5563}.citation-drawer__relevance-score{font-size:.9rem;font-weight:600;min-width:40px;text-align:right}.citation-drawer__raw{background-color:#1f2937;border-radius:8px;overflow:auto}.citation-drawer__json{margin:0;padding:16px;font-family:Fira Code,Monaco,Consolas,monospace;font-size:12px;line-height:1.6;color:#e5e7eb;white-space:pre-wrap;word-break:break-word}.citation-drawer__footer{display:flex;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#fff}.citation-drawer__action-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:1;padding:10px 16px;font-size:14px;font-weight:500;border-radius:8px;cursor:pointer;transition:all .15s ease;text-decoration:none}.citation-drawer__action-btn--secondary{color:#111827;background-color:#fff;border:1px solid #e5e7eb}.citation-drawer__action-btn--secondary:hover{background-color:#f3f4f6;border-color:#d1d5db}.citation-drawer__action-btn--primary{color:#fff;background-color:#3b82f6;border:1px solid #3b82f6}.citation-drawer__action-btn--primary:hover{background-color:#2563eb;border-color:#2563eb}.citation-drawer__action-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (max-width: 640px){.citation-drawer{max-width:100%}.citation-drawer__header{padding:16px}.citation-drawer__tabs{padding:8px 16px}.citation-drawer__content{padding:16px}.citation-drawer__footer{padding:12px 16px;flex-direction:column}.citation-drawer__field-row{flex-direction:column;gap:16px}}.citation-exporter{position:relative;display:inline-block}.citation-exporter__button{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;font-size:.875rem;font-weight:500;color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;transition:all .15s ease}.citation-exporter__button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.citation-exporter__button:focus{outline:2px solid #3b82f6;outline-offset:2px}.citation-exporter__button:disabled{opacity:.5;cursor:not-allowed}.citation-exporter__button--exporting{color:#3b82f6;border-color:#3b82f6}.citation-exporter__button--success{color:#16a34a;border-color:#16a34a;background:#f0fdf4}.citation-exporter__button--error{color:#dc2626;border-color:#dc2626;background:#fef2f2}.citation-exporter__caret{font-size:.65rem;color:#9ca3af;transition:transform .15s ease}.citation-exporter__caret.open{transform:rotate(180deg)}.citation-exporter__dropdown{position:absolute;top:calc(100% + 4px);right:0;width:240px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #0000001a;z-index:50;overflow:hidden;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.citation-exporter__dropdown-header{padding:8px 12px;font-size:.75rem;font-weight:500;color:#6b7280;background:#f9fafb;border-bottom:1px solid #e5e7eb}.citation-exporter__item{display:flex;align-items:flex-start;gap:12px;width:100%;padding:10px 12px;background:none;border:none;text-align:left;cursor:pointer;transition:background .15s ease}.citation-exporter__item:hover{background:#f3f4f6}.citation-exporter__item:focus{outline:none;background:#eff6ff}.citation-exporter__item-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;color:#6b7280;background:#f3f4f6;border-radius:4px;flex-shrink:0}.citation-exporter__item-content{display:flex;flex-direction:column;min-width:0}.citation-exporter__item-label{font-size:.875rem;font-weight:500;color:#111827}.citation-exporter__item-description{font-size:.75rem;color:#6b7280;margin-top:2px}@media (max-width: 640px){.citation-exporter__dropdown{width:200px}}.evidence-library{display:flex;flex-direction:column;height:100%;min-height:0}.evidence-library__header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px;flex-wrap:wrap}.evidence-library__header-left{flex:1;min-width:200px}.evidence-library__title{margin:0 0 4px;font-size:1.5rem;font-weight:600;color:#111827}.evidence-library__meta{font-size:.85rem;color:#6b7280}.evidence-library__header-right{display:flex;align-items:center;gap:12px}.evidence-library__search{position:relative;width:280px}.evidence-library__search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none}.evidence-library__search-input{width:100%;padding:8px 12px 8px 36px;border:1px solid #d1d5db;border-radius:8px;font-size:.9rem;background:#fff;transition:all .15s ease}.evidence-library__search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.evidence-library__search-input::placeholder{color:#9ca3af}.evidence-library__search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:20px;height:20px;padding:0;border:none;border-radius:50%;background:#e5e7eb;color:#6b7280;font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.evidence-library__search-clear:hover{background:#d1d5db;color:#374151}.evidence-library__tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:2px solid #e5e7eb;padding-bottom:0}.evidence-library__tab{padding:12px 20px;font-size:.95rem;font-weight:500;color:#6b7280;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:8px}.evidence-library__tab:hover{color:#374151;background-color:#f9fafb}.evidence-library__tab--active{color:#3b82f6;border-bottom-color:#3b82f6}.evidence-library__tab--active:hover{color:#3b82f6;background-color:transparent}.evidence-library__tab-count{padding:2px 8px;font-size:.75rem;font-weight:500;border-radius:10px;background:#f3f4f6;color:#6b7280}.evidence-library__tab--active .evidence-library__tab-count{background:#eff6ff;color:#3b82f6}.evidence-library__body{display:flex;gap:24px;flex:1;min-height:0;overflow:hidden}.evidence-library__sidebar{width:240px;flex-shrink:0;overflow-y:auto;background:#f9fafb;border-radius:8px;padding:12px}.evidence-library__sidebar-section{margin-bottom:16px}.evidence-library__sidebar-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#9ca3af;margin:0 0 8px 8px}.evidence-library__sidebar-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;border:none;border-radius:6px;background:transparent;color:#374151;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:left}.evidence-library__sidebar-item:hover{background:#fff;box-shadow:0 1px 3px #00000014}.evidence-library__sidebar-item--active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #00000014}.evidence-library__sidebar-item-count{font-size:.8rem;color:#9ca3af;font-weight:400}.evidence-library__sidebar-item--active .evidence-library__sidebar-item-count{color:#3b82f6}.evidence-library__content{flex:1;min-width:0;overflow-y:auto;padding-right:4px}.evidence-library__loading,.evidence-library__error,.evidence-library__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;color:#6b7280}.evidence-library__loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.evidence-library__error-icon,.evidence-library__empty-icon{font-size:3rem;margin-bottom:12px}.evidence-library__error-message{color:#dc2626;margin-bottom:12px}.evidence-library__retry-btn{padding:8px 16px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .15s ease}.evidence-library__retry-btn:hover{background:#2563eb}.evidence-library__requirements{display:flex;flex-direction:column;gap:12px}.evidence-library__literature-intro{padding:16px;background:#eff6ff;border-radius:8px;margin-bottom:20px}.evidence-library__literature-intro h3{margin:0 0 8px;font-size:1rem;color:#1e40af}.evidence-library__literature-intro p{margin:0;font-size:.9rem;color:#3b82f6}.evidence-library__literature-topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.evidence-library__topic-card{padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease}.evidence-library__topic-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.evidence-library__topic-card h4{margin:0 0 4px;font-size:1rem;color:#111827}.evidence-library__topic-card p{margin:0;font-size:.85rem;color:#6b7280}.evidence-library__topic-count{display:inline-block;margin-top:8px;padding:2px 8px;font-size:.75rem;font-weight:500;background:#f3f4f6;color:#6b7280;border-radius:4px}.evidence-library__search-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e7eb}.evidence-library__search-results-header h3{margin:0;font-size:1rem;color:#111827}.evidence-library__search-results-count{font-size:.85rem;color:#6b7280}.evidence-library__search-highlight{background-color:#fef08a;padding:1px 2px;border-radius:2px}.evidence-library__frameworks-summary{margin-bottom:20px}.evidence-library__frameworks-summary h3{font-size:.9rem;font-weight:500;color:#374151;margin:0 0 12px}.evidence-library__framework-chips{display:flex;flex-wrap:wrap;gap:8px}.evidence-library__framework-chip{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#e3f2fd;border-radius:16px;font-size:.85rem}.evidence-library__framework-chip-abbrev{font-weight:600;color:#1565c0}.evidence-library__framework-chip-count{color:#64748b}.evidence-library__citations-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.evidence-library__back-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;font-size:.85rem;font-weight:500;color:#374151;cursor:pointer;transition:all .15s ease}.evidence-library__back-btn:hover{background:#e5e7eb;border-color:#d1d5db}.evidence-library__back-btn svg{flex-shrink:0}.evidence-library__citations-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#111827;flex:1}.evidence-library__citations-count{font-size:.85rem;color:#6b7280;background:#f3f4f6;padding:4px 10px;border-radius:12px}.evidence-library__citations-list{display:flex;flex-direction:column;gap:12px}.evidence-library__citation-card{padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .15s ease}.evidence-library__citation-card:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.evidence-library__citation-card:focus{outline:2px solid #3b82f6;outline-offset:2px}.evidence-library__citation-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px}.evidence-library__citation-title{margin:0;font-size:.95rem;font-weight:600;color:#111827;line-height:1.4;flex:1}.evidence-library__citation-pmid{flex-shrink:0;padding:2px 8px;background:#dbeafe;color:#1d4ed8;font-size:.75rem;font-weight:600;border-radius:4px}.evidence-library__citation-authors{margin:0 0 4px;font-size:.85rem;color:#6b7280;line-height:1.4}.evidence-library__citation-journal{margin:0;font-size:.85rem;color:#374151;font-style:italic}.evidence-library__citation-quote{margin:12px 0 0;padding:10px 12px;background:#f9fafb;border-left:3px solid #3b82f6;font-size:.85rem;color:#4b5563;line-height:1.5;font-style:italic}.evidence-library__citation-relevance{display:flex;align-items:center;gap:8px;margin-top:12px;font-size:.8rem}.evidence-library__citation-relevance-label{color:#6b7280;font-weight:500}.evidence-library__citation-relevance-bar{flex:1;max-width:120px;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.evidence-library__citation-relevance-fill{height:100%;background:#3b82f6;border-radius:3px;transition:width .3s ease}.evidence-library__citation-relevance-value{color:#374151;font-weight:600;min-width:36px}.evidence-library__citation-view{display:block;margin-top:12px;font-size:.8rem;color:#3b82f6;font-weight:500}.evidence-library__topic-card--selected{border-color:#3b82f6;background:#eff6ff}@media (max-width: 1024px){.evidence-library__body{flex-direction:column}.evidence-library__sidebar{width:100%;max-height:200px}}@media (max-width: 640px){.evidence-library__header,.evidence-library__header-right{flex-direction:column;align-items:stretch}.evidence-library__search{width:100%}.evidence-library__tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.evidence-library__tab{white-space:nowrap}}.ai-preferences{max-width:800px;margin:0 auto;padding:24px}.ai-preferences__header{margin-bottom:32px}.ai-preferences__header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#111827}.ai-preferences__subtitle{margin:0;font-size:14px;color:#6b7280;line-height:1.5}.ai-preferences__save-status{display:inline-block;margin-top:8px;padding:4px 12px;font-size:12px;font-weight:500;border-radius:4px}.ai-preferences__save-status--saving{background-color:#dbeafe;color:#1e40af}.ai-preferences__save-status--saved{background-color:#d1fae5;color:#065f46}.ai-preferences__save-status--error{background-color:#fee2e2;color:#991b1b}.ai-preferences__section{background-color:#fff!important;border:1px solid #e5e7eb!important;border-radius:8px;padding:24px;margin-bottom:24px}.ai-preferences__section h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827!important}.ai-preferences__section-desc{margin:0 0 24px;font-size:14px;color:#4b5563!important;line-height:1.5}.ai-preferences__item{padding:20px 0;border-bottom:1px solid #e5e7eb!important}.ai-preferences__item:last-child{border-bottom:none!important;padding-bottom:0}.ai-preferences__item--disabled{opacity:.5;pointer-events:none}.ai-preferences__item-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.ai-preferences__label{font-size:15px;font-weight:600;color:#111827!important;cursor:pointer}.ai-preferences__badge{font-size:10px;font-weight:600;text-transform:uppercase;padding:2px 6px;border-radius:3px;background-color:#d1fae5!important;color:#065f46!important}.ai-preferences__item-desc{margin:0 0 12px;font-size:13px;color:#4b5563!important;line-height:1.5}.ai-preferences__toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.ai-preferences__toggle input{position:absolute;opacity:0;width:0;height:0}.ai-preferences__toggle-slider{position:relative;width:48px;height:24px;background-color:#d1d5db;border-radius:12px;transition:background-color .2s}.ai-preferences__toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background-color:#fff;border-radius:50%;transition:transform .2s}.ai-preferences__toggle input:checked+.ai-preferences__toggle-slider{background-color:#2563eb}.ai-preferences__toggle input:checked+.ai-preferences__toggle-slider:before{transform:translate(24px)}.ai-preferences__toggle input:focus+.ai-preferences__toggle-slider{box-shadow:0 0 0 2px #2563eb4d}.ai-preferences__toggle input:disabled+.ai-preferences__toggle-slider{opacity:.5;cursor:not-allowed}.ai-preferences__toggle-label{font-size:13px;color:#374151!important;min-width:60px}.ai-preferences__number-input{display:flex;align-items:center;gap:12px}.ai-preferences__number-input input{width:80px;padding:8px 12px;font-size:14px;color:#111827!important;background-color:#fff!important;border:1px solid #d1d5db!important;border-radius:4px;text-align:center}.ai-preferences__number-input input:focus{outline:none;border-color:#2563eb!important;box-shadow:0 0 0 2px #2563eb33}.ai-preferences__number-input input:disabled{opacity:.5;cursor:not-allowed}.ai-preferences__number-hint{font-size:12px;color:#4b5563!important}.ai-preferences__footer{padding-top:16px}.ai-preferences__footer-note{margin:0;font-size:12px;color:#4b5563!important;font-style:italic}.vendor-dashboard{padding:2rem;max-width:1400px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-content h1{font-size:1.75rem;font-weight:600;color:var(--text, #e8eefc);margin:0 0 .5rem}.header-content .subtitle{color:var(--muted, #8ea1c7);margin:0}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.summary-card{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1.25rem;text-align:center}.summary-card.warning .summary-value{color:var(--warning, #f59e0b)}.summary-value{font-size:2rem;font-weight:700;color:var(--secondary, #17A2B8);line-height:1}.summary-label{font-size:.875rem;color:var(--muted, #8ea1c7);margin-top:.5rem}.filters-bar{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-box{flex:1;min-width:200px}.search-box input{width:100%;padding:.625rem 1rem;border:1px solid var(--line, #1c2a54);border-radius:6px;font-size:.875rem;background:var(--pane, #0f1730);color:var(--text, #e8eefc)}.search-box input::placeholder{color:var(--muted, #8ea1c7);opacity:.7}.search-box input:focus{outline:none;border-color:var(--secondary, #17A2B8);box-shadow:0 0 0 3px #17a2b833}.status-filter select{padding:.625rem 2rem .625rem 1rem;border:1px solid var(--line, #1c2a54);border-radius:6px;font-size:.875rem;background:var(--pane, #0f1730);color:var(--text, #e8eefc);cursor:pointer}.status-filter select option{background:var(--pane, #0f1730);color:var(--text, #e8eefc)}.sort-group{display:flex;align-items:center;gap:.5rem}.sort-group .filter-label{font-size:.75rem;color:var(--muted, #8ea1c7);white-space:nowrap}.sort-order-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--line, #1c2a54);border-radius:6px;background:var(--pane, #0f1730);color:var(--text, #e8eefc);font-size:1rem;cursor:pointer;transition:all .15s ease}.sort-order-btn:hover{border-color:var(--secondary, #17A2B8);background:#17a2b81a}.sort-order-btn:active{transform:scale(.95)}.vendor-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.5rem}.vendor-card{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem;cursor:pointer;transition:box-shadow .2s,transform .2s,border-color .2s}.vendor-card:hover{box-shadow:0 4px 12px #0000004d;transform:translateY(-2px);border-color:var(--secondary, #17A2B8)}.vendor-card-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}.vendor-logo{width:48px;height:48px;border-radius:8px;overflow:hidden;flex-shrink:0}.vendor-logo img{width:100%;height:100%;object-fit:cover}.vendor-logo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#17a2b833;color:var(--secondary, #17A2B8);font-weight:600;font-size:1rem}.vendor-info{flex:1;min-width:0}.vendor-name{font-size:1.125rem;font-weight:600;color:var(--text, #e8eefc);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vendor-legal{font-size:.75rem;color:var(--muted, #8ea1c7);display:block;margin-top:.25rem}.cert-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.cert-badge.cert-platinum{background:linear-gradient(135deg,#e5e4e2,silver);color:#374151}.cert-badge.cert-gold{background:linear-gradient(135deg,#fef3c7,#fcd34d);color:#92400e}.cert-badge.cert-silver{background:linear-gradient(135deg,#f3f4f6,#d1d5db);color:#374151}.cert-badge.cert-bronze{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#9a3412}.cert-badge.cert-none{background:#8ea1c71a;color:var(--muted, #8ea1c7);border:1px dashed var(--line, #1c2a54)}.cert-badge.expiring .expiring-indicator{color:var(--warning, #f59e0b)}.vendor-card-body{margin-bottom:1rem}.vendor-location{font-size:.875rem;color:var(--muted, #8ea1c7);margin-bottom:.5rem;display:flex;align-items:center;gap:.25rem}.vendor-location .icon{font-size:.875rem}.vendor-description{font-size:.875rem;color:var(--muted, #8ea1c7);margin:.5rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.vendor-stats{display:flex;gap:1.5rem;margin-top:.75rem}.vendor-stats .stat{font-size:.875rem;color:var(--muted, #8ea1c7)}.vendor-stats .stat strong{color:var(--text, #e8eefc)}.vendor-card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--line, #1c2a54)}.vendor-card-actions .btn{flex:1}.vendor-card-actions .btn-ghost{flex:0;color:var(--muted, #8ea1c7)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.btn-primary{background:var(--primary, #3b82f6);color:#fff}.btn-primary:hover{background:var(--primary-dark, #2563eb)}.btn-primary:disabled{background:var(--primary-light, #93c5fd);cursor:not-allowed}.btn-secondary{background:var(--pane, #0f1730);color:var(--text, #e8eefc);border:1px solid var(--line, #1c2a54)}.btn-secondary:hover{background:var(--bg, #0b1220)}.btn-ghost{background:transparent;color:var(--muted, #8ea1c7)}.btn-ghost:hover{background:var(--bg, #0b1220)}.loading-state,.error-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-state .spinner{width:40px;height:40px;border:3px solid var(--line, #1c2a54);border-top-color:var(--primary, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}.loading-state p,.error-state p{color:var(--muted, #8ea1c7);margin-top:1rem}.error-state{color:var(--error, #ef4444)}.error-state .btn{margin-top:1rem}.empty-state-icon{font-size:4rem;margin-bottom:1rem}.empty-state h2{font-size:1.5rem;font-weight:600;color:var(--text, #e8eefc);margin:0 0 .5rem}.empty-state p{color:var(--muted, #8ea1c7);max-width:400px;margin:0 0 1.5rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#0f1730;border:1px solid #1c2a54;border-radius:12px;width:100%;max-width:560px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #1c2a54;background:#0f1730}.modal-header h2{font-size:1.25rem;font-weight:600;margin:0;color:#e8eefc!important}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--muted, #8ea1c7);cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:var(--text, #e8eefc)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--line, #1c2a54)}.product-detail-modal{max-width:640px}.product-detail-content{display:flex;flex-direction:column;gap:1rem}.detail-row{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;font-weight:600;color:var(--muted, #8ea1c7);text-transform:uppercase;letter-spacing:.05em}.detail-value{font-size:.9375rem;color:var(--text, #e8eefc)}.detail-value.description{margin:0;line-height:1.5}.detail-link{color:var(--secondary, #17A2B8);text-decoration:none;word-break:break-all}.detail-link:hover{text-decoration:underline}.ai-components-list{display:flex;flex-direction:column;gap:.5rem}.ai-component-item{background:var(--bg, #0b1220);border:1px solid var(--line, #1c2a54);border-radius:6px;padding:.75rem}.ai-component-item strong{color:var(--text, #e8eefc)}.ai-component-item .comp-type{color:var(--muted, #8ea1c7);margin-left:.5rem}.ai-component-item p{margin:.25rem 0 0;font-size:.875rem;color:var(--muted, #8ea1c7)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;text-transform:uppercase}.status-badge.status-active{background:#10b98126;color:#10b981}.status-badge.status-inactive{background:#9ca3af26;color:#9ca3af}.status-badge.status-pending{background:#f59e0b26;color:#f59e0b}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text, #e8eefc);margin-bottom:.375rem}.form-group input,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--line, #1c2a54);border-radius:6px;font-size:.875rem;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.error-message{background:var(--error-light, #fef2f2);color:var(--error, #ef4444);padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem}@media (max-width: 768px){.vendor-dashboard{padding:1rem}.dashboard-header{flex-direction:column;gap:1rem}.dashboard-header .btn{width:100%}.vendor-grid,.form-row{grid-template-columns:1fr}.vendor-card-actions{flex-wrap:wrap}}.vendor-detail{padding:2rem;max-width:1400px;margin:0 auto}.detail-header{margin-bottom:1.5rem}.back-btn{padding:.5rem 0;color:var(--muted, #8ea1c7)}.back-btn:hover{color:var(--primary, #3b82f6)}.vendor-profile{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.profile-header{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:1rem}.vendor-logo.large{width:80px;height:80px;border-radius:12px;flex-shrink:0}.vendor-logo.large .vendor-logo-placeholder{font-size:1.5rem}.profile-info{flex:1}.profile-info h1{font-size:1.75rem;font-weight:600;margin:0 0 .25rem;color:var(--text, #e8eefc)}.profile-info .vendor-legal{display:block;font-size:.875rem;color:var(--muted, #8ea1c7);margin-bottom:.25rem}.profile-info .vendor-location{font-size:.875rem;color:var(--muted, #8ea1c7)}.profile-actions{flex-shrink:0}.vendor-description-full{color:var(--muted, #8ea1c7);line-height:1.6;margin:1rem 0}.vendor-contact-info{display:flex;flex-wrap:wrap;gap:1.5rem;padding:1rem 0;border-top:1px solid var(--line, #1c2a54);border-bottom:1px solid var(--line, #1c2a54);margin:1rem 0}.contact-item{display:flex;flex-direction:column;gap:.25rem}.contact-item .label{font-size:.75rem;color:var(--muted, #8ea1c7);text-transform:uppercase;letter-spacing:.5px}.contact-item .value,.contact-item a{font-size:.875rem;color:var(--text, #e8eefc)}.contact-item a{color:var(--primary, #3b82f6);text-decoration:none}.contact-item a:hover{text-decoration:underline}.vendor-meta{display:flex;gap:1.5rem;font-size:.75rem;color:var(--muted, #8ea1c7)}.vendor-meta .status-active{color:var(--success, #10b981)}.vendor-meta .status-inactive{color:var(--warning, #f59e0b)}.vendor-meta .status-archived{color:var(--muted, #8ea1c7)}.tabs-container{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;overflow:hidden}.tabs{display:flex;border-bottom:1px solid var(--line, #1c2a54)}.tab{flex:1;padding:1rem 1.5rem;background:none;border:none;font-size:.875rem;font-weight:500;color:var(--muted, #8ea1c7);cursor:pointer;transition:all .15s ease;border-bottom:2px solid transparent;margin-bottom:-1px}.tab:hover{color:var(--text, #e8eefc);background:var(--bg, #0b1220)}.tab.active{color:var(--primary, #3b82f6);border-bottom-color:var(--primary, #3b82f6)}.tab-content{padding:1.5rem;min-height:300px}.empty-tab-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center}.empty-tab-state p{color:var(--muted, #8ea1c7);margin-bottom:1rem}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.product-card{background:var(--bg, #0b1220);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1rem;cursor:pointer;transition:all .15s ease}.product-card:hover{border-color:var(--primary-light, #93c5fd);box-shadow:0 2px 8px #0000000d}.product-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.5rem}.product-info{flex:1;min-width:0}.product-name{font-size:1rem;font-weight:600;color:var(--text, #e8eefc);margin:0}.product-version{font-size:.75rem;color:var(--muted, #8ea1c7);margin-left:.5rem}.product-category{display:inline-block;font-size:.75rem;color:var(--primary, #3b82f6);background:var(--primary-light, #dbeafe);padding:.125rem .5rem;border-radius:4px;margin-bottom:.5rem}.product-description{font-size:.8125rem;color:var(--muted, #8ea1c7);margin:.5rem 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-ai-components{margin:.75rem 0}.product-ai-components .label{font-size:.75rem;color:var(--muted, #8ea1c7);display:block;margin-bottom:.25rem}.component-tags{display:flex;flex-wrap:wrap;gap:.25rem}.component-tag{font-size:.6875rem;background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);padding:.125rem .375rem;border-radius:4px;color:var(--muted, #8ea1c7)}.component-tag.more{background:var(--muted, #8ea1c7);color:#fff;border-color:transparent}.product-card-actions{display:flex;gap:.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--line, #1c2a54)}.assessments-table{width:100%;border-collapse:collapse}.assessments-table th,.assessments-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--line, #1c2a54)}.assessments-table th{font-size:.75rem;font-weight:600;color:var(--muted, #8ea1c7);text-transform:uppercase;letter-spacing:.5px;background:var(--bg, #0b1220)}.assessments-table td{font-size:.875rem;color:var(--text, #e8eefc)}.assessment-row{cursor:pointer;transition:background .15s ease}.assessment-row:hover{background:var(--bg, #0b1220)}.score{font-weight:600;color:var(--primary, #3b82f6)}.score-pending{color:var(--muted, #8ea1c7)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge.status-draft{background:#8ea1c726;color:var(--muted, #8ea1c7)}.status-badge.status-in-progress{background:#dbeafe;color:#1d4ed8}.status-badge.status-pending-review{background:#fef3c7;color:#92400e}.status-badge.status-approved{background:#d1fae5;color:#047857}.status-badge.status-rejected{background:#fee2e2;color:#b91c1c}.certifications-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.certification-card{background:var(--bg, #0b1220);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1rem}.cert-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.cert-badge.cert-sm{font-size:.6875rem;padding:.125rem .5rem}.cert-badge.cert-lg{font-size:.875rem;padding:.375rem 1rem}.gxp-badge{font-size:.6875rem;font-weight:600;color:var(--success, #047857);background:#d1fae5;padding:.25rem .5rem;border-radius:4px}.cert-product{font-size:.9375rem;font-weight:500;color:var(--text, #e8eefc);margin-bottom:.5rem}.cert-dates{display:flex;flex-direction:column;gap:.125rem;font-size:.75rem;color:var(--muted, #8ea1c7)}.form-group select{width:100%;padding:.625rem .875rem;border:1px solid var(--line, #1c2a54);border-radius:6px;font-size:.875rem;font-family:inherit;background:var(--pane, #0f1730);cursor:pointer}.form-group select:focus{outline:none;border-color:var(--primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}@media (max-width: 768px){.vendor-detail{padding:1rem}.profile-header{flex-direction:column;align-items:center;text-align:center}.profile-actions,.profile-actions .btn{width:100%}.vendor-contact-info{flex-direction:column;gap:.75rem}.vendor-meta{flex-direction:column;gap:.5rem}.tabs{flex-direction:column}.tab{border-bottom:none;border-left:2px solid transparent}.tab.active{border-left-color:var(--primary, #3b82f6);border-bottom-color:transparent}.product-grid,.certifications-list{grid-template-columns:1fr}.assessments-table{display:block;overflow-x:auto}}.assessment-wizard{padding:2rem;max-width:1000px;margin:0 auto}.wizard-header{margin-bottom:2rem}.wizard-title h1{font-size:1.5rem;font-weight:600;margin:.5rem 0 .25rem;color:var(--text, #e8eefc)}.wizard-title p{color:var(--muted, #8ea1c7);margin:0}.wizard-steps{display:flex;justify-content:space-between;margin-bottom:2rem;padding:0 1rem;overflow-x:auto}.wizard-step{display:flex;flex-direction:column;align-items:center;position:relative;flex:1;min-width:80px}.step-indicator{width:32px;height:32px;border-radius:50%;background:#8ea1c726;border:2px solid var(--line, #1c2a54);display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:600;color:var(--muted, #8ea1c7);z-index:1}.wizard-step.current .step-indicator{background:var(--primary, #3b82f6);border-color:var(--primary, #3b82f6);color:#fff}.wizard-step.completed .step-indicator{background:var(--success, #10b981);border-color:var(--success, #10b981);color:#fff}.wizard-step.failed .step-indicator{background:var(--error, #ef4444);border-color:var(--error, #ef4444);color:#fff}.step-info{text-align:center;margin-top:.5rem}.step-label{display:block;font-size:.75rem;font-weight:500;color:var(--text, #e8eefc)}.step-description{display:none;font-size:.6875rem;color:var(--muted, #8ea1c7)}.step-connector{position:absolute;top:16px;left:calc(50% + 20px);width:calc(100% - 40px);height:2px;background:var(--line, #1c2a54)}.wizard-step.completed .step-connector{background:var(--success, #10b981)}.wizard-content{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:2rem}.step-content h2{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--text, #e8eefc)}.step-content>p{color:var(--muted, #8ea1c7);margin:0 0 1.5rem}.step-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line, #1c2a54)}.file-upload-section{margin-bottom:1.5rem}.upload-zone{border:2px dashed var(--line, #1c2a54);border-radius:8px;padding:2rem;text-align:center;transition:all .2s ease;position:relative}.upload-zone:hover{border-color:var(--primary-light, #93c5fd);background:var(--bg, #0b1220)}.upload-zone.drag-active{border-color:var(--primary, #3b82f6);background:var(--primary-light, #dbeafe)}.upload-zone.uploading{opacity:.7;pointer-events:none}.upload-zone input[type=file]{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer}.upload-label{display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer}.upload-icon{font-size:2.5rem}.upload-text{color:var(--muted, #8ea1c7)}.upload-text strong{color:var(--primary, #3b82f6)}.upload-hint{font-size:.75rem;color:var(--muted, #8ea1c7)}.uploaded-files{margin-top:1.5rem}.uploaded-files h4{font-size:.875rem;font-weight:600;margin:0 0 .75rem}.file-list{list-style:none;padding:0;margin:0}.file-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:var(--bg, #0b1220);border-radius:6px;margin-bottom:.5rem}.file-info{flex:1;min-width:0}.file-name{display:block;font-size:.875rem;font-weight:500;color:var(--text, #e8eefc);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{font-size:.75rem;color:var(--muted, #8ea1c7)}.station-panel{background:var(--bg, #0b1220);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1.5rem}.station-panel.passed{border-color:var(--success, #10b981);background:#10b9810d}.station-panel.failed{border-color:var(--error, #ef4444);background:#ef44440d}.station-panel.running{border-color:var(--primary, #3b82f6);background:#3b82f60d}.station-header{display:flex;align-items:flex-start;gap:1rem}.station-status-icon{width:40px;height:40px;border-radius:50%;background:var(--pane, #0f1730);border:2px solid var(--line, #1c2a54);display:flex;align-items:center;justify-content:center;font-size:1.25rem;flex-shrink:0}.station-panel.passed .station-status-icon{background:var(--success, #10b981);border-color:var(--success, #10b981);color:#fff}.station-panel.failed .station-status-icon{background:var(--error, #ef4444);border-color:var(--error, #ef4444);color:#fff}.station-panel.running .station-status-icon{background:var(--primary, #3b82f6);border-color:var(--primary, #3b82f6);color:#fff;animation:pulse 1.5s infinite}.station-info{flex:1}.station-info h3{font-size:1rem;font-weight:600;margin:0 0 .25rem;color:var(--text, #e8eefc)}.station-info p{font-size:.875rem;color:var(--muted, #8ea1c7);margin:0}.station-score{font-size:1.5rem;font-weight:700;padding:.5rem 1rem;border-radius:8px;background:var(--pane, #0f1730)}.station-score.score-high{color:var(--success, #10b981)}.station-score.score-medium{color:var(--warning, #f59e0b)}.station-score.score-low{color:var(--error, #ef4444)}.station-issues{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line, #1c2a54)}.station-issues h4{font-size:.875rem;font-weight:600;margin:0 0 .5rem}.issues-list{list-style:none;padding:0;margin:0;max-height:300px;overflow-y:auto;padding-right:.5rem}.issues-list::-webkit-scrollbar{width:6px}.issues-list::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.issues-list::-webkit-scrollbar-thumb{background:#8ea1c74d;border-radius:3px}.issues-list::-webkit-scrollbar-thumb:hover{background:#8ea1c780}.issue-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem;background:#0f1730!important;border-radius:4px;margin-bottom:.25rem;font-size:.8125rem}.issue-item.severity-info,.issue-item.severity-low,.issue-item.severity-medium,.issue-item.severity-high,.issue-item.severity-critical{background:#0f1730!important}.issue-severity{padding:.125rem .375rem;border-radius:3px;font-size:.625rem;font-weight:600;text-transform:uppercase;flex-shrink:0}.issue-item.severity-critical .issue-severity{background:#fee2e2;color:#b91c1c}.issue-item.severity-high .issue-severity{background:#ffedd5;color:#c2410c}.issue-item.severity-medium .issue-severity{background:#fef3c7;color:#92400e}.issue-item.severity-low .issue-severity{background:#dbeafe;color:#1d4ed8}.issue-item.severity-info .issue-severity{background:#e0e7ff;color:#4338ca}.issue-message{flex:1;color:#e8eefc!important}.issue-column{font-size:.75rem;color:#8ea1c7!important}.issue-more{font-size:.75rem;color:var(--muted, #8ea1c7);padding:.25rem .5rem}.station-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--line, #1c2a54)}.station-complete{color:var(--success, #10b981);font-weight:500}.station-complete.station-failed{color:var(--warning, #f59e0b)}.station-complete-actions{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem}.btn-outline{background:transparent;border:1px solid var(--line, #1c2a54);color:var(--text-secondary, #9ca3af);padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-outline:hover:not(:disabled){border-color:var(--primary, #3b82f6);color:var(--primary, #3b82f6)}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.critical-checks-panel{margin:1.5rem 0;padding:1.5rem;background:var(--bg, #0b1220);border-radius:8px}.critical-checks-panel h3{font-size:1rem;font-weight:600;margin:0 0 .25rem}.panel-description{font-size:.875rem;color:var(--muted, #8ea1c7);margin:0 0 1rem}.checks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}.check-card{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:6px}.check-card.passed{border-color:var(--success, #10b981)}.check-card.failed{border-color:var(--error, #ef4444)}.check-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;flex-shrink:0}.check-card.passed .check-icon{background:var(--success, #10b981);color:#fff}.check-card.failed .check-icon{background:var(--error, #ef4444);color:#fff}.check-info{flex:1}.check-name{display:block;font-size:.875rem;font-weight:500;color:var(--text, #e8eefc)}.check-message,.check-value{display:block;font-size:.75rem;color:var(--muted, #8ea1c7)}.tier-recommendation{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:var(--bg, #0b1220);border-radius:8px;margin-bottom:1.5rem}.tier-recommendation.tier-none{border:1px dashed var(--line, #1c2a54)}.tier-recommendation .tier-badge{flex-shrink:0}.tier-details{flex:1}.tier-score{font-size:1.125rem;font-weight:600;color:var(--text, #e8eefc)}.tier-validity,.tier-reason{font-size:.875rem;color:var(--muted, #8ea1c7)}.stations-summary{margin:1.5rem 0}.stations-summary h3{font-size:1rem;font-weight:600;margin:0 0 1rem}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.summary-card{padding:1rem;background:var(--bg, #0b1220);border:1px solid var(--line, #1c2a54);border-radius:8px;text-align:center;cursor:pointer;transition:all .15s ease}.summary-card:hover{border-color:var(--primary, #3b82f6)}.summary-card.passed{border-color:var(--success, #10b981)}.summary-card.failed{border-color:var(--error, #ef4444)}.summary-card .summary-label{font-size:.75rem;color:var(--muted, #8ea1c7);margin-bottom:.25rem}.summary-card .summary-score{font-size:1.25rem;font-weight:700;color:var(--text, #e8eefc)}.summary-card.passed .summary-score{color:var(--success, #10b981)}.summary-card.failed .summary-score{color:var(--error, #ef4444)}.submit-summary{margin-bottom:1.5rem}.submit-info{background:var(--bg, #0b1220);border-radius:8px;padding:1rem}.submit-info p{font-size:.875rem;color:var(--muted, #8ea1c7);margin:0 0 .75rem}.submit-info p:last-child{margin-bottom:0}@media (max-width: 768px){.assessment-wizard{padding:1rem}.wizard-steps{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem}.wizard-step{min-width:60px}.step-connector{display:none}.wizard-content{padding:1.5rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.checks-grid{grid-template-columns:1fr}.tier-recommendation{flex-direction:column;text-align:center}}.certification-review{padding:2rem;max-width:1600px;margin:0 auto;min-height:100vh;background:var(--bg, #0b1220)}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--line, #1c2a54)}.header-info{display:flex;align-items:center;gap:1.5rem}.header-info .product-info h1{font-size:1.5rem;font-weight:600;margin:0;color:var(--text, #e8eefc)}.header-info .vendor-name{color:var(--muted, #8ea1c7);margin-right:.5rem}.header-info .version{color:var(--muted, #8ea1c7);font-size:.875rem}.header-status{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.submitted-date{font-size:.875rem;color:var(--muted, #8ea1c7)}.review-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.scores-column,.decision-column{display:flex;flex-direction:column;gap:1.5rem}.ai-readiness-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem;text-align:center}.ai-readiness-section h2{margin:0 0 1.5rem;font-size:1.125rem;color:var(--text, #e8eefc)}.score-gauge{display:flex;flex-direction:column;align-items:center;gap:.5rem}.gauge-circle{width:120px;height:120px;position:relative}.gauge-circle svg{width:100%;height:100%;transform:rotate(-90deg)}.gauge-bg{fill:none;stroke:var(--line, #1c2a54);stroke-width:3}.gauge-fill{fill:none;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .5s ease}.gauge-value{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.5rem;font-weight:700;color:var(--text, #e8eefc)}.gauge-label{font-size:.875rem;color:var(--muted, #8ea1c7)}.gauge-status{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px}.gauge-status.passed{background:#d4edda;color:#155724}.gauge-status.failed{background:#f8d7da;color:#721c24}.tier-recommendation{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line, #1c2a54);display:flex;flex-direction:column;align-items:center;gap:.75rem}.recommendation-label{font-size:.875rem;color:var(--muted, #8ea1c7)}.recommendation-reasoning{font-size:.875rem;color:var(--muted, #8ea1c7);text-align:center;margin:0}.stations-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem}.stations-section h2{margin:0 0 1rem;font-size:1.125rem}.stations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.station-card{padding:1rem;border-radius:8px;text-align:center;border:1px solid var(--line, #1c2a54);background:var(--bg, #0b1220)}.station-card.passed{border-color:#c3e6cb;background:#f8fff9}.station-card.failed{border-color:#f5c6cb;background:#fff8f8}.station-card.pending{opacity:.6}.station-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.station-card h4{margin:0 0 .5rem;font-size:.875rem;color:var(--muted, #8ea1c7)}.station-score{font-size:1.25rem;font-weight:700;color:var(--text, #e8eefc)}.station-status{font-size:.625rem;font-weight:600;margin-top:.25rem;padding:.125rem .375rem;border-radius:3px;display:inline-block}.station-status.passed{background:#d4edda;color:#155724}.station-status.failed{background:#f8d7da;color:#721c24}.critical-checks-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem}.critical-checks-section h2{margin:0 0 1rem;font-size:1.125rem}.critical-checks-list{display:flex;flex-direction:column;gap:.75rem}.critical-check{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:8px;border:1px solid var(--line, #1c2a54)}.critical-check.passed{border-color:#c3e6cb;background:#f8fff9}.critical-check.passed .check-icon{color:#155724;background:#d4edda}.critical-check.failed{border-color:#f5c6cb;background:#fff8f8}.critical-check.failed .check-icon{color:#721c24;background:#f8d7da}.check-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700}.check-info h4{margin:0;font-size:.875rem;font-weight:600}.check-status{font-size:.75rem;font-weight:600}.check-status.passed{color:#155724}.check-status.failed{color:#721c24}.check-details{display:block;font-size:.75rem;color:var(--muted, #8ea1c7)}.evidence-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem}.evidence-section h2{margin:0 0 1rem;font-size:1.125rem}.evidence-list{list-style:none;padding:0;margin:0}.evidence-file{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:4px}.evidence-file:hover{background:var(--bg, #0b1220)}.file-icon{font-size:1.25rem}.file-name{flex:1;font-size:.875rem}.file-size{font-size:.75rem;color:var(--muted, #8ea1c7)}.findings-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem}.findings-section h2{margin:0 0 1rem;font-size:1.125rem;display:flex;align-items:center;gap:.75rem}.critical-warning{font-size:.75rem;font-weight:600;color:#721c24;background:#f8d7da;padding:.25rem .5rem;border-radius:4px}.no-findings{text-align:center;padding:2rem;color:#155724}.no-findings span{font-size:2rem;display:block;margin-bottom:.5rem}.findings-list{display:flex;flex-direction:column;gap:.5rem}.finding-row{border:1px solid var(--line, #1c2a54);border-radius:8px;overflow:hidden}.finding-row.accepted{border-color:#c3e6cb}.finding-row.rejected{border-color:#f5c6cb}.finding-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;background:var(--bg, #0b1220)}.finding-header:hover{background:#8ea1c71a}.severity-badge{font-size:.625rem;font-weight:700;color:#fff;padding:.125rem .5rem;border-radius:3px;text-transform:uppercase}.finding-station{font-size:.75rem;color:var(--muted, #8ea1c7)}.finding-code{font-size:.75rem;color:var(--muted, #8ea1c7);font-family:monospace;margin-left:auto}.finding-expand{font-size:.75rem;color:var(--muted, #8ea1c7)}.finding-details{padding:1rem;border-top:1px solid var(--line, #1c2a54)}.finding-description,.finding-recommendation,.finding-vendor-response{margin-bottom:1rem}.finding-details h5{font-size:.75rem;font-weight:600;color:var(--muted, #8ea1c7);margin:0 0 .25rem;text-transform:uppercase}.finding-details p{margin:0;font-size:.875rem}.finding-vendor-response{background:#fff3cd;padding:.75rem;border-radius:4px;border-left:3px solid #ffc107}.finding-verdict-form{display:flex;flex-direction:column;gap:.75rem}.finding-verdict-form textarea{width:100%;padding:.5rem;border:1px solid var(--line, #1c2a54);border-radius:4px;font-size:.875rem;resize:vertical}.verdict-actions{display:flex;gap:.5rem}.finding-verdict{padding:.75rem;border-radius:4px}.finding-verdict.accepted{background:#d4edda;border-left:3px solid #28a745}.finding-verdict.rejected{background:#f8d7da;border-left:3px solid #dc3545}.verdict-label{font-weight:600;font-size:.875rem}.verdict-notes{margin:.5rem 0 0;font-size:.875rem;opacity:.9}.bridge-ai-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;padding:1.5rem}.bridge-ai-section h2{margin:0 0 1rem;font-size:1.125rem}.bridge-decision{display:flex;gap:1rem;padding:1rem;border-radius:8px}.bridge-decision.approved{background:#d4edda;border:1px solid #c3e6cb}.bridge-decision.not-approved{background:#fff3cd;border:1px solid #ffeeba}.decision-icon{font-size:1.5rem}.decision-content h3{margin:0 0 .5rem;font-size:1rem}.decision-content p{margin:0;font-size:.875rem;opacity:.9}.decision-panel{background:var(--pane, #0f1730);border:2px solid var(--primary, #4f46e5);border-radius:12px;padding:1.5rem}.decision-panel h2{margin:0 0 1.5rem;font-size:1.25rem;color:var(--primary, #4f46e5)}.tier-selection{margin-bottom:1.5rem}.tier-selection label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.75rem}.tier-options{display:flex;gap:.5rem}.tier-option{padding:.5rem 1rem;border:2px solid var(--line, #1c2a54);border-radius:8px;background:transparent;cursor:pointer;transition:all .2s}.tier-option:hover{border-color:var(--primary, #4f46e5)}.tier-option.selected{border-color:var(--primary, #4f46e5);background:#eef2ff}.decision-notes{margin-bottom:1.5rem}.decision-notes label{display:block;font-size:.875rem;font-weight:600;margin-bottom:.5rem}.decision-notes textarea{width:100%;padding:.75rem;border:1px solid var(--line, #1c2a54);border-radius:8px;font-size:.875rem;resize:vertical}.decision-actions{display:flex;gap:1rem}.decision-actions .btn{flex:1}.approval-warning{margin-top:1rem;font-size:.875rem;color:#721c24;text-align:center}.tier-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-weight:600}.tier-badge.size-sm{padding:.25rem .5rem;font-size:.75rem}.tier-badge.size-lg{padding:.75rem 1.5rem;font-size:1.125rem}.tier-badge .tier-icon{font-size:1.25em}.cert-card{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;overflow:hidden}.cert-card.invalid{opacity:.7}.cert-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem}.tier-badge-large{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700}.cert-number-display{text-align:right}.cert-number-display .label{display:block;font-size:.625rem;text-transform:uppercase;opacity:.7}.cert-number-display .number{font-size:.875rem;font-weight:600}.cert-body{padding:1.5rem}.product-section{margin-bottom:1.5rem}.product-section .product-name{font-size:1.125rem;font-weight:600;margin:0}.product-section .version{font-size:.875rem;color:var(--muted, #8ea1c7);margin-left:.5rem}.product-section .vendor-name{display:block;font-size:.875rem;color:var(--muted, #8ea1c7);margin-top:.25rem}.score-section{margin-bottom:1.5rem}.score-display{display:flex;align-items:baseline;gap:.5rem}.score-value{font-size:2rem;font-weight:700;color:var(--primary, #4f46e5)}.score-label{font-size:.875rem;color:var(--muted, #8ea1c7)}.validity-section{margin-bottom:1.5rem}.date-row{display:flex;justify-content:space-between;font-size:.875rem;margin-bottom:.25rem}.date-label{color:var(--muted, #8ea1c7)}.expiry-indicator{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;color:#fff}.gxp-section{margin-bottom:1rem}.gxp-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.gxp-badge.approved{background:#d4edda;color:#155724}.gxp-badge.not-approved{background:#f8f9fa;color:#6c757d}.revocation-notice{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#f8d7da;border-radius:4px;color:#721c24;font-size:.875rem}.cert-actions{display:flex;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--line, #1c2a54);background:var(--bg, #0b1220)}.cert-card-compact{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px}.cert-card-compact.invalid{opacity:.6}.tier-indicator{width:36px;height:36px;border-radius:6px;display:flex;align-items:center;justify-content:center}.cert-card-compact .cert-info{flex:1}.cert-card-compact .cert-number{display:block;font-size:.75rem;color:var(--muted, #8ea1c7)}.cert-card-compact .product-name{font-weight:600;font-size:.875rem}.cert-card-compact .expiry-badge{font-size:.75rem;font-weight:600}.cert-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.cert-list.compact{display:flex;flex-direction:column;gap:.5rem}.cert-list-empty{text-align:center;padding:3rem;color:var(--muted, #8ea1c7)}.cert-list-empty .empty-icon{font-size:3rem;display:block;margin-bottom:1rem}.cert-summary{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.cert-summary .summary-card{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1rem;text-align:center;min-width:100px}.cert-summary .summary-value{display:block;font-size:1.5rem;font-weight:700}.cert-summary .summary-label{font-size:.75rem;color:var(--muted, #8ea1c7)}.cert-summary .summary-card.warning{border-color:#ffc107;background:#fff3cd}.summary-tiers{display:flex;gap:.5rem}.tier-stat{display:flex;align-items:center;gap:.25rem;padding:.5rem .75rem;border-radius:6px;font-weight:600}.tier-count{font-size:1rem}@media (max-width: 1024px){.review-content{grid-template-columns:1fr}}@media (max-width: 640px){.stations-grid{grid-template-columns:1fr}.tier-options{flex-wrap:wrap}.decision-actions{flex-direction:column}}.analytics-dashboard{padding:2rem;max-width:1600px;margin:0 auto}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.analytics-header h1{font-size:1.75rem;font-weight:600;color:var(--text, #e8eefc);margin:0}.header-actions{display:flex;gap:.5rem}.analytics-loading,.analytics-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;text-align:center}.analytics-error .error-icon{font-size:3rem;margin-bottom:1rem}.metrics-section{margin-bottom:2rem}.metrics-section h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.metric-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px;box-shadow:0 1px 3px #0000000d}.metric-card.metric-success{border-color:var(--color-success, #28a745);background:linear-gradient(135deg,rgba(40,167,69,.15) 0%,var(--pane, #0f1730) 100%)}.metric-card.metric-warning{border-color:var(--color-warning, #ffc107);background:linear-gradient(135deg,rgba(255,193,7,.15) 0%,var(--pane, #0f1730) 100%)}.metric-card.metric-danger{border-color:var(--color-danger, #dc3545);background:linear-gradient(135deg,rgba(220,53,69,.15) 0%,var(--pane, #0f1730) 100%)}.metric-icon{font-size:2rem}.metric-content{display:flex;flex-direction:column}.metric-value{font-size:1.5rem;font-weight:700;color:var(--text, #e8eefc)}.metric-title{font-size:.875rem;color:var(--muted, #8ea1c7)}.metric-subtitle{font-size:.75rem;color:var(--muted, #8ea1c7)}.metric-trend{display:flex;align-items:center;gap:.25rem;margin-left:auto;font-size:.875rem;font-weight:500}.metric-trend.trend-up{color:var(--color-success, #28a745)}.metric-trend.trend-down{color:var(--color-danger, #dc3545)}.metric-trend.trend-neutral{color:var(--muted, #8ea1c7)}.charts-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.chart-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1.5rem}.chart-section h2{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.tier-bars{display:flex;flex-direction:column;gap:.75rem}.tier-bar-item{display:grid;grid-template-columns:80px 1fr 50px;align-items:center;gap:.75rem}.tier-bar-header{display:flex;align-items:center;gap:.5rem}.tier-bar-header .tier-icon{font-size:1.25rem}.tier-bar-header .tier-name{font-weight:500}.tier-bar-header .tier-count{margin-left:auto;font-weight:600}.tier-bar-track{height:24px;background:#8ea1c71a;border-radius:4px;overflow:hidden}.tier-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.tier-percentage{font-size:.875rem;color:var(--muted, #8ea1c7);text-align:right}.status-pills{display:flex;flex-wrap:wrap;gap:.5rem}.status-pill{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;color:#fff;font-weight:500}.status-pill .status-count{background:#ffffff4d;padding:.125rem .5rem;border-radius:10px;font-size:.875rem}.trends-section{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:8px;padding:1.5rem;margin-bottom:2rem}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1.125rem;font-weight:600;margin:0}.period-selector{display:flex;gap:.25rem;background:#8ea1c71a;padding:.25rem;border-radius:6px}.period-btn{padding:.375rem .75rem;border:none;background:transparent;border-radius:4px;font-size:.875rem;color:var(--muted, #8ea1c7);cursor:pointer}.period-btn.active{background:#fff;color:var(--text, #e8eefc);box-shadow:0 1px 2px #0000001a}.trends-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.trend-card{padding:1rem;background:#8ea1c71a;border-radius:6px}.trend-card h3{font-size:.875rem;font-weight:500;color:var(--muted, #8ea1c7);margin:0 0 .5rem}.mini-chart{height:50px}.mini-chart svg{width:100%;height:100%}.mini-chart-empty{height:50px;display:flex;align-items:center;justify-content:center;color:var(--muted, #8ea1c7);font-size:.875rem}.bottom-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2rem}.vendors-list{display:flex;flex-direction:column;gap:.5rem}.vendor-row{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#8ea1c71a;border-radius:6px}.vendor-rank{width:24px;text-align:center;font-weight:600;color:var(--muted, #8ea1c7)}.vendor-info{flex:1;display:flex;flex-direction:column}.vendor-info .vendor-name{font-weight:500}.vendor-info .vendor-meta{font-size:.75rem;color:var(--muted, #8ea1c7)}.vendor-score{text-align:right}.vendor-score .score-value{font-weight:600;color:var(--color-primary, #3b82f6)}.vendor-tier{display:flex;align-items:center;gap:.25rem;font-size:.875rem}.vendor-tier .no-tier{color:var(--muted, #8ea1c7)}.gxp-badge-small{font-size:.75rem;padding:.125rem .375rem;background:#d4edda;color:#155724;border-radius:3px;font-weight:500}.station-bars{display:flex;flex-direction:column;gap:1rem}.station-bar-item{display:flex;flex-direction:column;gap:.25rem}.station-bar-header{display:flex;justify-content:space-between}.station-bar-header .station-name{font-weight:500}.station-bar-header .station-score{font-weight:600}.station-bar-track{height:8px;background:#8ea1c71a;border-radius:4px;overflow:hidden}.station-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.station-pass-rate{font-size:.75rem;color:var(--muted, #8ea1c7)}.expiring-section{background:var(--pane, #0f1730);border:1px solid var(--color-warning, #ffc107);border-radius:8px;padding:1.5rem}.expiring-section h2{font-size:1.125rem;font-weight:600;margin:0 0 1rem}.expiring-list{display:flex;flex-direction:column;gap:.5rem}.expiring-cert-row{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:#8ea1c71a;border-radius:6px;border-left:3px solid var(--color-warning, #ffc107)}.expiring-cert-row.urgency-critical{border-left-color:var(--color-danger, #dc3545);background:#fff5f5}.expiring-cert-row.urgency-high{border-left-color:#fd7e14;background:#fff8f0}.cert-tier-badge{font-weight:500;white-space:nowrap}.expiring-cert-row .cert-info{flex:1;display:flex;flex-direction:column}.expiring-cert-row .cert-product{font-weight:500}.expiring-cert-row .cert-vendor{font-size:.875rem;color:var(--muted, #8ea1c7)}.expiring-cert-row .cert-number{font-size:.75rem;color:var(--muted, #8ea1c7);font-family:monospace}.cert-expiry{display:flex;flex-direction:column;align-items:center}.cert-expiry .days-count{font-size:1.5rem;font-weight:700;color:var(--color-warning, #ffc107)}.expiring-cert-row.urgency-critical .cert-expiry .days-count{color:var(--color-danger, #dc3545)}.cert-expiry .days-label{font-size:.75rem;color:var(--muted, #8ea1c7)}.no-data{text-align:center;color:var(--muted, #8ea1c7);padding:2rem;font-style:italic}@media (max-width: 1200px){.charts-row,.bottom-row,.trends-grid{grid-template-columns:1fr}}@media (max-width: 768px){.analytics-header{flex-direction:column;gap:1rem;align-items:stretch}.header-actions{flex-wrap:wrap}.metrics-grid{grid-template-columns:repeat(2,1fr)}.tier-bar-item{grid-template-columns:70px 1fr 40px}}.vendor-form-container{padding:2rem;max-width:900px;margin:0 auto}.vendor-form-container .form-header{margin-bottom:2rem}.vendor-form-container .form-header h1{font-size:1.75rem;font-weight:600;color:var(--text, #e8eefc);margin:1rem 0 .5rem}.vendor-form-container .form-subtitle{color:var(--muted, #8ea1c7);margin:0;font-size:.95rem}.vendor-form{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;overflow:hidden}.form-section{padding:1.5rem 2rem;border-bottom:1px solid var(--line, #1c2a54)}.form-section:last-of-type{border-bottom:none}.section-title{font-size:1rem;font-weight:600;color:var(--text, #e8eefc);margin:0 0 1rem}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--muted, #8ea1c7);margin-bottom:.375rem}.form-group label.required:after{content:" *";color:var(--error, #E74C3C)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;font-size:.875rem;border:1px solid var(--line, #1c2a54);border-radius:6px;background:var(--bg, #0b1220);color:var(--text, #e8eefc);transition:border-color .15s,box-shadow .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--secondary, #17A2B8);box-shadow:0 0 0 3px #17a2b833}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:var(--error, #E74C3C)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--muted, #8ea1c7);opacity:.6}.form-group select option{background:var(--pane, #0f1730);color:var(--text, #e8eefc)}.field-error{display:block;font-size:.75rem;color:var(--error, #E74C3C);margin-top:.25rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem 2rem;background:#0003;border-top:1px solid var(--line, #1c2a54)}.form-actions .btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s}.form-actions .btn-secondary{background:transparent;border:1px solid var(--line, #1c2a54);color:var(--muted, #8ea1c7)}.form-actions .btn-secondary:hover{background:#ffffff0d;border-color:var(--muted, #8ea1c7);color:var(--text, #e8eefc)}.form-actions .btn-primary{background:var(--primary, #1B4F72);border:1px solid var(--secondary, #17A2B8);color:#fff}.form-actions .btn-primary:hover:not(:disabled){background:var(--secondary, #17A2B8)}.form-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed}.error-banner{display:flex;align-items:center;gap:.5rem;background:#e74c3c26;border:1px solid rgba(231,76,60,.3);color:#ff6b6b;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.875rem}.error-banner .error-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:var(--error, #E74C3C);color:#fff;border-radius:50%;font-weight:600;font-size:.75rem}.spinner-small{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-radius:50%;border-top-color:transparent;animation:spin .8s linear infinite;margin-right:.5rem}.vendor-form-container .back-btn{background:transparent;border:none;color:var(--muted, #8ea1c7);padding:.5rem 0;font-size:.875rem;cursor:pointer}.vendor-form-container .back-btn:hover{color:var(--text, #e8eefc)}.vendor-form-container .loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--muted, #8ea1c7)}.vendor-form-container .loading-state .spinner{width:40px;height:40px;border:3px solid var(--line, #1c2a54);border-top-color:var(--secondary, #17A2B8);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.product-picker-modal{max-width:500px}.product-picker-list{display:flex;flex-direction:column;gap:.5rem}.product-picker-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg, #080c1c);border:1px solid var(--line, #1c2a54);border-radius:8px;cursor:pointer;transition:all .15s ease}.product-picker-item:hover{border-color:var(--secondary, #17A2B8);background:#17a2b80d}.product-picker-info{display:flex;flex-direction:column;gap:.25rem}.product-picker-info h4{margin:0;font-size:1rem;font-weight:600;color:var(--text, #e8eefc)}.product-picker-info .version{font-size:.75rem;color:var(--muted, #8ea1c7)}.product-picker-info .category{font-size:.75rem;color:var(--secondary, #17A2B8);background:#17a2b81a;padding:.125rem .5rem;border-radius:4px;display:inline-block;width:fit-content;margin-top:.25rem}.product-picker-status{flex-shrink:0}.empty-products-state{text-align:center;padding:2rem 1rem;color:var(--muted, #8ea1c7)}.empty-products-state p{margin:.5rem 0}.assessment-queue{background:var(--bg, #0b1220);min-height:100vh}.assessment-queue .summary-card.active{border-color:var(--secondary, #17A2B8);box-shadow:0 0 0 2px #17a2b833}.filter-label{font-size:.75rem;color:var(--muted, #8ea1c7);margin-right:.5rem}.filter-group select{padding:.5rem 2rem .5rem .75rem;font-size:.875rem;border:1px solid var(--line, #1c2a54);border-radius:6px;background:var(--pane, #0f1730);color:var(--text, #e8eefc);cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%238ea1c7'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem}.filter-group select:focus{outline:none;border-color:var(--secondary, #17A2B8);box-shadow:0 0 0 2px #17a2b833}.queue-table-container{background:var(--pane, #0f1730);border:1px solid var(--line, #1c2a54);border-radius:12px;overflow:hidden}.queue-table{width:100%;border-collapse:collapse}.queue-table th,.queue-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--line, #1c2a54)}.queue-table th{font-size:.75rem;font-weight:600;color:var(--muted, #8ea1c7);text-transform:uppercase;letter-spacing:.5px;background:#0003}.queue-table td{font-size:.875rem;color:var(--text, #e8eefc)}.queue-table tbody tr{transition:background .15s ease}.queue-table tbody tr:hover{background:#17a2b80d}.queue-table tbody tr:last-child td{border-bottom:none}.status-badge.status-submitted{background:#f59e0b26;color:var(--warning, #f59e0b);border:1px solid rgba(245,158,11,.3)}.status-badge.status-review{background:#3b82f626;color:var(--info, #3b82f6);border:1px solid rgba(59,130,246,.3)}.link-button{background:none;border:none;color:var(--secondary, #17A2B8);cursor:pointer;font-size:inherit;text-decoration:none;padding:0}.link-button:hover{text-decoration:underline;color:var(--primary, #3b82f6)}.score-value{font-weight:600;color:var(--secondary, #17A2B8)}.score-pending{color:var(--muted, #8ea1c7);font-style:italic}@media (max-width: 1024px){.queue-table-container{overflow-x:auto}.queue-table{min-width:700px}}@media (max-width: 768px){.assessment-queue .filters-bar{flex-direction:column;gap:.75rem}.assessment-queue .filter-group{display:flex;align-items:center;gap:.5rem}.assessment-queue .filter-group select{flex:1}}.portal-page{min-height:100vh;background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#f0fdf4);padding:2rem;display:flex;justify-content:center}.portal-container{width:100%;max-width:700px;background:#fff;border-radius:16px;box-shadow:0 4px 24px #00000014;padding:2.5rem}.portal-container.wide{max-width:1000px}.portal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.portal-logo{display:flex;align-items:center;gap:.5rem}.logo-icon{font-size:1.75rem}.logo-text{font-size:1.25rem;font-weight:600;color:#1a1a2e}.portal-badge{font-size:.75rem;font-weight:600;color:#3b82f6;background:#dbeafe;padding:.25rem .75rem;border-radius:20px}.portal-context{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.vendor-name{font-size:.875rem;font-weight:600;color:#1a1a2e}.product-name{font-size:.75rem;color:#6b7280}.portal-loading,.portal-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.portal-loading .spinner{width:48px;height:48px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.portal-loading p{color:#6b7280}.portal-error .error-icon{font-size:3rem;margin-bottom:1rem}.portal-error h1{font-size:1.5rem;color:#1a1a2e;margin:0 0 .5rem}.portal-error p{color:#6b7280;max-width:400px}.error-help{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.error-help p{font-size:.875rem}.portal-error-banner{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fee2e2;color:#b91c1c;border-radius:8px;margin-bottom:1.5rem;font-size:.875rem}.portal-error-banner button{background:none;border:none;color:#b91c1c;cursor:pointer;padding:.25rem}.portal-welcome{text-align:center;margin-bottom:2rem}.portal-welcome h1{font-size:1.75rem;font-weight:600;color:#1a1a2e;margin:0 0 .75rem}.portal-welcome p{color:#6b7280;font-size:1rem;line-height:1.6}.deadline-alert{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:1.5rem}.deadline-alert.urgent{background:#fef3c7;border-color:#fcd34d}.deadline-alert.overdue{background:#fee2e2;border-color:#fca5a5}.deadline-icon{font-size:1.5rem}.deadline-info{display:flex;flex-direction:column;gap:.125rem}.deadline-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.deadline-date{font-size:.9375rem;font-weight:500;color:#1a1a2e}.progress-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#d1fae5;border-radius:8px;margin-bottom:1.5rem;font-size:.875rem;color:#047857}.progress-icon{font-size:1.25rem}.progress-banner .btn-link{margin-left:auto;color:#047857;font-weight:500;background:none;border:none;cursor:pointer;text-decoration:underline}.portal-instructions{margin-bottom:2rem}.portal-instructions h2{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.instruction-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.instruction-card{padding:1.25rem;background:#f9fafb;border-radius:8px;text-align:center}.instruction-card .card-icon{font-size:2rem;margin-bottom:.75rem}.instruction-card h3{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.instruction-card p{font-size:.8125rem;color:#6b7280;margin:0 0 .75rem;line-height:1.5}.instruction-card .requirement{display:inline-block;font-size:.6875rem;font-weight:600;color:#b91c1c;background:#fee2e2;padding:.125rem .5rem;border-radius:4px}.instruction-card .requirement.optional{color:#6b7280;background:#e5e7eb}.assessment-info{margin-bottom:2rem}.assessment-info h2{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.assessment-info>p{color:#6b7280;margin:0 0 1rem}.assessment-stations{display:flex;flex-direction:column;gap:.75rem}.station-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px}.station-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#3b82f6;color:#fff;font-size:.875rem;font-weight:600;border-radius:50%;flex-shrink:0}.station-content h4{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin:0 0 .25rem}.station-content p{font-size:.8125rem;color:#6b7280;margin:0}.privacy-notice{padding:1rem;background:#f9fafb;border-radius:8px;margin-bottom:2rem}.privacy-notice h3{font-size:.875rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.privacy-notice p{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5}.portal-actions{text-align:center}.btn-lg{padding:.875rem 2rem;font-size:1rem}.portal-footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb;text-align:center}.portal-footer p{font-size:.8125rem;color:#9ca3af;margin:0}.footer-meta{margin-top:.5rem;font-family:monospace;font-size:.75rem}.portal-steps{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:2rem}.portal-steps .step{display:flex;flex-direction:column;align-items:center;gap:.25rem}.portal-steps .step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#e5e7eb;color:#6b7280;font-size:.75rem;font-weight:600;border-radius:50%}.portal-steps .step.current .step-number{background:#3b82f6;color:#fff}.portal-steps .step.completed .step-number{background:#10b981;color:#fff}.portal-steps .step-label{font-size:.6875rem;color:#6b7280}.portal-steps .step.current .step-label{color:#3b82f6;font-weight:500}.portal-steps .step-connector{width:40px;height:2px;background:#e5e7eb}.portal-content{display:grid;grid-template-columns:1fr 320px;gap:2rem}.upload-section h2{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.upload-section>p{color:#6b7280;margin:0 0 1.5rem}.portal-upload-zone{border:2px dashed #e5e7eb;border-radius:12px;padding:3rem 2rem;text-align:center;transition:all .2s ease;position:relative;background:#fafafa}.portal-upload-zone:hover{border-color:#93c5fd;background:#f0f9ff}.portal-upload-zone.drag-active{border-color:#3b82f6;background:#dbeafe}.portal-upload-zone.disabled{opacity:.5;pointer-events:none}.portal-upload-zone input[type=file]{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer}.portal-upload-zone .upload-label{display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer}.portal-upload-zone .upload-icon{font-size:3rem}.portal-upload-zone .upload-text{font-size:1rem;color:#374151}.portal-upload-zone .upload-subtext{font-size:.875rem;color:#6b7280}.portal-upload-zone .upload-subtext strong{color:#3b82f6}.portal-upload-zone .upload-formats{font-size:.75rem;color:#9ca3af;margin-top:.5rem}.portal-file-list{margin-top:1.5rem}.portal-file-list h3{font-size:.875rem;font-weight:600;color:#1a1a2e;margin:0 0 .75rem}.portal-file-list ul{list-style:none;padding:0;margin:0}.portal-file-list .file-row{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:8px;margin-bottom:.5rem}.portal-file-list .file-row.uploading{background:#f0f9ff}.portal-file-list .file-row.error{background:#fef2f2}.portal-file-list .file-icon{font-size:1.25rem}.portal-file-list .file-details{flex:1;min-width:0}.portal-file-list .file-name{display:block;font-size:.875rem;font-weight:500;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-file-list .file-meta{font-size:.75rem;color:#6b7280}.portal-file-list .upload-progress{height:4px;background:#e5e7eb;border-radius:2px;margin-top:.5rem;overflow:hidden}.portal-file-list .progress-bar{height:100%;background:#3b82f6;transition:width .3s ease}.portal-file-list .remove-btn{opacity:.5}.portal-file-list .file-row:hover .remove-btn{opacity:1}.crosswalk-section{margin-bottom:1.5rem}.crosswalk-section h3{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.optional-badge{font-size:.6875rem;font-weight:500;color:#6b7280;background:#e5e7eb;padding:.125rem .5rem;border-radius:4px}.section-description{font-size:.8125rem;color:#6b7280;margin:0 0 1rem;line-height:1.5}.crosswalk-info{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#d1fae5;border-radius:8px}.crosswalk-details{display:flex;align-items:center;gap:.75rem}.crosswalk-details .crosswalk-icon{font-size:1.25rem}.crosswalk-filename{display:block;font-size:.875rem;font-weight:500;color:#047857}.crosswalk-stats{font-size:.75rem;color:#059669}.crosswalk-upload{position:relative}.crosswalk-upload input[type=file]{position:absolute;width:100%;height:100%;top:0;left:0;opacity:0;cursor:pointer}.crosswalk-label{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#f9fafb;border:1px dashed #e5e7eb;border-radius:8px;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s ease}.crosswalk-label:hover{border-color:#3b82f6;background:#f0f9ff}.crosswalk-example{margin-top:1rem;padding:.75rem;background:#f9fafb;border-radius:8px}.crosswalk-example h4{font-size:.75rem;font-weight:600;color:#6b7280;margin:0 0 .5rem}.crosswalk-example pre{font-size:.6875rem;color:#374151;margin:0;overflow-x:auto}.notes-section{margin-bottom:1.5rem}.notes-section h3{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.notes-section textarea{width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-family:inherit;resize:vertical}.notes-section textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.portal-footer-actions{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.submit-section{display:flex;align-items:center;gap:1rem}.file-count{font-size:.875rem;color:#10b981;font-weight:500}.portal-success{text-align:center;padding:2rem 0}.success-icon{font-size:4rem;margin-bottom:1rem}.portal-success h1{font-size:1.75rem;font-weight:600;color:#1a1a2e;margin:0 0 .75rem}.portal-success p{color:#6b7280;font-size:1rem;max-width:450px;margin:0 auto;line-height:1.6}.next-steps{margin:2rem 0}.next-steps h2{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.steps-list{display:flex;flex-direction:column;gap:.75rem}.next-step{display:flex;align-items:flex-start;gap:1rem;padding:1rem;background:#f9fafb;border-radius:8px}.next-step .step-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#3b82f6;color:#fff;font-size:.75rem;font-weight:600;border-radius:50%;flex-shrink:0}.next-step .step-content h3{font-size:.9375rem;font-weight:600;color:#1a1a2e;margin:0 0 .25rem}.next-step .step-content p{font-size:.8125rem;color:#6b7280;margin:0}.timeline-info{margin:2rem 0}.timeline-info h2{font-size:1.125rem;font-weight:600;color:#1a1a2e;margin:0 0 1rem}.timeline-card{display:flex;flex-direction:column;gap:.5rem;padding:1rem;background:#f0f9ff;border-radius:8px}.timeline-item{display:flex;justify-content:space-between;font-size:.875rem}.timeline-label{color:#6b7280}.timeline-value{font-weight:500;color:#1a1a2e}.contact-info{margin:2rem 0;padding:1rem;background:#f9fafb;border-radius:8px}.contact-info h2{font-size:1rem;font-weight:600;color:#1a1a2e;margin:0 0 .5rem}.contact-info p{font-size:.875rem;color:#6b7280;margin:0}.portal-complete-footer{text-align:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.portal-complete-footer p{font-size:.875rem;color:#9ca3af}.terms-acceptance{margin-top:1.5rem;padding:1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px}.terms-checkbox{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}.terms-checkbox input[type=checkbox]{width:18px;height:18px;margin-top:2px;accent-color:#3b82f6;cursor:pointer;flex-shrink:0}.terms-checkbox .terms-text{font-size:.875rem;color:#374151;line-height:1.5}.terms-checkbox .terms-text a{color:#3b82f6;text-decoration:none}.terms-checkbox .terms-text a:hover{text-decoration:underline}@media (max-width: 768px){.portal-page{padding:1rem}.portal-container{padding:1.5rem}.portal-header{flex-direction:column;gap:1rem;text-align:center}.portal-context{align-items:center}.instruction-cards,.portal-content{grid-template-columns:1fr}.portal-footer-actions{flex-direction:column;gap:1rem}.portal-footer-actions .btn-secondary{width:100%;order:2}.submit-section{width:100%;flex-direction:column}.submit-section .btn{width:100%}.terms-acceptance{margin-top:1rem}}:root{--bg: #0b1220;--pane: #0f1730;--muted: #8ea1c7;--line: #1c2a54;--text: #e8eefc;--primary: #1B4F72;--secondary: #17A2B8;--accent: #F39C12;--findable: #F39C12;--accessible: #E74C3C;--interoperable: #9B59B6;--reusable: #27AE60;--ai-primary: #4299e1;--ai-success: #48bb78;--pistoia: #6366f1;--error: #E74C3C;--text-primary: var(--text);--text-secondary: #b8c5dc;--text-muted: var(--muted);--card-bg: var(--pane);--bg-secondary: #141d3a;--bg-tertiary: #1a2548;--border-color: var(--line);--input-bg: var(--pane);--accent-color: var(--secondary);--card-shadow: 0 2px 8px rgba(0, 0, 0, .3);--priority-immediate-bg: rgba(231, 76, 60, .15);--priority-high-bg: rgba(237, 137, 54, .15);--priority-medium-bg: rgba(236, 201, 75, .15);--priority-low-bg: rgba(72, 187, 120, .15);--success-bg: rgba(72, 187, 120, .15);--success-text: #68d391;--success-border: #48bb78;--warning-bg: rgba(237, 137, 54, .15);--warning-text: #fbd38d;--warning-border: #ed8936}body,#root{background:var(--bg);color:var(--text);font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;padding:0}*{box-sizing:border-box}.panel,.container{background:var(--pane);border:1px solid var(--line);border-radius:8px;padding:1.5rem}input[type=text],input[type=search],textarea,select{background:var(--pane);border:1px solid var(--line);color:var(--text);border-radius:4px;padding:.5rem;font-size:.9rem}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--secondary);background:#141d3a}input::placeholder,textarea::placeholder{color:var(--muted);opacity:.7}button{padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease}.dark-theme button,[data-theme=dark] button{background:var(--primary);border:1px solid var(--secondary);color:#fff}button:hover:not(:disabled){background:var(--secondary)}button:disabled{opacity:.5;cursor:not-allowed}button.secondary{background:#ffffff1a;border:1px solid var(--line)}button.secondary:hover:not(:disabled){background:#ffffff26;border-color:var(--secondary)}button.danger{background:var(--accessible);border-color:var(--accessible)}button.danger:hover:not(:disabled){background:#c0392b}table{width:100%;border-collapse:separate;border-spacing:0;background:var(--pane);border-radius:8px;overflow:hidden}th,td{padding:.75rem;text-align:left;border-bottom:1px solid var(--line);color:var(--text);font-size:.9rem}th{background:#141d3a;color:var(--secondary);font-weight:600;text-transform:uppercase;font-size:.85rem}tr:hover{background:#141d3a}tr:last-child td{border-bottom:none}.badge{display:inline-block;padding:.25rem .5rem;border-radius:3px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-global{background:#17a2b833;color:var(--secondary);border:1px solid var(--secondary)}.badge-org{background:#f39c1233;color:var(--accent);border:1px solid var(--accent)}.badge-user{background:#27ae6033;color:var(--reusable);border:1px solid var(--reusable)}h1,h2,h3,h4,h5,h6{color:var(--text);margin-top:0}h1{color:var(--secondary);border-bottom:2px solid var(--primary);padding-bottom:.5rem}a{color:var(--secondary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--accent)}.text-muted{color:var(--muted);font-size:.875rem}.status-loading{color:var(--ai-primary)}.status-success{color:var(--ai-success)}.status-error{color:var(--error)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--muted)}.empty-state p{font-size:1.1rem;margin:0}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid var(--secondary);border-radius:50%;animation:spin 1s linear infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--line);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}.page-container{min-height:100vh;padding:2rem;background:var(--bg)}.card{background:var(--pane);border:1px solid var(--line);border-radius:8px;padding:1.5rem;margin-bottom:1rem}.card:hover{border-color:var(--secondary)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text);font-weight:500;font-size:.9rem}.search-bar{background:var(--pane);border:1px solid var(--line);border-radius:6px;padding:.75rem 1rem;display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.search-bar input{flex:1;background:transparent;border:none;color:var(--text);font-size:.9rem;outline:none}.search-bar input::placeholder{color:var(--muted)}.grid{display:grid;gap:1rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.flex{display:flex}.flex-between{display:flex;justify-content:space-between;align-items:center}.flex-gap{gap:.5rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.ontology-viewer{display:flex;flex-direction:column;height:100vh;padding:1rem;background:#f9fafb}.ontology-viewer.loading,.ontology-viewer.error,.ontology-viewer.empty{justify-content:center;align-items:center}.spinner{font-size:1.125rem;color:#6b7280}.ontology-header{margin-bottom:1.5rem}.ontology-header h1{font-size:1.875rem;font-weight:700;color:#111827;margin:0 0 .5rem}.ontology-header .job-id{font-size:.875rem;color:#6b7280;font-family:monospace}.ontology-header .schema-version{display:inline-block;margin-left:1rem;padding:.25rem .5rem;background:#dbeafe;color:#1e40af;border-radius:.25rem;font-size:.75rem;font-weight:600}.ontology-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.ontology-filters{display:flex;gap:1rem;align-items:center}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:500;color:#374151}.filter-group select{padding:.375rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;background:#fff;cursor:pointer}.filter-group select:focus{outline:none;border-color:#3b82f6;ring:2px;ring-color:#3b82f680}.reset-filters{padding:.375rem .75rem;background:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.reset-filters:hover:not(:disabled){background:#e5e7eb}.reset-filters:disabled{opacity:.5;cursor:not-allowed}.ontology-legend{position:relative}.legend-toggle{padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.legend-toggle:hover{background:#f9fafb}.legend-content{position:absolute;right:0;top:100%;margin-top:.5rem;padding:1rem;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a;z-index:10;min-width:250px}.legend-section{margin-bottom:1rem}.legend-section:last-child{margin-bottom:0}.legend-section h4{font-size:.875rem;font-weight:600;color:#111827;margin:0 0 .5rem}.legend-section ul{list-style:none;padding:0;margin:0}.legend-section li{display:flex;align-items:center;gap:.5rem;margin-bottom:.375rem;font-size:.875rem;color:#374151}.legend-box{display:inline-block;width:16px;height:16px;border-radius:.125rem}.legend-line{vertical-align:middle}.ontology-content{flex:1;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;overflow:hidden;position:relative}.empty-state{display:flex;justify-content:center;align-items:center;height:100%;color:#6b7280;font-size:1.125rem}.sankey-container{width:100%;height:100%;overflow:auto}.sankey-svg{display:block}.sankey-svg text{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;letter-spacing:.1px}.node{transition:opacity .2s}.node:hover{opacity:.8}.node-focused rect{stroke:#ef4444;stroke-width:2;filter:drop-shadow(0 0 6px rgba(239,68,68,.6))}.graph-explain-panel{position:fixed;bottom:0;left:0;right:0;z-index:50;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.panel-overlay{position:fixed;inset:0;background:#0000004d;z-index:40}.panel-content{position:relative;z-index:50;background:#fff;max-height:70vh;overflow-y:auto;border-top-left-radius:.75rem;border-top-right-radius:.75rem;box-shadow:0 -4px 6px -1px #0000001a}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.panel-header h2{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.close-button{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:transparent;border:none;font-size:2rem;line-height:1;color:#6b7280;cursor:pointer;transition:color .2s}.close-button:hover{color:#111827}.panel-body section{margin-bottom:2rem}.panel-body section:last-child{margin-bottom:0}.panel-body h3{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 1rem}.panel-body dl{display:grid;grid-template-columns:auto 1fr;gap:.75rem 1rem;margin:0}.panel-body dt{font-weight:600;color:#374151}.panel-body dd{margin:0;color:#6b7280}.panel-body code{font-family:monospace;font-size:.875rem;background:#f3f4f6;padding:.125rem .375rem;border-radius:.25rem}.uri-link{color:#3b82f6;text-decoration:none;word-break:break-all}.uri-link:hover{text-decoration:underline}.badge{display:inline-block;padding:.25rem .625rem;font-size:.75rem;font-weight:600;border-radius:.375rem;text-transform:capitalize}.badge-column{background:#dbeafe;color:#1e40af}.badge-term{background:#d1fae5;color:#065f46}.badge-namespace{background:#fef3c7;color:#92400e}.badge-match-exact{background:#d1fae5;color:#065f46}.badge-match-fuzzy{background:#fef3c7;color:#92400e}.badge-match-none{background:#fee2e2;color:#991b1b}.badge-provider-local{background:#d1fae5;color:#065f46}.badge-provider-ols{background:#dbeafe;color:#1e40af}.badge-provider-bioportal{background:#ede9fe;color:#5b21b6}.badge-provider-unknown{background:#f3f4f6;color:#374151}.checks-list{display:flex;flex-direction:column;gap:.75rem}.check{padding:.75rem;border-left:3px solid;background:#f9fafb;border-radius:.25rem}.check-pass{border-color:#10b981}.check-fail{border-color:#ef4444}.check-na{border-color:#6b7280}.check-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.result-badge{padding:.125rem .5rem;font-size:.75rem;font-weight:700;border-radius:.25rem;text-transform:uppercase}.result-pass{background:#d1fae5;color:#065f46}.result-fail{background:#fee2e2;color:#991b1b}.result-na{background:#f3f4f6;color:#374151}.check-category{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase}.check-detail{font-size:.875rem;color:#374151}.check-shape{margin-top:.5rem;font-size:.75rem;color:#6b7280}.metadata details{margin-bottom:1rem}.metadata summary{cursor:pointer;padding:.5rem;background:#f3f4f6;border-radius:.25rem;font-weight:600;color:#374151;transition:background .2s}.metadata summary:hover{background:#e5e7eb}.metadata details[open] summary{margin-bottom:1rem}.hash{font-size:.75rem;word-break:break-all}.ontology-stats{display:flex;gap:2rem;margin-top:1rem;padding:1rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a}.stat{display:flex;flex-direction:column;gap:.25rem}.stat .label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.stat .value{font-size:1.5rem;font-weight:700;color:#111827}.ontology-profile-info{margin-top:1.5rem;background:#fff;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;border-left:4px solid #3b82f6}.profile-info-summary{cursor:pointer;padding:1rem 1.5rem;display:flex;justify-content:space-between;align-items:center;-webkit-user-select:none;user-select:none;transition:background .2s;list-style:none}.profile-info-summary::-webkit-details-marker{display:none}.profile-info-summary:hover{background:#f9fafb}.ontology-profile-info[open] .profile-info-summary{border-bottom:1px solid #e5e7eb;background:#f9fafb}.profile-info-summary h3{font-size:1.125rem;font-weight:700;color:#111827;margin:0}.profile-info-toggle{font-size:.875rem;color:#6b7280;font-weight:500}.profile-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem;padding:1.5rem}.profile-item{display:flex;flex-direction:column;gap:.375rem}.profile-item.full-width{grid-column:1 / -1}.profile-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.profile-value{font-size:.875rem;color:#111827}.profile-value strong{font-weight:700;color:#3b82f6}.profile-value.font-mono{font-family:monospace;font-size:.8125rem;background:#f3f4f6;padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.namespaces-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.namespace-tag{font-family:monospace;font-size:.75rem;padding:.25rem .5rem;background:#eff6ff;color:#1e40af;border-radius:.25rem;border:1px solid #bfdbfe}.profile-note{margin-top:.75rem;padding:.75rem;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:.25rem}.profile-note small{font-size:.8125rem;color:#92400e;line-height:1.5}.allowed-namespaces-details{margin-top:1rem;border:1px solid #d1d5db;border-radius:.375rem;background:#f9fafb}.allowed-namespaces-summary{cursor:pointer;padding:.75rem 1rem;font-size:.875rem;font-weight:600;color:#374151;-webkit-user-select:none;user-select:none;transition:background .2s}.allowed-namespaces-summary:hover{background:#f3f4f6}.allowed-namespaces-details[open] .allowed-namespaces-summary{border-bottom:1px solid #d1d5db;background:#f3f4f6}.allowed-namespaces-content{padding:1rem;background:#fff}.allowed-namespaces-intro{font-size:.875rem;color:#374151;margin:0 0 .75rem;line-height:1.5}.allowed-namespaces-note{margin-top:1rem;padding:.75rem;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:.25rem;font-size:.8125rem;color:#92400e;line-height:1.5}.ontology-graph-viewer{display:flex;flex-direction:column;min-height:100vh;background:var(--bg, #0b1220);color:var(--text, #e8eefc);font-family:ui-sans-serif,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.ontology-graph-viewer.loading,.ontology-graph-viewer.error{justify-content:center;align-items:center;text-align:center;padding:2rem}.loading-spinner{width:50px;height:50px;border:4px solid var(--line, #1c2a54);border-top-color:var(--secondary, #17A2B8);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.ontology-graph-viewer .spinner{font-size:1.125rem;color:var(--text, #e8eefc)}.ontology-graph-viewer.error h2{color:var(--error, #E74C3C);margin-bottom:.5rem;font-size:1.5rem}.ontology-graph-viewer.error p{color:var(--text, #e8eefc);margin-bottom:.75rem}.ontology-graph-viewer.error p.hint{color:var(--muted, #8ea1c7);font-size:.9rem}.ontology-graph-viewer.error code{background:var(--pane, #0f1730);padding:.125rem .375rem;border-radius:3px;color:var(--secondary, #17A2B8);font-family:Courier New,monospace}.ontology-graph-viewer.empty{display:flex;justify-content:center;align-items:center;min-height:100vh}.ontology-graph-viewer.empty p{color:var(--muted, #8ea1c7);font-size:1.125rem}.ontology-header{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;padding:1.5rem 2rem;background:var(--pane, #0f1730);border-bottom:2px solid var(--line, #1c2a54)}.ontology-header h1{margin:0;font-size:1.75rem;font-weight:700;color:var(--secondary, #17A2B8);letter-spacing:-.025em}.ontology-header .job-id{margin:0;font-size:.875rem;color:var(--muted, #8ea1c7);font-family:Courier New,monospace}.ontology-header .version-badge{display:inline-block;padding:.25rem .5rem;background:#17a2b833;color:var(--secondary, #17A2B8);border:1px solid var(--secondary, #17A2B8);border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.header-actions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-left:auto}.header-actions .view-toggle{padding:.5rem 1rem;background:#ffffff0d;border:1px solid var(--line, #1c2a54);color:var(--text, #e8eefc);border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease}.header-actions .view-toggle:hover{background:#ffffff1a;border-color:var(--secondary, #17A2B8)}.header-actions .view-toggle.active{background:var(--primary, #1B4F72);border-color:var(--secondary, #17A2B8);color:#fff;font-weight:600}.export-buttons{display:flex;gap:.5rem}.btn-export{padding:.5rem .75rem;background:#17a2b826;border:1px solid var(--secondary, #17A2B8);color:var(--secondary, #17A2B8);border-radius:4px;cursor:pointer;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;transition:all .2s ease}.btn-export:hover{background:#17a2b840;border-color:var(--secondary, #17A2B8);transform:translateY(-1px);box-shadow:0 2px 8px #17a2b84d}.btn-sparql{background:#9b59b633!important;border:1px solid var(--interoperable, #9B59B6)!important;color:var(--interoperable, #9B59B6)!important}.btn-sparql:hover{background:#9b59b64d!important}.ontology-content{flex:1;padding:1.5rem 2rem;background:var(--bg, #0b1220);min-height:500px}.rule-detail-panel{position:fixed;right:0;top:0;width:480px;height:100vh;background:var(--pane, #0f1730);border-left:2px solid var(--line, #1c2a54);box-shadow:-4px 0 24px #0000004d;overflow-y:auto;z-index:1000;animation:slideInRight .3s ease}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:var(--primary, #1B4F72);border-bottom:2px solid var(--secondary, #17A2B8);position:sticky;top:0;z-index:10}.panel-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#fff;line-height:1.4}.panel-header .btn-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;padding:0;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:4px;font-size:1.5rem;line-height:1;cursor:pointer;transition:all .2s ease}.panel-header .btn-close:hover{background:#fff3;transform:rotate(90deg)}.panel-body{padding:1.5rem}.rule-question{font-size:1rem;line-height:1.6;color:var(--text, #e8eefc);margin-bottom:1.5rem;padding:1rem;background:#17a2b81a;border-left:3px solid var(--secondary, #17A2B8);border-radius:4px}.snippet-block{margin-top:1.5rem}.snippet-block h4{margin:0 0 .75rem;font-size:.875rem;font-weight:600;color:var(--secondary, #17A2B8);text-transform:uppercase;letter-spacing:.05em}.snippet-block pre{background:#0b1220;border:1px solid var(--line, #1c2a54);border-radius:6px;padding:1rem;overflow-x:auto;margin:0;color:#fff}.snippet-block pre code{font-family:Courier New,Consolas,Monaco,monospace;font-size:.8125rem;line-height:1.6;color:#fff!important}.rule-detail-panel .snippet-block pre,.rule-detail-panel .snippet-block pre code,.rule-detail-panel .snippet-block code{color:#fff!important;background:transparent!important}.ontology-stats{display:flex;gap:2rem;padding:1rem 2rem;background:var(--pane, #0f1730);border-top:2px solid var(--line, #1c2a54);position:sticky;bottom:0;z-index:10}.ontology-stats .stat{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.ontology-stats .label{color:var(--muted, #8ea1c7);font-weight:500}.ontology-stats .value{color:var(--secondary, #17A2B8);font-weight:700;font-size:1rem}@media (max-width: 1400px){.rule-detail-panel{width:400px}}@media (max-width: 900px){.ontology-header{flex-direction:column;align-items:flex-start}.header-actions{width:100%;margin-left:0}.rule-detail-panel{width:100%}.ontology-stats{flex-wrap:wrap;gap:1rem}}button:focus-visible{outline:2px solid var(--secondary, #17A2B8);outline-offset:2px}.view-toggle:focus-visible,.btn-export:focus-visible,.btn-close:focus-visible{outline:3px solid var(--secondary, #17A2B8);outline-offset:3px}.rule-browser-container{max-width:1400px;margin:0 auto;padding:2rem;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}.rule-browser-header{margin-bottom:2rem;border-bottom:2px solid #e0e0e0;padding-bottom:1.5rem}.rule-browser-header h1{margin:0 0 .5rem;font-size:2rem;color:#1a1a1a;font-weight:600}.rule-browser-header .subtitle{margin:0 0 1.5rem;font-size:1rem;color:#666}.stats-bar{display:flex;gap:2rem;flex-wrap:wrap}.stat-item{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.5rem;background:#f5f5f5;border-radius:8px;min-width:120px}.stat-label{font-size:.875rem;color:#666;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.5rem;font-weight:700;color:#1a1a1a}.rule-browser-filters{background:#f9f9f9;border:1px solid #e0e0e0;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.filter-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:1rem;margin-bottom:1rem}@media (max-width: 1024px){.filter-row{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.filter-row{grid-template-columns:1fr}}.filter-group{display:flex;flex-direction:column}.filter-group label{font-size:.875rem;font-weight:600;color:#333;margin-bottom:.5rem}.filter-input,.filter-select{padding:.625rem;border:1px solid #ccc;border-radius:4px;font-size:.875rem;background:#fff;transition:border-color .2s}.filter-input:focus,.filter-select:focus{outline:none;border-color:#4a90e2;box-shadow:0 0 0 2px #4a90e21a}.filter-results{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e0e0e0}.filter-results p{margin:0;color:#666;font-size:.875rem}.clear-filters-btn{padding:.5rem 1rem;background:#fff;border:1px solid #ccc;border-radius:4px;font-size:.875rem;cursor:pointer;transition:all .2s}.clear-filters-btn:hover{background:#f5f5f5;border-color:#999}.rules-list{display:flex;flex-direction:column;gap:1rem}.no-results{text-align:center;padding:3rem;color:#666;background:#f9f9f9;border-radius:8px}.rule-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;transition:all .2s;overflow:hidden}.rule-card:hover{border-color:#4a90e2;box-shadow:0 2px 8px #0000001a}.rule-card.expanded{border-color:#4a90e2;box-shadow:0 4px 12px #00000026}.rule-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;transition:background .2s}.rule-header:hover{background:#f9f9f9}.rule-header-left{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.rule-id{font-family:Courier New,monospace;font-size:.875rem;font-weight:700;padding:.375rem .75rem;border-radius:4px;white-space:nowrap}.rule-name{margin:0;font-size:1.125rem;font-weight:600;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rule-header-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.principle-badge,.severity-badge,.effort-badge{padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.expand-icon{font-size:.75rem;color:#666;margin-left:.5rem}.principle-findable{background:#e3f2fd;color:#1976d2;border:1px solid #90caf9}.principle-accessible{background:#f3e5f5;color:#7b1fa2;border:1px solid #ce93d8}.principle-interoperable{background:#e8f5e9;color:#388e3c;border:1px solid #81c784}.principle-reusable{background:#fff3e0;color:#f57c00;border:1px solid #ffb74d}.severity-critical{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.severity-warning{background:#fff8e1;color:#f57f17;border:1px solid #fff176}.severity-info{background:#e0f2f1;color:#00695c;border:1px solid #80cbc4}.effort-badge{background:#f5f5f5;color:#666;border:1px solid #e0e0e0}.rule-summary{padding:0 1.5rem 1.25rem}.rule-summary p{margin:0;color:#555;font-size:.9375rem;line-height:1.6}.rule-details{border-top:1px solid #e0e0e0;padding:1.5rem;background:#fafafa}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#333;border-left:3px solid #4a90e2;padding-left:.75rem}.detail-section p{margin:0;color:#555;line-height:1.6}.example-pair{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.example-pair:last-child{margin-bottom:0}.example-bad,.example-good{margin-bottom:1rem}.example-bad h5,.example-good h5{margin:0 0 .5rem;font-size:.875rem;font-weight:600}.example-bad h5{color:#c62828}.example-good h5{color:#388e3c}.example-bad pre,.example-good pre{margin:0;padding:1rem;background:#f5f5f5;border-radius:4px;overflow-x:auto}.example-bad pre{border-left:3px solid #ef5350}.example-good pre{border-left:3px solid #66bb6a}.example-bad code,.example-good code{font-family:Courier New,monospace;font-size:.8125rem;line-height:1.5;color:#333}.example-explanation{padding:.75rem;background:#e3f2fd;border-left:3px solid #2196f3;border-radius:4px}.example-explanation p{margin:0;font-size:.875rem;color:#1565c0}.fix-guidance{padding:1rem;background:#fff;border:1px solid #e0e0e0;border-radius:4px;font-family:Courier New,monospace;font-size:.8125rem;color:#333;line-height:1.6}.tag-list{display:flex;flex-wrap:wrap;gap:.5rem}.tag{padding:.25rem .75rem;background:#fff;border:1px solid #e0e0e0;border-radius:12px;font-size:.75rem;color:#666;font-weight:500}.loading-state,.error-state{text-align:center;padding:4rem 2rem}.loading-state .spinner{width:48px;height:48px;border:4px solid #f3f3f3;border-top:4px solid #4a90e2;border-radius:50%;margin:0 auto 1rem;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state p,.error-state p{margin:0;color:#666;font-size:1rem}.error-state h3{margin:0 0 .5rem;color:#c62828;font-size:1.5rem}.error-state button{margin-top:1rem;padding:.75rem 1.5rem;background:#4a90e2;color:#fff;border:none;border-radius:4px;font-size:1rem;cursor:pointer;transition:background .2s}.error-state button:hover{background:#357abd}@media (max-width: 768px){.rule-browser-container{padding:1rem}.rule-header{flex-direction:column;align-items:flex-start;gap:.75rem}.rule-header-right{width:100%;justify-content:flex-start;flex-wrap:wrap}.rule-name{white-space:normal}.stats-bar{gap:.75rem}.stat-item{min-width:100px;padding:.5rem 1rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes popIn{0%{opacity:0;transform:scale(.5)}70%{transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseScale{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes heartbeat{0%,to{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(1)}75%{transform:scale(1.05)}}@keyframes glow{0%,to{box-shadow:0 0 5px #3b82f64d}50%{box-shadow:0 0 20px #3b82f699}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes progressBar{0%{width:0%}to{width:100%}}@keyframes dotPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideInDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}75%{transform:rotate(5deg)}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:.5}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fillProgress{0%{stroke-dashoffset:100}to{stroke-dashoffset:0}}@keyframes scoreReveal{0%{opacity:0;transform:scale(.5) rotate(-10deg)}50%{opacity:1;transform:scale(1.1) rotate(0)}to{transform:scale(1) rotate(0)}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}.animate-fade-out{animation:fadeOut .3s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .4s ease-out forwards}.animate-fade-in-down{animation:fadeInDown .4s ease-out forwards}.animate-fade-in-left{animation:fadeInLeft .4s ease-out forwards}.animate-fade-in-right{animation:fadeInRight .4s ease-out forwards}.animate-scale-in{animation:scaleIn .3s ease-out forwards}.animate-scale-out{animation:scaleOut .3s ease-out forwards}.animate-pop-in{animation:popIn .4s ease-out forwards}.animate-bounce-in{animation:bounceIn .5s ease-out forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-pulse-scale{animation:pulseScale 2s ease-in-out infinite}.animate-heartbeat{animation:heartbeat 1.5s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-spin{animation:spin 1s linear infinite}.animate-spin-slow{animation:spin 2s linear infinite}.animate-shimmer{background:linear-gradient(90deg,#fff0,#ffffff1a,#fff0);background-size:200% 100%;animation:shimmer 1.5s infinite}.animate-slide-in-up{animation:slideInUp .4s ease-out forwards}.animate-slide-in-down{animation:slideInDown .4s ease-out forwards}.animate-slide-in-left{animation:slideInLeft .4s ease-out forwards}.animate-slide-in-right{animation:slideInRight .4s ease-out forwards}.animate-shake{animation:shake .6s ease-in-out}.animate-wiggle{animation:wiggle .5s ease-in-out}.animate-flash{animation:flash 1s ease-in-out}.animate-count-up{animation:countUp .5s ease-out forwards}.animate-score-reveal{animation:scoreReveal .6s ease-out forwards}.transition-all{transition:all .2s ease}.transition-fast{transition:all .15s ease}.transition-normal{transition:all .3s ease}.transition-slow{transition:all .5s ease}.transition-opacity{transition:opacity .2s ease}.transition-transform{transition:transform .2s ease}.transition-colors{transition:background-color .2s ease,border-color .2s ease,color .2s ease}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.hover-lift:active{transform:translateY(0)}.hover-grow{transition:transform .2s ease}.hover-grow:hover{transform:scale(1.02)}.hover-grow:active{transform:scale(.98)}.hover-glow{transition:box-shadow .2s ease}.hover-glow:hover{box-shadow:0 0 15px #3b82f666}.hover-brighten{transition:filter .2s ease}.hover-brighten:hover{filter:brightness(1.1)}.btn-interactive{position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.btn-interactive:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.btn-interactive:active{transform:translateY(0);box-shadow:0 2px 4px #0000001a}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 60%);transform:scale(0);opacity:0}.btn-ripple:active:after{animation:ripple .4s ease-out}.card-interactive{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.card-interactive:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003}.card-interactive:active{transform:translateY(-2px)}.card-interactive:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.input-interactive{transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease}.input-interactive:hover{border-color:#64748b}.input-interactive:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633;outline:none}.stagger-children>*{animation:fadeInUp .4s ease-out forwards;opacity:0}.stagger-children>*:nth-child(1){animation-delay:0ms}.stagger-children>*:nth-child(2){animation-delay:50ms}.stagger-children>*:nth-child(3){animation-delay:.1s}.stagger-children>*:nth-child(4){animation-delay:.15s}.stagger-children>*:nth-child(5){animation-delay:.2s}.stagger-children>*:nth-child(6){animation-delay:.25s}.stagger-children>*:nth-child(7){animation-delay:.3s}.stagger-children>*:nth-child(8){animation-delay:.35s}.stagger-children>*:nth-child(9){animation-delay:.4s}.stagger-children>*:nth-child(10){animation-delay:.45s}.skeleton{background:linear-gradient(90deg,#334155,#475569,#334155);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite;border-radius:4px}.skeleton-text{height:1em;margin-bottom:.5em}.skeleton-text:last-child{width:80%}.skeleton-circle{border-radius:50%}.skeleton-rect{border-radius:8px}.progress-animated .progress-bar{animation:progressBar 1s ease-out forwards}.progress-indeterminate{background:linear-gradient(90deg,transparent 0%,#3b82f6 50%,transparent 100%);background-size:200% 100%;animation:shimmer 1.5s linear infinite}.tooltip-animated{animation:fadeInUp .2s ease-out forwards;transform-origin:bottom center}.tooltip-animated.tooltip-bottom{animation-name:fadeInDown;transform-origin:top center}.modal-overlay:not(.role-modal-overlay):not(.raci-modal-overlay):not(.policy-modal-overlay){animation:fadeIn .2s ease-out forwards}.modal-content{animation:scaleIn .3s ease-out forwards}.modal-closing .modal-overlay{animation:fadeOut .2s ease-out forwards}.modal-closing .modal-content{animation:scaleOut .2s ease-out forwards}.notification-enter{animation:slideInRight .3s ease-out forwards}.notification-exit{animation:fadeOut .2s ease-out forwards}.notification-success{animation:popIn .4s ease-out}.notification-error{animation:shake .5s ease-in-out}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.ml-metric__overlay{position:fixed;inset:0;background-color:#00000080;z-index:999;animation:mlFadeIn .2s ease}@keyframes mlFadeIn{0%{opacity:0}to{opacity:1}}.ml-metric__drawer{position:fixed;top:0;right:0;bottom:0;width:100%;max-width:560px;background-color:#fff;z-index:1000;display:flex;flex-direction:column;animation:mlSlideIn .3s ease;box-shadow:-4px 0 24px #00000026}@keyframes mlSlideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.ml-metric__header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb;background-color:#f0f9ff}.ml-metric__header-content{flex:1;min-width:0}.ml-metric__title{margin:0;font-size:18px;font-weight:600;color:#111827;line-height:1.4}.ml-metric__name{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;font-size:.85rem;font-weight:600;background:#dbeafe;color:#1e40af;border-radius:6px}.ml-metric__icon{font-size:1rem}.ml-metric__close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:none;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .15s ease;flex-shrink:0}.ml-metric__close-btn:hover{background-color:#f3f4f6;color:#111827}.ml-metric__close-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}.ml-metric__content{flex:1;overflow-y:auto;padding:20px 24px}.ml-metric__section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #f3f4f6}.ml-metric__section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.ml-metric__section--notice{background:#fefce8;margin:0 -24px;padding:16px 24px;border-bottom:none}.ml-metric__section-title{margin:0 0 16px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.ml-metric__result{padding:16px;background:#f0f9ff;border-radius:8px}.ml-metric__score-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.ml-metric__score{display:flex;flex-direction:column}.ml-metric__score-value{font-size:2rem;font-weight:700;color:#111827;line-height:1}.ml-metric__score-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.ml-metric__status{padding:6px 14px;font-size:.85rem;font-weight:600;border-radius:6px}.ml-metric__status--excellent{background:#dcfce7;color:#166534}.ml-metric__status--good{background:#dbeafe;color:#1e40af}.ml-metric__status--poor{background:#fff7ed;color:#c2410c}.ml-metric__status--critical{background:#fee2e2;color:#991b1b}.ml-metric__result-summary{margin:0;font-size:.9rem;color:#374151;line-height:1.6}.ml-metric__findings-list{margin:0;padding:0;list-style:none}.ml-metric__finding{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;margin-bottom:8px;border-radius:6px;font-size:.9rem;line-height:1.5}.ml-metric__finding:last-child{margin-bottom:0}.ml-metric__finding--critical{background:#fee2e2;color:#991b1b}.ml-metric__finding--warning{background:#fff7ed;color:#9a3412}.ml-metric__finding--info{background:#f0f9ff;color:#075985}.ml-metric__finding--positive{background:#f0fdf4;color:#166534}.ml-metric__finding-icon{flex-shrink:0;font-size:1rem}.ml-metric__finding-content{flex:1;display:flex;flex-direction:column;gap:2px}.ml-metric__finding-message{font-weight:500}.ml-metric__finding-value{font-size:.8rem;opacity:.8}.ml-metric__finding-columns{font-size:.8rem;opacity:.8;font-family:monospace}.ml-metric__finding-details{font-size:.8rem;opacity:.8;font-style:italic}.ml-metric__definition{padding:16px;background:#eff6ff;border-radius:8px;border-left:4px solid #3b82f6;margin-bottom:16px}.ml-metric__definition-name{margin:0 0 8px;font-size:1rem;font-weight:600;color:#1e40af}.ml-metric__definition-text{margin:0;font-size:.9rem;color:#374151;line-height:1.6;white-space:pre-line}.ml-metric__rationale{margin-bottom:16px}.ml-metric__rationale h4{margin:0 0 8px;font-size:.9rem;font-weight:600;color:#374151}.ml-metric__rationale p{margin:0;font-size:.9rem;color:#4b5563;line-height:1.6;white-space:pre-line}.ml-metric__thresholds h4{margin:0 0 12px;font-size:.9rem;font-weight:600;color:#374151}.ml-metric__thresholds-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.ml-metric__threshold{padding:10px 8px;border-radius:6px;text-align:center}.ml-metric__threshold-label{display:block;font-size:.7rem;font-weight:500;margin-bottom:4px}.ml-metric__threshold-value{display:block;font-size:.85rem;font-weight:600}.ml-metric__threshold--excellent{background:#dcfce7;color:#166534}.ml-metric__threshold--good{background:#dbeafe;color:#1e40af}.ml-metric__threshold--poor{background:#fff7ed;color:#c2410c}.ml-metric__threshold--critical{background:#fee2e2;color:#991b1b}.ml-metric__submetrics{display:flex;flex-direction:column;gap:12px}.ml-metric__submetric{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;border-left-width:4px}.ml-metric__submetric--excellent{border-left-color:#22c55e}.ml-metric__submetric--good{border-left-color:#3b82f6}.ml-metric__submetric--warning{border-left-color:#f97316}.ml-metric__submetric--critical{border-left-color:#ef4444}.ml-metric__submetric--na{border-left-color:#9ca3af;opacity:.7}.ml-metric__submetric-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px}.ml-metric__submetric-name{font-size:.9rem;font-weight:600;color:#374151}.ml-metric__submetric-value{font-size:1rem;font-weight:700;color:#111827}.ml-metric__submetric-unit{font-size:.8rem;font-weight:400;color:#6b7280;margin-left:2px}.ml-metric__submetric-details{margin:0;font-size:.8rem;color:#6b7280;line-height:1.4}.ml-metric__citations{display:flex;flex-direction:column;gap:12px}.ml-metric__citation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px}.ml-metric__citation-header{display:flex;gap:8px;margin-bottom:6px;font-size:.8rem}.ml-metric__citation-framework{font-weight:600;color:#7c3aed}.ml-metric__citation-document{color:#374151}.ml-metric__citation-section{margin:0 0 8px;font-size:.8rem;color:#6b7280}.ml-metric__citation-text{margin:0 0 8px;padding:8px 12px;background:#f5f3ff;border-left:3px solid #7c3aed;font-style:italic;font-size:.85rem;color:#374151;line-height:1.5}.ml-metric__citation-link{font-size:.8rem;color:#7c3aed;text-decoration:none;font-weight:500}.ml-metric__citation-link:hover{text-decoration:underline}.ml-metric__recommendations{display:flex;flex-direction:column;gap:12px}.ml-metric__recommendation{padding:12px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;border-left-width:4px}.ml-metric__priority--high{border-left-color:#ef4444}.ml-metric__priority--medium{border-left-color:#f97316}.ml-metric__priority--low{border-left-color:#3b82f6}.ml-metric__recommendation-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.ml-metric__recommendation-priority{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:4px;background:#f3f4f6;color:#6b7280}.ml-metric__priority--high .ml-metric__recommendation-priority{background:#fee2e2;color:#991b1b}.ml-metric__priority--medium .ml-metric__recommendation-priority{background:#fff7ed;color:#c2410c}.ml-metric__priority--low .ml-metric__recommendation-priority{background:#dbeafe;color:#1e40af}.ml-metric__recommendation-title{font-size:.9rem;font-weight:600;color:#374151}.ml-metric__recommendation-description{margin:0 0 6px;font-size:.85rem;color:#4b5563;line-height:1.5}.ml-metric__recommendation-impact{font-size:.75rem;color:#6b7280}.ml-metric__show-more{display:block;width:100%;padding:10px;margin-top:8px;background:none;border:1px dashed #d1d5db;border-radius:6px;color:#3b82f6;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .15s ease}.ml-metric__show-more:hover{background:#f9fafb;border-color:#3b82f6}.ml-metric__notice{display:flex;align-items:flex-start;gap:8px}.ml-metric__notice-icon{font-size:1.2rem}.ml-metric__notice p{margin:0;font-size:.9rem;color:#854d0e;line-height:1.5}.ml-metric__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#6b7280}.ml-metric__loading-spinner{width:32px;height:32px;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:mlSpin .8s linear infinite;margin-bottom:12px}@keyframes mlSpin{to{transform:rotate(360deg)}}.ml-metric__error{padding:40px 20px;text-align:center;color:#dc2626}.ml-metric__empty{padding:40px 20px;text-align:center;color:#6b7280}.ml-metric__footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f0f9ff}.ml-metric__footer-link{font-size:.875rem;color:#3b82f6;text-decoration:none;font-weight:500}.ml-metric__footer-link:hover{text-decoration:underline}.ml-metric__footer-btn{padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background .15s ease}.ml-metric__footer-btn:hover{background:#2563eb}.ml-metric__footer-btn:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (max-width: 640px){.ml-metric__drawer{max-width:100%}.ml-metric__header,.ml-metric__content{padding:16px}.ml-metric__footer{padding:12px 16px;flex-direction:column;gap:12px}.ml-metric__thresholds-grid{grid-template-columns:repeat(2,1fr)}}
