:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--navy-950:#071426;--navy-900:#0a1f44;--navy-800:#0f3978;--navy-700:#1c4a8a;--navy-600:#1854a0;--blue-600:#2460b9;--blue-500:#2c6fd6;--blue-400:#4182e8;--blue-100:#e8f0fd;--blue-050:#f5f8fc;--surface:#fff;--surface-alt:#f7f9fc;--surface-soft:#eef2f8;--ink-900:#0e1e3d;--ink-800:#1a2f58;--ink-700:#364d73;--ink-500:#6a7e9d;--ink-400:#8c9bb4;--ink-300:#adb9ca;--line:#dfe6ef;--line-strong:#c9d3e1;--line-light:#eaeff5;--success:#1a8f5c;--success-bg:#edf8f3;--warning:#a67219;--warning-bg:#fef8ee;--danger:#b3423f;--danger-bg:#fdf1f0;--info-bg:#eef4fd;--shadow-xs:0 1px 2px #0e1e3d0a;--shadow-sm:0 1px 3px #0e1e3d0a, 0 4px 12px #0e1e3d08;--shadow-md:0 2px 6px #0e1e3d0a, 0 8px 24px #0e1e3d0d;--shadow-lg:0 4px 12px #0e1e3d0a, 0 16px 40px #0e1e3d0f;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:10px;--radius-pill:100px;--ease-out:cubic-bezier(.16, 1, .3, 1);--transition-fast:.15s var(--ease-out);--transition-normal:.22s var(--ease-out);--font-ui:"Montserrat", "Segoe UI", "Helvetica Neue", Arial, sans-serif;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-7:28px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sidebar-width:264px;--max-content:1280px;--page-gutter:40px;font-family:var(--font-ui)}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}body{color:var(--ink-900);background:var(--surface-alt);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:14px;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}h1,h2,h3,h4,p{margin:0}.brand-eyebrow,.muted-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);font-size:.6875rem;font-weight:600;line-height:1.2}.subtle-text,.page-subtitle{color:var(--ink-700);font-size:.875rem;font-weight:400;line-height:1.65}.primary-button,.ghost-button,.quick-action-button,.sidebar-signout{border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);letter-spacing:.01em;font-size:.8125rem;font-weight:600}.primary-button{background:var(--blue-500);color:#fff;border:none;padding:10px 20px;box-shadow:0 1px 3px #2c6fd62e}.primary-button:hover{background:var(--blue-600);box-shadow:0 2px 8px #2c6fd638}.primary-button:active{background:#234ea8;transform:translateY(0)}.primary-button:disabled{background:var(--ink-300);cursor:not-allowed;box-shadow:none}.ghost-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-800);padding:10px 20px}.ghost-button:hover{border-color:var(--blue-500);color:var(--blue-600);background:var(--blue-050)}.ghost-button:disabled{color:var(--ink-400);border-color:var(--line);cursor:not-allowed}.app-shell{height:100vh;min-height:100vh;display:block}.sidebar{background:var(--navy-900);color:#fff;padding:var(--sp-6) var(--sp-5);gap:var(--sp-5);width:var(--sidebar-width);border-right:1px solid #ffffff0a;flex-direction:column;height:100vh;max-height:100vh;display:flex;position:fixed;top:0;left:0;overflow:hidden}.brand-panel{padding:var(--sp-4) var(--sp-3);border-radius:var(--radius-md);background:#ffffff0a;border:1px solid #ffffff0a;justify-content:center;align-items:center;min-height:100px;display:flex}.brand-shield{place-items:center;display:grid}.brand-shield-full{justify-content:center;align-items:center;width:100%;min-height:80px;display:flex;overflow:hidden}.brand-logo{object-fit:contain;width:44px;height:44px;display:block}.brand-logo-full{clip-path:inset(31% 14% 33%);transform-origin:50%;width:100%;max-width:100%;height:auto;transform:scale(1.36)}.brand-copy{gap:2px;display:grid}.sidebar-eyebrow{color:#c8d6f06b}.brand-title{color:#fff;gap:2px;font-size:1.1rem;font-weight:700;line-height:1;display:grid}.brand-title span{display:block}.sidebar-section-label{padding:0 var(--sp-2);text-transform:uppercase;letter-spacing:.14em;color:#c8d6f05c;margin-top:var(--sp-1);font-size:.625rem;font-weight:700}.nav-list{gap:var(--sp-1);display:grid}.nav-item{align-items:center;gap:var(--sp-3);border-radius:var(--radius-sm);color:#ffffffb8;transition:all var(--transition-fast);border:1px solid #0000;padding:10px 12px;font-size:.8125rem;font-weight:500;display:flex}.nav-item:hover{color:#ffffffeb;background:#ffffff0a}.nav-item.active{color:#fff;background:#2460b947;border-color:#4182e81f;font-weight:600}.nav-index{letter-spacing:.14em;color:#c8d6f070;font-variant-numeric:tabular-nums;min-width:24px;font-size:.625rem;font-weight:700}.sidebar-footer{gap:var(--sp-2);padding:var(--sp-4) var(--sp-3);border-radius:var(--radius-md);background:#ffffff0a;border:1px solid #ffffff0a;margin-top:auto;display:grid}.sidebar-user-name{font-size:.8125rem;font-weight:600}.sidebar-signout{margin-top:var(--sp-2);color:#ffffffa3;background:0 0;border:1px solid #ffffff14;padding:8px 12px;font-size:.75rem}.sidebar-signout:hover{color:#fff;background:#ffffff0f}.sidebar-mobile-header,.mobile-menu-button,.sidebar-close-button,.sidebar-backdrop{display:none}.sidebar-mobile-header{position:relative}.sidebar-mobile-header .brand-panel{width:100%}.mobile-menu-button,.sidebar-close-button{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);color:var(--ink-900);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);justify-content:center;align-items:center}.mobile-menu-button:hover,.sidebar-close-button:hover{border-color:var(--blue-500);box-shadow:0 0 0 3px #2c6fd61a}.mobile-menu-button{width:44px;height:44px;padding:0}.mobile-menu-button svg,.sidebar-close-button svg{stroke-width:2.1px;width:18px;height:18px}.sidebar-close-button{width:36px;height:36px;top:var(--sp-3);right:var(--sp-3);z-index:1;box-shadow:var(--shadow-sm);font-size:.875rem;font-weight:700;position:absolute}.sidebar-backdrop{opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:30;background:#0714267a;border:0;padding:0;position:fixed;inset:0}.sidebar-backdrop.open{opacity:1;pointer-events:auto}.content-shell{min-height:100vh;margin-left:var(--sidebar-width);grid-template-rows:auto 1fr;display:grid}.topbar{padding:var(--sp-5) var(--page-gutter) 0;justify-content:flex-end;align-items:center;display:flex}.topbar-badge{letter-spacing:.1em;text-transform:uppercase;color:var(--ink-400);background:0 0;border-radius:0;align-items:center;min-height:28px;padding:0;font-size:.6875rem;font-weight:600;display:inline-flex}.page-content{padding:var(--sp-6) var(--page-gutter) var(--sp-12)}.role-pill,.status-chip,.soft-badge,.topbar-badge,.payment-pill{border-radius:var(--radius-pill);letter-spacing:.02em;justify-content:center;align-items:center;width:fit-content;min-height:26px;padding:3px 10px;font-size:.6875rem;font-weight:600;display:inline-flex}.role-pill,.soft-badge,.status-chip{background:var(--blue-100);color:var(--navy-700)}.payment-chip.unpaid,.payment-pill.unpaid{background:var(--surface-soft);color:var(--ink-700)}.payment-pill.paid{background:var(--success-bg);color:var(--success)}.soft-badge.accent{background:var(--warning-bg);color:var(--warning)}.page-stack{gap:var(--sp-6);max-width:var(--max-content);margin:0 auto;display:grid}.page-intro{justify-content:space-between;align-items:start;gap:var(--sp-4);padding:var(--sp-2) 0 var(--sp-1);display:flex}.page-intro h1{color:var(--ink-900);letter-spacing:-.01em;font-size:1.375rem;font-weight:700;line-height:1.2}.panel,.stat-card,.mini-card,.requirement-card,.auth-card,.single-page-card,.quick-actions-card,.certification-hero-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.panel,.stat-card,.mini-card,.single-page-card,.quick-actions-card{padding:var(--sp-6)}.panel-header,.requirement-header,.requirement-code-row,.topic-meta,.hero-meta-line{justify-content:space-between;align-items:center;gap:var(--sp-4);display:flex}.panel-header h3{color:var(--ink-900);margin-top:3px;font-size:.9375rem;font-weight:600}.dashboard-top-grid{gap:var(--sp-5);grid-template-columns:1.6fr .75fr;align-items:stretch;display:grid}.certification-hero-card{padding:var(--sp-7);background:linear-gradient(135deg, var(--navy-900) 0%, var(--navy-800) 100%);color:#fff;box-shadow:var(--shadow-md);border-color:#0a1f4414}.certification-hero-card h2{color:#fff;letter-spacing:-.005em;margin-top:3px;font-size:1.125rem;font-weight:700;line-height:1.25}.certification-hero-card .brand-eyebrow,.certification-hero-card .subtle-text,.certification-hero-card .hero-meta-line span{color:#c8daf599}.certification-hero-card .status-chip,.certification-hero-card .payment-chip.unpaid{color:#ffffffe0;background:#ffffff1a}.hero-summary-grid{gap:var(--sp-6);margin-top:var(--sp-5);grid-template-columns:120px 1fr;align-items:start;display:grid}.progress-ring-card{place-items:center;display:grid}.progress-ring{--progress:0%;background:radial-gradient(circle at center, #0f3978f2 54%, transparent 55%), conic-gradient(#5bab83 var(--progress), #ffffff1f 0);border-radius:50%;place-items:center;width:104px;height:104px;display:grid}.progress-ring>div{place-items:center;display:grid}.progress-ring strong{color:#fff;font-size:1.25rem;font-weight:700;line-height:1}.progress-ring span{color:#c8daf599;font-size:.6875rem;font-weight:500}.hero-cert-meta{gap:var(--sp-3);display:grid}.hero-meta-line{padding-bottom:var(--sp-2);border-bottom:1px solid #ffffff14;align-items:center;font-size:.8125rem}.hero-meta-line span{color:var(--ink-700)}.hero-meta-line strong{font-size:.8125rem;font-weight:600}.hero-primary-action{margin-top:var(--sp-3);width:fit-content}.quick-actions-card h3{color:var(--ink-900);margin-top:3px;font-size:.9375rem;font-weight:600}.quick-action-list{gap:var(--sp-2);margin-top:var(--sp-4);display:grid}.quick-action-button{border:1px solid var(--line);background:var(--surface-alt);color:var(--ink-800);justify-content:space-between;align-items:center;padding:12px 14px;font-size:.8125rem;font-weight:600;display:flex}.quick-action-button:hover{border-color:var(--blue-500);background:var(--blue-050);color:var(--blue-600)}.quick-action-button strong{color:var(--ink-400);letter-spacing:.14em;font-size:.625rem;font-weight:700}.stats-grid{gap:var(--sp-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat-card strong{margin-top:var(--sp-2);color:var(--ink-900);letter-spacing:-.01em;font-size:1.375rem;font-weight:700;line-height:1;display:block}.stat-card span{margin-top:var(--sp-2);color:var(--ink-500);font-size:.8125rem;line-height:1.5;display:block}.two-column-grid,.lower-dashboard-grid,.three-column-grid,.questionnaire-layout,.questionnaire-main,.questionnaire-content-grid{gap:var(--sp-5);display:grid}.two-column-grid,.lower-dashboard-grid{grid-template-columns:1.15fr .85fr}.three-column-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mini-card strong{color:var(--ink-900);margin-top:3px;font-size:.875rem;font-weight:600;display:block}.mini-card p{color:var(--ink-500);margin-top:var(--sp-2);font-size:.8125rem;line-height:1.6}.topic-progress-list,.message-list,.detail-list,.placeholder-grid,.requirements-stack,.auth-form,.field-grid{gap:var(--sp-3);display:grid}.detail-list>div{justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-3) 0;border-bottom:1px solid var(--line-light);font-size:.8125rem;display:flex}.detail-list>div:last-child{border-bottom:0}.detail-list>div span{color:var(--ink-500)}.detail-list>div strong{color:var(--ink-800);font-weight:600}.progress-bar{border-radius:var(--radius-pill);background:var(--surface-soft);height:6px;overflow:hidden}.progress-bar span{border-radius:inherit;background:var(--blue-500);height:100%;transition:width .4s var(--ease-out);display:block}.progress-bar.large{height:8px}.topic-progress-row{gap:6px;display:grid}.topic-progress-row .topic-meta{font-size:.8125rem}.topic-progress-row .topic-meta strong{color:var(--ink-800);font-size:.8125rem;font-weight:600}.topic-progress-row .topic-meta span{color:var(--ink-500);font-variant-numeric:tabular-nums;font-size:.75rem}.signature-upload{margin-top:var(--sp-5);padding-top:var(--sp-5);border-top:1px solid var(--line-light)}.signature-preview{margin-top:var(--sp-3);gap:var(--sp-2);display:grid}.signature-preview img{object-fit:contain;background:var(--surface-alt);border:1px solid var(--line);border-radius:var(--radius-md);max-width:100%;max-height:100px;padding:var(--sp-3)}.message-card{border-radius:var(--radius-md);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);font-size:.8125rem}.message-card strong{color:var(--ink-900);font-size:.8125rem;font-weight:600;display:block}.message-card p{margin-top:var(--sp-1);color:var(--ink-700);line-height:1.6}.message-card.info{background:var(--info-bg);border-color:#d4e3f7}.message-card.warning{background:var(--warning-bg);border-color:#f0e0c0}.message-card.success{background:var(--success-bg);border-color:#c4e5d4}.empty-state-panel{min-height:100%}.document-placeholder{text-align:center;place-items:center;gap:var(--sp-4);min-height:200px;display:grid}.document-placeholder-icon{border-radius:var(--radius-md);background:var(--surface-soft);width:56px;height:56px;color:var(--ink-400);letter-spacing:.14em;border:1px solid var(--line-light);place-items:center;font-size:.625rem;font-weight:700;display:grid}.questionnaire-layout{grid-template-columns:1fr}.questionnaire-intro{align-items:center}.saq-parts-panel{gap:var(--sp-4);display:grid}.saq-parts-list{gap:var(--sp-3);display:grid}.saq-document-shell{gap:var(--sp-4);grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:start;display:grid}.saq-document-nav{padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface-alt);gap:8px;display:grid;position:sticky;top:88px}.saq-document-nav button{border-radius:var(--radius-md);color:var(--ink-700);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;font-size:.78rem;font-weight:600;display:grid}.saq-document-nav button strong{font-size:.78rem;line-height:1.35}.saq-document-nav button span{background:var(--blue-050);width:22px;height:22px;color:var(--blue-600);border-radius:999px;place-items:center;font-size:.68rem;display:grid}.saq-part-status{background:var(--surface-alt);color:var(--ink-500);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;justify-self:end;padding:5px 8px;font-size:.68rem;font-weight:800}.saq-part-status.complete{color:#047857;background:#3ab78b24}.saq-part-status.pending{color:#92400e;background:#f59e0b24}.saq-part-status.locked{color:#475569;background:#64748b24}.saq-part-status.system{background:var(--blue-050);color:var(--blue-600)}.saq-document-nav button.active{background:var(--surface);color:var(--ink-900);box-shadow:var(--shadow-sm);border-color:#2c6fd659}.saq-part-item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow:hidden}.saq-part-item.open{border-color:var(--line-strong);box-shadow:var(--shadow-sm)}.saq-part-toggle{cursor:pointer;width:100%;padding:var(--sp-4) var(--sp-5);align-items:center;gap:var(--sp-3);text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto auto;display:grid}.saq-part-title-group{align-items:center;gap:var(--sp-4);min-width:0;display:flex}.saq-part-index{border-radius:var(--radius-pill);background:var(--blue-100);width:32px;height:32px;color:var(--navy-700);flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:flex}.saq-part-title-group>div{gap:3px;min-width:0;display:grid}.saq-part-title-group strong{color:var(--ink-900);font-size:.875rem;line-height:1.4}.saq-part-title-group p{color:var(--ink-500);margin:0;font-size:.75rem;line-height:1.45}.saq-part-toggle svg{width:18px;height:18px;color:var(--ink-400);transition:transform var(--transition-fast);flex-shrink:0}.saq-part-item.open .saq-part-toggle svg{transform:rotate(180deg)}.saq-part-body{padding:0 var(--sp-5) var(--sp-5);border-top:1px solid var(--line-light);background:var(--surface-alt)}.saq-part-content-grid{gap:var(--sp-3);padding-top:var(--sp-4);display:grid}.saq-part-save-row{justify-content:flex-end;display:flex}.official-saq-block{gap:var(--sp-3);display:grid}.official-question-row{gap:var(--sp-3);grid-template-columns:minmax(220px,.45fr) minmax(280px,1fr);align-items:start;display:grid}.official-note{color:var(--ink-500);margin:0;font-size:.8125rem;line-height:1.6}.eligibility-warning{border-radius:var(--radius-md);padding:var(--sp-3);color:#92400e;background:#fff7ed;border:1px solid #f59e0b59}.eligibility-warning p{color:#9a3412;margin:4px 0 0;font-size:.8125rem}.official-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);overflow-x:auto}.official-capture-table{border-collapse:collapse;width:100%;min-width:760px}.official-capture-table th,.official-capture-table td{border-bottom:1px solid var(--line-light);border-right:1px solid var(--line-light);vertical-align:top;padding:10px}.official-capture-table th:last-child,.official-capture-table td:last-child{border-right:0}.official-capture-table tr:last-child td{border-bottom:0}.official-capture-table th{background:var(--blue-050);color:var(--ink-800);text-align:left;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;line-height:1.4}.official-capture-table .field>span{display:none}.official-capture-table .field input,.official-capture-table .field textarea{border-color:var(--line);background:var(--surface-alt);min-width:0;font-size:.78rem}.official-capture-table .field textarea{min-height:76px}.official-capture-table.two-column th:first-child,.official-capture-table.two-column td:first-child{width:34%}.official-capture-table.facilities-table th:nth-child(2),.official-capture-table.facilities-table td:nth-child(2){width:22%}.official-capture-table.products-table{min-width:1040px}.official-capture-table.legal-exception-table{min-width:860px}.readonly-table-value{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--blue-050);min-height:40px;color:var(--ink-700);padding:9px 10px;font-size:.78rem;line-height:1.5}.questionnaire-part-callout{align-items:flex-start}.questionnaire-part-callout .ghost-button{width:fit-content}.auto-section-summary{gap:var(--sp-2);margin:0;display:grid}.auto-section-summary>div{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);padding-bottom:var(--sp-2);border-bottom:1px solid var(--line-light);display:flex}.auto-section-summary dt,.auto-section-summary dd{margin:0}.auto-section-summary dt{color:var(--ink-500);font-size:.75rem}.auto-section-summary dd{color:var(--ink-900);text-align:right;font-size:.8125rem;font-weight:600}.auto-section-entry-list{gap:var(--sp-3);display:grid}.auto-section-entry{gap:var(--sp-2);padding:var(--sp-4);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);display:grid}.auto-section-entry strong{color:var(--ink-900);font-size:.8125rem;line-height:1.45}.auto-section-lines{gap:var(--sp-1);display:grid}.auto-section-lines p,.auto-section-empty{color:var(--ink-700);font-size:.8125rem;line-height:1.68}.progress-overview-card h3{margin-top:3px;font-size:.875rem;font-weight:600}.progress-highlight{color:var(--blue-500);font-size:1.125rem;font-weight:700}.filter-row{gap:var(--sp-3);grid-template-columns:1.25fr .42fr .3fr;display:grid}.filter-field{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);min-height:44px;padding:0 var(--sp-4);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;display:flex}.filter-field:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 3px #2c6fd61a}.filter-field input,.filter-field select{width:100%;color:var(--ink-700);background:0 0;border:0;outline:0;font-size:.8125rem}.filter-field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238c9bb4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:100%;background-repeat:no-repeat;background-size:14px;padding-right:32px}.filter-field select:disabled{opacity:1;color:var(--ink-500);cursor:not-allowed}.filter-icon{color:var(--ink-400);margin-right:var(--sp-3);letter-spacing:.14em;font-size:.625rem;font-weight:700}.questionnaire-content-grid{grid-template-columns:280px 1fr;align-items:start}.questionnaire-sidebar{gap:var(--sp-4);top:var(--sp-4);display:grid;position:sticky}.topic-summary-panel h3{margin-top:3px;font-size:.875rem;font-weight:600}.topic-summary-panel .subtle-text{font-size:.8125rem}.panel.compact{padding:var(--sp-5)}.topic-nav{gap:var(--sp-2);display:grid}.topic-nav-item{justify-content:space-between;align-items:flex-start;gap:var(--sp-3);border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink-800);text-align:left;transition:all var(--transition-fast);cursor:pointer;padding:10px 12px;font-size:.8125rem;display:flex}.topic-nav-item:hover:not(.active){border-color:var(--line-strong);background:var(--surface-alt)}.topic-nav-item>div{gap:2px;display:grid}.topic-nav-item strong{color:var(--ink-900);font-size:.75rem;font-weight:600;line-height:1.25;display:block}.topic-nav-item span{color:var(--ink-500);font-size:.75rem;line-height:1.4;display:block}.topic-nav-item.active{background:var(--navy-900);border-color:var(--navy-900);color:#fff}.topic-nav-item.active strong,.topic-nav-item.active span{color:#ffffffe0}.topic-nav-item em{color:var(--ink-400);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.6875rem;font-style:normal;font-weight:700}.topic-nav-item.active em{color:#fff9}.requirements-column{gap:var(--sp-4);display:grid}.current-topic-card .panel-header,.requirement-header{align-items:flex-start}.current-topic-card h2{margin-top:3px;font-size:1.0625rem;font-weight:700}.questionnaire-meta{gap:var(--sp-2);display:flex}.requirement-card{padding:var(--sp-6)}.testing-block{margin-top:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-radius:var(--radius-md);background:var(--surface-alt);border:1px solid var(--line-light)}.topic-stepper{justify-content:space-between;gap:var(--sp-4);margin-top:var(--sp-1);display:flex}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px #2c6fd61a}.field textarea{resize:vertical}.save-state{color:var(--ink-400);letter-spacing:.02em;font-size:.6875rem;font-weight:600}.save-state.saving{color:var(--blue-500)}.save-state.saved{color:var(--success)}.auth-layout{background:var(--surface-alt);grid-template-columns:minmax(480px,.55fr) minmax(420px,.45fr);align-items:stretch;min-height:100vh;display:grid}.auth-hero{padding:var(--sp-12) var(--sp-10);color:#fff;background:var(--navy-900);justify-content:center;align-items:center;display:flex}.auth-hero-inner{align-content:center;gap:var(--sp-6);width:min(480px,100%);display:grid}.auth-brand-lockup{width:fit-content;max-width:100%;display:block;overflow:hidden}.auth-logo{object-fit:contain;flex:none;width:44px;height:44px;display:block}.auth-logo-hero{clip-path:inset(31% 14% 33%);transform-origin:50%;width:100%;max-width:36%;height:auto;transform:scale(1.79)}@media (width<=900px){.brand-shield-full{min-height:72px}.brand-logo-full{transform:scale(1.28)}.auth-logo-hero{transform:scale(1.34)}}@media (width<=640px){.brand-logo-full{transform:scale(1.22)}.auth-logo-hero{transform:scale(1.24)}}.auth-eyebrow{color:#c8d6f07a}.auth-hero h1{color:#fff;letter-spacing:-.01em;max-width:14ch;margin-top:0;font-size:1.5rem;font-weight:700;line-height:1.2}.auth-hero-copy{color:#c8daf599;max-width:42ch;font-size:.875rem;line-height:1.72}.auth-hero-panel{gap:var(--sp-3);display:grid}.auth-feature{padding:var(--sp-4) var(--sp-5);border-radius:var(--radius-md);background:#ffffff0a;border:1px solid #ffffff0f}.auth-feature strong{color:#ffffffe6;margin-top:3px;font-size:.875rem;font-weight:600;line-height:1.3;display:block}.auth-feature span{margin-top:var(--sp-1);color:#c8daf585;font-size:.8125rem;line-height:1.65;display:block}.credential-note{gap:var(--sp-1);display:grid}.credential-note .muted-label{color:#c8daf55c}.credential-note strong{color:#ffffffb8;font-size:.8125rem;font-weight:600;line-height:1.5;display:block}.auth-card{width:min(440px,100%);padding:var(--sp-8);margin:auto}.auth-card-header{gap:var(--sp-2);margin-bottom:var(--sp-6);display:grid}.auth-card h2,.single-page-card h2,.placeholder-card h2{color:var(--ink-900);margin-top:3px;font-size:1.125rem;font-weight:700}.auth-submit{width:100%;margin-top:var(--sp-1)}.auth-secondary{width:100%}.single-page-shell{min-height:calc(100vh - 4rem);padding:var(--sp-4) 0;background:var(--surface-alt);place-items:center;display:grid}.single-page-card{width:min(560px,100%)}.single-page-card.wide{width:min(760px,100%)}.single-page-card h2{margin-bottom:var(--sp-2)}.placeholder-page .page-intro{margin-bottom:var(--sp-1)}.placeholder-card{max-width:760px}.placeholder-grid{margin-top:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr))}.repository-page{gap:var(--sp-5)}.repository-card{max-width:960px}.repository-card-copy{max-width:680px}.repository-context-note{gap:var(--sp-2);margin-top:var(--sp-4);padding:var(--sp-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-alt);display:grid}.repository-context-note p{margin:0}.repository-download-grid{gap:var(--sp-3);margin-top:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.repository-download-card{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.repository-download-copy{gap:var(--sp-2);flex:1;min-width:0;display:grid}.repository-download-copy p{margin-top:0}.repository-file-type{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-500);font-size:.6875rem;font-weight:700;line-height:1.2}.repository-download-link{flex-shrink:0;justify-content:center;align-self:center;align-items:center;min-width:116px;text-decoration:none;display:inline-flex}.repository-actions-row{margin-top:var(--sp-4)}.repository-action-link{justify-content:center;align-items:center;display:inline-flex}.documents-page,.outputs-page{gap:var(--sp-5)}.documents-grid,.outputs-panels-grid{gap:var(--sp-5);grid-template-columns:1fr 1fr;display:grid}.documents-form-grid,.outputs-summary-grid{gap:var(--sp-4);margin-top:var(--sp-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.outputs-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.document-file-field{margin-top:var(--sp-4)}.document-file-chip{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-top:var(--sp-4);padding:var(--sp-3) var(--sp-4);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface-alt);display:flex}.documents-action-row{justify-content:flex-start;gap:var(--sp-2);margin-top:var(--sp-4);flex-wrap:wrap;display:flex}.admin-template-card{gap:var(--sp-3);display:grid}.admin-template-actions{margin-top:0}.danger-ghost{color:#b91c1c;border-color:#dc262647}.danger-ghost:hover{background:#fef2f2;border-color:#dc262673}.documents-list-stack,.outputs-list-stack,.outputs-checklist{gap:var(--sp-3);margin-top:var(--sp-4);display:grid}.document-list-item,.output-check-item{justify-content:space-between;align-items:flex-start;gap:var(--sp-4);display:flex}.document-list-copy,.output-section-lines{gap:var(--sp-2);display:grid}.document-list-header{justify-content:space-between;align-items:center;gap:var(--sp-3);display:flex}.empty-state-card{gap:var(--sp-2);display:grid}.output-check-item.success{background:var(--success-bg);border-color:#1a8f5c2e}.output-section-card{gap:var(--sp-3);display:grid}.output-section-card p{margin:0}.loading-panel,.error-panel{border-radius:var(--radius-lg);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-sm);padding:var(--sp-6);color:var(--ink-700);font-size:.875rem}@media (width<=1280px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-top-grid,.two-column-grid,.lower-dashboard-grid,.questionnaire-content-grid,.saq-structure-list,.capture-sections-grid,.auto-sections-grid{grid-template-columns:1fr}.questionnaire-sidebar{position:static}.saq-document-shell{grid-template-columns:1fr}.saq-document-nav{scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch;display:flex;position:static;overflow-x:auto}.saq-document-nav button{scroll-snap-align:start;min-width:min(280px,82vw)}}@media (width<=980px){:root{--page-gutter:24px}.auth-layout{grid-template-columns:1fr;display:grid}.auth-hero{padding:var(--sp-8) var(--sp-6)}.auth-card{padding:var(--sp-6);margin:0 auto}}@media (width<=820px){.app-shell{height:auto;min-height:100vh}.sidebar{width:min(320px, calc(100vw - (var(--page-gutter) * 2)));z-index:40;height:100vh;max-height:100vh;transform:translateX(calc(-100% - var(--sp-4)));transition:transform var(--transition-normal);position:fixed;overflow-y:auto}.sidebar.open{transform:translate(0)}.sidebar-mobile-header,.mobile-menu-button,.sidebar-close-button{display:flex}.sidebar-mobile-header,.sidebar-backdrop{display:block}.sidebar-brand-panel{display:none}.content-shell{min-height:auto;margin-left:0}.topbar{justify-content:space-between;gap:var(--sp-3);z-index:20;padding-top:var(--sp-4);padding-bottom:var(--sp-3);border-bottom:1px solid var(--line-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f9fcf5;position:sticky;top:0}.topbar-badge{text-align:right;min-height:44px;margin-left:auto}.page-content,.topbar{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}}@media (width<=720px){:root{--page-gutter:16px}.page-intro,.panel-header,.requirement-header,.hero-meta-line,.detail-list>div,.hero-actions,.topic-stepper,.saq-structure-item-header,.saq-structure-meta-row{flex-direction:column;align-items:start}.stats-grid,.three-column-grid,.placeholder-grid,.repository-download-grid,.documents-grid,.outputs-panels-grid,.outputs-summary-grid,.documents-form-grid,.filter-row,.hero-summary-grid{grid-template-columns:1fr}.repository-download-card,.document-list-item,.output-check-item{flex-direction:column;align-items:stretch}.repository-download-link{width:100%}.page-intro h1{font-size:1.25rem}.certification-hero-card h2{font-size:1rem}.questionnaire-content-grid{grid-template-columns:1fr}.questionnaire-layout,.questionnaire-main,.saq-parts-panel,.saq-parts-list,.saq-part-item,.saq-part-body,.questionnaire-content-grid,.requirements-column{width:100%;min-width:0}.questionnaire-intro{align-items:flex-start}.saq-parts-panel{padding:var(--sp-4)}.saq-document-shell{gap:var(--sp-3)}.saq-document-nav{margin-inline:calc(var(--sp-4) * -1);padding-inline:var(--sp-4);border-left:0;border-right:0;border-radius:0}.saq-document-nav button{grid-template-rows:auto auto;grid-template-columns:24px minmax(0,1fr);min-width:min(245px,78vw)}.saq-document-nav .saq-part-status{grid-column:2;justify-self:start;width:fit-content}.saq-part-toggle{padding:var(--sp-3);grid-template-columns:minmax(0,1fr) auto}.saq-part-toggle>.saq-part-status{grid-column:1/-1;justify-self:start;margin-left:44px}.saq-part-title-group{gap:var(--sp-3);align-items:flex-start}.saq-part-index{width:30px;height:30px}.saq-part-body{padding:0 var(--sp-3) var(--sp-3)}.official-question-row{grid-template-columns:1fr}.official-table-wrap{margin-inline:calc(var(--sp-3) * -1);border-left:0;border-right:0;border-radius:0}.official-capture-table{min-width:620px}.official-capture-table.products-table{min-width:860px}.official-capture-table.legal-exception-table{min-width:680px}.auto-section-summary{grid-template-columns:1fr}.questionnaire-content-grid.embedded,.questionnaire-sidebar{gap:var(--sp-3)}.topic-nav{gap:var(--sp-2);-webkit-overflow-scrolling:touch;padding-bottom:2px;display:flex;overflow-x:auto}.topic-nav-item{min-width:min(230px,76vw)}.current-topic-card,.requirement-card{padding:var(--sp-4)}.questionnaire-meta,.requirement-code-row{flex-wrap:wrap}.topic-stepper .ghost-button,.topic-stepper .primary-button{width:100%}.auth-layout{grid-template-columns:1fr}.sidebar{width:calc(100vw - (var(--page-gutter) * 2))}}.requirement-card{padding:var(--sp-6);transition:transform var(--transition-fast), box-shadow var(--transition-fast);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);margin-bottom:var(--sp-4)}.requirement-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.requirement-code{color:var(--blue-600);font-size:.875rem;font-weight:700}.requirement-text{margin-top:var(--sp-3);color:var(--ink-700);font-size:.8125rem;line-height:1.72}.testing-block{margin-top:var(--sp-4);padding:var(--sp-4) var(--sp-5);border-radius:var(--radius-md);background:var(--surface-alt);border:1px solid var(--line-light);border-left:3px solid var(--blue-400)}.testing-block p:last-child{margin-top:var(--sp-2);color:var(--ink-700);font-size:.8125rem;line-height:1.72}.save-state{color:var(--ink-400);letter-spacing:.02em;border-radius:var(--radius-pill);background:var(--surface-alt);transition:all var(--transition-fast);padding:3px 10px;font-size:.6875rem;font-weight:600}.save-state.saving{color:var(--blue-500);background:var(--blue-050)}.save-state.saved{color:var(--success);background:var(--success-bg)}.save-state.error,.error-text{color:var(--danger);font-size:.8125rem}.save-state.error{background:var(--danger-bg)}.info-text{color:var(--blue-500);font-size:.8125rem}.success-text{color:var(--success);font-size:.8125rem}.field{gap:var(--sp-2);display:grid}.field>span{color:var(--ink-800);font-size:.8125rem;font-weight:600}.field>span em{color:var(--ink-400);margin-left:8px;font-size:.6875rem;font-style:normal;font-weight:600}.field input,.field select,.field textarea{border-radius:var(--radius-md);border:1px solid var(--line);background:var(--surface);width:100%;color:var(--ink-900);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);outline:none;padding:10px 14px;font-size:.8125rem;line-height:1.6}.field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238c9bb4' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 14px center;background-repeat:no-repeat;background-size:14px;padding-right:36px}.field select option,.filter-field select option{color:var(--ink-900);background:var(--surface)}.checkbox-group{gap:var(--sp-2);padding:var(--sp-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);display:grid}.radio-group{grid-template-columns:repeat(auto-fit,minmax(90px,max-content));align-items:center}.checkbox-option{color:var(--ink-700);align-items:flex-start;gap:10px;font-size:.8125rem;line-height:1.5;display:flex}.field .checkbox-option input[type=checkbox]{width:17px;height:17px;accent-color:var(--blue-500);cursor:pointer;border-radius:5px;flex:none;margin:1px 0 0;padding:0}.field .checkbox-option input[type=radio]{width:17px;height:17px;accent-color:var(--blue-500);cursor:pointer;flex:none;margin:1px 0 0;padding:0}.checkbox-option span{font-weight:500}.field input[type=file]{background:var(--surface-alt);color:var(--ink-700);cursor:pointer;padding:8px 10px}.field input[type=file]::file-selector-button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:linear-gradient(180deg, #fff 0%, var(--blue-050) 100%);color:var(--ink-800);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);margin-right:12px;padding:8px 14px;font-weight:600}.field input[type=file]::file-selector-button{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:linear-gradient(180deg, #fff 0%, var(--blue-050) 100%);color:var(--ink-800);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast), box-shadow var(--transition-fast);margin-right:12px;padding:8px 14px;font-weight:600}.field input[type=file]:hover::file-selector-button{border-color:var(--blue-500);color:var(--blue-600);background:#fff;box-shadow:0 0 0 3px #2c6fd614}.field input[type=file]:hover::-webkit-file-upload-button{border-color:var(--blue-500);color:var(--blue-600);background:#fff;box-shadow:0 0 0 3px #2c6fd614}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue-500);background:#fff;box-shadow:0 0 0 3px #2c6fd61a}.requirement-code-row{align-items:center;gap:8px;display:flex}.requirement-header{justify-content:space-between;align-items:flex-start;display:flex}
