:root {
  --bg: #06101a;
  --surface: rgba(15, 30, 43, 0.88);
  --surface-2: rgba(11, 24, 36, 0.92);
  --surface-3: rgba(29, 48, 64, 0.9);
  --ink: #edf7ff;
  --muted: #91a5b6;
  --line: rgba(102, 133, 157, 0.24);
  --field: #081725;
  --field-ink: #f4f7f8;
  --accent: #36d489;
  --accent-ink: #04110b;
  --blue: #2f7df6;
  --blue-ink: #ffffff;
  --bad: #e5484d;
  --warn: #e4ad36;
  --gold: #f4c86b;
  --shadow: 0 18px 54px rgba(0, 0, 0, 0.34);
  color-scheme: dark;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

[hidden] { display: none !important; }

body.light {
  --bg: #f5f7fa;
  --surface: #ffffff;
  --surface-2: #f9fafb;
  --surface-3: #eef2f6;
  --ink: #111827;
  --muted: #5f6b7a;
  --line: #d9e0e7;
  --field: #ffffff;
  --field-ink: #111827;
  --accent: #00a86b;
  --accent-ink: #ffffff;
  --blue: #2563eb;
  --blue-ink: #ffffff;
  --bad: #d92d3a;
  --warn: #9a6500;
  --shadow: 0 14px 34px rgba(15, 23, 42, 0.08);
  color-scheme: light;
}

* { box-sizing: border-box; }
:root {
  --app-shell-gutter: 14px;
  --app-desktop-scroll-floor: 1560px;
}
html { max-width: 100%; overflow-x: hidden; }
body {
  margin: 0;
  max-width: 100%;
  overflow-x: hidden;
  background: #020407;
  color: var(--ink);
}
body.custom-bg::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -2;
  background-image: var(--custom-bg-image);
  background-size: var(--custom-bg-size);
  background-position: center;
  background-repeat: var(--custom-bg-repeat);
  opacity: var(--custom-bg-opacity);
  filter: blur(var(--custom-bg-blur));
}
body.custom-bg::after {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  background: rgba(3, 10, 16, 0.72);
}
body.light {
  background:
    linear-gradient(rgba(245, 247, 250, 0.94), rgba(245, 247, 250, 0.98)),
    radial-gradient(circle at 72% 14%, rgba(47, 125, 246, 0.08), transparent 28%),
    radial-gradient(circle at 15% 80%, rgba(244, 200, 107, 0.1), transparent 26%),
    var(--bg);
}
body.modal-open { overflow: hidden; }
body.startup-gate-active { overflow: hidden; }
button, input, select, textarea { font: inherit; }

.startup-gate {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: grid;
  place-items: center;
  padding: 24px;
  background: rgba(2, 8, 14, .74);
  backdrop-filter: blur(8px);
}
.startup-gate.hidden { display: none; }
.startup-gate-card {
  width: min(720px, calc(100vw - 36px));
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  padding: 22px;
  border: 1px solid rgba(47, 125, 246, .52);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(14, 31, 45, .98), rgba(8, 21, 34, .98));
  box-shadow: 0 0 0 1px rgba(54, 212, 137, .06), 0 28px 80px rgba(0, 0, 0, .48);
}
.startup-gate-egg {
  width: 82px;
  height: 82px;
  background: url("assets/battle-egg-v18.png") center / contain no-repeat;
  filter: drop-shadow(0 0 18px rgba(244, 200, 107, .44));
  animation: hatchBounce .9s ease-in-out infinite alternate;
}
.startup-gate.foot-mode-startup .startup-gate-egg,
body.foot-fetish-mode .startup-gate-egg {
  width: 86px;
  height: 86px;
  border-radius: 18px;
  background-image: url("assets/foot-mode-status-egg-timer-v49.png");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  filter: drop-shadow(0 8px 22px rgba(255, 188, 212, .46));
  animation: startupFootFloat 1.4s ease-in-out infinite alternate;
}
.startup-gate.foot-mode-startup .startup-gate-egg:hover,
body.foot-fetish-mode .startup-gate-egg:hover {
  position: relative;
  z-index: 3;
  animation: none;
  transform: scale(4);
  filter: drop-shadow(0 18px 34px rgba(0, 0, 0, .38)) drop-shadow(0 0 20px rgba(255, 188, 212, .5));
}
.startup-gate-copy { min-width: 0; display: grid; gap: 8px; }
.startup-gate-kicker {
  color: var(--blue);
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 900;
}
.startup-gate h2 {
  font-size: 21px;
  color: var(--ink);
}
.startup-gate p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.45;
}
.startup-gate-progress {
  height: 6px;
  margin-top: 4px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(102, 133, 157, .18);
}
.startup-gate-progress span {
  display: block;
  width: 8%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), #4fd6ff, var(--accent));
  transition: width 1.1s cubic-bezier(.22, .72, .22, 1);
}
.startup-gate-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
  margin-top: 6px;
}
.startup-step {
  min-width: 0;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  padding: 0 9px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(8, 23, 37, .76);
  color: var(--muted);
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}
.startup-step::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(145, 165, 182, .45);
  flex: 0 0 auto;
}
.startup-step.active {
  color: var(--blue-ink);
  border-color: rgba(47, 125, 246, .62);
  box-shadow: 0 0 18px rgba(47, 125, 246, .18);
}
.startup-step.active::before {
  background: var(--blue);
  animation: statusPulse 1s ease-in-out infinite;
}
.startup-step.done {
  color: var(--accent);
  border-color: rgba(54, 212, 137, .42);
}
.startup-step.done::before {
  content: "✓";
  width: auto;
  height: auto;
  background: transparent;
  color: var(--accent);
  font-weight: 950;
}
.startup-step.error {
  color: var(--bad);
  border-color: rgba(229, 72, 77, .48);
}
.startup-step.error::before {
  background: var(--bad);
}

.app { width: min(1880px, calc(100vw - (var(--app-shell-gutter) * 2))); max-width: calc(100vw - (var(--app-shell-gutter) * 2)); margin: 0 auto 24px; overflow-x: clip; }
@media (max-width: 1574px) {
  html { max-width: none; overflow-x: auto; }
  body { min-width: var(--app-desktop-scroll-floor); max-width: none; overflow-x: visible; }
  .app { width: var(--app-desktop-scroll-floor); max-width: none; min-width: var(--app-desktop-scroll-floor); overflow-x: clip; }
}
.dashboard-header { position: sticky; top: 0; z-index: 30; padding-top: 8px; background: rgba(2, 4, 7, .94); backdrop-filter: blur(18px); }
body.light .dashboard-header { background: rgba(245, 247, 250, .96); }
.topbar { display: grid; grid-template-columns: minmax(390px, 1fr) minmax(0, auto); gap: clamp(8px, 1.1vw, 18px); align-items: center; padding: 8px 0; overflow: visible; }
.topbar > div { min-width: 0; }
.topbar-right { display: flex; gap: clamp(7px, .75vw, 12px); align-items: center; justify-content: flex-end; min-width: 0; max-width: 100%; flex-wrap: wrap; }
.refresh-control { display: grid; min-width: 190px; gap: 3px; justify-items: stretch; align-self: center; transform: translateY(4px); }
.eyebrow { margin: 0 0 6px; color: var(--accent); text-transform: uppercase; font-size: 12px; font-weight: 900; }
h1, h2, h3, p { margin: 0; }
h1 { max-width: 100%; min-width: 0; font-size: clamp(22px, 2vw, 34px); line-height: 1.12; letter-spacing: 0; display: grid; grid-template-columns: clamp(70px, 5.5vw, 90px) minmax(180px, 1fr) minmax(210px, auto); gap: clamp(8px, 1vw, 18px); align-items: center; overflow: visible; }
h2 { font-size: 17px; }
.last-refresh { margin-top: 0; color: var(--muted); font-size: 12px; font-weight: 750; text-align: center; white-space: nowrap; }
.last-refresh span + span { margin-left: 12px; }
.env-pill { display: inline-flex; align-items: center; min-height: 30px; border: 1px solid rgba(54, 212, 137, 0.45); border-radius: 7px; padding: 5px 10px; color: var(--accent); background: rgba(54, 212, 137, 0.08); font-size: 12px; text-transform: uppercase; white-space: nowrap; }
.muted-pill { color: var(--muted); border-color: var(--line); background: var(--surface-2); }
.brand-logo { position: relative; display: inline-grid; place-items: center; width: 100%; max-width: 100%; min-width: 0; min-height: 62px; padding: 0 clamp(4px, .6vw, 10px) 2px; overflow: hidden; }
.brand-logo img { display: block; width: min(100%, clamp(260px, 36vw, 620px)); height: clamp(52px, 4.9vw, 72px); object-fit: contain; object-position: center; filter: drop-shadow(0 0 13px rgba(244,200,107,.26)); }
body.foot-fetish-mode .brand-logo { overflow: visible; z-index: 45; }
body.foot-fetish-mode .brand-logo img { width: min(100%, clamp(360px, 44vw, 760px)); height: clamp(58px, 5.4vw, 76px); object-fit: contain; filter: drop-shadow(0 0 14px rgba(255,208,122,.28)); transform-origin: top center; transition: transform .16s ease, filter .16s ease; }
body.foot-fetish-mode .brand-logo:hover img { position: fixed; top: 26px; left: 50%; z-index: 80; width: min(1120px, calc(100vw - 72px)); height: auto; max-height: min(46vh, 430px); transform: translateX(-50%); filter: drop-shadow(0 18px 34px rgba(255,208,122,.34)); }
.env-stack { display: grid; gap: 6px; align-items: center; justify-items: center; min-width: 0; }
.env-row { display: flex; gap: 10px; align-items: center; justify-content: center; flex-wrap: nowrap; }
.env-row-secondary { min-height: 30px; }
.robinhood-online { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; color: var(--muted); font-size: 11px; font-weight: 850; white-space: nowrap; }
.robinhood-online.connected { color: var(--accent); }
.robinhood-online.disconnected { color: var(--bad); cursor: pointer; }
.robinhood-online.disconnected:hover { filter: brightness(1.08); }
@keyframes logoTwinkle { 0%, 62%, 100% { transform: translateX(-120%); opacity: 0; } 72% { opacity: 1; } 86% { transform: translateX(120%); opacity: 0; } }
@keyframes statusPulse { 0%, 100% { opacity: .55; transform: scale(.92); } 50% { opacity: 1; transform: scale(1.14); } }

.golden-egg {
  width: clamp(70px, 5.5vw, 90px);
  height: clamp(70px, 5.5vw, 90px);
  min-height: clamp(70px, 5.5vw, 90px);
  margin: 0;
  padding: 0;
  border: 0;
  background: url("assets/logo-egg-v18.png") center / contain no-repeat;
  filter: drop-shadow(0 5px 12px rgba(244, 200, 107, .36));
  flex: 0 0 auto;
  animation: logoEggShine 3.4s ease-in-out infinite;
}
.golden-egg.crack-1 { background-image: url("assets/battle-egg-v18.png"); transform: rotate(-2deg); }
.golden-egg.crack-2 { background-image: url("assets/battle-egg-v18.png"); transform: rotate(3deg) scale(1.04); filter: drop-shadow(0 5px 18px rgba(244,200,107,.64)) contrast(1.08); }
.golden-egg.crack-3 { background-image: url("assets/zombie-egg-v18.png"); transform: rotate(-4deg) scale(1.08); }
.golden-egg.crack-4 { background-image: url("assets/battle-egg-v18.png"); transform: rotate(5deg) scale(1.12); filter: drop-shadow(0 7px 22px rgba(244,200,107,.72)) contrast(1.12); }
.golden-egg.crack-5 { background-image: url("assets/zombie-egg-v18.png"); transform: rotate(-6deg) scale(1.15); }
.golden-egg.crack-6 { background-image: url("assets/zombie-egg-v18.png"); transform: rotate(7deg) scale(1.18); filter: drop-shadow(0 8px 24px rgba(54,212,137,.34)); }
.golden-egg.hatched { background-image: url("assets/bunny-goose-v20.png"); animation: hatchBounce .7s ease-in-out infinite alternate; }
.golden-egg.foot-mode { border-radius: 18px; background-image: url("assets/foot-mode-stage-1-v48.png"); filter: drop-shadow(0 5px 16px rgba(255,180,205,.34)); }
.golden-egg.foot-mode.foot-stage-1 { background-image: url("assets/foot-mode-stage-1-v48.png"); }
.golden-egg.foot-mode.foot-stage-2 { background-image: url("assets/foot-mode-stage-2-v48.png"); transform: rotate(2deg) scale(1.04); filter: drop-shadow(0 7px 20px rgba(255,188,212,.46)); }
.golden-egg.foot-mode.foot-stage-3 { background-image: url("assets/foot-mode-stage-3-v48.png"); transform: rotate(-2deg) scale(1.08); filter: drop-shadow(0 8px 24px rgba(255,188,212,.54)); }
.golden-egg.foot-mode.foot-refresh-wobble { background-image: url("assets/foot-mode-bounce-wobble-v49.png"); background-size: contain; animation: footModeLogoRefreshWobble 3.4s ease-in-out infinite; filter: drop-shadow(0 10px 26px rgba(255,188,212,.56)); transform: scale(1.08); }
@keyframes logoEggShine { 0%,100% { filter: drop-shadow(0 5px 12px rgba(244,200,107,.28)) brightness(1); transform: translateY(0); } 50% { filter: drop-shadow(0 5px 18px rgba(244,200,107,.54)) brightness(1.14); transform: translateY(-1px); } }
@keyframes hatchBounce { from { transform: translateY(0) rotate(-2deg); } to { transform: translateY(-4px) rotate(2deg); } }
@keyframes startupFootFloat { from { transform: translateY(0) rotate(-1.5deg) scale(.96); } to { transform: translateY(-5px) rotate(1.5deg) scale(1); } }
@keyframes footModeLogoRefreshWobble { 0%,100% { transform: rotate(-2deg) scale(1.06); } 50% { transform: rotate(2deg) scale(1.12); } }

.feet-rain-overlay { position: fixed; inset: 0; z-index: 9999; pointer-events: none; overflow: hidden; }
.feet-rain-unlocked { position: absolute; top: 14%; left: 50%; transform: translateX(-50%); min-width: min(720px, calc(100vw - 40px)); padding: 12px 22px; border: 1px solid rgba(54,212,137,.46); border-radius: 999px; background: rgba(5,18,30,.92); color: var(--accent); font-size: clamp(18px, 2.2vw, 28px); font-weight: 950; text-align: center; box-shadow: 0 16px 38px rgba(0,0,0,.34), 0 0 24px rgba(54,212,137,.16); animation: feetUnlockToast 3.35s ease forwards; }
.feet-rain-drop { position: absolute; top: -18vh; left: var(--feet-left, 50%); width: var(--feet-size, 88px); height: var(--feet-size, 88px); background: var(--feet-image, url("assets/easter-feet-v48.png")) center / contain no-repeat; opacity: .95; filter: drop-shadow(0 8px 16px rgba(0,0,0,.28)); animation: feetRainFall var(--feet-duration, 6.8s) linear var(--feet-delay, 0s) forwards; transform: translate3d(0, -22vh, 0) rotate(var(--feet-rotate, 0deg)); }
@keyframes feetUnlockToast { 0% { opacity: 0; transform: translate(-50%, -8px) scale(.94); } 10% { opacity: 1; transform: translate(-50%, 0) scale(1); } 86% { opacity: 1; } 100% { opacity: 0; transform: translate(-50%, -5px) scale(.98); } }
@keyframes feetRainFall { 0% { transform: translate3d(0, -18vh, 0) rotate(var(--feet-rotate, 0deg)); opacity: 0; } 8% { opacity: .96; } 100% { transform: translate3d(var(--feet-drift, 0px), 122vh, 0) rotate(calc(var(--feet-rotate, 0deg) + var(--feet-spin, 100deg))); opacity: 0; } }

.datebox, .board, .account-strip div, .card, .quote-status, .audit, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
  box-shadow: var(--shadow);
  backdrop-filter: blur(18px);
}

body.ai-refresh-active :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock) {
  position: relative;
}

body.ai-refresh-active.refresh-effect-gold :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock) {
  border-color: rgba(244, 200, 107, .56);
  box-shadow: var(--shadow), 0 0 0 1px rgba(244, 200, 107, .16), 0 0 24px rgba(244, 200, 107, .14);
}

body.ai-refresh-active.refresh-effect-blue :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock) {
  border-color: rgba(47, 125, 246, .58);
  box-shadow: var(--shadow), 0 0 0 1px rgba(47, 125, 246, .18), 0 0 18px rgba(47, 125, 246, .14);
}

body.ai-refresh-active :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock)::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 6;
  border-radius: inherit;
  padding: 2px;
  pointer-events: none;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  animation: goldPerimeterSweep 1.45s linear infinite;
}

