/* ============================================================
   择时日晷（timing/timing.css）
   所有规则都收在 #tool-timing 下面，避免污染主站
   ============================================================ */

#tool-timing{
  --t-gold:   #d9b36c;
  --t-rose:   #d98a9a;
  --t-teal:   #6fb3a8;
  --t-violet: #a48bd9;
  --t-red:    #c06a6a;
  --t-green:  #7fae86;
  --t-blue:   #6f9dd6;
  --t-line:   #3b4355;
}

/* ---------- 下拉框 ---------- */
#tool-timing .timing-field{
  display: flex;
  flex-direction: column;
  gap: 4px;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--ink-dim);
}
#tool-timing select{
  font: inherit;
  font-size: 14px;
  letter-spacing: 1px;
  color: var(--ink);
  background: var(--panel);
  border: 2px solid var(--silver-dim);
  padding: 7px 8px;
  min-height: 38px;
  color-scheme: dark;
}
#tool-timing select:focus{
  outline: none;
  border-color: var(--silver);
}
/* ---------- 时刻头部 ---------- */
#tool-timing .timing-head{
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 18px;
  padding: 16px 18px;
  margin: 16px 0 8px;
  border: 2px solid var(--silver-dim);
  background:
    linear-gradient(90deg, rgba(77,138,223,.08), transparent 55%),
    var(--bg-deep);
  box-shadow: 4px 4px 0 var(--shadow);
}
#tool-timing .timing-clock{
  font-size: 46px;
  line-height: 1;
  letter-spacing: 3px;
  color: var(--silver);
  text-shadow: 3px 3px 0 #000;
}
#tool-timing .timing-head-main{ min-width: 0; }
#tool-timing .timing-date{
  font-size: 18px;
  letter-spacing: 2px;
  color: var(--ink);
}
#tool-timing .timing-lunar{
  font-size: 13px;
  letter-spacing: 1px;
  color: var(--ink-dim);
  margin-top: 3px;
}
#tool-timing .timing-term{
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--note);
  margin-top: 4px;
}
#tool-timing .timing-overall{
  text-align: center;
  min-width: 110px;
}
#tool-timing .timing-overall b{
  display: block;
  font-size: 34px;
  line-height: 1;
  color: var(--t-gold);
  font-weight: normal;
  text-shadow: 2px 2px 0 #000;
}
#tool-timing .timing-overall span{
  display: block;
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--ink-dim);
  margin: 4px 0 6px;
}

/* ---------- 此刻结论 + 地点 ---------- */
#tool-timing .timing-verdict-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border: 2px solid var(--silver-dim);
  background: var(--bg-deep);
  padding: 7px 12px;
  margin: 0 0 14px;
  box-shadow: 4px 4px 0 var(--shadow);
}
#tool-timing .timing-verdict{
  flex: 1 1 auto;
  min-width: 0;
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--ink-dim);
}
#tool-timing .timing-verdict b{
  color: var(--silver);
  font-weight: normal;
}
#tool-timing .timing-location{
  display: flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--ink-dim);
}
#tool-timing .timing-location select{
  min-height: 30px;
  padding: 3px 6px;
  font-size: 12px;
}

#tool-timing .timing-warnings{
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: 14px;
}
#tool-timing .timing-warn{
  border-left: 4px solid var(--t-gold);
  background: rgba(217,179,108,.07);
  padding: 7px 10px;
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--ink);
}
#tool-timing .timing-warn.bad{
  border-left-color: var(--t-red);
  background: rgba(192,106,106,.09);
}

