/* ============================================================
   ORZUVO P3.5.1 — PROFESSIONAL TRUST UI
   Neutral graphite + forest system. No blue/purple product chrome.
   Tenant brand can still be used in PDFs/brand data, not in the app shell.
   ============================================================ */
:root{
  --brand:#285c4d!important;
  --primary:#285c4d!important;
  --primary2:#1f493e!important;
  --orzuvo-ui:#285c4d!important;
  --orzuvo-navy:#18201d!important;
  --orzuvo-text:#18201d!important;
  --orzuvo-muted:#66716c!important;
  --line:#d9dfdc!important;
  --shadow:0 14px 34px rgba(25,35,31,.075)!important;
}
body{
  background:#f4f5f3!important;
  color:#18201d!important;
}
.sidebar{
  background:#151b19!important;
  box-shadow:8px 0 28px rgba(18,25,22,.13)!important;
}
.sidebar a{color:#d4dbd7!important}
.sidebar a:hover{background:#202a26!important;color:#fff!important}
.logoMark{background:#285c4d!important;box-shadow:none!important}
.eyebrow{color:#486e60!important}
.premiumHero,.hero,.saasHero{
  background:#fff!important;
  border-color:#d9dfdc!important;
  box-shadow:var(--shadow)!important;
}
.card,.panel,.statCard,.metricCard,.kpi-card,.hubPanel{
  background:#fff!important;
  border-color:#d9dfdc!important;
  box-shadow:var(--shadow)!important;
}
.btn.primary,.btn-primary,.ods-btn-primary,.highlight .btn-primary,
.hubPanel .btn.primary,.hubWebsiteForm .btn.primary,.hubForm .btn.primary,.hubNotificationForm .btn.primary{
  background:#285c4d!important;
  border-color:#285c4d!important;
  color:#fff!important;
  box-shadow:none!important;
}
.btn.primary:hover,.btn-primary:hover{background:#204b3f!important}
.btn.secondary,.secondary{background:#eef1ef!important;color:#263f36!important;border-color:#cfd8d3!important}
a{color:#285c4d}
input:focus,textarea:focus,select:focus{border-color:#78998d!important;box-shadow:0 0 0 4px rgba(40,92,77,.11)!important}

/* Keep every label/value physically inside cards. */
.card,.statCard,.metricCard,.kpi-card,.liveTotals span,.brainDecisionGrid>div,
.saasKpiGrid article,.v4-mini-card,.quoteMiniCard,.topClientList div,.quickActionsPro a{
  min-width:0!important;
  overflow:hidden!important;
}
.card *, .statCard *, .metricCard *, .kpi-card *, .liveTotals span *, .brainDecisionGrid>div *{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
.card strong,.statCard strong,.metricCard strong,.kpi-card strong{
  color:#18201d!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
}

/* Quote calculation: sober, high contrast, readable margin. */
.liveTotals{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.liveTotals span,
.liveTotals span:nth-child(3),
.liveTotals span:nth-child(4){
  background:#202925!important;
  color:#dce4e0!important;
  border:1px solid #313d38!important;
  border-radius:15px!important;
  padding:15px 16px!important;
  box-shadow:none!important;
}
.liveTotals span:nth-child(3){background:#285c4d!important;border-color:#285c4d!important}
.liveTotals span:nth-child(4){background:#f0f2f0!important;border-color:#cfd7d3!important;color:#53615b!important}
.liveTotals span b,
.liveTotals b,
.liveTotals span:nth-child(3) b,
.liveTotals span:nth-child(4) b{
  color:#fff!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  text-shadow:none!important;
}
.liveTotals span:nth-child(4) b{color:#18201d!important}
.calcBox{background:#f7f8f7!important;border-color:#d9dfdc!important;box-shadow:none!important}
.calcExplain{background:#fafbfa!important;border-color:#cfd7d3!important;color:#39463f!important}
.legalNotice{background:#f5f6f5!important;border-color:#d9dfdc!important;color:#4a5650!important}

/* Tables/admin: neutral instead of pastel blue. */
.dataTable thead th,.tableWrap table thead th,.card .table-wrap table thead th{
  background:#ecefed!important;color:#39463f!important;border-bottom-color:#cfd7d3!important
}
.dataTable tbody td,.tableWrap table tbody td,.card .table-wrap table tbody td{color:#26312c!important;border-bottom-color:#e4e8e5!important}
.dataTable tbody tr:nth-child(even) td,.tableWrap table tbody tr:nth-child(even) td{background:#fafbfa!important}
.adminSelfBadge,.builderStatus,.portfolioCount,.brainPriority{background:#edf1ef!important;color:#285c4d!important}
.hubTabs a.active{background:#202925!important;border-color:#202925!important;color:#fff!important}
.templateCard.selected,.templateCard:has(input:checked){border-color:#587c6e!important;box-shadow:0 8px 24px rgba(40,92,77,.10)!important}
.template-modern{background:linear-gradient(135deg,#fafafa 0 55%,#65736d 55%)!important}
.brainDecision{background:#f7f8f7!important;border-color:#d5ddd8!important}
.brainDecisionHead .brainMark{background:#202925!important}
.leadReference{color:#285c4d!important;text-decoration-color:#9db2a9!important}
.badge.enviado{background:#edf1ef!important;color:#285c4d!important}
.authStagePrimary,.authDemoResult button,.authDemoResult .authDemoAction,.v11-demo-action{background:#285c4d!important;color:#fff!important}
.authDemoPrompt{background:#202925!important}
.authDemoThinking i{background:#587c6e!important}
.authOutcomeStrip article>span{background:#edf1ef!important;color:#285c4d!important}
.cookieActions button{background:#285c4d!important}
.window-bar button.active,.window-bar button:hover{background:#285c4d!important}

@media(max-width:900px){.liveTotals{grid-template-columns:1fr 1fr!important}}
@media(max-width:560px){.liveTotals{grid-template-columns:1fr!important}}


/* P4.1 — Responsive UI Fix: content decides height, never the other way around. */
.quoteStageNav{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;align-items:stretch!important;overflow:visible!important}
.quoteStage{display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;grid-template-rows:auto!important;gap:10px!important;min-width:0!important;min-height:0!important;height:auto!important;padding:14px!important;overflow:visible!important;align-items:start!important;background:#fff!important;border:1px solid #d9dfdc!important;color:#18201d!important}
.quoteStageIcon{grid-column:1!important;grid-row:1!important;width:38px!important;height:38px!important;background:#edf1ef!important;color:#285c4d!important;border-color:#cfd8d3!important}
.quoteStageNumber{position:absolute!important;top:8px!important;right:8px!important;background:#e7ece9!important;color:#285c4d!important;border-color:#fff!important}
.quoteStageCopy{grid-column:2!important;min-width:0!important;width:100%!important;padding:0!important}
.quoteStageCopy strong,.quoteStageCopy small{display:block!important;width:100%!important;max-width:100%!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere!important;word-break:normal!important}
.quoteStageCopy strong{font-size:14px!important;line-height:1.25!important;color:#18201d!important}.quoteStageCopy small{font-size:11px!important;line-height:1.4!important;margin-top:4px!important;color:#66736d!important}.quoteStageArrow{display:none!important}
.quoteStage.is-active{background:#f3f6f4!important;border-color:#78998d!important;border-top-color:#285c4d!important;box-shadow:none!important}.quoteStage.is-active .quoteStageIcon{background:#285c4d!important;color:#fff!important;border-color:#285c4d!important}.quoteStage.is-active .quoteStageNumber{background:#285c4d!important;color:#fff!important}
.quoteStage:after{display:none!important}
.quoteComposer{margin-top:18px;padding:18px;border:1px solid #d9dfdc;border-radius:16px;background:#f8faf8}.quoteComposer.is-blocked{border-color:#d7b66a;background:#fffaf0}.quoteComposerHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.quoteComposerHead h3{margin:4px 0 5px}.quoteComposerHead p{margin:0;color:#66736d;max-width:720px}.readiness{flex:0 0 auto;display:grid;place-items:center;min-width:92px;padding:10px;border:1px solid #d9dfdc;border-radius:12px;background:#fff}.readiness strong{font-size:22px;color:#18201d}.readiness span{font-size:11px;color:#66736d}.qiGrid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;gap:10px!important;margin-top:16px!important}.qiCard{min-width:0!important;height:auto!important;overflow:visible!important;padding:14px!important;background:#fff!important;border:1px solid #d9dfdc!important;border-radius:12px!important}.qiCard>*{max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important}.qiStatus{font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;color:#7b6740}.qi-confirmed .qiStatus{color:#285c4d}.qiMeasure{font-size:21px;font-weight:900;margin:9px 0;color:#18201d}.qiMeasure b{font-size:12px;color:#66736d}.qiFact,.qiMissing{display:block!important;margin-top:5px!important;line-height:1.35!important}.qiFact{color:#52615a!important}.qiMissing{color:#8a5d16!important;font-weight:800}.quoteBlocker{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;padding:11px 13px;border-radius:10px;background:#fff3d8;color:#684b16}.quoteBlocker span{overflow-wrap:anywhere}.btn:disabled{opacity:.5!important;cursor:not-allowed!important;filter:grayscale(.2)}
@media(max-width:980px){.quoteStageNav{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:600px){.quoteStageNav{grid-template-columns:1fr!important}.quoteComposerHead{flex-direction:column}.readiness{width:100%}.qiGrid{grid-template-columns:1fr!important}}


/* ============================================================
   ORZUVO P4.1.1 — GLOBAL CONTRAST HARDENING
   App chrome uses light professional surfaces. Intentional dark
   components have an explicit light-text contract.
   ============================================================ */

/* Command Center: remove the isolated black KPI panel. */
.commandMoney{
  background:#fff!important;
  color:#18201d!important;
  border:1px solid #d9dfdc!important;
  box-shadow:var(--shadow)!important;
}
.commandMoney .commandEyebrow{color:#486e60!important}
.commandMoney h2,.commandMoney .moneyRows b{color:#18201d!important}
.commandMoney>p,.commandMoney .moneyRows small{color:#5f6c66!important}
.commandMoney .moneyRows,.commandMoney .moneyRows span{border-color:#d9dfdc!important}
.commandMoney>a{color:#285c4d!important}

/* Other legacy dashboard dark surfaces are normalized to the same shell. */
.cc2-dark,.dashboardDark,.businessMotion,.movementCard,.cc2-setup{
  background:#fff!important;
  color:#18201d!important;
  border:1px solid #d9dfdc!important;
  box-shadow:var(--shadow)!important;
}
.cc2-dark *,.dashboardDark *,.businessMotion *,.movementCard *,.cc2-setup *{
  color:#39463f!important;
  text-shadow:none!important;
}
.cc2-dark h1,.cc2-dark h2,.cc2-dark h3,.cc2-dark strong,.cc2-dark b,
.dashboardDark h1,.dashboardDark h2,.dashboardDark h3,.dashboardDark strong,.dashboardDark b,
.businessMotion h1,.businessMotion h2,.businessMotion h3,.businessMotion strong,.businessMotion b,
.movementCard h1,.movementCard h2,.movementCard h3,.movementCard strong,.movementCard b,
.cc2-setup h1,.cc2-setup h2,.cc2-setup h3,.cc2-setup strong,.cc2-setup b{color:#18201d!important}

/* Dark total tiles remain intentionally dark: guarantee readable text. */
.liveTotals span:not(:nth-child(4)),
.oz-focus-card,.oz-toast,.oz-skip-link,.authDemoPrompt,.brainDecisionHead .brainMark{
  color:#fff!important;
}
.liveTotals span:not(:nth-child(4)) *,
.oz-focus-card *,.oz-toast *,.oz-skip-link *,.authDemoPrompt *,.brainDecisionHead .brainMark *{
  color:#fff!important;
}
.oz-focus-card p{color:#e5ebe8!important}

/* Generic dark-theme compatibility: when old components explicitly mark
   themselves as dark, never allow inherited graphite text to disappear. */
[class~="dark"],[class*="-dark"],[class*="Dark"]{
  --orzuvo-on-dark:#f8faf9;
  --orzuvo-on-dark-muted:#d4ddd8;
}
[class~="dark"] h1,[class~="dark"] h2,[class~="dark"] h3,[class~="dark"] h4,
[class*="-dark"] h1,[class*="-dark"] h2,[class*="-dark"] h3,[class*="-dark"] h4,
[class*="Dark"] h1,[class*="Dark"] h2,[class*="Dark"] h3,[class*="Dark"] h4,
[class~="dark"] strong,[class~="dark"] b,[class*="-dark"] strong,[class*="-dark"] b,
[class*="Dark"] strong,[class*="Dark"] b{color:var(--orzuvo-on-dark)!important}
[class~="dark"] p,[class~="dark"] small,[class~="dark"] label,
[class*="-dark"] p,[class*="-dark"] small,[class*="-dark"] label,
[class*="Dark"] p,[class*="Dark"] small,[class*="Dark"] label{color:var(--orzuvo-on-dark-muted)!important}

/* Tables and administrative screens: never use washed-out text. */
.dataTable,.tableWrap table,.adminUsersTable,table{color:#26312c}
.dataTable th,.tableWrap th,.adminUsersTable th{color:#46534d!important}
.dataTable td,.tableWrap td,.adminUsersTable td{color:#26312c!important}
.dataTable a,.tableWrap a,.adminUsersTable a{color:#285c4d!important}

/* Disabled content must remain readable while still looking disabled. */
button:disabled,input:disabled,select:disabled,textarea:disabled,[aria-disabled="true"]{opacity:.72!important}

/* Global focus treatment also improves contrast/keyboard visibility. */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid #9bb7ad!important;
  outline-offset:2px!important;
}


/* ============================================================
   ORZUVO P4.1.3 — SIDEBAR & NAVIGATION POLISH
   Final app-shell contract: light navigation, graphite text,
   forest accents. This block intentionally lives last so legacy
   dark sidebar rules cannot override the current design system.
   ============================================================ */
.sidebar{
  background:#ffffff!important;
  color:#18201d!important;
  border-right:1px solid #d9dfdc!important;
  box-shadow:6px 0 24px rgba(25,35,31,.055)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.sidebar .brand strong,.sidebar .brand b{color:#18201d!important}
.sidebar .brand span,.sidebar small{color:#66716c!important}
.sidebar nav a,.sidebar>a,.sidebar .flagSelector a{
  color:#39463f!important;
  background:transparent!important;
  text-shadow:none!important;
}
.sidebar nav a:hover,.sidebar>a:hover,.sidebar .flagSelector a:hover{
  background:#f0f4f2!important;
  color:#18201d!important;
  box-shadow:none!important;
}
.sidebar nav a.active,.sidebar nav a[aria-current="page"],.sidebar .flagSelector a.active{
  background:#eaf1ee!important;
  color:#204b3f!important;
  box-shadow:inset 3px 0 0 #285c4d!important;
  font-weight:800!important;
}
.sidebar .userCard,.sidebar .sideNote{
  background:#f8faf9!important;
  color:#26312c!important;
  border:1px solid #d9dfdc!important;
  box-shadow:none!important;
}
.sidebar .userCard .sessionLabel,.sidebar .userCard .userMeta span,
.sidebar .userCard .userMeta small,.sidebar .userCard .userMeta em{
  color:#66716c!important;
}
.sidebar .userCard .userMeta strong{color:#18201d!important}
.sidebar .logoMark,.sidebar .v4-brand-mark{background:#285c4d!important;box-shadow:none!important;color:#fff!important}
.sidebarCollapse{background:#fff!important;color:#26312c!important;border-color:#d9dfdc!important;box-shadow:0 4px 14px rgba(25,35,31,.07)!important}
.sidebar .navLeadBadge,.sidebar .navBadge,.sidebar .badge.bad,.sidebar .badge.alert{
  color:#fff!important;
}
@media(max-width:980px){
  .sidebar{background:#fff!important;box-shadow:0 24px 70px rgba(25,35,31,.20)!important}
}

/* P4.1.4 — Access Control UX */
.accessDeniedPanel{max-width:760px;margin:40px auto!important;padding:32px!important}
.accessDeniedPanel h1{margin:6px 0 12px!important;color:#18201d!important}
.accessDeniedActions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
@media(max-width:600px){.accessDeniedActions .btn{width:100%;justify-content:center}}


/* ============================================================
   ORZUVO P4.1.6 — DOCUMENT INTELLIGENCE / SMART INTAKE
   ============================================================ */
.documentIntake{margin-bottom:18px;padding:20px!important;border:1px solid #d9dfdc!important;background:#fff!important}
.documentIntakeHead{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.documentIntakeHead h2{margin:4px 0 6px}.documentIntakeHead p{margin:0;max-width:850px;color:#5f6c66}.documentIntakeBadge{white-space:nowrap;padding:7px 10px;border-radius:999px;background:#edf1ef;color:#285c4d;font-weight:800;font-size:11px}
.documentDrop{margin-top:16px;display:flex;align-items:center;gap:14px;padding:18px;border:1.5px dashed #9db2a9;border-radius:14px;background:#f8faf8}.documentDrop input{max-width:310px}.documentDrop div{display:flex;flex-direction:column;gap:3px}.documentDrop small{color:#66716c}
.documentSelected{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin-top:10px}.documentFile{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid #d9dfdc;border-radius:11px;background:#fff}.documentFileType{display:grid;place-items:center;min-width:38px;height:32px;border-radius:8px;background:#edf1ef;color:#285c4d;font-size:10px;font-weight:900}.documentFile span:nth-child(2){min-width:0;display:flex;flex-direction:column}.documentFile strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.documentFile small{color:#66716c}.documentFile button{border:0;background:#f4f5f3;color:#5f6c66;border-radius:8px;width:30px;height:30px;cursor:pointer}
.documentIntakeActions{display:flex;align-items:center;gap:12px;margin-top:12px}.documentIntakeResult{margin-top:16px;padding:16px;border:1px solid #cfd8d3;border-radius:14px;background:#f8faf8}.documentResultHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.documentResultHead h3{margin:4px 0}.documentConfidence{padding:6px 9px;border-radius:999px;background:#e6f3ed;color:#246348;font-size:10px;font-weight:900}.documentFactGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin-top:12px}.documentFactGrid>div{padding:11px;border:1px solid #d9dfdc;border-radius:10px;background:#fff;min-width:0}.documentFactGrid small,.documentFactGrid strong{display:block;overflow-wrap:anywhere}.documentFactGrid small{color:#66716c;text-transform:uppercase;font-size:9px;font-weight:800;letter-spacing:.04em}.documentMissing,.documentReady{margin-top:10px;padding:11px 12px;border-radius:10px}.documentMissing{display:flex;gap:8px;flex-wrap:wrap;background:#fff3d8;color:#684b16}.documentReady{background:#eaf5ef;color:#246348;font-weight:800}.documentNotice{color:#5f6c66;margin:10px 0 0}.documentResultActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.documentUploaded{display:grid;gap:6px;margin-top:12px}.documentUploadedRow{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 10px;border-top:1px solid #d9dfdc}.documentRemoveStored{border:0;background:transparent;color:#9b2c2c;font-weight:800;cursor:pointer}.documentLoginHint{margin-top:14px;padding:14px;border-radius:12px;background:#f4f5f3;display:flex;flex-direction:column;gap:4px}.quoteAttachments{margin-top:16px;padding-top:14px;border-top:1px solid #d9dfdc}.quoteAttachmentsHead{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.quoteAttachmentsHead h3{margin:4px 0 0}.quoteAttachmentGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;margin-top:10px}.quoteAttachmentCard{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:11px 12px;border:1px solid #d9dfdc;border-radius:11px;background:#fff;color:#26312c!important;text-decoration:none}.quoteAttachmentIcon{display:grid;place-items:center;min-width:40px;height:34px;border-radius:8px;background:#edf1ef;color:#285c4d;font-size:10px;font-weight:900}.quoteAttachmentCard span:nth-child(2){min-width:0}.quoteAttachmentCard strong,.quoteAttachmentCard small{display:block;overflow-wrap:anywhere}.quoteAttachmentCard small{color:#66716c}
@media(max-width:700px){.documentIntakeHead,.documentResultHead{flex-direction:column}.documentIntakeBadge{align-self:flex-start}.documentDrop{align-items:flex-start;flex-direction:column}.documentIntakeActions{align-items:flex-start;flex-direction:column}}

/* P4.1.7 — Multimodal Document Intelligence */
.documentReadiness{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.documentReadiness>div{padding:12px;border:1px solid #d9dfdc;border-radius:10px;background:#fff}.documentReadiness strong{display:block;font-size:22px;color:#17231e}.documentReadiness small{display:block;color:#66716c}.documentSection{margin-top:12px;padding:12px;border:1px solid #d9dfdc;border-radius:10px;background:#fff}.documentSection>strong{display:block;margin-bottom:8px}.documentSection ul{margin:0;padding-left:20px}.documentSection li{margin:5px 0;color:#394740}.documentWorkList{display:grid;gap:6px}.documentWorkList>div{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:start;padding:9px;border-radius:9px;background:#f5f7f6}.documentWorkList>div>span{font-weight:900;color:#285c4d}.documentWorkList p{margin:0}.documentWorkList b,.documentWorkList small{display:block}.documentWorkList small{margin-top:2px;color:#66716c}.documentWorkList em{font-style:normal;font-size:10px;font-weight:800;padding:5px 7px;border-radius:999px;background:#edf1ef;color:#4b5c54}.documentRisks{border-color:#ead8b5;background:#fffaf0}@media(max-width:700px){.documentReadiness{grid-template-columns:1fr}.documentWorkList>div{grid-template-columns:28px minmax(0,1fr)}.documentWorkList em{grid-column:2;justify-self:start}}

/* ============================================================
   ORZUVO P4.1.8 — DEEP PDF VISION + QUOTE RESET
   ============================================================ */
.quoteLineActions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.dangerSoft{background:#fff4f2!important;color:#9a3412!important;border:1px solid #fed7cc!important}
.documentCoverageWarning{margin-top:10px;padding:10px 12px;border-radius:10px;background:#fff3d8;color:#684b16;font-weight:750}
@media(max-width:700px){.itemsHeader{align-items:flex-start!important;flex-direction:column}.quoteLineActions{width:100%;justify-content:flex-start}.quoteLineActions .btn{flex:1 1 auto}}

/* ============================================================
   ORZUVO P4.2.1 — DOCUMENT PLAN / SOURCE TRACE / PRICE BLOCKERS
   ============================================================ */
.documentSectionTitle{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.documentSectionTitle>span{font-size:10px;font-weight:800;color:#66716c;text-transform:uppercase;letter-spacing:.04em}.documentGroupGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.documentGroupCard{border:1px solid #d9dfdc;border-radius:12px;background:#f8faf8;padding:12px;min-width:0}.documentGroupHead{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.documentGroupHead b{color:#18201d;font-size:14px}.documentGroupHead>span{font-size:10px;color:#66716c;white-space:nowrap}.documentGroupStats{display:flex;gap:6px;flex-wrap:wrap;margin:9px 0}.documentGroupStats span{font-size:9px;font-weight:900;padding:4px 7px;border-radius:999px;background:#edf1ef;color:#4b5c54}.documentGroupStats .ready{background:#e7f4ec;color:#246348}.documentGroupStats .confirm{background:#fff3d8;color:#7a561a}.documentGroupStats .diag{background:#fdebea;color:#922d2d}.documentGroupCard ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}.documentGroupCard li{padding-top:7px;border-top:1px solid #e2e7e4}.documentGroupCard li:first-child{border-top:0;padding-top:0}.documentGroupCard li strong,.documentGroupCard li small{display:block}.documentGroupCard li small{color:#66716c;margin-top:2px}.sourceRef{color:#587c6e!important;font-size:9px!important;font-weight:800!important}.blockerRef{color:#8a5d16!important;font-size:9px!important;font-weight:800!important}.documentQuestions ol{list-style:none;margin:0;padding:0;display:grid;gap:7px}.documentQuestions li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start;padding:10px;border:1px solid #e0e5e2;border-radius:10px;background:#fafbfa}.documentQuestions li>span{font-size:9px;font-weight:900;text-transform:uppercase;padding:4px 6px;border-radius:999px;background:#edf1ef;color:#53615b}.documentQuestions li.is-priority{border-color:#e4c98e;background:#fffaf0}.documentQuestions li.is-priority>span{background:#f4dca7;color:#694c17}.documentQuestions p{margin:1px 0 0;color:#26312c;font-weight:700}.documentWorkList .sourceRef,.documentWorkList .blockerRef{margin-top:4px}@media(max-width:700px){.documentGroupGrid{grid-template-columns:1fr}.documentSectionTitle{align-items:flex-start;flex-direction:column}}


/* P4.2.3 — grounded document extraction */
.documentDetectedTitle{
  margin:12px 0;padding:14px 16px;border:1px solid #cfd8d3;border-radius:12px;background:#f8faf9;
}
.documentDetectedTitle small{display:block;color:#66716c;margin-bottom:4px;text-transform:uppercase;letter-spacing:.04em;font-weight:800}
.documentDetectedTitle strong{display:block;color:#18201d;font-size:16px;line-height:1.35}
.documentExtractedText{margin:12px 0;border:1px solid #d9dfdc;border-radius:12px;background:#fff;overflow:hidden}
.documentExtractedText summary{cursor:pointer;padding:12px 14px;font-weight:800;color:#285c4d;background:#f7f9f8}
.documentExtractedText pre{margin:0;padding:14px;max-height:360px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;color:#26312c;background:#fff}
/* P4.2.4 — feedback fixo para páginas longas */
.orzuvoToastHost{position:fixed;top:18px;right:18px;z-index:99999;display:grid;gap:10px;max-width:min(420px,calc(100vw - 36px));pointer-events:none}.orzuvoToast{pointer-events:auto;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;padding:13px 15px;border:1px solid #b8d3c8;border-radius:14px;background:#f7fbf9;box-shadow:0 14px 38px rgba(15,35,29,.18);color:#18342b;opacity:0;transform:translateY(-8px);transition:.2s ease}.orzuvoToast.is-visible{opacity:1;transform:none}.orzuvoToast strong{font-size:11px;letter-spacing:.06em}.orzuvoToast span{font-size:13px;font-weight:700}.orzuvoToast.is-warning{background:#fff9e9;border-color:#e7cf87;color:#5c4813}.orzuvoToast.is-error{background:#fff3f3;border-color:#e9b5b5;color:#7a2525}@media(max-width:700px){.orzuvoToastHost{left:12px;right:12px;top:12px;max-width:none}}

/* ============================================================
   ORZUVO P4.2.7 — DOCUMENT -> BRAIN -> COMPOSER
   Compact long jobs, visible synchronization and grouped editing.
   ============================================================ */
.documentBrainBridge{
  display:flex!important;align-items:center!important;gap:12px!important;
  margin:14px 0!important;padding:12px 14px!important;border-radius:12px!important;
  border:1px solid #b9d3c8!important;background:#f2f8f5!important;color:#263f36!important;
}
.documentBrainBridge strong{color:#204b3f!important;white-space:nowrap!important}
.documentBrainBridge span{color:#52615a!important;line-height:1.35!important}
.documentPlanCompact{padding:0!important;overflow:hidden!important}
.documentPlanCompact>summary{
  list-style:none!important;cursor:pointer!important;display:flex!important;justify-content:space-between!important;
  align-items:center!important;gap:16px!important;padding:14px 16px!important;background:#fafbfa!important;
}
.documentPlanCompact>summary::-webkit-details-marker{display:none!important}
.documentPlanCompact>summary span{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important}
.documentPlanCompact>summary strong{color:#18201d!important}
.documentPlanCompact>summary small,.documentPlanCompact>summary em{color:#66716c!important;font-style:normal!important;font-size:12px!important}
.documentPlanCompact[open]>summary{border-bottom:1px solid #d9dfdc!important}
.documentPlanCompact .documentWorkList{max-height:560px!important;overflow:auto!important;padding:8px!important}

#items{display:grid!important;gap:10px!important}
.quoteItemGroup{
  border:1px solid #d9dfdc!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important;
}
.quoteItemGroup>summary{
  list-style:none!important;cursor:pointer!important;display:flex!important;align-items:center!important;
  justify-content:space-between!important;gap:14px!important;padding:12px 14px!important;background:#f7f9f8!important;
}
.quoteItemGroup>summary::-webkit-details-marker{display:none!important}
.quoteItemGroup>summary span{display:flex!important;align-items:baseline!important;gap:9px!important;min-width:0!important}
.quoteItemGroup>summary strong{color:#18201d!important;overflow-wrap:anywhere!important}
.quoteItemGroup>summary small{color:#66716c!important}
.quoteItemGroup>summary em{font-size:11px!important;font-style:normal!important;color:#8a5d16!important;background:#fff3d8!important;padding:4px 8px!important;border-radius:999px!important;white-space:nowrap!important}
.quoteItemGroup[open]>summary{border-bottom:1px solid #d9dfdc!important}
.quoteItemGroupRows{display:grid!important;gap:8px!important;padding:10px!important}
.quoteItemGroupRows .itemRow{margin:0!important}

@media(max-width:760px){
  .documentBrainBridge,.documentPlanCompact>summary,.quoteItemGroup>summary{align-items:flex-start!important;flex-direction:column!important}
  .quoteItemGroup>summary em{white-space:normal!important}
}

/* P4.2.8 — diagnóstico multimodal visível e discreto */
.documentVisionDiagnostic{margin:10px 0;padding:10px 12px;border:1px solid #e7c98d;border-radius:12px;background:#fffaf0}
.documentVisionDiagnostic summary{cursor:pointer;font-weight:800}
.documentVisionDiagnostic pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-height:150px;overflow:auto;margin:8px 0}
.documentVisionDiagnostic small{display:block;color:#667085}


/* P4.2.9 — Document evidence gallery + restored draft */
.documentUploadedCard{border-top:1px solid #d9dfdc;padding-top:10px;margin-top:10px}
.documentPagePreview{margin:10px 0 2px;padding:10px 12px;border:1px solid #d9dfdc;border-radius:12px;background:#f8faf9}
.documentPagePreview summary{cursor:pointer;font-weight:800;color:#285c4d}
.documentPageGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin-top:12px}
.documentPageThumb{display:flex;flex-direction:column;gap:5px;text-decoration:none;color:#39463f;background:#fff;border:1px solid #d9dfdc;border-radius:10px;padding:6px;overflow:hidden}
.documentPageThumb img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:7px;border:1px solid #e4e8e5;background:#fff}
.documentPageThumb span{font-size:11px;font-weight:800;text-align:center}
.documentStandalonePreview img{max-width:180px;max-height:160px;object-fit:cover;border-radius:10px;border:1px solid #d9dfdc;margin-top:8px}
@media(max-width:650px){.documentPageGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.quoteAttachmentBundle{display:flex;flex-direction:column;gap:8px;min-width:0}
.quoteAttachmentPreview{padding:9px 11px;border:1px solid #d9dfdc;border-radius:12px;background:#f8faf9}
.quoteAttachmentPreview summary{cursor:pointer;font-weight:800;color:#285c4d}
