.risk-register-page{max-width:1400px}.risk-legend{background:var(--sap-base-bg);border:1px solid var(--sap-group-content-border);border-radius:var(--sap-border-radius);padding:1rem 1.25rem;margin-bottom:1.5rem}.risk-legend h3{font-size:.8125rem;font-weight:600;color:var(--sap-title-color);margin:0 0 .75rem}.legend-items{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}.legend-note{font-size:.75rem;color:var(--sap-neutral-text);margin:0}.legend-note strong{color:var(--sap-text-color)}.risk-title-cell{display:flex;flex-direction:column;gap:.25rem}.risk-link{font-weight:500;color:var(--sap-brand-color);text-decoration:none}.risk-link:hover{text-decoration:underline}.inherited-badge{font-size:.6875rem;color:var(--sap-information-color);background:var(--sap-information-bg);padding:.125rem .375rem;border-radius:.25rem;width:fit-content}.risk-rating-cell{display:flex;flex-direction:column;gap:.25rem}.risk-badge{display:inline-block;padding:.125rem .5rem;border-radius:9999px;font-size:.6875rem;font-weight:600;width:fit-content}.risk-matrix{font-size:.6875rem;color:var(--sap-neutral-text);font-family:monospace}.signoff-complete{color:var(--sap-success-color);font-size:.8125rem}.signoff-pending{color:var(--sap-warning-color);font-size:.8125rem}.signoff-na{color:var(--sap-neutral-text);font-size:.8125rem}.review-overdue{color:var(--sap-error-color);font-weight:600}.review-soon{color:var(--sap-warning-color);font-weight:500}.risk-detail-page{max-width:1200px}.risk-detail-breadcrumb{display:flex;align-items:center;gap:.45rem;margin-bottom:.75rem;font-size:.92rem}.risk-detail-breadcrumb a{color:var(--sap-brand-color);font-weight:600;text-decoration:none}.risk-detail-breadcrumb span:last-child{color:var(--sap-neutral-text)}.loading{text-align:center;padding:2rem;color:var(--sap-neutral-text)}.inherited-notice{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:var(--sap-information-bg);border:1px solid var(--sap-information-color);border-radius:var(--sap-border-radius);margin-bottom:1.5rem;font-size:.875rem;color:var(--sap-information-color)}.inherited-icon{font-size:1rem}.risk-content{display:grid;grid-template-columns:1fr 320px;gap:1.5rem}@media (max-width: 1024px){.risk-content{grid-template-columns:1fr}}.risk-main{display:flex;flex-direction:column;gap:1.5rem}.detail-section{background:var(--sap-base-bg);border:1px solid var(--sap-group-content-border);border-radius:var(--sap-border-radius);padding:1.5rem}.detail-section h2{font-size:1rem;font-weight:600;color:var(--sap-title-color);margin:0 0 1rem;padding-bottom:.75rem;border-bottom:1px solid var(--sap-group-content-border)}.detail-section p{margin:0;line-height:1.6;color:var(--sap-text-color)}.risk-source{margin-top:1rem!important;font-size:.875rem;color:var(--sap-neutral-text)}.assessment-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.assessment-grid{grid-template-columns:1fr}}.assessment-card{background:var(--sap-background-color);border-radius:var(--sap-border-radius);padding:1.25rem}.assessment-card h3{font-size:.875rem;font-weight:600;color:var(--sap-title-color);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.help-text{font-weight:400;font-size:.75rem;color:var(--sap-neutral-text)}.btn-edit-inline{margin-left:auto;background:none;border:1px solid var(--sap-brand-color);color:var(--sap-brand-color);padding:.25rem .5rem;border-radius:var(--sap-border-radius);font-size:.6875rem;cursor:pointer}.btn-edit-inline:hover{background:var(--sap-brand-color);color:#fff}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--sap-group-content-border)}.section-header h2{margin:0;padding:0;border:none}.edit-form{display:flex;flex-direction:column;gap:.75rem}.edit-textarea{width:100%;padding:.75rem;border:1px solid var(--sap-field-border-color);border-radius:var(--sap-border-radius);font-family:inherit;font-size:.875rem;line-height:1.5;resize:vertical}.edit-textarea:focus{outline:none;border-color:var(--sap-brand-color);box-shadow:0 0 0 2px #428bca1a}.text-muted{color:var(--sap-neutral-text);font-style:italic}.risk-matrix-display{display:flex;flex-direction:column;align-items:center;gap:1rem}.matrix-values{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:center}.matrix-item{display:flex;flex-direction:column;align-items:center;text-align:center}.matrix-label{font-size:.6875rem;color:var(--sap-neutral-text);text-transform:uppercase}.matrix-value{font-size:1.5rem;font-weight:300;color:var(--sap-title-color)}.matrix-desc{font-size:.6875rem;color:var(--sap-neutral-text)}.matrix-operator{font-size:1.25rem;color:var(--sap-neutral-text)}.residual-edit-form{display:flex;flex-direction:column;gap:.75rem}.edit-row{display:flex;align-items:center;gap:.75rem}.edit-row label{font-size:.8125rem;min-width:80px}.edit-row select{flex:1;padding:.5rem;border:1px solid var(--sap-group-content-border);border-radius:var(--sap-border-radius);font-size:.8125rem}.edit-preview{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:var(--sap-base-bg);border-radius:var(--sap-border-radius);font-size:.8125rem}.edit-actions{display:flex;gap:.5rem;justify-content:flex-end}.risk-badge{display:inline-block;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600}.risk-critical{background:#fef2f2;color:#dc2626}.risk-high{background:#fff7ed;color:#ea580c}.risk-medium{background:#fefce8;color:#ca8a04}.risk-low{background:#f0fdf4;color:#16a34a}.controls-list{display:flex;flex-direction:column;gap:1rem}.control-item{background:var(--sap-background-color);border-radius:var(--sap-border-radius);padding:1rem}.control-header{display:flex;gap:.5rem;margin-bottom:.5rem}.control-type{font-size:.6875rem;font-weight:600;text-transform:uppercase;padding:.125rem .5rem;border-radius:.25rem}.type-preventive{background:#e0f2fe;color:#0277bd}.type-detective{background:#fff3e0;color:#ef6c00}.type-corrective{background:#f3e5f5;color:#7b1fa2}.control-effectiveness{font-size:.6875rem;padding:.125rem .5rem;border-radius:.25rem}.eff-effective{background:var(--sap-success-bg);color:var(--sap-success-color)}.eff-partially-effective{background:var(--sap-warning-bg);color:var(--sap-warning-color)}.eff-ineffective{background:var(--sap-error-bg);color:var(--sap-error-color)}.control-description{margin:0 0 .5rem;font-size:.875rem}.control-meta{display:flex;gap:1.5rem;font-size:.75rem;color:var(--sap-neutral-text)}.btn-add-control{background:var(--sap-base-bg);border:1px dashed var(--sap-group-content-border);color:var(--sap-brand-color);padding:.75rem;border-radius:var(--sap-border-radius);cursor:pointer;font-size:.875rem}.btn-add-control:hover{background:var(--sap-information-bg)}.risk-sidebar{display:flex;flex-direction:column;gap:1rem}.sidebar-card{background:var(--sap-base-bg);border:1px solid var(--sap-group-content-border);border-radius:var(--sap-border-radius);padding:1.25rem}.sidebar-card h3{font-size:.875rem;font-weight:600;color:var(--sap-title-color);margin:0 0 1rem}.info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--sap-group-content-border)}.info-row:last-child{border-bottom:none}.info-label{font-size:.8125rem;color:var(--sap-neutral-text)}.status-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:500;text-transform:capitalize}.status-open{background:var(--sap-warning-bg);color:var(--sap-warning-color)}.status-mitigated{background:var(--sap-success-bg);color:var(--sap-success-color)}.status-pending-review{background:var(--sap-information-bg);color:var(--sap-information-color)}.status-closed{background:var(--sap-background-color);color:var(--sap-neutral-text)}.signoff-card{border-color:var(--sap-warning-color)}.signoff-status{padding:.75rem;border-radius:var(--sap-border-radius);text-align:center;font-weight:500;margin:1rem 0}.signoff-complete{background:var(--sap-success-bg);color:var(--sap-success-color)}.signoff-pending{background:var(--sap-warning-bg);color:var(--sap-warning-color)}.signoff-comments{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--sap-group-content-border)}.signoff-comments p{margin:.5rem 0 0;font-size:.8125rem;font-style:italic}.btn-signoff{width:100%;padding:.75rem;background:var(--sap-brand-color);color:#fff;border:none;border-radius:var(--sap-border-radius);font-size:.875rem;font-weight:500;cursor:pointer}.btn-signoff:hover{background:#001d3d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--sap-base-bg);border-radius:var(--sap-border-radius);width:100%;max-width:500px;box-shadow:var(--sap-shadow-level-2)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--sap-group-content-border)}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--sap-neutral-text);cursor:pointer;padding:0;line-height:1}.modal-body{padding:1.5rem}.signoff-warning{background:var(--sap-information-bg);padding:1rem;border-radius:var(--sap-border-radius);font-size:.875rem;margin-bottom:1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8125rem;font-weight:500;margin-bottom:.5rem}.form-group textarea{width:100%;padding:.625rem .75rem;border:1px solid var(--sap-group-content-border);border-radius:var(--sap-border-radius);font-size:.875rem;font-family:inherit;resize:vertical}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem;border-top:1px solid var(--sap-group-content-border)}.btn-primary{background:var(--sap-brand-color);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:var(--sap-border-radius);font-size:.875rem;font-weight:500;cursor:pointer}.btn-primary:hover:not(:disabled){background:#001d3d}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--sap-base-bg);color:var(--sap-text-color);border:1px solid var(--sap-group-content-border);padding:.625rem 1.25rem;border-radius:var(--sap-border-radius);font-size:.875rem;font-weight:500;cursor:pointer}.btn-secondary:hover{background:var(--sap-background-color)}
