/* IVF Tool Kit v1.0.0 — 试管工具箱（命名空间 .ivft-*，不影响主题） */
/* 工具页专用 banner（覆盖主题默认 hero 图，避免聚合页步骤文字碎片） */
body.ivft-page .banner{background-image:url('tools-banner.jpg')!important;background-color:#1d3a6e!important}
.ivft{background:#f5f8fd;border:1px solid #dce6f5;border-radius:14px;padding:26px 26px 18px;margin:26px 0;font-size:15px}
.ivft-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 24px}
.ivft-f label{display:block;font-weight:600;color:#28425f;margin:0 0 7px;font-size:14px}
.ivft-f select,.ivft-f input[type=date],.ivft-f input[type=number]{width:100%;padding:10px 12px;border:1px solid #c3d3ea;border-radius:8px;background:#fff;font-size:14px;color:#1f3a56;box-sizing:border-box}
.ivft-f select:focus,.ivft-f input:focus{outline:none;border-color:#2c6ecf;box-shadow:0 0 0 3px rgba(44,110,207,.12)}
.ivft-chks,.ivft-radios{display:flex;flex-wrap:wrap;gap:8px 16px}
.ivft-chks label,.ivft-radios label{display:flex;align-items:center;gap:6px;font-weight:400;cursor:pointer;color:#3a5570}
.ivft-chks input,.ivft-radios input{accent-color:#2c6ecf;width:16px;height:16px}
.ivft-btn{margin-top:20px;background:#2c6ecf;color:#fff;border:none;border-radius:9px;padding:12px 34px;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s}
.ivft-btn:hover{background:#1f5ab4}
.ivft-out{margin-top:22px;background:#fff;border:1px solid #cfe0f5;border-radius:10px;padding:20px 22px}
.ivft-out[hidden]{display:none}
/* 结果卡 */
.ivft-big{font-size:30px;font-weight:700;color:#2c6ecf;margin:2px 0 4px}
.ivft-range{font-size:15px;color:#40608a;margin-bottom:12px}
.ivft-bar{height:14px;background:#e8eef8;border-radius:7px;overflow:hidden;margin:8px 0 6px;position:relative}
.ivft-bar i{position:absolute;top:0;bottom:0;background:linear-gradient(90deg,#5a9bf0,#2c6ecf);border-radius:7px}
.ivft-kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:14px 0 4px}
.ivft-kv>div{background:#f2f7ff;border-radius:8px;padding:12px 14px}
.ivft-kv b{display:block;font-size:17px;color:#22456e;margin-top:3px}
.ivft-kv span{font-size:13px;color:#6b83a3}
.ivft-out ul{margin:12px 0 0;padding-left:20px;color:#3a5570;line-height:1.9}
.ivft-tag{display:inline-block;background:#2c6ecf;color:#fff;border-radius:6px;padding:3px 10px;font-size:13px;margin-right:8px;vertical-align:2px}
.ivft-tag.g{background:#2e9e6b}.ivft-tag.o{background:#d98b2b}.ivft-tag.r{background:#cf5a4e}
/* 时间线 */
.ivft-tl{list-style:none;margin:6px 0 0;padding:0}
.ivft-tl li{position:relative;padding:0 0 16px 26px;border-left:2px solid #cfe0f5;margin-left:8px}
.ivft-tl li:last-child{border-left-color:transparent}
.ivft-tl li::before{content:'';position:absolute;left:-7px;top:3px;width:12px;height:12px;border-radius:50%;background:#2c6ecf;border:2px solid #fff;box-shadow:0 0 0 2px #cfe0f5}
.ivft-tl b{color:#22456e}
.ivft-tl span{color:#6b83a3;font-size:13px;margin-left:8px}
/* 工具箱聚合 */
.ivft-box{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;margin:26px 0}
.ivft-box-card{display:block;background:linear-gradient(160deg,#f7faff,#eef4fc);border:1px solid #d5e2f4;border-radius:12px;padding:18px;text-decoration:none;transition:transform .15s,box-shadow .15s}
.ivft-box-card:hover{transform:translateY(-3px);box-shadow:0 8px 22px rgba(44,110,207,.14)}
.ivft-box-ic{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#2c6ecf;color:#fff;font-weight:700;font-size:17px;margin-bottom:10px}
.ivft-box-tt{display:block;font-weight:700;color:#22456e;font-size:15px;margin-bottom:5px}
.ivft-box-ds{display:block;color:#6b83a3;font-size:13px;line-height:1.6}
/* 表格 */
.ivft-table table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden;margin-top:22px;font-size:14px}
.ivft-table th{background:#2c6ecf;color:#fff;padding:10px 14px;text-align:left;font-weight:600}
.ivft-table td{padding:10px 14px;border-top:1px solid #e4ecf7;color:#3a5570}
/* 注释 */
.ivft-note{font-size:12.5px;color:#8aa0bd;margin:14px 0 0;line-height:1.7}
.ivft-page-disc{font-size:12.5px;color:#8aa0bd;border-top:1px dashed #d5e2f4;margin-top:26px;padding-top:14px;line-height:1.8}
/* 响应式 */
@media(max-width:768px){
  .ivft{padding:18px 16px 12px}
  .ivft-grid{grid-template-columns:1fr}
  .ivft-big{font-size:25px}
  .ivft-box{grid-template-columns:1fr 1fr;gap:10px}
  .ivft-box-card{padding:12px}
  .ivft-box-ic{width:32px;height:32px;font-size:14px;margin-bottom:6px}
  .ivft-box-tt{font-size:13.5px}
  .ivft-box-ds{font-size:12px}
}

/* v1.2.0 旅程分组与参考依据 */
.ivft-stage{margin:30px 0 6px}
.ivft-stage-h{font-size:17px;font-weight:700;color:#1d3a6e;padding-left:12px;border-left:4px solid #2c6ecf;margin:0 0 12px}
.ivft-ref{margin-top:16px;background:#f0f6ff;border:1px dashed #b9cdf0;border-radius:10px;padding:12px 16px;font-size:12.5px;color:#5a7599}
.ivft-ref b{color:#2c6ecf;font-size:13px}
.ivft-ref ul{margin:6px 0 0;padding-left:18px}
.ivft-ref li{margin:3px 0}
/* 工具禁用提示（后台关闭某工具时短码输出） */
.ivft-disabled{background:#fffbe9;border:1px solid #f0e0a0;border-radius:10px;padding:14px 18px;color:#8a6d1a;font-size:14px;margin:14px 0}
