@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--font-logo: "Changeling Neo Light", system-ui, sans-serif;--font-primary: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Monaco", "Courier New", monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{margin:0;padding:0;width:100%;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:transparent transparent}html.is-scrolling,html.is-scrolling body{scrollbar-color:rgba(155,155,155,.5) transparent}html::-webkit-scrollbar{width:6px}html::-webkit-scrollbar-track{background:transparent}html::-webkit-scrollbar-thumb{background-color:transparent;border-radius:3px;transition:background-color .3s ease}html.is-scrolling::-webkit-scrollbar-thumb{background-color:#9b9b9b80}body{font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;margin:0;padding:0;width:100%}:root{--primary-main: var(--primary-main);--text-primary: var(--primary-main);--text-secondary: #666666;--text-on-primary: #ffffff;--bg-default: #ffffff;--bg-paper: #fafafa;--bg-hover: #f5f5f5;--bg-dark: #0a0a0a;--divider: #e5e5e5;--success-main: #404040;--success-light: #f0f0f0;--success-dark: #202020;--warning-main: #606060;--warning-light: #f8f8f8;--warning-dark: #404040;--info-main: #404040;--error-main: #303030;--error-light: #f0f0f0;--error-dark: #202020}[data-theme=dark]{--primary-main: #ffffff;--text-primary: #ffffff;--text-secondary: #a0a0a0;--text-on-primary: var(--primary-main);--bg-default: var(--primary-main);--bg-paper: #0a0a0a;--bg-hover: #1a1a1a;--bg-dark: var(--primary-main);--divider: #1a1a1a;--success-main: #d4d4d4;--success-light: #2a2a2a;--success-dark: #ffffff;--warning-main: #a0a0a0;--warning-light: #1a1a1a;--warning-dark: #d4d4d4;--info-main: var(--divider);--error-main: #808080;--error-light: #1a1a1a;--error-dark: #ffffff}.document-container .MuiPaper-root{border:none!important;border-radius:0!important;box-shadow:none!important;background:inherit!important}.document-container em{font-style:italic}.table-wrapper{overflow-x:auto;margin:1.5rem 0;border-radius:0;box-shadow:0 2px 4px #00000014}.cmmc-table{width:100%;min-width:600px;border-collapse:collapse;font-size:.95rem;overflow:hidden}.cmmc-table thead{background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);color:#fff}.cmmc-table th{padding:12px 16px;text-align:left;font-weight:600;text-transform:uppercase;font-size:.875rem;letter-spacing:.025em}.cmmc-table td{padding:12px 16px;border-bottom:1px solid var(--divider)}.cmmc-table tbody tr:nth-child(2n){background-color:var(--bg-paper)}.cmmc-table tbody tr:hover{background-color:var(--bg-hover);transition:background-color .2s ease}.control-matrix-table{width:100%;margin:2rem 0}.control-matrix-table .control-code{font-family:Monaco,Courier New,monospace;font-weight:600;color:var(--text-primary);background:var(--bg-paper);padding:2px 6px;border-radius:3px}.control-matrix-table .status-implemented{color:var(--success-main);font-weight:600}.control-matrix-table .status-partially_implemented{color:var(--warning-main);font-weight:600}.control-matrix-table .status-planned{color:var(--info-main);font-weight:600}.control-matrix-table .status-not_implemented{color:var(--error-main);font-weight:600}.control-matrix-table .status-not_applicable{color:var(--text-secondary);font-weight:600}.document-container ul,.document-container ol{margin:1rem 0;padding-left:2rem;color:var(--text-secondary)}.document-container li{margin:.5rem 0;line-height:1.7}.document-container ul li::marker{color:var(--primary-main)}.document-container ol li::marker{color:var(--text-primary);font-weight:600}.document-container ul ul,.document-container ol ol,.document-container ul ol,.document-container ol ul{margin-top:.5rem;margin-bottom:.5rem}.document-container pre{background:var(--bg-paper);color:var(--text-primary);padding:1.5rem;border-radius:8px;overflow-x:auto;margin:1.5rem 0;font-family:Monaco,Courier New,monospace;font-size:.875rem;line-height:1.5;border:1px solid var(--divider)}.document-container code{background:var(--bg-paper);color:var(--text-primary);padding:2px 6px;border-radius:3px;font-family:Monaco,Courier New,monospace;font-size:.875rem;border:1px solid var(--divider)}.document-container pre code{background:transparent;color:inherit;padding:0}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.align-justify{text-align:justify}.cover-page{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;page-break-after:always;background:linear-gradient(135deg,var(--text-primary) 0%,var(--text-secondary) 100%);color:#fff;padding:4rem}.cover-page h1{font-size:3.5rem;margin-bottom:2rem;color:#fff;border:none}.cover-page .subtitle{font-size:1.5rem;color:var(--text-on-primary);margin-bottom:3rem}.cover-page .metadata{font-size:1rem;color:#fffc;line-height:2}.table-of-contents{margin:2rem 0;padding:2rem;background:var(--bg-paper);border-radius:8px}.table-of-contents h2{color:var(--primary-main);border-bottom:2px solid var(--primary-main);padding-bottom:.5rem;margin-bottom:1.5rem}.toc-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px dotted var(--divider)}.toc-item:last-child{border-bottom:none}.toc-title{color:var(--text-primary)}.toc-page{color:var(--text-secondary);font-weight:500}.evidence-card{border:1px solid var(--divider);border-radius:8px;padding:1.5rem;margin:1rem 0;background:#fff;box-shadow:0 1px 3px #0000001a}.evidence-card .evidence-title{font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.evidence-card .evidence-status{display:inline-block;padding:4px 12px;border-radius:4px;font-size:.875rem;font-weight:600;margin-bottom:1rem}.evidence-status.approved{background:var(--success-light);color:var(--success-dark)}.evidence-status.pending{background:var(--warning-light);color:var(--warning-dark)}.evidence-status.rejected{background:var(--error-light);color:var(--error-dark)}@media print{.document-container{padding:0;max-width:100%}.document-container h1,.document-container h2,.document-container h3{page-break-after:avoid}.cmmc-table,.evidence-card{page-break-inside:avoid}.cover-page{page-break-after:always}@page{margin:1in;size:letter}@page :first{margin:0}}@media(max-width:768px){.document-container{padding:20px}.document-container h1{font-size:2rem}.document-container h2{font-size:1.5rem}.cmmc-table{font-size:.875rem}.cmmc-table th,.cmmc-table td{padding:8px}}.document-container a{color:var(--primary-main);text-decoration:none;transition:color .2s ease}.document-container a:hover{color:var(--text-secondary);text-decoration:underline}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.editor-paragraph{color:#000;margin:0 0 1em;line-height:1.6}.editor-heading-h1{color:#000;font-size:2rem;font-weight:700;margin:1.5rem 0 1rem;line-height:1.2}.editor-heading-h2{color:#000;font-size:1.5rem;font-weight:600;margin:1.25rem 0 .75rem;line-height:1.3}.editor-heading-h3{color:#000;font-size:1.25rem;font-weight:600;margin:1rem 0 .5rem;line-height:1.4}.editor-text-bold{font-weight:700}.editor-text-italic{font-style:italic}.editor-text-underlined{text-decoration:underline}.editor-list-ul{color:#000;padding-left:1.5rem;margin:.5rem 0;list-style-type:disc}.editor-list-ol{color:#000;padding-left:1.5rem;margin:.5rem 0;list-style-type:decimal}.editor-listitem{color:#000;margin:.25rem 0}.editor-nested-listitem{list-style-type:circle}.editor-table{border-collapse:collapse;border:1px solid #000000;color:#000;margin:1rem 0;width:100%;background:#fff;table-layout:auto}.editor-table-cell{border:1px solid #000000;padding:8px 12px;position:relative;vertical-align:top;min-height:20px;min-width:50px;background:#fff;color:#000}.editor-table-cell-header{background:#fff;color:#000;font-weight:700;border:1px solid #000000;padding:8px 12px}.editor-table-cell:focus{outline:2px solid #000000;outline-offset:-2px}.editor-table-row{border:1px solid #000000;background:#fff;color:#000}.editor-table-cell:hover,.editor-table-cell-header:hover{background-color:#fff}
