.m360-strom {
  --ms-navy: #0d1b2a; --ms-card: #152a44; --ms-gold: #d4af37; --ms-gold2: #f0d987;
  --ms-text: #e8eef5; --ms-muted: #8fa3bd; --ms-line: #243b58; --ms-green: #3fb96b; --ms-red: #e05a5a;
  background: var(--ms-navy); color: var(--ms-text);
  font-family: 'Segoe UI', system-ui, sans-serif; line-height: 1.5;
  padding: 24px; border-radius: 14px; max-width: 1100px; margin: 0 auto;
  box-sizing: border-box;
}
.m360-strom * { box-sizing: border-box; }
.m360-strom .ms-head { border-bottom: 2px solid var(--ms-gold); padding-bottom: 16px; margin-bottom: 24px; }
.m360-strom h2 { font-size: 1.7rem; color: var(--ms-gold); font-weight: 700; margin: 0; }
.m360-strom h3 { font-size: 1.1rem; color: var(--ms-gold); margin: 0 0 16px; font-weight: 600; }
.m360-strom .ms-sub { color: var(--ms-muted); font-size: .9rem; margin-top: 4px; }
.m360-strom .ms-stamp { color: var(--ms-gold2); font-size: .85rem; margin-top: 6px; }
.m360-strom .ms-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 16px; margin-bottom: 24px; }
.m360-strom .ms-card { background: var(--ms-card); border: 1px solid var(--ms-line); border-radius: 12px; padding: 18px; }
.m360-strom .ms-label { color: var(--ms-muted); font-size: .78rem; text-transform: uppercase; letter-spacing: .5px; }
.m360-strom .ms-val { font-size: 1.8rem; font-weight: 700; color: var(--ms-gold2); margin-top: 6px; }
.m360-strom .ms-unit { font-size: .85rem; color: var(--ms-muted); font-weight: 400; }
.m360-strom .ms-pos { color: var(--ms-green); }
.m360-strom .ms-neg { color: var(--ms-red); }
.m360-strom .ms-panels { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.m360-strom .ms-panel { background: var(--ms-card); border: 1px solid var(--ms-line); border-radius: 12px; padding: 20px; }
.m360-strom .ms-pricepanel { margin-top: 20px; }
.m360-strom .ms-row { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; font-size: .92rem; }
.m360-strom .ms-dot { width: 12px; height: 12px; border-radius: 3px; flex-shrink: 0; }
.m360-strom .ms-nm { flex: 1; }
.m360-strom .ms-gw { font-variant-numeric: tabular-nums; color: var(--ms-text); font-weight: 600; }
.m360-strom .ms-pc { color: var(--ms-muted); width: 54px; text-align: right; font-variant-numeric: tabular-nums; }
.m360-strom .ms-chartbox { position: relative; height: 300px; }
.m360-strom .ms-actions { text-align: center; margin-top: 24px; }
.m360-strom button { background: var(--ms-gold); color: var(--ms-navy); border: none; padding: 9px 18px; border-radius: 8px; font-weight: 600; cursor: pointer; font-size: .9rem; }
.m360-strom button:hover { background: var(--ms-gold2); }
.m360-strom .ms-err { background: #3a1a1a; border: 1px solid var(--ms-red); color: #ffb3b3; padding: 14px; border-radius: 8px; margin-bottom: 16px; display: none; }
.m360-strom .ms-foot { margin-top: 28px; color: var(--ms-muted); font-size: .78rem; border-top: 1px solid var(--ms-line); padding-top: 14px; }
.m360-strom a { color: var(--ms-gold2); }
.m360-strom .ms-promo { display: flex; gap: 16px; align-items: flex-start; background: linear-gradient(135deg, #16304d, #1c3c5f); border: 1px solid var(--ms-gold); border-radius: 12px; padding: 18px 20px; position: relative; margin-bottom: 8px; }
.m360-strom .ms-promo-badge { position: absolute; top: 10px; right: 12px; font-size: .66rem; letter-spacing: .5px; text-transform: uppercase; color: var(--ms-muted); border: 1px solid var(--ms-line); border-radius: 4px; padding: 2px 6px; }
.m360-strom .ms-promo-title { font-size: 1.05rem; font-weight: 700; color: var(--ms-gold2); margin-bottom: 6px; padding-right: 70px; }
.m360-strom .ms-promo-text { font-size: .9rem; color: var(--ms-text); margin: 0 0 12px; }
.m360-strom .ms-promo-text strong { color: var(--ms-gold2); }
.m360-strom .ms-promo-btn { display: inline-block; background: var(--ms-gold); color: var(--ms-navy); font-weight: 700; text-decoration: none; padding: 9px 18px; border-radius: 8px; font-size: .9rem; }
.m360-strom .ms-promo-btn:hover { background: var(--ms-gold2); }
.m360-strom .ms-promo-disc { font-size: .72rem; color: var(--ms-muted); margin: 8px 2px 22px; line-height: 1.4; }
@media (max-width: 760px) {
  .m360-strom .ms-panels { grid-template-columns: 1fr; }
  .m360-strom { padding: 16px; }
}