body.ai-refresh-active.refresh-effect-gold :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock)::after {
  background: conic-gradient(from var(--gold-line-angle, 0deg), transparent 0 62deg, rgba(255, 246, 171, .98) 86deg, #f4c86b 110deg, transparent 140deg 360deg);
  filter: drop-shadow(0 0 8px rgba(244, 200, 107, .62));
  animation-duration: 1.25s;
}

body.ai-refresh-active.refresh-effect-blue :where(.datebox, .board, .account-strip div, .card, .quote-status, .audit, .left-rail .rail-card, .right-rail .rail-card, .market-strip, .egg-mood, .status-dock)::after {
  background: conic-gradient(from var(--gold-line-angle, 0deg), transparent 0 70deg, rgba(126, 181, 255, .72) 92deg, rgba(47, 125, 246, .86) 116deg, transparent 148deg 360deg);
  filter: drop-shadow(0 0 7px rgba(47, 125, 246, .45));
}

.datebox { flex: 1 1 560px; width: min(100%, 860px); max-width: 860px; min-width: 0; padding: 8px 9px; text-align: right; color: var(--muted); display: grid; grid-template-columns: 124px 36px 36px 36px 36px minmax(0, 1fr) minmax(120px, max-content) minmax(128px, max-content); grid-template-areas: "mode settings theme help kill . clock status"; gap: 6px; align-items: center; }
.datebox strong { display: block; margin-top: 4px; color: var(--accent); }
.mode-label { display: grid !important; place-items: center; justify-self: stretch; min-width: 0; min-height: 30px; margin-top: 0 !important; padding: 0 8px; text-align: center; font-size: 12px; font-weight: 850; color: var(--accent); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mode-label.up { color: var(--accent); }
.mode-label.live-glow { animation: liveTradingGlow 2.25s ease-in-out infinite; }
.mode-label.down { color: var(--bad); }
@keyframes liveTradingGlow {
  0%, 100% { text-shadow: 0 0 5px rgba(54,212,137,.18); filter: brightness(1); }
  50% { text-shadow: 0 0 13px rgba(54,212,137,.65), 0 0 24px rgba(54,212,137,.28); filter: brightness(1.12); }
}
.clock-stack { display: grid; gap: 2px; min-width: 120px; justify-items: center; text-align: center; }
.clock-stack strong { margin: 0; color: var(--ink); font-variant-numeric: tabular-nums; }
.market-session { display: inline-flex; align-items: center; gap: 6px; min-height: 28px; padding: 0 9px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: var(--surface-2); font-size: 11px; font-weight: 850; white-space: nowrap; max-width: 270px; overflow: hidden; text-overflow: ellipsis; }
.market-session i { width: 10px; height: 12px; border-radius: 55% 55% 45% 45%; background: var(--muted); box-shadow: 0 0 8px currentColor; }
.market-session.open { color: var(--accent); border-color: rgba(54,212,137,.44); }
.market-session.open i { background: var(--accent); }
.market-session.extended, .market-session.overnight { color: var(--gold); border-color: rgba(244,200,107,.44); }
.market-session.extended i, .market-session.overnight i { background: var(--gold); }
.market-session.closed { color: #ff7a72; border-color: rgba(229,72,77,.38); }
.market-session.closed i { background: #e5484d; }
.market-session:hover { animation: tabBlueOrbit 1.8s linear infinite; }
.market-session:hover { text-shadow: 0 0 10px currentColor; }
.theme-toggle, .theme-icon-button { width: 36px; min-height: 36px; margin: 0; padding: 0; border: 1px solid var(--line); background: var(--surface-2); color: var(--ink); border-radius: 8px; font-size: 17px; }
.mode-switch { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.datebox .mode-switch { grid-area: mode; }
#settingsBtn { grid-area: settings; }
#themeToggle { grid-area: theme; }
#helpBtn { grid-area: help; }
#quickKillSwitchBtn { grid-area: kill; }
.datebox .clock-stack { grid-area: clock; }
.datebox .mode-label { grid-area: status; }
.mode-btn { min-height: 32px; border-radius: 0; background: var(--surface-2); color: var(--muted); font-weight: 750; }
.mode-btn.active { background: var(--blue); color: #fff; }
.mode-btn:disabled { opacity: .42; cursor: not-allowed; background: rgba(117,133,150,.12); color: var(--muted); }
.gear-button { font-size: 15px; }
.mode-btn:hover:not(:disabled), .theme-toggle:hover, .theme-icon-button:hover, .gear-button:hover, .account-button:hover { border-color: rgba(47,125,246,.58); animation: tabBlueOrbit 1.9s linear infinite; }
.theme-toggle:hover, .theme-icon-button:hover, .gear-button:hover { color: var(--gold); }
#helpBtn:hover { color: var(--accent); border-color: rgba(47,125,246,.58); animation: tabBlueOrbit 1.9s linear infinite; }
.quick-kill-switch { position: relative; overflow: hidden; background: var(--surface-2); }
.quick-kill-switch::before { content: "KILL"; display: grid; place-items: center; width: 100%; height: 100%; color: #ffe6df; font-size: 9px; font-weight: 950; letter-spacing: .04em; border-radius: 6px; background: linear-gradient(180deg, #2a2f35, #111820); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.quick-kill-switch::after { content: ""; position: absolute; left: 10px; right: 10px; bottom: 6px; height: 4px; border-radius: 999px; background: #d92d3a; box-shadow: 0 0 10px rgba(229,72,77,.5); transform: rotate(-8deg); }
.quick-kill-switch:hover { border-color: rgba(229,72,77,.72); box-shadow: 0 0 0 1px rgba(229,72,77,.36), 0 0 18px rgba(229,72,77,.32); animation: none; }
.quick-kill-switch.active {
  border-color: rgba(255,106,108,.95);
  background: radial-gradient(circle at 50% 55%, rgba(229,72,77,.32), rgba(229,72,77,.12) 48%, rgba(11,24,36,.95) 74%);
  box-shadow: 0 0 0 1px rgba(229,72,77,.38), 0 0 22px rgba(229,72,77,.44), inset 0 0 16px rgba(229,72,77,.22);
  animation: killSwitchRedOrbit 1.55s linear infinite;
}
.quick-kill-switch.active::before {
  color: #fff3ee;
  background: linear-gradient(180deg, rgba(87,20,25,.98), rgba(34,10,14,.98));
  box-shadow: inset 0 0 0 1px rgba(255,142,132,.18), 0 0 16px rgba(229,72,77,.28);
}
.quick-kill-switch.active::after {
  background: #ff4f59;
  box-shadow: 0 0 14px rgba(255,79,89,.85), 0 0 26px rgba(229,72,77,.44);
}
@keyframes killSwitchRedOrbit {
  0% { box-shadow: 0 0 0 1px rgba(229,72,77,.38), 10px 0 16px rgba(229,72,77,.34), inset 0 0 16px rgba(229,72,77,.22); }
  25% { box-shadow: 0 0 0 1px rgba(255,116,107,.52), 0 10px 18px rgba(229,72,77,.38), inset 0 0 18px rgba(229,72,77,.28); }
  50% { box-shadow: 0 0 0 1px rgba(229,72,77,.38), -10px 0 16px rgba(229,72,77,.34), inset 0 0 16px rgba(229,72,77,.22); }
  75% { box-shadow: 0 0 0 1px rgba(255,116,107,.52), 0 -10px 18px rgba(229,72,77,.38), inset 0 0 18px rgba(229,72,77,.28); }
  100% { box-shadow: 0 0 0 1px rgba(229,72,77,.38), 10px 0 16px rgba(229,72,77,.34), inset 0 0 16px rgba(229,72,77,.22); }
}
.kill-lightning { position: fixed; top: -18vh; left: 50%; z-index: 220; transform: translateX(-50%) scaleX(.72); color: #ffe75c; font-size: min(78vh, 640px); line-height: 1; pointer-events: none; text-shadow: 0 0 18px rgba(255,234,92,.95), 0 0 42px rgba(47,125,246,.5); animation: killBolt .85s ease-out forwards; }
.kill-lightning-strike {
  position: fixed;
  top: -8vh;
  left: var(--bolt-left);
  z-index: 220;
  width: min(22vw, 260px);
  height: 116vh;
  pointer-events: none;
  background: url("assets/kill-lightning-bolt.svg") center top / contain no-repeat;
  transform: translateX(-50%) rotate(var(--bolt-rotate)) scale(var(--bolt-scale));
  opacity: 0;
  filter: drop-shadow(0 0 18px rgba(167,221,255,.96)) drop-shadow(0 0 46px rgba(47,125,246,.55));
  animation: killImageBolt .86s steps(2, end) forwards;
}
@keyframes killBolt {
  0% { opacity: 0; transform: translateX(-50%) translateY(-20vh) scaleX(.55); }
  18%, 55% { opacity: 1; transform: translateX(-50%) translateY(12vh) scaleX(.72); }
  100% { opacity: 0; transform: translateX(-50%) translateY(45vh) scaleX(.72); }
}
@keyframes killImageBolt {
  0% { opacity: 0; transform: translateX(-50%) translateY(-18vh) rotate(var(--bolt-rotate)) scale(var(--bolt-scale)); }
  14% { opacity: 1; transform: translateX(-50%) translateY(-4vh) rotate(var(--bolt-rotate)) scale(var(--bolt-scale)); }
  30% { opacity: .16; }
  42% { opacity: 1; }
  68% { opacity: .3; }
  100% { opacity: 0; transform: translateX(-50%) translateY(8vh) rotate(var(--bolt-rotate)) scale(calc(var(--bolt-scale) * 1.02)); }
}
.account-button { width: auto; min-width: 76px; padding: 0 12px; font-size: 13px; overflow: visible; }
.user-session-badge { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 30px; min-width: 78px; max-width: 178px; padding: 0 12px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-2); color: var(--muted); font-size: 11px; font-weight: 800; white-space: nowrap; flex: 0 1 auto; overflow: hidden; text-overflow: ellipsis; }
.user-session-badge span:last-child { overflow: hidden; text-overflow: ellipsis; }
.user-session-badge.signed-in { color: var(--muted); border-color: rgba(54,212,137,.28); }
.user-session-badge.signed-out { color: var(--gold); border-color: rgba(244,200,107,.38); }
.profile-dot { width: 20px; height: 20px; flex: 0 0 20px; border-radius: 50%; background-size: cover; background-position: center; border: 1px solid rgba(244,200,107,.45); box-shadow: 0 0 12px rgba(244,200,107,.12); }
.connection-badge { display: inline-grid; place-items: center; position: relative; width: 34px; height: 28px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface-2); overflow: hidden; }
.connection-badge i { position: relative; width: 23px; height: 12px; }
.connection-badge i::before, .connection-badge i::after { content: ""; position: absolute; top: 3px; width: 12px; height: 6px; border: 2px solid currentColor; border-left: 0; border-radius: 0 6px 6px 0; }
.connection-badge i::before { left: 0; transform: rotate(180deg); }
.connection-badge i::after { right: 0; }
.connection-badge.connected { color: var(--accent); border-color: rgba(54,212,137,.45); box-shadow: 0 0 18px rgba(54,212,137,.12); }
.connection-badge.connected::before { content: ""; position: absolute; inset: 8px 10px; border-radius: 999px; background: linear-gradient(90deg, transparent, #4fd6ff, var(--gold), transparent); animation: plugElectric 1.2s linear infinite; }
.connection-badge.disconnected { color: var(--bad); border-color: rgba(229,72,77,.52); background: rgba(229,72,77,.08); box-shadow: inset 0 0 0 1px rgba(229,72,77,.08); }
.connection-badge.disconnected i::before { transform: rotate(180deg) translateX(4px); }
.connection-badge.disconnected i::after { transform: translateX(4px); }
.connection-badge.disconnected i { opacity: .92; }
.connection-badge.disconnected::after { content: "!"; position: absolute; right: 5px; top: 2px; color: var(--bad); font-size: 11px; font-weight: 950; }
@keyframes plugElectric { from { transform: translateX(-9px); opacity: .45; } to { transform: translateX(9px); opacity: 1; } }
.header-refresh { min-height: 46px; padding: 0 16px; display: inline-flex; align-items: center; gap: 10px; background: var(--blue); color: var(--blue-ink); box-shadow: 0 12px 30px rgba(47, 125, 246, 0.24); white-space: nowrap; }
.refresh-working-label { min-height: 14px; color: var(--accent); font-size: 11px; font-weight: 850; text-align: center; letter-spacing: .01em; }
.header-refresh.refreshing { position: relative; overflow: hidden; }
.header-refresh.refreshing::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: 5px; height: 3px; border-radius: 999px; background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), var(--accent), transparent); animation: refreshSweep 1s ease-in-out infinite; }
@keyframes refreshSweep { from { transform: translateX(-70%); } to { transform: translateX(70%); } }
.egg-chat-launch { width: clamp(64px, 5.1vw, 88px); height: clamp(68px, 5.35vw, 92px); min-height: clamp(68px, 5.35vw, 92px); margin: -8px 0 -6px; padding: 0; border: 0; background: url("assets/all-knowing-egg-v20.png") center / contain no-repeat; filter: drop-shadow(0 6px 15px rgba(244,200,107,.32)); animation: eggChatWiggle 3.2s ease-in-out infinite; flex: 0 0 auto; }
.egg-chat-launch:hover { transform: translateY(-2px) scale(1.03); filter: drop-shadow(0 8px 22px rgba(244,200,107,.5)); }
body.foot-fetish-mode .egg-chat-launch { background-image: url("assets/foot-mode-all-knowing-v48.png"); background-size: contain; filter: drop-shadow(0 6px 15px rgba(255,178,207,.32)); }
body.foot-fetish-mode .egg-chat-launch.foot-hover-linger { background-image: url("assets/foot-mode-all-knowing-hover-v48.png"); filter: drop-shadow(0 8px 22px rgba(255,178,207,.5)); animation: footToothbrushShake .13s linear infinite; }
@keyframes eggChatWiggle { 0%, 100% { transform: rotate(0deg); } 45% { transform: rotate(0deg); } 50% { transform: rotate(-2deg); } 55% { transform: rotate(2deg); } 60% { transform: rotate(0deg); } }
@keyframes footToothbrushShake {
  0%, 100% { transform: translate(0, 0) rotate(0deg); }
  20% { transform: translate(-1px, 1px) rotate(-1.4deg); }
  40% { transform: translate(2px, -1px) rotate(1.2deg); }
  60% { transform: translate(-2px, 0) rotate(-.9deg); }
  80% { transform: translate(1px, 1px) rotate(1.1deg); }
}
.refresh-egg { width: 25px; height: 30px; background: url("assets/logo-egg-v18.png") center / contain no-repeat; filter: drop-shadow(0 3px 7px rgba(66,38,0,.38)); transition: background-image .2s ease, transform .2s ease; }
.refresh-egg.cracking { background-image: url("assets/battle-egg-v18.png"); animation: freshnessWobble .65s ease-in-out infinite; }
.refresh-egg.stale { background-image: url("assets/zombie-egg-v18.png"); animation: brokenEggSettle 1.4s ease-in-out infinite alternate; }
.header-refresh.cracking, .header-refresh.stale { animation: refreshBlueOrbit 1.9s linear infinite; }
.header-refresh.stale { box-shadow: 0 0 0 1px rgba(229,72,77,.34), 0 12px 30px rgba(229,72,77,.18); }
@keyframes refreshBlueOrbit {
  0%,100% { box-shadow: 0 0 0 1px rgba(47,125,246,.35), 0 12px 30px rgba(47,125,246,.22); }
  50% { box-shadow: 0 0 0 3px rgba(47,125,246,.72), 0 0 24px rgba(47,125,246,.42); }
}
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; }
.freshness-panel { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 34px; padding: 4px 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); color: var(--muted); }
.freshness-panel > span:last-child { display: grid; line-height: 1.1; }
.freshness-panel strong { color: var(--ink); font-size: 12px; }
.freshness-panel small { margin-top: 3px; font-size: 10px; font-weight: 750; }
.freshness-panel.fresh { border-color: rgba(54, 212, 137, .42); }
.freshness-panel.cracking { border-color: rgba(228, 173, 54, .55); }
.freshness-panel.stale { border-color: rgba(229, 72, 77, .56); }
.freshness-art { position: relative; display: grid; place-items: center; width: 30px; height: 28px; flex: 0 0 auto; }
.freshness-egg { position: relative; display: inline-block; width: 19px; height: 25px; flex: 0 0 auto; border-radius: 52% 52% 48% 48% / 62% 62% 38% 38%; background: radial-gradient(circle at 35% 24%, #fff6be 0 13%, #f7c948 32%, #d99b12 72%, #9f6a00 100%); box-shadow: inset -3px -5px 8px rgba(91,57,0,.28), 0 0 10px rgba(244,200,107,.25); }
.freshness-egg.fresh { animation: freshnessFloat 2.4s ease-in-out infinite; }
.freshness-egg.cracking { animation: freshnessWobble .6s ease-in-out infinite; background: linear-gradient(125deg, transparent 45%, #5b3a08 46% 51%, transparent 52%), radial-gradient(circle at 35% 24%, #fff6be 0 13%, #f7c948 32%, #d99b12 72%, #9f6a00 100%); }
.freshness-egg.cracking::before { content: ""; position: absolute; width: 9px; height: 11px; left: 6px; top: 5px; border-left: 2px solid #5b3a08; border-bottom: 2px solid #5b3a08; transform: skew(-22deg) rotate(-18deg); }
.freshness-egg.stale { height: 19px; margin-top: -3px; border-radius: 52% 52% 34% 44% / 62% 62% 30% 28%; clip-path: polygon(0 0, 100% 0, 100% 55%, 80% 43%, 64% 69%, 46% 48%, 27% 72%, 0 54%); transform: rotate(-8deg); animation: brokenEggSettle 1.4s ease-in-out infinite alternate; }
.freshness-yolk { position: absolute; z-index: -1; left: 1px; bottom: 0; width: 28px; height: 8px; border-radius: 50%; background: radial-gradient(circle at 55% 42%, #ffd84d 0 28%, #edae19 31% 70%, transparent 72%); opacity: 0; transform: scaleX(.7); }
.freshness-panel.stale .freshness-yolk { z-index: 0; opacity: 1; animation: yolkSpill 1.5s ease-in-out infinite alternate; }
.freshness-panel.stale .freshness-egg { z-index: 1; }
@keyframes freshnessFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-2px); } }
@keyframes freshnessWobble { 0%,100% { transform: rotate(-3deg); } 50% { transform: rotate(4deg); } }
@keyframes brokenEggSettle { from { transform: rotate(-10deg) translateY(0); } to { transform: rotate(-6deg) translateY(1px); } }
@keyframes yolkSpill { from { transform: scaleX(.82); opacity: .82; } to { transform: scaleX(1.08); opacity: 1; } }

.market-strip { display: block; overflow: hidden; padding: 7px 0; margin-bottom: 6px; color: var(--muted); font-family: ui-monospace, Consolas, monospace; font-size: 12px; mask-image: linear-gradient(90deg, transparent, #000 2%, #000 98%, transparent); }
.market-strip { cursor: pointer; }
.ticker-track { display: flex; width: max-content; gap: 0; animation: tickerRightToLeft 52s linear infinite; will-change: transform; }
.market-strip:hover .ticker-track { animation-play-state: paused; }
.ticker-item { display: inline-flex; align-items: center; gap: 8px; min-height: 25px; padding: 0 22px; white-space: nowrap; border-right: 1px solid var(--line); }
.ticker-item strong { color: var(--ink); }
@keyframes tickerRightToLeft {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
.egg-mood { display: grid; grid-template-columns: 48px minmax(0, 1fr) auto auto; column-gap: 7px; row-gap: 7px; align-items: center; padding: 7px 8px 7px 12px; margin-bottom: 7px; color: var(--muted); }
.egg-mood p { min-width: 0; }
.casino-unlock { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 34px; padding: 0 14px; border: 1px solid rgba(244,200,107,.65); border-radius: 999px; background: linear-gradient(135deg, #ffe59a, #cf8d22 58%, #7b4309); color: #1f1404; font-size: 12px; font-weight: 900; box-shadow: 0 0 0 1px rgba(244,200,107,.14), 0 0 22px rgba(244,200,107,.22); white-space: nowrap; }
.casino-unlock[hidden] { display: none !important; }
.casino-unlock span { width: 24px; height: 24px; background: url("assets/golden-egg-casino-icon.png") center / contain no-repeat; filter: drop-shadow(0 2px 5px rgba(35,20,0,.4)); }
.casino-unlock.revealed { animation: casinoInvitePulse 1.7s ease-in-out infinite; }
@keyframes casinoInvitePulse { 0%,100% { box-shadow: 0 0 0 1px rgba(244,200,107,.16), 0 0 18px rgba(244,200,107,.22); } 50% { box-shadow: 0 0 0 3px rgba(244,200,107,.44), 0 0 32px rgba(244,200,107,.42); } }
.mini-egg { width: 46px; height: 46px; background: url("assets/battle-egg-v18.png") center / contain no-repeat; filter: drop-shadow(0 0 12px rgba(244,200,107,.25)); transition: background-image .25s ease, transform .25s ease; }
.mini-egg.great { background-image: url("assets/egg-growth-icon-v20.png"); animation: cashEggPulse 2.2s ease-in-out infinite; }
.mini-egg.good, .mini-egg.okay, .mini-egg.middle { background-image: url("assets/battle-egg-v18.png"); filter: saturate(.9) drop-shadow(0 0 12px rgba(244,200,107,.25)); }
.mini-egg.bad { background-image: url("assets/rotten-egg-down-icon-v20.png"); filter: drop-shadow(0 0 10px rgba(229,72,77,.28)); }
.mini-egg.cash { background-image: url("assets/egg-growth-icon-v20.png"); }
.mini-egg.zombie, .mini-egg.broken { background-image: url("assets/rotten-egg-down-icon-v20.png"); }
.mini-egg.alien { background-image: url("assets/bunny-goose-v20.png"); }
@property --gold-line-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 0deg;
}
.butt-meter { --meter-score: 50%; position: relative; height: 30px; border-radius: 999px; background: linear-gradient(90deg, #3d2316, #1c1715 45%, rgba(255,255,255,0.08)); overflow: hidden; box-shadow: inset 0 0 12px rgba(0,0,0,.62), 0 0 18px rgba(244,200,107,.1); }
.butt-meter span { display: block; width: var(--meter-score); height: 100%; background: linear-gradient(90deg, #7a291f 0%, #d4a13a 42%, #ffe074 72%, #fff4b4 100%); background-size: 160% 100%; animation: meterBoil 1.7s ease-in-out infinite alternate; box-shadow: 0 0 20px rgba(244,200,107,.42); }
.butt-meter::after { content: ""; position: absolute; inset: 4px; border: 1px solid rgba(255,255,255,.1); border-radius: inherit; pointer-events: none; }
.butt-meter::before { content: ""; position: absolute; inset: 0; border-radius: inherit; padding: 2px; background: conic-gradient(from var(--gold-line-angle, 0deg), transparent 0 72deg, rgba(255,246,171,.98) 92deg, #f4c86b 112deg, transparent 140deg 360deg); opacity: 0; pointer-events: none; -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0); -webkit-mask-composite: xor; mask-composite: exclude; filter: drop-shadow(0 0 8px rgba(244,200,107,.58)); }
.butt-meter:hover::before { opacity: 1; animation: goldPerimeterSweep 1.05s linear infinite; }
.mood-meter-cluster { display: flex; align-items: center; justify-content: flex-end; gap: 10px; width: clamp(300px, 34vw, 430px); justify-self: end; margin-left: auto; }
.egg-mood .butt-meter { width: clamp(220px, 24vw, 360px); flex: 1 1 auto; min-width: 180px; max-width: 360px; }
.market-countdown-badge { display: inline-grid; grid-template-columns: 34px auto; align-items: center; justify-content: start; gap: 7px; width: max-content; max-width: 260px; min-width: 0; padding: 5px 9px 5px 6px; border: 1px solid rgba(244,200,107,.42); border-radius: 10px; background: linear-gradient(135deg, rgba(51,23,20,.72), rgba(9,25,38,.92)); color: #ffd66f; font-family: "Courier New", ui-monospace, monospace; font-size: 12px; font-weight: 820; letter-spacing: .04em; text-align: left; white-space: nowrap; box-shadow: inset 0 0 12px rgba(0,0,0,.55), 0 0 14px rgba(244,200,107,.14); animation: countdownGlow 1.25s ease-in-out infinite alternate; justify-self: end; }
.market-countdown-badge[hidden] { display: none !important; }
.market-countdown-icon { width: 34px; height: 34px; background: url("assets/egg-market-opening-fancy-v22.png") center / contain no-repeat; filter: drop-shadow(0 0 10px rgba(244,200,107,.32)); }
.market-countdown-badge.closing .market-countdown-icon { background-image: url("assets/egg-market-closing-fancy-v22.png"); }
.market-countdown-badge.opening .market-countdown-icon { background-image: url("assets/egg-market-opening-fancy-v22.png"); }
.market-countdown-text { display: inline-block; overflow: hidden; text-overflow: ellipsis; }
.market-countdown-text b { color: #fff6b8; }
@keyframes countdownGlow { from { filter: drop-shadow(0 0 1px rgba(244,200,107,.2)); } to { filter: drop-shadow(0 0 8px rgba(244,200,107,.45)); } }
@keyframes meterBoil { from { background-position: 0 0; filter: saturate(1); } to { background-position: 100% 0; filter: saturate(1.35) brightness(1.1); } }
@keyframes goldPerimeterSweep { to { --gold-line-angle: 360deg; } }
.mood-day-icon { display: block; flex: 0 0 48px; width: 48px; height: 48px; color: transparent; font-size: 0; line-height: 0; background: url("assets/battle-egg-v18.png") right center / contain no-repeat; filter: drop-shadow(0 0 12px rgba(244,200,107,.25)); }
.mood-day-icon.great { background-image: url("assets/egg-growth-icon-v20.png"); animation: cashEggPulse 2.2s ease-in-out infinite; }
.mood-day-icon.okay, .mood-day-icon.good, .mood-day-icon.middle { background-image: url("assets/battle-egg-v18.png"); }
.mood-day-icon.bad { background-image: url("assets/rotten-egg-down-icon-v20.png"); filter: drop-shadow(0 0 12px rgba(229,72,77,.28)); }
.mood-day-icon[hidden] { display: none !important; }
.account-strip { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; margin-bottom: 7px; }
.top-dashboard-grid { display: grid; gap: 0; }
.account-strip div { padding: 7px 10px; background: var(--surface); }
.account-strip span, .meta span, .score-key p, .small, dt { color: var(--muted); font-size: 12px; }
.small.status-ok { color: var(--accent); font-weight: 800; }
.small.status-warn { color: var(--warn); font-weight: 800; }
.form-error { color: var(--danger) !important; font-weight: 800; }
input.invalid { border-color: rgba(229, 72, 77, .75) !important; box-shadow: 0 0 0 2px rgba(229, 72, 77, .12); }
.account-strip strong { display: block; margin-top: 2px; font-size: 16px; color: var(--ink); }
.account-strip strong.up { color: var(--accent); }
.account-strip strong.down { color: var(--bad); }
.account-strip strong.pnl-unavailable { color: var(--muted); font-size: 13px; }

.layout { display: grid; grid-template-columns: 300px minmax(0, 1fr) 330px; gap: 14px; align-items: stretch; height: calc(100vh - 294px); min-height: 480px; }
.controls { display: grid; align-content: start; gap: 12px; overflow: auto; max-height: 100%; background: transparent; border: 0; box-shadow: none; backdrop-filter: none; padding-right: 10px; scrollbar-gutter: stable; }
.block { display: grid; gap: 10px; padding: 14px; }
.left-rail .rail-card { border: 1px solid var(--line); border-radius: 12px; background: var(--surface); box-shadow: var(--shadow); backdrop-filter: blur(18px); }
.left-rail .rail-eyebrow { color: var(--blue); font-size: 12px; text-transform: uppercase; font-weight: 900; }
.left-rail label { color: var(--muted); font-size: 12px; font-weight: 750; }
label { display: grid; gap: 6px; color: var(--ink); font-weight: 800; }
select, input, textarea {
  width: 100%;
  min-height: 40px;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px 10px;
  background: var(--field);
  color: var(--field-ink);
}
textarea { resize: vertical; line-height: 1.4; }
.input-unit { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 8px; padding-right: 10px; background: var(--field); }
.input-unit input { border: 0; min-height: 38px; }
.input-unit span { color: var(--muted); font-weight: 900; }

button {
  min-height: 40px;
  border: 0;
  border-radius: 8px;
  padding: 0 13px;
  background: var(--accent);
  color: var(--accent-ink);
  font-weight: 900;
  cursor: pointer;
}
button.secondary, .tab { border: 1px solid var(--line); background: var(--surface-2); color: var(--ink); }
.segmented { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.segment { min-height: 34px; border-radius: 0; background: transparent; color: var(--muted); }
.segment:hover:not(.active),
.segment:focus-visible:not(.active) { color: #fff; background: rgba(47,125,246,.12); text-shadow: 0 0 12px rgba(47,125,246,.44); }
.segment.active:hover,
.segment.active:focus-visible { color: #fff; filter: brightness(1.06); text-shadow: 0 0 12px rgba(255,255,255,.22); }
.segment.active { background: var(--blue); color: #fff; }
.mini-action.active { background: var(--blue); color: #fff; }
button.live { background: var(--blue); color: var(--blue-ink); }
.gold-button, .golden-tab.active { color: #241702; background: linear-gradient(135deg, #f8dd93, #c58a22); border: 1px solid rgba(244, 200, 107, 0.6); box-shadow: 0 0 24px rgba(244, 200, 107, 0.16); }
.button-art { display: inline-block; width: 28px; height: 28px; flex: 0 0 auto; background-size: contain; background-position: center; background-repeat: no-repeat; }
.battle-button, .battle-action-button, .execute-plan-button, .bone-button, .manual-button, .layout-edit-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; font-size: 13px; font-weight: 780; letter-spacing: 0; }
.manual-button, .bone-button, .layout-edit-button { color: var(--muted); }
.battle-button.gold-button { color: #342304; }
.battle-button-art { background-image: url("assets/battle-egg-v18.png"); }
.bone-art { width: 32px; background-image: url("assets/icon-bone.svg"); }
.review-art { background-image: url("assets/icon-review.svg"); }
.execute-art { background-image: url("assets/zombie-egg-v18.png"); }
.battle-actions [hidden] { display: none !important; }
.execute-plan-button { color: #241702 !important; background: linear-gradient(135deg, #ffe9a9, #d89722) !important; border: 1px solid rgba(244, 200, 107, 0.72) !important; }
button.authorized { background: var(--accent); color: var(--accent-ink); }
button.danger { background: var(--bad); color: #fff; }
button:disabled { opacity: 0.5; cursor: not-allowed; }
button.authorized:disabled { opacity: 0.72; cursor: default; background: #344450; color: #cfe0d8; border: 1px solid rgba(54, 212, 137, 0.45); }
.user-ai-stack { display: grid; gap: 6px; justify-items: stretch; min-width: 142px; }
.super-egg-toggle {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  min-height: 46px;
  padding: 7px 10px;
  border: 1px solid rgba(244, 200, 107, .28);
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(14, 29, 42, .94), rgba(6, 14, 22, .96));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03), 0 10px 24px rgba(0,0,0,.18);
  cursor: pointer;
  user-select: none;
}
.super-egg-toggle input { position: absolute; opacity: 0; pointer-events: none; }
.super-egg-track {
  position: relative;
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: #253543;
  border: 1px solid rgba(145,165,182,.28);
  box-shadow: inset 0 2px 8px rgba(0,0,0,.38);
}
.super-egg-core {
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50% 50% 46% 46%;
  background: radial-gradient(circle at 35% 25%, #fff3bc, #d89a23 58%, #6a3d07);
  box-shadow: 0 0 8px rgba(244,200,107,.24);
  transition: transform .2s ease, box-shadow .2s ease;
}
.super-egg-copy { display: grid; gap: 1px; line-height: 1.05; }
.super-egg-copy strong { color: var(--gold); font-size: 12px; letter-spacing: 0; }
.super-egg-copy small { color: var(--muted); font-size: 10px; font-weight: 800; }
.super-egg-toggle.active {
  border-color: rgba(244,200,107,.74);
  box-shadow: inset 0 0 0 1px rgba(244,200,107,.16), 0 0 26px rgba(244,200,107,.18);
}
.super-egg-toggle[hidden], .battle-button[hidden], .egg-chat-launch[hidden] { display: none !important; }
.super-egg-toggle.disabled { opacity: .52; pointer-events: none; }
.super-egg-toggle.active .super-egg-track { background: linear-gradient(90deg, #1f7cf6, #d79d28); border-color: rgba(244,200,107,.55); }
.super-egg-toggle.active .super-egg-core { transform: translateX(19px); box-shadow: 0 0 16px rgba(244,200,107,.72), 0 0 24px rgba(47,125,246,.24); }
.auth-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.auth-actions button { color: var(--muted); font-weight: 760; letter-spacing: 0; }
.auth-actions button,
#settingsApplyBackground,
#settingsResetBackground,
#authorizeBtn,
#disconnectBtn {
  color: #fff !important;
  font-size: 12px;
  text-shadow: none;
}
.auth-actions .danger,
.auth-actions #disconnectBtn { color: #ffd6d6; font-weight: 760; }
.auth-actions .danger:hover,
.auth-actions #disconnectBtn:hover { border-color: rgba(255, 115, 115, .72); animation: dangerRedOrbit 1.45s linear infinite; }
@keyframes dangerRedOrbit {
  0% { box-shadow: 0 0 0 1px rgba(229,72,77,.26), -5px 0 12px rgba(229,72,77,.12); }
  50% { box-shadow: 0 0 0 2px rgba(255,115,115,.78), 5px 0 18px rgba(229,72,77,.34); }
  100% { box-shadow: 0 0 0 1px rgba(229,72,77,.26), -5px 0 12px rgba(229,72,77,.12); }
}
.manual-add { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
#settingsSaveOpenAiKey {
  min-height: 40px;
  background: var(--surface-2) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
  font-size: 12px;
  font-weight: 780;
  letter-spacing: 0;
}
#settingsSaveOpenAiKey:hover:not(:disabled),
#settingsSaveOpenAiKey:focus-visible:not(:disabled) {
  color: #fff !important;
  border-color: rgba(47,125,246,.55) !important;
  animation: tabBlueOrbit 1.9s linear infinite;
}
#settingsApplyBackground:hover:not(:disabled),
#settingsApplyBackground:focus-visible:not(:disabled) {
  animation: tabGreenOrbit 1.8s linear infinite;
  filter: brightness(1.04);
}
#settingsResetBackground:hover:not(:disabled),
#settingsResetBackground:focus-visible:not(:disabled) {
  color: #fff !important;
  border-color: rgba(47,125,246,.55) !important;
  animation: tabBlueOrbit 1.9s linear infinite;
}
.manual-add-status { min-height: 18px; margin: 0; color: var(--accent); font-size: 12px; font-weight: 800; }
.manual-add-status strong { color: var(--gold); }
.manual-add-status-message { display: block; color: var(--muted); }
.manual-add-status-message.success { color: var(--accent); }
.manual-add-status-message.error { color: #ff837d; }
.manual-symbol-error { display: flex; align-items: center; gap: 10px; margin: 8px 0; border: 1px solid rgba(255, 92, 92, .5); border-radius: 8px; padding: 9px 11px; background: rgba(229, 72, 77, .09); color: var(--muted); }
.manual-symbol-error strong { flex: 0 0 auto; color: #ff837d; }
.manual-add-suggestions { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin-top: 8px; color: var(--muted); }
.manual-add-suggestions button { min-height: 28px; border: 1px solid rgba(47,125,246,.4); border-radius: 999px; padding: 0 10px; background: rgba(47,125,246,.1); color: var(--ink); font-size: 12px; font-weight: 850; cursor: pointer; }
.manual-add-suggestions button:hover { border-color: rgba(47,125,246,.72); animation: tabBlueOrbit 1.9s linear infinite; }
.ai-model-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, .8fr); gap: 8px; align-items: end; }
.ai-model-grid label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 800; }
.ai-model-grid select, .ai-model-grid input { width: 100%; }
.ai-provider-grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; align-items: stretch; margin: 10px 0; }
.ai-provider-grid label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 800; }
.ai-provider-grid select { width: 100%; }
.ai-inline-status { min-height: 22px; margin: 8px 0; color: var(--muted); font-weight: 850; }
.ai-inline-status.ok { color: var(--accent); }
.ai-inline-status.warn { color: var(--warn); }
.ai-inline-status.working { color: var(--blue); }
.list-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.mini-action { min-height: 32px; padding: 0 8px; font-size: 12px; }
.switch-row { grid-template-columns: minmax(0, 1fr) auto; align-items: center; }
.switch-row input { width: 22px; min-height: 22px; }
.bone-button { color: var(--ink); }
.silver-button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; color: #10202b; background: linear-gradient(135deg, #f0f4f7, #8fa2b1); border: 1px solid #c8d2d9; box-shadow: 0 8px 22px rgba(151, 172, 189, 0.15); }

.board { padding: 16px; display: flex; flex-direction: column; overflow: hidden; max-height: 100%; min-height: 0; }
.toolbar { display: flex; justify-content: space-between; gap: 16px; align-items: start; margin-bottom: 10px; }
.toolbar p { margin-top: 4px; color: var(--muted); }
.toolbar-actions { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(104px, 1fr); gap: 8px 10px; justify-content: end; align-items: stretch; width: min(100%, 360px); }
.toolbar-actions > button { width: 100%; min-width: 0; }
.toolbar-actions .toolbar-queue-button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 40px; padding: 0 12px; font-size: 12px; font-weight: 820; }
.toolbar-actions #quickFavoritesBtn, .toolbar-actions #quickWatchlistBtn { display: none; }
.toolbar-actions .battle-button { grid-column: 1; grid-row: 1; }
.toolbar-actions .toolbar-queue-button { grid-column: 2; grid-row: 1; }
.toolbar-actions .manual-button { grid-column: 1; grid-row: 2; }
.toolbar-actions .layout-edit-button { grid-column: 2; grid-row: 2; }
.toolbar-actions .bone-button { grid-column: 1 / -1; grid-row: 3; }
.tabs { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 10px; }
.tab.active { background: var(--blue); color: #fff; }
.tabs .tab { font-size: 12px; font-weight: 780; color: var(--muted); }
.tabs .tab.active { color: #fff; animation: tabBlueOrbit 1.9s linear infinite; }
.tabs .tab:hover, .tabs .tab-list-button:hover, .manual-button:hover, .layout-edit-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.tabs .tab-list-button { width: 40px; min-width: 40px; min-height: 40px; padding: 0; flex: 0 0 auto; }
.tabs .tab-list-button[data-quick-list="favorites"] { margin-left: auto; }
.tabs .tab-list-button[data-quick-list="favorites"].active { color: #ff6f86; border-color: rgba(229,72,77,.62); background: rgba(229,72,77,.10); animation: favoriteRedOrbit 1.8s linear infinite; }
.tabs .tab-list-button[data-quick-list="watchlist"].active { color: var(--gold); border-color: rgba(244,200,107,.62); background: rgba(244,200,107,.10); animation: queueGoldOrbit 1.8s linear infinite; }
.tabs .tab-list-button[data-quick-list="favorites"]:hover { color: #ff6f86; border-color: rgba(229,72,77,.62); animation: favoriteRedOrbit 1.8s linear infinite; }
.tabs .tab-list-button[data-quick-list="watchlist"]:hover { color: var(--gold); border-color: rgba(244,200,107,.62); animation: queueGoldOrbit 1.8s linear infinite; }
.battle-button:hover, .gold-button:hover, .toolbar-actions .toolbar-queue-button:hover { animation: queueGoldOrbit 1.8s linear infinite; }
.golden-tab.active { animation-name: tabBlueOrbit; }
.queue-tab.active, .queue-tab:hover { animation-name: queueGoldOrbit; }
@keyframes tabBlueOrbit {
  0% { box-shadow: 0 0 0 1px rgba(47,125,246,.32), -5px 0 12px rgba(47,125,246,.12); }
  50% { box-shadow: 0 0 0 2px rgba(47,125,246,.78), 5px 0 18px rgba(47,125,246,.34); }
  100% { box-shadow: 0 0 0 1px rgba(47,125,246,.32), -5px 0 12px rgba(47,125,246,.12); }
}
@keyframes tabGreenOrbit {
  0% { box-shadow: 0 0 0 1px rgba(54,212,137,.32), -5px 0 12px rgba(54,212,137,.12); }
  50% { box-shadow: 0 0 0 2px rgba(54,212,137,.78), 5px 0 18px rgba(54,212,137,.34); }
  100% { box-shadow: 0 0 0 1px rgba(54,212,137,.32), -5px 0 12px rgba(54,212,137,.12); }
}
.queue-tab { color: #2b1900 !important; border-color: rgba(244, 200, 107, .65) !important; background: linear-gradient(135deg, #ffd979, #b77b19) !important; }
.queue-tab.active { animation: queueGoldOrbit 1.8s linear infinite; }
@keyframes queueGoldOrbit {
  0% { box-shadow: 0 0 0 1px rgba(255,217,121,.35), -5px 0 12px rgba(255,217,121,.15); }
  50% { box-shadow: 0 0 0 2px rgba(255,217,121,.8), 5px 0 18px rgba(255,217,121,.38); }
  100% { box-shadow: 0 0 0 1px rgba(255,217,121,.35), -5px 0 12px rgba(255,217,121,.15); }
}
.queue-zombie-mini { width: 24px; height: 24px; display: inline-block; vertical-align: middle; margin-right: 5px; background: url("assets/zombie-egg-v18.png") center / contain no-repeat; }
.quote-status { margin-bottom: 10px; padding: 11px 13px; color: var(--ink); background: var(--surface-2); }

.cards { display: grid; gap: 9px; overflow-y: auto; min-height: 0; flex: 1 1 auto; padding-right: 6px; scroll-behavior: smooth; align-content: start; overflow-anchor: none; }
.cards { padding-right: 10px; scrollbar-gutter: stable; }
.cards::-webkit-scrollbar, .controls::-webkit-scrollbar, .right-rail::-webkit-scrollbar { width: 10px; }
.cards::-webkit-scrollbar-thumb, .controls::-webkit-scrollbar-thumb, .right-rail::-webkit-scrollbar-thumb { background: rgba(102, 133, 157, 0.34); border-radius: 999px; }
.card { display: grid; gap: 9px; padding: 11px; background: var(--surface); container-type: inline-size; content-visibility: auto; contain-intrinsic-size: 620px; }
.slate-fast-status { padding: 9px 12px; border: 1px solid rgba(47,125,246,.28); border-radius: 8px; background: rgba(47,125,246,.08); color: var(--muted); font-size: 13px; font-weight: 760; }
.slate-fast-status-complete { border-color: rgba(48,211,137,.32); background: rgba(48,211,137,.08); color: var(--ink); }
.slate-loading-soft { contain: layout paint; }
body.slate-is-scrolling .card,
body.slate-is-scrolling .rail-card,
body.slate-is-scrolling .mini-chart,
body.slate-is-scrolling .chart-canvas { transition: none !important; animation-play-state: paused !important; }
body.slate-is-scrolling .card { box-shadow: none; }
.card-head { display: flex; justify-content: space-between; gap: 14px; align-items: center; }
.sector { margin: 0 0 4px; color: var(--accent); text-transform: uppercase; font-size: 12px; font-weight: 900; }
.card h3 { font-size: 22px; display: flex; gap: 9px; align-items: center; flex-wrap: wrap; }
.crypto-logo { width: clamp(58px, 6vw, 92px); height: clamp(58px, 6vw, 92px); object-fit: contain; flex: 0 0 auto; }
.ticker-profile-trigger {
  appearance: none;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 1px 4px;
  margin: -1px -4px;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-weight: 950;
  line-height: 1.05;
  cursor: pointer;
}
.ticker-profile-trigger:hover,
.ticker-profile-trigger:focus-visible {
  color: #dcecff;
  border-color: rgba(47,125,246,.62);
  background: rgba(47,125,246,.10);
  box-shadow: 0 0 0 2px rgba(47,125,246,.14), 0 0 14px rgba(47,125,246,.18);
  outline: none;
}
.company-name { color: var(--muted); font-size: 13px; font-weight: 750; }
.symbol-profile-card {
  display: grid;
  gap: 15px;
  max-width: 980px;
}
.symbol-profile-card header {
  display: grid;
  gap: 6px;
}
.symbol-profile-card h2 {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 10px;
  margin: 0;
}
.symbol-profile-card h2 small {
  color: var(--muted);
  font-size: 15px;
  font-weight: 800;
}
.symbol-profile-card p {
  max-width: 920px;
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}
.symbol-profile-earnings {
  color: var(--muted) !important;
  font-size: 13px;
}
.symbol-profile-earnings strong {
  color: var(--ink);
  font-weight: 800;
}
.symbol-profile-facts {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}
.symbol-profile-facts span,
.symbol-profile-section {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(7,20,32,.52);
  padding: 11px 12px;
}
.symbol-profile-facts small,
.symbol-profile-section h4 {
  display: block;
  margin: 0 0 6px;
  color: var(--muted);
  text-transform: uppercase;
  font-size: 11px;
  font-weight: 900;
}
.symbol-profile-facts strong {
  color: var(--ink);
}
.symbol-profile-holdings {
  display: grid;
  gap: 7px;
  margin: 0;
  min-width: 0;
  padding-left: 22px;
}
.symbol-profile-holdings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 28px;
}
.symbol-profile-holdings li {
  color: var(--muted);
  font-weight: 650;
  line-height: 1.35;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.symbol-profile-note {
  margin-top: 10px !important;
  font-size: 12px;
}
@media (max-width: 720px) {
  .symbol-profile-holdings-grid { grid-template-columns: 1fr; }
}
.asset-type-status { min-height: 24px; display: inline-flex; align-items: center; padding: 0 7px; border: 1px solid rgba(102,133,157,.36); border-radius: 999px; color: var(--muted); background: rgba(102,133,157,.08); font-size: 10px; font-weight: 850; }
.asset-type-status.asset-stock { color: var(--ink); border-color: rgba(102,133,157,.36); }
.asset-type-status.asset-etf, .asset-type-status.asset-etn { color: var(--blue); border-color: rgba(47,125,246,.38); background: rgba(47,125,246,.08); }
.asset-type-status.asset-leveraged_etf, .asset-type-status.asset-inverse_etf, .asset-type-status.asset-leveraged_inverse_etf, .asset-type-status.asset-single_stock_leveraged_etf { color: var(--gold); border-color: rgba(244,200,107,.44); background: rgba(244,200,107,.08); }
.asset-type-status.asset-crypto { color: var(--accent); border-color: rgba(54,212,137,.42); background: rgba(54,212,137,.08); }
.asset-type-status.asset-unknown { color: var(--bad); border-color: rgba(229,72,77,.42); background: rgba(229,72,77,.08); }
.trade-status { min-height: 24px; display: inline-flex; align-items: center; padding: 0 7px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); background: var(--surface-2); font-size: 10px; font-weight: 850; }
.trade-status.open, .trade-status.crypto { color: var(--accent); border-color: rgba(54,212,137,.42); }
.trade-status.extended, .trade-status.overnight { color: var(--gold); border-color: rgba(244,200,107,.4); }
.trade-status.closed, .trade-status.blocked { color: #ff837d; border-color: rgba(229,72,77,.36); }
.support-status { min-height: 24px; display: inline-flex; align-items: center; padding: 0 7px; border: 1px solid rgba(47,125,246,.38); border-radius: 999px; color: var(--blue); background: rgba(47,125,246,.08); font-size: 10px; font-weight: 850; }
.support-status.support-green { color: var(--accent); border-color: rgba(54,212,137,.46); background: rgba(54,212,137,.08); }
.support-status.support-yellow { color: var(--gold); border-color: rgba(244,200,107,.48); background: rgba(244,200,107,.08); }
.support-status.support-orange { color: #ffad66; border-color: rgba(255,173,102,.48); background: rgba(255,173,102,.08); }
.support-status.support-red { color: #ff837d; border-color: rgba(229,72,77,.44); background: rgba(229,72,77,.08); }
.support-status.support-gray { color: var(--muted); border-color: rgba(126,153,176,.38); background: rgba(126,153,176,.07); }
.support-status.support-underlying { border-style: dashed; }
.asset-detail-pill { min-height: 24px; display: inline-flex; align-items: center; padding: 0 7px; border: 1px solid rgba(244,200,107,.42); border-radius: 999px; color: var(--gold); background: rgba(244,200,107,.08); font-size: 10px; font-weight: 850; white-space: nowrap; animation: assetDetailBreath 2.6s ease-in-out infinite; }
.asset-detail-pill.asset-detail-hot { color: #ff837d; border-color: rgba(229,72,77,.5); background: rgba(229,72,77,.1); }
.asset-detail-pill.asset-detail-watch { color: var(--gold); border-color: rgba(244,200,107,.48); background: rgba(244,200,107,.08); }
.catalyst-pill { min-height: 24px; display: inline-flex; align-items: center; padding: 0 8px; border: 1px solid rgba(244,200,107,.46); border-radius: 999px; color: var(--gold); background: rgba(244,200,107,.08); font: inherit; font-size: 10px; font-weight: 850; white-space: nowrap; animation: assetDetailBreath 2.6s ease-in-out infinite; cursor: pointer; }
.catalyst-pill:hover { animation: queueGoldOrbit 1.8s linear infinite; }
.catalyst-pill.catalyst-good { color: var(--accent); border-color: rgba(54,212,137,.48); background: rgba(54,212,137,.08); }
.catalyst-pill.catalyst-watch { color: var(--gold); border-color: rgba(244,200,107,.48); background: rgba(244,200,107,.08); }
.catalyst-pill.catalyst-risk { color: #ff837d; border-color: rgba(229,72,77,.5); background: rgba(229,72,77,.1); }
.catalyst-detail { display: grid; gap: 14px; color: var(--muted); font-size: 15px; line-height: 1.5; }
.catalyst-read-card { display: grid; gap: 8px; padding: 13px 15px; border: 1px solid rgba(47,125,246,.32); border-radius: 12px; background: rgba(47,125,246,.07); }
.catalyst-read-card span { color: var(--blue); font-size: 12px; font-weight: 950; text-transform: uppercase; }
.catalyst-read-card p { color: var(--muted); font-size: 16px; line-height: 1.55; }
.catalyst-fact-list { display: grid; grid-template-columns: repeat(2, minmax(220px, 1fr)); gap: 8px 12px; margin: 0; }
.catalyst-fact-list div { min-width: 0; display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: baseline; gap: 6px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 10px; background: rgba(8,23,37,.58); }
.catalyst-fact-list dt { margin: 0; color: var(--muted); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.catalyst-fact-list dd { margin: 0; min-width: 0; color: var(--ink); font-size: 14px; font-weight: 780; overflow-wrap: anywhere; }
.catalyst-detail .muted { color: var(--muted); }
@media (max-width: 760px) {
  .catalyst-fact-list { grid-template-columns: 1fr; }
}
.direction { color: var(--muted); font-size: 12px; text-transform: uppercase; border: 1px solid var(--line); padding: 3px 7px; border-radius: 8px; }
.direction.leveraged-exposure-direction {
  color: #b9dcff;
  border-color: rgba(86, 169, 255, .52);
  background: rgba(47, 125, 246, .16);
  box-shadow: inset 0 0 0 1px rgba(184, 220, 255, .06), 0 0 10px rgba(47, 125, 246, .08);
}
.card-top-actions { display: flex; gap: 6px; align-items: center; }
.drag-handle { display: none; min-height: 32px; align-items: center; padding: 0 10px; border: 1px dashed var(--gold); border-radius: 8px; color: var(--gold); background: rgba(244, 200, 107, 0.08); font-size: 12px; font-weight: 950; cursor: grab; user-select: none; }
body.layout-editing .drag-handle { display: inline-flex; }
body.layout-editing .card { cursor: grab; outline: 1px dashed rgba(244, 200, 107, 0.44); outline-offset: -4px; }
body.layout-editing .card.dragging { opacity: 0.62; transform: scale(0.995); }
body.layout-editing .metrics > div { cursor: grab; outline: 1px dashed rgba(244,200,107,.28); }
body.layout-editing .metrics > div.dragging { opacity: .55; }
.layout-edit-button.active { color: #241702; background: linear-gradient(135deg, #f8dd93, #c58a22); border-color: rgba(244, 200, 107, 0.62); }
.tiny-icon { display: grid; place-items: center; width: 32px; min-height: 32px; padding: 0; border: 1px solid var(--line); background: var(--surface-2); color: var(--muted); }
.tiny-icon.active { color: var(--blue); border-color: rgba(47,125,246,.58); background: rgba(47,125,246,.10); }
.tiny-icon[data-list-action="favorite"].active { color: #ff6f86; border-color: rgba(229,72,77,.62); background: rgba(229,72,77,.10); animation: favoriteRedOrbit 1.8s linear infinite; }
.tiny-icon[data-list-action="pin"].active { color: var(--accent); border-color: rgba(54,212,137,.58); background: rgba(54,212,137,.10); animation: tabGreenOrbit 1.8s linear infinite; }
.tiny-icon[data-list-action="watchlist"].active { color: var(--gold); border-color: rgba(244, 200, 107, 0.55); background: rgba(244, 200, 107, 0.1); animation: queueGoldOrbit 1.8s linear infinite; }
.tiny-icon[data-list-action="favorite"]:hover,
.tiny-icon[data-list-action="favorite"]:focus-visible { color: #ff6f86; border-color: rgba(229,72,77,.62); background: rgba(229,72,77,.10); animation: favoriteRedOrbit 1.8s linear infinite; }
.tiny-icon[data-list-action="pin"]:hover,
.tiny-icon[data-list-action="pin"]:focus-visible { color: var(--accent); border-color: rgba(54,212,137,.58); background: rgba(54,212,137,.10); animation: tabGreenOrbit 1.8s linear infinite; }
.tiny-icon[data-list-action="watchlist"]:hover,
.tiny-icon[data-list-action="watchlist"]:focus-visible { color: var(--gold); border-color: rgba(244, 200, 107, 0.62); background: rgba(244, 200, 107, 0.1); animation: queueGoldOrbit 1.8s linear infinite; }
.tiny-action { min-height: 30px; padding: 0 9px; border-radius: 8px; border: 1px solid var(--line); background: var(--surface-2); color: var(--muted); font-size: 11px; font-weight: 760; white-space: nowrap; }
.tiny-action:hover { color: #fff; animation: tabBlueOrbit 1.8s linear infinite; }
.pre-ipo-badge { display: inline-flex; align-items: center; min-height: 30px; padding: 0 9px; border: 1px solid rgba(244,200,107,.55); border-radius: 8px; color: var(--gold); background: rgba(244,200,107,.10); font-size: 11px; font-weight: 760; white-space: nowrap; }
.full-analysis-action { color: var(--blue); border-color: rgba(47,125,246,.4); background: rgba(47,125,246,.09); }
.full-analysis-action:hover { animation: tabBlueOrbit 1.8s linear infinite; }
.deep-scan-action { color: var(--gold); border-color: rgba(244,200,107,.36); background: rgba(244,200,107,.08); }
.deep-scan-action:hover { animation: queueGoldOrbit 1.8s linear infinite; }
.danger-action { border-color: rgba(229,72,77,.42); color: #ff8a8a; }
.danger-action:hover { animation: favoriteRedOrbit 1.8s linear infinite; }
#quickFavoritesBtn.active { color: #ff6f86; border-color: rgba(229,72,77,.62); background: rgba(229,72,77,.10); animation: favoriteRedOrbit 1.8s linear infinite; }
#quickWatchlistBtn.active { color: var(--gold); border-color: rgba(244,200,107,.62); background: rgba(244,200,107,.10); animation: queueGoldOrbit 1.8s linear infinite; }
#quickFavoritesBtn:hover { color: #ff6f86; border-color: rgba(229,72,77,.62); animation: favoriteRedOrbit 1.8s linear infinite; }
#quickWatchlistBtn:hover { color: var(--gold); border-color: rgba(244,200,107,.62); animation: queueGoldOrbit 1.8s linear infinite; }
body:not(.frankie-unlocked) #frankieModeBtn { display: none !important; }
#frankieModeBtn[hidden] { display: none !important; }
.bone-button:hover .bone-art { animation: boneBob 1s ease-in-out infinite alternate; }
@keyframes boneBob {
  from { transform: translateY(0) rotate(-2deg); filter: drop-shadow(0 0 0 rgba(255,217,121,0)); }
  to { transform: translateY(-5px) rotate(3deg); filter: drop-shadow(0 0 10px rgba(255,217,121,.44)); }
}
@keyframes favoriteRedOrbit {
  0% { box-shadow: 0 0 0 1px rgba(229,72,77,.28), -5px 0 12px rgba(229,72,77,.12); }
  50% { box-shadow: 0 0 0 2px rgba(229,72,77,.72), 5px 0 18px rgba(229,72,77,.32); }
  100% { box-shadow: 0 0 0 1px rgba(229,72,77,.28), -5px 0 12px rgba(229,72,77,.12); }
}
@keyframes assetDetailBreath {
  0%, 100% { text-shadow: 0 0 0 rgba(244,200,107,0); box-shadow: 0 0 0 rgba(244,200,107,0); }
  50% { text-shadow: 0 0 8px currentColor; box-shadow: 0 0 12px rgba(244,200,107,.24); }
}
.score { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 8px; background: var(--surface-3); color: var(--accent); font-size: 18px; font-weight: 950; }
.score.high { color: var(--accent); }
.score.medium { color: var(--warn); }
.score.low { color: var(--bad); }
.rating-line { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; border: 1px solid var(--line); border-radius: 8px; padding: 8px 10px; background: var(--surface-2); }
.rating-line strong { color: var(--accent); font-size: 14px; }
.rating-line strong.overall-verdict-caution { color: var(--gold); }
.rating-line strong.overall-verdict-risk { color: var(--bad); }
.rating-line span { color: var(--muted); font-size: 13px; font-weight: 800; }
.rating-line .rating-prefix { font-size: 11px; font-weight: 760; text-transform: uppercase; letter-spacing: 0; }
.rating-line .card-movement-badge { margin-left: 2px; min-height: 22px; padding: 0 8px; font-size: 10px; font-weight: 900; }
.grade-pill { display: inline-flex; align-items: center; justify-content: center; gap: 5px; width: max-content; max-width: 100%; min-height: 24px; padding: 2px 8px; border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,.035); color: var(--ink); font-size: 11px; font-weight: 760; line-height: 1.1; white-space: nowrap; }
.grade-pill > span { color: var(--muted); font-size: 10px; font-weight: 720; }
.grade-pill > strong { color: inherit; font-size: 12px; font-weight: 850; }
.grade-pill.medium { min-height: 32px; padding: 4px 11px; }
.grade-pill.medium > strong { font-size: 13px; }
.grade-pill.grade-a { color: var(--gold); border-color: rgba(244,200,107,.5); box-shadow: 0 0 12px rgba(244,200,107,.12); }
.grade-pill.grade-b { color: var(--accent); border-color: rgba(54,212,137,.46); box-shadow: 0 0 12px rgba(54,212,137,.10); }
.grade-pill.grade-c { color: #8ebcff; border-color: rgba(47,125,246,.44); }
.grade-pill.grade-d { color: #ffbd6b; border-color: rgba(255,189,107,.46); }
.grade-pill.grade-f { color: var(--bad); border-color: rgba(229,72,77,.48); box-shadow: 0 0 12px rgba(229,72,77,.10); }
.portfolio-health-sort-button,
.portfolio-health-click-target { appearance: none; border: 0; background: transparent; color: inherit; padding: 0; margin: 0; font: inherit; text-align: left; cursor: pointer; }
.portfolio-health-sort-button { display: inline-flex; align-items: center; }
.portfolio-health-sort-button:hover .grade-pill,
.portfolio-health-sort-button:focus-visible .grade-pill,
.portfolio-health-click-target:hover .grade-pill,
.portfolio-health-click-target:focus-visible .grade-pill { border-color: rgba(47,125,246,.72); box-shadow: 0 0 0 2px rgba(47,125,246,.18), 0 0 16px rgba(47,125,246,.18); }
.status-dock [data-portfolio-health-breakdown] { cursor: pointer; border-radius: 8px; }
.status-dock [data-portfolio-health-breakdown]:hover,
.status-dock [data-portfolio-health-breakdown]:focus-visible { outline: 1px solid rgba(47,125,246,.6); outline-offset: 3px; }
.meter { height: 6px; overflow: hidden; border-radius: 999px; background: var(--surface-3); }
.meter span { display: block; height: 100%; background: linear-gradient(90deg, var(--blue), var(--accent)); }
.compact-line { display: grid; grid-template-columns: minmax(420px, 1fr) minmax(300px, .78fr); gap: 10px; align-items: start; min-width: 0; }
.quote-row, .order-grid { display: grid; grid-template-columns: repeat(5, minmax(92px, 1fr)); gap: 7px; min-width: 0; }
.meta, .order-cell, .metrics div { border: 1px solid var(--line); border-radius: 8px; padding: 8px; background: var(--surface-2); }
.meta strong { display: block; margin-top: 4px; font-size: 14px; color: var(--ink); }
.meta strong.as-of-value { font-size: 13px; line-height: 1.15; }
.meta strong.as-of-value span { display: block; white-space: nowrap; }
.meta strong.as-of-value small { display: block; margin-top: 2px; color: var(--muted); font-size: 10px; font-weight: 650; line-height: 1.1; white-space: nowrap; }
.holding-quick-stats { display: grid; grid-template-columns: repeat(3, minmax(92px, 1fr)); gap: 7px; margin-bottom: 8px; }
.amount-label-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.amount-all { min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 10px; font-weight: 850; color: var(--gold); border: 1px solid rgba(244, 200, 107, .45); background: rgba(244, 200, 107, .08); }
.amount-all:hover { color: #fff; animation: tabGoldOrbit 1.9s linear infinite; }
.price-field-label { display: grid; gap: 6px; }
.price-input-wrap { position: relative; display: block; }
.price-input-wrap::before { content: "$"; position: absolute; left: 12px; top: 50%; transform: translateY(-50%); color: var(--muted); font-weight: 900; pointer-events: none; z-index: 1; }
.price-input-wrap .limitPrice { width: 100%; padding-left: 26px; }
.price-input-wrap.market-mode .limitPrice { color: var(--muted); }
.price-input-wrap.market-text::before { display: none; }
.price-input-wrap.market-text .limitPrice { padding-left: 12px; }
.limitPrice[readonly] { color: var(--muted); border-color: var(--line); background: rgba(255,255,255,.025); cursor: default; }
.overview { grid-column: 1 / -1; color: var(--muted); line-height: 1.4; font-size: 13px; font-weight: 700; padding: 2px 2px 0; }
.metrics { display: grid; grid-template-columns: repeat(5, minmax(96px, 1fr)); grid-auto-rows: minmax(68px, auto); gap: 7px; margin: 0; grid-column: 1; align-content: start; }
.metrics > div { min-width: 0; overflow: hidden; }
.metrics dt { display: flex; align-items: center; gap: 4px; min-width: 0; white-space: nowrap; }
.chart-column { grid-column: 2; grid-row: 1 / span 2; display: grid; align-content: start; gap: 7px; min-width: 0; }
.chart-decision-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; align-items: end; min-height: 42px; }
.mini-chart { display: grid; grid-template-rows: auto minmax(242px, 1fr); gap: 7px; min-width: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 8px; padding: 8px; background: var(--surface-2); contain: layout paint; }
.chart-action-callout,
.chart-horizon-callout { display: grid; justify-items: center; align-content: center; gap: 3px; padding: 0 0 1px; text-align: center; min-width: 0; }
.chart-action-callout small,
.chart-horizon-callout small { color: var(--muted); font-size: 12px; font-weight: 750; line-height: 1.1; }
.chart-action-callout strong { display: inline-grid; place-items: center; min-width: 76px; min-height: 28px; padding: 2px 14px; border-radius: 999px; background: transparent; font-size: 21px; font-weight: 950; line-height: 1; letter-spacing: 0; }
.chart-action-callout em { color: var(--muted); font-style: normal; font-size: 10px; font-weight: 650; line-height: 1.2; }
.chart-action-callout .support-action-positive { color: var(--accent); text-shadow: 0 0 14px rgba(54,212,137,.2); }
.chart-action-callout .support-action-caution { color: var(--gold); text-shadow: 0 0 14px rgba(244,200,107,.2); }
.chart-action-callout .support-action-risk { color: var(--bad); text-shadow: 0 0 14px rgba(229,72,77,.18); }
.hold-horizon-badge { display: inline-grid; place-items: center; min-height: 24px; max-width: 100%; padding: 0 10px; border: 1px solid rgba(47,125,246,.46); border-radius: 8px; background: rgba(47,125,246,.055); color: var(--muted); font-size: 10px; font-weight: 900; line-height: 1.1; letter-spacing: 0; text-transform: uppercase; white-space: nowrap; box-shadow: inset 0 0 0 1px rgba(255,255,255,.025); }
.hold-horizon-badge:hover { color: #fff; border-color: rgba(47,125,246,.72); animation: tabBlueOrbit 1.8s linear infinite; }
.hold-horizon-badge.horizon-green { box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 0 10px rgba(54,212,137,.08); }
.hold-horizon-badge.horizon-amber { box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 0 10px rgba(244,200,107,.08); }
.hold-horizon-badge.horizon-red { box-shadow: inset 0 0 0 1px rgba(255,255,255,.025), 0 0 10px rgba(229,72,77,.08); }
.holding-horizon-plain { color: var(--ink); font-size: 12px; font-weight: 760; line-height: 1.25; text-transform: none; letter-spacing: 0; }
.chart-horizon-callout .hold-horizon-badge { min-height: 28px; padding: 2px 14px; border: 0; border-radius: 0; background: transparent; color: var(--gold); font-size: 21px; font-weight: 950; line-height: 1; letter-spacing: 0; text-transform: none; white-space: normal; box-shadow: none; text-shadow: 0 0 14px rgba(244,200,107,.18); }
.chart-horizon-callout .hold-horizon-badge:hover { border-color: transparent; animation: none; }
.chart-horizon-callout .hold-horizon-badge.horizon-green { color: var(--accent); text-shadow: 0 0 14px rgba(54,212,137,.18); }
.chart-horizon-callout .hold-horizon-badge.horizon-amber { color: var(--gold); text-shadow: 0 0 14px rgba(244,200,107,.2); }
.chart-horizon-callout .hold-horizon-badge.horizon-red { color: var(--bad); text-shadow: 0 0 14px rgba(229,72,77,.18); }
.chart-horizon-callout .hold-horizon-badge.horizon-green,
.chart-horizon-callout .hold-horizon-badge.horizon-amber,
.chart-horizon-callout .hold-horizon-badge.horizon-red { box-shadow: none; }
.chart-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.chart-toolbar strong { color: var(--muted); font-size: 11px; }
.chart-toolbar span { display: flex; gap: 4px; }
.chart-toolbar button { min-height: 24px; padding: 0 7px; border: 1px solid var(--line); background: transparent; color: var(--muted); font-size: 10px; }
.chart-toolbar button.active { color: #fff; border-color: var(--blue); background: var(--blue); }
.chart-canvas { position: relative; height: 282px; min-width: 0; overflow: hidden; padding: 2px 4px 8px; cursor: zoom-in; contain: layout paint; transform: translateZ(0); }
.chart-canvas svg { display: block; width: 100%; height: 100%; overflow: visible; }
.chart-canvas path { fill: none; stroke-width: 2.65; vector-effect: non-scaling-stroke; }
.chart-canvas .mini-price-line { stroke-width: 2.85; filter: drop-shadow(0 0 6px rgba(59,130,246,.28)); }
.chart-canvas .up-line,
.chart-canvas .down-line { stroke: #3b82f6; }
.chart-canvas .after-hours-line { stroke-width: 2.65; stroke-dasharray: 4 4; filter: drop-shadow(0 0 6px rgba(59,130,246,.32)); animation: afterHoursPulse 2.4s ease-in-out infinite; }
.mini-last-price-orb .orb-ring { fill: none; stroke: rgba(168,85,247,.88); stroke-width: 1.5; animation: expandedOrbPulse 1.55s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.mini-last-price-orb .orb-core { fill: #a855f7; stroke: rgba(255,255,255,.82); stroke-width: 1; }
body.slate-is-scrolling .mini-last-price-orb .orb-ring,
body.slate-tab-switching .mini-last-price-orb .orb-ring { animation-play-state: paused; }
.chart-grid { stroke: rgba(145,165,182,.22); stroke-width: 1; vector-effect: non-scaling-stroke; }
.prev-close-line { stroke: rgba(237,247,255,.48); stroke-width: 1.1; stroke-dasharray: 4 8; vector-effect: non-scaling-stroke; }
.axis-label { fill: var(--muted); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 11px; font-weight: 650; font-stretch: normal; letter-spacing: 0; }
.chart-canvas .axis-label { font-size: 16.5px; font-weight: 760; }
.chart-canvas .axis-label.bottom { font-size: 15.75px; }
.chart-canvas .after-hours-label,
.chart-canvas .prev-label { font-size: 15.2px; font-weight: 780; }
.prev-label { fill: var(--ink); }
.chart-empty { display: grid; place-items: center; height: 100%; color: var(--muted); font-size: 11px; }
.mini-chart-skeleton { display: grid; place-items: center; align-content: center; gap: 12px; min-height: 220px; color: var(--muted); font-size: 12px; font-weight: 750; }
.mini-chart-skeleton i { width: min(220px, 68%); height: 4px; border-radius: 999px; background: linear-gradient(90deg, transparent, rgba(96,165,250,.85), transparent), rgba(148,163,184,.18); background-size: 45% 100%, 100% 100%; background-repeat: no-repeat; animation: miniChartSkeletonSweep 1.1s linear infinite; }
.mini-chart-unavailable { display: grid; place-items: center; align-content: center; gap: 12px; min-height: 220px; padding: 18px; color: var(--muted); text-align: center; border: 1px dashed rgba(148,163,184,.25); border-radius: 8px; background: rgba(15,23,42,.28); }
.mini-chart-unavailable strong { color: var(--text); font-size: 13px; line-height: 1.35; }
.mini-chart-unavailable button { border: 1px solid rgba(59,130,246,.55); border-radius: 8px; background: rgba(37,99,235,.22); color: #dbeafe; font-size: 12px; font-weight: 800; padding: 8px 12px; cursor: pointer; }
.mini-chart-unavailable button:hover { border-color: rgba(96,165,250,.85); box-shadow: 0 0 14px rgba(59,130,246,.22); }
@keyframes miniChartSkeletonSweep {
  from { background-position: -60% 0, 0 0; }
  to { background-position: 160% 0, 0 0; }
}
.chart-cache-badge { position: absolute; top: 8px; right: 8px; min-height: 20px; display: inline-flex; align-items: center; padding: 0 7px; border-radius: 999px; border: 1px solid rgba(148,163,184,.24); background: rgba(8,18,30,.72); color: var(--muted); font-size: 10px; font-weight: 800; pointer-events: none; }
.chart-cache-badge.cached { display: none; }
.chart-cache-badge.stale { color: var(--gold); border-color: rgba(244,200,107,.34); }
.chart-crosshair { position: absolute; top: 22px; bottom: 28px; width: 1px; background: rgba(147,197,253,.66); opacity: 0; pointer-events: none; }
.chart-hover-dot,
.chart-hover-tooltip { position: absolute; z-index: 2; opacity: 0; pointer-events: none; }
.chart-hover-dot { width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #e0f2fe; border: 2px solid #3b82f6; box-shadow: 0 0 0 5px rgba(59,130,246,.16), 0 0 14px rgba(168,85,247,.26); }
.chart-hover-tooltip { left: 10px; bottom: 8px; display: grid; gap: 1px; max-width: calc(100% - 20px); padding: 5px 8px; border: 1px solid var(--line); border-radius: 7px; background: rgba(5, 14, 22, .94); color: var(--ink); font-size: 11px; font-weight: 760; box-shadow: 0 8px 22px rgba(0,0,0,.35); }
.chart-hover-tooltip span { color: var(--muted); font-size: 10.5px; font-weight: 720; }
.chart-hover-tooltip strong { color: var(--ink); font-size: 13px; font-weight: 890; }
.chart-canvas:hover .chart-crosshair,
.chart-canvas:hover .chart-hover-dot,
.chart-canvas:hover .chart-hover-tooltip { opacity: 1; }
.expanded-chart-modal { display: grid; gap: 14px; }
.utility-modal:has(.expanded-chart-modal) { width: min(1260px, calc(100vw - 28px)); }
.expanded-chart-header { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.expanded-chart-header > div:first-child { min-width: 0; flex: 1 1 auto; }
.expanded-chart-title-row { display: flex; align-items: center; gap: 14px; min-height: 30px; }
.expanded-chart-header h2 { display: flex; gap: 10px; align-items: center; margin: 6px 0 3px; color: var(--ink); font-size: 24px; letter-spacing: 0; min-height: 30px; }
.expanded-chart-price-button { display: inline-grid; place-items: center; min-width: 82px; min-height: 28px; padding: 0 2px; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--accent); font: inherit; font-size: 16px; font-weight: 900; letter-spacing: 0; line-height: 1; cursor: pointer; transform-origin: left center; transition: min-width .34s cubic-bezier(.16,1,.3,1), min-height .34s cubic-bezier(.16,1,.3,1), padding .34s cubic-bezier(.16,1,.3,1), font-size .34s cubic-bezier(.16,1,.3,1), transform .34s cubic-bezier(.16,1,.3,1), color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease; }
.expanded-chart-price-button.up { color: var(--accent); }
.expanded-chart-price-button.down { color: var(--bad); }
.expanded-chart-price-button.neutral { color: #e0f2fe; }
.expanded-chart-price-button:hover,
.expanded-chart-price-button:focus-visible { color: #e0f2fe; border-color: rgba(96,165,250,.36); background: rgba(59,130,246,.08); outline: none; box-shadow: 0 0 0 3px rgba(59,130,246,.12); }
.expanded-chart-modal.big-price-mode .expanded-chart-title-row { min-height: 92px; }
.expanded-chart-modal.big-price-mode .expanded-chart-price-button { min-width: min(282px, 34vw); min-height: 86px; padding: 0 22px; border-color: rgba(96,165,250,.34); background: linear-gradient(135deg, rgba(34,211,238,.13), rgba(59,130,246,.14) 48%, rgba(168,85,247,.12)); color: #e0f2fe; font-size: clamp(28px, 3vw, 42px); text-shadow: 0 0 18px rgba(59,130,246,.34); box-shadow: 0 16px 42px rgba(2,6,23,.26), inset 0 1px 0 rgba(255,255,255,.08); transform: translateX(4px) scale(1.02); }
.expanded-chart-modal.big-price-mode .expanded-chart-price-button.up { border-color: rgba(54,212,137,.36); background: linear-gradient(135deg, rgba(54,212,137,.14), rgba(59,130,246,.11) 54%, rgba(34,211,238,.12)); color: var(--accent); text-shadow: 0 0 18px rgba(54,212,137,.3); }
.expanded-chart-modal.big-price-mode .expanded-chart-price-button.down { border-color: rgba(229,72,77,.38); background: linear-gradient(135deg, rgba(229,72,77,.14), rgba(59,130,246,.1) 54%, rgba(168,85,247,.12)); color: var(--bad); text-shadow: 0 0 18px rgba(229,72,77,.28); }
.expanded-chart-header p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.35; }
.expanded-chart-source-note { max-width: min(760px, 58vw); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.expanded-chart-market-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.expanded-chart-status-readout { display: flex; align-items: center; justify-content: flex-end; gap: 10px; min-width: 0; max-width: min(640px, 54vw); flex: 0 1 auto; }
.expanded-chart-market-session { flex: 0 1 270px; max-width: min(270px, 100%); min-width: 150px; min-height: 30px; padding: 0 9px; font-size: 10.5px; cursor: pointer; white-space: nowrap; }
.expanded-chart-market-session:not(button) { cursor: default; }
.expanded-chart-hover-readout { flex: 0 1 auto; width: max-content; min-width: 0; max-width: min(360px, 34vw); min-height: 56px; display: grid; gap: 2px; align-content: center; justify-items: end; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--ink); font-size: clamp(10px, .72vw, 11.5px); font-weight: 760; line-height: 1.08; text-align: right; white-space: nowrap; overflow: hidden; text-overflow: clip; }
.expanded-chart-hover-readout span { display: block; max-width: 100%; overflow: hidden; text-overflow: ellipsis; }
.utility-header-actions .expanded-chart-market-session { flex: 0 1 auto; min-width: 0; max-width: min(430px, 46vw); min-height: 28px; padding: 0 11px; font-size: 11px; overflow: hidden; text-overflow: ellipsis; }
.expanded-chart-modal.big-price-mode .expanded-chart-status-readout { max-width: min(560px, 43vw); }
.expanded-chart-modal.big-price-mode .expanded-chart-hover-readout { max-width: min(340px, 34vw); font-size: clamp(9.5px, .68vw, 11px); }
.expanded-chart-warnings { display: flex; flex-wrap: wrap; gap: 7px; }
.expanded-chart-warnings span { display: inline-flex; align-items: center; min-height: 24px; padding: 2px 9px; border: 1px solid rgba(244,200,107,.34); border-radius: 999px; background: rgba(244,200,107,.08); color: var(--gold); font-size: 11px; font-weight: 760; }
.expanded-chart-controls { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.expanded-chart-control-group { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; padding: 7px; border: 1px solid rgba(148,163,184,.14); border-radius: 10px; background: rgba(255,255,255,.025); }
.expanded-chart-control-group > span:first-child { color: var(--muted); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.expanded-chart-controls button,
.expanded-chart-controls .chart-toggle-pill { min-height: 30px; padding: 0 10px; border: 1px solid rgba(148,163,184,.28); border-radius: 8px; background: rgba(15,23,42,.58); color: var(--muted); font-size: 11px; font-weight: 790; letter-spacing: 0; }
.expanded-chart-controls button.active,
.expanded-chart-controls .chart-toggle-pill.active { border-color: rgba(47,125,246,.72); background: rgba(47,125,246,.18); color: var(--ink); }
.expanded-chart-controls button:hover:not(:disabled),
.expanded-chart-controls button:focus-visible { color: #fff; border-color: rgba(47,125,246,.58); animation: tabBlueOrbit 1.9s linear infinite; }
.expanded-chart-controls button:disabled { opacity: .48; cursor: not-allowed; }
.expanded-chart-shell { --chart-bg: #08121e; --chart-grid-major: rgba(148,163,184,.18); --chart-grid-minor: rgba(148,163,184,.07); --chart-line-start: #22d3ee; --chart-line-mid: #3b82f6; --chart-line-end: #a855f7; position: relative; display: grid; gap: 8px; border: 1px solid rgba(148,163,184,.18); border-radius: 12px; background: rgba(2,6,23,.28); padding: 12px; }
.expanded-chart-refresh-status { display: flex; flex-wrap: wrap; gap: 10px 14px; align-items: center; justify-content: flex-end; color: var(--muted); font-size: 11px; font-weight: 800; }
.expanded-chart-refresh-status > div:not(.expanded-chart-refresh-ring) { display: grid; gap: 2px; min-width: 92px; }
.expanded-chart-refresh-status span { text-transform: uppercase; font-size: 9px; letter-spacing: .02em; }
.expanded-chart-refresh-status strong { color: var(--ink); font-size: 12px; }
.expanded-chart-refresh-ring { --refresh-progress: 0; width: 34px; height: 34px; border-radius: 50%; background: conic-gradient(rgba(96,165,250,.95) calc(var(--refresh-progress) * 1turn), rgba(148,163,184,.18) 0); display: grid; place-items: center; box-shadow: 0 0 18px rgba(59,130,246,.16); }
.expanded-chart-refresh-ring::after { content: ""; width: 24px; height: 24px; border-radius: inherit; background: var(--chart-bg); }
.expanded-chart-updating { position: absolute; top: 54px; right: 22px; z-index: 18; display: flex; align-items: center; gap: 9px; max-width: min(360px, calc(100% - 44px)); padding: 9px 11px; border: 1px solid rgba(96,165,250,.28); border-radius: 12px; background: rgba(8,18,30,.88); color: var(--ink); box-shadow: 0 14px 30px rgba(2,6,23,.35), 0 0 18px rgba(59,130,246,.1); backdrop-filter: blur(8px); pointer-events: none; }
.expanded-chart-updating strong { display: block; color: #dbeafe; font-size: 12px; font-weight: 860; line-height: 1.2; }
.expanded-chart-updating span { display: block; color: var(--muted); font-size: 10.5px; font-weight: 720; line-height: 1.25; }
.expanded-chart-update-spinner { width: 24px; height: 24px; flex: 0 0 24px; border-radius: 50%; border: 3px solid rgba(148,163,184,.18); border-top-color: rgba(96,165,250,.95); animation: expandedChartSpin .85s linear infinite; }
.expanded-price-chart { position: relative; min-height: 460px; overflow: hidden; border-radius: 8px; cursor: crosshair; background: linear-gradient(rgba(148,163,184,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(148,163,184,.045) 1px, transparent 1px), radial-gradient(circle at 50% 0%, rgba(59,130,246,.13), transparent 42%), var(--chart-bg); background-size: 100% 42px, 64px 100%, 100% 100%, 100% 100%; }
.expanded-chart-svg,
.expanded-rsi-svg { width: 100%; height: 100%; min-height: 430px; overflow: visible; }
.expanded-rsi-svg { min-height: 140px; }
.expanded-price-line { fill: none; stroke: var(--accent); stroke-width: 2.3; vector-effect: non-scaling-stroke; filter: drop-shadow(0 0 7px rgba(54,212,137,.22)); }
.expanded-price-line.haze { stroke: url(#expandedChartLineGradient); stroke-width: 2.2; fill: none; filter: url(#expandedChartGlow); vector-effect: non-scaling-stroke; }
.expanded-vwap-line { fill: none; stroke: var(--blue); stroke-width: 1.8; vector-effect: non-scaling-stroke; stroke-dasharray: 6 5; }
.expanded-sma-line { fill: none; stroke: #f6c453; stroke-width: 1.7; vector-effect: non-scaling-stroke; }
.expanded-ema-line { fill: none; stroke: #a78bfa; stroke-width: 1.7; vector-effect: non-scaling-stroke; }
.expanded-rsi-line { fill: none; stroke: var(--blue); stroke-width: 2; vector-effect: non-scaling-stroke; }
.expanded-chart-grid,
.expanded-chart-grid-major { stroke: var(--chart-grid-major); stroke-width: 1; vector-effect: non-scaling-stroke; }
.expanded-chart-grid-minor { stroke: var(--chart-grid-minor); stroke-width: 1; vector-effect: non-scaling-stroke; }
.expanded-chart-time-label { fill: var(--muted); font-size: 11px; font-weight: 760; letter-spacing: 0; }
.expanded-candle line { stroke-width: 1.25; vector-effect: non-scaling-stroke; }
.expanded-candle rect { rx: 1.5; }
.expanded-candle.up line,
.expanded-candle.up rect { stroke: var(--accent); fill: rgba(54,212,137,.56); }
.expanded-candle.down line,
.expanded-candle.down rect { stroke: var(--bad); fill: rgba(229,72,77,.58); }
.expanded-volume-bar.up { fill: rgba(54,212,137,.32); }
.expanded-volume-bar.down { fill: rgba(229,72,77,.34); }
.expanded-last-price-orb .orb-ring { fill: none; stroke: rgba(168,85,247,.85); stroke-width: 1.5; animation: expandedOrbPulse 1.4s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.expanded-last-price-orb .orb-core { fill: #a855f7; stroke: rgba(255,255,255,.8); stroke-width: 1; }
.expanded-vwap-orb .orb-ring { fill: none; stroke: rgba(59,130,246,.75); stroke-width: 1.3; animation: expandedOrbPulse 1.7s ease-in-out infinite; transform-box: fill-box; transform-origin: center; }
.expanded-vwap-orb .orb-core { fill: #3b82f6; stroke: rgba(255,255,255,.68); stroke-width: .8; }
.expanded-chart-crosshair-x,
.expanded-chart-crosshair-y,
.expanded-chart-hover-card,
.expanded-chart-price-pill,
.expanded-chart-hover-dot { position: absolute; pointer-events: none; z-index: 12; }
.expanded-chart-crosshair-x { top: 0; bottom: 0; border-left: 1px dashed rgba(226,232,240,.45); }
.expanded-chart-crosshair-y { left: 0; right: 0; border-top: 1px dashed rgba(226,232,240,.45); }
.expanded-chart-hover-card,
.expanded-chart-price-pill { border: 1px solid rgba(148,163,184,.28); background: rgba(8,18,30,.94); box-shadow: 0 12px 32px rgba(0,0,0,.35); color: var(--ink); }
.expanded-chart-hover-card { min-width: 220px; padding: 10px 12px; border-radius: 12px; font-size: 12px; font-weight: 760; line-height: 1.45; }
.expanded-chart-hover-card strong { color: var(--ink); }
.expanded-chart-hover-card span { color: var(--muted); }
.expanded-chart-price-pill { right: 8px; padding: 6px 10px; border-radius: 999px; color: #e0f2fe; font-size: 12px; font-weight: 880; }
.expanded-chart-hover-dot { width: 9px; height: 9px; margin: -4.5px 0 0 -4.5px; border-radius: 50%; background: #e0f2fe; border: 2px solid #3b82f6; box-shadow: 0 0 0 5px rgba(59,130,246,.16); }
.expanded-day-high,
.expanded-day-low { stroke-width: 1.2; stroke-dasharray: 5 6; vector-effect: non-scaling-stroke; }
.expanded-day-high { stroke: rgba(54,212,137,.8); }
.expanded-day-low { stroke: rgba(229,72,77,.82); }
.expanded-day-label { fill: var(--muted); font-size: 11px; font-weight: 760; letter-spacing: 0; }
.expanded-rsi-pane { display: grid; gap: 4px; min-height: 156px; }
.expanded-rsi-pane p { margin: 0; color: var(--muted); font-size: 12px; font-weight: 700; }
.expanded-chart-readout { display: grid; grid-template-columns: repeat(8, minmax(104px, 1fr)); gap: 8px; overflow-x: auto; padding-bottom: 1px; }
.expanded-chart-readout .metric-tile { display: grid; gap: 4px; min-height: 56px; padding: 8px 9px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); }
.expanded-chart-readout .metric-tile span { color: var(--muted); font-size: 10px; font-weight: 850; text-transform: uppercase; }
.expanded-chart-readout .metric-tile strong { color: var(--ink); font-size: 12px; font-weight: 850; line-height: 1.25; overflow-wrap: anywhere; }
.expanded-chart-modal.big-price-mode .expanded-chart-readout .metric-tile:first-child strong { font-size: 24px; color: #e0f2fe; }
.expanded-chart-readout .metric-tile strong.up { color: var(--accent); }
.expanded-chart-readout .metric-tile strong.down { color: var(--bad); }
.expanded-chart-loading,
.expanded-chart-error { border: 1px solid rgba(148,163,184,.18); border-radius: 12px; padding: 18px; background: rgba(15,23,42,.44); color: var(--muted); }
.expanded-chart-loading h2 { margin: 4px 0; color: var(--ink); }
.expanded-chart-error { color: var(--gold); font-weight: 760; }
@keyframes expandedOrbPulse {
  0% { opacity: .25; transform: scale(.75); }
  45% { opacity: .9; transform: scale(1.25); }
  100% { opacity: .25; transform: scale(.75); }
}
@keyframes expandedChartSpin { to { transform: rotate(360deg); } }
@container (max-width: 1160px) {
  .compact-line { grid-template-columns: minmax(0, 1fr) minmax(250px, .62fr); }
  .quote-row, .metrics { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .meta, .metrics div { padding: 7px; }
  .metrics { grid-auto-rows: minmax(62px, auto); }
  .chart-decision-row { min-height: 38px; }
  .chart-action-callout strong,
  .chart-horizon-callout .hold-horizon-badge { font-size: 18px; min-height: 25px; padding-inline: 8px; }
  .chart-canvas { height: 246px; }
  .chart-canvas .axis-label { font-size: 14.5px; }
}
@container (max-width: 900px) {
  .compact-line { grid-template-columns: minmax(0, 1fr); }
  .chart-column { grid-column: 1 / -1; grid-row: auto; }
  .chart-canvas { height: 220px; }
}
@container (max-width: 680px) {
  .quote-row, .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .chart-decision-row { grid-template-columns: minmax(0, 1fr); }
}
@keyframes afterHoursPulse {
  0%, 100% { opacity: .72; }
  50% { opacity: 1; }
}
dd { margin: 4px 0 0; font-weight: 900; color: var(--ink); }
.metrics dd { font-size: 13px; font-weight: 500; line-height: 1.25; overflow-wrap: normal; white-space: nowrap; }
.metrics dd.metric-value { min-width: 0; max-width: 100%; }
.metrics dd.metric-value-compact { font-size: clamp(10px, .75vw, 12px); line-height: 1.16; white-space: normal; overflow-wrap: anywhere; word-break: break-word; }
.synopsis { display: grid; gap: 4px; }
.verdict { font-weight: 900; font-size: 14px; }
.why-today { color: var(--muted); line-height: 1.45; font-size: 13px; font-weight: 520; }
.thesis { color: var(--ink); line-height: 1.4; font-size: 13px; }
.context { color: var(--accent); line-height: 1.4; font-size: 13px; font-weight: 800; }
.recommendation-synopsis { color: var(--ink); line-height: 1.45; font-size: 13px; font-weight: 750; }
.order-panel { display: grid; gap: 8px; border: 1px solid var(--line); border-radius: 8px; padding: 9px; background: var(--surface-2); }
.order-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.order-actions button:not(.live):hover:not(:disabled),
.order-actions button:not(.live):focus-visible:not(:disabled) {
  animation: tabGreenOrbit 1.8s linear infinite;
  filter: brightness(1.04);
}
.order-actions button.live:hover:not(:disabled),
.order-actions button.live:focus-visible:not(:disabled) {
  color: #fff !important;
  animation: tabBlueOrbit 1.9s linear infinite;
  filter: brightness(1.06);
}
.empty-state { display: grid; gap: 6px; border: 1px solid var(--line); border-radius: 12px; padding: 18px; background: var(--surface-2); color: var(--muted); }
.empty-state strong { color: var(--ink); }
.right-rail { display: grid; gap: 12px; overflow: auto; max-height: 100%; align-content: start; padding-right: 10px; scrollbar-gutter: stable; }
.right-rail [data-layout-id="market-direction"] { min-height: 250px; padding-bottom: 18px; overflow: visible; }
.right-rail [data-layout-id="portfolio-concentration"] { min-height: 220px; overflow: auto; scrollbar-gutter: stable; }
.right-rail [data-layout-id="portfolio-concentration"] dd { white-space: normal; overflow-wrap: anywhere; line-height: 1.35; font-size: 13px; font-weight: 500; color: var(--field-ink); }
.rail-card { display: grid; gap: 9px; padding: 14px; position: relative; overflow: visible; min-width: 0; }
[data-layout-id="global-controls"],
[data-layout-id="risk-profile"],
[data-layout-id="macro-lens"],
[data-layout-id="robinhood-status"],
[data-layout-id="market-direction"],
[data-layout-id="portfolio-concentration"],
[data-layout-id="market-news"] {
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
[data-layout-id="global-controls"]:hover,
[data-layout-id="risk-profile"]:hover,
[data-layout-id="macro-lens"]:hover,
[data-layout-id="robinhood-status"]:hover,
[data-layout-id="market-direction"]:hover,
[data-layout-id="portfolio-concentration"]:hover,
[data-layout-id="market-news"]:hover {
  border-color: rgba(47,125,246,.58);
  box-shadow: 0 0 0 1px rgba(47,125,246,.18), 0 0 20px rgba(47,125,246,.12);
}
.expanded-rail-card { min-height: 210px; align-content: start; }
.expanded-rail-card p, .expanded-rail-card dd { overflow-wrap: anywhere; }
.rail-card::before { content: none; }
.rail-eyebrow { color: var(--blue); text-transform: uppercase; font-weight: 900; font-size: 12px; }
.rail-card h3 { color: #ff6c62; font-size: 17px; text-transform: uppercase; }
.rail-card p, .rail-card small, .rail-lines { color: var(--muted); line-height: 1.4; font-size: 13px; }
.confidence-bar { width: calc(100% - 8px); margin-inline: 4px; height: 8px; border-radius: 999px; overflow: hidden; background: rgba(255,255,255,0.1); }
.confidence-bar span { display: block; height: 100%; background: linear-gradient(90deg, var(--blue), var(--accent)); }
#marketDirectionConfidence { display: block; margin-top: -2px; padding-bottom: 2px; line-height: 1.25; }
.rail-daily-brief-button { width: 100%; min-height: 36px; margin-top: 4px; color: var(--ink); font-size: 13px; font-weight: 800; }
.rail-daily-brief-button:hover, .rail-daily-brief-button:focus-visible { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.8s linear infinite; }
.rail-list { display: grid; gap: 8px; margin: 0; }
.rail-list div { border-bottom: 1px solid var(--line); padding-bottom: 7px; }
.rail-lines { display: grid; gap: 8px; padding-left: 0; margin: 0; list-style: none; }
.rail-lines div { display: flex; justify-content: space-between; gap: 10px; border-bottom: 1px solid var(--line); padding-bottom: 6px; }
.rail-locked { display: grid; gap: 4px; color: var(--muted); }
.rail-lines .rail-locked { display: grid; justify-content: stretch; border-bottom: 0; padding-bottom: 0; }
.rail-locked strong { color: var(--ink); }
.rail-locked span { color: var(--muted); }
#holdingsPanel { max-height: 320px; overflow-y: auto; padding-right: 4px; scrollbar-gutter: stable; }
#holdingsPanel::-webkit-scrollbar { width: 8px; }
#holdingsPanel::-webkit-scrollbar-thumb { background: rgba(102, 133, 157, 0.34); border-radius: 999px; }
#holdingsPanel .holdings-total { position: sticky; bottom: 0; background: var(--surface); }
#marketNewsList { max-height: 430px; overflow-y: auto; padding-right: 6px; scrollbar-gutter: stable; }
#marketNewsList::-webkit-scrollbar { width: 8px; }
#marketNewsList::-webkit-scrollbar-thumb { background: rgba(102, 133, 157, 0.34); border-radius: 999px; }
.risk { float: right; border-radius: 6px; padding: 2px 6px; color: #fff; font-size: 11px; }
.risk.high { background: #b94141; }
.risk.med { background: #a4701b; }
.risk.low { background: #1e8a55; }
.provider-ok { color: var(--accent) !important; font-weight: 900; }
.provider-warn { color: var(--warn) !important; font-weight: 900; }
.provider-bad { color: var(--bad) !important; font-weight: 900; }
.rail-card.provider-warning { border-color: rgba(47,125,246,.88); box-shadow: 0 0 0 1px rgba(47,125,246,.32), 0 14px 34px rgba(47,125,246,.14); cursor: help; }
.rail-card.provider-error { border-color: rgba(229,72,77,.9); box-shadow: 0 0 0 1px rgba(229,72,77,.34), 0 14px 34px rgba(229,72,77,.18); cursor: help; }
.robinhood-lists-card { border-color: rgba(54,212,137,.24); box-shadow: 0 0 0 1px rgba(54,212,137,.06), 0 0 14px rgba(54,212,137,.07); }
.robinhood-lists-card:hover { border-color: rgba(54,212,137,.46); box-shadow: 0 0 0 1px rgba(54,212,137,.14), 0 0 20px rgba(54,212,137,.12); }
.status-dock { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin: 0 0 8px; padding: 7px 10px; }
.top-status-dock { margin-top: 0; }
.status-dock div { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: center; border-right: 1px solid var(--line); }
.status-dock div:has(.pnl-icon) { grid-template-columns: 58px minmax(0, 1fr); }
.status-dock div:last-child { border-right: 0; }
.status-dock strong { color: var(--ink); }
.status-dock span { color: var(--muted); }
.status-dock .up, .status-dock span.up, #dockPnlText.up { color: var(--accent); }
.status-dock .warn, .status-dock span.warn { color: var(--gold); }
.status-dock .down, .status-dock span.down, #dockPnlText.down { color: var(--bad); }
#dockPnlText { font-weight: 900; }
.realized-range-pills { display: inline-flex; gap: 4px; margin-left: 7px; vertical-align: middle; }
.realized-range-pill { min-height: 20px; padding: 1px 6px; border: 1px solid rgba(47,125,246,.28); border-radius: 999px; background: rgba(47,125,246,.06); color: var(--muted); font-size: 10px; font-weight: 800; line-height: 1; cursor: pointer; transition: color .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease; }
.realized-range-pill:hover:not(:disabled), .realized-range-pill.active { color: var(--ink); border-color: rgba(47,125,246,.68); background: rgba(47,125,246,.22); box-shadow: 0 0 0 1px rgba(47,125,246,.16), 0 0 12px rgba(47,125,246,.16); }
.realized-range-pill:disabled { opacity: .45; cursor: not-allowed; }
.status-dock div > span:not(.status-icon) { display: grid; gap: 5px; min-width: 0; }
.egg-timer-copy { gap: 4px !important; min-width: 0; }
#eggTimerText { min-width: 0; max-width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
#eggTimerRefresh.egg-timer-refreshing #eggTimerText { font-size: 12px; line-height: 1.2; }
.egg-timer-progress { display: block; width: 100%; max-width: 210px; height: 6px; border-radius: 999px; overflow: hidden; background: rgba(151,172,189,.16); box-shadow: inset 0 0 0 1px rgba(151,172,189,.08); }
.egg-timer-progress[hidden] { display: none; }
.egg-timer-progress > span { display: block; width: var(--egg-timer-progress, 8%); height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--accent)); box-shadow: 0 0 10px rgba(47,125,246,.25); transition: width .35s ease; }
#eggTimerRefresh.egg-timer-refreshing .timer-icon { filter: drop-shadow(0 0 10px rgba(47,125,246,.32)); }
.status-dock #yolkScoreText { display: grid; grid-template-columns: max-content minmax(0, 1fr); align-items: center; column-gap: 14px; min-width: 0; max-width: 100%; overflow: hidden; }
.status-icon { width: 38px; height: 38px; display: inline-block; background-size: contain; background-position: center; background-repeat: no-repeat; flex: 0 0 auto; }
.timer-icon { width: 48px; height: 52px; background-image: url("assets/gold-egg-timer-v20.png"); filter: drop-shadow(0 4px 8px rgba(244,200,107,.28)); }
.egg-timer-warning { color: var(--bad) !important; font-weight: 900; animation: eggTimerUrgentPulse 1.05s ease-in-out infinite; }
@keyframes eggTimerUrgentPulse { 0%,100% { opacity: .86; filter: drop-shadow(0 0 0 rgba(229,72,77,0)); } 50% { opacity: 1; filter: drop-shadow(0 0 7px rgba(229,72,77,.58)); } }
.nest-icon { width: 58px; height: 44px; overflow: hidden; background-image: url("assets/nest-stage-1-v20.png"); background-position: center; background-size: 70px 70px; background-repeat: no-repeat; transform: none; transform-origin: center; transition: filter .25s ease, transform .25s ease; filter: drop-shadow(0 4px 6px rgba(0,0,0,.28)); }
.nest-icon.stage-1 { background-image: url("assets/nest-stage-1-v20.png"); }
.nest-icon.stage-2 { width: 58px; height: 44px; background-image: url("assets/nest-stage-2-v20.png"); background-position: 56% center; background-size: 54px 54px; }
.nest-icon.stage-3 { width: 58px; height: 44px; background-image: url("assets/nest-stage-3-v20.png"); background-position: 56% center; background-size: 48px 48px; }
.nest-icon.stage-4 { width: 58px; height: 44px; background-image: url("assets/nest-stage-4-v20.png"); background-position: 56% center; background-size: 43px 43px; filter: drop-shadow(0 0 12px rgba(244,200,107,.28)); }
.nest-builder { min-height: 58px; overflow: hidden; }
.nest-builder #nestBuilderText { display: flex; align-items: center; gap: 5px; }
.nest-separator { color: var(--muted); }
.status-link { min-height: 24px; padding: 0; border: 0; background: transparent; color: var(--accent); font-size: 12px; font-weight: 800; text-align: left; }
.status-link:disabled { color: var(--muted); opacity: .58; }
.yolk-icon { width: 54px; height: 48px; border-radius: 10px; background-image: url("assets/logo-egg-v18.png"); background-size: cover; filter: drop-shadow(0 4px 9px rgba(0,0,0,.25)); }
.yolk-icon.score-good { background-image: url("assets/yolk-score-happy-goose-v32.png"); filter: drop-shadow(0 0 11px rgba(54,212,137,.28)); }
.yolk-icon.score-mid { background-image: url("assets/yolk-score-so-so-goose-v32.png"); filter: drop-shadow(0 0 10px rgba(244,200,107,.24)); }
.yolk-icon.score-bad { background-image: url("assets/yolk-score-virus-goose-v32.png"); filter: drop-shadow(0 0 10px rgba(229,72,77,.22)); }
.yolk-icon.score-empty { background-image: url("assets/icon-yolk.svg"); background-size: contain; border-radius: 0; }
.yolk-score-letter { display: inline-block; margin-right: .36em; font-weight: 950; font-size: 1.24em; line-height: 1; animation: yolkGradePulse 1.8s ease-in-out infinite; }
.status-dock #yolkScoreText .yolk-score-letter { color: inherit; }
.yolk-score-main { display: inline-flex; align-items: baseline; gap: .42em; min-width: 0; white-space: nowrap; flex: 0 0 auto; }
.yolk-score-score { display: inline-block; color: inherit; }
.status-dock #yolkScoreText.up .yolk-score-main,
.status-dock #yolkScoreText.up .yolk-score-main span { color: var(--accent); }
.status-dock #yolkScoreText.warn .yolk-score-main,
.status-dock #yolkScoreText.warn .yolk-score-main span { color: var(--gold); }
.status-dock #yolkScoreText.down .yolk-score-main,
.status-dock #yolkScoreText.down .yolk-score-main span { color: var(--bad); }
.portfolio-health-quote { color: var(--muted); font-size: 11px; font-weight: 760; line-height: 1.2; }
.status-dock #yolkScoreText .portfolio-health-quote { color: var(--muted); display: -webkit-box; min-width: 0; max-width: 100%; margin: 0; padding-left: 2px; font-size: 11px; font-weight: 760; line-height: 1.14; white-space: normal; overflow: hidden; text-overflow: ellipsis; -webkit-line-clamp: 2; -webkit-box-orient: vertical; align-self: center; transform: translateY(-1px); }
@keyframes yolkGradePulse { 0%,100% { transform: scale(1); filter: brightness(1); } 50% { transform: scale(1.055); filter: brightness(1.18); } }
.holdings-header-metrics { display: inline-flex; align-items: flex-start; justify-content: flex-end; gap: 10px; flex-wrap: wrap; min-width: 0; }
.holdings-unrealized-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 14px; border: 1px solid rgba(154, 178, 199, .28); border-radius: 999px; background: rgba(255,255,255,.025); color: var(--muted); font-size: 12px; font-weight: 760; line-height: 1; white-space: nowrap; }
.holdings-unrealized-pill strong { color: var(--ink); font-weight: 900; }
.holdings-unrealized-pill.up { border-color: rgba(54,212,137,.46); box-shadow: 0 0 14px rgba(54,212,137,.08); }
.holdings-unrealized-pill.up strong { color: var(--accent); }
.holdings-unrealized-pill.down { border-color: rgba(229,72,77,.46); box-shadow: 0 0 14px rgba(229,72,77,.08); }
.holdings-unrealized-pill.down strong { color: var(--bad); }
.holdings-health-wrap { display: inline-grid; grid-template-columns: minmax(0, auto); justify-items: start; gap: 4px; overflow: visible; }
.holdings-health-top { display: inline-flex; align-items: center; gap: 10px; overflow: visible; }
.holdings-health-quote { max-width: 260px; text-align: left; overflow-wrap: anywhere; }
.portfolio-health-click-target.holdings-health-wrap { padding: 2px; border-radius: 12px; }
.portfolio-health-goose {
  width: 40px;
  min-width: 40px;
  height: 40px;
  border-radius: 9px;
  object-fit: cover;
  display: block;
  background: transparent;
  filter: drop-shadow(0 4px 9px rgba(0,0,0,.25));
  transform: scale(1.22);
  transform-origin: center;
}
.portfolio-health-goose.score-good { filter: drop-shadow(0 0 10px rgba(54,212,137,.28)); }
.portfolio-health-goose.score-mid { filter: drop-shadow(0 0 10px rgba(244,200,107,.24)); }
.portfolio-health-goose.score-bad { filter: drop-shadow(0 0 10px rgba(229,72,77,.22)); }
.shell-egg-icon { width: 46px; height: 46px; background-position: center; background-repeat: no-repeat; background-size: contain; transform: scale(1.18); transform-origin: center; }
.shell-egg-icon.fresh { width: 46px; height: 46px; background-image: url("assets/cash-egg-v18.png"); filter: drop-shadow(0 0 11px rgba(54,212,137,.32)); animation: cashEggPulse 2.2s ease-in-out infinite; }
.shell-egg-icon.cracked { background-image: url("assets/battle-egg-v18.png"); filter: saturate(.82) drop-shadow(0 0 8px rgba(228,173,54,.42)); }
.shell-egg-icon.broken { background-image: url("assets/zombie-egg-v18.png"); }
@keyframes cashEggPulse { 0%,100% { transform: translateY(0) scale(1.18); } 50% { transform: translateY(-2px) scale(1.23); } }
.status-dock .status-icon.pnl-icon,
.pnl-icon { width: 54px !important; min-width: 54px !important; max-width: 54px !important; height: 48px !important; min-height: 48px !important; max-height: 48px !important; flex: 0 0 54px !important; transform: none !important; background-image: url("assets/battle-egg-v18.png?v=26"); background-size: contain; background-position: center; background-repeat: no-repeat; filter: drop-shadow(0 4px 9px rgba(0,0,0,.25)); }
.status-dock .pnl-icon,
.top-status-dock .pnl-icon { display: inline-block; width: 54px !important; min-width: 54px !important; max-width: 54px !important; height: 48px !important; min-height: 48px !important; max-height: 48px !important; flex: 0 0 54px !important; }
.pnl-icon[role="button"] { cursor: pointer; }
.pnl-icon.up { filter: drop-shadow(0 0 10px rgba(54,212,137,.28)); }
.status-dock .pnl-icon.positive,
.top-status-dock .pnl-icon.positive,
.pnl-icon[data-pnl-state="positive"] { background-image: url("assets/battle-egg-v18.png?v=26") !important; filter: drop-shadow(0 0 10px rgba(244,200,107,.24)); }
.status-dock .pnl-icon.ultimate,
.top-status-dock .pnl-icon.ultimate,
.pnl-icon[data-pnl-state="ultimate"] { background-image: url("assets/egg-growth-icon-v20.png?v=26") !important; filter: drop-shadow(0 0 12px rgba(54,212,137,.32)); }
.status-dock .pnl-icon.down,
.top-status-dock .pnl-icon.down,
.pnl-icon[data-pnl-state="down"] { background-image: url("assets/rotten-egg-down-icon-v20.png?v=26") !important; filter: drop-shadow(0 0 10px rgba(229,72,77,.22)); }
body.foot-fetish-mode .timer-icon {
  background-image: url("assets/foot-mode-status-egg-timer-v49.png");
  background-size: contain;
  filter: drop-shadow(0 6px 12px rgba(255,178,207,.36));
}
body.foot-fetish-mode .nest-icon,
body.foot-fetish-mode .nest-icon.stage-1,
body.foot-fetish-mode .nest-icon.stage-2,
body.foot-fetish-mode .nest-icon.stage-3,
body.foot-fetish-mode .nest-icon.stage-4 {
  width: 58px;
  height: 48px;
  overflow: visible;
  background-image: url("assets/foot-mode-status-nest-builder-v49.png");
  background-position: center;
  background-size: contain;
  filter: drop-shadow(0 6px 12px rgba(255,178,207,.34));
}
body.foot-fetish-mode .status-dock,
body.foot-fetish-mode .nest-builder {
  overflow: visible;
}
body.foot-fetish-mode .nest-builder:has(.nest-icon:hover) {
  position: relative;
  z-index: 70;
}
body.foot-fetish-mode .yolk-icon,
body.foot-fetish-mode .yolk-icon.score-good,
body.foot-fetish-mode .yolk-icon.score-mid,
body.foot-fetish-mode .yolk-icon.score-bad,
body.foot-fetish-mode .yolk-icon.score-empty {
  width: 56px;
  height: 48px;
  border-radius: 10px;
  background-image: url("assets/foot-mode-status-yolk-score-v49.png");
  background-size: cover;
  filter: drop-shadow(0 6px 14px rgba(255,178,207,.34));
}
body.foot-fetish-mode .shell-egg-icon,
body.foot-fetish-mode .shell-egg-icon.fresh,
body.foot-fetish-mode .shell-egg-icon.cracked,
body.foot-fetish-mode .shell-egg-icon.broken {
  width: 50px;
  height: 50px;
  background-image: url("assets/foot-mode-status-shell-risk-v49.png");
  background-size: contain;
  transform: scale(1);
  filter: drop-shadow(0 6px 14px rgba(255,178,207,.38));
  animation: none;
}
body.foot-fetish-mode .status-dock .pnl-icon,
body.foot-fetish-mode .top-status-dock .pnl-icon,
body.foot-fetish-mode .pnl-icon,
body.foot-fetish-mode .pnl-icon[data-pnl-state="positive"],
body.foot-fetish-mode .pnl-icon[data-pnl-state="ultimate"],
body.foot-fetish-mode .pnl-icon[data-pnl-state="down"] {
  background-image: url("assets/foot-mode-status-realized-pnl-v49.png") !important;
  background-size: contain;
  filter: drop-shadow(0 6px 14px rgba(255,178,207,.36));
}
body.foot-fetish-mode .status-dock .timer-icon,
body.foot-fetish-mode .status-dock .nest-icon,
body.foot-fetish-mode .status-dock .yolk-icon,
body.foot-fetish-mode .status-dock .shell-egg-icon,
body.foot-fetish-mode .status-dock .pnl-icon {
  position: relative;
  z-index: 1;
  transform-origin: center;
  transition: transform .18s ease, filter .18s ease;
}
body.foot-fetish-mode .status-dock .timer-icon:hover,
body.foot-fetish-mode .status-dock .nest-icon:hover,
body.foot-fetish-mode .status-dock .yolk-icon:hover,
body.foot-fetish-mode .status-dock .shell-egg-icon:hover,
body.foot-fetish-mode .status-dock .pnl-icon:hover {
  z-index: 40;
  transform: scale(4) !important;
  filter: drop-shadow(0 18px 32px rgba(0,0,0,.34)) drop-shadow(0 0 18px rgba(255,178,207,.42));
}
.warn { color: var(--warn); }
.market-holiday-list .active { color: var(--gold); }
.market-holiday-list .active strong { color: var(--gold); }
.market-holiday-footnote { margin: 8px 0 0; color: var(--muted); font-size: 11px; line-height: 1.35; }
.audit-wrap { margin-top: 14px; }
.audit-wrap summary { cursor: pointer; font-weight: 900; color: var(--accent); padding: 10px 0; }
.audit { margin-top: 8px; padding: 10px; max-height: 260px; overflow: auto; font-family: ui-monospace, Consolas, monospace; font-size: 12px; white-space: pre-wrap; color: var(--muted); }
.system-footer { margin: 12px 0 0; color: var(--muted); font-size: 12px; text-align: left; }
.up { color: var(--accent); }
.down { color: var(--bad); }
.meta strong.up, .quote-tile strong.up { color: var(--accent); }
.meta strong.down, .quote-tile strong.down { color: var(--bad); }

.battle-overlay { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 24px; background: rgba(1, 8, 14, 0.58); backdrop-filter: blur(12px); }
.battle-overlay[hidden] { display: none; }
.battle-modal { width: min(1040px, calc(100vw - 40px)); max-height: calc(100vh - 44px); overflow: auto; border: 1px solid rgba(151, 172, 189, 0.34); border-radius: 18px; background: linear-gradient(150deg, rgba(20, 36, 49, 0.98), rgba(7, 19, 31, 0.98)); box-shadow: 0 26px 80px rgba(0, 0, 0, 0.58); }
.battle-head { display: flex; justify-content: space-between; gap: 18px; align-items: start; padding: 22px; border-bottom: 1px solid var(--line); }
.battle-title { display: flex; gap: 18px; align-items: center; }
.battle-title h2 { color: #ffe19b; font-size: 28px; }
.battle-title p { margin-top: 6px; color: var(--muted); line-height: 1.45; }
.cracked-egg, .battle-mascot { width: 94px; height: 94px; flex: 0 0 auto; background-size: contain; background-position: center; background-repeat: no-repeat; filter: drop-shadow(0 8px 18px rgba(244, 200, 107, 0.22)); }
.cracked-egg { background-image: url("assets/battle-egg-v18.png"); }
.battle-mascot { margin-left: auto; background-image: url("assets/zombie-egg-v18.png"); }
.icon-button { width: 36px; min-width: 36px; min-height: 36px; padding: 0; display: inline-grid; place-items: center; background: transparent; color: var(--muted); border: 1px solid var(--line); }
.icon-button:hover,
.icon-button:focus-visible {
  color: #fff;
  border-color: rgba(47,125,246,.66);
  box-shadow: 0 0 0 1px rgba(47,125,246,.18), 0 0 16px rgba(47,125,246,.16);
  outline: none;
  animation: tabBlueOrbit 1.9s linear infinite;
}
.battle-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(360px, 0.9fr); gap: 14px; padding: 16px 22px; }
.battle-panel { display: grid; gap: 12px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface-2); padding: 14px; }
.battle-panel h3 { display: flex; align-items: center; gap: 9px; font-size: 16px; }
.battle-panel h3 span { display: grid; place-items: center; width: 24px; height: 24px; border: 1px solid var(--gold); border-radius: 50%; color: var(--gold); }
.battle-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.battle-toggles { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.battle-toggles label { display: flex; align-items: center; justify-content: space-between; border: 1px solid var(--line); border-radius: 8px; padding: 9px 10px; background: rgba(255,255,255,0.03); color: var(--muted); font-size: 13px; font-weight: 650; }
.battle-switch { appearance: none; width: 36px; min-height: 20px; height: 20px; padding: 0; border: 1px solid var(--line); border-radius: 999px; background: #293744; position: relative; cursor: pointer; }
.battle-switch::after { content: ""; position: absolute; top: 2px; left: 2px; width: 14px; height: 14px; border-radius: 50%; background: #9aa9b5; transition: transform .18s ease, background .18s ease; }
.battle-switch:checked { background: rgba(54,212,137,.32); border-color: rgba(54,212,137,.62); }
.battle-switch:checked::after { transform: translateX(16px); background: var(--accent); }
.battle-switch:disabled { opacity: .7; cursor: default; }
.char-count { text-align: right; color: var(--muted); font-size: 12px; }
.plan-box, .question-box { white-space: pre-wrap; line-height: 1.55; border: 1px solid var(--line); border-radius: 12px; padding: 14px; background: rgba(255,255,255,0.04); color: var(--ink); }
.question-box { color: var(--muted); }
.live-dot { margin-left: auto; color: var(--accent); font-size: 12px; }
.live-dot.local-engine { color: var(--muted); }
.live-dot.ai-engine { color: var(--accent); }
.battle-progress { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.battle-progress span { display: flex; align-items: center; gap: 8px; border: 1px solid var(--line); border-radius: 8px; padding: 8px; color: var(--muted); background: rgba(255,255,255,0.04); }
.battle-progress span b { display: grid; place-items: center; width: 18px; height: 18px; border: 1px solid var(--line); border-radius: 5px; color: #2b1900; font-size: 12px; }
.battle-progress span.active { border-color: rgba(244,200,107,.58); color: var(--ink); animation: stagePulse 1s ease-in-out infinite; }
.battle-progress span.done { border-color: rgba(244,200,107,.48); color: var(--gold); }
.battle-progress span.done b { background: var(--gold); border-color: var(--gold); font-size: 0; }
.battle-progress span.done:not([data-battle-stage="strategy"]) b::before { content: "\2713"; font-size: 12px; font-weight: 950; }
.battle-progress span[data-battle-stage="strategy"].done b { width: 24px; height: 24px; border: 0; background: url("assets/logo-egg-v18.png") center / contain no-repeat; }
@keyframes stagePulse { 0%,100% { background: rgba(244,200,107,.04); } 50% { background: rgba(244,200,107,.13); } }
.battle-actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 16px 22px 22px; }
.battle-actions button { min-height: 44px; border-radius: 8px; padding: 0 12px; }
.battle-actions .button-art { width: 24px; height: 24px; }
.battle-review { display: grid; gap: 10px; }
.battle-review > section, .battle-review article { display: grid; gap: 5px; padding: 11px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); }
.battle-review > section span, .battle-review article small { color: var(--muted); font-size: 12px; }
.battle-review article p { color: var(--muted); line-height: 1.45; }
.battle-review article h3 { display: flex; justify-content: space-between; gap: 10px; color: var(--ink); }
.day-trader-modal { width: min(1220px, calc(100vw - 36px)); position: relative; }
.day-trader-head-actions { display: flex; align-items: center; justify-content: end; gap: 8px; flex-wrap: wrap; }
.day-trader-head-actions .quiet-button { min-height: 34px; color: var(--muted); background: var(--surface-2); border: 1px solid var(--line); }
.day-trader-head-actions .quiet-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.day-trader-loading { position: absolute; inset: 0; z-index: 6; display: grid; place-items: center; padding: 18px; background: rgba(7,19,29,.72); backdrop-filter: blur(6px); border-radius: inherit; }
.day-trader-loading[hidden] { display: none; }
.day-trader-loading-card { display: grid; justify-items: center; gap: 7px; width: min(330px, 100%); padding: 14px 16px; border: 1px solid rgba(47,125,246,.55); border-radius: 10px; background: rgba(10,27,42,.96); box-shadow: 0 0 0 1px rgba(47,125,246,.14), 0 0 32px rgba(47,125,246,.18); animation: tabBlueOrbit 1.9s linear infinite; text-align: center; }
.day-trader-loading-card strong { color: var(--ink); font-size: 14px; line-height: 1.2; }
.day-trader-loading-card small { color: var(--muted); font-size: 12px; line-height: 1.32; }
.day-trader-loading-egg { width: 46px; height: 46px; background: url("assets/equity-pl-strong.png") center / contain no-repeat; filter: drop-shadow(0 0 12px rgba(244,200,107,.35)); animation: eggGentlePulse 1.4s ease-in-out infinite; }
.day-trader-loading-progress { display: block; width: 100%; height: 6px; margin-top: 3px; border-radius: 999px; overflow: hidden; background: rgba(151,172,189,.16); box-shadow: inset 0 0 0 1px rgba(151,172,189,.08); }
.day-trader-loading-progress > span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--accent)); box-shadow: 0 0 10px rgba(47,125,246,.25); animation: dayTraderLoadingSweep 1.65s ease-in-out infinite; }
@keyframes dayTraderLoadingSweep { 0% { transform: translateX(-105%); } 55% { transform: translateX(72%); } 100% { transform: translateX(150%); } }
@keyframes eggGentlePulse {
  0%, 100% { transform: scale(1); opacity: .94; }
  50% { transform: scale(1.05); opacity: 1; }
}
.day-trader-shell { display: grid; gap: 12px; padding: 14px 22px 0; }
.day-trader-bias-card,
.day-trader-quick-check,
.day-trader-controls,
.day-trader-risk-panel,
.day-trader-detail-panel,
.day-trader-card { border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.day-trader-bias-card { display: grid; gap: 6px; padding: 12px; }
.day-trader-bias-card strong { display: flex; align-items: center; gap: 8px; color: var(--gold); font-size: 20px; }
.day-trader-bias-card strong b { color: var(--muted); font-size: 13px; }
.day-trader-bias-card p { color: var(--muted); line-height: 1.4; }
.day-trader-pulse-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: 8px; }
.day-pulse { display: grid; gap: 3px; min-height: 58px; padding: 9px 10px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.03); }
.day-pulse small { color: var(--muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.day-pulse strong { color: var(--ink); font-size: 13px; }
.day-pulse.ok { border-color: rgba(54,212,137,.36); }
.day-pulse.caution { border-color: rgba(244,200,107,.34); }
.day-pulse.risk { border-color: rgba(229,72,77,.36); }
.day-trader-quick-check { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 10px; padding: 12px; align-items: end; }
.day-trader-quick-check label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 850; }
.day-trader-quick-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.day-trader-quick-actions .quiet-button,
.day-trader-actions .quiet-button { color: var(--muted); background: var(--surface-2); border: 1px solid var(--line); }
.day-trader-quick-actions .quiet-button:hover,
.day-trader-actions .quiet-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.day-trader-quick-result { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 8px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.day-trader-quick-result span { border: 1px solid var(--line); border-radius: 999px; padding: 5px 8px; background: rgba(255,255,255,.03); }
.day-trader-controls { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px; }
.day-trader-date-toggle { width: min(330px, 100%); grid-template-columns: repeat(2, 1fr); }
.day-trader-list-tabs { display: flex; gap: 8px; overflow-x: auto; padding-bottom: 2px; }
.day-trader-list-tabs button { flex: 0 0 auto; min-height: 36px; color: var(--muted); background: var(--surface-2); border: 1px solid var(--line); font-size: 12px; }
.day-trader-list-tabs button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.day-trader-list-tabs button.active { color: #fff; background: var(--blue); border-color: rgba(47,125,246,.78); }
.day-trader-list-tabs button span { margin-left: 6px; color: inherit; opacity: .85; }
.day-trader-main { display: grid; grid-template-columns: minmax(0, 1fr) minmax(310px, .72fr); gap: 12px; align-items: stretch; }
.day-trader-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(245px, 1fr)); gap: 10px; align-self: stretch; max-height: min(86vh, 1040px); overflow: auto; padding-right: 4px; }
.day-trader-card { display: grid; gap: 8px; padding: 11px; text-align: left; cursor: pointer; }
.day-trader-card:hover,
.day-trader-card.active { border-color: rgba(47,125,246,.65); box-shadow: 0 0 0 1px rgba(47,125,246,.18), 0 0 24px rgba(47,125,246,.12); }
.day-trader-card header { display: flex; align-items: start; justify-content: space-between; gap: 8px; }
.day-trader-card header div { display: grid; gap: 2px; min-width: 0; }
.day-trader-card header strong { color: var(--ink); font-size: 18px; }
.day-trader-card header span,
.day-trader-card p { color: var(--muted); font-size: 12px; line-height: 1.35; }
.day-trader-card header b { display: grid; place-items: center; min-width: 44px; min-height: 38px; border-radius: 8px; background: var(--surface-3); color: var(--accent); }
.day-trader-badges { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.day-trader-badges span,
.day-warning { border: 1px solid var(--line); border-radius: 999px; padding: 4px 7px; color: var(--muted); font-size: 11px; font-weight: 850; background: rgba(255,255,255,.03); }
.day-trader-badges .positive,
.day-warning.ok { color: var(--accent); border-color: rgba(54,212,137,.38); }
.day-trader-badges .caution,
.day-warning.caution { color: var(--gold); border-color: rgba(244,200,107,.38); }
.day-trader-badges .risk,
.day-warning.risk { color: var(--bad); border-color: rgba(229,72,77,.38); }
.day-trader-detail-panel { display: grid; gap: 10px; padding: 13px; position: sticky; top: 10px; }
.day-trader-detail-panel h3 { color: var(--ink); font-size: 17px; font-weight: 750; }
.day-trader-detail-panel p { color: var(--muted); line-height: 1.45; }
.day-detail-score { display: flex; align-items: center; gap: 8px; }
.day-detail-score strong { color: var(--accent); font-size: 22px; }
.day-detail-score span { color: var(--muted); font-size: 12px; }
.day-trader-detail-panel dl { display: grid; gap: 7px; }
.day-trader-detail-panel dl div { display: grid; grid-template-columns: 118px minmax(0, 1fr); gap: 8px; border-bottom: 1px solid rgba(151,172,189,.16); padding-bottom: 7px; }
.day-trader-detail-panel dt { color: var(--muted); font-size: 12px; font-weight: 700; }
.day-trader-detail-panel dd { color: #b9c8d7; font-size: 13px; font-weight: 500; line-height: 1.42; }
.day-trader-detail-panel dd.positive { color: var(--accent); font-weight: 650; }
.day-trader-detail-panel dd.caution { color: var(--gold); font-weight: 650; }
.day-trader-detail-panel dd.risk { color: var(--bad); font-weight: 650; }
.day-trader-risk-panel { padding: 12px; }
.day-trader-risk-panel strong { color: var(--gold); }
.day-trader-risk-panel ul { margin: 8px 0 0 18px; color: var(--muted); line-height: 1.45; }
.day-trader-actions { grid-template-columns: minmax(0, 1fr); padding-top: 12px; }
@media (max-width: 920px) {
  .day-trader-quick-check { grid-template-columns: 1fr; }
  .day-trader-controls { align-items: stretch; flex-direction: column; }
  .day-trader-date-toggle { width: 100%; }
  .day-trader-main { grid-template-columns: 1fr; }
  .day-trader-detail-panel { position: static; }
}
.queue-card { border-color: rgba(244, 200, 107, 0.28) !important; min-height: 250px; overflow: visible; }
.queue-card .rail-lines { min-height: 180px; max-height: 420px; overflow-y: auto; padding-right: 4px; }
.queue-item { display: grid; gap: 7px; padding: 9px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-2); }
.queue-item > div:first-child { display: flex; justify-content: space-between; gap: 8px; }
.queue-item span, .queue-item small { color: var(--muted); }
.queue-workspace-head { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 12px; border: 1px solid rgba(244,200,107,.38); border-radius: 8px; background: rgba(244,200,107,.07); }
.queue-workspace-head > div:first-child { display: grid; gap: 4px; }
.queue-workspace-head strong { color: var(--gold); }
.queue-workspace-head span, .queue-source { color: var(--muted); font-size: 12px; }
.queue-batch-actions { display: flex; gap: 8px; flex: 0 0 auto; align-items: center; }
.queue-batch-actions button { min-height: 34px; }
.queue-totals { display: inline-grid; gap: 2px; align-content: center; min-height: 34px; color: #fff; font-size: 12px; line-height: 1.12; white-space: nowrap; }
.queue-totals strong { color: #fff; font-weight: 900; }
.queue-batch-actions button:not(.secondary) { color: #07131d !important; font-weight: 900; }
.queue-batch-actions button.secondary { color: #fff !important; font-weight: 850; }
.queue-actions { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(74px, 1fr)); gap: 6px !important; border: 0 !important; padding: 0 !important; }
.queue-actions button { min-height: 30px; padding: 0 7px; font-size: 11px; }
.danger-icon { border-color: rgba(229,72,77,.42) !important; color: #ff8a8a !important; }
.ticker-settings { grid-column: 1 / -1; }
.ticker-chip-list { display: flex; flex-wrap: wrap; gap: 7px; }
.ticker-chip { min-height: 30px; padding: 0 9px; background: var(--surface-3); color: var(--ink); border: 1px solid var(--line); }
.ticker-chip span { color: var(--bad); margin-left: 4px; }
.macro-note-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.profile-preview { display: flex; gap: 10px; align-items: center; color: var(--muted); font-size: 12px; }
.profile-preview span { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 50%; background-size: cover; background-position: center; border: 1px solid var(--line); box-shadow: var(--shadow); }
.bottom-tools { display: flex; gap: 8px; align-items: center; margin-top: 12px; }
.bottom-tools .bottom-tool-button:first-of-type { margin-left: auto; }
.bottom-tools #diagnosticsBtn { margin-left: auto; }
.bottom-tool-button { min-height: 34px; padding: 0 12px; background: var(--surface-2); color: var(--muted); border: 1px solid var(--line); font-size: 12px; font-weight: 780; }
.bottom-tool-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.footer-build-pill { display: inline-flex; align-items: center; min-height: 32px; border: 1px solid var(--line); border-radius: 8px; padding: 0 12px; font-size: 12px; font-weight: 850; text-transform: uppercase; white-space: nowrap; background: var(--surface-2); color: var(--muted); }
.footer-build-pill.production-pill { color: var(--accent); border-color: rgba(54,212,137,.45); background: rgba(54,212,137,.08); }
.footer-build-pill.version-pill { color: var(--muted); }
.portfolio-exporter-button { appearance: none; font-family: inherit; cursor: pointer; }
.portfolio-exporter-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.field-label { display: inline-flex; align-items: center; gap: 6px; width: fit-content; }
.stacked-label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 760; }
.robinhood-account-card select { width: 100%; min-height: 38px; }
.robinhood-account-card .small { line-height: 1.4; }
.bias-control-label { align-items: start; }
.bias-control-label .info-dot { margin-left: 0; }
.info-dot { position: relative; display: inline-grid; place-items: center; width: 15px; height: 15px; margin-left: 6px; border: 1px solid var(--blue); border-radius: 50%; color: var(--blue); font-size: 10px; font-style: normal; font-weight: 900; cursor: help; vertical-align: middle; }
.metric-info-dot { flex: 0 0 auto; width: 13px; height: 13px; margin-left: 0; font-size: 8px; }
[data-help] { position: relative; }
[data-help]:has(.info-dot:hover), [data-help]:has(.info-dot:focus) { z-index: 250; }
[data-help]:has(.info-dot:hover)::after, [data-help]:has(.info-dot:focus)::after { content: none; display: none; }
.floating-help-tooltip { position: fixed; z-index: 9999; max-width: min(320px, calc(100vw - 28px)); padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: #07131f; color: #edf7ff; box-shadow: 0 18px 42px rgba(0,0,0,.58); font-size: 12px; line-height: 1.45; font-weight: 650; pointer-events: none; text-transform: none; }
.floating-help-tooltip[hidden] { display: none; }
body.layout-editing [data-layout-id] { cursor: grab; outline: 2px dotted rgba(244, 200, 107, 0.92); outline-offset: -5px; box-shadow: inset 0 0 0 1px rgba(255, 143, 46, 0.32), 0 0 0 1px rgba(244, 200, 107, 0.12); }
body.layout-editing [data-layout-id].dragging { opacity: .58; transform: scale(.99); }
.panel-drag-handle { position: absolute; top: 8px; right: 8px; z-index: 5; display: inline-grid; place-items: center; min-height: 24px; padding: 0 8px; border: 1px dotted rgba(244,200,107,.82); border-radius: 999px; background: rgba(244,200,107,.14); color: var(--gold); font-size: 10px; font-weight: 900; text-transform: uppercase; cursor: grab; user-select: none; box-shadow: 0 0 12px rgba(244,200,107,.14); }
.account-strip .panel-drag-handle, .top-dashboard-block .panel-drag-handle { top: 5px; right: 5px; }
.layout-movable { position: relative; }
.background-settings, .ai-settings { grid-column: 1 / -1; }
.settings-top-panel { grid-column: 1 / -1; }
.settings-top-grid { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(240px, .82fr); gap: 14px; align-items: start; }
.settings-top-column { display: grid; gap: 8px; align-content: start; min-width: 0; }
.settings-top-column .small { margin: -2px 0 0; }
.settings-version-line { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin-top: 9px; padding-top: 9px; border-top: 1px solid rgba(102,133,157,.22); }
.settings-version-line span { color: var(--muted); font-size: 12px; font-weight: 650; }
.settings-version-line strong { color: var(--ink); font-size: 13px; font-weight: 650; letter-spacing: 0; overflow-wrap: anywhere; }
.settings-switch { display: flex; align-items: center; justify-content: space-between; }
.settings-switch input { width: 24px; min-height: 24px; }
.settings-soft section h3,
.settings-soft label,
.settings-soft .settings-switch {
  color: var(--muted);
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
}
.settings-soft section h3 { margin: 0 0 7px; color: var(--muted); }
.settings-soft p { color: var(--muted); font-weight: 500; }
.settings-soft select,
.settings-soft input,
.settings-soft textarea {
  color: var(--ink);
  font-size: 13px;
  font-weight: 650;
  letter-spacing: 0;
}
.settings-soft .small { color: var(--muted); font-size: 12px; font-weight: 500; }
@media (max-width: 760px) {
  .settings-top-grid { grid-template-columns: 1fr; }
}
.readonly-hidden { display: none !important; }
.frankie-panel { display: flex; gap: 18px; align-items: center; }
.frankie-bone-large { width: 112px; height: 64px; flex: 0 0 auto; background: url("assets/icon-bone.svg") center / contain no-repeat; }
.sort-bar { position: sticky; top: 0; z-index: 4; display: flex; gap: 8px; align-items: center; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.sort-bar > .sort-title { margin-right: auto; color: var(--muted); font-size: 12px; font-weight: 800; }
.sort-bar.has-sector-focus { position: sticky; }
.sort-bar.has-sector-focus > .sort-title { margin-right: 0; flex: 0 0 auto; }
.sort-sector-focus { display: inline-flex; align-items: center; justify-content: center; min-height: 30px; flex: 1 1 260px; max-width: min(420px, 42vw); margin-left: 12px; margin-right: 12px; padding: 3px 10px; border: 1px solid rgba(102,133,157,.24); border-radius: 8px; background: rgba(14,35,50,.62); color: #fff; font-size: 12px; font-weight: 650; line-height: 1.12; letter-spacing: 0; text-transform: none; white-space: normal; overflow-wrap: anywhere; text-align: center; pointer-events: none; }
.custom-order-pill { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 8px; border: 1px solid rgba(237,247,255,.34); border-radius: 999px; color: var(--ink); background: rgba(237,247,255,.05); font-size: 12px; font-weight: 780; animation: customOrderOrb 2.1s ease-in-out infinite; }
.custom-order-pill button { min-height: 20px; width: 20px; padding: 0; border-radius: 50%; font-size: 10px; color: #fff; background: rgba(229,72,77,.22); border-color: rgba(229,72,77,.48); }
@keyframes customOrderOrb {
  0%, 100% { box-shadow: 0 0 0 1px rgba(237,247,255,.12), 0 0 8px rgba(47,125,246,.08); }
  50% { box-shadow: 0 0 0 1px rgba(237,247,255,.26), 0 0 18px rgba(47,125,246,.22); }
}
.sort-bar.has-health > .sort-title { margin-right: 0; }
.sort-bar.has-health .holding-duration-sort { margin-left: auto; }
.sort-bar.has-health .portfolio-grade-pill { margin-left: 0; margin-right: auto; }
.sort-bar button { min-height: 30px; padding: 0 9px; background: var(--surface-3); color: var(--muted); border: 1px solid var(--line); font-size: 12px; font-weight: 780; }
.sort-bar button.active { color: #fff; border-color: rgba(47,125,246,.58); background: var(--blue); }
.sort-bar button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.sort-bar .expand-slate-button { color: var(--blue); border-color: rgba(47,125,246,.42); background: rgba(47,125,246,.09); }
.sort-bar .expand-slate-button:hover { color: #fff; border-color: rgba(47,125,246,.62); animation: tabBlueOrbit 1.9s linear infinite; }
.rank-horizon-toggle { display: inline-flex; gap: 6px; }
.holding-duration-control { display: inline-grid; grid-auto-flow: column; gap: 7px; align-items: center; min-height: 32px; color: var(--muted); font-size: 11px; font-weight: 650; line-height: 1.15; letter-spacing: 0; white-space: nowrap; }
.holding-duration-control span { color: var(--muted); font-size: 11px; font-weight: 650; }
.holding-duration-control select { min-height: 32px; max-width: 172px; padding: 0 30px 0 10px; border: 1px solid rgba(47,125,246,.42); border-radius: 8px; background: var(--surface-2); color: var(--ink); font-size: 12px; font-weight: 650; letter-spacing: 0; }
.holding-duration-control select:hover,
.holding-duration-control select:focus { border-color: rgba(47,125,246,.68); outline: none; animation: tabBlueOrbit 1.9s linear infinite; }
.holding-duration-holdings { margin-right: auto; }
.macro-note-actions .mini-action:hover,
.diagnostic-log-controls .auth-actions button:hover,
.ticker-universe-diagnostics .auth-actions button:hover,
.ai-settings .auth-actions button:hover,
.ai-settings > button.secondary:hover,
.export-actions button:hover,
.utility-header-button:hover,
.rh-selected-actions button:hover,
.utility-actions button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.9s linear infinite; }
.macro-note-actions .mini-action,
.diagnostic-log-controls .auth-actions button,
.ticker-universe-diagnostics .auth-actions button,
.ai-settings .auth-actions button,
.ai-settings > button.secondary,
.export-actions button,
.utility-header-button,
.rh-selected-actions button,
.utility-actions button { color: var(--muted) !important; border-color: var(--line) !important; animation: none !important; }
.macro-note-actions .mini-action,
.diagnostic-log-controls .auth-actions button,
.ticker-universe-diagnostics .auth-actions button,
.ai-settings .auth-actions button,
.ai-settings > button.secondary,
.utility-header-button,
.rh-selected-actions button {
  min-height: 34px;
  padding: 0 12px;
  background: var(--surface-2) !important;
  color: var(--muted) !important;
  border: 1px solid var(--line) !important;
  font-size: 12px;
  font-weight: 780;
  animation: none !important;
}
.macro-note-actions .mini-action:hover,
.diagnostic-log-controls .auth-actions button:hover,
.ticker-universe-diagnostics .auth-actions button:hover,
.ai-settings .auth-actions button:hover,
.ai-settings > button.secondary:hover,
.utility-header-button:hover,
.rh-selected-actions button:hover {
  color: #fff !important;
  background: var(--surface-2) !important;
  border-color: rgba(47,125,246,.55) !important;
  animation: tabBlueOrbit 1.9s linear infinite !important;
}
.queue-batch-actions button:not(.secondary) { color: #07131d !important; border-color: transparent !important; font-weight: 900; }
.queue-batch-actions button.live { color: #fff !important; }
.queue-batch-actions button.secondary { color: #fff !important; border-color: var(--line) !important; }
.queue-batch-actions button:not(.live):not(.secondary):hover:not(:disabled),
.queue-batch-actions button:not(.live):not(.secondary):focus-visible:not(:disabled) { filter: brightness(1.06); animation: tabGreenOrbit 1.8s linear infinite; }
.queue-batch-actions button.live:hover:not(:disabled),
.queue-batch-actions button.live:focus-visible:not(:disabled) { filter: brightness(1.07); animation: tabBlueOrbit 1.9s linear infinite; }
.queue-batch-actions button.secondary:hover:not(:disabled),
.queue-batch-actions button.secondary:focus-visible:not(:disabled) { color: #fff !important; border-color: rgba(47,125,246,.55) !important; animation: tabBlueOrbit 1.9s linear infinite; }
.collapsible-panel { position: relative; }
.panel-collapse-toggle { position: absolute; top: 8px; right: 8px; z-index: 8; display: inline-grid; place-items: center; width: 26px; min-height: 22px; padding: 0; border: 1px solid rgba(148,163,184,.32); border-radius: 7px; background: rgba(148,163,184,.08); color: var(--muted); font-size: 12px; font-weight: 900; line-height: 1; }
.panel-collapse-toggle:hover { color: #fff; border-color: rgba(148,163,184,.55); background: rgba(148,163,184,.16); }
.collapsible-panel.is-collapsed { min-height: 44px; }
.collapsible-panel.is-collapsed > :not(.rail-eyebrow):not(.panel-collapse-toggle):not(.panel-drag-handle) { display: none !important; }
.rh-list-inline-message { grid-column: 1 / -1; margin: 10px 0 0; padding: 8px 10px; border: 1px solid var(--line); border-radius: 8px; background: rgba(14,35,50,.64); color: var(--muted); font-size: 12px; font-weight: 750; }
.rh-list-inline-message.success { color: var(--accent); border-color: rgba(54,212,137,.4); background: rgba(54,212,137,.08); }
.rh-list-inline-message.error { color: var(--bad); border-color: rgba(229,72,77,.42); background: rgba(229,72,77,.08); }
.holdings-support-action.support-action-positive { color: var(--accent); }
.holdings-support-action.support-action-caution { color: var(--gold); }
.holdings-support-action.support-action-risk { color: var(--bad); }
.credential-set-state { margin: 4px 0; color: var(--muted); font-weight: 720; }
.credential-edit-fields { display: grid; gap: 10px; }
.credential-edit-fields[hidden] { display: none !important; }
.leveraged-lean { display: grid; gap: 4px; padding: 10px 12px; border: 1px solid rgba(244,200,107,.36); border-radius: 8px; background: rgba(244,200,107,.07); }
.leveraged-lean strong { color: var(--gold); }
.leveraged-lean span { color: var(--muted); line-height: 1.4; }
.leveraged-lean.clickable-lean { width: 100%; text-align: left; display: grid; gap: 6px; justify-items: stretch; min-height: 0; padding: 10px 14px; border: 1px solid rgba(244, 200, 107, .38); border-radius: 12px; background: rgba(244, 200, 107, .08); color: var(--ink); cursor: pointer; overflow: hidden; }
.leveraged-lean.clickable-lean:hover,
.leveraged-lean.clickable-lean:focus-visible { border-color: rgba(47, 125, 246, .72); box-shadow: 0 0 0 1px rgba(47, 125, 246, .24), 0 0 20px rgba(47, 125, 246, .18); }
.leveraged-lean-title { display: flex; align-items: center; justify-content: flex-start; gap: 10px; flex-wrap: wrap; min-width: 0; }
.leveraged-lean-title strong { color: var(--gold); font-size: 17px; line-height: 1.12; }
.leveraged-lean-title b { display: inline-flex; align-items: center; min-height: 26px; padding: 0 10px; border-radius: 999px; background: rgba(47, 125, 246, .16); border: 1px solid rgba(47, 125, 246, .42); color: var(--blue); font-size: 12px; font-weight: 900; }
.leveraged-lean.long .leveraged-lean-title b { background: rgba(54, 212, 137, .12); border-color: rgba(54, 212, 137, .42); color: var(--accent); }
.leveraged-lean.short .leveraged-lean-title b { background: rgba(229, 72, 77, .12); border-color: rgba(229, 72, 77, .42); color: var(--bad); }
.leveraged-lean.wait .leveraged-lean-title b { background: rgba(244, 200, 107, .12); border-color: rgba(244, 200, 107, .42); color: var(--gold); }
.leveraged-lean-read { display: block; max-width: 100%; color: var(--muted); font-size: 13px; font-weight: 650; line-height: 1.35; overflow-wrap: anywhere; }
.leveraged-lean-read strong { color: var(--ink); font-size: 11px; text-transform: uppercase; letter-spacing: 0; font-weight: 760; margin-right: 6px; }
.leveraged-lean-read span { color: var(--muted); font-size: 13px; font-weight: 650; }
.leveraged-lean small { color: var(--muted); font-size: 12px; }
.leveraged-trade-read-wrap {
  position: relative;
  z-index: 8;
  isolation: isolate;
  contain: none;
  content-visibility: visible;
  display: block !important;
  clear: both;
  width: 100%;
  margin: 10px 0 16px;
  overflow: visible !important;
  min-height: 104px;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto;
}
.leveraged-trade-read-banner {
  appearance: none;
  -webkit-appearance: none;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 104px;
  height: auto !important;
  max-height: none !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 520px);
  align-items: stretch !important;
  gap: 14px;
  padding: 12px 14px;
  margin: 0;
  border: 1px solid rgba(244, 200, 107, .44);
  border-radius: 14px;
  background: linear-gradient(90deg, rgba(244, 200, 107, .10), rgba(13, 29, 42, .88) 72%), var(--surface, #0b1824);
  color: var(--ink, #e8f0f8);
  text-align: left;
  line-height: 1.35;
  white-space: normal !important;
  overflow: visible !important;
  cursor: pointer;
  font: inherit;
  position: relative;
  z-index: 9;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none;
}
.leveraged-trade-read-banner *,
.leveraged-trade-read-banner *::before,
.leveraged-trade-read-banner *::after { box-sizing: border-box; }
.leveraged-trade-read-banner:hover,
.leveraged-trade-read-banner:focus-visible { border-color: rgba(47, 125, 246, .72); box-shadow: 0 0 0 1px rgba(47, 125, 246, .22), 0 0 18px rgba(47, 125, 246, .16); outline: none; }
.leveraged-trade-read-main { min-width: 0; display: grid; align-content: center; gap: 6px; overflow: visible; }
.leveraged-trade-read-title { min-width: 0; display: flex; align-items: center; gap: 9px; flex-wrap: wrap; overflow: visible; white-space: normal; }
.leveraged-trade-read-kicker { color: var(--muted, #9fb0c1); text-transform: uppercase; letter-spacing: .065em; font-size: 10px; font-weight: 850; }
.leveraged-trade-read-title strong { color: var(--gold, #f4c86b); font-size: clamp(17px, 1.22vw, 22px); line-height: 1.08; font-weight: 950; white-space: normal; }
.leveraged-trade-read-title b { display: inline-flex; align-items: center; min-height: 24px; max-width: 100%; padding: 0 10px; border-radius: 999px; border: 1px solid rgba(54, 212, 137, .48); background: rgba(54, 212, 137, .12); color: var(--accent, #35d889); font-size: 12px; line-height: 1; font-weight: 900; white-space: nowrap; }
.leveraged-trade-read-banner.short .leveraged-trade-read-title b,
.leveraged-trade-read-banner.hedge .leveraged-trade-read-title b { border-color: rgba(229, 72, 77, .48); background: rgba(229, 72, 77, .12); color: var(--bad, #e5484d); }
.leveraged-trade-read-banner.wait .leveraged-trade-read-title b,
.leveraged-trade-read-banner.mixed .leveraged-trade-read-title b,
.leveraged-trade-read-banner.none .leveraged-trade-read-title b { border-color: rgba(244, 200, 107, .48); background: rgba(244, 200, 107, .12); color: var(--gold, #f4c86b); }
.leveraged-trade-read-copy { display: block; margin: 0; max-width: 100%; color: var(--muted, #9fb0c1); font-size: 13px; line-height: 1.42; font-weight: 650; white-space: normal; overflow: visible; }
@supports (-webkit-line-clamp: 2) {
  .leveraged-trade-read-copy { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
}
.leveraged-trade-read-metrics { min-width: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; gap: 9px; overflow: visible; }
.leveraged-trade-read-metric { min-width: 0; min-height: 68px; display: grid; align-content: center; gap: 4px; padding: 9px 10px; border: 1px solid var(--line, rgba(148, 163, 184, .22)); border-radius: 12px; background: rgba(8, 23, 37, .72); overflow: hidden; }
.leveraged-trade-read-metric em { color: var(--muted, #9fb0c1); text-transform: uppercase; font-style: normal; letter-spacing: .035em; font-size: 10px; line-height: 1.1; font-weight: 850; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.leveraged-trade-read-metric strong { color: var(--ink, #e8f0f8); font-size: clamp(22px, 1.65vw, 32px); line-height: .95; font-weight: 950; }
.leveraged-trade-read-metric small { min-width: 0; color: var(--muted, #9fb0c1); font-size: 11px; line-height: 1.2; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.utility-modal:has(.leveraged-lens-modal) { width: min(1380px, calc(100vw - 28px)); }
.leveraged-lens-modal { display: grid; gap: 16px; }
.leveraged-lens-hero { display: grid; grid-template-columns: minmax(0, 2.7fr) repeat(3, minmax(96px, .44fr)); gap: 12px; }
.leveraged-lens-score-card,
.leveraged-lens-section { border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); padding: 14px; }
.leveraged-lens-score-card { display: grid; gap: 6px; align-content: start; }
.leveraged-lens-score-card span,
.leveraged-lens-section h3 { color: var(--muted); font-size: 12px; text-transform: uppercase; }
.leveraged-lens-score-card strong { color: var(--ink); font-size: 22px; }
.leveraged-lens-score-card.hero-read { text-align: left; justify-items: start; align-content: center; min-height: 128px; }
.leveraged-lens-score-card.hero-read strong { color: var(--gold); font-size: 21px; }
.leveraged-lens-score-card p { margin: 0; color: var(--muted); line-height: 1.5; }
.leveraged-lens-score-card.hero-read p { max-width: none; font-size: 14px; }
.leveraged-lens-side-tabs { display: flex; gap: 8px; flex-wrap: wrap; }
.leveraged-lens-side-tabs button { min-height: 34px; padding: 0 12px; border-radius: 8px; border: 1px solid var(--line); background: var(--surface-2); color: var(--muted); font-size: 12px; font-weight: 800; }
.leveraged-lens-side-tabs button.active { background: var(--blue); border-color: var(--blue); color: #fff; }
.leveraged-lens-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.leveraged-lens-table th,
.leveraged-lens-table td { border-bottom: 1px solid var(--line); padding: 8px; vertical-align: top; word-break: normal; overflow-wrap: anywhere; }
.leveraged-lens-table th { color: var(--muted); font-size: 11px; text-align: left; text-transform: uppercase; }
.leveraged-lens-table .lens-col-symbol { width: 12%; }
.leveraged-lens-table .lens-col-underlying { width: 9%; }
.leveraged-lens-table .lens-col-price { width: 9%; }
.leveraged-lens-table .lens-col-type { width: 9%; }
.leveraged-lens-table .lens-col-score { width: 8%; }
.leveraged-lens-table .lens-col-support { width: 8%; }
.leveraged-lens-table .lens-col-spread { width: 7%; }
.leveraged-lens-table .lens-col-volume { width: 7%; }
.leveraged-lens-table .lens-col-why { width: 31%; }
.leveraged-lens-checklist { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.leveraged-lens-checklist div { border: 1px solid var(--line); border-radius: 10px; padding: 12px; background: rgba(255,255,255,.02); }
.leveraged-lens-checklist ul { margin: 8px 0 0; padding-left: 18px; color: var(--muted); line-height: 1.45; }
@media (max-width: 1320px) {
  .leveraged-trade-read-banner { grid-template-columns: 1fr; }
  .leveraged-trade-read-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .leveraged-trade-read-wrap { min-height: 0; }
  .leveraged-trade-read-banner { min-height: 0; padding: 12px; }
  .leveraged-trade-read-metrics { grid-template-columns: 1fr; }
  .leveraged-trade-read-copy { -webkit-line-clamp: 3; }
}
.clickable-card { cursor: pointer; }
.clickable-card:hover { border-color: rgba(47,125,246,.55); }
.news-link { width: 100%; min-height: 0; padding: 4px 0; text-align: left; background: transparent; color: var(--muted); font-weight: 500; line-height: 1.45; }
.news-link .risk { font-weight: 850; }
.calendar-tabs { display: flex; gap: 8px; }
.calendar-tabs button { min-height: 36px; padding: 0 14px; border-radius: 8px; background: var(--surface-2); color: var(--muted); border: 1px solid var(--line); font-weight: 850; }
.calendar-tabs button.active { background: var(--blue); color: #fff; }
.calendar-impact-legend { display: flex; flex-wrap: wrap; gap: 7px; align-items: center; margin: 6px 0 10px; }
.calendar-impact-legend span { display: inline-flex; min-height: 22px; align-items: center; padding: 2px 8px; border-radius: 999px; border: 1px solid rgba(148,163,184,.28); color: var(--muted); font-size: 11px; font-weight: 800; }
.calendar-impact-legend .critical { color: #ffd6d6; border-color: rgba(255,82,82,.62); background: rgba(255,82,82,.16); }
.calendar-impact-legend .high { color: var(--gold); border-color: rgba(244,200,107,.45); background: rgba(244,200,107,.10); }
.calendar-impact-legend .medium { color: #cfe8ff; border-color: rgba(47,125,246,.38); background: rgba(47,125,246,.10); }
.calendar-impact-legend .low { color: var(--muted); }
.calendar-view[hidden] { display: none !important; }
.calendar-grid { display: grid; grid-template-columns: repeat(7, minmax(100px, 1fr)); gap: 7px; overflow-x: auto; }
.utility-modal:has(.government-calendar-grid) { width: min(1500px, calc(100vw - 28px)); }
.government-calendar-grid { grid-template-columns: repeat(7, minmax(178px, 1fr)); gap: 10px; padding-bottom: 4px; }
.calendar-day { min-height: 132px; align-content: start; }
.calendar-day > strong { color: var(--blue); }
.calendar-day .calendar-date { color: var(--ink); font-size: 18px; }
.calendar-event { display: grid; gap: 2px; padding-top: 6px; border-top: 1px solid var(--line); }
.calendar-event b { color: var(--ink); }
.calendar-event-heading { display: flex; align-items: center; justify-content: space-between; gap: 6px; min-width: 0; }
.calendar-event-severity {
  flex: 0 0 auto; border: 1px solid rgba(148,163,184,.28); border-radius: 999px; padding: 1px 5px;
  color: var(--muted); font-size: 9px; font-style: normal; font-weight: 800; line-height: 1.5; text-transform: uppercase;
}
.calendar-event.critical .calendar-event-severity { color: #ffd6d6; border-color: rgba(255,82,82,.62); background: rgba(255,82,82,.16); }
.calendar-event.high .calendar-event-severity { color: var(--gold); border-color: rgba(244,200,107,.45); background: rgba(244,200,107,.10); }
.calendar-event.medium .calendar-event-severity { color: #cfe8ff; border-color: rgba(47,125,246,.38); background: rgba(47,125,246,.10); }
.calendar-event-government { gap: 3px; }
.calendar-event-government small { font-size: 13px; line-height: 1.36; }
.calendar-event-government .calendar-event-time { color: var(--ink); font-weight: 750; }
.calendar-event-government .calendar-event-impact { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
.macro-field-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; }
.macro-field-head > span { display: inline-flex; align-items: center; gap: 5px; min-width: 0; }
.auto-lens-label { color: var(--blue); font-size: 10px; font-weight: 750; white-space: nowrap; text-transform: none; }
.calendar-grid article, .news-detail { display: grid; gap: 8px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); }
.news-detail section { display: grid; gap: 4px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); }
.news-detail section strong { color: var(--ink); }
.calendar-grid span, .calendar-note, .news-detail p, .news-detail small { color: var(--muted); line-height: 1.45; }
.news-detail-meta { display: block; margin-top: -2px; color: var(--muted); font-weight: 650; }
.news-detail-tags { display: flex; flex-wrap: wrap; gap: 6px; }
.news-detail-tags span, .news-center-tags span { display: inline-flex; align-items: center; min-height: 20px; padding: 2px 7px; border: 1px solid rgba(47,125,246,.35); border-radius: 999px; color: var(--ink); background: rgba(47,125,246,.12); font-size: .78rem; font-weight: 750; }
.news-detail-tags span.critical, .news-center-tags span.critical, .calendar-event.critical b { color: #ffd6d6; border-color: rgba(255,82,82,.62); background: rgba(255,82,82,.16); animation: criticalPulse 1.4s ease-in-out infinite alternate; }
@keyframes criticalPulse { from { box-shadow: 0 0 0 rgba(255,82,82,0); } to { box-shadow: 0 0 14px rgba(255,82,82,.28); } }
@media (max-width: 1180px) {
  .government-calendar-grid { grid-template-columns: repeat(7, minmax(160px, 1fr)); }
}
@media (max-width: 760px) {
  .government-calendar-grid { grid-template-columns: repeat(7, minmax(146px, 1fr)); gap: 8px; }
  .calendar-event-government small { font-size: 12px; }
}
.news-engine-section { padding: 0 !important; }
.news-engine-details { display: grid; gap: 8px; padding: 10px; }
.news-engine-details summary { cursor: pointer; color: var(--ink); font-weight: 900; list-style-position: inside; }
.news-engine-details:not([open]) { gap: 0; }
.news-engine-effects { margin: 0; padding-left: 18px; color: var(--muted); line-height: 1.45; }
.deep-scan { display: grid; gap: 12px; }
.deep-scan-hero, .deep-scan-card { border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.deep-scan-hero { display: flex; justify-content: space-between; gap: 16px; align-items: center; padding: 14px; border-color: rgba(244,200,107,.28); }
.deep-scan-hero span { color: var(--gold); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.deep-scan-hero strong { display: block; margin-top: 4px; color: var(--ink); font-size: 20px; }
.deep-scan-hero p, .deep-scan-card p, .deep-scan-card li { color: var(--muted); line-height: 1.45; }
.deep-scan-hero b { min-width: 76px; text-align: center; color: var(--accent); border: 1px solid rgba(54,212,137,.35); border-radius: 999px; padding: 8px 10px; background: rgba(54,212,137,.08); }
.deep-scan-hero.warning { border-color: rgba(229,72,77,.38); }
.deep-scan-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; align-items: start; }
.deep-scan-card { padding: 12px; }
.deep-scan-card h3 { margin-bottom: 6px; color: var(--blue); font-size: 13px; text-transform: uppercase; }
.deep-scan-card ul { margin: 0; padding-left: 18px; }
.full-analysis-hero { border-color: rgba(47,125,246,.36); }
.full-analysis-profile-card { border-color: rgba(47,125,246,.28); background: rgba(47,125,246,.055); }
.full-analysis-profile-block { display: grid; gap: 8px; }
.full-analysis-profile-block p { margin: 0; color: var(--muted); line-height: 1.5; }
.full-analysis-profile-holdings { font-size: 12px; }
.full-analysis-profile-holdings strong { color: var(--ink); }
.full-analysis-pills { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.full-analysis-pills span { display: inline-flex; align-items: center; min-height: 22px; padding: 2px 8px; border: 1px solid rgba(47,125,246,.34); border-radius: 999px; color: var(--ink); background: rgba(47,125,246,.08); font-size: 11px; font-weight: 760; text-transform: none; }
.full-analysis-collapsible { transition: padding .16s ease, border-color .16s ease, background-color .16s ease; }
.full-analysis-section-header { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 7px; }
.full-analysis-section-title { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; min-width: 0; }
.full-analysis-section-header h3 { margin: 0; min-width: 0; }
.full-analysis-collapse-toggle { display: inline-grid; place-items: center; width: 26px; min-width: 26px; min-height: 22px; padding: 0; border: 1px solid rgba(148,163,184,.32); border-radius: 7px; background: rgba(148,163,184,.08); color: var(--muted); font-size: 12px; font-weight: 900; line-height: 1; }
.full-analysis-collapse-toggle:hover,
.full-analysis-collapse-toggle:focus-visible { color: #fff; border-color: rgba(47,125,246,.55); background: rgba(47,125,246,.14); animation: tabBlueOrbit 1.8s linear infinite; }
.full-analysis-collapsible.is-collapsed { padding-block: 9px; }
.full-analysis-collapsible.is-collapsed .full-analysis-section-header { margin-bottom: 0; }
.full-analysis-collapsible.is-collapsed .full-analysis-section-body { display: none; }
.full-analysis-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); gap: 7px; margin: 0; }
.full-analysis-metrics div { display: grid; gap: 3px; padding: 7px 8px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); min-width: 0; }
.full-analysis-metrics dt { color: var(--muted); font-size: 10px; font-weight: 760; text-transform: uppercase; line-height: 1.2; }
.full-analysis-metrics dd { margin: 0; color: var(--ink); font-size: 12px; font-weight: 780; line-height: 1.25; overflow-wrap: anywhere; }
.full-analysis-metrics dd.up, .full-analysis-metrics dd.support-action-positive { color: var(--accent); }
.full-analysis-metrics dd.down, .full-analysis-metrics dd.support-action-risk { color: var(--bad); }
.full-analysis-metrics dd.support-action-caution { color: var(--gold); }
.full-analysis-movement-card { border-color: rgba(47,125,246,.32); background: linear-gradient(180deg, rgba(47,125,246,.08), rgba(7,19,31,.72)); }
.full-analysis-movement-badge { min-height: 24px; display: inline-flex; align-items: center; padding: 0 8px; border: 1px solid rgba(126,153,176,.38); border-radius: 999px; color: var(--muted); background: rgba(126,153,176,.07); font-size: 10px; font-weight: 900; line-height: 1; white-space: nowrap; text-transform: none; }
.full-analysis-movement-badge.movement-up { color: var(--accent); border-color: rgba(54,212,137,.52); background: rgba(54,212,137,.09); animation: tabGreenOrbit 1.8s linear infinite; }
.full-analysis-movement-badge.movement-down { color: #ff837d; border-color: rgba(229,72,77,.52); background: rgba(229,72,77,.10); animation: favoriteRedOrbit 1.8s linear infinite; }
.full-analysis-movement-badge.movement-neutral { color: var(--gold); border-color: rgba(244,200,107,.48); background: rgba(244,200,107,.08); animation: assetDetailBreath 2.6s ease-in-out infinite; }
.full-analysis-why-ranked-card { border-color: rgba(244,200,107,.24); }
.full-analysis-narrative { display: grid; gap: 8px; }
.full-analysis-narrative p { margin: 0; color: var(--muted); line-height: 1.48; overflow-wrap: anywhere; }
.full-analysis-news-card { border-color: rgba(47,125,246,.28); }
.full-analysis-news-status { margin: 0 0 8px; color: var(--muted); font-size: 12px; font-weight: 700; }
.full-analysis-news-status.warning { color: var(--gold); }
.full-analysis-news-list { display: grid; gap: 8px; }
.full-analysis-news-row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 10px; align-items: start; padding: 8px 9px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); }
.full-analysis-news-row > div { display: grid; gap: 4px; min-width: 0; }
.full-analysis-news-row a, .full-analysis-news-row strong { color: var(--ink); font-weight: 820; line-height: 1.25; text-decoration: none; overflow-wrap: anywhere; }
.full-analysis-news-row a:hover { color: var(--blue); text-decoration: underline; }
.full-analysis-news-row small { color: var(--muted); font-size: 11px; font-weight: 650; }
.full-analysis-news-row p { margin: 0; color: var(--muted); line-height: 1.35; overflow-wrap: anywhere; }
.deep-risk { border-color: rgba(229,72,77,.26); }
.order-detail-grid { display: grid; gap: 10px; }
.order-row { display: grid; grid-template-columns: minmax(80px, .55fr) minmax(110px, .7fr) repeat(4, minmax(80px, 1fr)) auto; gap: 8px; align-items: center; padding: 10px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-2); }
.order-row span { color: var(--muted); font-size: 12px; }
.order-row strong { color: var(--ink); }
.history-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.history-actions button { min-height: 32px; padding: 0 10px; background: var(--surface-2); color: var(--muted); border: 1px solid var(--line); }
.help-credit { grid-column: 1 / -1; display: grid; grid-template-columns: 90px 1fr; align-items: center; }
.help-zombie { grid-row: 1 / span 2; width: 80px; height: 80px; background: url("assets/zombie-egg-v18.png") center / contain no-repeat; }
.holdings-total { padding-top: 7px; color: var(--accent); }
.holdings-summary,
.holdings-grand-total { display: grid; grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)); gap: 5px; margin: 0 0 6px; }
.holdings-summary div, .holding-row, .holdings-grand-total div { border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); }
.holdings-summary div, .holdings-grand-total div { display: grid; gap: 2px; padding: 6px 8px; }
.holdings-summary span, .holdings-grand-total span, .holding-row dt, .holding-row summary { color: var(--muted); font-size: 11px; font-weight: 650; line-height: 1.25; }
.holdings-summary strong, .holdings-grand-total strong, .holding-row dd { color: var(--ink); font-weight: 760; line-height: 1.25; }
.holdings-detail-list { display: grid; gap: 5px; }
.holdings-report { color: var(--ink); background: transparent; border: 0; border-radius: 0; padding: 0; box-shadow: none; font-size: 12px; line-height: 1.24; }
.holdings-report > header { display: flex; justify-content: flex-start; gap: 9px; align-items: center; border: 1px solid var(--line); border-radius: 10px; padding: 8px 10px; margin-bottom: 7px; background: var(--surface-2); color: var(--ink); }
.holdings-report > header h2 { color: var(--gold); font-size: 16px; line-height: 1.12; margin: 0 0 2px; }
.holdings-report > header p { color: var(--muted); margin: 0; font-size: 12px; line-height: 1.25; }
.holdings-header-actions { margin-left: auto; display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.holdings-header-actions .holdings-eggfolio-link { margin-left: 0; min-width: 86px; }
.holding-row { display: grid; grid-template-columns: minmax(66px, .5fr) repeat(10, minmax(0, 1fr)); gap: 4px; align-items: stretch; padding: 5px 7px; }
.holding-row > header { display: grid; align-content: center; justify-items: start; gap: 2px; border: 1px solid var(--line); border-radius: 7px; padding: 5px 7px; min-height: 36px; background: rgba(255,255,255,.035); overflow: hidden; }
.holding-row > header strong { color: var(--gold); font-size: 14px; line-height: 1.12; letter-spacing: 0; }
.holding-row > header small { display: none; }
.holding-row.pending-order-row > header strong { color: var(--bad); }
.holding-row dl { display: contents; margin: 0; }
.holding-row dl div { display: grid; align-content: center; min-width: 0; border: 1px solid var(--line); border-radius: 7px; padding: 5px 7px; background: rgba(255,255,255,.03); min-height: 36px; }
.holding-row dd { margin: 1px 0 0; font-size: 12px; }
.holding-row dd.holding-alert-value { color: var(--bad); }
.holdings-grand-total { margin: 8px 0 0; }
.holdings-improvement-note { margin-top: 8px; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.03); padding: 9px 10px; color: var(--muted); }
.holdings-improvement-note h3 { margin: 0 0 5px; color: var(--ink); font-size: 13px; line-height: 1.2; }
.holdings-improvement-note ol { margin: 0; padding-left: 20px; color: var(--muted); font-size: 12px; line-height: 1.45; }
.holdings-improvement-note li + li { margin-top: 4px; }
.holding-row pre { max-height: 220px; overflow: auto; margin-top: 8px; border: 1px solid var(--line); border-radius: 8px; padding: 10px; background: rgba(0,0,0,.18); color: var(--muted); font-size: 11px; white-space: pre-wrap; }
.holdings-export-actions button {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--surface-2);
  color: var(--muted);
  font-weight: 720;
  letter-spacing: 0;
}
.holdings-export-actions button:hover {
  color: #fff;
  border-color: rgba(47,125,246,.55);
  animation: tabBlueOrbit 1.9s linear infinite;
}

@media (max-width: 900px) {
  .holding-row { grid-template-columns: repeat(auto-fit, minmax(108px, 1fr)); }
}

@media (prefers-reduced-motion: no-preference) {
  .header-refresh.stale { animation: refreshNudge 2.8s ease-in-out infinite; }
  @keyframes refreshNudge { 0%, 88%, 100% { transform: translateX(0); } 91% { transform: translateX(-2px); } 94% { transform: translateX(2px); } 97% { transform: translateX(-1px); } }
}

@media (max-width: 1180px) {
  h1 { grid-template-columns: auto minmax(235px, 1fr); }
  .env-stack { grid-column: 2; justify-self: start; justify-items: start; }
  .env-row { justify-content: flex-start; flex-wrap: wrap; }
}

.utility-overlay { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 24px; background: rgba(1, 8, 14, 0.62); backdrop-filter: blur(12px); }
.has-expanded-slate-tray .utility-overlay { padding-bottom: 96px; }
.utility-overlay[hidden] { display: none; }
.utility-modal { width: min(900px, calc(100vw - 40px)); max-height: calc(100vh - 44px); overflow: auto; border: 1px solid var(--line); border-radius: 16px; background: var(--surface); box-shadow: var(--shadow); }
.utility-modal:has(.casino-shell) { width: min(1160px, calc(100vw - 40px)); }
.utility-modal:has(.holdings-report) { width: min(1480px, calc(100vw - 24px)); }
.utility-modal:has(.robinhood-list-manager) { width: min(1320px, calc(100vw - 18px)); }
.utility-modal:has(.portfolio-exporter) { width: min(1220px, calc(100vw - 24px)); }
.utility-modal:has(.expanded-slate-modal) { width: min(1560px, calc(100vw - 20px)); max-height: calc(100vh - 24px); }
.utility-modal header { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 16px; border-bottom: 1px solid var(--line); }
.utility-modal header h2 { flex: 1 1 auto; min-width: 0; }
.utility-header-actions { display: inline-flex; align-items: center; justify-content: flex-end; gap: 8px; margin-left: auto; }
.expanded-slate-window-minimize { font-size: 22px; line-height: 1; font-weight: 900; }
.utility-body { display: grid; gap: 14px; padding: 16px; }
.utility-body textarea { min-height: 280px; }
.utility-body pre { overflow: auto; white-space: pre-wrap; border: 1px solid var(--line); border-radius: 10px; padding: 12px; background: var(--surface-2); color: var(--muted); }
.portfolio-health-breakdown { display: grid; gap: 14px; }
.portfolio-health-breakdown-hero { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(220px, .6fr); gap: 12px; align-items: stretch; }
.portfolio-health-breakdown-hero > div,
.portfolio-health-lens-card,
.portfolio-health-position-row { border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); padding: 14px; }
.portfolio-health-breakdown-hero span,
.portfolio-health-lens-card span { display: block; color: var(--muted); font-size: 11px; font-weight: 820; text-transform: uppercase; letter-spacing: .02em; }
.portfolio-health-breakdown-hero strong { display: block; margin: 4px 0 6px; font-size: 24px; line-height: 1.1; }
.portfolio-health-breakdown-hero strong.up { color: var(--accent); }
.portfolio-health-breakdown-hero strong.warn { color: var(--gold); }
.portfolio-health-breakdown-hero strong.down { color: var(--bad); }
.portfolio-health-breakdown-hero p,
.portfolio-health-note,
.portfolio-health-position-row p { color: var(--muted); margin: 0; line-height: 1.45; }
.portfolio-health-lens-card { display: grid; align-content: center; gap: 6px; }
.portfolio-health-lens-card strong { font-size: 15px; color: var(--ink); }
.portfolio-health-position-list { display: grid; gap: 10px; }
.portfolio-health-position-row { display: grid; gap: 10px; }
.portfolio-health-position-row > div:first-child { display: flex; align-items: baseline; gap: 10px; }
.portfolio-health-position-row > div:first-child strong { font-size: 18px; color: var(--ink); }
.portfolio-health-position-row > div:first-child span { color: var(--muted); font-size: 12px; }
.portfolio-health-position-row dl { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin: 0; }
.portfolio-health-position-row dl div { border: 1px solid var(--line); border-radius: 8px; padding: 8px; background: rgba(255,255,255,.025); }
.portfolio-health-position-row dt { color: var(--muted); font-size: 11px; font-weight: 800; }
.portfolio-health-position-row dd { margin: 3px 0 0; color: var(--ink); font-weight: 850; }
.portfolio-exporter { position: relative; display: grid; gap: 14px; }
.portfolio-export-subtitle { margin: 0; color: var(--muted); line-height: 1.45; }
.portfolio-exporter-controls,
.portfolio-export-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.portfolio-exporter-controls button,
.portfolio-export-actions button { min-height: 34px; padding: 0 12px; font-size: 12px; font-weight: 720; letter-spacing: 0; text-shadow: none; }
.portfolio-exporter-controls button.secondary,
.portfolio-export-actions button.secondary { color: var(--muted); background: var(--surface-2); transition: color .18s ease, background-color .18s ease, border-color .18s ease, box-shadow .18s ease; }
.portfolio-exporter-controls button.secondary:hover,
.portfolio-exporter-controls button.secondary:focus-visible,
.portfolio-export-actions button.secondary:hover,
.portfolio-export-actions button.secondary:focus-visible { border-color: rgba(47,125,246,.58); background: rgba(47,125,246,.12); color: #fff; box-shadow: 0 0 0 1px rgba(47,125,246,.12), 0 0 18px rgba(47,125,246,.16); animation: tabBlueOrbit 1.9s linear infinite; }
.portfolio-exporter-controls .manual-add-status { margin-left: auto; }
.portfolio-export-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.portfolio-export-group { display: grid; align-content: start; gap: 7px; min-width: 0; border: 1px solid var(--line); border-radius: 10px; padding: 10px; background: var(--surface-2); }
.portfolio-export-group h3 { margin: 0; color: var(--blue); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.portfolio-export-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 8px; align-items: center; min-height: 42px; padding: 6px 8px; border: 1px solid rgba(102,133,157,.28); border-radius: 8px; background: rgba(255,255,255,.025); color: var(--muted); }
.portfolio-export-group.compact { gap: 6px; padding: 9px 10px; }
.portfolio-export-group.compact .portfolio-export-row { min-height: 38px; padding: 5px 8px; }
.portfolio-export-row input { width: 16px; height: 16px; accent-color: var(--blue); }
.portfolio-export-row.unavailable { opacity: .76; cursor: help; background: rgba(255,255,255,.015); }
.portfolio-export-row.unavailable input { cursor: not-allowed; filter: grayscale(1); opacity: .55; }
.portfolio-export-row.unavailable strong { color: var(--muted); }
.portfolio-export-row span { display: grid; gap: 2px; min-width: 0; }
.portfolio-export-row strong { color: var(--ink); font-size: 13px; }
.portfolio-export-row small { color: var(--muted); line-height: 1.25; overflow-wrap: anywhere; }
.portfolio-export-status { justify-self: end; padding: 3px 7px; border: 1px solid var(--line); border-radius: 999px; color: var(--muted); font-size: 10px; font-weight: 900; text-transform: uppercase; white-space: nowrap; }
.portfolio-export-status.ready { color: var(--accent); border-color: rgba(54,212,137,.42); background: rgba(54,212,137,.08); }
.portfolio-export-status.unavailable { color: var(--warn); border-color: rgba(244,200,107,.42); background: rgba(244,200,107,.08); }
.portfolio-export-empty { color: var(--muted); border: 1px dashed rgba(102,133,157,.36); border-radius: 8px; padding: 10px; font-size: 13px; }
.portfolio-export-preview-wrap { display: grid; gap: 8px; }
.portfolio-export-preview-label { color: var(--blue); font-size: 12px; font-weight: 900; text-transform: uppercase; }
.portfolio-export-preview { max-height: min(52vh, 620px); overflow: auto; padding-right: 4px; }
.portfolio-export-report { display: grid; gap: 18px; }
.portfolio-export-report .portfolio-export-table { width: 100%; max-width: 100%; table-layout: fixed; }
.portfolio-export-report .portfolio-export-table th,
.portfolio-export-report .portfolio-export-table td { overflow-wrap: anywhere; word-break: break-word; hyphens: auto; white-space: normal; }
.portfolio-export-report .print-section,
.portfolio-report-section { display: grid; gap: 8px; break-inside: avoid; page-break-inside: avoid; }
.portfolio-export-report .print-section-title { margin: 0; padding-bottom: 8px; border-bottom: 1px solid #d1d5db; color: #17202a; font-size: 18px; }
.portfolio-section-meta { margin: 0; color: #56616e; font-size: 11px; font-weight: 700; }
.portfolio-export-report p { color: #17202a; line-height: 1.45; }
.portfolio-export-generating[hidden] { display: none; }
.portfolio-export-generating { position: fixed; inset: 0; z-index: 120; display: grid; place-items: center; padding: 18px; background: rgba(1,8,14,.66); backdrop-filter: blur(5px); }
.portfolio-exporter-opening { min-height: min(44vh, 360px); display: grid; place-items: center; padding: 24px; }
.portfolio-export-generating-card { width: min(380px, 100%); display: grid; gap: 9px; padding: 16px; border: 1px solid rgba(47,125,246,.54); border-radius: 10px; background: var(--surface); box-shadow: var(--shadow); color: var(--ink); }
.portfolio-export-generating-card strong { color: var(--ink); font-size: 15px; }
.portfolio-export-generating-card span { color: var(--muted); font-size: 12px; line-height: 1.35; }
.portfolio-export-progress { height: 8px; overflow: hidden; border: 1px solid rgba(47,125,246,.28); border-radius: 999px; background: rgba(47,125,246,.12); }
.portfolio-export-progress span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), #68e2ff); animation: portfolioExportProgress 1.15s ease-in-out infinite; }
.portfolio-export-progress.determinate span { width: 0; transform: none; animation: none; transition: width .18s ease; }
.portfolio-export-progress-text { color: var(--blue); font-size: 11px; font-weight: 800; }
.portfolio-export-generating-card #portfolioExportProcessingCancel { justify-self: end; min-height: 30px; padding: 0 10px; color: var(--muted); font-size: 12px; font-weight: 720; }
.portfolio-export-generating-card #portfolioExportProcessingCancel:hover:not(:disabled),
.portfolio-export-generating-card #portfolioExportProcessingCancel:focus-visible:not(:disabled) { color: #fff; border-color: rgba(47,125,246,.58); background: rgba(47,125,246,.12); animation: tabBlueOrbit 1.9s linear infinite; }
@keyframes portfolioExportProgress {
  0% { transform: translateX(-120%); }
  100% { transform: translateX(250%); }
}
.robinhood-list-manager { display: grid; gap: 12px; }
.rh-list-toolbar { display: grid; grid-template-columns: minmax(220px, 1.1fr) minmax(150px, .65fr) auto auto; gap: 8px; align-items: end; }
.rh-list-toolbar label { display: grid; gap: 5px; color: var(--muted); font-size: 12px; font-weight: 760; }
.rh-list-toolbar select, .rh-list-toolbar input { width: 100%; min-height: 38px; }
.rh-list-toolbar button { min-height: 38px; padding: 0 12px; }
#rhListAddBtn { border: 1px solid rgba(47,125,246,.52); background: var(--surface-2); color: var(--ink); font-weight: 780; letter-spacing: 0; }
#rhListAddBtn:hover { border-color: rgba(47,125,246,.74); background: var(--blue); color: #fff; animation: tabBlueOrbit 1.9s linear infinite; }
.rh-list-workspace { display: grid; grid-template-columns: minmax(160px, .45fr) minmax(0, 1.75fr) minmax(230px, .65fr); gap: 10px; align-items: stretch; }
.rh-list-nav, .rh-list-main, .rh-list-stage { border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); min-width: 0; }
.rh-list-nav { display: grid; align-content: start; gap: 6px; padding: 8px; max-height: min(58vh, 560px); overflow: auto; }
.rh-list-row { display: flex; justify-content: space-between; gap: 10px; align-items: center; min-height: 36px; padding: 0 10px; border-radius: 8px; background: transparent; color: var(--muted); border: 1px solid transparent; font-size: 12px; text-align: left; }
.rh-list-row.active, .rh-list-row:hover { color: #fff; border-color: rgba(54,212,137,.38); background: rgba(54,212,137,.08); }
.rh-list-row.dragging { opacity: .62; border-color: rgba(47,125,246,.62); background: rgba(47,125,246,.09); }
.rh-list-row strong { color: var(--accent); }
.rh-list-main { display: grid; grid-template-rows: auto minmax(180px, 1fr); gap: 10px; padding: 10px; }
.rh-list-main > header, .rh-list-stage > header { display: flex; justify-content: space-between; gap: 10px; align-items: center; }
.rh-list-main > header span, .rh-list-stage > header span, .rh-list-main small { color: var(--muted); font-size: 12px; }
.rh-list-main > header strong { color: var(--gold); }
.rh-selected-count { white-space: nowrap; }
.rh-selected-actions { display: flex; gap: 8px; align-items: center; justify-content: flex-end; flex-wrap: wrap; }
.rh-selected-actions button { min-height: 30px; padding: 0 9px; font-size: 11px; }
.robinhood-list-manager button.danger { color: #fff !important; }
.rh-symbol-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(206px, 1fr)); gap: 8px; align-content: start; max-height: min(52vh, 520px); overflow: auto; padding-right: 4px; }
.rh-symbol-chip { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: center; min-height: 68px; padding: 10px 11px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.03); cursor: grab; }
.rh-symbol-chip span { display: grid; gap: 3px; min-width: 0; overflow: hidden; }
.rh-symbol-chip strong { color: var(--ink); }
.rh-symbol-chip small { color: var(--muted); display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow-wrap: anywhere; font-size: 13px; line-height: 1.25; font-weight: 500; }
.rh-symbol-actions { display: grid; gap: 4px; width: 70px; justify-items: stretch; }
.rh-symbol-chip button { min-width: 0; min-height: 24px; padding: 0 6px; font-size: 10px; line-height: 1; }
.rh-symbol-actions button { width: 100%; border-radius: 8px; font-weight: 850; }
.rh-symbol-actions .rh-my-list-button { color: #082015; border-color: rgba(54,212,137,.52); background: linear-gradient(135deg, #43e69b, #1fa86f); }
.rh-symbol-actions .rh-my-list-button:hover { color: #fff; animation: tabGreenOrbit 1.8s linear infinite; }
.rh-symbol-chip.unsupported { opacity: .68; cursor: default; }
.rh-list-stage { display: grid; grid-template-rows: auto minmax(120px, 1fr) auto; gap: 10px; padding: 10px; }
.rh-list-stage > header strong { color: var(--accent); }
.rh-list-stage ul { display: grid; gap: 7px; align-content: start; margin: 0; padding: 0; list-style: none; max-height: min(48vh, 480px); overflow: auto; }
.rh-list-stage li { display: flex; justify-content: space-between; gap: 8px; align-items: center; padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.03); color: var(--muted); font-size: 12px; }
.rh-list-stage li button { min-height: 28px; padding: 0 8px; }
.rh-stage-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 7px; }
.rh-stage-actions button { min-height: 36px; padding: 0 8px; font-size: 12px; }
.rh-manager-status { display: grid; place-items: center; min-height: 120px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); color: var(--muted); }
.danger { border-color: rgba(229,72,77,.42) !important; color: #ff8a8a !important; }
.egg-chat-panel { display: grid; gap: 12px; }
.egg-chat-hero { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 12px; align-items: center; padding: 12px; border: 1px solid rgba(244,200,107,.28); border-radius: 12px; background: rgba(244,200,107,.06); }
.egg-chat-avatar { width: 82px; height: 82px; background: url("assets/all-knowing-egg-v20.png") center / contain no-repeat; filter: drop-shadow(0 6px 14px rgba(244,200,107,.28)); }
.egg-chat-hero p { margin-top: 4px; color: var(--muted); line-height: 1.45; }
.super-brief .egg-chat-hero { grid-template-columns: 82px minmax(0, 1fr) auto; }
.super-brief .egg-chat-avatar { background-image: url("assets/all-knowing-egg-v20.png"); }
body.foot-fetish-mode .super-brief .egg-chat-avatar {
  background-image: url("assets/foot-mode-all-knowing-hover-v48.png");
  background-size: contain;
  filter: drop-shadow(0 8px 22px rgba(255,178,207,.46));
}
.brief-status-pill { justify-self: end; align-self: start; border: 1px solid var(--line); border-radius: 999px; padding: 5px 9px; color: var(--muted); font-size: 12px; font-weight: 800; white-space: nowrap; }
.brief-status-pill.clean { color: var(--accent); border-color: rgba(54,212,137,.35); }
.brief-status-pill.partial, .brief-status-pill.thin { color: var(--gold); border-color: rgba(244,200,107,.35); }
.brief-status-pill.stale, .brief-status-pill.failed { color: var(--danger); border-color: rgba(229,72,77,.38); }
.brief-checklist { display: grid; gap: 6px; margin: 0; padding-left: 18px; color: var(--muted); }
.brief-checklist li { line-height: 1.35; }
.brief-idea-list { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 4px; }
.brief-idea-chip { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px; align-items: center; max-width: 260px; border: 1px solid var(--line); border-radius: 999px; padding: 5px 9px; background: rgba(255,255,255,.025); }
.brief-idea-chip strong { color: var(--ink); }
.brief-idea-chip small { color: var(--muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.egg-chat-log { display: grid; gap: 9px; max-height: min(48vh, 520px); overflow: auto; padding-right: 4px; }
.egg-chat-message { padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); color: var(--ink); line-height: 1.45; white-space: pre-wrap; }
.egg-chat-message.egg { border-color: rgba(244,200,107,.22); }
.egg-chat-message.user { border-color: rgba(47,125,246,.36); background: rgba(47,125,246,.08); }
.egg-chat-message.small { color: var(--muted); font-size: 12px; }
.egg-chat-compose { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: end; }
.egg-chat-compose textarea { min-height: 84px; }
.queue-detail { display: grid; gap: 10px; }
.queue-detail section { display: grid; gap: 5px; padding: 12px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); }
.queue-detail span, .queue-detail p { color: var(--muted); }
.portfolio-detail { display: grid; gap: 12px; }
.portfolio-theme-card, .portfolio-overlap, .portfolio-detail section, .portfolio-theme-grid div { display: grid; gap: 6px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.portfolio-theme-card strong { color: var(--gold); font-size: 20px; }
.portfolio-theme-card span, .portfolio-overlap span, .portfolio-theme-grid span, .portfolio-detail small { color: var(--muted); }
.portfolio-theme-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; }
.portfolio-theme-grid strong, .portfolio-overlap strong { color: var(--ink); }
.portfolio-detail h3 { margin: 0; color: var(--blue); text-transform: uppercase; font-size: 12px; letter-spacing: .02em; }
.portfolio-detail ul { display: grid; gap: 7px; margin: 0; padding: 0; list-style: none; }
.portfolio-detail li { display: grid; gap: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); }
.idea-row-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 10px; align-items: center; min-width: 0; }
.idea-row-head strong { color: var(--ink); font-size: 16px; }
.idea-row-head span { color: var(--muted); min-width: 0; overflow-wrap: anywhere; line-height: 1.2; }
.idea-row-head b { justify-self: end; min-width: 40px; padding: 3px 8px; border-radius: 999px; background: rgba(54,212,137,.12); color: var(--accent); text-align: center; }
.portfolio-detail li small { display: block; color: var(--muted); font-size: 13px; line-height: 1.4; }
.market-direction-detail { display: grid; gap: 12px; }
.market-direction-hero, .direction-panels { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.market-direction-hero div, .direction-panels article, .market-report-risk, .market-direction-inputs { display: grid; gap: 8px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.market-direction-hero span, .direction-panels small, .market-report-risk small, .market-direction-inputs p { color: var(--muted); }
.market-direction-hero strong, .direction-panels article > strong { color: var(--gold); font-size: 17px; }
.market-direction-hero p, .direction-panels p { color: var(--muted); line-height: 1.45; }
.direction-panels h3, .market-report-risk h3, .market-direction-inputs h3 { margin: 0; color: var(--blue); text-transform: uppercase; font-size: 12px; letter-spacing: .02em; }
.direction-meter-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.direction-meter-pair > div { display: grid; gap: 4px; min-width: 0; }
.direction-meter-pair span { color: var(--muted); font-size: 11px; font-weight: 850; text-transform: uppercase; }
.direction-score-bar span { background: linear-gradient(90deg, var(--bad), var(--gold)); }
.direction-confidence-bar span { background: linear-gradient(90deg, var(--blue), var(--accent)); }
.direction-panels ul, .market-report-risk ul { display: grid; gap: 8px; list-style: none; margin: 0; padding: 0; }
.direction-panels li, .market-report-risk li { display: grid; gap: 6px; padding: 10px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.025); }
.direction-panels li.positive { border-color: rgba(54,212,137,.26); }
.direction-panels li.negative { border-color: rgba(229,72,77,.28); }
.direction-panels li.neutral { border-color: rgba(244,200,107,.24); }
.market-direction-inputs > div { display: flex; flex-wrap: wrap; gap: 6px; }
.market-direction-inputs span { padding: 5px 8px; border: 1px solid rgba(102,133,157,.28); border-radius: 999px; color: var(--ink); background: rgba(237,247,255,.035); font-size: 12px; font-weight: 650; }
.local-account-panel { display: grid; gap: 10px; max-width: 560px; margin: 0 auto; }
.local-account-panel p, .local-account-panel small { color: var(--muted); line-height: 1.45; }
.local-account-panel small:empty { display: none; }
.local-account-panel hr {
  width: 100%;
  height: 1px;
  margin: 4px 0;
  border: 0;
  border-top: 1px solid rgba(151,172,189,.14);
  background: transparent;
}
.local-account-panel button:not(.password-toggle) {
  min-height: 36px;
  border: 1px solid var(--line);
  background: var(--surface-2);
  color: var(--muted);
  font-size: 12px;
  font-weight: 720;
  letter-spacing: 0;
  text-shadow: none;
}
.local-account-panel button:not(.password-toggle):hover:not(:disabled),
.local-account-panel button:not(.password-toggle):focus-visible:not(:disabled) {
  color: #fff;
  border-color: rgba(47,125,246,.55);
  background: rgba(47,125,246,.10);
  animation: tabBlueOrbit 1.8s linear infinite;
}
.local-account-panel #localAccountSubmit {
  background: rgba(54,212,137,.88);
  color: #06150f;
  border-color: rgba(54,212,137,.55);
  font-size: 12px;
  font-weight: 720;
  letter-spacing: 0;
}
.local-account-panel #localAccountSubmit:hover:not(:disabled),
.local-account-panel #localAccountSubmit:focus-visible:not(:disabled) {
  filter: brightness(1.05);
  animation: tabGreenOrbit 1.8s linear infinite;
}
.local-account-panel #localCreateAccountMode:hover:not(:disabled),
.local-account-panel #localCreateAccountMode:focus-visible:not(:disabled) {
  color: #fff;
  border-color: rgba(47,125,246,.55);
  animation: tabBlueOrbit 1.8s linear infinite;
}
.local-auth-status {
  min-height: 18px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0;
}
.local-auth-status.success { color: var(--accent); }
.local-auth-status.error { color: var(--danger); }
.local-account-panel h3,
.local-account-panel label,
.local-account-panel p { font-weight: 600; color: var(--muted); }
.local-account-panel h3 { margin: 4px 0 0; font-size: 15px; font-weight: 650; }
.local-account-panel label { font-size: 13px; font-weight: 650; }
.local-account-panel small { font-size: 12px; font-weight: 600; }
.local-account-panel small.success { color: var(--accent); }
.local-account-panel small.error { color: var(--danger); }
.local-account-panel strong { color: var(--ink); font-weight: 700; }
.local-account-panel input,
.local-account-panel select {
  font-size: 14px;
  font-weight: 600;
}
.password-field { display: grid; gap: 6px; }
.password-field > span { display: grid; grid-template-columns: minmax(0, 1fr) 40px; align-items: stretch; border: 1px solid var(--line); border-radius: 8px; background: var(--field); overflow: hidden; }
.password-field input { min-width: 0; border: 0; border-radius: 0; background: transparent; }
.password-toggle { min-height: 40px; width: 40px; padding: 0; border-left: 1px solid var(--line); border-radius: 0; background: transparent url("assets/password-icons/show_password_eye_transparent.svg") center / 21px 21px no-repeat; color: var(--muted); font-size: 0; }
.password-toggle.visible { background-image: url("assets/password-icons/hide_password_eye_off_transparent.svg"); }
.password-toggle:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.8s linear infinite; filter: drop-shadow(0 0 5px rgba(47,125,246,.3)); }
.local-profile-grid { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 14px; align-items: start; }
.local-profile-side { display: grid; gap: 8px; justify-items: stretch; }
.local-brief-button { min-height: 38px; color: var(--muted); }
.local-brief-button:hover { color: #fff; border-color: rgba(47,125,246,.55); animation: tabBlueOrbit 1.8s linear infinite; }
.profile-picture-preview { width: 150px; min-height: 164px; aspect-ratio: .92 / 1; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg, rgba(16,34,48,.88), rgba(7,19,29,.96)); background-size: cover; background-position: center; background-repeat: no-repeat; box-shadow: inset 0 0 0 1px rgba(255,255,255,.02), var(--shadow); display: grid; place-items: center; overflow: hidden; }
.profile-picture-preview span { color: var(--muted); font-size: 12px; font-weight: 800; }
.profile-picture-preview.has-image span { display: none; }
.profile-picture-preview.has-image { cursor: grab; }
.profile-picture-preview.dragging { cursor: grabbing; border-color: rgba(244,200,107,.72); box-shadow: inset 0 0 0 1px rgba(244,200,107,.15), 0 0 18px rgba(244,200,107,.2); }
.local-profile-fields { display: grid; gap: 10px; min-width: 0; }
.profile-zoom-control { display: grid; grid-template-columns: auto 1fr; gap: 5px 10px; align-items: center; }
.profile-zoom-control output { justify-self: end; color: var(--muted); font-size: 12px; font-weight: 800; }
.profile-zoom-control input { grid-column: 1 / -1; }
.pin-panel { justify-items: center; text-align: center; }
.pin-code-entry { display: inline-flex; justify-content: center; gap: 10px; margin: 10px 0 4px; }
.local-pin-entry { justify-content: flex-start; }
.pin-code-box { display: grid; place-items: center; width: 50px; height: 58px; border: 1px solid rgba(47,125,246,.45); border-radius: 14px; background: rgba(10,27,42,.92); color: var(--ink); font-size: 28px; font-weight: 760; box-shadow: inset 0 0 0 1px rgba(255,255,255,.025); }
.pin-code-box.active { border-color: rgba(244,200,107,.72); box-shadow: 0 0 0 4px rgba(47,125,246,.14), inset 0 0 0 1px rgba(244,200,107,.18); }
.pin-code-box.filled { color: var(--gold); }
.pin-code-hidden { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.pin-cell-field { display: grid; gap: 4px; }
.limit-note { color: var(--warn); font-size: 12px; line-height: 1.4; }
.export-actions { display: flex; gap: 8px; justify-content: flex-end; }
.export-actions button { color: var(--ink) !important; background: var(--surface-3); border-color: rgba(47,125,246,.38); animation: none; }
.export-actions button:hover { color: #fff !important; background: rgba(47,125,246,.18); border-color: rgba(47,125,246,.62); animation: tabBlueOrbit 1.9s linear infinite; }
.holdings-export-actions { justify-content: space-between; align-items: center; flex-wrap: wrap; }
.holdings-export-left, .holdings-export-right { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.holdings-export-left { margin-right: auto; }
.holdings-export-right { justify-content: flex-end; }
.print-report { color: #17202a; background: #f8fafc; border: 1px solid var(--line); border-radius: 8px; padding: 20px; box-shadow: inset 0 0 0 1px rgba(102,133,157,.06); }
body.light .print-report { background: #fff; border-color: var(--line); }
.print-report > header { display: flex; justify-content: flex-start; border: 0; padding: 0 0 14px; color: #17202a; }
.print-report header p, .print-report footer { color: #56616e; }
.print-egg { width: 42px; height: 48px; background: url("assets/logo-egg-v18.png") center / contain no-repeat; }
.print-egg-img { width: 58px; height: 66px; object-fit: contain; display: block; }
.print-report table { width: 100%; border-collapse: collapse; font-size: 12px; }
.print-report th, .print-report td { border: 1px solid #dce1e6; padding: 7px; text-align: left; vertical-align: top; }
.print-report th { background: #eef2f5; }
.print-report footer { margin-top: 14px; font-size: 11px; }
.day-trader-print-report table { table-layout: fixed; }
.day-trader-print-report th:nth-child(1), .day-trader-print-report td:nth-child(1) { width: 38px; }
.day-trader-print-report th:nth-child(2), .day-trader-print-report td:nth-child(2) { width: 62px; }
.day-trader-print-report th:nth-child(4), .day-trader-print-report td:nth-child(4) { width: 82px; }
.day-trader-print-report th:nth-child(5), .day-trader-print-report td:nth-child(5) { width: 52px; }
.day-trader-print-report th:nth-child(6), .day-trader-print-report td:nth-child(6) { width: 82px; }
.day-trader-print-report th:nth-child(7), .day-trader-print-report td:nth-child(7) { width: 70px; }
.day-trader-print-report tr { break-inside: avoid; page-break-inside: avoid; }
.leveraged-lens-print-report { color: #17202a; background: #fff; }
.leveraged-lens-print-report header { align-items: center; gap: 10px; }
.leveraged-lens-print-summary p { margin: 0 0 10px; color: #334155; line-height: 1.35; }
.leveraged-lens-print-metrics,
.leveraged-lens-print-inputs > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.leveraged-lens-print-metrics div,
.leveraged-lens-print-inputs > div > div {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 8px;
  border: 1px solid #dce1e6;
  border-radius: 7px;
  background: #fff;
}
.leveraged-lens-print-metrics span,
.leveraged-lens-print-inputs span {
  color: #64748b;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.leveraged-lens-print-metrics strong,
.leveraged-lens-print-inputs strong { color: #17202a; font-size: 14px; line-height: 1.12; }
.leveraged-lens-print-metrics small { color: #52606d; font-size: 10px; line-height: 1.2; }
.leveraged-lens-print-matrix table { table-layout: fixed; }
.leveraged-lens-print-matrix th:nth-child(1), .leveraged-lens-print-matrix td:nth-child(1) { width: 7%; }
.leveraged-lens-print-matrix th:nth-child(2), .leveraged-lens-print-matrix td:nth-child(2) { width: 13%; }
.leveraged-lens-print-matrix th:nth-child(3), .leveraged-lens-print-matrix td:nth-child(3) { width: 8%; }
.leveraged-lens-print-matrix th:nth-child(4), .leveraged-lens-print-matrix td:nth-child(4) { width: 9%; }
.leveraged-lens-print-matrix th:nth-child(5), .leveraged-lens-print-matrix td:nth-child(5) { width: 9%; }
.leveraged-lens-print-matrix th:nth-child(6), .leveraged-lens-print-matrix td:nth-child(6) { width: 6%; }
.leveraged-lens-print-matrix th:nth-child(7), .leveraged-lens-print-matrix td:nth-child(7) { width: 10%; }
.leveraged-lens-print-matrix th:nth-child(8), .leveraged-lens-print-matrix td:nth-child(8) { width: 7%; }
.leveraged-lens-print-matrix th:nth-child(9), .leveraged-lens-print-matrix td:nth-child(9) { width: 7%; }
.leveraged-lens-print-matrix th:nth-child(10), .leveraged-lens-print-matrix td:nth-child(10) { width: 24%; }
.leveraged-lens-print-checklist > div { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.leveraged-lens-print-checklist article { border: 1px solid #dce1e6; border-radius: 7px; padding: 8px; background: #fff; }
.leveraged-lens-print-checklist ul { margin: 6px 0 0; padding-left: 17px; color: #334155; line-height: 1.3; }
.full-analysis-print-report { color: #17202a; background: #fff; }
.full-analysis-print-report header { align-items: center; gap: 10px; }
.full-analysis-print-report h2 { margin: 0 0 3px; color: #17202a; font-size: 20px; line-height: 1.12; }
.full-analysis-print-report .print-section p { margin: 0 0 7px; color: #334155; line-height: 1.35; }
.full-analysis-print-report .symbol-profile-earnings { color: #334155 !important; }
.full-analysis-print-report .symbol-profile-earnings strong { color: #17202a; }
.full-analysis-print-report table { table-layout: fixed; }
.full-analysis-print-report th { width: 30%; }
.full-analysis-print-report tr { break-inside: avoid; page-break-inside: avoid; }
.diagnostic-grid, .help-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.diagnostic-grid div, .help-grid section { border: 1px solid var(--line); border-radius: 10px; padding: 12px; background: var(--surface-2); }
.diagnostic-grid span { display: block; color: var(--muted); font-size: 12px; }
.diagnostic-grid strong { display: block; margin-top: 4px; }
.diagnostic-log-controls { display: grid; gap: 10px; border: 1px solid var(--line); border-radius: 10px; padding: 12px; background: var(--surface-2); }
.diagnostic-log-controls label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 800; }
.utility-list { display: grid; gap: 8px; margin: 0; padding-left: 18px; }
.expanded-slate-modal { display: grid; gap: 12px; min-height: 0; }
.expanded-slate-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.expanded-slate-head h2 { margin: 2px 0 4px; font-size: 22px; line-height: 1.1; }
.expanded-slate-head p { margin: 0; color: var(--muted); font-size: 12px; font-weight: 650; }
.expanded-slate-minimize { flex: 0 0 auto; }
.expanded-slate-controls .sort-bar { position: sticky; top: 0; z-index: 5; }
.expanded-slate-cards { display: grid; gap: 10px; align-content: start; max-height: calc(100vh - 238px); min-height: 0; overflow: auto; padding-right: 8px; scrollbar-gutter: stable; }
.expanded-slate-cards::-webkit-scrollbar { width: 10px; }
.expanded-slate-cards::-webkit-scrollbar-thumb { background: rgba(102, 133, 157, 0.34); border-radius: 999px; }
.expanded-slate-card { width: 100%; }
.expanded-slate-cards .drag-handle { display: none !important; }
.expanded-slate-tray { position: fixed; left: 10px; right: 10px; bottom: 10px; z-index: 96; display: flex; gap: 8px; align-items: stretch; max-width: calc(100vw - 20px); overflow-x: auto; padding: 6px; border: 1px solid rgba(47,125,246,.22); border-radius: 12px; background: rgba(3,13,22,.84); box-shadow: 0 10px 28px rgba(0,0,0,.34); backdrop-filter: blur(10px); scrollbar-gutter: stable; }
.expanded-slate-tray[hidden] { display: none; }
.expanded-slate-task { flex: 0 0 min(280px, calc(100vw - 38px)); display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: stretch; min-height: 58px; border: 1px solid rgba(102,133,157,.32); border-radius: 10px; background: linear-gradient(145deg, rgba(12,30,45,.96), rgba(7,19,29,.98)); overflow: hidden; }
.expanded-slate-task-main { display: grid; gap: 2px; min-width: 0; padding: 8px 10px; border: 0; border-radius: 0; background: transparent; color: var(--ink); text-align: left; letter-spacing: 0; text-shadow: none; }
.expanded-slate-task-main span { color: var(--blue); font-size: 10px; font-weight: 900; text-transform: uppercase; }
.expanded-slate-task-main strong { min-width: 0; color: var(--ink); font-size: 13px; line-height: 1.1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.expanded-slate-task-main small { min-width: 0; color: var(--muted); font-size: 11px; font-weight: 700; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.expanded-slate-task-actions { display: grid; grid-template-columns: repeat(2, 34px); border-left: 1px solid rgba(102,133,157,.22); }
.expanded-slate-task-actions button { min-width: 34px; min-height: 100%; padding: 0; border: 0; border-left: 1px solid rgba(102,133,157,.18); border-radius: 0; background: rgba(255,255,255,.02); color: var(--muted); font-size: 14px; font-weight: 900; text-shadow: none; }
.expanded-slate-task:hover,
.expanded-slate-task:focus-within { border-color: rgba(47,125,246,.62); box-shadow: 0 0 0 1px rgba(47,125,246,.12), 0 0 18px rgba(47,125,246,.16); }
.expanded-slate-task-main:hover,
.expanded-slate-task-main:focus-visible,
.expanded-slate-task-actions button:hover,
.expanded-slate-task-actions button:focus-visible { color: #fff; background: rgba(47,125,246,.13); outline: none; }
.expanded-slate-task-actions button[data-expanded-slate-dismiss]:hover,
.expanded-slate-task-actions button[data-expanded-slate-dismiss]:focus-visible { color: #fff; background: rgba(229,72,77,.16); }
.movement-explanation-modal { display: grid; gap: 12px; }
.movement-explanation-hero { display: grid; gap: 6px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-2); }
.movement-explanation-hero span { justify-self: start; padding: 4px 8px; border: 1px solid rgba(102,133,157,.32); border-radius: 999px; color: var(--muted); font-size: 11px; font-weight: 900; }
.movement-explanation-hero.movement-up span { color: var(--accent); border-color: rgba(54,212,137,.42); background: rgba(54,212,137,.08); }
.movement-explanation-hero.movement-down span { color: var(--bad); border-color: rgba(229,72,77,.42); background: rgba(229,72,77,.08); }
.movement-explanation-hero h2 { margin: 0; font-size: 22px; line-height: 1.12; }
.movement-explanation-hero p { margin: 0; color: var(--muted); line-height: 1.45; }
.movement-explanation-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.movement-explanation-grid article { display: grid; gap: 6px; align-content: start; min-width: 0; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.movement-explanation-grid strong { color: var(--blue); font-size: 12px; text-transform: uppercase; }
.movement-explanation-grid p { margin: 0; color: var(--muted); line-height: 1.45; }
.full-analysis-movement-badge { cursor: pointer; }
.full-analysis-movement-badge:hover,
.full-analysis-movement-badge:focus-visible { outline: none; filter: brightness(1.1); box-shadow: 0 0 0 2px rgba(47,125,246,.18), 0 0 14px rgba(47,125,246,.18); }
@media (max-width: 760px) {
  .movement-explanation-grid { grid-template-columns: 1fr; }
  .expanded-slate-task { flex-basis: min(250px, calc(100vw - 38px)); }
}
.news-center { display: grid; gap: 8px; }
.news-center-row { display: grid; grid-template-columns: auto minmax(104px, 160px) minmax(0, 1fr); gap: 10px; align-items: center; min-height: 44px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; background: var(--surface-2); color: var(--muted); text-align: left; font-weight: 700; }
.news-center-row strong { color: var(--ink); }
.news-center-row .news-center-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.news-center-row span:last-child { display: grid; gap: 4px; }
.news-center-row span:last-child b { color: var(--ink); font-weight: 750; }
.news-center-row span:last-child small { color: var(--muted); line-height: 1.35; font-weight: 500; }
.news-center-row span:last-child em { color: var(--accent); font-style: normal; font-size: .82rem; font-weight: 750; }
.news-center-row:hover { border-color: rgba(47,125,246,.45); }
.ticker-panel { display: grid; gap: 14px; }
.ticker-panel-actions { display: flex; justify-content: flex-end; gap: 8px; }
.ticker-panel-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 10px; }
.ticker-panel-item { position: relative; display: grid; gap: 5px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.ticker-panel-item strong { color: var(--ink); font-size: 15px; }
.ticker-panel-item span { color: var(--ink); font-weight: 850; }
.ticker-panel-item b.up { color: var(--accent); }
.ticker-panel-item b.down { color: var(--bad); }
.ticker-panel-item small { color: var(--muted); line-height: 1.35; }
.diagnostic-provider-summary { display: grid; gap: 6px; margin-bottom: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.diagnostic-provider-summary span { color: var(--blue); font-size: 12px; font-weight: 850; text-transform: uppercase; }
.diagnostic-provider-summary strong { font-size: 15px; }
.diagnostic-provider-summary p { margin: 0; color: var(--muted); line-height: 1.45; }
.diagnostic-provider-summary.provider-warning { border-color: rgba(244,200,107,.45); }
.diagnostic-provider-summary.provider-error { border-color: rgba(229,72,77,.45); }
.user-added-egg { position: absolute; top: 8px; right: 8px; width: 18px; height: 18px; background: url("assets/logo-egg-v18.png") center / contain no-repeat; filter: drop-shadow(0 0 8px rgba(244,200,107,.42)); }
.inline-ticker-settings { display: grid; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); }
.inline-ticker-settings h3 { margin: 0; color: var(--blue); text-transform: uppercase; font-size: 12px; }
.inline-ticker-settings p { color: var(--muted); line-height: 1.4; }
.casino-shell { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; min-height: 620px; overflow: hidden; border: 1px solid rgba(244,200,107,.28); border-radius: 16px; background: radial-gradient(circle at 30% 10%, rgba(244,200,107,.16), transparent 34%), linear-gradient(145deg, rgba(9,10,24,.98), rgba(5,14,24,.98)); }
.casino-shell::before { content: ""; position: absolute; inset: 0; background: url("assets/golden-egg-casino-main.png") center / cover no-repeat; opacity: .18; filter: saturate(1.1); pointer-events: none; }
.casino-side, .casino-main { position: relative; z-index: 1; }
.casino-side { display: grid; align-content: start; gap: 14px; padding: 18px; border-right: 1px solid rgba(244,200,107,.18); background: rgba(4,11,20,.5); }
.casino-side img { width: 145px; max-width: 100%; filter: drop-shadow(0 0 16px rgba(244,200,107,.26)); }
.casino-side nav { display: grid; gap: 8px; }
.casino-side nav span { padding: 9px 10px; border-radius: 8px; color: var(--muted); font-weight: 800; }
.casino-side nav .active { color: #fff; background: linear-gradient(135deg, #6848cf, #2f7df6); }
.casino-side small { color: var(--gold); font-weight: 850; align-self: end; }
.casino-main { display: grid; gap: 14px; padding: 18px; }
.casino-main header { display: flex; justify-content: space-between; gap: 12px; align-items: center; border: 0; padding: 0; color: var(--muted); }
.casino-main header strong { color: var(--gold); text-transform: uppercase; letter-spacing: .08em; }
.casino-board { display: grid; grid-template-columns: minmax(330px, 1fr) 270px; gap: 14px; align-items: stretch; }
.casino-roulette, .casino-settings { display: grid; gap: 12px; padding: 16px; border: 1px solid rgba(244,200,107,.22); border-radius: 14px; background: rgba(11,24,38,.84); box-shadow: inset 0 0 0 1px rgba(255,255,255,.02); }
.casino-roulette h3, .casino-settings h3 { margin: 0; color: var(--gold); text-transform: uppercase; letter-spacing: .07em; text-align: center; }
.casino-roulette p, .casino-settings small { color: var(--muted); text-align: center; line-height: 1.35; }
.casino-wheel-stage { position: relative; width: min(360px, 100%); aspect-ratio: 1; margin: 6px auto; }
.casino-wheel { position: relative; width: 100%; height: 100%; border-radius: 50%; border: 4px solid rgba(244,200,107,.62); background: conic-gradient(from -90deg, var(--casino-segments, #342518 0 45deg, #0f1723 45deg 90deg, #342518 90deg 135deg, #0f1723 135deg 180deg, #342518 180deg 225deg, #0f1723 225deg 270deg, #342518 270deg 315deg, #0f1723 315deg 360deg)); box-shadow: inset 0 0 30px rgba(0,0,0,.55), 0 0 26px rgba(244,200,107,.16); }
.casino-wheel.settled { transform: rotate(var(--wheel-rotation, 0deg)); }
.casino-wheel.spinning { animation: casinoWheelSpin .9s cubic-bezier(.12,.72,.22,1) both; }
.casino-wheel span { position: absolute; left: 50%; top: 50%; width: 82px; margin-left: -41px; transform: rotate(var(--angle)) translateY(-124px) rotate(var(--angle-neg)); display: grid; gap: 2px; justify-items: center; color: #fff; font-weight: 900; text-align: center; }
.casino-wheel span small { color: var(--muted); font-size: 11px; }
.casino-wheel span.selected { color: var(--gold); text-shadow: 0 0 12px rgba(244,200,107,.45); }
.casino-wheel i { position: absolute; inset: 40%; border-radius: 50%; background: radial-gradient(circle at 35% 25%, #fff3bc, #d69b24 58%, #69400c); box-shadow: 0 0 18px rgba(244,200,107,.38); }
.casino-pointer { position: absolute; left: 50%; top: -12px; z-index: 2; width: 0; height: 0; margin-left: -12px; border-left: 12px solid transparent; border-right: 12px solid transparent; border-top: 28px solid #f0b560; filter: drop-shadow(0 2px 5px rgba(0,0,0,.55)); }
@keyframes casinoWheelSpin { from { transform: rotate(0deg); } to { transform: rotate(760deg); } }
.casino-spin, .dirty-hundo, #casinoQueueBet, #casinoLiveBet { color: #fff; font-size: 14px; }
.casino-spin { background: linear-gradient(135deg, #7658d8, #3b2195); }
.dirty-hundo, #casinoQueueBet, #casinoLiveBet { background: linear-gradient(135deg, #37d487, #187e4c); }
.casino-settings label { color: var(--ink); font-size: 12px; }
.casino-settings output { color: var(--accent); font-size: 20px; font-weight: 950; text-align: center; }
.casino-pill-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.casino-pill-row label { padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: var(--surface-2); text-align: center; }
.casino-pill-row input { display: none; }
.casino-pill-row label:first-child:has(input:checked) { border-color: rgba(229,72,77,.62); background: rgba(229,72,77,.18); }
.casino-pill-row label:last-child:has(input:checked) { border-color: rgba(47,125,246,.62); background: rgba(47,125,246,.18); }
.casino-pill-row span { display: block; color: var(--muted); font-size: 11px; font-weight: 650; }
.casino-pill-row em, .casino-russian em { display: block; color: var(--muted); font-size: 11px; font-style: normal; font-weight: 650; }
.red-pill .pill-icon, .blue-pill .pill-icon { width: 24px; height: 12px; margin: 0 auto 6px; border-radius: 999px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.16), 0 0 12px rgba(0,0,0,.24); }
.red-pill .pill-icon { background: linear-gradient(135deg, #ff7d6c, #9c221b); }
.blue-pill .pill-icon { background: linear-gradient(135deg, #88bcff, #1b5fc6); }
.casino-russian { display: grid; grid-template-columns: 26px 1fr 42px; gap: 8px; align-items: center; padding: 7px 9px; border: 1px solid rgba(244,200,107,.22); border-radius: 999px; background: rgba(244,200,107,.055); }
.casino-russian input { position: absolute; opacity: 0; pointer-events: none; }
.casino-russian strong { color: var(--gold); font-size: 12px; line-height: 1.1; }
.casino-russian-gun { width: 24px; height: 18px; display: block; position: relative; }
.casino-russian-gun::before { content: ""; position: absolute; left: 2px; top: 4px; width: 18px; height: 7px; border-radius: 2px 6px 3px 2px; background: linear-gradient(135deg, #d9e4ee, #6f7b86 62%, #202935); box-shadow: 0 0 10px rgba(244,200,107,.18); }
.casino-russian-gun::after { content: ""; position: absolute; left: 8px; top: 10px; width: 7px; height: 8px; border-radius: 1px 1px 4px 4px; transform: skew(-12deg); background: linear-gradient(135deg, #a7b3bf, #2b3440); }
.casino-mini-switch { justify-self: end; width: 38px; height: 20px; border-radius: 999px; background: #263442; border: 1px solid var(--line); position: relative; box-shadow: inset 0 0 8px rgba(0,0,0,.35); }
.casino-mini-switch::after { content: ""; position: absolute; left: 2px; top: 2px; width: 14px; height: 14px; border-radius: 50%; background: #92a4b5; transition: transform .18s ease, background .18s ease, box-shadow .18s ease; }
.casino-russian input:checked ~ .casino-mini-switch { border-color: rgba(244,200,107,.58); background: rgba(244,200,107,.2); }
.casino-russian input:checked ~ .casino-mini-switch::after { transform: translateX(18px); background: var(--gold); box-shadow: 0 0 12px rgba(244,200,107,.55); }
.casino-bet-status { min-height: 0; display: grid; gap: 4px; padding: 9px 10px; border: 1px solid rgba(244,200,107,.24); border-radius: 10px; background: rgba(244,200,107,.07); color: var(--muted); font-size: 12px; line-height: 1.35; }
.casino-bet-status:empty { display: none; }
.casino-bet-status strong { color: var(--gold); font-size: 12px; text-transform: uppercase; letter-spacing: .06em; }
.casino-bet-status span { color: var(--ink); font-weight: 750; }
.casino-result-actions { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px !important; padding: 0 !important; border: 0 !important; background: transparent !important; }
.casino-result { display: grid; gap: 8px; padding: 14px; border: 1px solid rgba(54,212,137,.34); border-radius: 12px; background: rgba(54,212,137,.08); }
.casino-result strong { color: var(--gold); font-size: 24px; }
.casino-result span { color: var(--muted); }
.casino-result dl { display: grid; grid-template-columns: repeat(2, 1fr); gap: 7px; margin: 0; }
.casino-result div { padding: 8px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface-2); }
.casino-result dd { margin: 0; color: var(--ink); font-weight: 850; }
.casino-cash-burst { position: fixed; inset: 0; z-index: 150; pointer-events: none; overflow: hidden; }
.casino-cash-burst span { position: absolute; left: var(--x); top: -40px; color: #54d487; font-size: 26px; font-weight: 950; transform: rotate(var(--spin)); animation: casinoCashFall 2.2s ease-in var(--delay) forwards; text-shadow: 0 0 8px rgba(84,212,135,.35); }
@keyframes casinoCashFall { to { transform: translateY(110vh) rotate(calc(var(--spin) + 280deg)); opacity: 0; } }
.frankie-bone-rain { position: fixed; inset: 0; z-index: 165; pointer-events: none; overflow: hidden; }
.frankie-bone-rain span { position: absolute; left: var(--x); top: -90px; width: 72px; height: 36px; background: url("assets/icon-bone.svg") center / contain no-repeat; transform: rotate(var(--spin)); animation: goldenBoneFall 5.8s linear var(--delay) forwards; filter: sepia(1) saturate(3.4) hue-rotate(352deg) brightness(1.75) drop-shadow(0 0 13px rgba(244,200,107,.55)); }
@keyframes goldenBoneFall { 0% { opacity: 0; transform: translateY(-14vh) rotate(var(--spin)) scale(.72); } 8% { opacity: 1; } 88% { opacity: 1; } 100% { opacity: 0; transform: translateY(128vh) rotate(calc(var(--spin) + 720deg)) scale(1.08); } }
.casino-unlock-burst { position: fixed; inset: 0; z-index: 160; pointer-events: none; overflow: hidden; }
.casino-unlock-burst span { position: absolute; left: var(--x); top: -70px; width: 38px; height: 38px; transform: rotate(var(--spin)); background-position: center; background-size: contain; background-repeat: no-repeat; animation: casinoUnlockFall 7.5s ease-in var(--delay) forwards; filter: drop-shadow(0 0 12px rgba(244,200,107,.42)); }
.casino-unlock-burst .egg { background-image: url("assets/logo-egg-v18.png"); }
.casino-unlock-burst .goose { width: 54px; height: 54px; background-image: url("assets/bunny-goose-v20.png"); }
.casino-unlock-burst .coin { border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff4b0, #d59a21 58%, #81510e); }
@keyframes casinoUnlockFall { 0% { opacity: 0; transform: translateY(-8vh) rotate(var(--spin)) scale(.72); } 10% { opacity: 1; } 78% { opacity: 1; } 100% { opacity: 0; transform: translateY(112vh) rotate(calc(var(--spin) + 540deg)) scale(1.12); } }
.market-open-burst { position: fixed; inset: 0; z-index: 170; pointer-events: none; overflow: hidden; }
.market-open-burst strong { position: absolute; top: 84px; left: 50%; transform: translateX(-50%); padding: 10px 18px; border-radius: 999px; color: #1b1202; background: linear-gradient(135deg, #fff0a8, #d39322); box-shadow: 0 0 28px rgba(244,200,107,.45); font-size: 14px; font-weight: 950; }
.market-open-burst span { position: absolute; left: var(--x); top: -70px; width: 34px; height: 34px; transform: rotate(var(--spin)); background-position: center; background-size: contain; background-repeat: no-repeat; animation: casinoUnlockFall 5.8s ease-in var(--delay) forwards; filter: drop-shadow(0 0 12px rgba(244,200,107,.38)); }
.market-open-burst .egg { background-image: url("assets/logo-egg-v18.png"); }
.market-open-burst .bag { width: 42px; height: 42px; background-image: url("assets/egg-growth-icon-v20.png"); }
.market-open-burst .coin { border-radius: 50%; background: radial-gradient(circle at 35% 30%, #fff5b5, #d59a21 58%, #80500d); }
.roll-up, .roll-down { display: inline-block; font-variant-numeric: tabular-nums; will-change: transform, opacity; }
.roll-up { animation: rollValueUp .65s ease both; color: var(--accent) !important; }
.roll-down { animation: rollValueDown .65s ease both; color: var(--bad) !important; }
.roll-value { display: inline-block; font-variant-numeric: tabular-nums; animation: rollValueNeutral .52s ease both; will-change: transform, opacity; }
@keyframes rollValueUp { 0% { transform: translateY(6px); opacity: .55; text-shadow: 0 0 10px rgba(54,212,137,.18); } 55% { transform: translateY(-2px); opacity: 1; } 100% { transform: translateY(0); opacity: 1; text-shadow: none; } }
@keyframes rollValueDown { 0% { transform: translateY(-6px); opacity: .55; text-shadow: 0 0 10px rgba(229,72,77,.18); } 55% { transform: translateY(2px); opacity: 1; } 100% { transform: translateY(0); opacity: 1; text-shadow: none; } }
@keyframes rollValueNeutral { 0% { transform: translateY(5px); opacity: .65; } 60% { transform: translateY(-1px); opacity: 1; } 100% { transform: translateY(0); opacity: 1; } }
.pulse-up { animation: pulseUpValue .9s ease both; }
.pulse-down { animation: pulseDownValue .9s ease both; }
@keyframes pulseUpValue { 0% { background: rgba(54,212,137,.25); box-shadow: 0 0 0 rgba(54,212,137,0); } 100% { background: transparent; box-shadow: 0 0 16px rgba(54,212,137,0); } }
@keyframes pulseDownValue { 0% { background: rgba(229,72,77,.25); box-shadow: 0 0 0 rgba(229,72,77,0); } 100% { background: transparent; box-shadow: 0 0 16px rgba(229,72,77,0); } }
.help-mode .controls, .help-mode .board, .help-mode .right-rail .rail-card, .help-mode .status-dock { outline: 2px solid rgba(47, 125, 246, 0.42); outline-offset: 3px; }

@media (max-width: 1100px) {
  .layout, .account-strip, .compact-line, .quote-row, .order-grid, .metrics, .status-dock, .battle-grid, .battle-actions, .diagnostic-grid, .help-grid, .bottom-tools { grid-template-columns: 1fr; display: grid; }
  .portfolio-health-breakdown-hero,
  .portfolio-health-position-row dl { grid-template-columns: 1fr; }
  .topbar { grid-template-columns: 1fr; }
  h1 { grid-template-columns: clamp(76px, 8vw, 96px) minmax(120px, 1fr) minmax(190px, auto); }
  .layout, .controls, .board, .right-rail, .cards { height: auto; max-height: none; overflow: visible; }
  .topbar-right { display: flex; width: 100%; justify-content: flex-start; }
  .header-refresh { justify-content: center; }
  .right-rail { order: 3; }
  .portfolio-export-grid { grid-template-columns: 1fr; }
  .toolbar { display: grid; }
  .toolbar-actions { justify-content: stretch; }
  .toolbar-actions button { width: 100%; }
  .egg-mood { grid-template-columns: 42px minmax(0, 1fr) auto; }
  .egg-mood .casino-unlock,
  .egg-mood .market-countdown-badge { grid-column: 2 / -1; justify-self: end; }
  .mood-meter-cluster { grid-column: 3; width: clamp(230px, 38vw, 320px); }
  .egg-mood .butt-meter { display: block; width: 100%; min-width: 160px; max-width: none; }
  .egg-mood strong { display: block; }
  .chart-column, .mini-chart, .metrics { grid-column: 1 / -1; grid-row: auto; }
  .chart-canvas { height: 205px; }
  .datebox { flex: 0 1 688px; width: min(100%, 688px); max-width: 688px; min-width: 0; text-align: center; grid-template-columns: 124px 36px 36px 36px 36px minmax(0, 1fr) minmax(120px, max-content) minmax(128px, max-content); grid-template-areas: "mode settings theme help kill . clock status"; }
  .mode-label { min-width: 0; }
  .order-row { grid-template-columns: 1fr; }
  .casino-shell, .casino-board { grid-template-columns: 1fr; }
  .casino-side { border-right: 0; border-bottom: 1px solid rgba(244,200,107,.18); }
  .casino-side nav { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 720px) {
  .datebox {
    min-width: 0;
    grid-template-columns: 124px repeat(4, 36px);
    grid-template-areas:
      "mode settings theme help kill"
      "clock clock status status status";
    justify-content: end;
    text-align: center;
  }
  .leveraged-lens-hero,
  .leveraged-lens-checklist { grid-template-columns: 1fr; }
}

@media (max-width: 1450px) {
  .layout { grid-template-columns: 270px minmax(0, 1fr) 300px; }
}

@media print {
  @page { size: landscape; margin: .3in .45in .32in .3in; }
  @page leveragedLensPortrait { size: portrait; margin: .35in; }
  body.printing-report { background: #fff !important; }
  body.printing-report * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  body.printing-report .app, body.printing-report .battle-overlay, body.printing-report .utility-modal > header, body.printing-report .export-actions, body.printing-report .portfolio-exporter-controls, body.printing-report .portfolio-export-grid, body.printing-report .portfolio-export-actions, body.printing-report .portfolio-export-subtitle, body.printing-report .portfolio-export-preview-label, body.printing-report .portfolio-export-generating { display: none !important; }
  body.printing-report,
  body.printing-report .utility-overlay,
  body.printing-report .utility-modal,
  body.printing-report .utility-body,
  body.printing-report .portfolio-export-preview,
  body.printing-report .portfolio-export-report,
  body.printing-report .portfolio-report-section { min-width: 0; max-width: 100%; box-sizing: border-box; }
  body.printing-report .utility-overlay { position: static; display: block; padding: 0; background: #fff; }
  body.printing-report .utility-modal { width: 100%; max-height: none; overflow: visible; border: 0; box-shadow: none; background: #fff; }
  body.printing-report .utility-body { padding: 0; }
  body.printing-report .portfolio-export-preview { max-height: none; overflow: visible; padding: 0 .08in 0 0; }
  body.printing-report .print-report,
  body.printing-report .holdings-report { width: 100%; max-width: 100%; overflow: hidden; color: #17202a; background: #fff; border: 0; padding: 0; box-sizing: border-box; }
  body.printing-report .print-section,
  body.printing-report .portfolio-report-section { margin-bottom: 16px; }
  body.printing-report .print-section { break-inside: avoid; page-break-inside: avoid; }
  body.printing-report .portfolio-report-section { break-inside: auto; page-break-inside: auto; }
  body.printing-report .print-section-title { color: #17202a !important; border-bottom: 1px solid #d1d5db; padding-bottom: 7px; margin-bottom: 8px; }
  body.printing-report .print-report table { width: 100%; max-width: 100%; font-size: 9px; table-layout: fixed; }
  body.printing-report .print-report th, body.printing-report .print-report td { border-color: #2f4050; padding: 3px 4px; color: #17202a; line-height: 1.22; overflow-wrap: anywhere; word-break: break-word; hyphens: auto; white-space: normal; }
  body.printing-report .print-report th { background: #eef2f5 !important; color: #17202a; }
  body.printing-report .portfolio-export-report { width: 100%; overflow: visible; gap: 18px; font-size: 12px; line-height: 1.38; }
  body.printing-report .portfolio-export-report > header { gap: 12px; padding-bottom: 12px; margin-bottom: 2px; }
  body.printing-report .portfolio-export-report > header h2 { font-size: 20px; line-height: 1.15; }
  body.printing-report .portfolio-export-report > header p,
  body.printing-report .portfolio-export-report footer { font-size: 10.5px; line-height: 1.35; }
  body.printing-report .portfolio-export-report .portfolio-report-section { display: grid; overflow: visible; gap: 9px; margin-bottom: 20px; }
  body.printing-report .portfolio-export-report .print-section-title { font-size: 16px; padding-bottom: 7px; margin-bottom: 4px; }
  body.printing-report .portfolio-export-report .portfolio-section-meta { font-size: 10px; line-height: 1.32; }
  body.printing-report .portfolio-export-report .portfolio-export-table { width: 100%; max-width: 100%; table-layout: fixed; border-collapse: collapse; font-size: 11.5px; box-sizing: border-box; }
  body.printing-report .portfolio-export-report .portfolio-export-table th,
  body.printing-report .portfolio-export-report .portfolio-export-table td { min-width: 0; max-width: none; overflow: visible; padding: 6px 7px; line-height: 1.32; overflow-wrap: anywhere; word-break: normal; hyphens: auto; white-space: normal; }
  body.printing-report .portfolio-export-report .portfolio-export-table th { font-size: 11px; font-weight: 800; }
  body.printing-report .portfolio-export-report .portfolio-export-table .col-why,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-why-it-ranked,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-read,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-detail,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-note,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-context,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-freshness,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-entry-support,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-sizing-note,
  body.printing-report .portfolio-export-report .portfolio-export-table .col-company-asset-name { overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
  body.printing-report .portfolio-export-table tr { break-inside: avoid; page-break-inside: avoid; }
  body.printing-report .day-trader-print-report td:nth-child(9) { line-height: 1.25; }
  body.printing-leveraged-lens-report .leveraged-lens-print-report {
    page: leveragedLensPortrait;
    width: 100%;
    color: #17202a !important;
    background: #fff !important;
    font-size: 10.4px;
    line-height: 1.28;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report > header {
    display: flex !important;
    gap: 8px;
    align-items: center;
    padding-bottom: 8px;
    margin-bottom: 4px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report h2 {
    margin: 0;
    color: #17202a !important;
    font-size: 16px;
    line-height: 1.1;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report header p,
  body.printing-leveraged-lens-report .leveraged-lens-print-report footer {
    color: #56616e !important;
    font-size: 9px;
    line-height: 1.24;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-summary p {
    margin: 0 0 7px;
    color: #334155 !important;
    font-size: 10px;
  }
  body.printing-leveraged-lens-report .print-section {
    margin-bottom: 9px;
    break-inside: avoid;
    page-break-inside: avoid;
  }
  body.printing-leveraged-lens-report .print-section-title {
    font-size: 11px;
    padding-bottom: 4px;
    margin: 0 0 5px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-metrics,
  body.printing-leveraged-lens-report .leveraged-lens-print-inputs > div {
    gap: 5px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-metrics div,
  body.printing-leveraged-lens-report .leveraged-lens-print-inputs > div > div,
  body.printing-leveraged-lens-report .leveraged-lens-print-checklist article {
    border-color: #cfd8e3 !important;
    background: #fff !important;
    padding: 5px 6px;
    border-radius: 4px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-metrics span,
  body.printing-leveraged-lens-report .leveraged-lens-print-inputs span {
    color: #64748b !important;
    font-size: 8px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-metrics strong,
  body.printing-leveraged-lens-report .leveraged-lens-print-inputs strong {
    color: #17202a !important;
    font-size: 10px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-metrics small {
    color: #52606d !important;
    font-size: 8px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report table {
    width: 100%;
    max-width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    font-size: 7.6px;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report th,
  body.printing-leveraged-lens-report .leveraged-lens-print-report td {
    border-color: #cfd8e3 !important;
    color: #17202a !important;
    padding: 2.5px 3px;
    line-height: 1.15;
    overflow-wrap: anywhere;
    word-break: normal;
    hyphens: auto;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report th {
    background: #eef2f5 !important;
    font-size: 7.2px;
    font-weight: 800;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report tr {
    break-inside: avoid;
    page-break-inside: avoid;
  }
  body.printing-leveraged-lens-report .leveraged-lens-print-report small,
  body.printing-leveraged-lens-report .leveraged-lens-print-report .up,
  body.printing-leveraged-lens-report .leveraged-lens-print-report .down {
    color: #334155 !important;
  }
  body.printing-report .holdings-report > header { border: 0; background: #fff; color: #17202a; padding: 0 0 14px; }
  body.printing-report .holdings-report > header h2 { color: #17202a; }
  body.printing-report .holdings-report > header p { color: #56616e; }
  body.printing-report .portfolio-health-goose { display: block !important; object-fit: cover; background: transparent !important; }
  body.printing-report .holdings-eggfolio-link { display: none !important; }
  body.printing-report .holdings-improvement-note { display: block !important; margin-top: 6px; border-color: #2f4050; background: #fff !important; color: #17202a; box-shadow: none; break-inside: avoid; page-break-inside: avoid; }
  body.printing-report .holdings-improvement-note h3 { color: #17202a; font-size: 12px; }
  body.printing-report .holdings-improvement-note ol { color: #4c5968; font-size: 10px; line-height: 1.3; }
  body.printing-report .holdings-summary,
  body.printing-report .holdings-grand-total { gap: 4px; margin-bottom: 5px; }
  body.printing-report .holdings-summary div,
  body.printing-report .holdings-grand-total div,
  body.printing-report .holding-row { background: #fff !important; border-color: #2f4050; box-shadow: none; }
  body.printing-report .holding-row { grid-template-columns: minmax(58px, .5fr) repeat(10, minmax(56px, 1fr)); gap: 3px; padding: 4px 5px; break-inside: avoid; page-break-inside: avoid; }
  body.printing-report .holding-row > header,
  body.printing-report .holding-row dl div { min-height: 30px; padding: 4px 5px; border-color: #2f4050; background: #fff !important; color: #17202a; box-shadow: none; }
  body.printing-report .holdings-summary span,
  body.printing-report .holdings-grand-total span,
  body.printing-report .holding-row dt { color: #4c5968; }
  body.printing-report .holdings-summary strong,
  body.printing-report .holdings-grand-total strong,
  body.printing-report .holding-row dd,
  body.printing-report .holding-horizon-plain { color: #17202a; }
  body.printing-report .holding-row > header strong { font-size: 12px; }
  body.printing-report .holding-row dt { font-size: 9px; }
  body.printing-report .holding-row dd { font-size: 10px; }
}

@media print and (orientation: portrait) {
  body.printing-report .portfolio-export-report { font-size: 10.5px; }
  body.printing-report .portfolio-export-report > header h2 { font-size: 17px; }
  body.printing-report .portfolio-export-report .print-section-title { font-size: 14px; }
  body.printing-report .portfolio-export-report .portfolio-export-table th,
  body.printing-report .portfolio-export-report .portfolio-export-table td { padding: 4px 5px; font-size: 9.8px; line-height: 1.26; }
}

@media (prefers-reduced-motion: no-preference) {
  .gold-button:hover .mini-egg, .cracked-egg { animation: eggPulse 2.8s ease-in-out infinite; }
  @keyframes eggPulse { 0%, 100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-1px) rotate(-1deg); } }
}

@media (prefers-reduced-motion: reduce) {
  .butt-meter:hover::before { animation: none; opacity: .82; }
  .asset-detail-pill { animation: none; }
}

