/* ============================================
   finance-report.css v3 — 标准化财务报告
   四表一注 · 可打印 · 企业会计准则
   ============================================ */

/* ===== Toolbar ===== */
.fr-toolbar{flex-wrap:wrap;gap:8px;}
.fr-toolbar-controls{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:6px;}
.fr-ctrl-lb{font-size:13px;color:var(--fr-text-2);white-space:nowrap;}
.fr-input{padding:4px 8px;border:1px solid var(--fr-border);border-radius:6px;font-size:13px;width:240px;background:#fff;}
.fr-select{padding:4px 8px;border:1px solid var(--fr-border);border-radius:6px;font-size:13px;background:#fff;cursor:pointer;}
.fr-btn{padding:5px 14px;border:none;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap;transition:all .15s;}
.fr-btn-primary{background:var(--fr-primary);color:#fff;}
.fr-btn-primary:hover{background:#1549b8;}
.fr-btn-print{background:#15803d;color:#fff;}
.fr-btn-print:hover{background:#106632;}

/* ===== Content Area ===== */
.fr-content-area{background:var(--fr-bg);padding:24px;max-width:none;}

/* ===== Report Document（兼容旧结构，确保屏幕下满屏） ===== */
.report-doc{max-width:none;margin:0;}

/* ===== Report Page ===== */
.rpt-page{
  background:#fff;
  margin-bottom:24px;
  padding:48px 56px;
  box-shadow:0 1px 3px rgba(0,0,0,.06),0 8px 24px rgba(0,0,0,.04);
  border-radius:4px;
  position:relative;
}

/* ===== Page Title ===== */
.rpt-page-title{
  text-align:center;
  font-size:22px;
  font-weight:700;
  letter-spacing:6px;
  margin-bottom:20px;
  padding-bottom:12px;
  border-bottom:2px solid #1a1a2e;
  color:#1a1a2e;
  font-family:"SimSun","STSong","Songti SC",serif;
}

/* ===== Statement Info Bar ===== */
.rpt-stmt-info{
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:12px;
  color:#4a5568;
  margin-bottom:16px;
  padding:6px 0;
  border-bottom:1px solid #e8ecf0;
}

/* ===== Statement Table ===== */
.rpt-table{
  width:100%;
  border-collapse:collapse;
  font-size:11px;
  font-family:"SimSun","STSong","Songti SC",serif;
  color:#1a1a2e;
  line-height:1.9;
}
.rpt-table-wide{font-size:10px;}
.rpt-table th{
  border:1px solid #cbd5e0;
  padding:5px 8px;
  font-weight:700;
  text-align:center;
  background:#f7fafc;
  font-size:11px;
}
.rpt-th-lb{text-align:left;width:46%;}
.rpt-th-am{text-align:right;width:27%;}
.rpt-th{border:1px solid #cbd5e0;padding:5px 6px;font-weight:700;text-align:center;background:#f7fafc;}
.rpt-table td{
  border:1px solid #cbd5e0;
  padding:3px 8px;
  vertical-align:middle;
}
.r-lb{text-align:left;padding-left:10px;}
.r-am{text-align:right;padding-right:10px;font-variant-numeric:tabular-nums;font-family:"SimSun","STSong",serif;}
.r-row .r-lb{font-weight:400;}
.r-sub .r-lb{font-weight:600;}
.r-sub .r-am{font-weight:600;}
.r-total .r-lb{font-weight:700;}
.r-total .r-am{font-weight:700;}
.r-total{border-top:2px solid #1a1a2e;}
.r-sec td{
  background:#e6eaf0;
  font-weight:700;
  font-size:12px;
  text-align:center;
  letter-spacing:2px;
  padding:6px 8px;
}
.r-subsec td{
  background:#f0f4f8;
  font-weight:600;
  font-size:11px;
  padding:4px 10px;
  color:#4a5568;
}
.r-th-row th{background:#f7fafc;font-size:10px;padding:4px 6px;}

/* ===== Statement Footer ===== */
.rpt-stmt-footer{
  display:flex;
  justify-content:space-around;
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid #e8ecf0;
  font-size:12px;
  color:#4a5568;
  font-family:"SimSun","STSong",serif;
}

/* ===== Cover Page ===== */
.rpt-cover{
  text-align:center;
  padding:80px 56px;
  min-height:700px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.rpt-cover-inner{width:100%;}
.rpt-cover-seal{
  display:inline-block;
  padding:8px 28px;
  border:2px solid #1a56db;
  border-radius:50px;
  color:#1a56db;
  font-size:14px;
  font-weight:600;
  letter-spacing:3px;
  margin-bottom:40px;
}
.rpt-cover-title{
  font-size:36px;
  font-weight:700;
  letter-spacing:12px;
  line-height:1.6;
  margin-bottom:24px;
  color:#1a1a2e;
  font-family:"SimSun","STSong","Songti SC",serif;
}
.rpt-cover-line{
  width:200px;
  height:3px;
  background:#1a56db;
  margin:0 auto 40px;
}
.rpt-cover-info{
  margin-bottom:40px;
  font-size:15px;
  line-height:2.2;
  font-family:"SimSun","STSong",serif;
}
.rpt-cover-row{display:flex;justify-content:center;gap:16px;margin-bottom:4px;}
.rpt-cover-lb{color:#8896a6;font-size:14px;min-width:80px;text-align:right;}
.rpt-cover-val{color:#1a1a2e;font-weight:600;min-width:200px;text-align:left;}
.rpt-cover-declaration{
  background:#f7fafc;
  border:1px solid #e8ecf0;
  border-radius:8px;
  padding:24px;
  margin-bottom:40px;
  font-size:14px;
  line-height:2;
  color:#4a5568;
  font-family:"SimSun","STSong",serif;
}
.rpt-cover-footer{
  margin-top:48px;
  font-size:13px;
  line-height:2.4;
  color:#4a5568;
  font-family:"SimSun","STSong",serif;
}
.rpt-seal-area{
  display:inline-block;
  border:1px dashed #cbd5e0;
  padding:8px 32px;
  margin-left:8px;
  color:#a0aec0;
  font-size:12px;
}

/* ===== Audit Report ===== */
.rpt-audit-body{
  font-size:13px;
  line-height:2;
  text-align:justify;
  color:#1a1a2e;
  font-family:"SimSun","STSong","Songti SC",serif;
}
.rpt-audit-body p{text-indent:2em;margin-bottom:8px;}
.rpt-audit-h{
  font-size:15px;
  font-weight:700;
  margin:20px 0 10px;
  padding-left:0;
  color:#1a1a2e;
  font-family:"SimHei","STHeiti","Microsoft YaHei",sans-serif;
}
.rpt-audit-matter{font-weight:600;margin-top:14px !important;text-indent:2em;}
.rpt-audit-signature{
  margin-top:40px;
  padding-top:20px;
  border-top:1px solid #e8ecf0;
}
.rpt-sig-block{
  text-align:right;
  font-size:13px;
  line-height:2.4;
  color:#1a1a2e;
  font-family:"SimSun","STSong",serif;
}
.rpt-sig-block p{text-indent:0;}

/* ===== Notes ===== */
.rpt-notes-body{
  font-size:12px;
  line-height:2;
  text-align:justify;
  color:#1a1a2e;
  font-family:"SimSun","STSong","Songti SC",serif;
}
.rpt-note-item{margin-bottom:24px;}
.rpt-note-title{
  font-size:14px;
  font-weight:700;
  margin-bottom:8px;
  color:#1a1a2e;
  font-family:"SimHei","STHeiti","Microsoft YaHei",sans-serif;
}
.rpt-notes-body p{text-indent:2em;margin-bottom:6px;}
.rpt-note-sub{
  font-weight:600;
  text-indent:2em !important;
  margin-top:10px !important;
}
.rpt-note-table{
  width:100%;
  border-collapse:collapse;
  font-size:11px;
  margin:10px 0;
  font-family:"SimSun","STSong",serif;
}
.rpt-note-table th,.rpt-note-table td{
  border:1px solid #cbd5e0;
  padding:5px 8px;
  text-align:center;
}
.rpt-note-table th{background:#f7fafc;font-weight:700;}
.rpt-notes-footer{margin-top:32px;}


/* ===== Key Audit Matter (KAM) ===== */
.rpt-audit-kam{
  margin:16px 0 20px 0;
  padding:14px 18px 14px 22px;
  border-left:3px solid #1a56db;
  background:#f7fafc;
  border-radius:0 6px 6px 0;
}
.rpt-audit-kam .rpt-audit-matter{
  font-size:14px;
  margin-bottom:10px !important;
}
.rpt-kam-label{
  font-weight:700;
  color:#1a56db;
  text-indent:2em;
  margin-top:8px !important;
  margin-bottom:4px !important;
  font-size:12.5px;
}
.rpt-kam-list{
  text-indent:2em;
  margin-bottom:4px !important;
  font-size:12.5px;
}
.rpt-sig-note{
  margin-top:16px;
  padding-top:12px;
  border-top:1px dashed #cbd5e0;
  text-align:center;
  font-size:11px;
  color:#8896a6;
  font-style:italic;
}
.rpt-sig-note p{text-indent:0;font-style:italic;}

/* ===== Print adjustments for audit report ===== */
@media print{
  .rpt-audit-kam{
    background:#f9fafb !important;
    page-break-inside:avoid;
  }
  .rpt-audit-h{page-break-after:avoid;}
  .rpt-audit-matter{page-break-after:avoid;}
  .rpt-kam-label{page-break-after:avoid;}
  .rpt-audit-signature{page-break-inside:avoid;}
}

/* ===== Print Styles ===== */
@media print{
  @page{
    size:A4;
    margin:2cm 1.8cm 2cm 1.8cm;
  }
  body{background:#fff !important;font-size:10pt;}
  .no-print{display:none !important;}
  .main-content{margin:0 !important;padding:0 !important;}
  .fr-content-area{background:#fff !important;padding:0 !important;max-width:none !important;}
  .report-doc{max-width:none !important;margin:0 !important;}
  .rpt-page{
    margin:0 !important;
    padding:0 !important;
    box-shadow:none !important;
    border-radius:0 !important;
    page-break-after:always;
  }
  .rpt-page:last-child{page-break-after:auto;}
  .rpt-cover{min-height:0 !important;padding:120px 0 80px !important;}
  .rpt-table{font-size:9pt;}
  .rpt-table-wide{font-size:8pt;}
  .rpt-page-title{font-size:16pt;}
  .rpt-audit-body{font-size:10.5pt;}
  .rpt-notes-body{font-size:10pt;}
  .rpt-stmt-info{font-size:9pt;}
  .rpt-stmt-footer{font-size:9pt;}
}

/* ===== Responsive ===== */
@media(max-width:900px){
  .rpt-page{padding:24px 20px;}
  .rpt-cover-title{font-size:26px;letter-spacing:6px;}
  .rpt-table{font-size:10px;}
  .fr-input{width:160px;}
}
@media(max-width:640px){
  .fr-toolbar-controls{flex-direction:column;align-items:flex-start;}
  .fr-toolbar .topbar-mobile-actions{margin-left:auto;}
  .fr-input{width:100%;}
  .rpt-page{padding:16px 12px;}
  .rpt-cover-title{font-size:22px;letter-spacing:4px;}
  .rpt-table{font-size:9px;}
  .rpt-stmt-info{flex-direction:column;gap:4px;}
}


/* ===== 产品矩阵返回入口（白底顶栏场景，深色样式）） */
.portal-link {
  display: inline-block;
  margin-right: 12px;
  padding: 6px 14px;
  border: 1px solid rgba(15, 23, 42, 0.22);
  border-radius: 8px;
  color: #1e293b !important;
  background: rgba(15, 23, 42, 0.04);
  text-decoration: none;
  font-size: 13px;
  white-space: nowrap;
  vertical-align: middle;
  transition: background 0.2s, border-color 0.2s;
}
.portal-link:hover {
  background: rgba(15, 23, 42, 0.1);
  border-color: rgba(15, 23, 42, 0.4);
  color: #0f172a !important;
}

/* ============================================================
   V3 AI 高科技视觉层 · 财务报告屏幕满屏化（2026-08-18）
   保留打印 A4 格式；屏幕显示时充分利用空间
   ============================================================ */

/* ---- 屏幕下报告页占满容器 ---- */
@media screen {
  .fr-content-area { padding: 24px; }
  .rpt-page {
    padding: 32px 36px;
    box-shadow: 0 2px 6px rgba(0,0,0,.05), 0 14px 36px rgba(0,0,0,.06);
  }
}

/* ---- 大屏增强：标题渐变辉光 ---- */
.rpt-page-title {
  background: linear-gradient(120deg, #0f172a 30%, #1a56db 60%, #7c3aed 90%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.rpt-cover-seal {
  background: linear-gradient(120deg, #1a56db, #4f46e5, #7c3aed);
  color: #fff !important;
  border: none;
  box-shadow: 0 4px 14px rgba(37, 99, 235, 0.25);
}

/* ---- 宽屏：报告页更大气、内容左对齐减少空白 ---- */
@media screen and (min-width: 1200px) {
  .rpt-page { padding: 36px 44px; }
  .rpt-page-title { font-size: 26px; letter-spacing: 8px; }

  .rpt-cover { padding: 48px 44px; min-height: auto; }
  .rpt-cover-inner { max-width: none; }
  .rpt-cover-title { font-size: 42px; }
  .rpt-cover-info { text-align: left; }
  .rpt-cover-row { justify-content: flex-start; gap: 24px; }
  .rpt-cover-declaration { text-align: left; }

  .rpt-audit-body p { text-indent: 0; text-align: left; line-height: 1.9; }
  .rpt-audit-h { font-size: 17px; }

  .rpt-table { font-size: 12.5px; }
  .rpt-table th, .rpt-table td { padding: 6px 10px; }
  .rpt-th-lb { width: 50%; }
  .rpt-th-am { width: 25%; }

  .rpt-notes-body { font-size: 13px; }
  .rpt-note-table { font-size: 12px; }
}

@media screen and (min-width: 1600px) {
  .fr-content-area { padding: 28px; }
  .rpt-page { padding: 42px 52px; }
  .rpt-table { font-size: 13.5px; }
  .rpt-table th, .rpt-table td { padding: 7px 12px; }
  .rpt-cover-title { font-size: 48px; }
}

/* ---- 平板/手机保持可打印紧凑感 ---- */
@media screen and (max-width: 900px) {
  .rpt-page { padding: 24px 20px; }
}

