/* ====== 64 停工留薪期 · 砖红（工地警示）+ 水泥灰 + 安全黄 ====== */
.ilp{
  --bg:#f6f2ee; --bg2:#ece5df; --card:#fff; --card2:#faf6f2;
  --ink:#1d1613; --sub:#4a3d37; --faint:#8a7a72; --line:#e3d8d0; --line2:#efe7e1;
  --brick:#b5483c; --brick-d:#8f3228; --brick-soft:#f7e2de;
  --yellow:#e6a117; --yellow-soft:#fdf1d6; --ok:#2f7a5a;
  --shadow-sm:0 1px 2px rgba(29,22,19,.05),0 7px 18px rgba(29,22,19,.05);
  --shadow:0 2px 6px rgba(29,22,19,.07),0 22px 48px rgba(29,22,19,.10);
  --r:20px; --r-sm:13px;
  background:
    radial-gradient(720px 320px at 94% -8%, rgba(181,72,60,.10), transparent 60%),
    radial-gradient(560px 300px at 0% 6%, rgba(230,161,23,.07), transparent 58%),
    var(--bg);
}
:root[data-theme="dark"] .ilp{
  --bg:#15100e; --bg2:#1b1513; --card:#221a17; --card2:#2a211d;
  --ink:#f3e9e4; --sub:#c3b0a7; --faint:#8a766c; --line:#3a2c26; --line2:#2c221d;
  --brick:#d06a5c; --brick-d:#e08579; --brick-soft:rgba(208,106,92,.15);
  --yellow-soft:rgba(230,161,23,.14);
}

.ilp-hero{display:grid;grid-template-columns:minmax(0,1fr) 372px;gap:30px;padding:30px 0 24px;align-items:start;}
.ilp-hero-l .tsk-h1 b{color:var(--brick-d);}