/* ---------- 五体系卡片 ---------- */
#tool-timing .timing-systems{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
#tool-timing .sys-card{
  position: relative;
  border: 2px solid var(--silver-dim);
  background: var(--panel-2);
  padding: 13px 14px 13px 17px;
  box-shadow: 4px 4px 0 var(--shadow);
  min-width: 0;
}
#tool-timing .sys-card::before{
  content: '';
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 4px;
  background: var(--accent, var(--silver));
}
#tool-timing .sys-card.gold{ --accent: var(--t-gold); }
#tool-timing .sys-card.blue{ --accent: var(--t-blue); }
#tool-timing .sys-card.violet{ --accent: var(--t-violet); }
#tool-timing .sys-card.teal{ --accent: var(--t-teal); }
#tool-timing .sys-card.silver{ --accent: var(--silver); }
#tool-timing .sys-card.red{ --accent: #c8102e; }
#tool-timing .sys-card.white{ --accent: #ffffff; }
#tool-timing .sys-card.wide{ grid-column: 1 / -1; }

#tool-timing .sys-title{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
  font-size: 11px;
  letter-spacing: 3px;
  color: var(--ink-dim);
  border-bottom: 1px solid var(--silver-dim);
  padding-bottom: 5px;
  margin-bottom: 8px;
}
#tool-timing .sys-title .phase-mark{
  color: #fff;
  font-size: 17px;
  font-weight: normal;
  margin-right: 4px;
  vertical-align: -2px;
}
#tool-timing .sys-title em{
  font-style: normal;
  font-size: 9px;
  letter-spacing: 2px;
  color: var(--note);
}
#tool-timing .sys-main{
  font-size: 21px;
  letter-spacing: 2px;
  color: var(--silver);
  line-height: 1.35;
}
#tool-timing .sys-main .glyph{
  font-size: 26px;
  color: var(--accent, var(--silver));
  margin-right: 4px;
}
#tool-timing .sys-sub{
  font-size: 12px;
  letter-spacing: 1px;
  color: var(--ink-dim);
  margin-top: 3px;
}
#tool-timing .sys-text{
  font-size: 12px;
  line-height: 1.65;
  color: var(--ink);
  margin-top: 8px;
  min-height: 2em;
}

/* ---------- 行星日时：行星综合评分 ---------- */
#tool-timing .planet-score{
  margin-top: 10px;
  padding-top: 8px;
  border-top: 1px dashed rgba(139,147,166,.22);
}
#tool-timing .ps-head{
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--ink-dim);
}
#tool-timing .ps-head b{
  font-size: 22px;
  line-height: 1;
  font-weight: normal;
  color: var(--silver);
  text-shadow: 2px 2px 0 #000;
}
#tool-timing .ps-head b.high,
#tool-timing .ps-top b.high{ color: var(--t-gold); }
#tool-timing .ps-head b.low,
#tool-timing .ps-top b.low{ color: var(--t-red); }
#tool-timing .ps-grade{
  font-style: normal;
  font-size: 9px;
  letter-spacing: 1px;
  padding: 0 5px;
  border: 1px solid var(--silver-dim);
  color: var(--ink-dim);
}
#tool-timing .ps-grade.best{ color: #0d0a07; background: var(--t-gold); border-color: var(--t-gold); }
#tool-timing .ps-grade.good{ color: #0d0a07; background: var(--t-green); border-color: var(--t-green); }
#tool-timing .ps-grade.ok{ color: #0d0a07; background: var(--t-teal); border-color: var(--t-teal); }
#tool-timing .ps-grade.bad{ color: #e6c9c9; border-color: rgba(192,106,106,.6); }
#tool-timing .ps-grade.worst{ color: #fff; background: var(--t-red); border-color: var(--t-red); }
#tool-timing .ps-same{
  font-style: normal;
  font-size: 9px;
  letter-spacing: 1px;
  color: var(--t-gold);
  border: 1px solid rgba(217,179,108,.45);
  padding: 0 4px;
}
#tool-timing .ps-grid{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 7px;
}
#tool-timing .ps-cell{
  min-width: 0;
  border: 1px solid var(--silver-dim);
  background: rgba(0,0,0,.18);
  padding: 5px 6px;
}
#tool-timing .ps-top{
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: 6px;
  font-size: 10px;
  letter-spacing: 1px;
  color: var(--ink-dim);
}
#tool-timing .ps-top span{
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#tool-timing .ps-top b{
  flex: 0 0 auto;
  font-size: 15px;
  line-height: 1;
  font-weight: normal;
  color: var(--silver);
}
#tool-timing .ps-bar{
  height: 5px;
  border: 1px solid var(--silver-dim);
  background: #161a24;
  margin: 4px 0 3px;
}
#tool-timing .ps-bar > i{
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #2b3d63, var(--t-blue), var(--silver));
}
#tool-timing .ps-bar.high > i{ background: linear-gradient(90deg, #5a3a2e, var(--t-gold), #f0d9a8); }
#tool-timing .ps-bar.low > i{ background: linear-gradient(90deg, #3a2228, var(--t-red)); }
#tool-timing .ps-tag{
  font-size: 9px;
  letter-spacing: 1px;
  color: var(--note);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

