/* ==========================================================================
   classic-beige.css — 米金主题
   小升初简历生成插件 / theme v1.0
   单位统一用 mm，保证 A4 打印 1:1
   ========================================================================== */

@page { size: A4; margin: 0 }

:root{
  --ink:#6B4B2F; --ink-l:#8A6A48;
  --gold:#B79A6E; --gold-p:#E3D2B4;
  --paper:#FFFFFF; --cream:#FBF6EC; --cream-2:#FAF4E7;
  --line:#EFE4D0; --txt:#3A3A3A;
}

*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-print-color-adjust:exact;print-color-adjust:exact}
body{
  font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",STSong,SimSun,serif;
  color:var(--txt); background:#E8E6E1;
  -webkit-font-smoothing:antialiased;
}
body.view{padding:0 0 40px}
body.print{background:#fff}

/* ---------- 页面骨架 ---------- */
.page{
  /* 简历正文必须是衬线（宋体），否则会继承外层 UI 的黑体，版面会散 */
  font-family:"Noto Serif SC","Source Han Serif SC","Songti SC",STSong,SimSun,serif;
  position:relative; width:210mm; height:297mm; background:var(--paper);
  overflow:hidden; page-break-after:always; break-after:page;
}
.page:last-child{page-break-after:auto; break-after:auto}
body.view .page{margin:0 auto 24px; box-shadow:0 2px 6px rgba(0,0,0,.06),0 14px 34px rgba(90,61,36,.13)}
.pad{position:absolute; inset:0; padding:20mm 21mm 18mm}

/* 角落花饰 */
.corner{position:absolute; width:104px; height:104px; opacity:.42; pointer-events:none}
.corner.tl{top:9mm; left:9mm}
.corner.br{bottom:9mm; right:9mm; transform:rotate(180deg)}
.corner.tr{top:9mm; right:9mm; transform:rotate(90deg)}
.corner.bl{bottom:9mm; left:9mm; transform:rotate(270deg)}

/* 章节头 */
.sec{text-align:center; padding-bottom:9mm}
.rule{display:flex; align-items:center; justify-content:center; height:12px; margin-bottom:4.5mm}
.rule span{display:block; width:42mm; height:1px;
  background:linear-gradient(90deg,rgba(201,174,131,0),rgba(201,174,131,.95))}
.rule span.r{background:linear-gradient(270deg,rgba(201,174,131,0),rgba(201,174,131,.95))}
.rule i{display:block; width:5px; height:5px; margin:0 7px; background:var(--gold);
  transform:rotate(45deg); flex:0 0 auto}
.sec h2{font-size:23pt; font-weight:700; color:var(--ink); letter-spacing:7pt;
  text-indent:7pt; line-height:1.2}
.sec .en{font-family:Georgia,serif; font-size:7.5pt; color:#C2B29A; letter-spacing:2.5pt;
  text-indent:2.5pt; margin-top:2.2mm; text-transform:uppercase}

/* ---------- 获奖板块（可流式分页）---------- */
.blk{padding-top:var(--blk-gap,7mm)}
.blk.first{padding-top:0}
.blkh{display:flex; align-items:center; gap:5mm}
.blkh b{background:var(--gold); color:#fff; font-size:10pt; font-weight:600;
  letter-spacing:2.5px; text-indent:2.5px; padding:1.7mm 7mm; flex:0 0 auto}
.blkh i{flex:1; height:0; border-top:1px dashed var(--gold-p)}
.blkn{font-size:8.4pt; color:#A3907A; letter-spacing:.6px; padding:2.6mm 0 0 1mm}

ol.aw{list-style:none; counter-reset:a; padding-top:3.2mm}
ol.aw li{counter-increment:a; position:relative; padding-left:2.3em;
  font-size:9.5pt; line-height:2.06; color:#3E3E3E; text-align:justify}
ol.aw li::before{content:counter(a) "、"; position:absolute; left:0; color:var(--ink-l)}
ol.aw.two{column-count:2; column-gap:10mm}
ol.aw.two li{break-inside:avoid; font-size:9.2pt; line-height:2.0}
ol.aw.cont{counter-reset:none}

/* ---------- 通用表格 ---------- */
table.tb{width:100%; border-collapse:collapse; font-size:9.6pt}
table.tb th{background:var(--gold); color:#fff; font-weight:600; letter-spacing:1.5px;
  padding:2.6mm 1mm; border:.5pt solid var(--gold)}
table.tb td{padding:2.7mm 1mm; text-align:center; border:.5pt solid var(--line); color:#3E3E3E}
table.tb tbody tr:nth-child(even){background:var(--cream-2)}
table.tb tbody tr.mute td{color:#C9C5BD; background:#FDFBF7}

/* ---------- 页脚 ---------- */
.pf{position:absolute; left:21mm; right:21mm; bottom:10mm; display:flex;
  justify-content:space-between; align-items:center; font-size:7.5pt; color:#BCAC93;
  letter-spacing:1.2px; border-top:.5pt solid #F1E7D7; padding-top:2.5mm}
.pf .no{font-family:Georgia,serif; letter-spacing:2px}

/* ---------- 封面 ---------- */
.cover{background:
   radial-gradient(120% 55% at 78% 0%,rgba(255,255,255,.7),rgba(255,255,255,0) 62%),
   linear-gradient(180deg,#BFD6CF 0%,#D5E5DF 22%,#EDF1E9 38%,#FBF7EE 55%,#FBF7EE 100%)}
.cover .wash{position:absolute; inset:0;
  background:radial-gradient(58% 38% at 10% 100%,rgba(183,154,110,.10),transparent 70%)}
.band{position:absolute; left:0; right:0; top:74mm; height:56mm;
  background:linear-gradient(180deg,rgba(255,253,247,.95),rgba(255,251,242,.88));
  border-top:1.2pt solid rgba(183,154,110,.55); border-bottom:1.2pt solid rgba(183,154,110,.55)}
.band::after{content:""; position:absolute; left:0; right:0; top:2.2mm; height:.5pt;
  background:rgba(183,154,110,.3)}
.band::before{content:""; position:absolute; left:0; right:0; bottom:2.2mm; height:.5pt;
  background:rgba(183,154,110,.3)}
.oct{position:absolute; left:20mm; top:59mm; width:64mm; height:74mm;
  background:linear-gradient(150deg,#DCC49B,#B79A6E 45%,#E4CFA9 72%,#A98757);
  clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);
  padding:1.5mm}
.oct .inner{width:100%; height:100%; background:#fff; padding:1.4mm;
  clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%)}
.oct img{width:100%; height:100%; object-fit:cover; display:block;
  clip-path:polygon(29% 0,71% 0,100% 29%,100% 71%,71% 100%,29% 100%,0 71%,0 29%);
  object-position:50% 18%}
.ctitle{position:absolute; left:93mm; right:16mm; top:83mm}
.ctitle h1{font-size:35pt; font-weight:700; color:var(--ink); letter-spacing:11pt;
  text-indent:11pt; line-height:1.15}
.ctitle .ul{width:54mm; height:2px; margin:6mm 0 4.5mm;
  background:linear-gradient(90deg,var(--gold),rgba(183,154,110,0))}
.ctitle p{font-size:9.8pt; line-height:2.05; color:#7C6650; letter-spacing:.6px}
.cinfo{position:absolute; left:44mm; top:174mm; width:124mm}
.cinfo div{display:flex; align-items:flex-end; padding:0 2mm 2.6mm;
  border-bottom:1px dashed rgba(183,154,110,.75); margin-bottom:6mm}
.cinfo .k{width:27mm; font-size:10.5pt; color:var(--ink); letter-spacing:3.2px; flex:0 0 auto}
.cinfo .v{font-size:11pt; color:#4A4A4A; letter-spacing:1px}
.cover-mark{position:absolute; left:0; right:0; bottom:14mm; text-align:center;
  font-size:7.5pt; color:#B0A08A; letter-spacing:3px}

/* ---------- 目录 ---------- */
.toc{position:absolute; left:0; right:0; top:74mm; padding:0 20mm}
.toc-item{display:flex; align-items:baseline; margin-bottom:18mm}
.toc-no{font-family:Georgia,serif; font-size:13pt; color:var(--gold); width:17mm; flex:0 0 auto}
.toc-name{font-size:13.5pt; color:var(--ink); letter-spacing:3px}
.toc-dot{flex:1; border-bottom:1px dotted #D6BFA0; margin:0 5mm; transform:translateY(-2.5px)}
.toc-pg{font-family:Georgia,serif; font-size:10.5pt; color:#A98F6C}

/* ---------- 个人信息 ---------- */
.idwrap{display:flex; gap:12mm}
.idlist{flex:1; padding-top:1mm}
.idrow{display:flex; align-items:baseline; padding:4.3mm 0;
  border-bottom:.5pt solid #F2E9D9; font-size:10.4pt}
.idrow .k{width:27mm; flex:0 0 auto; color:var(--ink); letter-spacing:3px; font-size:10pt}
.idrow .v{color:#3A3A3A; letter-spacing:.5px; line-height:1.7}
.photo{width:41mm; flex:0 0 auto; margin-top:1mm}
.photo .fr{background:#fff; padding:1.8mm; border:1.2pt solid var(--gold-p);
  box-shadow:0 3px 12px rgba(107,75,47,.10)}
.photo img{width:100%; display:block}
.subblk{display:flex; justify-content:center; margin-top:26mm}
.subblk b{background:var(--gold); color:#fff; font-size:10pt; font-weight:600;
  letter-spacing:2.5px; text-indent:2.5px; padding:1.7mm 7mm}

/* ---------- 自荐信 ---------- */
.letter{font-size:10.3pt; line-height:2.24; text-align:justify; color:#333;
  text-indent:2em; letter-spacing:.2px}
.letter p{padding-bottom:2.6mm}
.letter .noind{text-indent:0}
.sign{text-align:right; padding-top:6mm; font-size:10.2pt; line-height:2.1; color:#333}

/* ---------- 证书墙 ---------- */
.grid2{display:grid; grid-template-columns:1fr 1fr; gap:8mm 9mm; padding-top:2mm}
.cert .box{background:#fff; padding:1.5mm; border:.6pt solid #E8DCC6;
  box-shadow:0 2px 9px rgba(107,75,47,.07); display:flex; align-items:center;
  justify-content:center; height:98mm; overflow:hidden}
.cert img{max-width:100%; max-height:100%; object-fit:contain; display:block}
.cert .cap{padding-top:3mm; font-size:8.4pt; color:var(--ink-l); text-align:center;
  letter-spacing:.4px; line-height:1.6; white-space:nowrap; overflow:hidden;
  text-overflow:ellipsis}

/* ---------- 才艺 ---------- */
.talents{position:relative; height:206mm; padding-top:2mm}
.tal{position:absolute; text-align:center}
.tal .cir{border-radius:50%; overflow:hidden;
  box-shadow:0 0 0 1px rgba(183,154,110,.35),0 6px 16px rgba(107,75,47,.16)}
.tal img{width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.08)}
.tal .lb{padding-top:3.5mm; font-size:10.5pt; color:var(--ink); letter-spacing:2.5px}
.tal .sub{padding-top:1.2mm; font-size:7.8pt; color:#A3907A; letter-spacing:.4px}

/* ---------- 各方评价 ---------- */
.ev{padding-bottom:15mm}
.ev:last-child{padding-bottom:0}
.ev h3{font-size:12.8pt; color:var(--ink); letter-spacing:3px; padding-bottom:4mm;
  display:flex; align-items:center; gap:3.2mm}
.ev h3::before{content:""; width:2.4mm; height:2.4mm; background:var(--gold);
  transform:rotate(45deg); display:block}
.ev p{font-size:10pt; line-height:2.15; text-align:justify; text-indent:2em; color:#3E3E3E}
.ev .hr{height:0; border-top:1px dashed var(--gold-p); margin-top:9mm}
.endmark{position:absolute; left:0; right:0; bottom:26mm; text-align:center;
  font-size:8.6pt; color:#B49B76; letter-spacing:2px}

/* ---------- 封底 ---------- */
.back{background:linear-gradient(180deg,#FBF7EE,#F6EEDE)}
.back .center{position:absolute; inset:0; display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center; padding:0 30mm}
.back h2{font-size:20pt; color:var(--ink); letter-spacing:7pt; text-indent:7pt;
  padding-bottom:11mm; font-weight:700}
.back p{font-size:10pt; line-height:2.3; color:#6B563F; text-align:justify; text-indent:2em}
.back .who{padding-top:16mm; font-size:11.5pt; color:var(--ink); letter-spacing:5px}
.back .tel{padding-top:3.5mm; font-size:9.5pt; color:#9A8367; letter-spacing:2px}

/* ---------- 测量用 ---------- */
.measure{position:absolute; left:-9999mm; top:0; width:168mm}
.measure .page{box-shadow:none}

@media print{
  body{background:#fff}
  body.view{padding:0}
  body.view .page{margin:0; box-shadow:none}
}