/* 核定单 */
.ilp-sheet{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 24px 24px;}
.ilp-stripes{position:absolute;inset:0 0 auto 0;height:10px;background:repeating-linear-gradient(-45deg,var(--yellow) 0 12px,#2b211c 12px 24px);opacity:.9;}
.ilp-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0 14px;padding-bottom:10px;border-bottom:1px dashed var(--line);}
.ilp-sheet-badge{font-size:12px;font-weight:800;letter-spacing:.06em;color:#fff;background:var(--brick);padding:4px 10px;border-radius:6px;}
.ilp-sheet-head em{font-style:normal;font-size:11px;font-weight:700;color:var(--faint);letter-spacing:.04em;}
.ilp-sheet label{display:block;font-size:11.5px;font-weight:700;color:var(--faint);margin-top:11px;}
.ilp-sheet label:first-of-type{margin-top:0;}
.ilp-sheet input,.ilp-sheet select{width:100%;height:36px;margin-top:5px;padding:0 10px;border:1.5px solid var(--line);border-radius:9px;background:var(--card2);color:var(--ink);font:700 14px/36px var(--num,"Bahnschrift",monospace);outline:none;}
.ilp-sheet select{font-family:inherit;font-weight:700;}
.ilp-sheet input:focus,.ilp-sheet select:focus{border-color:var(--brick);box-shadow:0 0 0 3px var(--brick-soft);}

/* 结果 */
.ilp-result{margin-top:6px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:22px 24px;}
.ilp-res-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;}
.ilp-res-card{background:var(--card2);border:1px solid var(--line2);border-radius:var(--r-sm);padding:16px 18px;}
.ilp-res-card b{display:block;font:800 28px/1.1 var(--num,"Bahnschrift",monospace);color:var(--ink);font-variant-numeric:tabular-nums;}
.ilp-res-card span{display:block;font-size:12px;color:var(--faint);font-weight:600;margin-top:5px;}
.ilp-res-card i{display:block;font-style:normal;font-size:11px;color:var(--sub);margin-top:4px;line-height:1.5;}
.ilp-res-card.ilp-main{border-left:4px solid var(--brick);}
.ilp-res-card.ilp-main b{color:var(--brick-d);}
.ilp-res-card.ilp-benefit{border-left:4px solid var(--yellow);}
.ilp-res-card.ilp-benefit b{color:var(--yellow);}
.ilp-total{display:flex;align-items:baseline;justify-content:flex-end;gap:8px;margin-top:16px;padding-top:14px;border-top:1px dashed var(--line);}
.ilp-total span{font-size:12.5px;color:var(--faint);font-weight:700;}
.ilp-total b{font:800 30px/1 var(--num,"Bahnschrift",monospace);color:var(--brick-d);font-variant-numeric:tabular-nums;}
.ilp-total small{font-size:11px;color:var(--faint);}
.ilp-alert{margin-top:14px;padding:12px 15px;border-radius:10px;background:var(--yellow-soft);border:1px solid rgba(230,161,23,.4);font-size:12.5px;line-height:1.75;color:var(--sub);}
.ilp-alert.is-bad{background:var(--brick-soft);border-color:rgba(181,72,60,.4);}
.ilp-verdict{margin-top:10px;font-size:12.5px;line-height:1.85;color:var(--sub);}
.ilp-verdict b{color:var(--brick-d);}

/* 核心规则 */
.ilp-core{display:grid;gap:9px;}
.ilp-core-row{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:14px 18px;box-shadow:var(--shadow-sm);}
.ilp-core-row b{font-size:12.5px;font-weight:800;color:var(--brick-d);}
.ilp-core-row p{margin:0;font-size:12.5px;line-height:1.75;color:var(--sub);}

/* 等级表 */
.ilp-levels{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:9px;}
.ilp-level{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:12px 14px;box-shadow:var(--shadow-sm);}
.ilp-level.is-severe{border-color:rgba(181,72,60,.4);background:var(--brick-soft);}
.ilp-lv-no{flex:none;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;font:800 14px/1 var(--num,"Bahnschrift",monospace);background:var(--brick);color:#fff;}
.ilp-level.is-severe .ilp-lv-no{background:var(--brick-d);}
.ilp-level b{display:block;font-size:13.5px;font-weight:800;color:var(--ink);}
.ilp-level i{display:block;font-style:normal;font-size:10.5px;color:var(--faint);margin-top:2px;line-height:1.5;}

/* 表格 */
.ilp-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);}
.ilp-table th,.ilp-table td{padding:13px 16px;text-align:left;font-size:12.5px;line-height:1.7;border-bottom:1px solid var(--line2);}
.ilp-table tr:last-child th,.ilp-table tr:last-child td{border-bottom:0;}
.ilp-table th{width:130px;font-weight:800;color:var(--brick-d);background:var(--card2);white-space:nowrap;}
.ilp-table td{color:var(--sub);}

/* 步骤 */
.ilp-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;}
.ilp-steps li{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:16px 18px 16px 18px;box-shadow:var(--shadow-sm);}
.ilp-steps-no{font:800 12px/1 var(--num,"Bahnschrift",monospace);color:#fff;background:var(--brick);padding:4px 8px;border-radius:5px;}
.ilp-steps li b{display:block;font-size:13.5px;font-weight:800;color:var(--ink);margin-top:9px;}
.ilp-steps li p{margin:5px 0 0;font-size:12px;line-height:1.7;color:var(--sub);}

/* 列表 */
.ilp-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.ilp-list li{position:relative;padding:13px 16px 13px 38px;background:var(--card);border:1px solid var(--line);border-radius:10px;font-size:12.5px;line-height:1.7;color:var(--sub);box-shadow:var(--shadow-sm);}
.ilp-list li::before{content:"!";position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;border-radius:50%;background:var(--yellow);color:#fff;font-weight:800;font-size:11px;display:grid;place-items:center;}
.ilp-list-warn li::before{background:var(--brick);}

@media (max-width:900px){
  .ilp-hero{grid-template-columns:1fr;}
  .ilp-core-row{grid-template-columns:1fr;gap:4px;}
  .ilp-table th{width:96px;}
}