#tool-timing .sys-row{
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--ink-dim);
  margin-top: 6px;
  border-top: 1px dashed rgba(139,147,166,.18);
  padding-top: 6px;
}
#tool-timing .sys-row b{ color: var(--ink); font-weight: normal; }
#tool-timing .sys-chips{
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}
#tool-timing .chip{
  display: inline-block;
  font-size: 11px;
  letter-spacing: 1px;
  line-height: 1.5;
  padding: 1px 6px;
  border: 1px solid var(--silver-dim);
  color: var(--ink-dim);
  background: rgba(0,0,0,.18);
}
#tool-timing .chip.good{ border-color: rgba(127,174,134,.55); color: #a9c9b0; }
#tool-timing .chip.bad{ border-color: rgba(192,106,106,.55); color: #d9a0a0; }
#tool-timing .chip.gold{ border-color: rgba(217,179,108,.55); color: var(--t-gold); }

/* ---------- 进度条 ---------- */
#tool-timing .scorebar{
  height: 8px;
  border: 1px solid var(--silver-dim);
  background: #161a24;
  overflow: hidden;
}
#tool-timing .scorebar > i{
  display: block;
  height: 100%;
  background: linear-gradient(90deg, #2b3d63, var(--t-blue), var(--silver));
}
#tool-timing .scorebar.warm > i{
  background: linear-gradient(90deg, #5a3a2e, var(--t-gold), #f0d9a8);
}
#tool-timing .scorebar.cold > i{
  background: linear-gradient(90deg, #3a2228, var(--t-red));
}
#tool-timing .bar-line{
  position: relative;
  height: 3px;
  background: #1a1d28;
  margin-top: 8px;
}
#tool-timing .bar-line > i{
  position: absolute;
  left: 0; top: 0; bottom: 0;
  background: var(--accent, var(--silver));
}
#tool-timing .bar-line .marker{
  position: absolute;
  top: -3px;
  width: 2px;
  height: 9px;
  background: var(--t-gold);
}

/* ---------- 推荐 ---------- */
#tool-timing .timing-tabs{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 4px 0 14px;
}
#tool-timing .timing-tabs button{
  font: inherit;
  font-size: 12px;
  letter-spacing: 2px;
  color: var(--ink-dim);
  background: transparent;
  border: 2px solid transparent;
  padding: 5px 10px;
  cursor: pointer;
}
#tool-timing .timing-tabs button:hover{
  color: var(--ink);
  border-color: var(--silver-dim);
}
#tool-timing .timing-tabs button.active{
  color: #0d0a07;
  background: var(--silver);
  border-color: var(--silver);
  border-radius: 2px;
}

