:root{
  --yb:#0f172a;--ys:#1e293b;--yt:#334155;
  --ygreen:#10b981;--yred:#f43f5e;--yblue:#3b82f6;--ypurple:#8b5cf6;--yorange:#f59e0b;
  --ytext:#f8fafc;--ymuted:#94a3b8;--yfont:'Plus Jakarta Sans',-apple-system,sans-serif;
}
.yfw-loading,.yfw-loading-sm{display:flex;align-items:center;gap:10px;padding:18px;color:var(--ymuted);font-size:13px;font-family:var(--yfont);}
.yfw-loading-sm{padding:8px;font-size:12px;}
.yfw-spin{display:inline-block;width:16px;height:16px;border-radius:50%;border:2px solid var(--yt);border-top-color:var(--yblue);animation:yfw-spin .7s linear infinite;flex-shrink:0;}
@keyframes yfw-spin{to{transform:rotate(360deg)}}
.yfw-err{background:rgba(244,63,94,.08);border:1px solid rgba(244,63,94,.25);border-radius:8px;padding:12px 16px;font-size:13px;color:#fda4af;font-family:var(--yfont);}

/* Ticker */
.yfw-ticker{background:var(--yb);border:1px solid var(--yt);border-radius:10px;overflow:hidden;padding:10px 0;font-family:var(--yfont);}
.yfw-ticker-inner{display:flex;white-space:nowrap;will-change:transform;}
.yfw-ticker.running .yfw-ticker-inner{animation:yfw-scroll var(--dur,40s) linear infinite;}
.yfw-ticker:hover .yfw-ticker-inner{animation-play-state:paused;}
@keyframes yfw-scroll{0%{transform:translateX(0)}100%{transform:translateX(var(--shift,-50%))}}
.yfw-ti{display:inline-flex;align-items:center;gap:7px;padding:0 18px;font-size:13px;}
.yfw-ti .s{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ymuted);}
.yfw-ti .p{font-weight:700;color:var(--ytext);}
.yfw-ti .c.up{color:var(--ygreen);}.yfw-ti .c.dn{color:var(--yred);}
.yfw-ti-sep{color:var(--yt);padding:0 2px;}

/* Watchlist */
.yfw-watchlist{font-family:var(--yfont);}
.yfw-wl-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px;}
.yfw-wl-title{font-size:14px;font-weight:700;color:var(--ytext);display:flex;align-items:center;gap:8px;}
.yfw-wl-badge{font-size:11px;background:var(--yb);border:1px solid var(--yt);color:var(--ymuted);padding:3px 8px;border-radius:5px;}
.yfw-wl-ts{font-size:11px;color:#64748b;}
table.yfw-tbl{width:100%;border-collapse:collapse;background:var(--ys);border:1px solid var(--yt);border-radius:14px;overflow:hidden;}
table.yfw-tbl thead tr{background:var(--yb);}
table.yfw-tbl th{padding:11px 15px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ymuted);border-bottom:1px solid var(--yt);}
table.yfw-tbl th.r,table.yfw-tbl td.r{text-align:right;}
table.yfw-tbl td{padding:12px 15px;font-size:13px;color:var(--ytext);border-bottom:1px solid rgba(51,65,85,.5);}
table.yfw-tbl tr:last-child td{border-bottom:none;}
table.yfw-tbl tr:hover td{background:rgba(59,130,246,.04);}
.yfw-sym-n{font-size:13px;font-weight:700;color:var(--ytext);display:block;}
.yfw-sym-s{font-size:11px;color:var(--ymuted);}
.yfw-up{color:var(--ygreen);font-weight:700;}.yfw-dn{color:var(--yred);font-weight:700;}

/* Charts */
.yfw-chart-wrap,.yfw-index-chart{background:var(--ys);border:1px solid var(--yt);border-radius:14px;padding:28px;font-family:var(--yfont);}
.yfw-ch-hdr{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px;}
.yfw-ch-name{font-size:15px;font-weight:700;color:var(--ytext);}
.yfw-ch-sub{font-size:11px;color:var(--ymuted);margin-top:3px;}
.yfw-ch-price{font-size:1.9rem;font-weight:800;color:var(--ytext);line-height:1;}
.yfw-ch-chg{font-size:13px;font-weight:600;margin-top:5px;}
.yfw-range-btns{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:14px;}
.yfw-rb{padding:5px 11px;border-radius:6px;font-size:11px;font-weight:700;cursor:pointer;background:var(--yb);border:1px solid var(--yt);color:var(--ymuted);font-family:var(--yfont);transition:all .15s;}
.yfw-rb:hover,.yfw-rb.active{background:var(--yblue);border-color:var(--yblue);color:#fff;}
.yfw-canvas-wrap{position:relative;}
canvas.yfw-c{display:block;width:100%!important;}
.yfw-idx-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;}
.yfw-stat{background:var(--yb);border:1px solid var(--yt);border-radius:10px;padding:14px 12px;text-align:center;}
.yfw-stat .l{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ymuted);font-weight:700;margin-bottom:6px;}
.yfw-stat .v{font-size:1.1rem;font-weight:800;color:var(--ytext);}
.yfw-stat .v.up{color:var(--ygreen);}.yfw-stat .v.dn{color:var(--yred);}
/* Quote */
.yfw-quote{background:var(--ys);border:1px solid var(--yt);border-radius:10px;padding:14px 18px;font-family:var(--yfont);display:inline-block;}
.yfw-quote .sym{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--ymuted);}
.yfw-quote .prc{font-size:1.4rem;font-weight:800;color:var(--ytext);}
.yfw-quote .chg{font-size:12px;font-weight:600;}
@media(max-width:640px){.yfw-idx-stats{grid-template-columns:1fr 1fr;}.hide-m{display:none;}}
