/* ====== 89 实习报告字数 · 稿纸米黄 + 钢笔蓝 + 朱红 ====== */
.irw{
  --bg:#f7f4ec; --bg2:#efeadd; --card:#fff; --card2:#fbf9f3;
  --ink:#191713; --sub:#463f36; --faint:#8b8273; --line:#e3dccb; --line2:#f1ecdf;
  --pen:#2a5a8c; --pen-d:#1b3f66; --pen-soft:#e2ebf4;
  --seal:#b3453c; --seal-soft:#f8e6e2; --paper:#fdfbf5;
  --shadow-sm:0 1px 2px rgba(25,23,19,.05),0 7px 18px rgba(25,23,19,.05);
  --shadow:0 2px 6px rgba(25,23,19,.07),0 22px 48px rgba(25,23,19,.10);
  --r:20px; --r-sm:13px;
  background:
    radial-gradient(720px 320px at 100% -6%, rgba(42,90,140,.10), transparent 62%),
    radial-gradient(520px 260px at -6% 22%, rgba(179,69,60,.06), transparent 66%),
    var(--bg);
}
:root[data-theme="dark"] .irw{
  --bg:#12110e; --bg2:#191713; --card:#211e19; --card2:#27231d;
  --ink:#f2eee5; --sub:#b8b09f; --faint:#827965; --line:#332d24; --line2:#28231c;
  --pen:#8fb8dc; --pen-d:#b2d2ec; --pen-soft:rgba(143,184,220,.13);
  --seal:#e08a7f; --seal-soft:rgba(224,138,127,.13);
  --paper:#241f19;
}
.irw .tsk-h1 b{color:var(--pen-d);}

.irw-hero{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:32px;padding:30px 0 24px;align-items:start;}

/* ---- 稿纸 ---- */
.irw-pad{
  position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--r);
  padding:20px 22px 22px 40px;box-shadow:var(--shadow);overflow:hidden;
  background-image:repeating-linear-gradient(180deg,transparent 0 27px,rgba(42,90,140,.09) 27px 28px);
}
.irw-pad::before{
  content:"";position:absolute;left:20px;top:0;bottom:0;width:1px;background:rgba(179,69,60,.35);
}
.irw-holes{position:absolute;left:8px;top:52px;display:grid;gap:44px;}
.irw-holes i{width:11px;height:11px;border-radius:50%;background:var(--bg2);border:1px solid var(--line);box-shadow:inset 0 1px 2px rgba(0,0,0,.14);}
.irw-pad-head{display:flex;justify-content:space-between;align-items:center;padding-bottom:9px;border-bottom:1px dashed var(--line);margin-bottom:10px;}
.irw-pad-head span{font-size:12px;font-weight:800;letter-spacing:.28em;color:var(--pen-d);}
.irw-pad-head em{font-style:normal;font:800 9px/1 var(--num,"Bahnschrift",monospace);color:var(--faint);letter-spacing:.16em;}
.irw-pad label{display:block;font-size:11.5px;font-weight:700;color:var(--faint);margin-top:9px;}
.irw-pad select,.irw-pad input{
  width:100%;height:36px;margin-top:4px;padding:0 10px;border:1.5px solid var(--line);border-radius:8px;
  background:var(--card);color:var(--ink);font:700 13.5px/34px var(--num,"Bahnschrift",monospace);outline:none;
}
.irw-pad select{font-family:inherit;font-weight:700;}
.irw-pad input:focus,.irw-pad select:focus{border-color:var(--pen);box-shadow:0 0 0 3px var(--pen-soft);}
.irw-grid2{display:grid;grid-template-columns:1fr 1fr;gap:2px 12px;}
.irw-pad .tsk-btn-main{background:linear-gradient(180deg,#356ea6,var(--pen-d));border:0;box-shadow:0 10px 22px rgba(42,90,140,.24);}
.irw-pad-foot{margin-top:10px;font-size:10.5px;color:var(--faint);text-align:center;}

/* ---- 结果 ---- */
.irw-result{margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 24px;}
.irw-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:11px;}
.irw-res-card{background:var(--card2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:15px 17px;}
.irw-res-card b{display:block;font:800 24px/1.15 var(--num,"Bahnschrift",monospace);color:var(--ink);font-variant-numeric:tabular-nums;}
.irw-res-card span{display:block;font-size:11.5px;color:var(--faint);font-weight:700;margin-top:5px;}
.irw-res-card i{display:block;font-style:normal;font-size:10.5px;color:var(--sub);margin-top:4px;line-height:1.5;}
.irw-res-card.irw-main{background:var(--pen-soft);border-color:rgba(42,90,140,.3);}
.irw-res-card.irw-main b{color:var(--pen-d);}

.irw-progress{margin-top:16px;}
.irw-progress-bar{height:14px;border-radius:99px;background:var(--line2);overflow:hidden;}
.irw-progress-bar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--pen),#5d93c4);transition:width .45s ease;}
.irw-progress-scale{display:flex;justify-content:space-between;margin-top:7px;font-size:10.5px;color:var(--faint);font-weight:700;}

.irw-struct{margin-top:16px;display:grid;gap:7px;}
.irw-srow{display:grid;grid-template-columns:150px 1fr 86px;gap:11px;align-items:center;}
.irw-srow span{font-size:11.5px;font-weight:700;color:var(--faint);}
.irw-sbar{height:12px;border-radius:99px;background:var(--line2);overflow:hidden;}
.irw-sbar i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--seal),#d0766c);opacity:.85;transition:width .45s ease;}
.irw-srow b{text-align:right;font:800 11.5px/1.4 var(--num,"Bahnschrift",monospace);color:var(--sub);}