#tool-timing .rec-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
#tool-timing .rec-card{
  position: relative;
  border: 2px solid var(--silver-dim);
  background: var(--bg-deep);
  padding: 11px 12px 28px;
  cursor: pointer;
  box-shadow: 3px 3px 0 var(--shadow);
}
#tool-timing .rec-card:hover{ border-color: var(--ink-dim); }
#tool-timing .rec-card.selected{
  border-color: var(--silver);
  box-shadow: 3px 3px 0 var(--shadow), inset 0 0 0 1px rgba(207,215,228,.25);
}
#tool-timing .rec-top{
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
#tool-timing .rec-name{
  font-size: 15px;
  letter-spacing: 1px;
  color: var(--ink);
}
#tool-timing .rec-score{
  font-size: 22px;
  line-height: 1;
  color: var(--t-gold);
}
#tool-timing .rec-score.low{ color: var(--t-red); }
#tool-timing .rec-score.mid{ color: var(--ink-dim); }
#tool-timing .rec-meta{
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 10px;
  letter-spacing: 2px;
  color: var(--note);
  margin: 3px 0 7px;
}
#tool-timing .rec-reasons{
  display: flex;
  flex-wrap: wrap;
  gap: 4px 8px;
  margin-top: 7px;
  font-size: 10px;
  letter-spacing: 1px;
  color: var(--ink-dim);
}
#tool-timing .rec-reasons .plus{ color: #9fc3a5; }
#tool-timing .rec-reasons .minus{ color: #c99090; }
#tool-timing .rec-grade{
  position: absolute;
  right: 11px;
  bottom: 9px;
  font-size: 10px;
  letter-spacing: 2px;
  padding: 1px 5px;
  border: 1px solid var(--silver-dim);
  color: var(--ink-dim);
  background: var(--panel);
}
#tool-timing .rec-grade.best{ color: #0d0a07; background: var(--t-gold); border-color: var(--t-gold); }
#tool-timing .rec-grade.good{ color: #0d0a07; background: var(--t-green); border-color: var(--t-green); }
#tool-timing .rec-grade.ok{ color: #0d0a07; background: var(--t-teal); border-color: var(--t-teal); }
#tool-timing .rec-grade.neutral{ color: var(--ink); }
#tool-timing .rec-grade.bad{ color: #e6c9c9; border-color: rgba(192,106,106,.6); }
#tool-timing .rec-grade.worst{ color: #fff; background: var(--t-red); border-color: var(--t-red); }

/* ---------- 详情 ---------- */
#tool-timing .timing-detail{
  margin-top: 16px;
  border: 2px solid var(--silver-dim);
  background: var(--panel);
  padding: 14px;
}
#tool-timing .timing-detail h3{
  border-bottom: 1px solid var(--silver-dim);
  padding-bottom: 6px;
}
#tool-timing .detail-blurb{
  font-size: 12px;
  color: var(--ink-dim);
  letter-spacing: 1px;
  margin-bottom: 10px;
}
#tool-timing .detail-cols{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
#tool-timing .detail-col h4{
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--ink-dim);
  margin-bottom: 6px;
}
#tool-timing .factor{
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-size: 11px;
  letter-spacing: 1px;
  padding: 3px 0;
  border-bottom: 1px dotted rgba(139,147,166,.14);
  color: var(--ink);
}
#tool-timing .factor .v{ flex: 0 0 auto; }
#tool-timing .factor .v.plus{ color: #9fc3a5; }
#tool-timing .factor .v.minus{ color: #c99090; }
#tool-timing .factor small{
  display: block;
  color: var(--note);
  font-size: 10px;
  letter-spacing: 0;
}
#tool-timing .factor-table{
  width: 100%;
  border-collapse: collapse;
  font-size: 11px;
  letter-spacing: 1px;
}
#tool-timing .factor-table th,
#tool-timing .factor-table td{
  text-align: left;
  padding: 5px 6px;
  border-bottom: 1px solid rgba(59,67,85,.6);
  vertical-align: top;
}
#tool-timing .factor-table th{ color: var(--ink-dim); font-weight: normal; }
#tool-timing .factor-table td.num{ text-align: right; white-space: nowrap; }
#tool-timing .factor-table td.plus{ color: #9fc3a5; }
#tool-timing .factor-table td.minus{ color: #c99090; }

