
/* ===== v1.70: 시장별 실전 매매 타이밍 산출 레이어 ===== */
.tradeMarketField{
  display:none;
  border:1px solid rgba(131,104,208,.14);
  border-radius:20px;
  padding:12px;
  margin:0 0 13px;
  background:rgba(255,255,255,.64);
  box-shadow:0 8px 22px rgba(102,78,169,.05);
}
.tradeMarketField.show{display:grid;gap:8px}
.tradeMarketGrid{display:grid;grid-template-columns:1fr;gap:8px}
.tradeMarketHint{margin:0;color:var(--muted);font-size:12px;line-height:1.45;font-weight:700}
.tradeTimingCard{display:grid;gap:12px}
.tradeTimingStatus{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 13px;
  border:1px solid rgba(131,104,208,.14);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(248,244,255,.78));
}
.tradeInlineControl{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  padding:10px;
  border:1px solid rgba(131,104,208,.12);
  border-radius:18px;
  background:rgba(255,255,255,.66);
}
.tradeInlineControl label{display:grid;gap:5px;color:var(--muted);font-size:11.5px;font-weight:900}
.tradeInlineControl select{min-height:38px;border-radius:14px}
.tradeTimingStatus b{font-size:15px;color:var(--ink);line-height:1.25}
.tradeTimingStatus span{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}
.tradeGatePill{
  display:inline-grid;
  place-items:center;
  min-height:30px;
  padding:0 11px;
  border-radius:999px;
  font-size:12px;
  font-weight:950;
  white-space:nowrap;
}
.tradeGatePill.go{background:#e9fbef;color:#27613a;border:1px solid rgba(69,135,81,.18)}
.tradeGatePill.wait{background:#fff8df;color:#715315;border:1px solid rgba(178,135,67,.22)}
.tradeGatePill.hold{background:#fff0f3;color:#9b3148;border:1px solid rgba(205,92,121,.22)}
.tradeTimingBest{
  display:grid;
  gap:12px;
  padding:15px;
  border:1px solid rgba(131,104,208,.16);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(245,242,255,.9));
  box-shadow:0 14px 34px rgba(102,78,169,.08);
}
.tradeBestTop{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;flex-wrap:wrap}
.tradeBestTop .timingEyebrow{margin:0}
.tradeBestScore{
  min-width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#fff;
  background:var(--hero-gradient);
  font-weight:950;
  box-shadow:inset 0 0 0 4px rgba(255,255,255,.18);
}
.tradeBestAction{display:grid;gap:3px;min-width:0}
.tradeBestAction b{font-size:18px!important;color:var(--ink)!important;line-height:1.26!important}
.tradeBestAction span{font-size:12px;color:var(--muted);font-weight:900}
.tradeBestGrid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.tradeBestGrid div{border:1px solid rgba(131,104,208,.12);border-radius:16px;background:rgba(255,255,255,.76);padding:11px 12px;min-width:0}
.tradeBestGrid small{display:block;color:var(--muted);font-size:11.5px;font-weight:950;margin-bottom:4px}
.tradeBestGrid strong{display:block;color:var(--ink);font-size:clamp(17px,2.2vw,22px);font-weight:950;line-height:1.28;overflow-wrap:anywhere}
.tradeHorizonGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:9px}
.tradeHorizonGrid div{border:1px solid rgba(131,104,208,.12);border-radius:16px;background:rgba(255,255,255,.76);padding:10px 12px;min-width:0}
.tradeHorizonGrid small{display:block;color:var(--muted);font-size:11.5px;font-weight:950;margin-bottom:4px}
.tradeHorizonGrid strong{display:block;color:var(--ink);font-size:13.5px;font-weight:900;line-height:1.4;overflow-wrap:anywhere}
.tradeHorizonGrid em{display:block;margin-top:4px;font-style:normal;font-size:11px;color:var(--muted)}
@media(max-width:700px){.tradeHorizonGrid{grid-template-columns:1fr}}
.tradeTimingReasons{display:flex;gap:6px;flex-wrap:wrap}
.tradeReasonChip{border:1px solid rgba(131,104,208,.14);border-radius:999px;padding:5px 8px;background:rgba(255,255,255,.7);color:#4b4867;font-size:11.5px;font-weight:850}
.tradeCandidateList{display:grid!important;gap:8px!important;margin:0!important;padding:0!important;list-style:none!important}
.tradeCandidateList li{display:grid!important;grid-template-columns:42px minmax(0,1fr) 54px!important;gap:9px!important;align-items:start!important;border-top:1px solid rgba(123,97,196,.1)!important;padding:10px 0 0!important}
.tradeCandidateList li:first-child{border-top:0!important;padding-top:0!important}
.tradeCandidateList .rankBadge{margin-top:1px}
.tradeCandidateMeta{display:grid;gap:4px;min-width:0}
.tradeCandidateMeta b{color:var(--ink)!important;font-size:14px!important;line-height:1.3!important}
.tradeCandidateMeta span{color:#4b4867;font-size:12.5px;line-height:1.35}
.tradeMiniScore{display:grid;place-items:center;width:46px;height:30px;border-radius:999px;background:rgba(124,96,214,.1);color:var(--accent-deep);font-size:12px;font-weight:950}
.tradeTimingWarning{margin:0;color:var(--muted)!important;font-size:12px!important;line-height:1.5!important}
body.dark-mode .tradeMarketField,
body.dark-mode .tradeInlineControl,
body.dark-mode .tradeTimingStatus,
body.dark-mode .tradeTimingBest,
body.dark-mode .tradeBestGrid div{
  background:rgba(29,23,52,.82)!important;
  border-color:rgba(187,171,255,.14)!important;
}
body.dark-mode .tradeTimingStatus b,
body.dark-mode .tradeBestAction b,
body.dark-mode .tradeBestGrid strong,
body.dark-mode .tradeCandidateMeta b{color:#efe9ff!important}
body.dark-mode .tradeCandidateMeta span,
body.dark-mode .tradeReasonChip{color:#c9c1ea}
body.dark-mode .tradeReasonChip{background:rgba(255,255,255,.06);border-color:rgba(187,171,255,.14)}
body.dark-mode .tradeHorizonGrid div{background:rgba(255,255,255,.05);border-color:rgba(187,171,255,.14)}
body.dark-mode .tradeHorizonGrid strong{color:#efe9ff}
body.dark-mode .tradeHorizonGrid small,
body.dark-mode .tradeHorizonGrid em{color:#c9c1ea}
@media(max-width:560px){
  .tradeTimingStatus{grid-template-columns:1fr}
  .tradeInlineControl{grid-template-columns:1fr}
  .tradeGatePill{width:max-content;max-width:100%;white-space:normal}
  .tradeBestGrid{grid-template-columns:1fr}
  .tradeCandidateList li{grid-template-columns:32px minmax(0,1fr)!important}
  .tradeMiniScore{grid-column:2;width:max-content;min-width:46px}
}
