/* Service-grade report page. Scoped to avoid changing other analysis screens. */
.analysis-report-service-page{
  --report-ink: #172521;
  --report-muted: #66716d;
  --report-green: #16352f;
  --report-blue: #1f3f5b;
  --report-amber: #9a6a2f;
  --report-green-soft: #e9f0ed;
  --report-blue-soft: #edf3f8;
  --report-amber-soft: #fbf4e8;
  --report-line: #dce3df;
  --report-paper: #fff;
  --report-page: #f4f7f5;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.report-workbench{
  display: grid;
  grid-template-columns: minmax(260px, .8fr) minmax(420px, 1.2fr);
  gap: 28px;
  align-items: center;
  padding: 26px 28px;
  border: 1px solid #cfdad4;
  border-radius: 8px;
  color: #fff;
  background: linear-gradient(135deg, #102a25 0%, #1d3e37 58%, #2d4c5f 100%);
  box-shadow: 0 14px 34px rgba(24, 46, 40, .12);
}

.report-workbench-kicker,
.report-section-eyebrow,
.report-document-brand,
.report-document-no,
.report-tabs-label{
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.report-workbench-kicker{ color: #b8d2c7; }

.report-workbench-title{
  margin: 8px 0 10px !important;
  color: #fff;
  font-size: 29px;
  font-weight: 800;
  letter-spacing: 0;
}

.report-workbench-desc{
  max-width: 520px;
  margin: 0;
  color: rgba(255,255,255,.72);
  font-size: 13px;
  line-height: 1.7;
}

.report-workbench-form{
  padding: 20px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 8px;
  background: rgba(255,255,255,.1);
  backdrop-filter: blur(10px);
}

.report-workbench .filter-label{
  color: rgba(255,255,255,.76);
  font-weight: 700;
}

.report-search-control{ margin-bottom: 14px; }

.report-input{
  height: 46px;
  border: 1px solid rgba(255,255,255,.38);
  border-radius: 8px;
  padding: 0 14px;
  color: #10201c;
  font-size: 13px;
}

.report-input:focus{
  border-color: #9fc7b8;
  box-shadow: 0 0 0 3px rgba(174, 215, 200, .18);
}

.report-search-btn{
  height: 46px;
  padding: 0 22px;
  border: 1px solid #fff;
  border-radius: 8px;
  background: #fff;
  color: #111;
  font-size: 12px;
  font-weight: 800;
  box-shadow: 0 8px 20px rgba(0,0,0,.13);
}

.report-search-btn:hover{
  background: #f3f8f5;
}

.analysis-report-service-page .report-search-btn{
  color: #111 !important;
}

.analysis29 .analysis-report-service-page .report-search-btn{
  color: #111 !important;
}

.report-input-help{
  margin-top: 7px;
  color: rgba(255,255,255,.56);
  font-size: 11px;
}

.report-favorites-block .help-text{ color: rgba(255,255,255,.6); }

.report-favorite-row{
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.analysis-report-service-page .report-favorite-chip{
  padding: 6px 10px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 8px;
  color: #fff;
  background: rgba(255,255,255,.08);
  font-size: 11px;
}

.report-document{
  padding: 0 42px;
  border: 1px solid #dfe4e1;
  border-radius: 8px;
  background: var(--report-paper);
  box-shadow: 0 18px 52px rgba(32, 46, 41, .09);
}

.report-document-masthead{
  display: flex;
  justify-content: space-between;
  align-items: center;
  min-height: 72px;
  border-bottom: 1px solid var(--report-ink);
}

.report-document-identity,
.report-document-actions,
.report-document-meta,
.report-overview-grid,
.report-document-footer{
  display: flex;
  align-items: center;
}

.report-document-identity{ gap: 12px; }
.report-document-brand{ color: var(--report-green); }
.report-document-type{ color: #77817d; font-size: 11px; }
.report-document-actions{ gap: 10px; }

.report-print-btn{
  padding: 7px 12px;
  border: 1px solid var(--report-line);
  border-radius: 6px;
  background: #fff;
  color: var(--report-ink);
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  cursor: pointer;
}

.report-print-btn:hover{ background: #f3f6f4; }

.report-confidential-badge{
  padding: 6px 9px;
  color: #fff;
  background: var(--report-blue);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 1px;
}

.report-document-header{
  display: flex;
  justify-content: space-between;
  gap: 24px;
  padding: 24px 0 18px;
  border-bottom: 1px solid var(--report-line);
}

.report-document-titleline{
  display: flex;
  align-items: baseline;
  gap: 12px;
}

.report-document-no{ color: #6f7b76; }
.report-document-label{ color: var(--report-ink); font-size: 19px; font-weight: 800; letter-spacing: 0; }
.report-document-meta{ gap: 18px; color: #66716d; font-size: 10px; white-space: nowrap; }
.report-report-shell{ gap: 28px; padding: 28px 0 38px; }

.report-brief{
  display: grid;
  grid-template-columns: minmax(220px, .34fr) minmax(0, .66fr);
  gap: 24px;
  padding: 24px 0;
  border-top: 1px solid var(--report-line);
  border-bottom: 1px solid var(--report-line);
}

.report-brief-head{
  padding-right: 8px;
}

.report-brief-title{
  margin: 0 0 10px !important;
  color: var(--report-ink);
  font-size: 22px;
  line-height: 1.35;
  font-weight: 850;
  letter-spacing: 0;
}

.report-brief-desc{
  margin: 0;
  color: #4f5e58;
  font-size: 12px;
  line-height: 1.75;
}

.report-brief-card-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.report-brief-card{
  min-height: 132px;
  padding: 16px;
  border: 1px solid var(--report-line);
  border-radius: 8px;
  background: #fbfcfb;
}

.report-brief-card:nth-child(2){
  background: var(--report-blue-soft);
}

.report-brief-card:nth-child(3){
  background: var(--report-amber-soft);
}

.report-brief-card-label{
  margin-bottom: 10px;
  color: var(--report-green);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: .4px;
}

.report-brief-card-text{
  margin: 0;
  color: #4b5752;
  font-size: 12px;
  line-height: 1.7;
}

.report-flow{
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border: 1px solid var(--report-line);
  border-radius: 8px;
  overflow: hidden;
  background: #fff;
}

.report-flow-item{
  display: flex;
  gap: 12px;
  min-height: 86px;
  padding: 14px;
  border-right: 1px solid var(--report-line);
}

.report-flow-item:last-child{ border-right: 0; }

.report-flow-no{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  border-radius: 50%;
  background: var(--report-green-soft);
  color: var(--report-green);
  font-size: 11px;
  font-weight: 850;
}

.report-flow-title{
  color: var(--report-ink);
  font-size: 12px;
  font-weight: 850;
}

.report-flow-desc{
  margin-top: 4px;
  color: #687570;
  font-size: 11px;
  line-height: 1.55;
}

.report-placeholder{
  padding: 64px 20px;
  border-color: #bdcbc5;
  border-radius: 8px;
  background: #f7f9f8;
  color: #53615b;
}

.report-overview-card{
  gap: 24px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: #fff;
}

.report-overview-head{
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  min-height: 150px;
  padding: 30px;
  color: #fff;
  background: linear-gradient(135deg, #173830 0%, #21483f 54%, #263f58 100%);
  border-radius: 8px 8px 0 0;
}

.report-overview-titlegroup{ max-width: 75%; }
.report-section-eyebrow{ margin-bottom: 14px; color: #66867b; }
.report-overview-head .report-section-eyebrow{ color: #9fc5b7; }

.report-overview-address{
  max-width: 760px;
  font-size: 38px;
  line-height: 1.25;
  font-weight: 850;
  letter-spacing: 0;
}

.report-overview-grid{
  gap: 16px;
  margin-top: 18px;
  color: rgba(255,255,255,.68);
  font-size: 11px;
}

.report-cover-mark{ text-align: right; }
.report-cover-mark-label{ color: #9fc5b7; font-size: 9px; font-weight: 800; letter-spacing: 1.3px; }
.report-cover-mark-number{ margin-top: 4px; color: rgba(255,255,255,.18); font-size: 58px; font-weight: 800; line-height: 1; }

.report-meta-grid{ gap: 0; border: 1px solid var(--report-line); border-top: 0; border-radius: 0 0 8px 8px; overflow: hidden; }
.report-meta-card{ border: 0; border-radius: 0; padding: 18px 20px; }
.report-meta-card + .report-meta-card{ border-left: 1px solid var(--report-line); }
.report-meta-title{ color: #71807a; font-size: 9px; letter-spacing: 1.2px; }
.report-risk-chip{ min-height: 28px; border-radius: 6px; background: var(--report-green-soft); color: var(--report-green); font-size: 10px; font-weight: 800; }
.report-risk-chip:nth-child(2){ background: var(--report-blue-soft); color: var(--report-blue); }
.report-risk-chip:nth-child(3){ background: var(--report-amber-soft); color: var(--report-amber); }

.report-report-summary{ gap: 0; border-top: 2px solid var(--report-ink); }
.report-report-summary > .report-ai-section{
  display: grid;
  grid-template-columns: minmax(180px, .28fr) minmax(0, .72fr);
  gap: 28px;
  padding: 24px 0;
  border: 0;
  border-bottom: 1px solid var(--report-line);
  border-radius: 0;
  background: #fff;
}

.report-report-summary .report-section-title{ margin: 0; }
.report-ai-section{ border-color: var(--report-line); border-radius: 8px; background: #f8faf9; }
.report-section-title{ color: var(--report-ink); font-size: 13px; font-weight: 850; }
.report-body-text, .report-bullet-list{ color: #46524d; font-size: 12px; line-height: 1.85; }

.report-prototype-note{
  border: 0;
  border-left: 3px solid #9a7b47;
  border-radius: 0;
  background: #faf7f1;
  color: #665a47;
}

.report-tabs-wrap{ border-top: 1px solid var(--report-ink); }
.report-tabs-label{ padding-top: 18px; color: #75807c; }
.report-tabs{ margin-top: 12px; }
.report-tabs .tab-container{ gap: 4px; border-bottom: 1px solid var(--report-line); }
.report-tabs .tab > span,
.report-tabs .tab--selected > span{
  min-height: 44px;
  padding: 0 16px;
  border: 1px solid transparent;
  border-radius: 8px 8px 0 0;
  background: #f7f9f8;
  color: #74807b;
  font-size: 11px;
  font-weight: 800;
}

.report-tabs .tab--selected > span{
  border-color: var(--report-line);
  border-bottom-color: #fff;
  background: #fff;
  color: var(--report-green);
}

.report-tab-pane{ padding-top: 30px; }

.report-disclosure-guide{
  margin-top: 34px;
  padding-top: 28px;
  border-top: 1px solid var(--report-line);
}

.report-guide-head{
  display: grid;
  grid-template-columns: minmax(160px, .28fr) minmax(0, .72fr);
  gap: 28px;
  padding-bottom: 22px;
  border-bottom: 1px solid var(--report-line);
}

.report-guide-title{
  margin: 0 0 10px !important;
  color: var(--report-ink);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0;
}

.report-guide-desc{
  max-width: 760px;
  margin: 0;
  color: #54615c;
  font-size: 12px;
  line-height: 1.8;
}

.report-guide-body{
  display: flex;
  flex-direction: column;
  gap: 0;
}

.report-guide-block{
  display: grid;
  grid-template-columns: minmax(160px, .28fr) minmax(0, .72fr);
  gap: 28px;
  padding: 24px 0;
  border-bottom: 1px solid var(--report-line);
}

.report-guide-section-title{
  color: var(--report-ink);
  font-size: 13px;
  font-weight: 800;
}

.report-guide-item-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.report-guide-item{
  min-height: 120px;
  padding: 16px;
  border: 1px solid var(--report-line);
  border-radius: 8px;
  background: #f7f9f8;
}

.report-guide-item-title{
  margin-bottom: 8px;
  color: var(--report-green);
  font-size: 12px;
  font-weight: 800;
}

.report-guide-item-desc,
.report-guide-list,
.report-guide-quote{
  margin: 0;
  color: #46524d;
  font-size: 12px;
  line-height: 1.85;
}

.report-guide-list{
  margin-top: 10px;
  padding-left: 18px;
}

.report-guide-stack{
  display: flex;
  flex-direction: column;
}

.report-guide-list li + li{
  margin-top: 6px;
}

.report-guide-quote{
  padding: 16px 18px;
  border-left: 3px solid var(--report-green);
  border-radius: 0 8px 8px 0;
  background: #f7f9f8;
}

.report-guide-quote p{
  margin: 0;
}

.report-guide-quote p + p{
  margin-top: 8px;
}

.report-guide-caution{
  border-bottom: 0;
}

.report-chapter-head, .report-appendix-head{ margin-bottom: 24px; padding-bottom: 18px; border-bottom: 1px solid var(--report-line); }
.report-chapter-title, .report-appendix-title{ margin: 0 0 8px !important; color: var(--report-ink); font-size: 24px; letter-spacing: 0; }
.report-chapter-desc, .report-appendix-desc{ margin: 0; color: #6e7974; font-size: 12px; }

.report-kpi-grid{ gap: 10px; align-items: stretch; }
.report-kpi-card{
  min-height: 112px;
  padding: 16px;
  border-color: var(--report-line);
  border-radius: 8px;
  background: #fff;
  box-shadow: none;
}
.report-kpi-card:nth-child(2n){ background: #fbfcfb; }
.report-kpi-value{ color: var(--report-green); font-size: 28px; letter-spacing: 0; }
.report-kpi-help{ color: #7a8580; }

.report-story-card{
  padding: 24px 0 0;
  border: 0;
  border-top: 1px solid var(--report-ink);
  border-radius: 0;
}
.report-block-title{ color: var(--report-ink); font-size: 18px; font-weight: 850; letter-spacing: 0; }
.report-chart-card{ border-color: var(--report-line); border-radius: 8px; background: #fff; }
.report-ai-grid{ gap: 10px; }
.report-ai-grid .report-ai-section{ padding: 16px; }

.report-summary-card,
.report-json-wrap,
.report-llm-status-card{
  border-color: var(--report-line);
  border-radius: 8px;
  box-shadow: none;
}

.report-kv-row{ border-color: var(--report-line); border-radius: 6px; }
.report-document-footer{
  justify-content: space-between;
  min-height: 58px;
  border-top: 1px solid var(--report-ink);
  color: #7a8580;
  font-size: 9px;
  letter-spacing: .4px;
  text-transform: uppercase;
}

@media (max-width: 1200px){
  .report-workbench{ grid-template-columns: 1fr; }
  .report-document-header{ flex-direction: column; }
  .report-document-meta{ flex-wrap: wrap; }
  .report-brief{ grid-template-columns: 1fr; }
  .report-brief-card-grid{ grid-template-columns: repeat(3, minmax(180px, 1fr)); }
  .report-flow{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .report-flow-item:nth-child(2){ border-right: 0; }
  .report-flow-item:nth-child(-n + 2){ border-bottom: 1px solid var(--report-line); }
}

@media (max-width: 900px){
  .report-document{ padding: 0 24px; }
  .report-workbench-title{ font-size: 25px; }
  .report-overview-address{ font-size: 30px; }
  .report-overview-head{ flex-direction: column; }
  .report-overview-titlegroup{ max-width: 100%; }
  .report-cover-mark{ display: none; }
  .report-brief-card-grid,
  .report-flow{ grid-template-columns: 1fr; }
  .report-flow-item{ border-right: 0; border-bottom: 1px solid var(--report-line); }
  .report-flow-item:last-child{ border-bottom: 0; }
  .report-report-summary > .report-ai-section{ grid-template-columns: 1fr; gap: 12px; }
  .report-guide-head,
  .report-guide-block,
  .report-guide-item-grid{ grid-template-columns: 1fr; }
  .report-guide-head,
  .report-guide-block{ gap: 12px; }
}

@media print{
  @page{ size: A4; margin: 12mm; }
  body{ background: #fff !important; }
  .app-header,
  .analysis-sidebar,
  .analysis-subnav,
  .page-header,
  .report-workbench,
  .report-print-btn,
  .report-tabs-label,
  .report-tabs .tab-container,
  .report-document-actions,
  .report-document-footer{
    display: none !important;
  }
  .analysis29{
    max-width: none !important;
    padding: 0 !important;
  }
  .analysis-shell{ display: block !important; }
  .report-document{
    padding: 0;
    border: 0;
    box-shadow: none;
  }
  .report-overview-card,
  .report-story-card,
  .report-kpi-card,
  .report-ai-section{
    break-inside: avoid;
  }
}