/* ---------- 全部排序 ---------- */
#tool-timing .timing-all{ margin-top: 14px; border-top: 1px solid var(--silver-dim); padding-top: 8px; }
#tool-timing .timing-all summary{
  cursor: pointer;
  font-size: 12px;
  letter-spacing: 2px;
  color: var(--ink-dim);
  padding: 4px 0;
}
#tool-timing .all-row{
  display: grid;
  grid-template-columns: 9.5em 1fr 2.6em;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  letter-spacing: 1px;
  padding: 4px 2px;
  cursor: pointer;
  border-bottom: 1px dotted rgba(139,147,166,.12);
}
#tool-timing .all-row:hover{ background: rgba(77,138,223,.06); }
#tool-timing .all-row .name{ color: var(--ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#tool-timing .all-row .sc{ text-align: right; color: var(--ink-dim); }
#tool-timing .all-row .sc.hot{ color: var(--t-gold); }
#tool-timing .mini-bar{
  height: 5px;
  border: 1px solid var(--silver-dim);
  background: #141720;
}
#tool-timing .mini-bar > i{ display: block; height: 100%; background: var(--t-blue); }

/* ---------- 热力图 ---------- */
#tool-timing .timing-heat-controls{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 10px;
}
#tool-timing .timing-legend{
  display: flex;
  flex-wrap: wrap;
  gap: 4px 10px;
  font-size: 10px;
  letter-spacing: 1px;
  color: var(--ink-dim);
}
#tool-timing .timing-legend span{ display: inline-flex; align-items: center; gap: 4px; }
#tool-timing .timing-legend i{
  display: inline-block;
  width: 10px;
  height: 10px;
  border: 1px solid rgba(0,0,0,.4);
}
#tool-timing .heat-scroll{
  overflow-x: auto;
  padding: 2px 0 8px;
}
#tool-timing .heat-table{
  width: 100%;
  min-width: 560px;
  table-layout: fixed;
  border-collapse: separate;
  border-spacing: 1px;
  font-size: 9px;
  letter-spacing: 0;
}
#tool-timing .heat-table th{
  font-weight: normal;
  color: var(--ink-dim);
  text-align: center;
  padding: 2px 0;
}
#tool-timing .heat-table th.heat-corner{
  width: 84px;
  position: sticky;
  left: 0;
  z-index: 4;
  background: var(--bg-deep);
  border-right: 1px solid var(--silver-dim);
  box-shadow: 2px 0 0 rgba(0,0,0,.45);
}
#tool-timing .heat-table th.heat-day{
  width: 84px;
  position: sticky;
  left: 0;
  z-index: 3;
  text-align: left;
  padding: 2px 2px 2px 4px;
  white-space: nowrap;
  font-size: 10px;
  letter-spacing: 1px;
  background: var(--bg-deep);
  border-right: 1px solid var(--silver-dim);
  box-shadow: 2px 0 0 rgba(0,0,0,.45);
}
#tool-timing .heat-day b{ color: var(--ink); font-weight: normal; }
#tool-timing .heat-cell{
  position: relative;
  height: 21px;
  padding: 0;
  border: 1px solid rgba(0,0,0,.35);
  background: var(--c, #1a1d28);
}
#tool-timing .heat-cell.past{ opacity: .28; }
#tool-timing .heat-cell.now{
  box-shadow: inset 0 0 0 2px #fff;
  z-index: 1;
}
#tool-timing .heat-cell .dot{
  position: absolute;
  left: 50%; top: 50%;
  width: 2px; height: 2px;
  margin: -1px 0 0 -1px;
  background: rgba(255,255,255,.55);
}

#tool-timing .timing-windows{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-top: 10px;
}
#tool-timing .window{
  border: 2px solid var(--silver-dim);
  background: var(--bg-deep);
  padding: 9px 10px;
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--ink-dim);
}
#tool-timing .window b{
  display: block;
  font-size: 13px;
  color: var(--ink);
  font-weight: normal;
  margin-bottom: 3px;
}
#tool-timing .window .w-score{ color: var(--t-gold); }

