:root{color:#102a43;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f8fbfd;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0}button,input{font:inherit}#root{min-height:100svh}.login-page{background:radial-gradient(circle at 12% 14%,#0f6d9124,#0000 28%),linear-gradient(135deg,#fbfdfe 0%,#eef7f6 48%,#fff 100%);grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);min-height:100svh;display:grid}.brand-panel,.form-panel{min-height:100svh}.brand-panel{color:#102a43;flex-direction:column;justify-content:space-between;align-items:center;padding:54px clamp(36px,5vw,76px);display:flex}.brand-lockup{align-items:center;gap:28px;width:min(100%,660px);display:flex}.cbqap-logo{object-fit:contain;width:min(340px,52vw);height:auto}.ncg-logo{object-fit:contain;width:174px;height:auto}.brand-divider{opacity:.55;background:linear-gradient(#0f6d91,#ec8b3b,#6bbf59);align-self:stretch;width:1px;min-height:68px}.brand-copy{text-align:center;max-width:760px;padding:54px 0 44px}.eyebrow{color:#0f6d91;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px;font-size:.78rem;font-weight:800}.brand-copy h1{color:#06283d;gap:6px;max-width:680px;margin:0;font-size:clamp(2rem,3.4vw,3rem);font-weight:800;line-height:1.08;display:grid}.brand-copy h1 span{white-space:nowrap;display:block}.brand-copy p:not(.eyebrow){color:#486581;max-width:620px;margin:24px 0 0;font-size:1.05rem;line-height:1.48}.program-strip{flex-wrap:wrap;gap:12px;display:flex}.program-strip span{color:#12344d;background:#ffffffb8;border:1px solid #0f6d912e;border-radius:999px;padding:10px 14px;font-size:.88rem;font-weight:700;box-shadow:0 10px 28px #102a430f}.form-panel{background:radial-gradient(circle,#0f6d9114,#0000 34%),linear-gradient(#ffffffc7,#fffffffa);border-left:1px solid #102a4314;place-items:center;padding:32px;display:grid}.login-card{background:#fff;border:1px solid #102a431a;border-radius:8px;width:min(100%,430px);padding:36px;box-shadow:0 28px 80px #102a4321}.login-stack{gap:14px;width:min(100%,430px);display:grid}.login-stack .login-card{width:100%}.login-contact{color:#486581;background:#ffffffb8;border:1px solid #102a4314;border-radius:8px;padding:14px 16px;font-size:.9rem;line-height:1.45;box-shadow:0 12px 30px #102a430f}.login-contact p{margin:0}.login-contact p+p{margin-top:5px}.login-contact strong{color:#102a43}.login-contact span{color:#9fb3c8;margin:0 4px}.card-heading{margin-bottom:30px}.card-heading h2{color:#102a43;margin:0;font-size:1.78rem;line-height:1.14}.login-form{gap:12px;display:grid}.login-form label{color:#334e68;font-size:.88rem;font-weight:800}.login-form input{box-sizing:border-box;color:#102a43;width:100%;min-height:52px;font:inherit;background:#fbfdfe;border:1px solid #cbd7e3;border-radius:6px;outline:none;padding:0 15px;transition:border-color .16s,box-shadow .16s,background .16s}.login-form input:focus{background:#fff;border-color:#0f6d91;box-shadow:0 0 0 4px #0f6d9124}.login-form input::placeholder{color:#829ab1}.login-form button{color:#fff;min-height:52px;font:inherit;cursor:pointer;background:linear-gradient(135deg,#075985,#0f766e);border:0;border-radius:6px;margin-top:10px;font-weight:800;transition:transform .16s,box-shadow .16s,opacity .16s;box-shadow:0 16px 30px #0f6d913d}.login-form button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 20px 36px #0f6d9147}.login-form button:focus-visible{outline-offset:3px;outline:3px solid #ec8b3b6b}.login-form button:disabled{cursor:wait;opacity:.72}.form-alert{border-radius:6px;margin:4px 0 0;padding:10px 12px;font-size:.88rem;font-weight:700}.form-alert.error{color:#9f1d1d;background:#fff2f0}.form-alert.success{color:#17633a;background:#eefbf3}.boot-screen{color:#334e68;background:#f5f8fb;place-items:center;min-height:100svh;font-weight:800;display:grid}.spe-loader{place-items:center;width:min(100%,720px);padding:24px;display:grid}.spe-loader.compact{width:100%;padding:12px 0}.spe-loader-card{background:linear-gradient(#ffffffeb,#f8fcfdf5),#fff;border:1px solid #d9e2ec;border-radius:8px;gap:14px;width:100%;padding:18px;display:grid;box-shadow:0 16px 38px #102a4314}.spe-loader.compact .spe-loader-card{box-shadow:none;padding:14px}.spe-loader-graph{background:#fbfdfe;border:1px solid #e6edf3;border-radius:8px;overflow:hidden}.spe-loader svg{width:100%;height:150px;display:block}.spe-loader.compact svg{height:104px}.spe-loader-grid{fill:none;stroke:#e6edf3;stroke-width:1px}.spe-loader-baseline{fill:none;stroke:#b6c8d8;stroke-width:4px;stroke-linecap:round;opacity:.5}.spe-loader-trace{fill:none;stroke:#0f766e;stroke-width:5px;stroke-linecap:round;stroke-dasharray:720;stroke-dashoffset:720px;animation:1.8s ease-in-out infinite spe-trace-draw}.spe-loader-dot{fill:#f59e0b;animation:1.8s ease-in-out infinite spe-dot-travel}.spe-loader h2,.spe-loader p{margin:0}.spe-loader h2{color:#102a43;font-size:1.15rem}.spe-loader p{color:#627d98;margin-top:4px;font-size:.92rem}@keyframes spe-trace-draw{0%{stroke-dashoffset:720px;opacity:.35}45%,70%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:-720px;opacity:.35}}@keyframes spe-dot-travel{0%{opacity:0;transform:translate(0)}12%{opacity:1}32%{transform:translate(164px,-29px)}52%{transform:translate(274px,-20px)}72%{transform:translate(416px,-40px)}to{opacity:0;transform:translate(484px)}}@media (prefers-reduced-motion:reduce){.spe-loader-trace,.spe-loader-dot{animation:none}.spe-loader-trace{stroke-dashoffset:0}}.app-shell{--app-topbar-height:106px;background:#eef3f7;grid-template-columns:230px minmax(0,1fr);min-height:100svh;display:grid}.app-sidebar{color:#e6f0f7;background:linear-gradient(#0f6d911f,#0000 34%),#0b2435;flex-direction:column;height:100svh;display:flex;position:sticky;top:0;box-shadow:inset -1px 0 #ffffff0f}.sidebar-brand{height:var(--app-topbar-height);background:#fff;border-bottom:1px solid #ffffff14;justify-content:center;align-items:center;padding:14px 20px;display:flex}.sidebar-brand img{width:164px;height:auto}.sidebar-nav{gap:10px;padding:18px 12px;display:grid}.nav-item{color:#cbdce8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:11px;width:100%;padding:12px;transition:background .16s,color .16s,box-shadow .16s;display:flex;position:relative}.nav-item:hover{color:#fff;background:#ffffff12}.nav-item.active{color:#fff;background:linear-gradient(135deg,#0f6d9170,#10766e57);box-shadow:0 12px 26px #020f1f2e}.nav-item.active:before{content:"";background:#f7c66a;border-radius:0 999px 999px 0;width:3px;position:absolute;top:12px;bottom:12px;left:0}.nav-marker{color:#e6f0f7;background:#ffffff14;border:1px solid #ffffff1f;border-radius:8px;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:900;display:inline-flex}.nav-copy{gap:2px;min-width:0;display:grid}.nav-copy span{font-weight:800}.nav-copy small{color:#a9bed0}.app-main{flex-direction:column;min-width:0;display:flex}.app-header{min-height:var(--app-topbar-height);background:#fff;border-bottom:1px solid #d9e2ec;justify-content:space-between;align-items:center;gap:24px;padding:18px 28px;display:flex}.header-title{align-items:center;gap:16px;min-width:0;display:flex}.header-title img{width:118px;height:auto}.header-title p,.header-title h1{margin:0}.header-title p{color:#102a43;font-size:1.08rem;font-weight:800}.header-title h1{color:#627d98;font-size:.82rem;font-weight:800}.participant-chip{align-items:center;gap:14px;display:flex}.lab-details-button{text-align:right;cursor:pointer;background:0 0;border:0;padding:4px 0;display:grid}.lab-details-button:hover span{color:#0f6d91}.lab-details-button span{color:#102a43;font-weight:900}.lab-details-button small{color:#627d98}.modal-backdrop{z-index:20;background:#020f1f6b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.lab-modal{background:#fff;border:1px solid #d9e2ec;border-radius:8px;width:min(100%,560px);padding:22px;box-shadow:0 28px 80px #020f1f47}.lab-modal-heading{border-bottom:1px solid #e6edf3;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;padding-bottom:14px;display:flex}.lab-modal-heading h2{color:#102a43;margin:0}.modal-close-button{color:#486581;width:34px;height:34px;font:inherit;cursor:pointer;background:#f8fafc;border:1px solid #d9e2ec;border-radius:6px;font-weight:900}.lab-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;display:grid}.lab-detail{background:#fbfdfe;border:1px solid #e6edf3;border-radius:7px;gap:5px;padding:12px;display:grid}.lab-detail dt{color:#627d98;text-transform:uppercase;font-size:.78rem;font-weight:900}.lab-detail dd{color:#102a43;margin:0;font-weight:800}.content-area{flex:1;padding:18px 22px;overflow:auto}.page-stack{gap:18px;display:grid}.hero-band,.panel,.metric-card,.sub-panel{background:#fff;border:1px solid #d9e2ec;border-radius:8px;box-shadow:0 16px 38px #102a430f}.hero-band{background:linear-gradient(135deg,#fff 0%,#edf9f7 100%);justify-content:space-between;align-items:center;gap:24px;padding:26px;display:flex}.hero-band h2,.empty-state h2,.panel-heading h2,.panel-heading h3{color:#102a43;margin:0}.hero-band p:not(.eyebrow),.empty-state p{color:#486581;max-width:680px;margin:10px 0 0}.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.metric-card{gap:8px;padding:18px;display:grid}.metric-card span{color:#627d98;font-weight:800}.metric-card strong{color:#0f6d91;font-size:2rem}.result-status-panel{gap:8px;display:grid}.result-status-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.status-column{background:#fbfdfe;border:1px solid #e6edf3;border-radius:8px;padding:14px}.status-column-heading{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.status-column-heading strong{color:#102a43;font-size:1rem}.status-column-heading span{color:#0f6d91;background:#eff6f8;border-radius:999px;justify-content:center;align-items:center;min-width:32px;height:32px;font-weight:900;display:inline-flex}.status-column ul{gap:9px;margin:0;padding:0;list-style:none;display:grid}.status-column li{background:#fff;border:1px solid #e6edf3;border-radius:7px;align-items:center;gap:10px;padding:10px;display:flex}.status-column li>span:last-child{gap:2px;display:grid}.status-column small,.status-column p{color:#627d98}.status-column p{margin:0}.status-check{border-radius:999px;flex:0 0 28px;justify-content:center;align-items:center;width:28px;height:28px;font-weight:900;display:inline-flex}.status-check.submitted{color:#17633a;background:#e6f7ee}.status-check.pending{color:#a35400;background:#fff7e8}.admin-page .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-table-panel{overflow:hidden}.admin-results-table table{min-width:1180px}.admin-results-table td{vertical-align:top}.admin-results-table td>small,.admin-results-table td>strong+small{color:#627d98;margin-top:4px;font-size:.78rem;display:block}.status-pill{border-radius:999px;align-items:center;min-height:28px;padding:0 10px;font-size:.78rem;font-weight:900;display:inline-flex}.status-pill.submitted{color:#17633a;background:#e6f7ee}.status-pill.pending{color:#a35400;background:#fff7e8}.admin-detail-list{gap:8px;min-width:320px;display:grid}.admin-detail-list>span{background:#fbfdfe;border:1px solid #e6edf3;border-radius:6px;gap:3px;padding:8px;display:grid}.admin-detail-list small{color:#627d98}.admin-enrolment-list{min-width:280px}.admin-enrolment-list>span{line-height:1.45}.muted{color:#829ab1}.panel{padding:20px}.panel-heading,.sub-panel-heading,.instance-header,.editor-toolbar{justify-content:space-between;align-items:center;gap:18px;display:flex}.panel-heading{margin-bottom:18px}.enrolment-list{gap:10px;display:grid}.enrolment-row{border:1px solid #e6edf3;border-radius:7px;justify-content:space-between;align-items:center;gap:18px;padding:14px;display:flex}.enrolment-row div{gap:4px;display:grid}.enrolment-row span{color:#627d98}.primary-button,.secondary-button,.ghost-button,.text-button{cursor:pointer;border-radius:6px;min-height:40px;padding:0 14px;font-weight:900}.primary-button{color:#fff;background:linear-gradient(135deg,#075985,#0f766e);border:0;box-shadow:0 12px 24px #0f6d912e}.secondary-button{color:#12344d;background:#fff;border:1px solid #bfd0df}.ghost-button,.text-button{color:#0f6d91;background:#eff6f8;border:1px solid #0000}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.65}.editor-toolbar{flex-wrap:wrap;align-items:end}.editor-toolbar label,.form-grid label,.instance-header label{color:#334e68;gap:7px;font-size:.86rem;font-weight:800;display:grid}.editor-toolbar select,.editor-toolbar input,.form-grid input,.form-grid select,.instance-header input,.responsive-table input,.responsive-table select{color:#102a43;background:#fbfdfe;border:1px solid #cbd7e3;border-radius:6px;min-height:40px;padding:0 11px}.editor-toolbar select{min-width:300px}.add-instance{gap:10px;display:flex}.editor-grid{grid-template-columns:270px minmax(0,1fr);align-items:start;gap:18px;display:grid}.instance-list{gap:10px;display:grid;position:sticky;top:106px}.instance-button{color:#102a43;text-align:left;cursor:pointer;background:#fff;border:1px solid #d9e2ec;border-radius:7px;gap:4px;width:100%;padding:12px;display:grid}.instance-card-row{gap:8px;display:grid}.instance-button.active{background:#eef9f8;border-color:#0f6d91}.delete-instance-button{color:#a83228;cursor:pointer;background:#fff7f6;border:1px solid #f3b3ad;border-radius:6px;justify-self:end;min-height:32px;padding:0 10px;font-weight:900}.delete-instance-button:hover:not(:disabled){background:#ffeceb}.delete-instance-button:disabled{cursor:wait;opacity:.65}.instance-button span,.instance-button small,.sub-panel-heading span{color:#627d98}.editor-panel{min-width:0}.instance-header{border-bottom:1px solid #e6edf3;align-items:end;margin-bottom:18px;padding-bottom:18px}.instance-header h3{color:#102a43;margin:0}.toggle-row{grid-template-columns:none;align-items:center;min-height:40px;gap:9px!important;display:flex!important}.toggle-row input{width:18px;height:18px}.section-stack{gap:16px;display:grid}.sub-panel{box-shadow:none;background:#fcfdff;padding:16px}.inactive-submodule{background:#f2f5f8;border-color:#d4dde7}.inactive-submodule .sub-panel-heading h4,.inactive-submodule .sub-panel-heading span,.inactive-submodule .form-grid label{color:#7b8da1}.inactive-submodule .form-grid input,.inactive-submodule .form-grid select{color:#7b8da1;background:#edf1f5;border-color:#d4dde7}.inactive-submodule .form-grid input:disabled,.inactive-submodule .form-grid select:disabled{cursor:not-allowed;opacity:1}.sub-panel-heading{border-bottom:1px solid #d9e2ec;align-items:flex-start;margin-bottom:14px;padding-bottom:12px}.sub-panel-heading h4{color:#102a43;margin:0;font-size:1.05rem}.submodule-action{min-height:34px;font:inherit;cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:.86rem;font-weight:900;display:inline-flex}.remove-submodule{color:#a83228;background:#fff7f6;border:1px solid #f3b3ad}.remove-submodule:hover{background:#ffeceb}.add-submodule{color:#116149;background:#effaf5;border:1px solid #9bc7b6}.add-submodule:hover{background:#e1f6ed}.trash-icon{border:2px solid;border-top:0;border-radius:0 0 3px 3px;width:14px;height:15px;position:relative}.trash-icon:before,.trash-icon:after{content:"";background:currentColor;position:absolute;left:50%;transform:translate(-50%)}.trash-icon:before{border-radius:2px;width:16px;height:2px;top:-5px}.trash-icon:after{border-radius:2px;width:8px;height:2px;top:-8px}.form-grid{gap:14px;display:grid}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.ep-fields{align-items:end;gap:14px;overflow:hidden}.form-grid.ep-fields label{min-width:0}.form-grid.ep-fields input,.form-grid.ep-fields select{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;font-weight:700}.tm-sub-panel{max-width:100%;overflow:hidden}.form-grid.tm-fields{align-items:end;gap:14px;margin-bottom:12px}.form-grid.tm-fields label{min-width:0}.form-grid.tm-fields input,.form-grid.tm-fields select{text-overflow:ellipsis;width:100%;min-width:0;max-width:100%;font-weight:700}.tm-marker-table table{table-layout:fixed;min-width:0}.tm-marker-table th:first-child,.tm-marker-table td:first-child{width:92px}.tm-marker-table th:nth-child(2),.tm-marker-table td:nth-child(2){width:30%}.tm-marker-table th:nth-child(3),.tm-marker-table td:nth-child(3){width:28%}.tm-marker-table input,.tm-marker-table select{width:100%}.tm-marker-table th,.tm-marker-table td{overflow-wrap:anywhere}.responsive-table{border:1px solid #e6edf3;border-radius:7px;overflow-x:auto}.responsive-table table{border-collapse:collapse;width:100%;min-width:720px}.responsive-table.tm-marker-table{overflow-x:hidden}.responsive-table.tm-marker-table table{width:100%;min-width:0}.responsive-table th,.responsive-table td{text-align:left;border-bottom:1px solid #e6edf3;padding:10px}.responsive-table th{color:#334e68;text-transform:uppercase;background:#f5f8fb;font-size:.82rem}.responsive-table tr:last-child td{border-bottom:0}.result-shell{gap:12px;padding:16px;display:grid;overflow:hidden}.results-page-stack{gap:12px}.result-controls-band{max-width:100%;padding:0 2px}.sample-reporting-bar{grid-template-columns:max-content 150px 120px 190px 82px max-content;align-items:center;gap:10px;display:grid}.sample-reporting-bar h2{color:#020f1f;text-transform:uppercase;white-space:nowrap;margin:0;font-size:1.22rem}.sample-reporting-bar select{color:#102a43;width:100%;min-width:0;min-height:38px;font:inherit;background:#fbfdfe;border:1px solid #cbd7e3;border-radius:6px;padding:0 12px;font-weight:700}.last-reporting-date{color:#a35400;text-transform:uppercase;white-space:nowrap;background:#fff9ed;border:1px solid #f7c66a;border-radius:6px;align-items:center;gap:10px;min-height:38px;padding:0 14px;font-size:.82rem;font-weight:900;display:flex}.last-reporting-date strong{color:#7c3f00}.result-meta-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.result-meta-grid label{color:#334e68;gap:7px;font-size:.86rem;font-weight:800;display:grid}.result-meta-grid input,.result-table input{color:#102a43;min-height:36px;font:inherit;background:#fbfdfe;border:1px solid #cbd7e3;border-radius:6px;padding:0 11px;font-weight:700}.result-meta-grid input[readonly]{background:#f7fafc}.result-table table{table-layout:fixed;min-width:0}.result-table{overflow-x:hidden}.result-table th,.result-table td{vertical-align:middle;padding:8px 10px}.result-table input{width:100%}.result-table th:first-child,.result-table td:first-child{width:13%}.result-table th:nth-child(2),.result-table td:nth-child(2),.result-table th:nth-child(3),.result-table td:nth-child(3){width:17%}.result-table th:nth-child(4),.result-table td:nth-child(4){width:14%}.result-table th:nth-child(5),.result-table td:nth-child(5){width:31%}.result-table th:nth-child(6),.result-table td:nth-child(6){width:8%}.result-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.submitted-date-note{color:#17633a;font-size:.92rem;font-weight:900}.ep-result-card-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.ep-section-tabs{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.ep-section-tab{color:#102a43;min-height:42px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d9e2ec;border-radius:6px;align-items:baseline;gap:6px;padding:0 13px;font-size:.88rem;font-weight:500;display:inline-flex}.ep-section-tab strong{font-size:1rem;font-weight:900}.ep-section-tab.active{color:#fff;background:#07142b;border-color:#07142b}.ep-section-tab.complete{color:#116149;background:#effaf5;border-color:#7bc8a4}.ep-section-tab.complete.active{color:#fff;background:#116149;border-color:#116149}.ep-result-card{background:#fff;border:1px solid #d9e2ec;border-radius:8px;gap:14px;padding:16px;display:grid;box-shadow:0 12px 28px #102a430d}.spe-result-card{box-shadow:none;border:0;padding:0}.ep-card-heading{border-bottom:1px solid #e6edf3;align-items:baseline;gap:8px;padding-bottom:10px;display:flex}.ep-card-heading strong{color:#102a43;font-size:1.05rem}.ep-card-heading span{color:#486581;font-size:.9rem}.ep-result-form{gap:16px;display:grid}.spe-result-form{gap:14px}.spe-toolbar{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.label-with-hint{align-items:center;gap:7px;display:inline-flex}.info-hint{flex:none;align-items:center;display:inline-flex;position:relative}.info-hint-button{color:#0f6d91;width:22px;height:22px;font:inherit;cursor:help;background:#f8fafc;border:1px solid #bfd0df;border-radius:999px;padding:0;font-size:.78rem;font-weight:900;line-height:1}.info-hint-button:focus-visible{outline-offset:2px;outline:3px solid #0f6d912e}.info-hint-bubble{z-index:30;color:#334e68;text-transform:none;opacity:0;pointer-events:none;background:#fff;border:1px solid #d9e2ec;border-radius:7px;width:min(280px,70vw);padding:10px 12px;font-size:.82rem;font-weight:700;line-height:1.38;transition:opacity .14s,transform .14s;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%)translateY(4px);box-shadow:0 18px 42px #020f1f29}.info-hint-bubble:after{content:"";background:#fff;border-bottom:1px solid #d9e2ec;border-right:1px solid #d9e2ec;width:10px;height:10px;position:absolute;top:100%;left:50%;transform:translate(-50%,-5px)rotate(45deg)}.info-hint-right .info-hint-bubble{left:0;transform:translate(-16px)translateY(4px)}.info-hint-right .info-hint-bubble:after{left:26px}.info-hint:hover .info-hint-bubble,.info-hint:focus-within .info-hint-bubble{opacity:1;transform:translate(-50%)translateY(0)}.info-hint-right:hover .info-hint-bubble,.info-hint-right:focus-within .info-hint-bubble{transform:translate(-16px)translateY(0)}.saved-tag{color:#116149;background:#effaf5;border:1px solid #9bc7b6;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.82rem;font-weight:900;display:inline-flex}.required-tag{color:#b42318;background:#fff1f1;border:1px solid #f4b7b7;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-size:.82rem;font-weight:900;display:inline-flex}.unsaved-changes-note{color:#b42318;margin:12px 0 0;font-weight:900}.result-type-tag{color:#0f6d91;background:#f8fafc;border:1px solid #bfd0df;border-radius:999px;justify-content:center;align-items:center;min-height:30px;padding:0 11px;font-size:.82rem;font-weight:900;display:inline-flex}.instrument-strip{color:#486581;background:#f8fafc;border:1px solid #d9e2ec;border-radius:6px;flex-wrap:wrap;align-items:center;gap:18px;padding:10px 12px;display:flex}.instrument-strip strong{color:#102a43}.form-grid.six{grid-template-columns:repeat(3,minmax(0,1fr))}.spe-form-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;display:grid}.spe-main-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.spe-form-grid label{color:#334e68;gap:7px;font-size:.9rem;font-weight:700;display:grid}.spe-form-grid label:nth-child(4){grid-area:2/3}.spe-form-grid label:nth-child(5){grid-area:2/1}.spe-form-grid label:nth-child(6){grid-area:2/2}.spe-fraction-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}.total-protein-modal{width:min(100%,680px)}.total-protein-grid{margin-bottom:18px}.modal-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-copy{color:#486581;margin:-2px 0 18px}.form-grid.six input,.ep-result-form input,.ep-result-form select{color:#102a43;width:100%;min-height:40px;font:inherit;background:#fbfdfe;border:1px solid #cbd7e3;border-radius:6px;padding:0 11px}.result-divider{background:#b8c2cc;height:3px}.ep-marker-grid{gap:10px;display:grid}.igq-marker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-marker-row{border:1px solid #e6edf3;border-radius:6px;grid-template-columns:120px 240px 96px minmax(0,1fr);align-items:center;gap:12px;padding:10px;display:grid}.ep-marker-row input{max-width:240px}.igq-marker-grid .ep-marker-row{grid-template-columns:96px minmax(150px,220px) 86px}.igq-marker-grid .ep-marker-row input{max-width:220px}.ep-result-form .toggle-row input[type=checkbox]{accent-color:#087dcc;flex:0 0 34px;width:34px;height:34px;min-height:34px;padding:0}.readonly-unit{color:#102a43;background:#f8fafc;border:1px solid #d9e2ec;border-radius:6px;align-items:center;width:96px;min-height:40px;padding:0 11px;font-weight:700;display:inline-flex}.wide-field{grid-column:1/-1}.empty-state{max-width:760px}@media (width<=940px){.login-page,.app-shell{grid-template-columns:1fr}.app-sidebar{height:auto;position:static}.sidebar-brand{height:auto}.sidebar-nav{grid-template-columns:repeat(3,minmax(0,1fr))}.app-header,.hero-band,.instance-header{flex-direction:column;align-items:flex-start}.lab-details-button{text-align:left}.content-area{padding:18px}.metric-grid,.result-status-summary,.editor-grid,.form-grid.three,.form-grid.four,.form-grid.six,.ep-result-card-grid,.sample-reporting-bar,.result-meta-grid,.spe-form-grid,.spe-fraction-grid,.lab-detail-grid,.igq-marker-grid,.ep-marker-row{grid-template-columns:1fr}.spe-form-grid label:nth-child(4),.spe-form-grid label:nth-child(5),.spe-form-grid label:nth-child(6){grid-area:auto}.last-reporting-date{justify-content:space-between}.instance-list{position:static}.brand-panel,.form-panel{min-height:auto}.brand-panel{gap:30px;padding:28px 22px 20px}.brand-lockup{gap:16px}.cbqap-logo{width:min(260px,62vw)}.ncg-logo{width:126px}.brand-divider{min-height:48px}.brand-copy{padding:12px 0}.brand-copy h1{font-size:clamp(1.9rem,10vw,3rem)}.brand-copy h1 span{white-space:normal}.program-strip{display:none}.form-panel{border-left:0;padding:20px 18px 34px}.login-card{padding:24px}}@media (width<=560px){.brand-lockup{flex-direction:column;align-items:flex-start}.brand-divider{width:100%;height:1px;min-height:1px}}
