@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-ext-400-normal-CXAzuTZb.woff2) format("woff2"),url(/assets/figtree-latin-ext-400-normal-Gbh-3PTk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/figtree-latin-400-normal-g7Dtegnw.woff2) format("woff2"),url(/assets/figtree-latin-400-normal-BD4aNku5.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/figtree-latin-ext-500-normal-Du0rIuHj.woff2) format("woff2"),url(/assets/figtree-latin-ext-500-normal-BOEJvrb_.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/figtree-latin-500-normal-BWnGEVsr.woff2) format("woff2"),url(/assets/figtree-latin-500-normal-B_yy1phn.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-ext-600-normal-DJlfifZj.woff2) format("woff2"),url(/assets/figtree-latin-ext-600-normal-CQqsimlV.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/figtree-latin-600-normal-Cv_xCTDl.woff2) format("woff2"),url(/assets/figtree-latin-600-normal-BM_oTo4n.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-ext-700-normal-CS4sQkGV.woff2) format("woff2"),url(/assets/figtree-latin-ext-700-normal-BoDi4KL2.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/figtree-latin-700-normal-th6qEP7c.woff2) format("woff2"),url(/assets/figtree-latin-700-normal-BCCt2T1q.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--hal-primary: #644a78;--hal-primary-hover: #865fa0;--hal-primary-active: #865fa0;--hal-primary-bg: #f7f3f8;--hal-primary-fg: #f7f3f8;--hal-primary-hover-fg: #ffffff;--hal-navy: #003366;--hal-navy-dark: #002244;--hal-navy-light: #004080;--hal-bg-layout: #F5F5F5;--hal-bg-container: #FFFFFF;--hal-bg-elevated: #FFFFFF;--hal-text: #333333;--hal-text-secondary: #666666;--hal-text-tertiary: #999999;--hal-text-quaternary: #CCCCCC;--hal-border: #E0E0E0;--hal-border-secondary: #F0F0F0;--hal-success: #2E7D32;--hal-success-bg: #E8F5E9;--hal-warning: #ED6C02;--hal-warning-bg: #FFF3E0;--hal-error: #D32F2F;--hal-error-bg: #FFEBEE;--hal-info: #0277BD;--hal-info-bg: #E1F5FE;--hal-link: #644a78;--hal-link-hover: #865fa0;--hal-sidebar-bg: #FFFFFF;--hal-sidebar-border: #F0F0F0;--hal-sidebar-text: rgba(0, 0, 0, .88);--hal-sidebar-text-muted: rgba(0, 0, 0, .45);--hal-sidebar-hover-bg: #f7f3f8;--hal-sidebar-selected-bg: #f7f3f8;--hal-sidebar-selected-color: #644a78;--hal-sidebar-indicator: #644a78;--hal-sidebar-logo-bg: #ffffff;--hal-sidebar-section-label: rgba(0, 0, 0, .55);--hal-sidebar-group-label: #644a78;--hal-sidebar-submenu-icon: rgba(0, 0, 0, .65);--hal-sidebar-open-bg: rgba(0, 0, 0, .04);--hal-sidebar-guide: rgba(0, 0, 0, .14);--hal-sidebar-scroll-thumb: rgba(0, 0, 0, .12);--hal-header-bg: #FFFFFF;--hal-header-border: #F0F0F0;--hal-header-text: #333333;--hal-shadow-sm: 0 1px 3px rgba(0,0,0,.08);--hal-shadow-md: 0 2px 8px rgba(0,0,0,.1);--hal-shadow-lg: 0 4px 16px rgba(0,0,0,.12);--hal-shadow-card: 0 1px 4px rgba(0,51,102,.06);--hal-table-header-bg: #FAFAFA;--hal-table-header-color: #003366;--hal-table-row-hover: #F8FAFB;--hal-table-row-selected: #f7f3f8;--hal-table-border: #F0F0F0;--hal-font: "Figtree", "Segoe UI", Arial, sans-serif;--hal-line-height: 1.6;--tecton-font-family-sans: var(--hal-font);--tecton-action-primary-bg: var(--hal-primary);--tecton-action-primary-fg: var(--hal-primary-fg);--tecton-action-primary-hover-bg: var(--hal-primary-hover);--tecton-action-primary-hover-fg: var(--hal-primary-hover-fg);--tecton-surface: var(--hal-bg-container);--tecton-surface-elevated: var(--hal-bg-elevated);--tecton-surface-subtle: var(--hal-bg-layout);--tecton-text: var(--hal-text);--tecton-text-secondary: var(--hal-text-secondary);--tecton-divider: var(--hal-border);--hal-sidebar-width: 240px;--hal-sidebar-collapsed: 64px;--hal-header-height: 64px;color-scheme:light}[data-theme=dark]{--hal-primary: #5d4d68;--hal-primary-hover: #74647f;--hal-primary-active: #74647f;--hal-primary-bg: #5d4d68;--hal-primary-fg: #e5e0eb;--hal-primary-hover-fg: #ffffff;--hal-navy: #4D9FD6;--hal-navy-dark: #3380B5;--hal-navy-light: #66B3E0;--hal-bg-layout: #0F0F0F;--hal-bg-container: #1A1A1A;--hal-bg-elevated: #242424;--hal-text: rgba(255, 255, 255, .88);--hal-text-secondary: rgba(255, 255, 255, .65);--hal-text-tertiary: rgba(255, 255, 255, .45);--hal-text-quaternary: rgba(255, 255, 255, .25);--hal-border: #333333;--hal-border-secondary: #2A2A2A;--hal-success: #4CAF50;--hal-success-bg: rgba(76, 175, 80, .12);--hal-warning: #FFA726;--hal-warning-bg: rgba(255, 167, 38, .12);--hal-error: #EF5350;--hal-error-bg: rgba(239, 83, 80, .12);--hal-info: #29B6F6;--hal-info-bg: rgba(41, 182, 246, .12);--hal-link: #e5e0eb;--hal-link-hover: #ffffff;--hal-sidebar-bg: #141414;--hal-sidebar-border: #2A2A2A;--hal-sidebar-text: rgba(255, 255, 255, .88);--hal-sidebar-text-muted: rgba(255, 255, 255, .45);--hal-sidebar-hover-bg: #5d4d68;--hal-sidebar-selected-bg: #5d4d68;--hal-sidebar-selected-color: #e5e0eb;--hal-sidebar-indicator: #e5e0eb;--hal-sidebar-logo-bg: #ffffff;--hal-sidebar-section-label: rgba(255, 255, 255, .55);--hal-sidebar-group-label: #e5e0eb;--hal-sidebar-submenu-icon: rgba(255, 255, 255, .72);--hal-sidebar-open-bg: rgba(255, 255, 255, .06);--hal-sidebar-guide: rgba(255, 255, 255, .16);--hal-sidebar-scroll-thumb: rgba(255, 255, 255, .12);--hal-header-bg: #141414;--hal-header-border: #2A2A2A;--hal-header-text: rgba(255, 255, 255, .88);--hal-shadow-sm: 0 1px 3px rgba(0,0,0,.3);--hal-shadow-md: 0 2px 8px rgba(0,0,0,.4);--hal-shadow-lg: 0 4px 16px rgba(0,0,0,.5);--hal-shadow-card: 0 1px 4px rgba(0,0,0,.25);--hal-table-header-bg: #1F1F1F;--hal-table-header-color: #66B3E0;--hal-table-row-hover: rgba(255, 255, 255, .04);--hal-table-row-selected: #5d4d68;--hal-table-border: #2A2A2A;color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{font-size:14px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{margin:0;min-width:320px;min-height:100vh;font-family:var(--hal-font);color:var(--hal-text);background:var(--hal-bg-layout);line-height:var(--hal-line-height);transition:background .3s ease,color .3s ease}#root{min-height:100vh}::selection{background:var(--hal-primary-bg);color:var(--hal-link)}:focus-visible{outline:2px solid var(--hal-link);outline-offset:2px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--hal-sidebar-scroll-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--hal-text-tertiary)}*{scrollbar-width:thin;scrollbar-color:var(--hal-sidebar-scroll-thumb) transparent}a{color:var(--hal-link);text-decoration:none;transition:color .2s}a:hover{color:var(--hal-link-hover)}.ant-btn{font-family:var(--hal-font)}.ant-btn-primary:not(.ant-btn-dangerous):not(.ant-btn-background-ghost){font-size:14px;font-weight:500!important;line-height:18px;letter-spacing:0;box-shadow:none!important}.ant-btn-primary:not(.ant-btn-dangerous):not(.ant-btn-background-ghost):not(:disabled):not(.ant-btn-disabled){background:var(--hal-primary)!important;border-color:var(--hal-primary)!important;color:var(--hal-primary-fg)!important}.ant-btn-primary:not(.ant-btn-dangerous):not(.ant-btn-background-ghost):not(:disabled):not(.ant-btn-disabled):hover{background:var(--hal-primary-hover)!important;border-color:var(--hal-primary-hover)!important;color:var(--hal-primary-hover-fg)!important}.ant-btn-primary:not(.ant-btn-dangerous):not(.ant-btn-background-ghost):not(:disabled):not(.ant-btn-disabled):active{background:var(--hal-primary-active)!important;border-color:var(--hal-primary-active)!important;color:var(--hal-primary-hover-fg)!important}.ant-btn-primary:not(.ant-btn-dangerous):not(.ant-btn-background-ghost):is(:disabled,.ant-btn-disabled){background:var(--hal-bg-layout)!important;border-color:var(--hal-border)!important;color:var(--hal-text-tertiary)!important}.ant-btn:focus-visible{outline:2px solid var(--hal-link);outline-offset:3px}h1,h2,h3,h4,h5,h6{color:var(--hal-text);font-weight:600;line-height:1.3}.ant-layout{min-height:100vh;background:var(--hal-bg-layout)!important}.ant-layout-header{box-shadow:var(--hal-shadow-sm)}.ant-table-wrapper{background:var(--hal-bg-container);border-radius:8px;padding:16px}.ant-table-wrapper .ant-table-thead>tr>th{font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--hal-table-header-color)!important;border-bottom:2px solid var(--hal-primary)!important}.coa-spec-failed>td{background:var(--hal-error-bg, rgb(255 77 79 / 8%))!important}.status-active,.status-passed,.status-approved{color:var(--hal-success);background:var(--hal-success-bg);border:1px solid var(--hal-success);border-radius:4px;padding:2px 10px;font-size:12px;font-weight:600}.status-pending,.status-draft,.status-under-review{color:var(--hal-warning);background:var(--hal-warning-bg);border:1px solid var(--hal-warning);border-radius:4px;padding:2px 10px;font-size:12px;font-weight:600}.status-failed,.status-rejected,.status-deleted{color:var(--hal-error);background:var(--hal-error-bg);border:1px solid var(--hal-error);border-radius:4px;padding:2px 10px;font-size:12px;font-weight:600}.status-inactive,.status-superseded{color:var(--hal-text-secondary);background:var(--hal-bg-layout);border:1px solid var(--hal-border);border-radius:4px;padding:2px 10px;font-size:12px;font-weight:600}.kpi-card{border-radius:8px;border:1px solid var(--hal-border-secondary);padding:20px 24px;background:var(--hal-bg-container);box-shadow:var(--hal-shadow-card);transition:transform .2s,box-shadow .2s}.kpi-card:hover{transform:translateY(-2px);box-shadow:var(--hal-shadow-md)}.kpi-card .ant-statistic-title{font-size:12px;color:var(--hal-text-secondary);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.kpi-card .ant-statistic-content-value{font-size:32px;font-weight:700;color:var(--hal-navy)}.action-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.filter-panel{background:var(--hal-bg-container);border:1px solid var(--hal-border-secondary);border-radius:8px;margin-bottom:16px}.filter-panel .ant-collapse-header{font-weight:600;color:var(--hal-navy)!important}.ant-menu-inline .ant-menu-item,.ant-menu-inline .ant-menu-submenu-title{transition:padding .2s,background .2s,color .2s!important}.page-title{font-size:24px;font-weight:700;color:var(--hal-navy);margin-bottom:24px;display:flex;align-items:center;gap:12px}@media print{.ant-layout-sider,.ant-layout-header,.ant-breadcrumb,.action-bar,.filter-panel,.ant-pagination{display:none!important}.ant-layout-content{margin:0!important;padding:0!important}.ant-card{box-shadow:none;border:1px solid #ccc}}@media(max-width:768px){.page-title{font-size:20px}.action-bar{flex-direction:column;align-items:stretch}}.qcdoc-out-of-spec>td{background-color:#fff1f0}
