/* ===================================================================
   单据模板样式 — 每个区域字体字号固定，员工只改内容不改排版
   =================================================================== */

.sheet{font-size:12px}
.sheet table{border-collapse:collapse;width:100%}
.sheet .pad{padding:14mm 12mm}

/* =========================================================
   A. 外贸单据（Quotation / Invoice）—— 深蓝表格风
   ========================================================= */
.d-trade{--tb:#1F4E9C;--tb2:#2C5EA8;--tline:#A9BEDC;color:#1a1a1a}
.d-trade .pad{padding:12mm 11mm}

.d-trade .th{display:flex;align-items:flex-start;gap:10px}
.d-trade .th-l{flex:1;min-width:0}
.d-trade .th-r{text-align:right;flex-shrink:0;min-width:200px}
.d-trade .logo{width:46px;height:46px;object-fit:contain;flex-shrink:0}
.d-trade .cn{font-size:19px;font-weight:700;color:var(--tb);line-height:1.2}
.d-trade .bigtitle{font-size:31px;font-weight:400;color:var(--tb);letter-spacing:-.5px;line-height:1}
.d-trade .docno{font-size:10.5px;color:#333;margin-top:3px}
.d-trade .en{font-size:12.5px;font-weight:700;color:var(--tb);margin-top:9px}
.d-trade .meta{font-size:10px;color:#333;line-height:1.55;margin-top:4px}
.d-trade .meta b{font-weight:400}
.d-trade .toh{font-size:13px;color:var(--tb);margin-top:9px;font-weight:400;letter-spacing:.3px}
.d-trade .rule{height:2px;background:var(--tb);margin:9px 0 0}

.d-trade table.items{margin-top:9px;border:1px solid var(--tline)}
.d-trade table.items th{
  background:var(--tb2);color:#fff;font-weight:500;font-size:10.5px;
  padding:6px 5px;border:1px solid var(--tline);text-align:center;letter-spacing:.2px;
}
.d-trade table.items td{border:1px solid var(--tline);padding:6px 6px;font-size:9.5px;vertical-align:middle;line-height:1.45}
.d-trade td.c{text-align:center}
.d-trade td.r{text-align:right}
.d-trade td.desc{font-size:9.5px;line-height:1.5}
.d-trade .imgcell{text-align:center;padding:4px}
.d-trade .imgcell img{max-width:56px;max-height:56px;object-fit:contain;margin:1px}
.d-trade .imgph{
  width:56px;height:46px;border:1px dashed #C3D0E4;border-radius:3px;
  display:inline-grid;place-items:center;color:#93A6C2;font-size:8px;line-height:1.2;text-align:center;padding:2px;
}

.d-trade .sumwrap{display:flex;gap:10px;margin-top:9px;align-items:flex-start}
.d-trade .signbox{flex:1;min-height:70px;position:relative}
.d-trade table.sums{width:270px;flex-shrink:0;border-collapse:collapse}
.d-trade table.sums td{padding:5px 8px;font-size:10.5px;border:1px solid var(--tline)}
.d-trade table.sums td.k{text-align:right;color:#333;background:#fff;border:none;width:120px}
.d-trade table.sums td.v{text-align:right;background:#EDEDED;width:150px}
.d-trade table.sums tr.total td.k{background:var(--tb2);color:#fff;border-color:var(--tb2);font-weight:600;letter-spacing:.4px}
.d-trade table.sums tr.total td.v{background:var(--tb2);color:#fff;border-color:var(--tb2);font-weight:700;font-size:13px}

.d-trade .banner{
  margin-top:10px;padding:9px 12px;text-align:center;color:#fff;font-size:10px;line-height:1.6;
  background:
    repeating-radial-gradient(circle at 12% 40%,rgba(255,255,255,.14) 0 1px,transparent 1px 7px),
    repeating-radial-gradient(circle at 74% 62%,rgba(255,255,255,.12) 0 1px,transparent 1px 8px),
    linear-gradient(90deg,#2C5EA8,#1F4E9C 55%,#2C5EA8);
}
.d-trade .remarks{margin-top:10px;font-size:9px;line-height:1.62;color:#111}
.d-trade .remarks .rt{font-weight:700;margin-bottom:2px}

/* =========================================================
   B. 研学发票（Bilingual Invoice）—— 细线现代风
   ========================================================= */
.d-tinv{--nv:#1B2B48;--soft:#F4F6FA;--bd:#DFE4EC;color:#1B2B48}
.d-tinv .pad{padding:16mm 14mm}

.d-tinv .th{display:flex;align-items:flex-start;gap:16px;padding-bottom:12px;border-bottom:2px solid var(--nv)}
.d-tinv .th-l{flex:1;min-width:0}
.d-tinv .th-r{text-align:right;flex-shrink:0}
.d-tinv .cn{font-size:17px;font-weight:800;letter-spacing:-.2px}
.d-tinv .en{font-size:12px;font-weight:700;color:#42557A;margin-top:2px}
.d-tinv .meta{font-size:9.5px;color:#54637F;line-height:1.7;margin-top:8px}
.d-tinv .meta b{color:#1B2B48;font-weight:700}
.d-tinv .bigtitle{font-size:27px;font-weight:800;letter-spacing:1.5px}
.d-tinv .subtitle{font-size:10px;letter-spacing:5px;color:#54637F;margin-top:1px}
.d-tinv .kv{font-size:10px;color:#54637F;margin-top:10px;line-height:1.75}
.d-tinv .kv b{color:#1B2B48;font-weight:700}

.d-tinv .boxes{display:flex;gap:12px;margin-top:16px}
.d-tinv .box{
  flex:1;border:1px solid var(--bd);border-radius:7px;padding:11px 13px;background:#fff;
}
.d-tinv .box .bh{font-size:9.5px;font-weight:700;color:#8A97AD;letter-spacing:.6px;padding-bottom:7px;border-bottom:1px solid var(--bd);margin-bottom:8px}
.d-tinv .box .bn{font-size:13px;font-weight:800;margin-bottom:3px}
.d-tinv .box .bl{font-size:10px;color:#54637F;line-height:1.7}
.d-tinv .box .bl b{color:#1B2B48;font-weight:700}

.d-tinv table.items{margin-top:16px}
.d-tinv table.items th{
  background:var(--nv);color:#fff;padding:8px 9px;font-size:10px;font-weight:700;text-align:left;
}
.d-tinv table.items th small{display:block;font-weight:400;opacity:.66;font-size:8.5px}
.d-tinv table.items th.c,.d-tinv table.items td.c{text-align:center}
.d-tinv table.items th.r,.d-tinv table.items td.r{text-align:right}
.d-tinv table.items td{padding:14px 9px;font-size:10.5px;border-bottom:1px solid var(--bd)}
.d-tinv table.items td .n1{font-weight:800;font-size:11.5px}
.d-tinv table.items td .n2{font-size:9.5px;color:#7A889E;margin-top:2px}
.d-tinv table.items td.r .cur{font-size:8.5px;color:#8A97AD;display:block}

.d-tinv .foot{display:flex;gap:14px;margin-top:18px;align-items:flex-start}
.d-tinv .terms{
  flex:1;background:var(--soft);border-left:3px solid var(--nv);border-radius:0 7px 7px 0;padding:11px 13px;
}
.d-tinv .terms .tt{font-size:10.5px;font-weight:800;margin-bottom:7px}
.d-tinv .terms .ti{font-size:9.5px;line-height:1.65;color:#42557A}
.d-tinv .terms .ti b{color:#1B2B48;display:block;font-weight:700}
.d-tinv .totals{width:280px;flex-shrink:0}
.d-tinv .totals .sub{display:flex;justify-content:space-between;font-size:10.5px;padding:6px 12px;color:#42557A}
.d-tinv .totals .grand{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--soft);border-top:2px solid var(--nv);padding:12px;margin-top:5px;
}
.d-tinv .totals .grand .gl{font-size:11.5px;font-weight:800}
.d-tinv .totals .grand .gl small{display:block;font-size:8.5px;color:#8A97AD;font-weight:600}
.d-tinv .totals .grand .gv{font-size:19px;font-weight:800;letter-spacing:-.4px}

.d-tinv .chopzone{margin-top:22px;text-align:right;position:relative;min-height:120px}
.d-tinv .chopzone .cz-h{font-size:10.5px;font-weight:700;margin-bottom:10px}
.d-tinv .chopzone .cz-c{font-size:11px;font-weight:800}
.d-tinv .chopzone .cz-e{font-size:9.5px;color:#54637F}
.d-tinv .chopzone .cz-line{
  margin-top:44px;margin-left:auto;width:230px;border-top:1px dashed #A9B4C6;
  font-size:9px;color:#8A97AD;padding-top:4px;text-align:center;
}
.d-tinv .thanks{position:absolute;left:0;bottom:6px;text-align:left;font-size:9.5px;color:#8A97AD;line-height:1.6}

/* =========================================================
   C. 研学方案书（报价 + 行程）
   ========================================================= */
.d-plan{--pb:#12386E;--pb2:#2E5C9A;--pbd:#C9D6E8;color:#1a1a1a}
.d-plan .hero{background:linear-gradient(120deg,#12386E,#2E5C9A);color:#fff;padding:14mm 11mm 9mm}
.d-plan .hero h1{font-size:21px;font-weight:800;letter-spacing:-.3px;line-height:1.25}
.d-plan .hero h2{font-size:11.5px;font-weight:400;opacity:.9;margin-top:4px}
.d-plan .hero .metas{display:flex;flex-wrap:wrap;gap:6px 0;margin-top:11px}
.d-plan .hero .m{width:50%;font-size:9.5px;opacity:.95;line-height:1.5;padding-right:8px}
.d-plan .hero .m b{font-weight:700}
.d-plan .body{padding:9mm 11mm 12mm}

.d-plan .sech{
  display:flex;align-items:center;gap:8px;margin:14px 0 9px;
  font-size:14px;font-weight:800;color:var(--pb);
}
.d-plan .sech::before{content:"";width:4px;height:17px;background:var(--pb);border-radius:2px;flex-shrink:0}
.d-plan .sech small{font-weight:600;font-size:11px;color:#4A6B8E}

.d-plan table.cost{border:1px solid var(--pbd)}
.d-plan table.cost th{
  background:var(--pb2);color:#fff;font-size:9.5px;font-weight:700;
  padding:7px 7px;text-align:left;border:1px solid var(--pb2);
}
.d-plan table.cost th small,.d-plan table.cost td small{display:block;font-weight:400;opacity:.7;font-size:8.5px;margin-top:1px}
.d-plan table.cost td{border:1px solid var(--pbd);padding:7px;font-size:9.5px;vertical-align:top;line-height:1.5}
.d-plan table.cost td.r{text-align:right;white-space:nowrap}
.d-plan table.cost tr:nth-child(even) td{background:#F7F9FC}
.d-plan table.cost tr.sub td{background:#FFF4E2 !important;font-weight:800;color:#8A4B00;font-size:10px}
.d-plan table.cost tr.subb td{background:#E9F1FC !important;font-weight:800;color:var(--pb);font-size:10px}
.d-plan table.cost tr.grand td{background:var(--pb) !important;color:#fff;font-weight:800;font-size:11px}

.d-plan .note-box{
  margin-top:10px;border:1px solid #FFD9A8;background:#FFF8EC;border-radius:7px;padding:10px 12px;
}
.d-plan .note-box .nt{font-size:10px;font-weight:800;color:#B45309;margin-bottom:4px}
.d-plan .note-box .nb{font-size:9.5px;line-height:1.6;color:#6B4A12}
.d-plan .fx-box{
  margin-top:10px;border:1px solid #BFD4F0;background:#F2F7FF;border-radius:7px;padding:10px 12px;
}
.d-plan .fx-box .nt{font-size:10px;font-weight:800;color:var(--pb);margin-bottom:5px}
.d-plan .fx-box .fx{font-family:var(--mono);font-size:9.5px;background:#fff;border:1px solid #D6E3F5;border-radius:5px;padding:7px 9px;line-height:1.6;color:#12386E}
.d-plan .fx-box .nb{font-size:9px;color:#5A7096;margin-top:5px;line-height:1.5}

.d-plan .day{margin-top:11px;border:1px solid var(--pbd);border-radius:7px;overflow:hidden}
.d-plan .day .dh{background:var(--pb2);color:#fff;padding:7px 11px;font-size:11px;font-weight:800}
.d-plan .day .dh small{font-weight:500;opacity:.85}
.d-plan .day table{width:100%}
.d-plan .day td{border-bottom:1px solid #E7EDF6;padding:8px 11px;font-size:9.5px;vertical-align:top}
.d-plan .day tr:last-child td{border-bottom:none}
.d-plan .day td.tm{width:78px;color:#5A7096;font-weight:700;font-size:9.5px;white-space:nowrap}
.d-plan .day td.ct .t{font-weight:800;color:var(--pb);font-size:10.5px;margin-bottom:3px}
.d-plan .day td.ct .c1{line-height:1.55;color:#2B3A4F}
.d-plan .day td.ct .c2{line-height:1.5;color:#5A7096;margin-top:2px}
.d-plan .hl-box{
  margin:8px 11px 10px;border:1px solid #BFE3DE;background:#F0FAF8;border-radius:6px;padding:9px 11px;
}
.d-plan .hl-box .ht{font-size:10px;font-weight:800;color:#0A6E66;margin-bottom:3px}
.d-plan .hl-box .hb{font-size:9px;line-height:1.55;color:#2E5A55}
.d-plan .pfoot{margin-top:18px;padding-top:9px;border-top:1px solid var(--pbd);text-align:center;font-size:8.5px;color:#8FA2BE}

/* =========================================================
   D. 结算损益表 (P&L)
   ========================================================= */
.d-pnl{--gb:#0F3D2E;--gb2:#176B4F;--gbd:#CBD9D3;color:#1a1a1a}
.d-pnl .pad{padding:13mm 10mm}
.d-pnl .ph{border-bottom:2.5px solid var(--gb);padding-bottom:9px}
.d-pnl .ph h1{font-size:18px;font-weight:800;color:var(--gb)}
.d-pnl .ph h2{font-size:10.5px;color:#4A6B5E;font-weight:600;margin-top:2px}

.d-pnl table.meta{margin-top:10px;border:1px solid var(--gbd)}
.d-pnl table.meta td{border:1px solid var(--gbd);padding:5px 8px;font-size:9.5px}
.d-pnl table.meta td.k{background:#F1F6F4;font-weight:700;width:118px;color:#2A4A3E}

.d-pnl .sech{margin:13px 0 6px;font-size:11.5px;font-weight:800;color:var(--gb)}
.d-pnl table.acc{border:1px solid var(--gbd)}
.d-pnl table.acc th{
  background:var(--gb2);color:#fff;font-size:9px;font-weight:700;padding:6px 6px;
  border:1px solid var(--gb2);text-align:center;
}
.d-pnl table.acc td{border:1px solid var(--gbd);padding:5px 6px;font-size:9px;line-height:1.45}
.d-pnl table.acc td.r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.d-pnl table.acc td.c{text-align:center}
.d-pnl table.acc tr:nth-child(even) td{background:#F7FAF9}
.d-pnl table.acc tr.sum td{background:#E6F2ED !important;font-weight:800;color:var(--gb)}
.d-pnl table.acc tr.key td{background:var(--gb) !important;color:#fff;font-weight:800;font-size:9.5px}
.d-pnl table.acc td.neg{color:#B42318}
.d-pnl .pfoot{margin-top:14px;padding-top:8px;border-top:1px solid var(--gbd);font-size:8.5px;color:#7E958B;text-align:center}