.irw-alert{margin-top:14px;padding:12px 15px;border-radius:10px;background:var(--pen-soft);border:1px solid rgba(42,90,140,.26);font-size:12.5px;line-height:1.8;color:var(--sub);}
.irw-alert b{color:var(--pen-d);}
.irw-alert.is-warn{background:var(--seal-soft);border-color:rgba(179,69,60,.3);}
.irw-alert.is-warn b{color:var(--seal);}

/* ---- 结构表 ---- */
.irw-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.irw-table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);overflow:hidden;box-shadow:var(--shadow-sm);min-width:640px;}
.irw-table th,.irw-table td{padding:12px 15px;text-align:left;font-size:12.5px;line-height:1.7;border-bottom:1px solid var(--line2);vertical-align:top;}
.irw-table tr:last-child td{border-bottom:0;}
.irw-table thead th{background:var(--card2);font-weight:800;color:var(--pen-d);font-size:12px;}
.irw-table tbody tr:nth-child(even){background:var(--card2);}
.irw-strong{font-weight:800;color:var(--ink);white-space:nowrap;}
.irw-pct{font:800 12.5px/1.5 var(--num,"Bahnschrift",monospace);color:var(--seal);white-space:nowrap;}
.irw-cnt{font:800 12.5px/1.5 var(--num,"Bahnschrift",monospace);color:var(--pen-d);white-space:nowrap;}

/* ---- 句式库 ---- */
.irw-tpl{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:10px;}
.irw-tpl-item{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 17px;box-shadow:var(--shadow-sm);}
.irw-tpl-item::before{
  content:"“";position:absolute;right:14px;top:6px;font:800 30px/1 Georgia,serif;color:var(--pen);opacity:.16;
}
.irw-tpl-item b{font-size:12.5px;font-weight:800;color:var(--seal);}
.irw-tpl-item p{margin:6px 0 0;font-size:12px;line-height:1.8;color:var(--sub);}

/* ---- 清单 ---- */
.irw-check{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px;}
.irw-check-item{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 17px 14px 44px;box-shadow:var(--shadow-sm);}
.irw-check-item::before{
  content:"";position:absolute;left:15px;top:17px;width:15px;height:15px;border-radius:4px;
  border:1.5px solid var(--pen);background:var(--pen-soft);
}
.irw-check-item b{font-size:12.5px;font-weight:800;color:var(--pen-d);}
.irw-check-item p{margin:5px 0 0;font-size:12px;line-height:1.75;color:var(--sub);}

@media (max-width:900px){
  .irw-hero{grid-template-columns:1fr;gap:22px;}
}
@media (max-width:520px){
  .irw-grid2{grid-template-columns:1fr;}
  .irw-srow{grid-template-columns:112px 1fr 70px;gap:8px;}
}
