/* v4.8.20.3 — typography and spacing refinement
   Single visual source for the strategy status cards.
   Matches the approved real-HTML preview while preserving all data IDs and JS behavior. */

#swingSignalCard.status-module,
#fundAdviceCard.status-module{
  --status-panel:#fff;
  --status-text:#14213a;
  --status-muted:#68778d;
  --status-border:#dbe3ed;
  --status-accent:#e49a9e;
  --status-danger:#d9363e;
  --status-danger-soft:#fff5f5;
  --status-danger-border:#f2d7d9;
  --status-success:#178044;
  --status-success-soft:#f4fbf6;
  --status-success-border:#d5eadb;
  --status-value-size:28px;
  position:relative;
  overflow:hidden;
  margin:0;
  padding:20px 22px 22px;
  border:1px solid var(--status-border);
  border-radius:18px;
  background:var(--status-panel);
  box-shadow:0 8px 24px rgba(15,23,42,.055);
}
#swingSignalCard.status-module::before,
#fundAdviceCard.status-module::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--status-accent);
}
.status-module__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 14px;
}
.status-module__title{
  margin:0;
  color:var(--status-text);
  font-size:21px;
  line-height:1.2;
  font-weight:800;
  letter-spacing:-.02em;
}
.status-module__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:66px;
  padding:8px 15px;
  border-radius:999px;
  background:#fff0f1;
  color:#c4232b;
  font-size:15px;
  line-height:1;
  font-weight:800;
}
.status-module__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.status-module__card{
  min-width:0;
  padding:16px 18px 15px;
  border:1px solid var(--status-border);
  border-radius:13px;
  background:#fff;
  display:grid;
  grid-template-rows:auto auto auto;
  align-content:start;
  gap:8px;
}
.status-module__card--allocation{
  background:var(--status-danger-soft);
  border-color:var(--status-danger-border);
}
.status-module__card--trigger.trigger-recovery{
  background:var(--status-success-soft);
  border-color:var(--status-success-border);
}
.status-module__card--trigger.trigger-defense{
  background:var(--status-danger-soft);
  border-color:var(--status-danger-border);
}
.status-module__label{
  display:block;
  min-width:0;
  color:var(--status-muted);
  font-size:15px;
  line-height:1.2;
  font-weight:750;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.status-module__card--trigger.trigger-recovery .status-module__label{color:var(--status-success)}
.status-module__card--trigger.trigger-defense .status-module__label{color:var(--status-danger)}
.status-module__value-row{
  display:flex;
  align-items:center;
  min-width:0;
  gap:0;
}
.status-module__value{
  min-width:0;
  margin:0;
  padding:0;
  color:var(--status-text);
  font-family:inherit;
  font-size:var(--status-value-size);
  line-height:1.05;
  font-weight:800;
  letter-spacing:-.035em;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.status-module__card--allocation .status-module__value{color:var(--status-danger)}
.status-module__card--trigger.trigger-recovery .status-module__value{color:var(--status-success)}
.status-module__card--trigger.trigger-defense .status-module__value{color:var(--status-danger)}
.status-module__meta{
  display:block;
  margin:0;
  color:#8b9ab0;
  font-size:12px;
  line-height:1.2;
  font-weight:600;
  white-space:nowrap;
}
#swingSignalCard.hold .status-module__badge::before,
#fundAdviceCard.hold .status-module__badge::before,
#swingSignalCard.sell .status-module__badge::before,
#fundAdviceCard.sell .status-module__badge::before,
#swingSignalCard.bigsell .status-module__badge::before,
#fundAdviceCard.bigsell .status-module__badge::before{content:"防守"}
#swingSignalCard.bigbuy .status-module__badge::before,
#fundAdviceCard.bigbuy .status-module__badge::before,
#swingSignalCard.buy .status-module__badge::before,
#fundAdviceCard.buy .status-module__badge::before{content:"進攻"}
#swingSignalCard.bigbuy .status-module__badge,
#fundAdviceCard.bigbuy .status-module__badge,
#swingSignalCard.buy .status-module__badge,
#fundAdviceCard.buy .status-module__badge{background:#ecf8f0;color:var(--status-success)}
.status-module__data-copy[hidden]{display:none}

@media (max-width:1024px){
  #swingSignalCard.status-module,
  #fundAdviceCard.status-module{padding:18px 18px 20px}
  .status-module__grid{gap:14px}
  .status-module__card{padding:15px 16px 14px}
  .status-module__value{font-size:26px}
}
@media (max-width:768px){
  .status-module__grid{grid-template-columns:1fr}
  .status-module__head{margin-bottom:14px}
  .status-module__card{padding:14px 16px;gap:7px}
  .status-module__value{font-size:26px}
}
@media (max-width:420px){
  #swingSignalCard.status-module,
  #fundAdviceCard.status-module{padding:17px 15px 18px;border-radius:16px}
  .status-module__title{font-size:20px}
  .status-module__badge{min-width:60px;padding:7px 12px;font-size:14px}
  .status-module__value{font-size:27px}
}
