/* Shared report components. Layout and financial semantics stay with their owners. */
body.report-app {
  --rc-ink:#283344; --rc-text:#48586b; --rc-muted:#66758a;
  --rc-line:#dfe6ef; --rc-soft:#f5f7fa; --rc-paper:#fff;
  --rc-action:#3e60b7; --rc-action-bg:#eef3fd;
  --rc-warning:#885e22; --rc-warning-bg:#fcf6e9;
  --rc-risk:#a44050; --rc-risk-bg:#fcf1f3;
  --rc-success:#267564; --rc-success-bg:#edf7f3;
  --rc-radius:4px; --rc-body:13px; --rc-note:12px; --rc-meta:11px;
}
@media screen {
  /* Chapter conclusions: emphasis without implying a positive or verified outcome. */
  html body.app-ui.report-app main#top .report-section .section-thesis {
    color:var(--rc-text) !important; font-size:var(--rc-body) !important;
    line-height:1.65 !important; padding:7px 0 7px 10px !important;
    margin:7px 0 0 !important; border:0 !important; border-left:2px solid #8195bc !important;
    background:transparent !important; font-weight:450 !important;
  }
  html body.app-ui.report-app main#top .report-section :is(.model-note,.model-footnote,.tx-footnote,.chart-footnote,.source-reference-note,.old-pool-note) {
    font-size:var(--rc-note) !important; line-height:1.65 !important; color:var(--rc-muted) !important;
    background:transparent !important; border:0 !important; border-radius:0 !important;
    box-shadow:none !important; padding:6px 0 !important; margin:5px 0 !important;
  }
  /* Qualifications use amber; material financial warnings use muted red. */
  html body.app-ui.report-app main#top .report-section :is(.evidence-note,.tx-basis,.model-fee-caution) {
    color:var(--rc-warning) !important; background:var(--rc-warning-bg) !important;
    border:0 !important; border-left:2px solid #c49a52 !important;
    border-radius:0 !important; padding:8px 10px !important; margin:8px 0 !important;
    font-size:var(--rc-note) !important; line-height:1.65 !important; box-shadow:none !important;
  }
  html body.app-ui.report-app main#top .report-section :is(.finance-callout,.stop-rule) {
    color:var(--rc-risk) !important; background:var(--rc-risk-bg) !important;
    border:0 !important; border-left:2px solid #bc6775 !important;
    border-radius:0 !important; padding:10px 12px !important; margin:10px 0 !important;
    font-size:var(--rc-note) !important; line-height:1.65 !important; box-shadow:none !important;
  }
  html body.app-ui.report-app main#top .report-section .finance-callout > strong { display:block; font-size:15px !important; line-height:1.6 !important; color:var(--rc-ink) !important; margin:3px 0 !important; }
  html body.app-ui.report-app main#top .report-section .finance-callout > span { font-size:var(--rc-note) !important; color:var(--rc-risk) !important; }
  html body.app-ui.report-app main#top .report-section .finance-callout > p { font-size:var(--rc-note) !important; line-height:1.65 !important; margin:4px 0 0 !important; color:var(--rc-text) !important; }
  /* Shared disclosures, excluding transactional rows and structured input sheets. */
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) {
    border:0 !important; border-block:1px solid var(--rc-line) !important;
    border-radius:0 !important; background:var(--rc-paper) !important;
    box-shadow:none !important; margin:8px 0 !important; padding:0 !important;
  }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary {
    position:relative; list-style:none !important; display:flex !important; align-items:center; gap:8px;
    padding:9px 10px !important; min-height:36px; margin:0 !important;
    font-size:var(--rc-note) !important; line-height:1.5 !important; font-weight:550 !important;
    color:var(--rc-action) !important; background:var(--rc-paper) !important; cursor:pointer;
    border:0 !important; border-radius:0 !important;
  }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary::-webkit-details-marker { display:none; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary > .app-disclosure-icon { display:none !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary::before {
    content:'+' !important; display:grid !important; place-items:center; flex:0 0 18px;
    width:18px !important; height:18px !important; margin:0 !important; border:1px solid #d4deed;
    border-radius:3px; font-size:14px !important; line-height:1 !important; color:var(--rc-action);
    background:#fff; transform:none !important; position:static !important;
  }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix)[open] > summary::before { content:'−' !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary::after { display:none !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary:hover { background:var(--rc-action-bg) !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix)[open] > summary { background:var(--rc-soft) !important; color:var(--rc-ink) !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details-body,.detail-body) { padding:10px !important; font-size:var(--rc-note) !important; line-height:1.65 !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details-body,.detail-body) > p { margin:0 0 7px !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details-body,.detail-body) > :last-child { margin-bottom:0 !important; }
  /* Evidence and execution labels keep their distinct meanings and written labels. */
  html body.app-ui.report-app main#top .report-section .state-tag {
    border:0 !important; border-radius:3px !important; padding:3px 5px !important;
    font-size:10px !important; line-height:1.4 !important; min-height:20px;
    font-weight:500 !important; letter-spacing:0 !important; box-shadow:none !important;
  }
  html body.app-ui.report-app main#top .report-section .state-tag:is(.is-complete,.is-obtained,.is-verified) { color:var(--rc-success) !important; background:var(--rc-success-bg) !important; }
  html body.app-ui.report-app main#top .report-section .state-tag:is(.is-to-supplement,.is-conditional,.is-p1) { color:var(--rc-warning) !important; background:var(--rc-warning-bg) !important; }
  html body.app-ui.report-app main#top .report-section .state-tag:is(.is-not-started,.is-default,.is-to-verify) { color:#566b86 !important; background:#edf2f8 !important; }
  html body.app-ui.report-app main#top .report-section .state-tag.is-p0 { color:var(--rc-risk) !important; background:var(--rc-risk-bg) !important; }
  /* Table hierarchy; no column widths, numeric alignment or sticky positions changed. */
  html body.app-ui.report-app main#top .report-section table { font-variant-numeric:tabular-nums; }
  html body.app-ui.report-app main#top .report-section table caption { color:var(--rc-muted) !important; font-size:var(--rc-meta) !important; line-height:1.5 !important; text-align:left !important; padding:7px 0 !important; background:#fff !important; }
  html body.app-ui.report-app main#top .report-section table :is(thead th,tr:first-child > th:not([scope="row"])) { background:#f2f5f9 !important; color:#53647b !important; font-weight:600 !important; border-color:var(--rc-line) !important; }
  html body.app-ui.report-app main#top .report-section table .total-row > :is(th,td) { background:#edf3f9 !important; color:var(--rc-ink) !important; font-weight:650 !important; border-top:1px solid #b9c9de !important; }
  /* Field affordances and selection share one palette; each tool retains its sizing. */
  html body.app-ui.report-app main#top .report-section :is(input:not([type="checkbox"]):not([type="range"]),select) { border-color:#cbd6e5 !important; border-radius:var(--rc-radius) !important; color:var(--rc-action) !important; background-color:#fff !important; font-family:var(--font-sans) !important; }
  html body.app-ui.report-app main#top .report-section :is(input,select):disabled { color:#788496 !important; background:#f0f2f5 !important; cursor:not-allowed; }
  html body.app-ui.report-app main#top .report-section input[type="checkbox"] { accent-color:var(--rc-action); }
  html body.app-ui.report-app :is(button,a,summary,input,select):focus-visible { outline:2px solid var(--rc-action) !important; outline-offset:2px; }
  html body.app-ui.report-app main#top .report-section :is(.chart-segments,.gov-tabs,.workbook-view-tabs,.model-group-tabs) button { border-radius:var(--rc-radius) !important; font-family:var(--font-sans) !important; }
  html body.app-ui.report-app main#top .report-section :is(.chart-segments,.gov-tabs,.workbook-view-tabs,.model-group-tabs) button:is([aria-selected="true"],[aria-pressed="true"]) { color:var(--rc-action) !important; background:var(--rc-action-bg) !important; border-color:#c7d5ef !important; }
  html body.app-ui.report-app main#top .report-section :is(.source-reference-note,.chart-footnote,.model-note,.detail-body,.reading-details-body) a { color:var(--rc-action) !important; text-decoration:underline; text-decoration-color:#b7c8e8; text-underline-offset:3px; }
}
@media screen and (max-width:640px) {
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary { min-height:44px; }
}
@media print {
  .section-thesis { border-left:2px solid #8195bc; padding-left:8px; }
  :is(.evidence-note,.tx-basis,.model-fee-caution) { border-left:2px solid #c49a52; }
  :is(.finance-callout,.stop-rule) { border-left:2px solid #bc6775; }
}

/* Compact reading density: reduce display scale and empty space, not body legibility. */
.financial-expectations { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; padding:7px 0; border-bottom:1px solid #dfe6ef; }
.expectation-options { display:flex; gap:3px; padding:3px; background:#f2f5f9; border-radius:4px; }
.expectation-options button { font:500 12px var(--font-sans); color:#586b85; background:transparent; border:1px solid transparent; border-radius:3px; padding:5px 10px; min-height:30px; cursor:pointer; }
.expectation-options button[aria-pressed="true"] { color:#3e60b7; background:#fff; border-color:#c8d5ec; }
.expectation-status { font-size:11px; color:#66758a; }
.financial-expectations .expectation-assumptions { flex:1 0 100%; }
html body.app-ui.report-app main#top #data #financialExpectations .expectation-assumptions > summary { justify-content:flex-start !important; }
html body.app-ui.report-app main#top #data #financialExpectations .detail-body > p { font-size:12px !important; line-height:1.6 !important; }
html body.app-ui.report-app main#top #data #financialExpectations table { width:100% !important; min-width:0 !important; table-layout:fixed !important; }
html body.app-ui.report-app main#top #data #financialExpectations table :is(th,td) { width:auto !important; min-width:0 !important; position:static !important; white-space:normal !important; overflow-wrap:anywhere; font-size:11px !important; padding:6px 4px !important; color:#48586b !important; background:#fff !important; text-align:right !important; }
html body.app-ui.report-app main#top #data #financialExpectations table tr > :first-child { width:43% !important; text-align:left !important; }
html body.app-ui.report-app main#top #data #financialExpectations table thead th { background:#f2f5f9 !important; }
@media screen and (max-width:640px) {
  .expectation-options { width:100%; }
  .expectation-options button { flex:1; min-height:38px; padding-inline:5px; }
}
@media print { .expectation-options { display:none; } .expectation-status { color:#283344; font-weight:600; } }
@media screen {
  html body.app-ui.report-app main#top > section.shell.report-section { padding:18px 24px 16px !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section .section-head { margin-bottom:10px !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section :is(h1,.section-head h2) { font-size:18px !important; line-height:1.4 !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section :is(h3,.model-block-title h4,.tx-section-title h4) { font-size:14px !important; line-height:1.5 !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section .section-thesis { padding-block:4px !important; margin-top:4px !important; }
  html body.app-ui.report-app main#top .report-section .chapter-index { padding:4px 0 6px !important; margin-block:4px 10px !important; gap:2px 4px !important; }
  html body.app-ui.report-app main#top .report-section .chapter-index a { padding:3px 6px !important; min-height:28px; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section :is(.visual-panel,.financial-quality,.post-close-plan) { margin-top:8px !important; padding:10px 0 !important; }
  html body.app-ui.report-app main#top .report-section :is(.visual-panel h3,.financial-quality > h3,.model-block-title) { padding-bottom:6px !important; margin-bottom:7px !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section :is(.overview-monitor-item > strong,.decision-metric > strong,.model-dash > strong,.entry-summary-card > strong,.tx-metric > strong,.operating-signals strong) { font-size:20px !important; line-height:1.35 !important; margin-block:2px !important; }
  html body.app-ui.report-app main#top #financial.report-section > .decision-header__result .decision-metric { padding:10px 12px !important; }
  html body.app-ui.report-app main#top #financial.report-section > .decision-header__result .decision-metric:first-child { padding-left:0 !important; }
  html body.app-ui.report-app main#top .report-section .overview-monitor-item { padding:9px 12px !important; gap:3px; }
  html body.app-ui.report-app main#top .report-section .overview-monitor { margin-bottom:10px; }
  html body.app-ui.report-app main#top .report-section .valuation-ladder article { padding:8px 10px !important; min-height:0 !important; }
  html body.app-ui.report-app main#top .report-section .valuation-ladder article p { font-size:12px !important; line-height:1.6 !important; margin:0 !important; }
  html body.app-ui.report-app main#top .report-section :is(.operating-chart-pair,.operating-signals,.customer-proof-grid,.revenue-scenarios) { gap:12px !important; }
  html body.app-ui.report-app main#top .report-section :is(.order-path,.operating-signals) > article { min-height:0 !important; padding:9px 10px !important; }
  html body.app-ui.report-app main#top .report-section :is(.operating-signals,.order-path) p { margin:4px 0 !important; line-height:1.6 !important; }
  html body.app-ui.report-app main#top #data.report-section .model-dashboard { padding:4px 0 8px !important; margin-bottom:8px !important; gap:6px 0 !important; }
  html body.app-ui.report-app main#top #data.report-section .model-dashboard > div { padding:0 10px !important; }
  html body.app-ui.report-app main#top #data.report-section .model-outlook { padding:8px 0 !important; margin-bottom:10px !important; }
  html body.app-ui.report-app main#top #data.report-section :is(.model-block,.tx-section) { margin-block:8px !important; padding-block:8px !important; }
  html body.app-ui.report-app main#top #data.report-section :is(.model-block-title,.tx-section-title) { padding-bottom:5px !important; margin-bottom:6px !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) { margin-block:5px !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary { padding-block:7px !important; min-height:32px; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details-body,.detail-body) { padding:8px 10px !important; }
  html body.app-ui.report-app main#top .report-section table :is(th,td) { padding-top:6px !important; padding-bottom:6px !important; line-height:1.5 !important; }
}
@media screen and (max-width:640px) {
  html body.app-ui.report-app main#top > section.shell.report-section { padding:14px 16px !important; }
  html body.app-ui.report-app main#top .report-section .overview-monitor-item { padding:8px !important; }
  html body.app-ui.report-app main#top :is(#summary,#financial,#market,#execution,#data,#appendix).report-section :is(.overview-monitor-item > strong,.decision-metric > strong,.model-dash > strong,.entry-summary-card > strong,.tx-metric > strong,.operating-signals strong) { font-size:18px !important; }
  html body.app-ui.report-app main#top .report-section :is(.reading-details,.compact-details,.tx-detail,.data-appendix) > summary { min-height:40px; }
  html body.app-ui.report-app main#top .report-section .chapter-index a { min-height:36px; }
}
