.ema-panel {
    margin: 0 0 14px;
    padding: 14px 16px 13px;
    border: 1px solid rgba(108, 133, 169, .2);
    border-radius: 12px;
    background: linear-gradient(110deg, rgba(23, 35, 53, .96), rgba(17, 27, 43, .94));
    color: #dce6f4;
    box-shadow: 0 10px 28px rgba(4, 10, 20, .18);
}
.ema-panel-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:11px; }
.ema-panel-title { display:flex; align-items:center; gap:9px; font-size:12px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.ema-panel-title:before { content:""; width:7px; height:7px; border-radius:50%; background:#3b82f6; box-shadow:0 0 0 4px rgba(59,130,246,.12); }
.ema-disclaimer { color:#8192aa; font-size:10px; letter-spacing:.02em; }
.ema-alignment { padding:5px 9px; border:1px solid rgba(140,158,183,.2); border-radius:99px; color:#b6c4d8; font-size:10px; font-weight:750; white-space:nowrap; }
.ema-alignment[data-state="Bullish Alignment"] { color:#81d9aa; border-color:rgba(65,190,127,.28); background:rgba(44,138,92,.1); }
.ema-alignment[data-state="Bearish Alignment"] { color:#f39b9b; border-color:rgba(235,100,100,.28); background:rgba(154,62,62,.1); }
.ema-alignment[data-state="Mixed Confirmation"] { color:#f0c878; border-color:rgba(220,174,83,.32); background:rgba(160,119,38,.12); }
.ema-indicator-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.ema-indicator { min-width:0; padding:9px 10px; border:1px solid rgba(137,157,185,.12); border-radius:8px; background:rgba(6,14,26,.28); }
.ema-indicator-top { display:flex; align-items:center; justify-content:space-between; gap:6px; margin-bottom:7px; }
.ema-indicator-name { display:flex; align-items:center; gap:7px; font-size:11px; font-weight:750; white-space:nowrap; }
.ema-line-dot { width:7px; height:7px; border-radius:50%; flex:none; }
.ema-indicator-timeframe { color:#8192aa; font-size:9px; font-weight:700; letter-spacing:.06em; }
.ema-indicator-value { color:#e8eef8; font:600 15px/1.15 ui-monospace, SFMono-Regular, Consolas, monospace; }
.ema-indicator-meta { display:flex; justify-content:space-between; gap:5px; margin-top:5px; color:#8d9bb0; font-size:9px; }
.ema-indicator-meta .bull { color:#78d6a2; }.ema-indicator-meta .bear { color:#f08f8f; }
.ema-controls { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; margin-top:11px; padding-top:10px; border-top:1px solid rgba(137,157,185,.1); }
.ema-toggle { display:inline-flex; align-items:center; gap:7px; color:#aab8cc; font-size:10px; line-height:1.3; cursor:pointer; }
.ema-toggle input { accent-color:#7da8db; width:13px; height:13px; margin:0; }
.ema-score { margin-left:auto; color:#b7c5d7; font-size:10px; font-variant-numeric:tabular-nums; }
.ema-score strong { color:#e1eaf6; font:700 11px ui-monospace,monospace; }
.ema-score .ema-score-arrow { padding:0 5px; color:#61738d; }
.ema-setup-note { margin-left:auto; color:#9caec4; font-size:10px; }
.ema-setup-note[data-state="Mixed Confirmation"] { color:#efc36a; }
.ema-setup-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-top:10px; padding-top:9px; border-top:1px solid rgba(137,157,185,.1); }
.ema-setup-grid span { min-width:0; color:#d4dfed; font-size:10px; overflow-wrap:anywhere; }
.ema-setup-grid b { display:block; margin-bottom:3px; color:#8293aa; font-size:9px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.ema-setup-caveat { margin-top:7px; color:#7789a1; font-size:9px; }
.ema-panel.is-unavailable .ema-indicator-value { color:#77869b; }
.ema-chip { position:relative; }
.ema-chip input { display:block !important; position:absolute; width:1px; height:1px; opacity:0; }
.ema-chip:focus-within { outline:2px solid #7ca6d6; outline-offset:2px; }
.ema-crosshair-readout { position:absolute; top:52px; left:16px; z-index:3; display:flex; gap:14px; pointer-events:none; font-size:12px; background:rgba(11,17,32,.85); }
.ema-crosshair-readout:empty { display:none; }
@media (max-width:760px) {
    .ema-indicator-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ema-score,.ema-setup-note { width:100%; margin-left:0; }
    .ema-setup-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ema-panel-head { align-items:flex-start; }
}
@media (max-width:420px) {
    .ema-panel { padding:12px 11px; }
    .ema-indicator { padding:8px; }
    .ema-disclaimer { max-width:125px; text-align:right; line-height:1.35; }
}
