[hidden] { display: none !important; }
:root {
  --bg: #02030f; --card: rgba(12, 16, 48, .82); --line: rgba(120, 140, 255, .22); --blue: #4f7dff; --violet: #b48cff;
  --text: #e4e8ff; --muted: #8a93c4; --buy: #26a69a; --sell: #ef5350; --wait: #ffd278;
}
* { box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { margin: 0; min-height: 100%; }
html { background: #02030f; }
body {
  background: radial-gradient(ellipse at 50% 0%, #0b0f3d 0%, #050824 45%, var(--bg) 85%) fixed;
  color: var(--text); font: 14px/1.5 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}
button, select, input, textarea { font: inherit; color: var(--text); }
a { color: #aab8ff; }

.sc-top { display: flex; align-items: center; gap: 14px; padding: max(12px, env(safe-area-inset-top)) 16px 10px; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 5; background: rgba(4, 6, 26, .85); backdrop-filter: blur(10px); }
.sc-back { text-decoration: none; font-size: 13px; padding: 5px 12px; border: 1px solid var(--line); border-radius: 99px; color: #c7cffc; }
.sc-back:hover { border-color: var(--violet); }
.sc-brand { font-weight: 600; letter-spacing: .45em; font-size: 13px; color: #c9d2ff; text-shadow: 0 0 14px rgba(110,130,255,.8); }
.sc-brand span { color: var(--violet); letter-spacing: .3em; }
.sc-pill { margin-left: auto; font-size: 11px; letter-spacing: .08em; padding: 3px 10px; border-radius: 99px; border: 1px solid var(--line); color: var(--muted); }
.sc-pill.on { color: #9fffd0; border-color: rgba(120,255,190,.35); }

.sc-main { display: grid; grid-template-columns: minmax(300px, 380px) 1fr; gap: 14px; padding: 14px 16px 28px; max-width: 1500px; margin: 0 auto; }
.sc-left, .sc-right { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
.sc-card { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: 14px; backdrop-filter: blur(10px); }
.sc-head { display: flex; align-items: center; gap: 10px; justify-content: space-between; margin-bottom: 6px; }
.sc-label { display: block; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin: 8px 0 5px; }
.sc-label:first-child { margin-top: 0; }
.sc-row { display: flex; gap: 8px; }
.sc-small { font-size: 12px; color: var(--muted); margin: 6px 0 0; }
.sc-search input, .sc-search select, textarea { width: 100%; background: rgba(6, 9, 34, .9); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; outline: none; }
.sc-search input:focus, .sc-search select:focus, textarea:focus { border-color: var(--violet); }
.sc-btns { margin-top: 12px; }
.sc-btns button { flex: 1; padding: 10px; border-radius: 10px; border: 1px solid var(--line); background: rgba(255,255,255,.04); cursor: pointer; }
.sc-btns button:hover { border-color: var(--violet); }
.sc-primary { background: linear-gradient(135deg, #4f7dff, #8b6bff) !important; border: none !important; font-weight: 600; color: #fff; cursor: pointer; border-radius: 10px; padding: 10px 16px; }
.sc-primary:disabled { opacity: .55; cursor: wait; }
.sc-mini { padding: 4px 12px; border-radius: 8px; border: 1px solid var(--line); background: rgba(255,255,255,.04); cursor: pointer; font-size: 12px; }
.sc-mini:hover { border-color: var(--violet); }
textarea { resize: vertical; margin-top: 6px; }

/* result */
.sc-result .sc-verdict { display: flex; align-items: center; gap: 12px; }
.sc-badge { font-size: 22px; font-weight: 700; letter-spacing: .06em; padding: 6px 16px; border-radius: 10px; }
.sc-badge.buy { color: #d8fff6; background: rgba(38,166,154,.22); border: 1px solid rgba(38,166,154,.6); }
.sc-badge.sell { color: #ffe1e0; background: rgba(239,83,80,.2); border: 1px solid rgba(239,83,80,.6); }
.sc-badge.wait { color: #fff1cf; background: rgba(255,210,120,.12); border: 1px solid rgba(255,210,120,.45); font-size: 17px; }
.sc-meta { font-size: 12px; color: var(--muted); }
.sc-meta b { color: var(--text); font-size: 15px; }
.sc-summary { margin: 10px 0 8px; }
.sc-plan { display: grid; grid-template-columns: repeat(auto-fit, minmax(92px, 1fr)); gap: 6px; margin: 8px 0; }
.sc-plan div { background: rgba(255,255,255,.04); border: 1px solid var(--line); border-radius: 9px; padding: 6px 8px; }
.sc-plan span { display: block; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.sc-plan b { font-variant-numeric: tabular-nums; font-size: 14px; }
.sc-idea { font-size: 12px; color: var(--wait); }
.sc-reasons { list-style: none; padding: 0; margin: 6px 0 0; font-size: 13px; }
.sc-reasons li { padding: 3px 0; border-bottom: 1px dashed rgba(120,140,255,.12); }
.sc-wait { margin-top: 8px; font-size: 13px; color: #ffe2a6; }
.sc-agree { margin-top: 8px; font-size: 12px; color: var(--muted); }
.sc-err { color: #ff9a8a; font-size: 13px; margin-top: 6px; }
.sc-all { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 6px; }

/* tables */
.sc-table table { width: 100%; border-collapse: collapse; font-size: 13px; margin-top: 8px; }
.sc-table th { text-align: left; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); font-weight: 500; padding: 4px 6px; border-bottom: 1px solid var(--line); }
.sc-table td { padding: 6px; border-bottom: 1px solid rgba(120,140,255,.1); vertical-align: top; }
.sc-table tr.click { cursor: pointer; }
.sc-table tr.click:hover td { background: rgba(120,140,255,.07); }
.d-BUY { color: #5fe0cf; font-weight: 600; } .d-SELL { color: #ff7a77; font-weight: 600; } .d-NO { color: var(--muted); }

/* scanner switches */
.sc-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 10px; margin-top: 4px; }
.sc-item { border: 1px solid var(--line); border-radius: 12px; padding: 10px 12px; background: rgba(255,255,255,.025); display: flex; gap: 10px; align-items: flex-start; }
.sc-item.off { opacity: .55; }
.sc-item b { font-size: 13px; }
.sc-item p { margin: 3px 0 0; font-size: 12px; color: var(--muted); }
.sc-item .use { margin-top: 6px; }
.sw { position: relative; width: 38px; height: 22px; flex: 0 0 auto; margin-left: auto; }
.sw input { opacity: 0; width: 0; height: 0; }
.sw span { position: absolute; inset: 0; border-radius: 99px; background: rgba(255,255,255,.12); transition: .2s; cursor: pointer; }
.sw span::after { content: ''; position: absolute; width: 16px; height: 16px; left: 3px; top: 3px; border-radius: 50%; background: #cfd6ff; transition: .2s; }
.sw input:checked + span { background: linear-gradient(135deg, #4f7dff, #8b6bff); }
.sw input:checked + span::after { transform: translateX(16px); background: #fff; }

/* chart (same parts as Nessa's chart panel) */
.chart-card { display: flex; flex-direction: column; gap: 6px; height: min(72vh, 760px); min-height: 420px; padding: 10px; background: rgba(6, 9, 30, .96); }
.chart-card.full { position: fixed; inset: 0; height: auto; z-index: 20; border-radius: 0; }
.cp-head { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.cp-head b { font-size: 15px; letter-spacing: .04em; }
.cp-price { font-variant-numeric: tabular-nums; color: #9fffd0; font-size: 14px; min-width: 70px; }
.cp-head select { background: rgba(10,14,44,.9); border: 1px solid var(--line); border-radius: 8px; padding: 4px 6px; font-size: 12px; }
#chartTfs button, #chartFull, .cp-inds button { background: transparent; border: 1px solid var(--line); color: var(--muted); border-radius: 7px; padding: 3px 8px; font-size: 12px; cursor: pointer; margin-left: 2px; }
#chartTfs button.on, .cp-inds button.on { color: #9fffd0; border-color: rgba(120,255,190,.45); }
.cp-right { margin-left: auto; display: flex; gap: 6px; align-items: center; }
.cp-body { flex: 1; display: flex; gap: 6px; min-height: 0; }
.cp-tools { display: flex; flex-direction: column; gap: 3px; overflow-y: auto; padding-right: 2px; }
.cp-tools button { width: 32px; height: 32px; flex: 0 0 auto; border-radius: 8px; border: 1px solid transparent; background: rgba(255,255,255,.03); cursor: pointer; display: grid; place-items: center; }
.cp-tools button:hover { border-color: var(--line); }
.cp-tools button.on { border-color: rgba(120,255,190,.5); background: rgba(120,255,190,.08); }
.cp-tools svg { width: 18px; height: 18px; fill: none; stroke: #b9c3f5; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.cp-tools .sep { height: 1px; background: var(--line); margin: 4px 2px; flex: 0 0 auto; }
#chartBox { position: relative; flex: 1; min-width: 0; min-height: 300px; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; }
.cp-foot { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.cp-inds { display: flex; gap: 2px; flex-wrap: wrap; }
.cp-src { margin-left: auto; }
.cp-src a, #chartLegend a { color: var(--muted); }

.sc-overlay { position: fixed; inset: 0; display: grid; place-items: center; background: rgba(2,3,15,.86); z-index: 50; padding: 16px; }
.sc-lock { width: min(360px, 100%); display: flex; flex-direction: column; gap: 10px; text-align: center; }
.sc-lock input { background: rgba(6, 9, 34, .9); border: 1px solid var(--line); border-radius: 10px; padding: 10px 12px; }
.sc-spin { display: inline-block; width: 14px; height: 14px; border: 2px solid rgba(255,255,255,.25); border-top-color: #fff; border-radius: 50%; animation: spin .8s linear infinite; vertical-align: -2px; margin-right: 6px; }
@keyframes spin { to { transform: rotate(360deg); } }

@media (max-width: 900px) {
  .sc-main { grid-template-columns: 1fr; padding: 12px 12px 24px; }
  .chart-card { height: 62vh; min-height: 380px; }
  .cp-body { flex-direction: column; }
  .cp-tools { flex-direction: row; overflow-x: auto; order: 2; }
  .cp-tools button { width: 30px; height: 30px; }
}

/* price feeds */
.sc-feeds { display: grid; gap: 4px; margin: 8px 0; font-size: 13px; }
.sc-feeds div { display: flex; gap: 8px; align-items: baseline; }
.sc-feeds .dot { width: 9px; height: 9px; border-radius: 50%; flex: 0 0 auto; background: #ff7a77; transform: translateY(1px); }
.sc-feeds .dot.ok { background: #5fe0cf; }
.sc-feeds .dot.miss { background: #7a83b8; }
.sc-keys input { flex: 1; background: rgba(6, 9, 34, .9); border: 1px solid var(--line); border-radius: 10px; padding: 8px 10px; }
.sc-advice { font-size: 13px; color: #ffe2a6; margin-top: 4px; }
.sc-advice.good { color: #9fffd0; }

/* indicator-style dashboard table on the chart */
.sc-dashlink { margin-left: auto; }
.sc-dashlink + .sc-pill { margin-left: 8px; }
.sc-dash { position: absolute; z-index: 6; pointer-events: none; font-size: 11px; line-height: 1.2; opacity: .94; }
.sc-dash.bottom-right { right: 70px; bottom: 34px; } .sc-dash.top-right { right: 70px; top: 40px; }
.sc-dash.bottom-left { left: 8px; bottom: 34px; } .sc-dash.top-left { left: 8px; top: 40px; }
.sc-dash table { border-collapse: separate; border-spacing: 1px; }
.sc-dash td { padding: 3px 8px; color: #fff; white-space: nowrap; text-align: center; min-width: 76px; }
.sc-dash tr.hd td { background: #0a0a0a; }
.sc-dash .tw td { background: #4caf50; } .sc-dash .tl td { background: #e53935; } .sc-dash .tp td { background: #6b6f7a; }
.sc-dash .dw td { background: #2962ff; } .sc-dash .dl td { background: #7a1a3a; } .sc-dash .dp td { background: #1f1a7a; }
.sc-dash .ww td { background: #f39321; } .sc-dash .wl td { background: #c43cdd; } .sc-dash .wp td { background: #5bd46a; }
.sc-dash .mw td { background: #7a7a1c; } .sc-dash .ml td { background: #8a2aa0; } .sc-dash .mp td { background: #3b8a7a; }
.sc-dash .ex td { background: #2a3150; }
.sc-dash .sl td { background: #4caf50; } .sc-dash .ss td { background: #e53935; } .sc-dash .sn td { background: #6b6f7a; }
.sc-dash .cs td { background: #b0b4bd; color: #111; } .sc-dash .et td { background: #3fb5cf; color: #062028; }
.sc-dash .dn { font-size: 10px; color: #9aa3cf; text-align: right; margin-top: 2px; text-shadow: 0 1px 2px #000; }
@media (max-width: 900px) { .sc-dash { font-size: 10px; transform: scale(.82); transform-origin: bottom right; } .sc-dash.bottom-right, .sc-dash.top-right { right: 50px; } }

.sc-dash tr.hd { pointer-events: auto; cursor: pointer; }
.sc-dash.min tr:not(.hd), .sc-dash.min .dn { display: none; }

/* =================== v27 · Daylight look (scanner + dashboard) =================== */
body.light-ui {
  --bg: #f4f7fb; --card: rgba(255,255,255,.8); --line: rgba(67,110,167,.13); --blue: #3b6bff; --violet: #4091fa;
  --text: #131d2a; --muted: #6a7686; --buy: #12a37f; --sell: #e5484d; --wait: #b7791f;
  --display: "Outfit", "Plus Jakarta Sans", system-ui, sans-serif;
  --shadow: 0 24px 60px -22px rgba(48,100,167,.3), 0 2px 8px rgba(48,100,167,.05);
  background: linear-gradient(180deg, #e7f1fd 0%, #f2f7fe 30%, #f6f9fe 60%, #eef6ff 100%) fixed;
  color: var(--text); font: 14px/1.55 "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
html:has(body.light-ui) { background: #f4f7fb; }
body.light-ui a { color: var(--violet); }
body.light-ui .sc-sky { position: fixed; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
body.light-ui .sc-sky i { position: absolute; border-radius: 50%; filter: blur(70px); opacity: .55; mix-blend-mode: multiply; }
body.light-ui .sc-sky i:nth-child(1) { width: 44vmax; height: 44vmax; left: -12vmax; top: -14vmax; background: radial-gradient(circle, #bbd6fa, transparent 65%); animation: scDrift 28s ease-in-out infinite alternate; }
body.light-ui .sc-sky i:nth-child(2) { width: 40vmax; height: 40vmax; right: -12vmax; top: 10vmax; background: radial-gradient(circle, #c8defb, transparent 65%); animation: scDrift 32s ease-in-out infinite alternate-reverse; }
body.light-ui .sc-sky i:nth-child(3) { width: 50vmax; height: 34vmax; left: 25vmax; bottom: -16vmax; background: radial-gradient(circle, #b9ecff, transparent 65%); animation: scDrift 36s ease-in-out infinite alternate; }
@keyframes scDrift { to { transform: translate(6vmax, 5vmax) scale(1.1); } }

body.light-ui .sc-top { background: rgba(255,255,255,.6); border-bottom: 1px solid rgba(255,255,255,.9); backdrop-filter: blur(22px) saturate(1.4); -webkit-backdrop-filter: blur(22px) saturate(1.4);
  box-shadow: 0 10px 40px -24px rgba(48,100,167,.4); padding: max(12px, env(safe-area-inset-top)) 20px 12px; }
body.light-ui .sc-brand { font-family: var(--display); font-size: 21px; letter-spacing: -.01em; font-weight: 800; color: var(--text); text-shadow: none; }
body.light-ui .sc-brand span { font-weight: 200; color: var(--text); letter-spacing: -.01em; }
body.light-ui .sc-back { background: #ffffff; border: 1px solid var(--line); color: var(--text); font-weight: 600; box-shadow: 0 4px 14px -8px rgba(48,100,167,.35); }
body.light-ui .sc-back:hover { background: #131d2a; color: #ffffff; border-color: #131d2a; }
body.light-ui .sc-pill { background: #ffffff; border-color: var(--line); color: var(--muted); font-weight: 600; }
body.light-ui .sc-pill.on { color: #0a8a5c; border-color: rgba(10,138,92,.3); }
/* Nessa's little glowing portrait in the header */
.sc-nessa { display: inline-flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 600; color: var(--muted); }
.sc-nessa i { width: 34px; height: 34px; border-radius: 50%; flex: 0 0 auto; background: url(assets/nessa/nessa-front.webp) 50% 31% / 160% auto no-repeat, linear-gradient(135deg, #dbe9fc, #dfecfc);
  box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(64,145,250,.3), 0 0 22px rgba(64,145,250,.55), 0 0 40px rgba(19,200,236,.35); animation: scGlow 3.2s ease-in-out infinite; }
@keyframes scGlow { 50% { box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px rgba(83,156,251,.35), 0 0 26px rgba(83,156,251,.55), 0 0 46px rgba(64,145,250,.35); } }
@media (max-width: 700px) { .sc-nessa b { display: none; } }

body.light-ui .sc-card { background: var(--card); border: 1px solid rgba(255,255,255,.95); border-radius: 22px; padding: 16px; box-shadow: var(--shadow);
  backdrop-filter: blur(18px) saturate(1.3); -webkit-backdrop-filter: blur(18px) saturate(1.3); }
body.light-ui .sc-head b { font-family: var(--display); font-size: 17px; font-weight: 600; letter-spacing: -.01em; }
body.light-ui .sc-label { color: var(--muted); font-weight: 600; }
body.light-ui .sc-small { color: var(--muted); }

/* the glowing search bar */
body.light-ui .sc-search #mkt { background: #0b0a17 padding-box, linear-gradient(90deg, #539cfb, #7eb5fc 50%, #4f7dff) border-box; border: 1.5px solid transparent; color: #ffffff;
  border-radius: 14px; padding: 13px 14px; font-size: 15px; box-shadow: -14px 0 30px -8px rgba(83,156,251,.55), 14px 0 30px -8px rgba(59,107,255,.6); }
body.light-ui .sc-search #mkt::placeholder { color: rgba(255,255,255,.7); }
body.light-ui .sc-search #mkt:focus { box-shadow: -18px 0 40px -6px rgba(83,156,251,.7), 18px 0 40px -6px rgba(59,107,255,.75); }
body.light-ui :is(.sc-search select, textarea, .sc-keys input, .sc-lock input, .ad-form input[type=number], .ad-form select, select.sc-mini) {
  background: #ffffff !important; color: var(--text); border: 1px solid rgba(67,110,167,.18) !important; border-radius: 12px; }
body.light-ui :is(textarea, .sc-search select):focus { border-color: var(--violet) !important; box-shadow: 0 0 0 4px rgba(64,145,250,.12); }
body.light-ui .sc-btns button { background: #ffffff; border: 1px solid var(--line); color: var(--text); font-weight: 600; border-radius: 12px; }
body.light-ui .sc-btns button:hover { border-color: #131d2a; }
body.light-ui .sc-primary { background: #131d2a !important; color: #ffffff; border-radius: 12px; box-shadow: 0 12px 26px -12px rgba(19,29,42,.7); }
body.light-ui .sc-primary:hover { background: linear-gradient(135deg, #4091fa, #539cfb) !important; }
body.light-ui .sc-mini { background: #ffffff; border: 1px solid var(--line); color: var(--text); font-weight: 600; }
body.light-ui .sc-mini:hover { background: #131d2a; color: #ffffff; border-color: #131d2a; }

/* the result: a dark "hero" card like the reference dashboard */
body.light-ui .sc-result { background: #131d2a; color: #ffffff; border: 0; position: relative; overflow: hidden; }
body.light-ui .sc-result::before { content: ""; position: absolute; width: 260px; height: 260px; right: -90px; top: -110px; border-radius: 50%;
  background: radial-gradient(circle, rgba(64,145,250,.55), transparent 65%); pointer-events: none; }
body.light-ui .sc-result .sc-meta, body.light-ui .sc-result .sc-agree { color: rgba(255,255,255,.62); }
body.light-ui .sc-result .sc-meta b { color: #ffffff; }
body.light-ui .sc-result .sc-plan div { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.1); border-radius: 12px; }
body.light-ui .sc-result .sc-plan span { color: rgba(255,255,255,.55); }
body.light-ui .sc-result .sc-reasons li { border-bottom-color: rgba(255,255,255,.08); }
body.light-ui .sc-result .sc-idea, body.light-ui .sc-result .sc-wait { color: #ffd27a; }
body.light-ui .sc-result a { color: #bad5f9; }
body.light-ui .sc-result .sc-table th { color: rgba(255,255,255,.55); border-bottom-color: rgba(255,255,255,.12); }
body.light-ui .sc-result .sc-table td { border-bottom-color: rgba(255,255,255,.08); }
body.light-ui .sc-badge { border-radius: 14px; font-family: var(--display); }
body.light-ui .sc-badge.buy { color: #04261d; background: #4ee0b5; border: 0; box-shadow: 0 0 30px rgba(78,224,181,.45); }
body.light-ui .sc-badge.sell { color: #ffffff; background: #ff5a6a; border: 0; box-shadow: 0 0 30px rgba(255,90,106,.45); }
body.light-ui .sc-badge.wait { color: #2b1d00; background: #ffd27a; border: 0; }
body.light-ui .sc-err { color: #c0284c; }
body.light-ui .sc-result .sc-err { color: #ff9aa6; }

body.light-ui .sc-table th { color: var(--muted); border-bottom-color: var(--line); font-weight: 600; }
body.light-ui .sc-table td { border-bottom-color: rgba(67,110,167,.08); }
body.light-ui .sc-table tr.click:hover td { background: rgba(64,145,250,.06); }
body.light-ui .d-BUY { color: #0a8a5c; } body.light-ui .d-SELL { color: #d6313f; }
body.light-ui .sc-result .d-BUY { color: #4ee0b5; } body.light-ui .sc-result .d-SELL { color: #ff8a95; }

body.light-ui .sc-item { background: #ffffff; border: 1px solid rgba(67,110,167,.1); border-radius: 16px; box-shadow: 0 10px 26px -20px rgba(48,100,167,.5); }
body.light-ui .sw span { background: rgba(19,29,42,.12); }
body.light-ui .sw span::after { background: #ffffff; box-shadow: 0 1px 3px rgba(0,0,0,.2); }
body.light-ui .sw input:checked + span { background: linear-gradient(135deg, #4091fa, #539cfb); }

body.light-ui .chart-card { background: rgba(255,255,255,.92); }
body.light-ui .cp-head b { font-family: var(--display); font-weight: 600; }
body.light-ui .cp-head select { background: #ffffff; color: var(--text); }
body.light-ui #chartTfs button, body.light-ui #chartFull, body.light-ui .cp-inds button { background: #ffffff; color: var(--muted); border-color: var(--line); }
body.light-ui #chartTfs button.on, body.light-ui .cp-inds button.on { background: #131d2a; color: #ffffff; border-color: #131d2a; }
body.light-ui .cp-price { color: #0a8a5c; font-weight: 700; }
body.light-ui .cp-tools button { background: #ffffff; border-color: rgba(67,110,167,.1); }
body.light-ui .cp-tools button.on { background: rgba(64,145,250,.1); border-color: var(--violet); }
body.light-ui .cp-tools svg { stroke: #384556; }
body.light-ui #chartBox { border-color: var(--line); background: #ffffff; }

body.light-ui .sc-feeds .dot.ok { background: #12b886; } body.light-ui .sc-feeds .dot { background: #e5484d; } body.light-ui .sc-feeds .dot.miss { background: #b4becb; }
body.light-ui .sc-advice { color: #9a5b00; } body.light-ui .sc-advice.good { color: #0a8a5c; }
body.light-ui .sc-overlay { background: rgba(244,247,251,.65); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
body.light-ui .sc-lock::before { content: ""; display: block; width: 90px; height: 90px; margin: 0 auto; border-radius: 50%;
  background: url(assets/nessa/nessa-front.webp) 50% 30% / 150% auto no-repeat, linear-gradient(160deg, #e0ecfc, #e3eefd); animation: scGlow 3s ease-in-out infinite;
  box-shadow: 0 0 0 4px #ffffff, 0 0 40px rgba(64,145,250,.55); }
body.light-ui .sc-spin { border-color: rgba(19,29,42,.15); border-top-color: var(--violet); }
body.light-ui ::-webkit-scrollbar { width: 8px; height: 8px; } body.light-ui ::-webkit-scrollbar-thumb { background: rgba(67,110,167,.25); border-radius: 8px; }
/* dashboard page */
body.light-ui .ad-tile { background: #ffffff; border: 1px solid rgba(67,110,167,.1); border-radius: 18px; padding: 14px 16px; box-shadow: 0 14px 30px -22px rgba(48,100,167,.55); position: relative; overflow: hidden; }
body.light-ui .ad-tile:nth-child(4n+1) { background: #131d2a; color: #ffffff; border: 0; }
body.light-ui .ad-tile:nth-child(4n+1)::after { content: ""; position: absolute; right: -40px; top: -50px; width: 140px; height: 140px; border-radius: 50%; background: radial-gradient(circle, rgba(64,145,250,.6), transparent 65%); }
body.light-ui .ad-tile:nth-child(4n+1) .sub { color: rgba(255,255,255,.6); }
body.light-ui .ad-tile .big { font-family: var(--display); font-size: 30px; font-weight: 600; letter-spacing: -.02em; }
body.light-ui .ad-tile b { font-family: var(--display); font-weight: 600; }
body.light-ui .w { color: #0a8a5c; } body.light-ui .l { color: #d6313f; }
body.light-ui .ad-tile:nth-child(4n+1) .w { color: #4ee0b5; } body.light-ui .ad-tile:nth-child(4n+1) .l { color: #ff8a95; }
body.light-ui .ad-sec { color: var(--violet); font-weight: 700; }
body.light-ui .ad-toggles label { border-bottom-color: rgba(67,110,167,.1); }

/* v28 · professional trading look */
body.light-ui { --display: "Manrope", "Plus Jakarta Sans", system-ui, sans-serif; --text: #0d1b2a; --muted: #5b6b7d; --violet: #2563eb;
  background: linear-gradient(180deg, #e3edf7 0%, #eef3f9 35%, #f6f8fb 70%, #eef3f8 100%) fixed; font-family: "Inter", "Plus Jakarta Sans", -apple-system, sans-serif; }
body.light-ui .sc-sky i:nth-child(1) { background: radial-gradient(circle, #bcd3f5, transparent 65%); }
body.light-ui .sc-sky i:nth-child(2) { background: radial-gradient(circle, #d3e3f5, transparent 65%); }
body.light-ui .sc-brand { font-weight: 700; } body.light-ui .sc-brand span { font-weight: 400; color: var(--muted); }
body.light-ui .sc-search #mkt { background: #fff padding-box, linear-gradient(90deg, rgba(37,99,235,.6), rgba(56,189,248,.6)) border-box; color: var(--text);
  box-shadow: 0 12px 30px -18px rgba(13,40,80,.45), 0 0 0 5px rgba(37,99,235,.06); }
body.light-ui .sc-search #mkt::placeholder { color: #8796a8; }
body.light-ui .sc-search #mkt:focus { box-shadow: 0 12px 30px -18px rgba(13,40,80,.45), 0 0 0 5px rgba(37,99,235,.16); }
body.light-ui .sc-primary { background: #0d1b2a !important; }
body.light-ui .sc-primary:hover { background: #2563eb !important; }
body.light-ui .sc-result { background: #0d1b2a; }
body.light-ui .sc-result::before { background: radial-gradient(circle, rgba(37,99,235,.55), transparent 65%); }
body.light-ui .sw input:checked + span { background: #2563eb; }
body.light-ui .ad-tile:nth-child(4n+1) { background: #0d1b2a; }
body.light-ui .ad-tile:nth-child(4n+1)::after { background: radial-gradient(circle, rgba(37,99,235,.6), transparent 65%); }
body.light-ui .ad-sec { color: #2563eb; }
.sc-nessa i { box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(37,99,235,.3), 0 0 20px rgba(37,99,235,.45); animation: none; }

/* =================== v30 · Porcelain Night (official navy + white) =================== */
body.night-ui {
  --bg: #0a1520; --card: rgba(13,24,37,.86); --line: rgba(255,255,255,.08); --line2: rgba(255,255,255,.14); --surface: #0f1c2b;
  --text: #eef2f6; --muted: #8b9bb0; --white: #f4f6f8; --violet: #f4f6f8; --buy: #2fbf8f; --sell: #f0616d; --wait: #e8b04a;
  --display: "Manrope", "Inter", system-ui, sans-serif;
  background: radial-gradient(1200px 700px at 50% -10%, #16304b 0%, rgba(22,48,75,0) 60%), linear-gradient(180deg, #08121c, #0a1520 40%, #070f18) fixed;
  color: var(--text); font: 14px/1.55 "Inter", -apple-system, BlinkMacSystemFont, sans-serif;
}
html:has(body.night-ui) { background: #0a1520; }
body.night-ui a { color: #c9d8ea; }
body.night-ui .sc-sky { display: none; }
body.night-ui .sc-top { background: rgba(8,16,26,.82); border-bottom: 1px solid var(--line); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); padding: max(12px, env(safe-area-inset-top)) 20px 12px; }
body.night-ui .sc-brand { font-family: var(--display); font-size: 17px; letter-spacing: .26em; font-weight: 600; color: var(--white); text-shadow: none; }
body.night-ui .sc-brand span { color: var(--muted); font-weight: 400; letter-spacing: .26em; }
body.night-ui .sc-back { background: transparent; border: 1px solid var(--line2); color: var(--text); font-weight: 500; }
body.night-ui .sc-back:hover { background: var(--white); color: #0a1520; border-color: var(--white); }
body.night-ui .sc-pill { border-color: var(--line2); color: var(--muted); font-weight: 600; }
body.night-ui .sc-pill.on { color: var(--buy); border-color: rgba(47,191,143,.35); }
body.night-ui .sc-nessa i { width: 34px; height: 34px; border-radius: 50%; display: inline-block; background: url(assets/nessa/nessa-porcelain-face.webp) center / cover no-repeat, #13243a;
  box-shadow: 0 0 0 1px rgba(255,255,255,.35), 0 0 18px rgba(255,255,255,.2); animation: none; }
body.night-ui .sc-card { background: var(--card); border: 1px solid var(--line); border-radius: 18px; padding: 16px; backdrop-filter: blur(14px); box-shadow: 0 24px 60px -30px rgba(0,0,0,.8); }
body.night-ui .sc-head b { font-family: var(--display); font-size: 16px; font-weight: 600; color: var(--white); }
body.night-ui .sc-label, body.night-ui .sc-small { color: var(--muted); }
body.night-ui .sc-search #mkt { background: var(--surface); border: 1px solid rgba(255,255,255,.22); color: var(--white); border-radius: 12px; padding: 12px 14px; font-size: 15px; }
body.night-ui .sc-search #mkt:focus { border-color: rgba(255,255,255,.5); box-shadow: 0 0 0 4px rgba(255,255,255,.06); }
body.night-ui :is(.sc-search select, textarea, .sc-keys input, .sc-lock input, .ad-form input[type=number], .ad-form select, select.sc-mini) {
  background: var(--surface) !important; color: var(--text); border: 1px solid var(--line2) !important; border-radius: 10px; }
body.night-ui .sc-btns button { background: transparent; border: 1px solid var(--line2); color: var(--text); font-weight: 500; border-radius: 10px; }
body.night-ui .sc-btns button:hover { border-color: rgba(255,255,255,.4); }
body.night-ui .sc-primary { background: var(--white) !important; color: #0a1520 !important; border-radius: 10px; font-weight: 600; }
body.night-ui .sc-primary:hover { background: #fff !important; }
body.night-ui .sc-mini { background: transparent; border: 1px solid var(--line2); color: var(--text); }
body.night-ui .sc-mini:hover { background: var(--white); color: #0a1520; border-color: var(--white); }
/* the result: a porcelain-white card on the navy page */
body.night-ui .sc-result { background: #f4f6f8; color: #0a1520; border: 0; }
body.night-ui .sc-result .sc-meta, body.night-ui .sc-result .sc-agree, body.night-ui .sc-result .sc-small { color: #5b6b7d; }
body.night-ui .sc-result .sc-meta b { color: #0a1520; }
body.night-ui .sc-result .sc-plan div { background: #fff; border: 1px solid rgba(10,21,32,.1); border-radius: 10px; }
body.night-ui .sc-result .sc-plan span { color: #5b6b7d; }
body.night-ui .sc-result .sc-reasons li { border-bottom-color: rgba(10,21,32,.08); }
body.night-ui .sc-result .sc-idea, body.night-ui .sc-result .sc-wait { color: #9a6a00; }
body.night-ui .sc-result a { color: #0a1520; }
body.night-ui .sc-result .sc-table th { color: #5b6b7d; border-bottom-color: rgba(10,21,32,.12); }
body.night-ui .sc-result .sc-table td { border-bottom-color: rgba(10,21,32,.08); }
body.night-ui .sc-result .d-BUY { color: #0f8f66; } body.night-ui .sc-result .d-SELL { color: #d63b48; }
body.night-ui .sc-badge { border-radius: 10px; font-family: var(--display); }
body.night-ui .sc-badge.buy { color: #fff; background: #0f8f66; border: 0; }
body.night-ui .sc-badge.sell { color: #fff; background: #d63b48; border: 0; }
body.night-ui .sc-badge.wait { color: #2b1d00; background: #e8b04a; border: 0; }
body.night-ui .sc-err { color: #ff9aa3; } body.night-ui .sc-result .sc-err { color: #c0284c; }
body.night-ui .sc-table th { color: var(--muted); border-bottom-color: var(--line2); }
body.night-ui .sc-table td { border-bottom-color: var(--line); }
body.night-ui .sc-table tr.click:hover td { background: rgba(255,255,255,.04); }
body.night-ui .d-BUY { color: var(--buy); } body.night-ui .d-SELL { color: var(--sell); }
body.night-ui .sc-item { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; }
body.night-ui .sw span { background: rgba(255,255,255,.14); }
body.night-ui .sw span::after { background: #c4cfdc; }
body.night-ui .sw input:checked + span { background: var(--white); }
body.night-ui .sw input:checked + span::after { background: #0a1520; }
body.night-ui .chart-card { background: rgba(8,16,26,.95); }
body.night-ui .cp-head b { font-family: var(--display); font-weight: 600; color: var(--white); }
body.night-ui .cp-head select { background: var(--surface); color: var(--text); }
body.night-ui #chartTfs button, body.night-ui #chartFull, body.night-ui .cp-inds button { background: transparent; color: var(--muted); border-color: var(--line2); }
body.night-ui #chartTfs button.on, body.night-ui .cp-inds button.on { background: var(--white); color: #0a1520; border-color: var(--white); }
body.night-ui .cp-price { color: var(--buy); font-weight: 600; }
body.night-ui .cp-tools svg { stroke: #c4cfdc; }
body.night-ui .cp-tools button.on { background: rgba(255,255,255,.1); border-color: rgba(255,255,255,.4); }
body.night-ui #chartBox { border-color: var(--line2); background: #08111b; }
body.night-ui .sc-feeds .dot.ok { background: var(--buy); } body.night-ui .sc-feeds .dot { background: var(--sell); } body.night-ui .sc-feeds .dot.miss { background: #4c5b6e; }
body.night-ui .sc-advice { color: #e8b04a; } body.night-ui .sc-advice.good { color: var(--buy); }
body.night-ui .sc-overlay { background: rgba(6,13,22,.8); backdrop-filter: blur(16px); }
body.night-ui .sc-lock::before { content: ""; display: block; width: 92px; height: 92px; margin: 0 auto; border-radius: 50%;
  background: url(assets/nessa/nessa-porcelain-face.webp) center / cover no-repeat, #13243a; box-shadow: 0 0 0 1px rgba(255,255,255,.35), 0 0 40px rgba(255,255,255,.2); }
body.night-ui .sc-spin { border-color: rgba(255,255,255,.15); border-top-color: var(--white); }
/* dashboard page */
body.night-ui .ad-tile { background: var(--surface); border: 1px solid var(--line); border-radius: 16px; padding: 14px 16px; color: var(--text); }
body.night-ui .ad-tile:nth-child(4n+1) { background: #f4f6f8; color: #0a1520; border: 0; }
body.night-ui .ad-tile:nth-child(4n+1) .sub { color: #5b6b7d; }
body.night-ui .ad-tile .big { font-family: var(--display); font-size: 28px; font-weight: 600; }
body.night-ui .ad-tile .sub { color: var(--muted); }
body.night-ui .w { color: var(--buy); } body.night-ui .l { color: var(--sell); }
body.night-ui .ad-tile:nth-child(4n+1) .w { color: #0f8f66; } body.night-ui .ad-tile:nth-child(4n+1) .l { color: #d63b48; }
body.night-ui .ad-sec { color: var(--white); font-weight: 600; }
body.night-ui .ad-form label { color: var(--muted); }
body.night-ui .ad-toggles label { border-bottom-color: var(--line); }
body.night-ui ::-webkit-scrollbar { width: 8px; height: 8px; } body.night-ui ::-webkit-scrollbar-thumb { background: rgba(255,255,255,.14); border-radius: 8px; }
