:root {
  --navy: #102a43;
  --navy-soft: #193a57;
  --ink: #102a43;
  --muted: #627282;
  --paper: #f3f6f8;
  --card: #ffffff;
  --line: #dbe3e9;
  --orange: #e2663a;
  --orange-dark: #bb4722;
  --green: #30a46c;
  --shadow: 0 22px 60px rgb(16 42 67 / 10%);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-synthesis: none;
}

.admin-view { max-width: 1300px; }
.admin-card { padding: 24px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.admin-card h2 { margin: 0 0 12px; font-size: 20px; }
.admin-card p, .admin-caption { color: var(--muted); font-size: 13px; line-height: 1.6; }
.admin-layout { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); gap: 22px; align-items: start; margin-top: 26px; }
.admin-form { display: grid; gap: 17px; max-width: 540px; }
.admin-view label { display: grid; gap: 7px; font-size: 12px; font-weight: 650; }
.admin-view input, .admin-view select { min-width: 0; width: 100%; padding: 11px; border: 1px solid #b8c6d0; border-radius: 7px; background: white; color: var(--ink); }
.admin-view button { padding: 10px 14px; border: 1px solid #b8c6d0; border-radius: 7px; background: white; color: var(--ink); cursor: pointer; }
.admin-view button:disabled { opacity: .5; cursor: default; }
.admin-view .admin-primary { color: white; background: var(--navy); border-color: var(--navy); }
.admin-view .admin-danger { color: #a62c24; border-color: #dab6b1; }
.admin-session, .admin-directory-heading, .admin-pagination, .admin-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.admin-session { padding: 20px 0; }
.admin-session span, .admin-user-list span { display: block; margin-top: 5px; font-size: 13px; overflow-wrap: anywhere; }
.admin-roles { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 24px; }
.admin-roles article { background: #eaf0f4; border-radius: 10px; padding: 17px; }
.admin-roles h3 { margin: 0 0 8px; font-size: 15px; text-transform: capitalize; }
.admin-roles p { margin: 0; font-size: 12px; line-height: 1.6; color: #405668; }
.admin-view small { color: var(--muted); font-size: 12px; line-height: 1.6; }
.admin-user-list article { display: grid; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.admin-user-list article > button { justify-self: start; }
.admin-role-form { display: flex; align-items: end; gap: 10px; }
.admin-role-form label { flex: 1; }
.admin-you { margin-left: 10px; }
.admin-pagination { margin-top: 20px; font-size: 13px; }
.admin-notice { padding: 14px 18px; border-radius: 8px; color: #185335; background: #e3f3e9; }
.admin-notice.error { color: #8c291e; background: #fbece9; }
.admin-delete { margin-top: 20px; border-color: #dba8a0; }
@media (max-width: 1050px) { .admin-layout { grid-template-columns: 1fr; } .admin-form { max-width: none; } }
@media (max-width: 600px) { .admin-roles { grid-template-columns: 1fr; } .admin-session, .admin-actions { align-items: start; flex-direction: column; } }
.case-view { max-width: 1400px; }
.case-card { padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); overflow-wrap: anywhere; }
.case-card h2, .case-card h3 { margin: 0 0 14px; }
.library-coverage-report { overflow-wrap: anywhere; }
.library-status-panel, .library-info-panel { min-width: 0; margin: 18px 0; padding: 18px; border: 1px solid var(--line); border-radius: 10px; background: #f7fafc; }
.library-status-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; }
.library-status-heading h3 { margin: 0; }
.library-status-badge { padding: 6px 12px; border: 1px solid #b8c6d0; border-radius: 20px; font-weight: 700; background: white; }
.library-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: 12px; margin: 16px 0; }
.library-metrics > div { min-width: 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; background: white; }
.library-metrics dt { color: var(--muted); font-size: 13px; line-height: 1.5; }
.library-metrics dd { margin: 6px 0 0; font-size: 26px; font-weight: 750; font-variant-numeric: tabular-nums; line-height: 1.2; overflow-wrap: anywhere; }
.library-info-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 310px), 1fr)); gap: 16px; }
.library-info-grid .library-info-panel { margin: 0; }
.library-info-panel p, .library-status-panel p, .library-details li { font-size: 14px; line-height: 1.6; }
.library-info-panel small { display: block; color: var(--muted); font-size: 12px; line-height: 1.5; }
.library-key-values { display: grid; gap: 10px; margin: 12px 0; }
.library-key-values > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 12px; border-bottom: 1px solid var(--line); padding-bottom: 8px; }
.library-key-values dt { color: var(--muted); }
.library-key-values dd { margin: 0; font-weight: 650; font-variant-numeric: tabular-nums; }
.library-details { margin: 16px 0; padding: 14px 0; border-top: 1px solid var(--line); }
.library-details summary { cursor: pointer; font-weight: 650; line-height: 1.5; }
.library-details summary:focus-visible { outline: 2px solid var(--navy); outline-offset: 4px; }
.library-folder-picker { min-width: 0; margin: 18px 0; padding: 16px; border: 1px solid var(--line); border-radius: 10px; }
.library-folder-picker legend { padding: 0 6px; font-weight: 700; }
.library-folder-options { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 10px; }
.library-folder-options .library-folder-option { display: flex; align-items: flex-start; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--card); cursor: pointer; }
.library-folder-option input[type="checkbox"] { flex: 0 0 20px; width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--navy); }
.library-folder-option span { min-width: 0; overflow-wrap: anywhere; line-height: 1.5; }
.library-folder-option:has(input:checked) { border-color: var(--navy); background: #edf4fa; }
.library-folder-option:focus-within { outline: 2px solid var(--navy); outline-offset: 2px; }
.library-clear-index { margin: 20px 0; padding-top: 16px; border-top: 1px solid var(--line); }
.case-form { display: grid; gap: 14px; }
.case-form fieldset { min-width: 0; }
.case-form label { display: grid; gap: 7px; font-size: 12px; font-weight: 700; }
.case-form input, .case-form select, .case-form textarea { min-width: 0; width: 100%; padding: 10px; border: 1px solid #b8c6d0; border-radius: 7px; background: white; color: var(--ink); }
.case-form textarea { min-height: 90px; resize: vertical; }
.case-view button { padding: 10px 14px; border: 1px solid #b8c6d0; border-radius: 7px; background: white; color: var(--ink); cursor: pointer; }
.case-view button:disabled { opacity: .5; cursor: default; }
.case-view .case-primary { color: white; background: var(--navy); border-color: var(--navy); }
.case-session, .case-list > div:first-child, .case-detail-head, .case-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.case-session { padding: 20px 0; }
.case-session span { display: block; margin-top: 5px; color: var(--muted); font-size: 13px; }
.case-layout { display: grid; grid-template-columns: minmax(280px, .85fr) minmax(0, 1.6fr); gap: 22px; align-items: start; }
.case-layout > div { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; }
.case-list > button { display: flex; width: 100%; margin-top: 10px; text-align: left; justify-content: space-between; gap: 12px; }
.case-list > button.selected { border-color: var(--orange); background: #fff8f0; }
.case-list > button span, .case-list > button strong { display: block; }
.case-list > button strong { margin-bottom: 5px; font-size: 11px; }
.case-list > button small { flex: none; color: var(--muted); }
.case-pagination { margin-top: 18px; font-size: 13px; }
.case-detail-head span { color: var(--orange-dark); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.case-detail dl { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 18px 0; }
.case-detail dl div { padding: 12px; border-radius: 8px; background: #edf3f6; }
.case-detail dt { color: var(--muted); font-size: 10px; text-transform: uppercase; }
.case-detail dd { margin: 4px 0 0; overflow-wrap: anywhere; font-size: 13px; font-weight: 700; }
.shared-guide-editor { min-width: 0; }
.shared-guide-editor > .case-form { display: grid; gap: 1rem; }
.shared-guide-editor fieldset { min-width: 0; }
.case-description { white-space: pre-wrap; line-height: 1.6; }
.case-policy-note, .case-target-panel > p, .case-target-missing { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.55; }
.case-target-panel { margin: 18px 0; padding: 16px; border: 1px solid #cbd7df; border-radius: 10px; background: #f7fafb; }
.case-routing-panel { margin: 18px 0; padding: 16px; border: 1px solid #cbd7df; border-left: 4px solid var(--navy-soft); border-radius: 10px; background: #f7fafb; }
.case-routing-panel > span { color: var(--muted); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.case-routing-panel h3, .case-routing-panel p { margin: 6px 0; }
.case-target-heading { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.case-target-heading span { color: var(--orange-dark); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.case-target-heading h3 { margin: 5px 0 0; }
.case-target-heading small { max-width: 320px; color: var(--muted); text-align: right; line-height: 1.45; }
.case-target-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 14px 0; }
.case-target-grid article { padding: 12px; border-radius: 8px; background: white; }
.case-target-grid article > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.case-target-grid time { display: block; margin-top: 8px; color: var(--muted); font-size: 12px; }
.case-target-badge { padding: 4px 7px; border-radius: 999px; color: #285942; background: #e3f3e9; font-size: 10px; font-weight: 800; }
.case-target-badge.warning, .case-queue-target.warning { color: #76510c; background: #fff1c7; }
.case-target-badge.breached, .case-queue-target.breached { color: #8c291e; background: #fbece9; }
.case-target-badge.unavailable { color: #596874; background: #e8edf0; }
.case-field-note { display: block; margin-top: -7px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.case-asset-panel { margin: 18px 0; padding: 16px; border: 1px solid #cbd7df; border-left: 4px solid var(--green); border-radius: 10px; background: #f7fafb; }
.case-asset-panel > div:first-child > span { color: #285942; font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.case-asset-panel h3, .case-asset-panel > div:first-child p { margin: 5px 0; }
.case-asset-panel > p { line-height: 1.55; overflow-wrap: anywhere; }
.case-asset-panel dl { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-block: 14px; }
.case-problem-panel { margin: 18px 0; padding: 16px; border: 1px solid #e3c693; border-left: 4px solid var(--orange); border-radius: 10px; background: #fffaf1; }
.case-problem-panel > span { color: var(--orange-dark); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.case-problem-panel > article { margin-top: 12px; padding-top: 12px; border-top: 1px solid #ead9bb; }
.case-problem-panel h3, .case-problem-panel p { margin: 4px 0; overflow-wrap: anywhere; }
.case-problem-panel small, .case-problem-update time { color: var(--muted); font-size: 11px; }
.case-problem-update { margin-top: 10px; padding: 10px; border-radius: 8px; background: white; }
.case-problem-update time { display: block; margin-top: 3px; }
.problem-links { margin: 18px 0; }
.problem-links article { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.problem-links article div { display: grid; gap: 4px; min-width: 0; }
.problem-links article strong { overflow-wrap: anywhere; }
.problem-links article small { color: var(--muted); }
.advisory-outcome { flex: 0 1 520px; grid-template-columns: minmax(110px, .8fr) minmax(130px, 1fr) minmax(180px, 1.6fr) auto; align-items: end; }
.advisory-outcome button { min-height: 39px; }
.problem-inline { grid-template-columns: minmax(0, 1fr) auto; align-items: end; margin-top: 14px; }
.case-prior { margin-top: 16px; padding-top: 14px; border-top: 1px solid #d6e0e6; }
.case-prior h4 { margin: 0 0 10px; }
.case-prior article { display: grid; gap: 4px; padding: 10px 0; border-top: 1px solid #e2e8eb; }
.case-prior article span, .case-prior > p { color: var(--muted); font-size: 11px; }
.case-queue-target { padding: 2px 5px; border-radius: 4px; font-size: 10px; }
.case-update-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 22px; }
.case-update-grid form, .case-note { padding: 18px; border-radius: 10px; background: #f5f8fa; }
.case-note { margin-top: 16px; }
.case-note p, .case-empty p { color: var(--muted); font-size: 13px; }
.case-timeline { margin-top: 24px; }
.case-timeline article { padding: 16px 0; border-top: 1px solid var(--line); }
.case-timeline article div, .case-timeline-head { display: flex; justify-content: space-between; gap: 12px; }
.case-timeline-head { align-items: center; }
.case-timeline article p { white-space: pre-wrap; line-height: 1.55; }
.case-timeline time, .case-timeline small { color: var(--muted); font-size: 11px; }
.case-notice { padding: 14px 18px; border-radius: 8px; color: #185335; background: #e3f3e9; }
.case-notice.error { color: #8c291e; background: #fbece9; }
@media (max-width: 1000px) { .case-layout { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 600px) { .case-session, .case-detail-head, .case-timeline article div, .case-target-heading, .problem-links article { align-items: start; flex-direction: column; } .case-list > button { flex-wrap: wrap; } .case-detail dl, .case-update-grid, .case-target-grid, .case-asset-panel dl, .problem-inline, .advisory-outcome { grid-template-columns: 1fr; width: 100%; } .case-target-heading small { text-align: left; } }

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: var(--paper); }
button, input, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid rgb(203 104 56 / 32%); outline-offset: 3px; }
.skip-link { position: fixed; z-index: 100; top: 12px; left: 12px; padding: 10px 14px; border-radius: 8px; color: white; background: var(--navy); transform: translateY(-160%); transition: transform .18s ease; }
.skip-link:focus { transform: translateY(0); }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 272px minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; height: 100dvh; overflow-y: auto; display: flex; flex-direction: column; padding: 30px 20px 22px; color: #d9e1e5; background: linear-gradient(180deg, #102a43 0%, #0b2238 100%); box-shadow: 12px 0 40px rgb(16 42 67 / 8%); }
.sidebar > * { flex-shrink: 0; }
.brand { display: flex; align-items: center; gap: 13px; width: fit-content; padding: 0 8px; border: 0; color: white; background: none; cursor: pointer; text-align: left; }
.brand-mark { position: relative; display: grid; width: 42px; height: 42px; border: 1px solid rgb(255 255 255 / 35%); border-radius: 12px; background: rgb(255 255 255 / 7%); place-items: center; font: italic 20px Georgia, serif; }
.brand-mark::after { position: absolute; top: -4px; right: -4px; width: 7px; height: 7px; border-radius: 50%; background: var(--orange); content: ""; }
.brand strong { display: block; letter-spacing: .08em; font-size: 20px; line-height: 1; }
.brand small { display: block; margin-top: 8px; color: #8ea0ad; text-transform: uppercase; letter-spacing: .13em; font-size: 10px; }
.sidebar nav { display: grid; gap: 6px; margin-top: 44px; }
.sidebar nav button { display: flex; align-items: center; gap: 14px; width: 100%; min-height: 46px; padding: 0 14px; border: 1px solid transparent; border-radius: 10px; color: #afc0cd; background: none; cursor: pointer; text-align: left; transition: color .18s ease, background .18s ease, border-color .18s ease; }
.sidebar nav button:hover { color: white; background: rgb(255 255 255 / 5%); }
.sidebar nav button.active { border-color: rgb(255 255 255 / 9%); color: white; background: rgb(255 255 255 / 9%); box-shadow: inset 3px 0 0 var(--orange); }
.sidebar nav span { width: 16px; color: #a9bec9; text-align: center; }
.sidebar .secondary-navigation { margin-top: 16px; }
.navigation-group summary { padding: 12px 14px; border-radius: 8px; color: #c0c9cf; cursor: pointer; font-size: 12px; font-weight: 700; }
.navigation-group > div { display: grid; gap: 6px; }
.workflow-overview { margin-bottom: 24px; }
.workflow-links { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 16px; }
.workflow-links button { padding: 10px 12px; border: 1px solid #b8c6d0; border-radius: 8px; color: var(--ink); background: white; cursor: pointer; }
.sidebar-status { margin-top: auto; padding: 24px 7px 19px; border-top: 1px solid rgb(255 255 255 / 10%); border-bottom: 1px solid rgb(255 255 255 / 10%); }
.overline { margin: 0; color: #526574; letter-spacing: .17em; font-size: 10px; font-weight: 800; }
.status-row { display: flex; justify-content: space-between; align-items: center; margin-top: 20px; font-size: 11px; }
.status-row span { display: flex; align-items: center; gap: 9px; color: #c0c9cf; }
.status-row i, .source-health i, .confidence i, .dropbox-list article b i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 3px rgb(88 184 137 / 10%); }
.status-row small { color: #6fc299; text-transform: uppercase; font-size: 9px; }
.status-row.links-only i { background: #e1a15e; }
.status-row.not-connected i { background: #8e969a; box-shadow: none; }
.status-row.not-connected small { color: #9ba3a6; }
.profile { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; gap: 10px; align-items: center; padding: 18px 7px 0; }
.profile > span { display: grid; width: 34px; height: 34px; border-radius: 50%; color: white; background: var(--orange); place-items: center; font-size: 11px; font-weight: 800; }
.profile strong, .profile small { display: block; }
.profile strong { color: white; font-size: 11px; }
.profile small { margin-top: 4px; color: #7f919e; font-size: 9px; }
.profile button { border: 0; color: #718591; background: none; cursor: pointer; }
.workspace { min-width: 0; }
.topbar { position: sticky; z-index: 20; top: 0; display: flex; justify-content: space-between; align-items: center; height: 70px; padding: 0 42px; border-bottom: 1px solid rgb(219 227 233 / 86%); background: rgb(243 246 248 / 88%); backdrop-filter: blur(18px); }
.top-actions { display: flex; gap: 24px; align-items: center; margin-left: auto; }
.source-health { display: flex; gap: 9px; align-items: center; padding-right: 24px; border-right: 1px solid var(--line); color: #5e706c; letter-spacing: .07em; text-transform: uppercase; font-size: 10px; font-weight: 700; }
.top-actions a { color: var(--ink); text-decoration: none; font-size: 11px; font-weight: 700; }
.content { width: min(100%, 1180px); margin: 0 auto; padding: 66px 38px 88px; }
.catalog-status { width: min(100%, 1180px); margin: 0 auto; padding: 18px 38px 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.catalog-status button { margin-left: 6px; padding: 5px 9px; border: 1px solid #b8c6d0; border-radius: 7px; color: var(--ink); background: white; cursor: pointer; }
.assist-view { width: min(100%, 920px); }
.intro { margin: 0 auto 32px; text-align: left; }
.agent-badge { display: inline-flex; align-items: center; gap: 9px; padding: 8px 11px; border: 1px solid #d9e3ea; border-radius: 999px; color: #486477; background: rgb(255 255 255 / 72%); letter-spacing: .12em; font-size: 9px; font-weight: 800; }
.agent-badge i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgb(48 164 108 / 10%); }
.intro h1, .section-title h1 { margin: 22px 0 14px; font: 500 clamp(42px, 5vw, 64px)/1.02 ui-serif, Georgia, "Times New Roman", serif; letter-spacing: -.045em; }
.intro h1 em { color: var(--orange); font-weight: 400; }
.intro p { max-width: 720px; margin: 0; color: var(--muted); line-height: 1.7; font-size: 15px; }
.trust-strip { display: flex; flex-wrap: wrap; gap: 12px 22px; margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); color: #536b7b; font-size: 10px; font-weight: 700; }
.trust-strip span { display: flex; align-items: center; gap: 8px; }
.trust-strip b { color: var(--orange); font-size: 9px; letter-spacing: .08em; }
.ask-box { overflow: hidden; border: 1px solid #dbe3e9; border-radius: 16px; background: var(--card); box-shadow: var(--shadow); }
.ai-disclosure { margin: 14px 0 0; color: #526574; font-size: 12px; line-height: 1.6; }
.ask-box label { display: block; padding: 20px 20px 6px; letter-spacing: .13em; font-size: 10px; font-weight: 800; }
.ask-box textarea { display: block; width: 100%; min-height: 105px; resize: vertical; padding: 8px 20px 18px; border: 0; outline: 0; color: var(--ink); background: transparent; line-height: 1.6; font-size: 15px; }
.equipment-intake { margin: 0; padding: 16px 20px 18px; border: 0; border-top: 1px solid #e6e1d9; background: #fbf9f5; }
.equipment-intake legend { float: left; width: 100%; margin-bottom: 12px; padding: 0; color: var(--ink); letter-spacing: .1em; text-transform: uppercase; font-size: 9px; font-weight: 800; }
.equipment-intake legend span { margin-left: 8px; color: #969891; letter-spacing: 0; text-transform: none; font-weight: 500; }
.equipment-grid { clear: both; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.equipment-grid label { padding: 0; color: #687074; letter-spacing: 0; font-size: 10px; }
.equipment-grid input, .equipment-grid select { display: block; width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #d5d0c7; border-radius: 5px; color: var(--ink); background: white; font: inherit; }
.ask-footer { display: flex; justify-content: space-between; align-items: center; gap: 20px; padding: 11px 12px 11px 20px; border-top: 1px solid #e6e1d9; }
.ask-footer > span { color: #aaa9a3; font-size: 10px; }
kbd { padding: 2px 5px; border: 1px solid #d8d4cd; border-radius: 3px; background: #f6f4ef; font: inherit; }
.ask-footer button, .dropbox-note button { display: flex; justify-content: space-between; gap: 40px; min-width: 170px; padding: 15px 17px; border: 0; border-radius: 6px; color: white; background: var(--orange); cursor: pointer; font-size: 11px; font-weight: 800; box-shadow: 0 8px 18px rgb(203 104 56 / 20%); }
.ask-footer button:hover, .dropbox-note button:hover { background: var(--orange-dark); }
.guided-intake-launch { display: flex; align-items: center; gap: 12px; padding: 14px 20px; border-top: 1px solid #e6e1d9; }
.guided-intake-launch button, .guided-actions button, .guided-question button { min-height: 38px; padding: 9px 12px; border: 1px solid #c9d5dc; border-radius: 7px; color: #304e62; background: white; cursor: pointer; font: inherit; font-size: 11px; font-weight: 700; }
.guided-intake-launch span { color: #687b88; font-size: 11px; }
.guided-intake { margin: 0; padding: 20px; border: 0; border-top: 1px solid #dbe3e9; background: #f2f7f9; }
.guided-intake legend { float: left; width: 100%; padding: 0; color: var(--ink); font-size: 13px; font-weight: 800; }
.guided-intake > p { clear: both; margin: 8px 0 14px; color: #617582; font-size: 12px; line-height: 1.5; }
.guided-question { padding: 8px 0; }
.guided-question label { padding: 0; letter-spacing: 0; font-size: 12px; }
.guided-question > span { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; margin-top: 7px; }
.guided-intake input { min-width: 0; padding: 10px 11px; border: 1px solid #c9d5dc; border-radius: 7px; color: var(--ink); background: white; font: inherit; }
.guided-intake .guided-status { min-height: 18px; margin-bottom: 6px; color: #8c3e20; font-weight: 700; }
.guided-actions { display: flex; justify-content: flex-end; gap: 9px; }
.guided-actions button:last-child { border-color: var(--orange); color: white; background: var(--orange); }
.guided-intake-launch button:hover, .guided-actions button:hover, .guided-question button:hover { border-color: #9fb2bf; background: #edf3f6; }
.guided-actions button:last-child:hover { background: var(--orange-dark); }
button:disabled { cursor: not-allowed; opacity: .58; }
.suggestions { display: flex; align-items: center; flex-wrap: wrap; gap: 9px; margin-top: 14px; }
.suggestions > span { margin-right: 5px; color: #9f9c94; letter-spacing: .16em; font-size: 8px; font-weight: 800; }
.suggestions button { padding: 9px 12px; border: 1px solid #dfdad1; border-radius: 999px; color: #687074; background: rgb(255 255 255 / 65%); cursor: pointer; font-size: 9px; }
.suggestions button:hover { border-color: #c4b3a5; color: var(--orange-dark); }
.suggestions b { margin-left: 8px; color: var(--orange); }
.generation-status { display: flex; gap: 16px; align-items: center; margin-top: 30px; padding: 22px; border: 1px solid #e3d4c7; border-radius: 10px; background: #fff9f3; }
.generation-status > span { display: grid; width: 36px; height: 36px; border-radius: 50%; color: white; background: var(--orange); place-items: center; animation: pulse 1s infinite alternate; }
.generation-status p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
@keyframes pulse { to { transform: scale(1.08); box-shadow: 0 0 0 8px rgb(203 104 56 / 10%); } }
.past-solutions { margin-top: 30px; padding: 22px; border: 1px solid #c9d9d0; border-radius: 11px; background: #f3f8f4; box-shadow: 0 10px 25px rgb(22 35 42 / 4%); }
.past-solutions.no-match { border-color: #ded6c9; background: #faf7f1; }
.past-solutions.no-match > div > span, .past-solutions-head span { color: #4d8068; letter-spacing: .14em; font-size: 9px; font-weight: 800; }
.past-solutions.no-match h2, .past-solutions-head h2 { margin: 7px 0 0; font: 400 25px Georgia, serif; }
.past-solutions.no-match p, .past-solutions-head p { margin: 7px 0 0; color: var(--muted); line-height: 1.5; font-size: 11px; }
.past-solutions-head { display: flex; justify-content: space-between; gap: 22px; align-items: flex-start; }
.past-solutions-head > strong { flex: 0 0 auto; padding: 8px 10px; border-radius: 999px; color: #357657; background: white; font-size: 9px; }
.past-solution-list { display: grid; gap: 10px; margin-top: 18px; }
.past-solution-list article { padding: 18px; border: 1px solid #d7ded7; border-radius: 8px; background: white; }
.past-solution-list article.best-match { border-left: 4px solid #4d9f76; }
.past-solution-meta { display: flex; justify-content: space-between; gap: 16px; color: #688176; font-size: 8px; }
.past-solution-meta span { letter-spacing: .12em; font-weight: 800; }
.past-solution-list h3 { margin: 9px 0 7px; font: 400 18px Georgia, serif; }
.past-solution-list article > p { margin: 0; color: #56666b; line-height: 1.6; font-size: 11px; }
.past-solution-sources { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; margin-top: 13px; }
.past-solution-sources > span { margin-right: 3px; color: #85918b; letter-spacing: .12em; font-size: 7px; font-weight: 800; }
.past-solution-sources button { padding: 5px 7px; border: 1px solid #d9ded9; border-radius: 4px; color: #496659; background: #f7faf8; cursor: pointer; font-size: 8px; }
.past-solution-list footer { display: flex; justify-content: flex-end; gap: 8px; margin-top: 13px; }
.past-solution-list footer button { padding: 8px 10px; border: 1px solid #bfcac3; border-radius: 5px; color: #375e4b; background: white; cursor: pointer; font-size: 9px; font-weight: 800; }
.past-solution-list footer .copy-resolution { color: white; border-color: #3f7d60; background: #3f7d60; }
.answer-card { scroll-margin-top: 85px; margin-top: 34px; border: 1px solid #d6d0c6; border-radius: 12px; background: var(--card); box-shadow: var(--shadow); }
.answer-context { padding: 18px 24px; border-bottom: 1px solid #e4ded5; background: #f7f3eb; }
.answer-context span, .answer-head span, .solution-panel > span, .source-list > span, .steps-heading > span { color: #a25b3c; letter-spacing: .14em; font-size: 9px; font-weight: 800; }
.answer-context p { margin: 5px 0 0; font-size: 12px; }
.equipment-context { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 11px; }
.equipment-context span { padding: 6px 8px; border: 1px solid #ddd5c9; border-radius: 5px; color: #53616a; background: white; letter-spacing: 0; font-size: 9px; font-weight: 500; }
.equipment-context b { margin-right: 5px; color: #8d4d32; }
.reuse-banner { display: flex; gap: 12px; align-items: center; padding: 13px 24px; border-bottom: 1px solid #cfe0d5; color: #345f4b; background: #edf7f1; }
.reuse-banner > span { display: grid; flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; color: white; background: #4d9f76; place-items: center; }
.reuse-banner p { margin: 0; line-height: 1.45; font-size: 10px; }
.answer-head { display: flex; justify-content: space-between; gap: 24px; align-items: flex-start; padding: 28px 28px 14px; }
.answer-head h2 { margin: 9px 0 0; font: 400 32px/1.12 Georgia, serif; letter-spacing: -.02em; }
.confidence { min-width: 100px; padding: 10px 12px; border: 1px solid #d9e8dd; border-radius: 7px; background: #f4faf6; }
.confidence small, .confidence strong { display: block; }
.confidence small { color: #8a9690; letter-spacing: .1em; font-size: 8px; }
.confidence strong { margin-top: 5px; color: #34785a; font-size: 11px; }
.confidence i { display: inline-block; }
.answer-summary { margin: 0; padding: 0 28px 24px; color: #5f6b6f; line-height: 1.7; font-size: 14px; }
.document-evidence { margin: 0 28px 22px; padding: 18px; border: 1px solid #cdd8dd; border-radius: 8px; background: #f5f9fa; }
.document-evidence pre { white-space: pre-wrap; }
.document-evidence > div { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.document-evidence > div span, .document-evidence.empty > span { color: #476c7d; letter-spacing: .13em; font-size: 8px; font-weight: 800; }
.document-evidence > div strong { color: #3a5d6d; font-size: 9px; }
.document-evidence ol { display: grid; gap: 8px; margin: 13px 0 0; padding: 0; list-style: none; }
.document-evidence li button { display: grid; width: 100%; gap: 4px; padding: 11px 12px; border: 1px solid #d7e0e3; border-radius: 6px; color: var(--ink); background: white; cursor: pointer; text-align: left; }
.document-evidence li button:hover { border-color: #94aeb9; }
.document-evidence li b { font-size: 10px; }
.document-evidence li small { color: #5f6e74; line-height: 1.45; font-size: 9px; }
.document-evidence li em { color: #6d8995; font-size: 8px; font-style: normal; }
.document-evidence > p { margin: 11px 0 0; color: #78868b; font-size: 8px; }
.document-evidence.empty > p { margin-top: 8px; line-height: 1.5; font-size: 10px; }
.solution-panel { margin: 0 28px 28px; padding: 18px 20px; border-left: 3px solid var(--orange); background: #f7eee5; }
.solution-panel p { margin: 8px 0 0; line-height: 1.65; font-size: 13px; }
.steps { padding: 0 28px; }
.steps-heading { padding: 4px 0 10px; }
.steps article { display: grid; grid-template-columns: 42px 1fr; gap: 16px; padding: 20px 0; border-top: 1px solid #e9e4dc; }
.steps article > span { color: var(--orange); font: italic 19px Georgia, serif; }
.steps h3 { margin: 0 0 6px; font-size: 13px; }
.steps p { margin: 0; color: #667075; line-height: 1.6; font-size: 12px; }
.safety-note { display: flex; gap: 13px; margin: 20px 28px; padding: 15px 17px; border: 1px solid #ead7bd; border-radius: 7px; background: #fff7e9; }
.safety-note > span { display: grid; flex: 0 0 auto; width: 22px; height: 22px; border-radius: 50%; color: white; background: #c88b3d; place-items: center; font-weight: 800; }
.safety-note p { margin: 1px 0 0; color: #705f4a; line-height: 1.55; font-size: 11px; }
.answer-footer { display: flex; justify-content: space-between; align-items: end; gap: 20px; padding: 22px 28px; border-top: 1px solid #e5dfd6; }
.approval-banner { display: grid; grid-template-columns: auto 1fr; gap: 4px 14px; align-items: center; margin: 20px 28px 12px; padding: 14px 16px; border: 1px solid #e1cbb6; border-radius: 7px; background: #fff7eb; }
.approval-banner span { grid-row: 1 / 3; color: #9b5d30; letter-spacing: .12em; font-size: 8px; font-weight: 800; }
.approval-banner strong { font-size: 12px; }
.approval-banner small { color: var(--muted); font-size: 9px; }
.approval-banner.approved { border-color: #bcd9c8; background: #f2faf5; }
.approval-banner.approved span { color: #34785a; }
.approval-banner.expired { border-color: #e2b9b3; background: #fbebe8; }
.review-note { margin: 0 28px 22px; padding: 14px 16px; border-left: 3px solid #c77652; background: #f7f1e9; }
.review-note span { color: #8d4d32; letter-spacing: .12em; font-size: 9px; font-weight: 800; }
.review-governance { display: flex; flex-wrap: wrap; gap: 7px 14px; align-items: center; }
.review-governance strong { color: var(--ink); font-size: 10px; }
.review-governance small { color: var(--muted); font-size: 10px; }
.review-note.due-soon, .review-note.unscheduled { border-left-color: #b97627; background: #fff6e8; }
.review-note.overdue { border-left-color: #b53c30; background: #fbebe8; }
.review-note p { margin: 6px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.review-note .review-alert { color: #7a3b2d; font-weight: 700; }
.review-note button { margin-top: 10px; padding: 0; border: 0; color: #8d4d32; background: none; cursor: pointer; font-size: 10px; font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.guidance-report { margin: 0 28px 24px; padding: 20px; border: 1px solid #d6d0c6; border-radius: 8px; background: #fbfaf7; }
.guidance-report-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; }
.guidance-report-head span { color: var(--orange-dark); letter-spacing: .12em; font-size: 9px; font-weight: 800; }
.guidance-report-head h3 { margin: 4px 0 0; color: var(--navy); font-size: 18px; }
.guidance-report-head button { border: 0; color: var(--muted); background: none; cursor: pointer; font-size: 24px; line-height: 1; }
.guidance-report > p { margin: 12px 0 18px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.guidance-report label { display: block; margin: 12px 0 6px; color: var(--ink); font-size: 11px; font-weight: 800; }
.guidance-report select, .guidance-report textarea { width: 100%; padding: 11px 12px; border: 1px solid #cbc5bb; border-radius: 5px; color: var(--ink); background: white; }
.guidance-report textarea { resize: vertical; line-height: 1.5; }
.report-warning { margin-top: 12px; padding: 11px 13px; border-left: 3px solid #b53c30; color: #713028; background: #fbebe8; font-size: 11px; line-height: 1.5; }
.guidance-report-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 16px; }
.guidance-report-actions span { color: var(--muted); font-size: 10px; line-height: 1.45; }
.guidance-report-actions button { flex: 0 0 auto; padding: 10px 13px; border: 0; border-radius: 5px; color: white; background: var(--navy); cursor: pointer; font-size: 10px; font-weight: 800; }
.pilot-feedback { display: flex; justify-content: space-between; gap: 20px; align-items: center; margin: 0 28px 22px; padding: 16px; border: 1px solid #d7dfd8; border-radius: 8px; background: #f4f8f4; }
.pilot-feedback span, .pilot-feedback strong, .pilot-feedback small { display: block; }
.pilot-feedback span { color: #4d8068; letter-spacing: .12em; font-size: 8px; font-weight: 800; }
.pilot-feedback strong { margin-top: 4px; font-size: 12px; }
.pilot-feedback small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.pilot-feedback > div:last-child { display: flex; flex-wrap: wrap; gap: 7px; justify-content: flex-end; }
.pilot-feedback button { padding: 8px 10px; border: 1px solid #bdc9c0; border-radius: 999px; color: #496659; background: white; cursor: pointer; font-size: 9px; }
.pilot-feedback button.selected { border-color: #3f7d60; color: white; background: #3f7d60; }
.case-handoff { margin: 0 28px 24px; padding: 20px; border: 1px solid #cbd7df; border-radius: 8px; background: #f7fafb; }
.case-handoff > p { margin: 12px 0 18px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.case-handoff label { display: block; margin-top: 12px; color: var(--ink); font-size: 10px; font-weight: 800; }
.case-handoff input, .case-handoff select, .case-handoff textarea { display: block; width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #c8d0d4; border-radius: 5px; color: var(--ink); background: white; }
.case-handoff textarea { resize: vertical; line-height: 1.5; }
.handoff-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 12px; }
.source-list { min-width: 0; }
.source-list > .reference-label { width: 100%; margin-bottom: 4px; }
.source-list .capture-time { display: block; margin-top: 5px; color: var(--muted); font-size: 9px; }
.source-list ul { display: grid; gap: 7px; margin: 12px 0 0; padding: 0; list-style: none; }
.source-list li { display: grid; gap: 2px; }
.source-list li > span, .source-list a, .source-list button { width: fit-content; padding: 0; border: 0; color: #536a75; background: none; font-size: 10px; font-weight: 700; text-align: left; }
.source-list a, .source-list button { cursor: pointer; text-decoration: underline; text-underline-offset: 2px; }
.source-list li small { color: #8b918f; font-size: 8px; }
.guide-actions { display: flex; flex: 0 0 auto; flex-wrap: wrap; gap: 8px; }
.guide-actions button { padding: 10px 13px; border: 1px solid #d6d0c7; border-radius: 5px; background: white; cursor: pointer; font-size: 10px; font-weight: 700; }
.guide-actions .save-button { color: white; border-color: var(--navy); background: var(--navy); }

.section-view { padding-top: 54px; }
.section-title { margin-bottom: 42px; }
.section-title h1 { margin-top: 14px; font-size: 50px; }
.section-title p { max-width: 650px; margin: 0; color: var(--muted); line-height: 1.6; font-size: 14px; }
.split-title { display: flex; justify-content: space-between; align-items: end; gap: 28px; }
.split-title input { width: 260px; padding: 13px 15px; border: 1px solid #d5cfc4; border-radius: 7px; color: var(--ink); background: rgb(255 255 255 / 60%); }
.library-section-head { display: flex; justify-content: space-between; align-items: end; margin-bottom: 18px; }
.library-section-head h2 { margin: 8px 0 0; font: 400 26px Georgia, serif; }
.library-section-head > small { color: var(--muted); }
.standard-guides { margin-top: 45px; }
.pilot-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 34px; border: 1px solid #d8d2c9; border-radius: 9px; background: var(--card); box-shadow: 0 10px 25px rgb(22 35 42 / 4%); }
.pilot-summary > div { padding: 20px; }
.pilot-summary > div + div { border-left: 1px solid #e3ded6; }
.pilot-summary span, .pilot-summary small { display: block; }
.pilot-summary span { color: var(--orange-dark); font: 400 28px Georgia, serif; }
.pilot-summary small { margin-top: 5px; color: var(--muted); font-size: 9px; }
.pilot-panel { margin-bottom: 34px; }
.pilot-panel .library-section-head { margin-bottom: 18px; }
.pilot-panel .pilot-summary { margin-bottom: 0; }
.library-export { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 18px; align-items: center; padding: 16px 18px; border: 1px solid #d9e2e8; border-top: 0; border-radius: 0 0 12px 12px; background: #f7fafb; }
.library-export p { grid-row: 1 / span 2; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.library-export span { min-height: 14px; color: #4b7d64; font-size: 9px; text-align: right; }
.library-export button { min-height: 36px; padding: 8px 13px; border: 0; border-radius: 8px; color: white; background: var(--navy); cursor: pointer; font-size: 10px; font-weight: 800; }
.review-queue { margin: 0 0 38px; padding: 24px; border: 1px solid #d9e2e8; border-radius: 16px; background: var(--card); box-shadow: 0 18px 45px rgb(16 42 67 / 7%); }
.review-queue-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border: 1px solid #e2e8eb; border-radius: 10px; background: #f7f9fa; }
.review-queue-summary > div { display: flex; gap: 13px; align-items: center; padding: 16px; }
.review-queue-summary > div + div { border-left: 1px solid #e2e8eb; }
.review-queue-summary span { color: var(--orange-dark); font: 400 27px Georgia, serif; }
.review-queue-summary p, .review-queue-summary strong, .review-queue-summary small { display: block; margin: 0; }
.review-queue-summary strong { font-size: 10px; }
.review-queue-summary small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.review-queue-list { margin-top: 14px; border-top: 1px solid #e6ebee; }
.review-queue-list article { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(130px, .7fr) minmax(130px, .7fr); gap: 14px; align-items: center; padding: 12px 4px; border-bottom: 1px solid #e6ebee; }
.review-queue-list article div span, .review-queue-list article div strong { display: block; }
.review-queue-list article div span { color: var(--orange-dark); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.review-queue-list article div strong { margin-top: 4px; font-size: 11px; }
.review-queue-list article > small, .review-queue-list article > b { color: var(--muted); font-size: 9px; font-weight: 600; }
.review-queue-list article > b { color: #966341; }
.review-queue .library-export { margin-top: 16px; border-top: 1px solid #d9e2e8; border-radius: 12px; }
.review-queue-intro { color: var(--muted); font-size: 13px; line-height: 1.6; }
.review-queue-controls { display: flex; flex-wrap: wrap; gap: 16px; align-items: end; margin-top: 20px; }
.review-queue-controls label { flex: 1 1 220px; font-size: 13px; font-weight: 700; }
.review-queue-controls select { display: block; width: 100%; min-height: 44px; margin-top: 8px; padding: 10px; border: 1px solid #b7c6d0; border-radius: 8px; background: white; color: var(--navy); font: inherit; }
.review-queue-controls > span { padding-bottom: 12px; color: var(--muted); font-size: 13px; }
.review-queue-list article small { display: block; margin-top: 6px; color: var(--muted); font-size: 12px; line-height: 1.5; }
.review-queue-list .review-deadline strong { font-size: 13px; line-height: 1.5; }
.review-deadline.overdue strong { color: #a12e26; }
.review-deadline.due-soon strong, .review-deadline.unscheduled strong { color: #86561c; }
.review-queue-list button { min-height: 44px; padding: 10px 12px; border: 1px solid #b7c6d0; border-radius: 8px; background: white; color: var(--navy); cursor: pointer; }
.library-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.library-grid article, .saved-guide-list article { position: relative; padding: 24px; border: 1px solid #d9d3ca; border-radius: 9px; background: var(--card); box-shadow: 0 10px 25px rgb(22 35 42 / 5%); }
.guide-number { position: absolute; top: 18px; right: 20px; color: #ded9d1; font: italic 26px Georgia, serif; }
.library-grid article > span, .saved-guide-list article > div > span { color: var(--orange); letter-spacing: .14em; font-size: 9px; font-weight: 800; }
.library-grid h2 { max-width: 330px; margin: 14px 0 22px; font: 400 24px/1.22 Georgia, serif; }
.library-grid article > p { color: var(--muted); font-size: 10px; }
.library-grid footer { display: flex; justify-content: space-between; align-items: center; margin-top: 24px; padding-top: 16px; border-top: 1px solid #e5e0d8; }
.library-grid footer small { color: #879094; }
.library-grid button, .saved-guide-list button { border: 0; color: var(--orange-dark); background: none; cursor: pointer; font-size: 10px; font-weight: 800; }
.saved-guide-list { display: grid; gap: 12px; }
.saved-guide-list article { display: flex; justify-content: space-between; gap: 25px; align-items: center; }
.saved-guide-list h3 { margin: 9px 0 6px; font: 400 21px Georgia, serif; }
.saved-guide-list p { max-width: 700px; margin: 0 0 10px; color: var(--muted); line-height: 1.5; font-size: 12px; }
.saved-guide-list small { color: #929692; font-size: 9px; }
.saved-guide-list article > div:last-child { display: flex; flex-direction: column; gap: 8px; align-items: flex-end; }
.saved-guide-list .remove-guide { color: #9d8276; font-weight: 500; }
.saved-guides > p { color: var(--muted); line-height: 1.5; }
.guide-create-actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.guide-create-actions > button { min-height: 44px; padding: 10px 16px; border: 1px solid #b7c6d0; border-radius: 8px; background: white; color: var(--navy); cursor: pointer; }
.guide-import-help { margin-bottom: 4px; }
#guide-import-status { min-height: 1.5em; margin-top: 0; color: var(--navy); }
.saved-guide-search { display: flex; flex-wrap: wrap; align-items: end; gap: 12px; margin: 18px 0; }
.saved-guide-search label { flex: 1 1 240px; min-width: 0; font-size: 13px; font-weight: 700; }
.saved-guide-search input { display: block; width: 100%; margin-top: 8px; padding: 12px; border: 1px solid #b7c6d0; border-radius: 8px; font: inherit; }
.saved-guide-search button, .saved-guides > button { min-height: 44px; padding: 10px 16px; border: 1px solid #b7c6d0; border-radius: 8px; background: white; color: var(--navy); cursor: pointer; }
.saved-guide-list article > div:first-child { min-width: 0; overflow-wrap: anywhere; }
.manufacturer-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.manufacturer-grid > a { display: grid; grid-template-columns: 44px 1fr auto; gap: 14px; align-items: center; min-height: 102px; padding: 18px; border: 1px solid #dad4ca; border-radius: 8px; color: inherit; background: var(--card); text-decoration: none; transition: transform .18s ease, box-shadow .18s ease; }
.manufacturer-grid > a:hover { transform: translateY(-2px); box-shadow: var(--shadow); }
.manufacturer-logo { width: 44px; height: 44px; border-radius: 50%; background: white; object-fit: contain; }
.manufacturer-mark { display: grid; width: 44px; height: 44px; align-items: center; justify-items: center; border-radius: 12px; background: #e9f0f4; color: var(--navy); font-weight: 700; }
.manufacturer-mark > * { grid-area: 1 / 1; }
.manufacturer-logo[hidden] { display: none; }
.manufacturer-grid h2 { margin: 0; font-size: 13px; }
.manufacturer-grid p { margin: 6px 0 0; color: var(--muted); font-size: 10px; }
.manufacturer-grid b { color: var(--orange); }
.manufacturer-grid .line-card { grid-column: 1 / -1; display: flex; justify-content: space-between; min-height: auto; color: white; background: var(--navy); }
.manufacturer-grid .line-card strong { color: #f2a57f; font-size: 11px; }
.source-provider-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.source-provider { padding: 18px; border: 1px solid #d8d2c9; border-radius: 8px; background: var(--card); }
.source-provider > div { display: flex; gap: 8px; align-items: center; color: #4b896c; text-transform: uppercase; font-size: 8px; font-weight: 800; }
.source-provider i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); }
.source-provider.links-only > div { color: #a06a35; }
.source-provider.links-only i { background: #e1a15e; }
.source-provider.not-connected > div { color: #858d90; }
.source-provider.not-connected i { background: #8e969a; }
.source-provider h2 { margin: 12px 0 7px; font-size: 12px; }
.source-provider p { min-height: 32px; margin: 0; color: var(--muted); line-height: 1.5; font-size: 9px; }
.source-provider small { display: block; margin-top: 10px; color: #8b918f; font-size: 8px; }
.dropbox-summary { display: grid; grid-template-columns: repeat(3, 1fr); margin-bottom: 24px; border: 1px solid #d8d2c9; border-radius: 8px; background: var(--card); }
.dropbox-summary > div { display: flex; gap: 14px; align-items: center; padding: 20px; }
.dropbox-summary > div + div { border-left: 1px solid #e1dcd3; }
.dropbox-summary > div > span { color: var(--orange); font: italic 28px Georgia, serif; }
.dropbox-summary p, .dropbox-summary strong, .dropbox-summary small { display: block; margin: 0; }
.dropbox-summary strong { font-size: 11px; }
.dropbox-summary small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.folder-scope, .dropbox-list { margin-top: 18px; padding: 24px; border: 1px solid #d8d2c9; border-radius: 9px; background: var(--card); }
.folder-scope-head, .featured-files-title { display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 20px; }
.folder-scope-head h2 { margin: 8px 0 0; font: 400 25px Georgia, serif; }
.folder-actions { display: flex; gap: 8px; align-items: center; }
.folder-actions small { margin-right: 7px; color: #799085; font-size: 9px; }
.folder-actions button { padding: 7px 10px; border: 1px solid #d6d1c9; border-radius: 4px; background: white; cursor: pointer; font-size: 9px; }
.folder-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.folder-grid label { display: grid; grid-template-columns: 24px 1fr auto; gap: 12px; align-items: center; padding: 15px; border: 1px solid #ddd8cf; border-radius: 7px; background: #fdfbf7; cursor: pointer; }
.folder-grid label.selected { border-color: #bbd8c9; background: #f4faf6; }
.folder-grid label:focus-within { outline: 3px solid rgb(203 104 56 / 32%); outline-offset: 3px; }
.folder-grid input { position: absolute; opacity: 0; pointer-events: none; }
.folder-grid label > span { display: grid; width: 22px; height: 22px; border: 1px solid #cfc9c0; border-radius: 4px; color: white; background: white; place-items: center; font-size: 11px; }
.folder-grid label.selected > span { border-color: #4d9f76; background: #4d9f76; }
.folder-grid strong { font-size: 11px; }
.folder-grid p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }
.folder-grid label > small { color: #969b97; text-transform: uppercase; font-size: 8px; }
.folder-grid label.selected > small { color: #4d8c6e; }
.featured-files-title strong, .featured-files-title span { display: block; }
.featured-files-title strong { margin-top: 7px; font: 400 20px Georgia, serif; }
.featured-files-title > small { color: var(--muted); font-size: 10px; }
.dropbox-list-head, .dropbox-list article { display: grid; grid-template-columns: 2fr 1.25fr .65fr .55fr; gap: 14px; align-items: center; }
.dropbox-list-head { padding: 9px 12px; border-bottom: 1px solid #ddd8cf; color: #999b97; letter-spacing: .1em; font-size: 8px; font-weight: 800; }
.dropbox-list article { padding: 14px 12px; border-bottom: 1px solid #ebe6de; }
.file-name { display: flex; gap: 10px; align-items: center; min-width: 0; }
.file-name > span { flex: 0 0 auto; padding: 6px; border-radius: 4px; color: #a9502b; background: #f6e8dc; font-size: 7px; font-weight: 800; }
.file-name strong, .file-name small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.file-name strong { font-size: 10px; }
.file-name small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.dropbox-list article p, .dropbox-list article time { color: var(--muted); font-size: 9px; }
.dropbox-list article b { display: flex; gap: 6px; align-items: center; color: #4b896c; font-size: 8px; }
.dropbox-note { display: grid; grid-template-columns: 36px 1fr auto; gap: 15px; align-items: center; margin-top: 18px; padding: 20px; border-radius: 8px; color: white; background: var(--navy); }
.dropbox-note > span { display: grid; width: 36px; height: 36px; border-radius: 50%; color: var(--orange); background: rgb(255 255 255 / 8%); place-items: center; }
.dropbox-note strong { font-size: 12px; }
.dropbox-note p { margin: 5px 0 0; color: #9eafb9; line-height: 1.5; font-size: 10px; }
.dropbox-note button { min-width: 140px; gap: 12px; }
.empty-state { padding: 28px; color: var(--muted); text-align: center; font-size: 12px; }

.guide-editor { display: grid; gap: 24px; padding: 24px; border: 1px solid #d9e2e8; border-radius: 16px; background: white; }
.guide-editor fieldset { min-width: 0; margin: 0; padding: 20px; border: 1px solid #d9e2e8; border-radius: 10px; }
.guide-editor legend { padding: 0 8px; font-weight: 700; }
.guide-editor label { display: grid; gap: 8px; margin-block: 16px; font-size: 13px; font-weight: 600; }
.guide-editor input, .guide-editor textarea { width: 100%; min-width: 0; padding: 12px; border: 1px solid #b9cbd6; border-radius: 8px; font: inherit; font-weight: 400; }
.guide-editor textarea { resize: vertical; }
.guide-editor p, .draft-preview pre { line-height: 1.6; overflow-wrap: anywhere; }
.draft-notice { padding: 16px; margin: 0; background: #fff3e7; border-radius: 8px; }
.draft-equipment { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.guide-editor .draft-step { margin-block: 16px; background: #f7f9fa; }
.draft-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.guide-editor button, .new-guide-button { min-height: 44px; padding: 10px 14px; border: 1px solid #b9cbd6; border-radius: 8px; background: white; color: var(--navy); cursor: pointer; }
.guide-editor button[type="submit"], .new-guide-button { color: white; background: var(--navy); }
.guide-editor button:disabled { opacity: .5; cursor: default; }
.draft-preview { padding: 24px; margin-top: 24px; border: 1px solid #d9e2e8; border-radius: 12px; background: white; }
.draft-preview pre { white-space: pre-wrap; font: inherit; font-size: 14px; }
.authored-notes p { white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 720px) {
  .guide-editor, .draft-preview { padding: 16px; }
  .guide-editor fieldset { padding: 12px; }
  .draft-equipment { grid-template-columns: 1fr; gap: 0; }
  .draft-actions { flex-direction: column; }
}

/* 2026 workspace refresh */
.workspace { background:
  radial-gradient(circle at 88% 2%, rgb(226 102 58 / 7%), transparent 23rem),
  linear-gradient(180deg, #f7f9fa 0, var(--paper) 30rem);
}
.top-actions a { display: inline-flex; align-items: center; gap: 6px; padding: 9px 12px; border: 1px solid #d4dfe6; border-radius: 9px; background: rgb(255 255 255 / 70%); transition: border-color .18s ease, background .18s ease; }
.top-actions a:hover { border-color: #afc0cb; background: white; }
.source-health { padding: 7px 10px; border: 0; border-radius: 999px; background: #eaf6ef; }
.source-health i { background: var(--green); }
.ask-box label { padding: 22px 24px 7px; color: #41596a; font-size: 11px; }
.ask-box textarea { min-height: 112px; padding: 8px 24px 21px; font-size: 16px; }
.equipment-intake { padding: 18px 24px 20px; border-color: #e3e9ed; background: #f7f9fa; }
.equipment-intake legend { font-size: 10px; }
.equipment-grid { gap: 14px; }
.equipment-grid label { padding: 0; font-size: 11px; }
.equipment-grid input, .equipment-grid select, .split-title input, .guidance-report select, .guidance-report textarea, .case-handoff input, .case-handoff select, .case-handoff textarea { min-height: 42px; border-color: #ccd8e0; border-radius: 9px; background: white; }
.ask-footer { padding: 13px 14px 13px 24px; border-color: #e3e9ed; }
.ask-footer > span { color: #788795; font-size: 11px; }
.ask-footer button, .dropbox-note button { min-height: 46px; border-radius: 10px; box-shadow: 0 9px 24px rgb(226 102 58 / 20%); }
.suggestions { margin-top: 16px; }
.suggestions > span { font-size: 9px; }
.suggestions button { min-height: 36px; padding-inline: 14px; border-color: #d9e2e8; color: #526979; background: rgb(255 255 255 / 70%); font-size: 10px; transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.suggestions button:hover { transform: translateY(-1px); background: white; }
.generation-status, .past-solutions, .answer-card, .pilot-summary, .dropbox-summary, .folder-scope, .dropbox-list { border-color: #d9e2e8; border-radius: 16px; box-shadow: 0 18px 45px rgb(16 42 67 / 7%); }
.answer-card { overflow: hidden; }
.answer-context { padding: 18px 28px; background: #f4f7f9; }
.answer-head { padding: 30px 30px 16px; }
.answer-head h2 { font-size: 34px; }
.confidence { border-radius: 10px; }
.answer-summary { padding: 0 30px 26px; font-size: 15px; }
.document-evidence, .safety-note, .approval-banner, .guidance-report, .pilot-feedback, .case-handoff { border-radius: 12px; }
.document-evidence li button { min-height: 58px; border-radius: 9px; }
.document-evidence li b, .source-list li > span, .source-list a, .source-list button { font-size: 11px; }
.document-evidence li small, .document-evidence > p, .source-list li small { font-size: 9px; }
.solution-panel { border-radius: 0 10px 10px 0; }
.steps h3 { font-size: 14px; }
.steps p { font-size: 13px; }
.review-note { border-radius: 0 10px 10px 0; }
.pilot-feedback button, .guide-actions button { min-height: 36px; padding-inline: 12px; font-size: 10px; }
.section-view { padding-top: 62px; }
.section-title { margin-bottom: 36px; }
.section-title h1 { margin-top: 12px; font-size: clamp(40px, 5vw, 56px); }
.section-title p { font-size: 15px; }
.split-title input { width: 290px; }
.library-section-head h2 { font-size: 28px; }
.pilot-summary > div { padding: 22px; }
.pilot-summary span { font-size: 32px; }
.pilot-summary small, .library-grid article > p, .saved-guide-list small { font-size: 10px; }
.library-grid { gap: 18px; }
.library-grid article, .saved-guide-list article, .manufacturer-grid > a, .source-provider { border-color: #d9e2e8; border-radius: 14px; box-shadow: 0 12px 30px rgb(16 42 67 / 5%); }
.library-grid article, .saved-guide-list article { padding: 26px; }
.library-grid h2 { font-size: 25px; }
.library-grid button, .saved-guide-list button { min-height: 34px; font-size: 11px; }
.manufacturer-grid { gap: 16px; }
.manufacturer-grid > a { min-height: 110px; padding: 20px; }
.manufacturer-grid h2 { font-size: 14px; }
.manufacturer-grid p { font-size: 11px; }
.manufacturer-logo { border-radius: 12px; background: white; border: 1px solid #e9f0f4; }
.source-provider { padding: 20px; }
.source-provider > div, .source-provider small { font-size: 9px; }
.source-provider h2 { font-size: 14px; }
.source-provider p { font-size: 10px; }
.folder-grid label { border-color: #d9e2e8; border-radius: 12px; }
.folder-grid label.selected { border-color: #9fb8c7; background: #f3f8fa; }
.dropbox-note { border-radius: 14px; background: linear-gradient(135deg, var(--navy), #183f5e); }
.dropbox-note strong { font-size: 13px; }
.dropbox-note p { font-size: 11px; }

@media (max-width: 950px) {
  .app-shell { grid-template-columns: 210px minmax(0, 1fr); }
  .sidebar { padding-inline: 14px; }
  .topbar { padding-inline: 24px; }
  .top-actions .source-health { display: none; }
  .manufacturer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .source-provider-grid { grid-template-columns: 1fr; }
  .dropbox-list-head, .dropbox-list article { grid-template-columns: 1.7fr 1fr .7fr; }
  .dropbox-list-head span:last-child, .dropbox-list article b { display: none; }
}

@media (max-width: 720px) {
  .app-shell { display: block; }
  .sidebar { position: relative; height: auto; overflow: visible; padding: 18px 16px 12px; }
  .brand { margin-bottom: 14px; }
  .sidebar nav { display: flex; gap: 6px; margin: 0; padding-bottom: 6px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: inline proximity; scrollbar-width: none; }
  .sidebar nav::-webkit-scrollbar { display: none; }
  .sidebar nav button { flex: 0 0 auto; justify-content: center; width: auto; min-width: max-content; padding: 8px 10px; border: 0; border-bottom: 3px solid transparent; font-size: 11px; scroll-snap-align: start; }
  .sidebar nav button.active { border-bottom-color: var(--orange); }
  .sidebar nav span { width: auto; font-size: 14px; }
  .sidebar .workflow-navigation { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); overflow: visible; }
  .sidebar .workflow-navigation button { min-width: 0; width: 100%; padding: 9px 6px; white-space: normal; text-align: center; }
  .sidebar .workflow-navigation span { display: none; }
  .sidebar .secondary-navigation { display: grid; margin-top: 8px; overflow: visible; }
  .navigation-group > div { display: flex; flex-wrap: wrap; gap: 6px; }
  .sidebar .secondary-navigation button { min-width: 0; max-width: 100%; white-space: normal; text-align: left; }
  .sidebar-status { display: none; }
  .profile { padding-top: 8px; }
  .profile button { min-height: 36px; color: #c0c9cf; }
  .topbar { position: relative; height: 54px; padding: 0 16px; }
  .top-actions a { font-size: 9px; }
  .content { padding: 38px 18px 60px; }
  .catalog-status { padding: 14px 18px 0; font-size: 12px; }
  .intro { margin-bottom: 30px; }
  .intro h1, .section-title h1 { font-size: 40px; }
  .trust-strip { gap: 10px 16px; }
  .ask-footer, .answer-head, .answer-footer, .split-title { align-items: stretch; flex-direction: column; }
  .ask-footer > span { display: none; }
  .ask-footer button { justify-content: center; width: 100%; }
  .guided-intake-launch { align-items: stretch; flex-direction: column; }
  .guided-question > span { grid-template-columns: 1fr; }
  .guided-actions { align-items: stretch; flex-direction: column-reverse; }
  .suggestions { align-items: stretch; flex-direction: column; }
  .past-solutions-head, .past-solution-meta { align-items: stretch; flex-direction: column; }
  .past-solutions-head > strong { width: fit-content; }
  .past-solution-list footer { justify-content: stretch; flex-direction: column; }
  .document-evidence { margin-inline: 16px; }
  .equipment-grid { grid-template-columns: 1fr; }
  .suggestions > span { margin-bottom: 4px; }
  .answer-head h2 { font-size: 28px; }
  .confidence { width: fit-content; }
  .guide-actions { width: 100%; }
  .guide-actions button { flex: 1; }
  .guidance-report { margin-right: 16px; margin-left: 16px; }
  .approval-banner { grid-template-columns: 1fr; margin-inline: 16px; }
  .approval-banner span { grid-row: auto; }
  .guidance-report-actions { align-items: stretch; flex-direction: column; }
  .guidance-report-actions button { width: 100%; }
  .pilot-feedback { align-items: stretch; flex-direction: column; margin-inline: 16px; }
  .pilot-feedback > div:last-child { justify-content: flex-start; }
  .case-handoff { margin-inline: 16px; }
  .handoff-grid, .pilot-summary { grid-template-columns: 1fr; }
  .pilot-summary > div + div { border-top: 1px solid #e3ded6; border-left: 0; }
  .library-export { grid-template-columns: 1fr; }
  .library-export p { grid-row: auto; }
  .library-export span { text-align: left; }
  .library-export button { width: 100%; }
  .review-queue { padding: 18px; }
  .review-queue-summary { grid-template-columns: 1fr; }
  .review-queue-summary > div + div { border-top: 1px solid #e2e8eb; border-left: 0; }
  .review-queue-list article { grid-template-columns: 1fr; gap: 5px; }
  .library-grid, .manufacturer-grid, .folder-grid, .dropbox-summary { grid-template-columns: 1fr; }
  .saved-guide-list article { align-items: stretch; flex-direction: column; }
  .saved-guide-list article > div:last-child { align-items: flex-start; flex-direction: row; }
  .split-title input { width: 100%; }
  .manufacturer-grid .line-card { grid-column: auto; align-items: flex-start; flex-direction: column; }
  .dropbox-summary > div + div { border-top: 1px solid #e1dcd3; border-left: 0; }
  .folder-scope-head, .featured-files-title { align-items: stretch; flex-direction: column; }
  .folder-actions { flex-wrap: wrap; }
  .dropbox-list { padding-inline: 12px; }
  .dropbox-list-head { display: none; }
  .dropbox-list article { grid-template-columns: 1fr; gap: 5px; }
  .dropbox-list article p, .dropbox-list article time { margin: 0 0 0 42px; }
  .dropbox-note { grid-template-columns: 36px 1fr; }
  .dropbox-note button { grid-column: 1 / -1; width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

.case-attachment-panel { margin: 1rem 0; padding: 1rem; border: 1px solid var(--line); border-radius: 14px; background: #f7f9fa; }
.case-attachment-panel > span { font-size: .72rem; font-weight: 800; letter-spacing: .08em; color: var(--orange-dark); }
.case-attachment-panel h3 { margin: .25rem 0; }
.case-attachment-list { display: grid; gap: .55rem; margin: .8rem 0; }
.case-attachment-list article { display: flex; justify-content: space-between; gap: .75rem; align-items: center; padding: .65rem; border-radius: 10px; background: var(--card); }
.case-attachment-list small { display: block; margin-top: .2rem; overflow-wrap: anywhere; }
.case-attachment-form { margin-top: .8rem; }
.case-follow-up-panel { margin: 1rem 0; padding: 1rem; border: 1px solid var(--line); border-radius: 14px; background: #f7f9fa; }
.case-follow-up-panel > span { color: var(--orange-dark); font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.case-follow-up-panel h3 { margin: .25rem 0; }
.case-follow-up-list { display: grid; gap: .55rem; margin: .8rem 0; }
.case-follow-up-list article { display: grid; gap: .65rem; padding: .7rem; border: 1px solid var(--line); border-left: 4px solid var(--line); border-radius: 10px; background: var(--card); }
.case-follow-up-list article.overdue { border-left-color: #b42318; }
.case-follow-up-list article.due-soon { border-left-color: var(--orange); }
.case-target-badge.paused { color: #285f73; background: #dff3f8; }
.case-follow-up-list small { display: block; margin-top: .2rem; overflow-wrap: anywhere; text-transform: capitalize; }
.case-follow-up-actions { display: grid; grid-template-columns: minmax(10rem, 1fr) auto auto; align-items: end; gap: .5rem; }
.case-follow-up-actions label { margin: 0; }
.case-check { display: flex !important; flex-direction: row !important; align-items: center; gap: .55rem; }
.case-check input { width: auto; }
@media (max-width: 720px) {
  .case-follow-up-actions { grid-template-columns: 1fr 1fr; }
  .case-follow-up-actions label { grid-column: 1 / -1; }
}