/* ---------- 星盘 ---------- */
#tool-timing .timing-wheel-wrap{
  display: grid;
  grid-template-columns: minmax(0, 380px) 1fr;
  gap: 18px;
  align-items: center;
}
#tool-timing #timing-wheel{ text-align: center; }
#tool-timing #timing-wheel svg{
  width: 100%;
  max-width: 380px;
  height: auto;
  background: var(--bg-deep);
  border: 2px solid var(--silver-dim);
}
#tool-timing .wheel-note{
  font-size: 12px;
  line-height: 1.8;
  color: var(--ink-dim);
  letter-spacing: 1px;
}
#tool-timing .wheel-note b{ color: var(--ink); font-weight: normal; }
#tool-timing .wheel-note .wheel-moon{
  font-size: 16px;
  line-height: 1.6;
  color: var(--silver);
  margin-bottom: 6px;
}
#tool-timing .wheel-note .wheel-moon b{ color: var(--silver); }
#tool-timing .planet-table{
  width: 100%;
  border-collapse: collapse;
  font-size: 12px;
  letter-spacing: 1px;
  margin-top: 14px;
}
#tool-timing .planet-table th,
#tool-timing .planet-table td{
  text-align: left;
  padding: 5px 6px;
  border-bottom: 1px solid rgba(59,67,85,.55);
}
#tool-timing .planet-table th{ color: var(--ink-dim); font-weight: normal; font-size: 10px; letter-spacing: 2px; }
#tool-timing .planet-table td:first-child{ color: var(--silver); white-space: nowrap; }
#tool-timing .planet-table .r{ color: var(--t-red); }
#tool-timing .aspect-row{
  display: flex;
  justify-content: space-between;
  gap: 10px;
  font-size: 11px;
  letter-spacing: 1px;
  color: var(--ink);
  padding: 4px 2px;
  border-bottom: 1px dotted rgba(139,147,166,.15);
}
#tool-timing .aspect-row span:last-child{ color: var(--ink-dim); white-space: nowrap; }

/* ---------- 出处 ---------- */
#tool-timing .source-item{ margin-bottom: 9px; }
#tool-timing .source-item b{
  display: block;
  font-size: 11px;
  letter-spacing: 2px;
  color: var(--silver);
  font-weight: normal;
  margin-bottom: 2px;
}
#tool-timing .source-item p{
  font-size: 11px;
  line-height: 1.7;
  color: var(--ink-dim);
  letter-spacing: 0;
  margin: 0;
}

/* ---------- 移动端 ---------- */
@media (max-width: 760px){
  #tool-timing{ width: 100%; max-width: 100%; overflow-x: hidden; }
  #tool-timing .panel{ max-width: 100%; }
  #tool-timing .timing-head{ grid-template-columns: 1fr; gap: 10px; }
  #tool-timing .timing-clock{ font-size: 38px; }
  #tool-timing .timing-overall{ text-align: left; min-width: 0; }
  #tool-timing .timing-overall b{ display: inline; font-size: 26px; margin-right: 6px; }
  #tool-timing .timing-overall span{ display: inline; }
  #tool-timing .timing-systems{ grid-template-columns: 1fr; }
  #tool-timing .sys-card.wide{ grid-column: auto; }
  #tool-timing .rec-grid{ grid-template-columns: 1fr; }
  #tool-timing .detail-cols{ grid-template-columns: 1fr; }
  #tool-timing .timing-wheel-wrap{ grid-template-columns: 1fr; }
  #tool-timing .timing-verdict-row{ flex-direction: column; align-items: stretch; gap: 8px; }
  #tool-timing .timing-location{ width: 100%; justify-content: space-between; }
  #tool-timing .timing-location select{ flex: 1 1 auto; width: auto; min-width: 0; }
  #tool-timing .timing-field{ flex: 1 1 100%; }
  #tool-timing select{ width: 100%; min-width: 0; }
  #tool-timing .sys-main,
  #tool-timing .sys-text,
  #tool-timing .sys-row span{ overflow-wrap: anywhere; }
  #tool-timing .sys-row{ flex-wrap: wrap; }
  #tool-timing .heat-scroll{ width: 100%; max-width: 100%; }
  #tool-timing .heat-table{ width: 560px; min-width: 560px; }
  #tool-timing .all-row{ grid-template-columns: 7.5em 1fr 2.2em; }
}
