:root {
  --canvas: #070a14;
  --canvas-2: #0b1020;
  --panel: rgba(16, 23, 43, .92);
  --panel-strong: #121a30;
  --panel-muted: #0d1427;
  --text: #f5f7ff;
  --muted: #99a6c4;
  --border: rgba(165, 183, 229, .14);
  --gold: #f5bd4e;
  --gold-soft: rgba(245, 189, 78, .14);
  --cyan: #46d9e7;
  --green: #48d597;
  --amber: #f4ae48;
  --red: #f17182;
  --violet: #a993ff;
  --shadow: 0 24px 70px rgba(0,0,0,.36);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; color: var(--text); background: radial-gradient(circle at 88% -6%, rgba(104, 78, 30, .32), transparent 28rem), radial-gradient(circle at 12% 20%, rgba(27, 101, 136, .18), transparent 31rem), var(--canvas); font-family: "Be Vietnam Pro", system-ui, sans-serif; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
button:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid var(--cyan); outline-offset: 3px; }
a { color: inherit; text-decoration: none; }
.skip-link { position: fixed; z-index: 100; top: -4rem; left: 1rem; padding: .7rem 1rem; border-radius: .6rem; color: #061017; background: var(--cyan); }
.skip-link:focus { top: 1rem; }

.shell { min-height: 100vh; }
.header { position: sticky; z-index: 20; top: 0; backdrop-filter: blur(18px); border-bottom: 1px solid var(--border); background: rgba(7, 10, 20, .82); }
.nav { max-width: 1260px; min-height: 72px; margin: auto; padding: 0 1.25rem; display: flex; align-items: center; gap: 1.6rem; }
.brand { display: inline-flex; align-items: center; gap: .75rem; font-weight: 800; letter-spacing: -.03em; white-space: nowrap; }
.brand-mark { height: 40px; width: 48px; display: inline-flex; align-items: center; justify-content: center; background: transparent; border: none; box-shadow: none; padding: 0; filter: drop-shadow(0 0 10px rgba(245,189,78,.35)); transition: transform .2s ease, filter .2s ease; }
.brand-mark:hover { transform: scale(1.08); filter: drop-shadow(0 0 16px rgba(245,189,78,.65)); }
.brand-mark svg { width: 100%; height: 100%; object-fit: contain; }
.nav-links { display: flex; flex: 1; justify-content: center; gap: .1rem; overflow-x: auto; scrollbar-width: none; }
.nav-link { padding: .5rem .68rem; border-radius: .55rem; color: var(--muted); font-size: .83rem; font-weight: 600; white-space: nowrap; }
.nav-link:hover, .nav-link.active { color: var(--text); background: rgba(255,255,255,.055); }
.nav-actions { display: flex; align-items: center; gap: .5rem; }
.nav-menu { display: none; }

.ticker { border-bottom: 1px solid rgba(70,217,231,.14); color: #c8d4ec; background: #091323; }
.ticker-inner { max-width: 1260px; min-height: 34px; margin: auto; padding: 0 1.25rem; display: flex; align-items: center; gap: .65rem; font-size: .73rem; overflow: hidden; white-space: nowrap; }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 5px rgba(72,213,151,.13); }
.ticker-label { color: var(--green); font-weight: 800; letter-spacing: .08em; }
.ticker-item { color: var(--muted); }

.page { max-width: 1260px; padding: 2.5rem 1.25rem 5rem; margin: auto; }
.eyebrow { color: var(--gold); text-transform: uppercase; font: 600 .72rem "JetBrains Mono", monospace; letter-spacing: .1em; }
.muted { color: var(--muted); }
.mono { font-family: "JetBrains Mono", monospace; }
.section { margin-top: 4.5rem; }
.section-head { display: flex; gap: 1rem; align-items: end; justify-content: space-between; margin-bottom: 1.35rem; }
.section-head h2 { margin: .35rem 0 0; font-size: clamp(1.45rem, 2vw, 2rem); letter-spacing: -.04em; }
.section-head p { max-width: 42rem; margin: 0; color: var(--muted); font-size: .88rem; }

.hero { min-height: 490px; padding: 4.8rem 0 2.5rem; display: grid; grid-template-columns: 1.08fr .92fr; align-items: center; gap: 3rem; }
.hero h1 { max-width: 13ch; margin: .6rem 0 1.25rem; font-size: clamp(2.7rem, 6vw, 5.7rem); line-height: .98; letter-spacing: -.075em; }
.hero h1 em { color: var(--gold); font-style: normal; }
.hero-copy { max-width: 42rem; margin: 0; color: #c2cbe0; line-height: 1.72; }
.hero-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.6rem; }
.button { min-height: 42px; display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .7rem 1rem; border: 1px solid transparent; border-radius: .75rem; color: var(--text); background: rgba(255,255,255,.07); font-size: .85rem; font-weight: 700; }
.button:hover { transform: translateY(-1px); border-color: rgba(255,255,255,.2); }
.button.primary { color: #211401; background: linear-gradient(135deg, #ffe2a1, var(--gold)); box-shadow: 0 12px 28px rgba(245,189,78,.15); }
.button.outline { border-color: var(--border); background: transparent; }
.button.danger { color: #fff; background: rgba(241,113,130,.16); border-color: rgba(241,113,130,.32); }
.icon-button { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: .7rem; color: var(--muted); background: rgba(255,255,255,.03); }

.orbit { position: relative; min-height: 382px; display: grid; place-items: center; overflow: hidden; border: 1px solid rgba(245,189,78,.18); border-radius: 28px; background: radial-gradient(circle at 50% 49%, rgba(245,189,78,.16), transparent 14%), linear-gradient(145deg, rgba(23,32,61,.95), rgba(8,11,23,.84)); box-shadow: var(--shadow); }
.orbit:before, .orbit:after { content: ""; position: absolute; width: 118%; height: 48%; border: 1px solid rgba(70,217,231,.18); border-radius: 50%; transform: rotate(-18deg); }
.orbit:after { width: 82%; height: 82%; border-color: rgba(245,189,78,.18); transform: rotate(31deg); }
.orbit-center { z-index: 1; width: 144px; height: 144px; display: grid; place-items: center; border: 8px solid rgba(245,189,78,.16); border-radius: 50%; text-align: center; background: radial-gradient(circle, #f8d77c, #d79424); color: #241702; box-shadow: 0 0 55px rgba(245,189,78,.35); }
.orbit-center strong { font-size: 1.65rem; letter-spacing: -.08em; }
.orbit-center small { font: 600 .67rem "JetBrains Mono", monospace; }
.orbital-card { position: absolute; z-index: 2; padding: .65rem .75rem; border: 1px solid var(--border); border-radius: .8rem; background: rgba(8,13,29,.84); box-shadow: var(--shadow); font-size: .73rem; }
.orbital-card b { display: block; margin-top: .2rem; font-size: .9rem; }
.orbital-card.one { top: 15%; left: 8%; }
.orbital-card.two { right: 7%; top: 24%; }
.orbital-card.three { right: 14%; bottom: 14%; }
.signal { color: var(--green); }
.warning { color: var(--amber); }
.danger { color: var(--red); }

.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: .9rem; margin-top: 2.1rem; }
.metric { padding: .85rem 0; border-top: 1px solid var(--border); }
.metric strong { display: block; color: var(--gold); font-size: 1.45rem; letter-spacing: -.05em; }
.metric span { color: var(--muted); font-size: .72rem; }

.grid { display: grid; gap: 1rem; }
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card { min-width: 0; border: 1px solid var(--border); border-radius: 18px; background: linear-gradient(145deg, rgba(20,29,54,.88), rgba(10,15,30,.9)); box-shadow: 0 10px 35px rgba(0,0,0,.16); }
.card-pad { padding: 1.2rem; }
.card h3 { margin: .35rem 0 .55rem; font-size: 1rem; letter-spacing: -.025em; }
.card p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.6; }
.tag { display: inline-flex; align-items: center; gap: .32rem; padding: .28rem .52rem; border: 1px solid var(--border); border-radius: 999px; color: #bed1e8; background: rgba(255,255,255,.035); font-size: .68rem; font-weight: 700; }
.tag.gold { color: #ffe3a8; border-color: rgba(245,189,78,.3); background: var(--gold-soft); }
.tag.green { color: #a2f0c7; border-color: rgba(72,213,151,.28); background: rgba(72,213,151,.1); }
.tag.amber { color: #ffd496; border-color: rgba(244,174,72,.3); background: rgba(244,174,72,.1); }
.tag.red { color: #ffbbc5; border-color: rgba(241,113,130,.3); background: rgba(241,113,130,.1); }

.top-account { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; padding: 1.25rem; border-color: rgba(245,189,78,.32); background: radial-gradient(circle at 92% 20%, rgba(245,189,78,.15), transparent 19rem), var(--panel); }
.rank-orb { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 18px; color: #201600; background: linear-gradient(135deg, #ffedbd, var(--gold)); font: 800 1.05rem "JetBrains Mono", monospace; }
.score-stack { text-align: right; }
.score-stack strong { display: block; font: 800 1.8rem "JetBrains Mono", monospace; }
.score-stack span { color: var(--muted); font-size: .7rem; }

.table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 18px; background: rgba(12,18,35,.75); }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th { padding: .8rem 1rem; color: #9eabc9; background: rgba(255,255,255,.025); text-align: left; font: 600 .68rem "JetBrains Mono", monospace; letter-spacing: .07em; text-transform: uppercase; }
td { padding: 1rem; border-top: 1px solid var(--border); font-size: .82rem; }
tr:hover td { background: rgba(255,255,255,.018); }
.num { font-family: "JetBrains Mono", monospace; }
.positive { color: var(--green); }
.negative { color: var(--red); }

.page-title { padding: 2.5rem 0 1.2rem; }
.page-title h1 { max-width: 16ch; margin: .45rem 0 .7rem; font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.04; letter-spacing: -.06em; }
.page-title p { max-width: 48rem; margin: 0; color: var(--muted); line-height: 1.65; }
.pill-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.2rem 0 1.6rem; }
.pill-tabs button { padding: .52rem .75rem; border: 1px solid var(--border); border-radius: 999px; color: var(--muted); background: transparent; font-size: .78rem; }
.pill-tabs button.active { color: #251600; border-color: var(--gold); background: var(--gold); }

.challenge-timeline { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: .65rem; }
.timeline-step { position: relative; min-height: 132px; padding: 1rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(16,24,44,.78); }
.timeline-step:before { content: attr(data-step); display: block; margin-bottom: .8rem; color: var(--gold); font: 700 .68rem "JetBrains Mono", monospace; }
.timeline-step b { display: block; font-size: .9rem; }
.timeline-step span { display: block; margin-top: .4rem; color: var(--muted); font-size: .76rem; line-height: 1.5; }
.formula { padding: 1rem; overflow: auto; border: 1px solid rgba(70,217,231,.18); border-radius: 12px; color: #bdeef2; background: #091827; font: 600 .77rem/1.75 "JetBrains Mono", monospace; white-space: pre; }

.market-top { display: grid; grid-template-columns: 1.08fr .92fr; gap: 1rem; }
.gauge { min-height: 308px; display: grid; place-items: center; position: relative; overflow: hidden; }
.gauge:before { content: ""; width: 242px; height: 242px; border: 22px solid rgba(255,255,255,.07); border-top-color: var(--green); border-right-color: var(--cyan); border-radius: 50%; transform: rotate(42deg); }
.gauge-center { position: absolute; display: grid; gap: .2rem; text-align: center; }
.gauge-center strong { font: 800 3rem "JetBrains Mono", monospace; letter-spacing: -.1em; }
.gauge-center span { color: var(--green); font-size: .84rem; font-weight: 700; }
.gauge-center small { color: var(--muted); font-size: .67rem; }
.component-row { display: grid; grid-template-columns: 1.2fr .6fr .5fr; gap: .8rem; align-items: center; padding: .7rem 0; border-top: 1px solid var(--border); font-size: .78rem; }
.bar { height: 6px; overflow: hidden; border-radius: 10px; background: rgba(255,255,255,.09); }
.bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--green)); }
.ai-unavailable { padding: 1.1rem; border: 1px dashed rgba(244,174,72,.45); border-radius: 14px; color: #f6d69b; background: rgba(244,174,72,.08); }

.lesson-list { display: grid; gap: .75rem; }
.lesson { padding: 1rem; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.025); }
.lesson b { display: block; margin-bottom: .3rem; }
.lesson span { color: var(--muted); font-size: .78rem; line-height: 1.55; }
.risk-layout { display: grid; grid-template-columns: 1fr .9fr; gap: 1rem; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; }
label { display: grid; gap: .38rem; color: #bcc7df; font-size: .75rem; font-weight: 600; }
input, textarea, select { width: 100%; padding: .72rem .76rem; border: 1px solid var(--border); border-radius: .65rem; color: var(--text); background: rgba(4,8,19,.52); }
textarea { min-height: 94px; resize: vertical; }
.result-box { display: grid; gap: .8rem; padding: 1.2rem; border: 1px solid rgba(72,213,151,.28); border-radius: 14px; background: rgba(72,213,151,.075); }
.result-box strong { font: 800 2rem "JetBrains Mono", monospace; color: #a4f2c8; letter-spacing: -.08em; }

.product-card { display: flex; flex-direction: column; min-height: 220px; padding: 1.1rem; }
.product-icon { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: .9rem; border-radius: 14px; color: #211603; background: linear-gradient(135deg, #ffe6a7, var(--gold)); font-weight: 900; }
.product-card p { flex: 1; }
.product-footer { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-top: 1rem; }

.contact-card { display: flex; align-items: center; gap: .85rem; padding: 1rem; }
.contact-icon { flex: 0 0 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: var(--cyan); background: rgba(70,217,231,.1); font-weight: 800; }
.contact-card small { display: block; margin-top: .2rem; color: var(--muted); }

.member-layout, .admin-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 1.2rem; padding-top: 2rem; }
.side-nav { position: sticky; top: 112px; align-self: start; padding: .55rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(13,20,39,.84); }
.side-nav button { width: 100%; padding: .7rem .75rem; border: 0; border-radius: .6rem; color: var(--muted); background: transparent; text-align: left; font-size: .8rem; font-weight: 600; }
.side-nav button:hover, .side-nav button.active { color: var(--text); background: rgba(255,255,255,.065); }
.profile-hero { display: grid; grid-template-columns: 1.2fr auto; gap: 1rem; align-items: center; padding: 1.25rem; }
.profile-name { margin: .5rem 0; font-size: 1.75rem; letter-spacing: -.05em; }
.hqi-box { min-width: 140px; padding: .9rem; border: 1px solid rgba(245,189,78,.28); border-radius: 14px; text-align: center; background: var(--gold-soft); }
.hqi-box strong { display: block; color: #ffe09b; font: 800 2.5rem "JetBrains Mono", monospace; letter-spacing: -.12em; }
.journey-card { padding: 1rem; }
.journey-card header { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-bottom: .65rem; }
.journey-card b { font-size: .85rem; }
.journey-card span { color: var(--gold); font: 700 .75rem "JetBrains Mono", monospace; }
.journey-card small { display: block; margin-top: .55rem; color: var(--muted); font-size: .69rem; line-height: 1.45; }
.timeline { display: grid; gap: .2rem; }
.timeline-item { display: grid; grid-template-columns: 78px 12px 1fr; gap: .7rem; padding: .55rem 0; align-items: center; font-size: .78rem; }
.timeline-item time { color: var(--muted); font-size: .69rem; }
.timeline-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(70,217,231,.11); }
.timeline-dot.warning { background: var(--amber); box-shadow: 0 0 0 5px rgba(244,174,72,.11); }
.timeline-dot.success { background: var(--green); box-shadow: 0 0 0 5px rgba(72,213,151,.11); }

.admin-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .8rem; padding: 1.1rem; }
.status-banner { padding: .75rem .9rem; border: 1px solid rgba(244,174,72,.3); border-radius: 12px; color: #ffdaa0; background: rgba(244,174,72,.08); font-size: .76rem; }
.admin-editor { display: grid; gap: 1rem; }
.editor-tabs { display: flex; flex-wrap: wrap; gap: .45rem; }
.editor-tabs button { padding: .5rem .7rem; border: 1px solid var(--border); border-radius: .6rem; color: var(--muted); background: transparent; font-size: .76rem; }
.editor-tabs button.active { color: #201503; border-color: var(--gold); background: var(--gold); }
.toast { position: fixed; z-index: 50; right: 1.2rem; bottom: 1.2rem; max-width: 340px; padding: .9rem 1rem; border: 1px solid rgba(72,213,151,.35); border-radius: 12px; color: #dcffec; background: #102c25; box-shadow: var(--shadow); font-size: .8rem; }
.toast.error { border-color: rgba(241,113,130,.35); color: #ffe1e5; background: #32141c; }

.footer { border-top: 1px solid var(--border); background: #080c18; }
.footer-inner { max-width: 1260px; margin: auto; padding: 2rem 1.25rem; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; color: var(--muted); font-size: .74rem; }
.footer b { color: var(--text); }

@media (max-width: 900px) { .nav { gap: .7rem; } .nav-links { justify-content: flex-start; } .nav-actions .button { display: none; } .hero, .market-top, .risk-layout { grid-template-columns: 1fr; } .hero { padding-top: 3rem; } .hero h1 { max-width: 14ch; } .orbit { min-height: 330px; } .grid.four { grid-template-columns: repeat(2, minmax(0,1fr)); } .challenge-timeline { grid-template-columns: repeat(2, 1fr); } .member-layout, .admin-layout { grid-template-columns: 1fr; } .side-nav { position: static; display: flex; overflow-x: auto; } .side-nav button { min-width: max-content; } }
@media (max-width: 640px) { .nav { min-height: 62px; padding: 0 .9rem; } .nav-links { display: none; } .nav-menu { display: grid; } .ticker-inner, .page { padding-left: .9rem; padding-right: .9rem; } .page { padding-top: 1.5rem; } .hero { gap: 1.6rem; min-height: 0; } .metric-row, .grid.two, .grid.three, .grid.four, .form-grid { grid-template-columns: 1fr; } .top-account { grid-template-columns: auto 1fr; } .score-stack { grid-column: 2; text-align: left; } .orbit { border-radius: 20px; } .orbital-card { font-size: .63rem; } .section { margin-top: 3.25rem; } .section-head { display: block; } .section-head p { margin-top: .55rem; } .challenge-timeline { grid-template-columns: 1fr; } .profile-hero { grid-template-columns: 1fr; } .hqi-box { width: 100%; } .component-row { grid-template-columns: 1fr .4fr; } .component-row .bar { grid-column: span 2; } }
@media (prefers-reduced-motion: reduce) { *, *:before, *:after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

/* HQT SPA contract â€” components rendered by app.js */
.brand-accent,.text-gold{color:var(--gold)}
.source-status{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1.1rem;color:var(--muted);font-size:.75rem}
.notice-card{display:flex;flex-direction:column;min-height:190px}.notice-card p{flex:1}.notice-card small{display:block;margin-top:1rem;color:var(--muted);font-size:.68rem}
.violation-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}.violation-count{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(241,113,130,.28);border-radius:16px;color:#ffc2ca;background:rgba(241,113,130,.09);font:800 1.35rem "JetBrains Mono",monospace}
.section.compact{margin-top:2rem}.rule-card .rank-orb{width:42px;height:42px;border-radius:13px;margin-bottom:.75rem;font-size:.8rem}.formula{margin-top:1rem}
.market-heading,.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.timezone-switch{display:inline-flex;padding:.25rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.03)}.timezone-switch button{padding:.52rem .72rem;border:0;border-radius:9px;color:var(--muted);background:transparent;font-size:.76rem;font-weight:700}.timezone-switch button.active{color:#201503;background:var(--gold)}
.event-time{margin-bottom:.65rem;color:var(--gold);font:800 1.15rem "JetBrains Mono",monospace}.news-meta{display:flex;align-items:center;justify-content:space-between;gap:.6rem;color:var(--muted);font-size:.72rem}.integration-note,.privacy-note,.disclaimer{color:var(--muted);font-size:.75rem;line-height:1.6}.disclaimer{margin-top:1.25rem;padding:.8rem 1rem;border-left:3px solid var(--amber);background:rgba(244,174,72,.06)}
.form-span{grid-column:1/-1}.result-box{margin-top:1rem}.result-box.error-box{border-color:rgba(241,113,130,.38);color:#ffdbe0;background:rgba(241,113,130,.08)}
.side-nav a{display:block;width:100%;padding:.7rem .75rem;border-radius:.6rem;color:var(--muted);font-size:.8rem;font-weight:600}.side-nav a:hover,.side-nav a.active{color:var(--text);background:rgba(255,255,255,.065)}
.member-main,.admin-main{min-width:0}.member-metrics{margin-top:1rem}.profile-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.big-number{margin:.55rem 0;color:var(--gold);font:800 2.3rem "JetBrains Mono",monospace;letter-spacing:-.08em}.big-label{margin:.55rem 0;font-size:1.25rem;font-weight:800}.member-metrics .bar{margin-top:.85rem}
.task-list{display:grid;gap:.55rem;margin-top:.8rem}.task-item{display:grid;grid-template-columns:32px 1fr;gap:.65rem;align-items:center;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025)}.task-status{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;color:var(--muted);background:rgba(255,255,255,.06)}.task-status.submitted{color:#ffe0a5;background:rgba(244,174,72,.12)}.task-item small,.admin-row small{display:block;margin-top:.2rem;color:var(--muted);font-size:.68rem}
.form-message{min-height:1.2rem;margin-top:.65rem;color:var(--muted);font-size:.74rem}.form-message.success{color:var(--green)}.form-message.error{color:var(--red)}
.admin-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.token-field{flex:1;min-width:220px}.admin-list{display:grid;gap:.55rem}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025)}
.contact-arrow{margin-left:auto;color:var(--gold)}.empty-state{grid-column:1/-1;padding:2rem;border:1px dashed var(--border);border-radius:16px;color:var(--muted);text-align:center}.app-loading,.error-state{min-height:70vh;display:grid;place-content:center;justify-items:center;gap:1rem;padding:2rem;text-align:center}.app-loading{display:flex;align-items:center}.error-state h1{max-width:18ch;margin:0;font-size:clamp(2rem,5vw,4rem)}
@media(max-width:900px){.admin-content-grid{grid-template-columns:1fr}.market-heading,.admin-heading{align-items:flex-start;flex-direction:column}.side-nav a{min-width:max-content}}
@media(max-width:640px){.nav{position:relative}.nav-links.open{position:absolute;z-index:30;display:grid;top:62px;left:.9rem;right:.9rem;padding:.55rem;border:1px solid var(--border);border-radius:14px;background:#0d1427;box-shadow:var(--shadow)}.nav-links.open .nav-link{padding:.75rem}.journey-link{display:none}.studio-link{display:none}.hero h1{font-size:clamp(2.55rem,15vw,4rem)}.hero{padding-top:2.5rem}.orbit{min-height:300px}.orbital-card.two{top:17%;right:4%}.orbital-card.three{right:7%;bottom:10%}.violation-card{grid-template-columns:1fr}.market-heading{padding-top:1rem}.timezone-switch{width:100%}.timezone-switch button{flex:1}.admin-top{align-items:stretch}.token-field{min-width:100%}.contact-card{align-items:flex-start}.footer-inner{display:grid}}
@media(max-width:374px){.page{padding-left:.75rem;padding-right:.75rem}.nav{padding-left:.75rem;padding-right:.75rem}.brand{font-size:.78rem}.brand-mark{width:31px;height:31px}.hero h1{font-size:2.45rem}.orbit-center{width:118px;height:118px}.orbital-card{max-width:130px}.top-account{grid-template-columns:1fr}.score-stack{grid-column:auto}.timeline-item{grid-template-columns:64px 10px 1fr}}

/* Responsive regression fixes */
html,body{overflow-x:clip}
body{min-width:0}
.icon-button.nav-menu{display:none}
@media(max-width:640px){.icon-button.nav-menu{display:grid}}

/* ================================================================
   MINH DAO LIGHT SYSTEM â€” clarity, dignity, discipline
   Reference roles: Forex Factory information density + CPPAI lightness
   ================================================================ */
:root{
  --canvas:#f4f8fb;--canvas-2:#eaf2f8;--panel:#fff;--panel-strong:#f8fbfd;--panel-muted:#eef5f9;
  --text:#102a43;--muted:#60778c;--border:#d7e3ec;--gold:#f2ad32;--gold-soft:#fff5d9;
  --cyan:#1769a6;--green:#0d9668;--amber:#d98212;--red:#c43d4f;--violet:#6657b8;
  --shadow:0 20px 55px rgba(30,75,110,.10);--shadow-soft:0 8px 24px rgba(30,75,110,.08)
}
html{background:#f4f8fb}body{color:var(--text);background:radial-gradient(circle at 88% 0,rgba(72,160,214,.12),transparent 34rem),linear-gradient(180deg,#fbfdff 0,#f4f8fb 60%,#edf5f9 100%)}
.header{border-bottom:1px solid rgba(23,105,166,.14);background:rgba(255,255,255,.9);box-shadow:0 4px 24px rgba(30,75,110,.06)}
.nav-link{color:#526a7e}.nav-link:hover,.nav-link.active{color:#0e4f82;background:#eaf3f9}.brand{color:#173d5d}.brand-mark{background:transparent;border:none;box-shadow:none;border-radius:0;padding:0}.brand-accent{color:#c8790c}
.ticker{border-bottom:0;color:#e8f5ff;background:linear-gradient(90deg,#0d4b7d,#1769a6)}.ticker-item{color:#d5eafa}.ticker-label{color:#fff5bd}.live-dot{background:#5ce0aa;box-shadow:0 0 0 5px rgba(92,224,170,.18)}
.eyebrow{color:#1769a6}.text-gold{color:#bd6d08}.muted{color:var(--muted)}
.card{border-color:var(--border);background:rgba(255,255,255,.94);box-shadow:var(--shadow-soft)}.card p{color:var(--muted)}
.button{color:#23445f;border-color:#d3e1ea;background:#fff}.button:hover{border-color:#77a8c9;box-shadow:0 8px 20px rgba(30,75,110,.1)}.button.primary{color:#fff;border-color:#1769a6;background:linear-gradient(135deg,#247dbb,#0e548b);box-shadow:0 12px 28px rgba(23,105,166,.2)}.button.secondary{color:#4a3000;border-color:#e8a42b;background:linear-gradient(135deg,#ffd87e,#f2ad32)}.button.outline{color:#244a66;border-color:#bed1df;background:rgba(255,255,255,.74)}.icon-button{color:#365a75;border-color:#cfdee8;background:#fff}
.orbit{border-color:#c4dce9;background:radial-gradient(circle at 50% 49%,rgba(242,173,50,.18),transparent 16%),linear-gradient(145deg,#f9fcfe,#e7f1f7);box-shadow:var(--shadow)}.orbit:before{border-color:rgba(23,105,166,.22)}.orbit:after{border-color:rgba(242,173,50,.3)}.orbit-center{color:#fff;border-color:#fff4d1;background:linear-gradient(145deg,#f5ba4c,#d98212);box-shadow:0 0 50px rgba(242,173,50,.28)}.orbital-card{color:#183b56;border-color:#cbdde8;background:rgba(255,255,255,.94);box-shadow:var(--shadow-soft)}
.metric{border-color:#dbe7ee}.metric strong{color:#0e5b94}.tag{color:#44667f;border-color:#cbdde7;background:#f5f9fc}.tag.gold{color:#9a5a04;border-color:#edcd8c;background:#fff7e3}.tag.green{color:#08724f;border-color:#a6dcca;background:#edf9f4}.tag.amber{color:#985a0a;border-color:#eccb98;background:#fff8eb}.tag.red{color:#a82f42;border-color:#edb7c0;background:#fff1f3}
.top-account{border-color:#bdd6e6;background:linear-gradient(115deg,#fff,#edf6fb)}.rank-orb{color:#fff;background:linear-gradient(145deg,#247dbb,#0e548b)}.score-stack strong{color:#0d5c96}
.table-wrap{border-color:#d1e0e9;background:#fff;box-shadow:var(--shadow-soft)}th{color:#44657d;background:#eaf3f8}td{border-color:#e2ebf1}tr:hover td{background:#f6fafc}.positive{color:#087d57}.negative,.danger{color:#bd3448}.warning{color:#b56b0c}.signal{color:#087d57}
.page-title p,.section-head p{color:var(--muted)}.formula{color:#114d76;border-color:#c2dce9;background:#edf7fb}.timeline-step,.lesson,.journey-card{border-color:#d7e3ec;background:#fff}.timeline-step:before,.journey-card span{color:#1769a6}
.gauge:before{border-color:#e1ebf1;border-top-color:#0d9668;border-right-color:#2586bd}.gauge-center span{color:#087d57}.component-row{border-color:#dde8ef}.bar{background:#dde8ef}.bar i{background:linear-gradient(90deg,#2586bd,#19b47e)}.ai-unavailable{color:#8a550c;border-color:#e8bf75;background:#fff8e8}
input,textarea,select{color:#163b56;border-color:#c8dae6;background:#fff}input::placeholder,textarea::placeholder{color:#91a4b3}.result-box{color:#146744;border-color:#afd9c8;background:#edf9f4}.result-box strong{color:#08724f}.product-icon{color:#fff;background:linear-gradient(145deg,#2586bd,#0e548b)}.contact-icon{color:#0e5e97;background:#e6f2f9}
.side-nav{border-color:#d3e1ea;background:rgba(255,255,255,.92);box-shadow:var(--shadow-soft)}.side-nav a{color:#5b7183}.side-nav a:hover,.side-nav a.active{color:#0d5489;background:#e9f3f9}.profile-hero{background:linear-gradient(120deg,#fff,#edf6fb)}.hqi-box{border-color:#e8c981;background:#fff7e2}.hqi-box strong{color:#b86d09}.status-banner{color:#88530a;border-color:#e7c484;background:#fff7e7}.admin-row,.task-item{border-color:#d9e5ec;background:#f8fbfd}.toast{color:#07563b;border-color:#9bd6c1;background:#e8f8f2}.toast.error{color:#9d2c3e;border-color:#e8abb5;background:#fff0f2}.footer{border-color:#cddde7;background:#e9f2f7}.footer-inner{color:#597184}.footer b{color:#173d59}.disclaimer{color:#5f7180;border-left-color:#d99216;background:#fff8e9}

/* Technical academy */
.academy-hero{position:relative;min-height:610px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:4rem;padding:5.3rem 0 4.5rem;overflow:hidden}.academy-hero:before{content:"";position:absolute;inset:-2.5rem calc(50% - 50vw);z-index:-2;background:linear-gradient(115deg,#fafdff 0,#f1f8fc 48%,#e3f1f8 100%)}.academy-hero:after{content:"";position:absolute;z-index:-1;width:50rem;height:50rem;right:-21rem;top:-22rem;border-radius:50%;background:radial-gradient(circle,rgba(255,210,103,.48),rgba(255,230,155,.18) 32%,transparent 68%)}
.academy-kicker{display:flex;align-items:center;gap:.65rem;color:#0f5a91;font:700 .76rem "JetBrains Mono",monospace;letter-spacing:.13em}.sun-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#8a5100;background:#ffe6a3;box-shadow:0 0 28px rgba(242,173,50,.35)}.academy-copy h1{max-width:13ch;margin:1rem 0 1.25rem;color:#102f49;font-size:clamp(3rem,5.9vw,5.8rem);line-height:.98;letter-spacing:-.075em}.academy-copy h1 em{color:#bd6d08;font-style:normal}.academy-copy>p{max-width:42rem;margin:0;color:#4d687d;font-size:1.04rem;line-height:1.78}.academy-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.7rem}.academy-principles{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem;padding-top:1.2rem;border-top:1px solid #cddfe9;color:#496b82;font:600 .68rem "JetBrains Mono",monospace}
.light-monument{position:relative;min-height:450px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(23,105,166,.14);border-radius:48% 48% 22px 22px;background:linear-gradient(180deg,#dceef7 0,#f9fcfe 72%);box-shadow:0 30px 80px rgba(23,75,110,.12)}.light-monument:before{content:"";position:absolute;width:430px;height:430px;top:-210px;border-radius:50%;background:radial-gradient(circle,#fff9d7 0,#ffd66e 24%,rgba(255,216,111,.18) 58%,transparent 72%)}.light-monument:after{content:"";position:absolute;left:9%;right:9%;bottom:64px;height:1px;background:linear-gradient(90deg,transparent,#7eb0cf,transparent)}.light-sun{z-index:2;width:150px;height:150px;display:grid;place-content:center;text-align:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#efb443,#cb7508);box-shadow:0 0 0 18px rgba(255,255,255,.4),0 0 70px rgba(242,173,50,.32);font-size:2rem;font-weight:800}.light-sun small{display:block;margin-top:.3rem;font:600 .55rem "JetBrains Mono",monospace;letter-spacing:.1em}.light-path{position:absolute;bottom:-42px;width:115px;height:260px;background:linear-gradient(180deg,rgba(255,222,138,.85),rgba(255,255,255,0));clip-path:polygon(42% 0,58% 0,100% 100%,0 100%)}.light-quote{position:absolute;left:1.3rem;bottom:1.3rem;padding:.8rem 1rem;border-left:3px solid #1769a6;color:#365970;background:rgba(255,255,255,.78);font-size:.76rem;line-height:1.55}
.academy-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:2.3rem;margin-top:4rem}.academy-toc{position:sticky;top:122px;align-self:start;display:grid;padding:.8rem;border:1px solid #d2e1ea;border-radius:16px;background:rgba(255,255,255,.93);box-shadow:var(--shadow-soft)}.toc-title{padding:.65rem .7rem;color:#1769a6;font:700 .64rem "JetBrains Mono",monospace;letter-spacing:.1em}.academy-toc a{display:grid;grid-template-columns:28px 1fr;gap:.45rem;padding:.68rem .7rem;border-radius:9px;color:#4c687d;font-size:.76rem;font-weight:650}.academy-toc a span{color:#8ca0ae;font-family:"JetBrains Mono",monospace}.academy-toc a:hover{color:#0f5b91;background:#eaf4fa}.toc-source{margin-top:.7rem;padding:.8rem .7rem;border-top:1px solid #dce7ee;color:#7b8e9c;font-size:.65rem;line-height:1.5}
.academy-content{min-width:0}.academy-intro{display:grid;grid-template-columns:90px 1fr;gap:1.3rem;align-items:start;padding:1.6rem;border:1px solid #cbdfe9;border-radius:20px;background:linear-gradient(135deg,#fdfefe,#eaf5fa);box-shadow:var(--shadow-soft)}.profession-seal{width:76px;height:76px;display:grid;place-content:center;border:1px solid #d4ad5d;border-radius:50%;text-align:center;color:#8c570b;background:#fff7df;font-size:1.7rem}.profession-seal small{font:.55rem "JetBrains Mono",monospace}.academy-intro h2{margin:.35rem 0 .6rem;font-size:clamp(1.5rem,3vw,2.3rem);letter-spacing:-.04em}.academy-intro p{margin:0;color:#587185;line-height:1.68}
.academy-chapter{scroll-margin-top:130px;margin-top:2rem;padding:clamp(1.2rem,3vw,2.1rem);border:1px solid #d2e1ea;border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}.academy-chapter>header{display:grid;grid-template-columns:62px 1fr;gap:1rem;padding-bottom:1.35rem;border-bottom:1px solid #dde8ef}.chapter-number{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(145deg,#237bb8,#0c548a);font:700 1rem "JetBrains Mono",monospace;box-shadow:0 9px 20px rgba(23,105,166,.2)}.academy-chapter h2{margin:.25rem 0 .35rem;font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.05em}.academy-chapter>header p{max-width:52rem;margin:0;color:#63798a;line-height:1.6}
.concept-grid{display:grid;gap:1rem;margin-top:1.2rem}.concept-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.concept-card{padding:1.1rem;border:1px solid #d9e6ed;border-radius:15px;background:#f9fcfd}.concept-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#0d5a91;background:#e4f2f9;font-size:1.2rem}.concept-card h3{margin:.8rem 0 .45rem}.concept-card p,.concept-card li{color:#5f7587;font-size:.78rem;line-height:1.55}.concept-card ul{padding-left:1.15rem}.lesson-details,.pattern-study{margin-top:.9rem;border:1px solid #d3e3ec;border-radius:13px;background:#fbfdfe}.lesson-details summary,.pattern-study summary{cursor:pointer;list-style:none;padding:1rem;color:#174a70;font-weight:700}.lesson-details summary::-webkit-details-marker,.pattern-study summary::-webkit-details-marker{display:none}.lesson-details>div{padding:0 1rem 1rem;color:#526d80;font-size:.82rem;line-height:1.65}
.physics-lab{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.2rem}.physics-lab>section{padding:1.05rem;border:1px solid #d8e5ed;border-radius:16px;background:#f9fcfe}.physics-lab h3{margin:.9rem 0 .45rem}.physics-lab p{color:#5e7485;font-size:.78rem;line-height:1.58}.lesson-rule{padding:.65rem;border-left:3px solid #1769a6;color:#365c77;background:#eaf5fa;font-size:.7rem;line-height:1.5}.physics-viz{height:110px;display:flex;align-items:end;gap:10px;padding:12px;border-radius:11px;background:#eaf3f8}.physics-viz i{width:18px;border-radius:4px 4px 0 0;background:#4c92bd}.physics-viz i:nth-child(1){height:24%}.physics-viz i:nth-child(2){height:38%}.physics-viz i:nth-child(3){height:86%;background:#0e6fa9}.physics-viz i:nth-child(4){height:56%}.physics-viz i:nth-child(5){height:31%}.balance-viz{height:110px;display:flex;align-items:center;gap:2px}.balance-viz span{display:grid;place-items:center;height:48px;color:#fff;background:#247bb4;font:650 .58rem "JetBrains Mono",monospace}.balance-viz span+span{background:#e0a02b}.mean-viz{position:relative;height:110px;display:grid;place-items:center;border-radius:11px;background:#edf5f9}.mean-viz span{position:absolute;left:8px;right:8px;top:53%;border-top:2px dashed #75a5c3;color:#587d94;font-size:.55rem}.mean-viz i{position:absolute;width:2px;height:55px;left:65%;top:13%;background:#d9a13b;transform:rotate(-25deg)}.mean-viz b{position:absolute;right:16%;top:13%;color:#b66b08}.evidence-callout{display:grid;grid-template-columns:180px 1fr;gap:1rem;margin-top:1rem;padding:1rem;border:1px solid #bed9e7;border-radius:14px;background:#edf7fb}.evidence-callout b{color:#0e6098}.evidence-callout p{margin:0;color:#4e6c80;font-size:.78rem;line-height:1.55}
.system-roadmap{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:.55rem;margin-top:1.2rem}.system-roadmap>div{padding:1rem;border:1px solid #d3e2eb;border-radius:14px;background:#f8fbfd}.system-roadmap>div span{color:#0f659d;font:700 .65rem "JetBrains Mono",monospace}.system-roadmap>div b{display:block;margin:.45rem 0}.system-roadmap>div p{margin:0;color:#617787;font-size:.7rem;line-height:1.5}.system-roadmap>i{align-self:center;color:#92a9b8;font-style:normal}.no-trade-box{margin-top:1rem;padding:1rem;border:1px solid #e0c58c;border-radius:14px;background:#fff8e8}.no-trade-box span{color:#9a5a06;font:700 .67rem "JetBrains Mono",monospace}.no-trade-box p{margin:.45rem 0 0;color:#6b654f;font-size:.78rem;line-height:1.55}
.pattern-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1.1rem}.pattern-study{margin:0}.pattern-study summary{display:grid;grid-template-columns:36px 1fr 20px;align-items:center;gap:.65rem}.pattern-index{color:#1769a6;font:.7rem "JetBrains Mono",monospace}.pattern-study summary b,.pattern-study summary small{display:block}.pattern-study summary small{margin-top:.15rem;color:#8193a0;font-size:.65rem}.pattern-toggle{color:#1769a6;font-size:1.2rem}.pattern-study[open] .pattern-toggle{transform:rotate(45deg)}.pattern-body{display:grid;grid-template-columns:130px 1fr;gap:1rem;padding:0 1rem 1rem}.pattern-body p{margin:.2rem 0 .55rem;color:#526f82;font-size:.73rem;line-height:1.55}.pattern-gate{padding:.55rem;border-radius:8px;color:#0c5d91;background:#e9f5fa;font-size:.63rem;font-weight:650}.pattern-chart{position:relative;height:120px;border:1px solid #d6e4ec;border-radius:10px;background:repeating-linear-gradient(0deg,#f8fbfd 0,#f8fbfd 23px,#eaf1f5 24px);overflow:hidden}.pattern-chart i{position:absolute;bottom:25px;width:13px;border:2px solid #1769a6;background:#5fa4cd}.pattern-chart i:before{content:"";position:absolute;left:50%;top:-16px;height:50px;border-left:2px solid inherit}.pattern-chart i:nth-child(1){left:18px;height:27px}.pattern-chart i:nth-child(2){left:42px;height:42px}.pattern-chart i:nth-child(3){left:70px;height:34px;border-color:#d28a19;background:#f4c15f}.pattern-chart i:nth-child(4){left:96px;height:57px}.pattern-chart.pin i:nth-child(3){height:16px;bottom:45px}.pattern-chart.double-bottom i:nth-child(2),.pattern-chart.double-bottom i:nth-child(4){height:18px}.pattern-chart.double-top i:nth-child(2),.pattern-chart.double-top i:nth-child(4){bottom:60px}.pattern-chart.retest i:nth-child(4){bottom:48px}.pattern-chart.gap i:nth-child(4){bottom:70px}
.execution-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.1rem}.execution-card{padding:1.15rem;border:1px solid #d9e4eb;border-radius:16px}.execution-card.impatient{background:#fff6f7;border-color:#e8c5cb}.execution-card.disciplined{background:#eff9f5;border-color:#b9ddcf}.execution-label{color:#718494;font:700 .62rem "JetBrains Mono",monospace;letter-spacing:.08em}.execution-card h3{margin:.5rem 0}.execution-card li{color:#5d7180;font-size:.75rem;line-height:1.55}.rr-meter{display:flex;height:36px;margin:.8rem 0;overflow:hidden;border-radius:8px;color:#fff;font:700 .59rem "JetBrains Mono",monospace}.rr-meter span,.rr-meter b{display:grid;place-items:center}.rr-meter span{background:#c64b5b}.rr-meter b{background:#14946a}.execution-gates{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding:1rem;border:1px solid #d4e3eb;border-radius:14px;background:#f8fbfd}.execution-gates b{width:100%;color:#1a506f}.execution-gates span{padding:.4rem .55rem;border-radius:99px;color:#3d6178;background:#e8f2f7;font-size:.67rem}
.toolkit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.toolkit-grid section{padding:1rem;border:1px solid #d5e4ec;border-radius:14px;background:#f8fbfd}.toolkit-grid span{color:#1769a6;font:700 .65rem "JetBrains Mono",monospace}.toolkit-grid h3{margin:.6rem 0 .35rem}.toolkit-grid p{margin:0;color:#5e7586;font-size:.75rem;line-height:1.55}.legacy-warning{display:grid;grid-template-columns:52px 1fr;gap:1rem;margin-top:1rem;padding:1.15rem;border:1px solid #e5a9b3;border-radius:16px;background:#fff2f4}.legacy-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:#fff;background:#bd3448;font-size:1.3rem;font-weight:800}.legacy-warning h3{margin:.35rem 0}.legacy-warning p,.legacy-warning li{color:#76545a;font-size:.75rem;line-height:1.6}.legacy-warning code{color:#9d2e40;background:#ffe1e6}
.survival-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;gap:.8rem;align-items:center;margin-top:1rem;padding:1.2rem;border:1px solid #d5e3eb;border-radius:18px;background:#f8fbfd}.survival-equation>div{display:grid;justify-items:center;gap:.25rem;padding:1rem}.survival-equation strong{color:#1769a6;font-size:2.1rem}.survival-equation span{color:#5d7384;font-size:.72rem}.survival-equation b{color:#bc3548}.survival-equation>i{color:#8ea2b0;font-style:normal;font-size:1.5rem}.survival-equation .equation-result{border-radius:14px;background:#eaf8f2}.survival-equation .equation-result strong{color:#0b875e}.survival-equation small{color:#73887e;font-size:.58rem}.risk-labs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.lab-card{padding:1.1rem;border:1px solid #d5e4ec;border-radius:16px;background:#fbfdfe}.expectancy-result{display:grid;gap:.35rem;margin-top:1rem;padding:1rem;border:1px solid #cedee7;border-radius:12px;color:#4e687b;background:#f3f8fb}.expectancy-result strong{font:800 1.65rem "JetBrains Mono",monospace}.expectancy-result small{color:#7b8e9c;font-size:.62rem}.positive-expectancy{color:#087552;border-color:#abd7c5;background:#edf9f4}.negative-expectancy{color:#a83244;border-color:#e8b5bd;background:#fff1f3}
.calculator-note{margin:.35rem 0 1rem;padding:.7rem;border-left:3px solid #1769a6;color:#526f82;background:#edf7fb;font-size:.7rem;line-height:1.55}.result-box small{display:block;color:#476e60;font-size:.7rem;line-height:1.55}
.mind-traps{margin-top:1.2rem;padding:1.1rem;border:1px solid #d4e3eb;border-radius:16px;background:#f9fcfd}.mind-traps .section-head{margin-bottom:.8rem}.mind-traps ol{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin:0;padding:0;list-style:none}.mind-traps li{display:grid;grid-template-columns:32px 1fr;gap:.5rem;align-items:center;padding:.65rem;border:1px solid #deeaef;border-radius:9px;color:#4d687a;background:#fff;font-size:.71rem}.mind-traps li span{color:#1769a6;font:700 .62rem "JetBrains Mono",monospace}.discipline-lab{scroll-margin-top:130px;margin-top:1.2rem;padding:1.2rem;border:1px solid #aacfe2;border-radius:18px;background:linear-gradient(135deg,#edf8fc,#fff)}.discipline-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.discipline-head h3{margin:.3rem 0}.discipline-head p{margin:0;color:#5e7789;font-size:.74rem}.discipline-score{min-width:180px;padding:.8rem;border-radius:13px;text-align:center;background:#e3f0f7}.discipline-score strong{display:block;color:#0e6198;font:800 1.7rem "JetBrains Mono",monospace}.discipline-score span{color:#6a7e8c;font-size:.55rem;font-weight:800}.discipline-score span.ready{color:#087552}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:1rem}.checklist-grid label{display:grid;grid-template-columns:20px 1fr;align-items:center;padding:.75rem;border:1px solid #d3e4ec;border-radius:10px;color:#47667a;background:#fff;font-size:.71rem;line-height:1.45}.checklist-grid input{width:17px;height:17px;accent-color:#0d9668}.kaizen-routine{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.kaizen-routine article{padding:1rem;border-top:3px solid #f2ad32;border-radius:0 0 13px 13px;background:#fff9ea}.kaizen-routine span{color:#97600d;font:700 .62rem "JetBrains Mono",monospace}.kaizen-routine h3{margin:.55rem 0 .35rem}.kaizen-routine p{margin:0;color:#706849;font-size:.72rem;line-height:1.55}.academy-disclaimer{margin-top:1.2rem;padding:1rem;border-left:4px solid #1769a6;color:#536f81;background:#edf7fb}.academy-disclaimer p{margin:.35rem 0 0;font-size:.72rem;line-height:1.6}
@media(max-width:1050px){.academy-hero{grid-template-columns:1fr;gap:2rem}.light-monument{min-height:380px}.academy-layout{grid-template-columns:1fr}.academy-toc{position:static;display:flex;overflow-x:auto;gap:.25rem}.academy-toc a{min-width:max-content}.toc-title,.toc-source{display:none}.physics-lab,.toolkit-grid{grid-template-columns:1fr 1fr}.system-roadmap{grid-template-columns:1fr 1fr}.system-roadmap>i{display:none}}
@media(max-width:700px){.academy-hero{min-height:0;padding:3rem 0}.academy-copy h1{font-size:clamp(2.7rem,13vw,4.3rem)}.light-monument{min-height:310px;border-radius:36% 36% 18px 18px}.light-sun{width:118px;height:118px;font-size:1.5rem}.academy-principles{display:grid}.academy-intro{grid-template-columns:1fr}.academy-chapter{padding:1rem}.academy-chapter>header{grid-template-columns:46px 1fr}.chapter-number{width:42px;height:42px}.concept-grid.three,.physics-lab,.pattern-library,.execution-compare,.toolkit-grid,.risk-labs,.mind-traps ol,.checklist-grid,.kaizen-routine{grid-template-columns:1fr}.system-roadmap{grid-template-columns:1fr}.pattern-body{grid-template-columns:1fr}.pattern-chart{max-width:180px}.evidence-callout{grid-template-columns:1fr}.survival-equation{grid-template-columns:1fr}.survival-equation>i{transform:rotate(90deg)}.discipline-head{align-items:flex-start;flex-direction:column}.discipline-score{width:100%}.legacy-warning{grid-template-columns:1fr}.academy-toc{margin-left:-.9rem;margin-right:-.9rem;padding-left:.9rem;padding-right:.9rem;border-left:0;border-right:0;border-radius:0}}
.academy-toc button{display:grid;grid-template-columns:28px 1fr;gap:.45rem;width:100%;padding:.68rem .7rem;border:0;border-radius:9px;color:#4c687d;background:transparent;text-align:left;font-size:.76rem;font-weight:650}.academy-toc button span{color:#8ca0ae;font-family:"JetBrains Mono",monospace}.academy-toc button:hover,.academy-toc button:focus-visible{color:#0f5b91;background:#eaf4fa}.academy-toc button:focus-visible{outline:3px solid rgba(23,105,166,.28);outline-offset:2px}@media(max-width:1050px){.academy-toc button{min-width:max-content}}
.pattern-library{align-items:start}.pattern-study{align-self:start}
.orbital-card.two { right: 7%; top: 24%; }
.orbital-card.three { right: 14%; bottom: 14%; }
.signal { color: var(--green); }
.warning { color: var(--amber); }
.danger { color: var(--red); }

.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: .9rem; margin-top: 2.1rem; }
.metric { padding: .85rem 0; border-top: 1px solid var(--border); }
.metric strong { display: block; color: var(--gold); font-size: 1.45rem; letter-spacing: -.05em; }
.metric span { color: var(--muted); font-size: .72rem; }

.grid { display: grid; gap: 1rem; }
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.card { min-width: 0; border: 1px solid var(--border); border-radius: 18px; background: linear-gradient(145deg, rgba(20,29,54,.88), rgba(10,15,30,.9)); box-shadow: 0 10px 35px rgba(0,0,0,.16); }
.card-pad { padding: 1.2rem; }
.card h3 { margin: .35rem 0 .55rem; font-size: 1rem; letter-spacing: -.025em; }
.card p { margin: 0; color: var(--muted); font-size: .84rem; line-height: 1.6; }
.tag { display: inline-flex; align-items: center; gap: .32rem; padding: .28rem .52rem; border: 1px solid var(--border); border-radius: 999px; color: #bed1e8; background: rgba(255,255,255,.035); font-size: .68rem; font-weight: 700; }
.tag.gold { color: #ffe3a8; border-color: rgba(245,189,78,.3); background: var(--gold-soft); }
.tag.green { color: #a2f0c7; border-color: rgba(72,213,151,.28); background: rgba(72,213,151,.1); }
.tag.amber { color: #ffd496; border-color: rgba(244,174,72,.3); background: rgba(244,174,72,.1); }
.tag.red { color: #ffbbc5; border-color: rgba(241,113,130,.3); background: rgba(241,113,130,.1); }

.top-account { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 1rem; padding: 1.25rem; border-color: rgba(245,189,78,.32); background: radial-gradient(circle at 92% 20%, rgba(245,189,78,.15), transparent 19rem), var(--panel); }
.rank-orb { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 18px; color: #201600; background: linear-gradient(135deg, #ffedbd, var(--gold)); font: 800 1.05rem "JetBrains Mono", monospace; }
.score-stack { text-align: right; }
.score-stack strong { display: block; font: 800 1.8rem "JetBrains Mono", monospace; }
.score-stack span { color: var(--muted); font-size: .7rem; }

.table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: 18px; background: rgba(12,18,35,.75); }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th { padding: .8rem 1rem; color: #9eabc9; background: rgba(255,255,255,.025); text-align: left; font: 600 .68rem "JetBrains Mono", monospace; letter-spacing: .07em; text-transform: uppercase; }
td { padding: 1rem; border-top: 1px solid var(--border); font-size: .82rem; }
tr:hover td { background: rgba(255,255,255,.018); }
.num { font-family: "JetBrains Mono", monospace; }
.positive { color: var(--green); }
.negative { color: var(--red); }

.page-title { padding: 2.5rem 0 1.2rem; }
.page-title h1 { max-width: 16ch; margin: .45rem 0 .7rem; font-size: clamp(2rem, 4vw, 3.8rem); line-height: 1.04; letter-spacing: -.06em; }
.page-title p { max-width: 48rem; margin: 0; color: var(--muted); line-height: 1.65; }
.pill-tabs { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1.2rem 0 1.6rem; }
.pill-tabs button { padding: .52rem .75rem; border: 1px solid var(--border); border-radius: 999px; color: var(--muted); background: transparent; font-size: .78rem; }
.pill-tabs button.active { color: #251600; border-color: var(--gold); background: var(--gold); }

.challenge-timeline { position: relative; display: grid; grid-template-columns: repeat(4, 1fr); gap: .65rem; }
.timeline-step { position: relative; min-height: 132px; padding: 1rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(16,24,44,.78); }
.timeline-step:before { content: attr(data-step); display: block; margin-bottom: .8rem; color: var(--gold); font: 700 .68rem "JetBrains Mono", monospace; }
.timeline-step b { display: block; font-size: .9rem; }
.timeline-step span { display: block; margin-top: .4rem; color: var(--muted); font-size: .76rem; line-height: 1.5; }
.formula { padding: 1rem; overflow: auto; border: 1px solid rgba(70,217,231,.18); border-radius: 12px; color: #bdeef2; background: #091827; font: 600 .77rem/1.75 "JetBrains Mono", monospace; white-space: pre; }

.market-top { display: grid; grid-template-columns: 1.08fr .92fr; gap: 1rem; }
.gauge { min-height: 308px; display: grid; place-items: center; position: relative; overflow: hidden; }
.gauge:before { content: ""; width: 242px; height: 242px; border: 22px solid rgba(255,255,255,.07); border-top-color: var(--green); border-right-color: var(--cyan); border-radius: 50%; transform: rotate(42deg); }
.gauge-center { position: absolute; display: grid; gap: .2rem; text-align: center; }
.gauge-center strong { font: 800 3rem "JetBrains Mono", monospace; letter-spacing: -.1em; }
.gauge-center span { color: var(--green); font-size: .84rem; font-weight: 700; }
.gauge-center small { color: var(--muted); font-size: .67rem; }
.component-row { display: grid; grid-template-columns: 1.2fr .6fr .5fr; gap: .8rem; align-items: center; padding: .7rem 0; border-top: 1px solid var(--border); font-size: .78rem; }
.bar { height: 6px; overflow: hidden; border-radius: 10px; background: rgba(255,255,255,.09); }
.bar i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--cyan), var(--green)); }
.ai-unavailable { padding: 1.1rem; border: 1px dashed rgba(244,174,72,.45); border-radius: 14px; color: #f6d69b; background: rgba(244,174,72,.08); }

.lesson-list { display: grid; gap: .75rem; }
.lesson { padding: 1rem; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.025); }
.lesson b { display: block; margin-bottom: .3rem; }
.lesson span { color: var(--muted); font-size: .78rem; line-height: 1.55; }
.risk-layout { display: grid; grid-template-columns: 1fr .9fr; gap: 1rem; }
.form-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: .8rem; }
label { display: grid; gap: .38rem; color: #bcc7df; font-size: .75rem; font-weight: 600; }
input, textarea, select { width: 100%; padding: .72rem .76rem; border: 1px solid var(--border); border-radius: .65rem; color: var(--text); background: rgba(4,8,19,.52); }
textarea { min-height: 94px; resize: vertical; }
.result-box { display: grid; gap: .8rem; padding: 1.2rem; border: 1px solid rgba(72,213,151,.28); border-radius: 14px; background: rgba(72,213,151,.075); }
.result-box strong { font: 800 2rem "JetBrains Mono", monospace; color: #a4f2c8; letter-spacing: -.08em; }

.product-card { display: flex; flex-direction: column; min-height: 220px; padding: 1.1rem; }
.product-icon { width: 44px; height: 44px; display: grid; place-items: center; margin-bottom: .9rem; border-radius: 14px; color: #211603; background: linear-gradient(135deg, #ffe6a7, var(--gold)); font-weight: 900; }
.product-card p { flex: 1; }
.product-footer { display: flex; align-items: center; justify-content: space-between; gap: .6rem; margin-top: 1rem; }

.contact-card { display: flex; align-items: center; gap: .85rem; padding: 1rem; }
.contact-icon { flex: 0 0 42px; height: 42px; display: grid; place-items: center; border-radius: 13px; color: var(--cyan); background: rgba(70,217,231,.1); font-weight: 800; }
.contact-card small { display: block; margin-top: .2rem; color: var(--muted); }

/* Multi-person Phone Support Card & Interactive Click-to-Call Tags */
.phone-support-card { display: flex; flex-direction: column; align-items: stretch; gap: 1rem; padding: 1.15rem 1.25rem; background: linear-gradient(135deg, #ffffff 0%, #fefcf6 100%); border: 1.5px solid #ebd9a5 !important; box-shadow: 0 4px 18px rgba(180, 83, 9, 0.06); }
.phone-card-header { display: flex; align-items: center; gap: 0.85rem; }
.phone-card-header b { font-size: 1.05rem; color: #0f2942; }
.phone-card-sub { display: block; font-size: 0.78rem; color: #64748b; margin-top: 0.15rem; }
.phone-icon { background: #fffbeb !important; color: #b45309 !important; border: 1px solid #fde68a; box-shadow: 0 2px 6px rgba(245, 189, 78, 0.2); }
.support-tags-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 0.75rem; }
.support-person-tag { display: flex; align-items: center; gap: 0.7rem; padding: 0.65rem 0.85rem; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; text-decoration: none !important; transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); box-shadow: 0 2px 5px rgba(0,0,0,0.02); }
.support-person-tag:hover { border-color: #d97706; background: #fffdf5; transform: translateY(-2px); box-shadow: 0 6px 16px rgba(180, 83, 9, 0.14); }
.support-avatar { width: 34px; height: 34px; border-radius: 50%; background: #fef3c7; color: #b45309; display: grid; place-items: center; font-size: 0.9rem; flex-shrink: 0; }
.support-info { display: flex; flex-direction: column; flex: 1; min-width: 0; }
.support-name { font-size: 0.78rem; font-weight: 700; color: #475569; text-transform: uppercase; letter-spacing: 0.03em; }
.support-number { font-family: "JetBrains Mono", monospace; font-size: 0.95rem; font-weight: 800; color: #0f2942; letter-spacing: -0.01em; }
.support-person-tag:hover .support-number { color: #b45309; }
.support-call-btn { font-size: 0.72rem; font-weight: 700; color: #b45309; background: #fef3c7; padding: 0.3rem 0.6rem; border-radius: 20px; flex-shrink: 0; transition: all 0.15s ease; }
.support-person-tag:hover .support-call-btn { background: #b45309; color: #ffffff; }

.member-layout, .admin-layout { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 1.2rem; padding-top: 2rem; }
.side-nav { position: sticky; top: 112px; align-self: start; padding: .55rem; border: 1px solid var(--border); border-radius: 16px; background: rgba(13,20,39,.84); }
.side-nav button { width: 100%; padding: .7rem .75rem; border: 0; border-radius: .6rem; color: var(--muted); background: transparent; text-align: left; font-size: .8rem; font-weight: 600; }
.side-nav button:hover, .side-nav button.active { color: var(--text); background: rgba(255,255,255,.065); }
.profile-hero { display: grid; grid-template-columns: 1.2fr auto; gap: 1rem; align-items: center; padding: 1.25rem; }
.profile-name { margin: .5rem 0; font-size: 1.75rem; letter-spacing: -.05em; }
.hqi-box { min-width: 140px; padding: .9rem; border: 1px solid rgba(245,189,78,.28); border-radius: 14px; text-align: center; background: var(--gold-soft); }
.hqi-box strong { display: block; color: #ffe09b; font: 800 2.5rem "JetBrains Mono", monospace; letter-spacing: -.12em; }
.journey-card { padding: 1rem; }
.journey-card header { display: flex; align-items: center; justify-content: space-between; gap: .7rem; margin-bottom: .65rem; }
.journey-card b { font-size: .85rem; }
.journey-card span { color: var(--gold); font: 700 .75rem "JetBrains Mono", monospace; }
.journey-card small { display: block; margin-top: .55rem; color: var(--muted); font-size: .69rem; line-height: 1.45; }
.timeline { display: grid; gap: .2rem; }
.timeline-item { display: grid; grid-template-columns: 78px 12px 1fr; gap: .7rem; padding: .55rem 0; align-items: center; font-size: .78rem; }
.timeline-item time { color: var(--muted); font-size: .69rem; }
.timeline-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 5px rgba(70,217,231,.11); }
.timeline-dot.warning { background: var(--amber); box-shadow: 0 0 0 5px rgba(244,174,72,.11); }
.timeline-dot.success { background: var(--green); box-shadow: 0 0 0 5px rgba(72,213,151,.11); }

.admin-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .8rem; padding: 1.1rem; }
.status-banner { padding: .75rem .9rem; border: 1px solid rgba(244,174,72,.3); border-radius: 12px; color: #ffdaa0; background: rgba(244,174,72,.08); font-size: .76rem; }
.admin-editor { display: grid; gap: 1rem; }
.editor-tabs { display: flex; flex-wrap: wrap; gap: .45rem; }
.editor-tabs button { padding: .5rem .7rem; border: 1px solid var(--border); border-radius: .6rem; color: var(--muted); background: transparent; font-size: .76rem; }
.editor-tabs button.active { color: #201503; border-color: var(--gold); background: var(--gold); }
.toast { position: fixed; z-index: 50; right: 1.2rem; bottom: 1.2rem; max-width: 340px; padding: .9rem 1rem; border: 1px solid rgba(72,213,151,.35); border-radius: 12px; color: #dcffec; background: #102c25; box-shadow: var(--shadow); font-size: .8rem; }
.toast.error { border-color: rgba(241,113,130,.35); color: #ffe1e5; background: #32141c; }

.footer { border-top: 1px solid var(--border); background: #080c18; }
.footer-inner { max-width: 1260px; margin: auto; padding: 2rem 1.25rem; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 1rem; color: var(--muted); font-size: .74rem; }
.footer b { color: var(--text); }

@media (max-width: 900px) { .nav { gap: .7rem; } .nav-links { justify-content: flex-start; } .nav-actions .button { display: none; } .hero, .market-top, .risk-layout { grid-template-columns: 1fr; } .hero { padding-top: 3rem; } .hero h1 { max-width: 14ch; } .orbit { min-height: 330px; } .grid.four { grid-template-columns: repeat(2, minmax(0,1fr)); } .challenge-timeline { grid-template-columns: repeat(2, 1fr); } .member-layout, .admin-layout { grid-template-columns: 1fr; } .side-nav { position: static; display: flex; overflow-x: auto; } .side-nav button { min-width: max-content; } }
@media (max-width: 640px) { .nav { min-height: 62px; padding: 0 .9rem; } .nav-links { display: none; } .nav-menu { display: grid; } .ticker-inner, .page { padding-left: .9rem; padding-right: .9rem; } .page { padding-top: 1.5rem; } .hero { gap: 1.6rem; min-height: 0; } .metric-row, .grid.two, .grid.three, .grid.four, .form-grid { grid-template-columns: 1fr; } .top-account { grid-template-columns: auto 1fr; } .score-stack { grid-column: 2; text-align: left; } .orbit { border-radius: 20px; } .orbital-card { font-size: .63rem; } .section { margin-top: 3.25rem; } .section-head { display: block; } .section-head p { margin-top: .55rem; } .challenge-timeline { grid-template-columns: 1fr; } .profile-hero { grid-template-columns: 1fr; } .hqi-box { width: 100%; } .component-row { grid-template-columns: 1fr .4fr; } .component-row .bar { grid-column: span 2; } }
@media (prefers-reduced-motion: reduce) { *, *:before, *:after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }

/* HQT SPA contract â€” components rendered by app.js */
.brand-accent,.text-gold{color:var(--gold)}
.source-status{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-bottom:1.1rem;color:var(--muted);font-size:.75rem}
.notice-card{display:flex;flex-direction:column;min-height:190px}.notice-card p{flex:1}.notice-card small{display:block;margin-top:1rem;color:var(--muted);font-size:.68rem}
.violation-card{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start}.violation-count{width:52px;height:52px;display:grid;place-items:center;border:1px solid rgba(241,113,130,.28);border-radius:16px;color:#ffc2ca;background:rgba(241,113,130,.09);font:800 1.35rem "JetBrains Mono",monospace}
.section.compact{margin-top:2rem}.rule-card .rank-orb{width:42px;height:42px;border-radius:13px;margin-bottom:.75rem;font-size:.8rem}.formula{margin-top:1rem}
.market-heading,.admin-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem}.timezone-switch{display:inline-flex;padding:.25rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.03)}.timezone-switch button{padding:.52rem .72rem;border:0;border-radius:9px;color:var(--muted);background:transparent;font-size:.76rem;font-weight:700}.timezone-switch button.active{color:#201503;background:var(--gold)}
.event-time{margin-bottom:.65rem;color:var(--gold);font:800 1.15rem "JetBrains Mono",monospace}.news-meta{display:flex;align-items:center;justify-content:space-between;gap:.6rem;color:var(--muted);font-size:.72rem}.integration-note,.privacy-note,.disclaimer{color:var(--muted);font-size:.75rem;line-height:1.6}.disclaimer{margin-top:1.25rem;padding:.8rem 1rem;border-left:3px solid #1769a6;background:rgba(244,174,72,.06)}
.form-span{grid-column:1/-1}.result-box{margin-top:1rem}.result-box.error-box{border-color:rgba(241,113,130,.38);color:#ffdbe0;background:rgba(241,113,130,.08)}
.side-nav a{display:block;width:100%;padding:.7rem .75rem;border-radius:.6rem;color:var(--muted);font-size:.8rem;font-weight:600}.side-nav a:hover,.side-nav a.active{color:var(--text);background:rgba(255,255,255,.065)}
.member-main,.admin-main{min-width:0}.member-metrics{margin-top:1rem}.profile-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.75rem}.big-number{margin:.55rem 0;color:var(--gold);font:800 2.3rem "JetBrains Mono",monospace;letter-spacing:-.08em}.big-label{margin:.55rem 0;font-size:1.25rem;font-weight:800}.member-metrics .bar{margin-top:.85rem}
.task-list{display:grid;gap:.55rem;margin-top:.8rem}.task-item{display:grid;grid-template-columns:32px 1fr;gap:.65rem;align-items:center;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025)}.task-status{width:28px;height:28px;display:grid;place-items:center;border-radius:9px;color:var(--muted);background:rgba(255,255,255,.06)}.task-status.submitted{color:#ffe0a5;background:rgba(244,174,72,.12)}.task-item small,.admin-row small{display:block;margin-top:.2rem;color:var(--muted);font-size:.68rem}
.form-message{min-height:1.2rem;margin-top:.65rem;color:var(--muted);font-size:.74rem}.form-message.success{color:var(--green)}.form-message.error{color:var(--red)}
.admin-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.token-field{flex:1;min-width:220px}.admin-list{display:grid;gap:.55rem}.admin-row{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.75rem;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.025)}
.contact-arrow{margin-left:auto;color:var(--gold)}.empty-state{grid-column:1/-1;padding:2rem;border:1px dashed var(--border);border-radius:16px;color:var(--muted);text-align:center}.app-loading,.error-state{min-height:70vh;display:grid;place-content:center;justify-items:center;gap:1rem;padding:2rem;text-align:center}.app-loading{display:flex;align-items:center}.error-state h1{max-width:18ch;margin:0;font-size:clamp(2rem,5vw,4rem)}
@media(max-width:900px){.admin-content-grid{grid-template-columns:1fr}.market-heading,.admin-heading{align-items:flex-start;flex-direction:column}.side-nav a{min-width:max-content}}
@media(max-width:640px){.nav{position:relative}.nav-links.open{position:absolute;z-index:30;display:grid;top:62px;left:.9rem;right:.9rem;padding:.55rem;border:1px solid var(--border);border-radius:14px;background:#0d1427;box-shadow:var(--shadow)}.nav-links.open .nav-link{padding:.75rem}.journey-link{display:none}.studio-link{display:none}.hero h1{font-size:clamp(2.55rem,15vw,4rem)}.hero{padding-top:2.5rem}.orbit{min-height:300px}.orbital-card.two{top:17%;right:4%}.orbital-card.three{right:7%;bottom:10%}.violation-card{grid-template-columns:1fr}.market-heading{padding-top:1rem}.timezone-switch{width:100%}.timezone-switch button{flex:1}.admin-top{align-items:stretch}.token-field{min-width:100%}.contact-card{align-items:flex-start}.footer-inner{display:grid}}
@media(max-width:374px){.page{padding-left:.75rem;padding-right:.75rem}.nav{padding-left:.75rem;padding-right:.75rem}.brand{font-size:.78rem}.brand-mark{width:31px;height:31px}.hero h1{font-size:2.45rem}.orbit-center{width:118px;height:118px}.orbital-card{max-width:130px}.top-account{grid-template-columns:1fr}.score-stack{grid-column:auto}.timeline-item{grid-template-columns:64px 10px 1fr}}

/* Responsive regression fixes */
html,body{overflow-x:clip}
body{min-width:0}
.icon-button.nav-menu{display:none}
@media(max-width:640px){.icon-button.nav-menu{display:grid}}

/* ================================================================
   MINH DAO LIGHT SYSTEM â€” clarity, dignity, discipline
   Reference roles: Forex Factory information density + CPPAI lightness
   ================================================================ */
:root{
  --canvas:#f4f8fb;--canvas-2:#eaf2f8;--panel:#fff;--panel-strong:#f8fbfd;--panel-muted:#eef5f9;
  --text:#102a43;--muted:#60778c;--border:#d7e3ec;--gold:#f2ad32;--gold-soft:#fff5d9;
  --cyan:#1769a6;--green:#0d9668;--amber:#d98212;--red:#c43d4f;--violet:#6657b8;
  --shadow:0 20px 55px rgba(30,75,110,.10);--shadow-soft:0 8px 24px rgba(30,75,110,.08)
}
html{background:#f4f8fb}body{color:var(--text);background:radial-gradient(circle at 88% 0,rgba(72,160,214,.12),transparent 34rem),linear-gradient(180deg,#fbfdff 0,#f4f8fb 60%,#edf5f9 100%)}
.header{border-bottom:1px solid rgba(23,105,166,.14);background:rgba(255,255,255,.9);box-shadow:0 4px 24px rgba(30,75,110,.06)}
.nav-link{color:#526a7e}.nav-link:hover,.nav-link.active{color:#0e4f82;background:#eaf3f9}.brand{color:#173d5d}.brand-mark{background:transparent;border:none;box-shadow:none;border-radius:0;padding:0}.brand-accent{color:#c8790c}
.ticker{border-bottom:0;color:#e8f5ff;background:linear-gradient(90deg,#0d4b7d,#1769a6)}.ticker-item{color:#d5eafa}.ticker-label{color:#fff5bd}.live-dot{background:#5ce0aa;box-shadow:0 0 0 5px rgba(92,224,170,.18)}
.eyebrow{color:#1769a6}.text-gold{color:#bd6d08}.muted{color:var(--muted)}
.card{border-color:var(--border);background:rgba(255,255,255,.94);box-shadow:var(--shadow-soft)}.card p{color:var(--muted)}
.button{color:#23445f;border-color:#d3e1ea;background:#fff}.button:hover{border-color:#77a8c9;box-shadow:0 8px 20px rgba(30,75,110,.1)}.button.primary{color:#fff;border-color:#1769a6;background:linear-gradient(135deg,#247dbb,#0e548b);box-shadow:0 12px 28px rgba(23,105,166,.2)}.button.secondary{color:#4a3000;border-color:#e8a42b;background:linear-gradient(135deg,#ffd87e,#f2ad32)}.button.outline{color:#244a66;border-color:#bed1df;background:rgba(255,255,255,.74)}.icon-button{color:#365a75;border-color:#cfdee8;background:#fff}
.orbit{border-color:#c4dce9;background:radial-gradient(circle at 50% 49%,rgba(242,173,50,.18),transparent 16%),linear-gradient(145deg,#f9fcfe,#e7f1f7);box-shadow:var(--shadow)}.orbit:before{border-color:rgba(23,105,166,.22)}.orbit:after{border-color:rgba(242,173,50,.3)}.orbit-center{color:#fff;border-color:#fff4d1;background:linear-gradient(145deg,#f5ba4c,#d98212);box-shadow:0 0 50px rgba(242,173,50,.28)}.orbital-card{color:#183b56;border-color:#cbdde8;background:rgba(255,255,255,.94);box-shadow:var(--shadow-soft)}
.metric{border-color:#dbe7ee}.metric strong{color:#0e5b94}.tag{color:#44667f;border-color:#cbdde7;background:#f5f9fc}.tag.gold{color:#9a5a04;border-color:#edcd8c;background:#fff7e3}.tag.green{color:#08724f;border-color:#a6dcca;background:#edf9f4}.tag.amber{color:#985a0a;border-color:#eccb98;background:#fff8eb}.tag.red{color:#a82f42;border-color:#edb7c0;background:#fff1f3}
.top-account{border-color:#bdd6e6;background:linear-gradient(115deg,#fff,#edf6fb)}.rank-orb{color:#fff;background:linear-gradient(145deg,#247dbb,#0e548b)}.score-stack strong{color:#0d5c96}
.table-wrap{border-color:#d1e0e9;background:#fff;box-shadow:var(--shadow-soft)}th{color:#44657d;background:#eaf3f8}td{border-color:#e2ebf1}tr:hover td{background:#f6fafc}.positive{color:#087d57}.negative,.danger{color:#bd3448}.warning{color:#b56b0c}.signal{color:#087d57}
.page-title p,.section-head p{color:var(--muted)}.formula{color:#114d76;border-color:#c2dce9;background:#edf7fb}.timeline-step,.lesson,.journey-card{border-color:#d7e3ec;background:#fff}.timeline-step:before,.journey-card span{color:#1769a6}
.gauge:before{border-color:#e1ebf1;border-top-color:#0d9668;border-right-color:#2586bd}.gauge-center span{color:#087d57}.component-row{border-color:#dde8ef}.bar{background:#dde8ef}.bar i{background:linear-gradient(90deg,#2586bd,#19b47e)}.ai-unavailable{color:#8a550c;border-color:#e8bf75;background:#fff8e8}
input,textarea,select{color:#163b56;border-color:#c8dae6;background:#fff}input::placeholder,textarea::placeholder{color:#91a4b3}.result-box{color:#146744;border-color:#afd9c8;background:#edf9f4}.result-box strong{color:#08724f}.product-icon{color:#fff;background:linear-gradient(145deg,#2586bd,#0e548b)}.contact-icon{color:#0e5e97;background:#e6f2f9}
.side-nav{border-color:#d3e1ea;background:rgba(255,255,255,.92);box-shadow:var(--shadow-soft)}.side-nav a{color:#5b7183}.side-nav a:hover,.side-nav a.active{color:#0d5489;background:#e9f3f9}.profile-hero{background:linear-gradient(120deg,#fff,#edf6fb)}.hqi-box{border-color:#e8c981;background:#fff7e2}.hqi-box strong{color:#b86d09}.status-banner{color:#88530a;border-color:#e7c484;background:#fff7e7}.admin-row,.task-item{border-color:#d9e5ec;background:#f8fbfd}.toast{color:#07563b;border-color:#9bd6c1;background:#e8f8f2}.toast.error{color:#9d2c3e;border-color:#e8abb5;background:#fff0f2}.footer{border-color:#cddde7;background:#e9f2f7}.footer-inner{color:#597184}.footer b{color:#173d59}.disclaimer{color:#5f7180;border-left-color:#d99216;background:#fff8e9}

/* Technical academy */
.academy-hero{position:relative;min-height:610px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:4rem;padding:5.3rem 0 4.5rem;overflow:hidden}.academy-hero:before{content:"";position:absolute;inset:-2.5rem calc(50% - 50vw);z-index:-2;background:linear-gradient(115deg,#fafdff 0,#f1f8fc 48%,#e3f1f8 100%)}.academy-hero:after{content:"";position:absolute;z-index:-1;width:50rem;height:50rem;right:-21rem;top:-22rem;border-radius:50%;background:radial-gradient(circle,rgba(255,210,103,.48),rgba(255,230,155,.18) 32%,transparent 68%)}
.academy-kicker{display:flex;align-items:center;gap:.65rem;color:#0f5a91;font:700 .76rem "JetBrains Mono",monospace;letter-spacing:.13em}.sun-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#8a5100;background:#ffe6a3;box-shadow:0 0 28px rgba(242,173,50,.35)}.academy-copy h1{max-width:13ch;margin:1rem 0 1.25rem;color:#102f49;font-size:clamp(3rem,5.9vw,5.8rem);line-height:.98;letter-spacing:-.075em}.academy-copy h1 em{color:#bd6d08;font-style:normal}.academy-copy>p{max-width:42rem;margin:0;color:#4d687d;font-size:1.04rem;line-height:1.78}.academy-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.7rem}.academy-principles{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.4rem;padding-top:1.2rem;border-top:1px solid #cddfe9;color:#496b82;font:600 .68rem "JetBrains Mono",monospace}
.light-monument{position:relative;min-height:450px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(23,105,166,.14);border-radius:48% 48% 22px 22px;background:linear-gradient(180deg,#dceef7 0,#f9fcfe 72%);box-shadow:0 30px 80px rgba(23,75,110,.12)}.light-monument:before{content:"";position:absolute;width:430px;height:430px;top:-210px;border-radius:50%;background:radial-gradient(circle,#fff9d7 0,#ffd66e 24%,rgba(255,216,111,.18) 58%,transparent 72%)}.light-monument:after{content:"";position:absolute;left:9%;right:9%;bottom:64px;height:1px;background:linear-gradient(90deg,transparent,#7eb0cf,transparent)}.light-sun{z-index:2;width:150px;height:150px;display:grid;place-content:center;text-align:center;border-radius:50%;color:#fff;background:linear-gradient(145deg,#efb443,#cb7508);box-shadow:0 0 0 18px rgba(255,255,255,.4),0 0 70px rgba(242,173,50,.32);font-size:2rem;font-weight:800}.light-sun small{display:block;margin-top:.3rem;font:600 .55rem "JetBrains Mono",monospace;letter-spacing:.1em}.light-path{position:absolute;bottom:-42px;width:115px;height:260px;background:linear-gradient(180deg,rgba(255,222,138,.85),rgba(255,255,255,0));clip-path:polygon(42% 0,58% 0,100% 100%,0 100%)}.light-quote{position:absolute;left:1.3rem;bottom:1.3rem;padding:.8rem 1rem;border-left:3px solid #1769a6;color:#365970;background:rgba(255,255,255,.78);font-size:.76rem;line-height:1.55}
.academy-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:2.3rem;margin-top:4rem}.academy-toc{position:sticky;top:122px;align-self:start;display:grid;padding:.8rem;border:1px solid #d2e1ea;border-radius:16px;background:rgba(255,255,255,.93);box-shadow:var(--shadow-soft)}.toc-title{padding:.65rem .7rem;color:#1769a6;font:700 .64rem "JetBrains Mono",monospace;letter-spacing:.1em}.academy-toc a{display:grid;grid-template-columns:28px 1fr;gap:.45rem;padding:.68rem .7rem;border-radius:9px;color:#4c687d;font-size:.76rem;font-weight:650}.academy-toc a span{color:#8ca0ae;font-family:"JetBrains Mono",monospace}.academy-toc a:hover{color:#0f5b91;background:#eaf4fa}.toc-source{margin-top:.7rem;padding:.8rem .7rem;border-top:1px solid #dce7ee;color:#7b8e9c;font-size:.65rem;line-height:1.5}
.academy-content{min-width:0}.academy-intro{display:grid;grid-template-columns:90px 1fr;gap:1.3rem;align-items:start;padding:1.6rem;border:1px solid #cbdfe9;border-radius:20px;background:linear-gradient(135deg,#fdfefe,#eaf5fa);box-shadow:var(--shadow-soft)}.profession-seal{width:76px;height:76px;display:grid;place-content:center;border:1px solid #d4ad5d;border-radius:50%;text-align:center;color:#8c570b;background:#fff7df;font-size:1.7rem}.profession-seal small{font:.55rem "JetBrains Mono",monospace}.academy-intro h2{margin:.35rem 0 .6rem;font-size:clamp(1.5rem,3vw,2.3rem);letter-spacing:-.04em}.academy-intro p{margin:0;color:#587185;line-height:1.68}
.academy-chapter{scroll-margin-top:130px;margin-top:2rem;padding:clamp(1.2rem,3vw,2.1rem);border:1px solid #d2e1ea;border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}.academy-chapter>header{display:grid;grid-template-columns:62px 1fr;gap:1rem;padding-bottom:1.35rem;border-bottom:1px solid #dde8ef}.chapter-number{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(145deg,#237bb8,#0c548a);font:700 1rem "JetBrains Mono",monospace;box-shadow:0 9px 20px rgba(23,105,166,.2)}.academy-chapter h2{margin:.25rem 0 .35rem;font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.05em}.academy-chapter>header p{max-width:52rem;margin:0;color:#63798a;line-height:1.6}
.concept-grid{display:grid;gap:1rem;margin-top:1.2rem}.concept-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.concept-card{padding:1.1rem;border:1px solid #d9e6ed;border-radius:15px;background:#f9fcfd}.concept-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;color:#0d5a91;background:#e4f2f9;font-size:1.2rem}.concept-card h3{margin:.8rem 0 .45rem}.concept-card p,.concept-card li{color:#5f7587;font-size:.78rem;line-height:1.55}.concept-card ul{padding-left:1.15rem}.lesson-details,.pattern-study{margin-top:.9rem;border:1px solid #d3e3ec;border-radius:13px;background:#fbfdfe}.lesson-details summary,.pattern-study summary{cursor:pointer;list-style:none;padding:1rem;color:#174a70;font-weight:700}.lesson-details summary::-webkit-details-marker,.pattern-study summary::-webkit-details-marker{display:none}.lesson-details>div{padding:0 1rem 1rem;color:#526d80;font-size:.82rem;line-height:1.65}
.physics-lab{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.2rem}.physics-lab>section{padding:1.05rem;border:1px solid #d8e5ed;border-radius:16px;background:#f9fcfe}.physics-lab h3{margin:.9rem 0 .45rem}.physics-lab p{color:#5e7485;font-size:.78rem;line-height:1.58}.lesson-rule{padding:.65rem;border-left:3px solid #1769a6;color:#365c77;background:#eaf5fa;font-size:.7rem;line-height:1.5}.physics-viz{height:110px;display:flex;align-items:end;gap:10px;padding:12px;border-radius:11px;background:#eaf3f8}.physics-viz i{width:18px;border-radius:4px 4px 0 0;background:#4c92bd}.physics-viz i:nth-child(1){height:24%}.physics-viz i:nth-child(2){height:38%}.physics-viz i:nth-child(3){height:86%;background:#0e6fa9}.physics-viz i:nth-child(4){height:56%}.physics-viz i:nth-child(5){height:31%}.balance-viz{height:110px;display:flex;align-items:center;gap:2px}.balance-viz span{display:grid;place-items:center;height:48px;color:#fff;background:#247bb4;font:650 .58rem "JetBrains Mono",monospace}.balance-viz span+span{background:#e0a02b}.mean-viz{position:relative;height:110px;display:grid;place-items:center;border-radius:11px;background:#edf5f9}.mean-viz span{position:absolute;left:8px;right:8px;top:53%;border-top:2px dashed #75a5c3;color:#587d94;font-size:.55rem}.mean-viz i{position:absolute;width:2px;height:55px;left:65%;top:13%;background:#d9a13b;transform:rotate(-25deg)}.mean-viz b{position:absolute;right:16%;top:13%;color:#b66b08}.evidence-callout{display:grid;grid-template-columns:180px 1fr;gap:1rem;margin-top:1rem;padding:1rem;border:1px solid #bed9e7;border-radius:14px;background:#edf7fb}.evidence-callout b{color:#0e6098}.evidence-callout p{margin:0;color:#4e6c80;font-size:.78rem;line-height:1.55}
.system-roadmap{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:.55rem;margin-top:1.2rem}.system-roadmap>div{padding:1rem;border:1px solid #d3e2eb;border-radius:14px;background:#f8fbfd}.system-roadmap>div span{color:#0f659d;font:700 .65rem "JetBrains Mono",monospace}.system-roadmap>div b{display:block;margin:.45rem 0}.system-roadmap>div p{margin:0;color:#617787;font-size:.7rem;line-height:1.5}.system-roadmap>i{align-self:center;color:#92a9b8;font-style:normal}.no-trade-box{margin-top:1rem;padding:1rem;border:1px solid #e0c58c;border-radius:14px;background:#fff8e8}.no-trade-box span{color:#9a5a06;font:700 .67rem "JetBrains Mono",monospace}.no-trade-box p{margin:.45rem 0 0;color:#6b654f;font-size:.78rem;line-height:1.55}
.pattern-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-top:1.1rem}.pattern-study{margin:0}.pattern-study summary{display:grid;grid-template-columns:36px 1fr 20px;align-items:center;gap:.65rem}.pattern-index{color:#1769a6;font:.7rem "JetBrains Mono",monospace}.pattern-study summary b,.pattern-study summary small{display:block}.pattern-study summary small{margin-top:.15rem;color:#8193a0;font-size:.65rem}.pattern-toggle{color:#1769a6;font-size:1.2rem}.pattern-study[open] .pattern-toggle{transform:rotate(45deg)}.pattern-body{display:grid;grid-template-columns:130px 1fr;gap:1rem;padding:0 1rem 1rem}.pattern-body p{margin:.2rem 0 .55rem;color:#526f82;font-size:.73rem;line-height:1.55}.pattern-gate{padding:.55rem;border-radius:8px;color:#0c5d91;background:#e9f5fa;font-size:.63rem;font-weight:650}.pattern-chart{position:relative;height:120px;border:1px solid #d6e4ec;border-radius:10px;background:repeating-linear-gradient(0deg,#f8fbfd 0,#f8fbfd 23px,#eaf1f5 24px);overflow:hidden}.pattern-chart i{position:absolute;bottom:25px;width:13px;border:2px solid #1769a6;background:#5fa4cd}.pattern-chart i:before{content:"";position:absolute;left:50%;top:-16px;height:50px;border-left:2px solid inherit}.pattern-chart i:nth-child(1){left:18px;height:27px}.pattern-chart i:nth-child(2){left:42px;height:42px}.pattern-chart i:nth-child(3){left:70px;height:34px;border-color:#d28a19;background:#f4c15f}.pattern-chart i:nth-child(4){left:96px;height:57px}.pattern-chart.pin i:nth-child(3){height:16px;bottom:45px}.pattern-chart.double-bottom i:nth-child(2),.pattern-chart.double-bottom i:nth-child(4){height:18px}.pattern-chart.double-top i:nth-child(2),.pattern-chart.double-top i:nth-child(4){bottom:60px}.pattern-chart.retest i:nth-child(4){bottom:48px}.pattern-chart.gap i:nth-child(4){bottom:70px}
.execution-compare{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.1rem}.execution-card{padding:1.15rem;border:1px solid #d9e4eb;border-radius:16px}.execution-card.impatient{background:#fff6f7;border-color:#e8c5cb}.execution-card.disciplined{background:#eff9f5;border-color:#b9ddcf}.execution-label{color:#718494;font:700 .62rem "JetBrains Mono",monospace;letter-spacing:.08em}.execution-card h3{margin:.5rem 0}.execution-card li{color:#5d7180;font-size:.75rem;line-height:1.55}.rr-meter{display:flex;height:36px;margin:.8rem 0;overflow:hidden;border-radius:8px;color:#fff;font:700 .59rem "JetBrains Mono",monospace}.rr-meter span,.rr-meter b{display:grid;place-items:center}.rr-meter span{background:#c64b5b}.rr-meter b{background:#14946a}.execution-gates{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem;padding:1rem;border:1px solid #d4e3eb;border-radius:14px;background:#f8fbfd}.execution-gates b{width:100%;color:#1a506f}.execution-gates span{padding:.4rem .55rem;border-radius:99px;color:#3d6178;background:#e8f2f7;font-size:.67rem}
.toolkit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.toolkit-grid section{padding:1rem;border:1px solid #d5e4ec;border-radius:14px;background:#f8fbfd}.toolkit-grid span{color:#1769a6;font:700 .65rem "JetBrains Mono",monospace}.toolkit-grid h3{margin:.6rem 0 .35rem}.toolkit-grid p{margin:0;color:#5e7586;font-size:.75rem;line-height:1.55}.legacy-warning{display:grid;grid-template-columns:52px 1fr;gap:1rem;margin-top:1rem;padding:1.15rem;border:1px solid #e5a9b3;border-radius:16px;background:#fff2f4}.legacy-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:13px;color:#fff;background:#bd3448;font-size:1.3rem;font-weight:800}.legacy-warning h3{margin:.35rem 0}.legacy-warning p,.legacy-warning li{color:#76545a;font-size:.75rem;line-height:1.6}.legacy-warning code{color:#9d2e40;background:#ffe1e6}
.survival-equation{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;gap:.8rem;align-items:center;margin-top:1rem;padding:1.2rem;border:1px solid #d5e3eb;border-radius:18px;background:#f8fbfd}.survival-equation>div{display:grid;justify-items:center;gap:.25rem;padding:1rem}.survival-equation strong{color:#1769a6;font-size:2.1rem}.survival-equation span{color:#5d7384;font-size:.72rem}.survival-equation b{color:#bc3548}.survival-equation>i{color:#8ea2b0;font-style:normal;font-size:1.5rem}.survival-equation .equation-result{border-radius:14px;background:#eaf8f2}.survival-equation .equation-result strong{color:#0b875e}.survival-equation small{color:#73887e;font-size:.58rem}.risk-labs{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}.lab-card{padding:1.1rem;border:1px solid #d5e4ec;border-radius:16px;background:#fbfdfe}.expectancy-result{display:grid;gap:.35rem;margin-top:1rem;padding:1rem;border:1px solid #cedee7;border-radius:12px;color:#4e687b;background:#f3f8fb}.expectancy-result strong{font:800 1.65rem "JetBrains Mono",monospace}.expectancy-result small{color:#7b8e9c;font-size:.62rem}.positive-expectancy{color:#087552;border-color:#abd7c5;background:#edf9f4}.negative-expectancy{color:#a83244;border-color:#e8b5bd;background:#fff1f3}
.calculator-note{margin:.35rem 0 1rem;padding:.7rem;border-left:3px solid #1769a6;color:#526f82;background:#edf7fb;font-size:.7rem;line-height:1.55}.result-box small{display:block;color:#476e60;font-size:.7rem;line-height:1.55}
.mind-traps{margin-top:1.2rem;padding:1.1rem;border:1px solid #d4e3eb;border-radius:16px;background:#f9fcfd}.mind-traps .section-head{margin-bottom:.8rem}.mind-traps ol{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin:0;padding:0;list-style:none}.mind-traps li{display:grid;grid-template-columns:32px 1fr;gap:.5rem;align-items:center;padding:.65rem;border:1px solid #deeaef;border-radius:9px;color:#4d687a;background:#fff;font-size:.71rem}.mind-traps li span{color:#1769a6;font:700 .62rem "JetBrains Mono",monospace}.discipline-lab{scroll-margin-top:130px;margin-top:1.2rem;padding:1.2rem;border:1px solid #aacfe2;border-radius:18px;background:linear-gradient(135deg,#edf8fc,#fff)}.discipline-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.discipline-head h3{margin:.3rem 0}.discipline-head p{margin:0;color:#5e7789;font-size:.74rem}.discipline-score{min-width:180px;padding:.8rem;border-radius:13px;text-align:center;background:#e3f0f7}.discipline-score strong{display:block;color:#0e6198;font:800 1.7rem "JetBrains Mono",monospace}.discipline-score span{color:#6a7e8c;font-size:.55rem;font-weight:800}.discipline-score span.ready{color:#087552}.checklist-grid{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:1rem}.checklist-grid label{display:grid;grid-template-columns:20px 1fr;align-items:center;padding:.75rem;border:1px solid #d3e4ec;border-radius:10px;color:#47667a;background:#fff;font-size:.71rem;line-height:1.45}.checklist-grid input{width:17px;height:17px;accent-color:#0d9668}.kaizen-routine{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.kaizen-routine article{padding:1rem;border-top:3px solid #f2ad32;border-radius:0 0 13px 13px;background:#fff9ea}.kaizen-routine span{color:#97600d;font:700 .62rem "JetBrains Mono",monospace}.kaizen-routine h3{margin:.55rem 0 .35rem}.kaizen-routine p{margin:0;color:#706849;font-size:.72rem;line-height:1.55}.academy-disclaimer{margin-top:1.2rem;padding:1rem;border-left:4px solid #1769a6;color:#536f81;background:#edf7fb}.academy-disclaimer p{margin:.35rem 0 0;font-size:.72rem;line-height:1.6}
@media(max-width:1050px){.academy-hero{grid-template-columns:1fr;gap:2rem}.light-monument{min-height:380px}.academy-layout{grid-template-columns:1fr}.academy-toc{position:static;display:flex;overflow-x:auto;gap:.25rem}.academy-toc a{min-width:max-content}.toc-title,.toc-source{display:none}.physics-lab,.toolkit-grid{grid-template-columns:1fr 1fr}.system-roadmap{grid-template-columns:1fr 1fr}.system-roadmap>i{display:none}}
@media(max-width:700px){.academy-hero{min-height:0;padding:3rem 0}.academy-copy h1{font-size:clamp(2.7rem,13vw,4.3rem)}.light-monument{min-height:310px;border-radius:36% 36% 18px 18px}.light-sun{width:118px;height:118px;font-size:1.5rem}.academy-principles{display:grid}.academy-intro{grid-template-columns:1fr}.academy-chapter{padding:1rem}.academy-chapter>header{grid-template-columns:46px 1fr}.chapter-number{width:42px;height:42px}.concept-grid.three,.physics-lab,.pattern-library,.execution-compare,.toolkit-grid,.risk-labs,.mind-traps ol,.checklist-grid,.kaizen-routine{grid-template-columns:1fr}.system-roadmap{grid-template-columns:1fr}.pattern-body{grid-template-columns:1fr}.pattern-chart{max-width:180px}.evidence-callout{grid-template-columns:1fr}.survival-equation{grid-template-columns:1fr}.survival-equation>i{transform:rotate(90deg)}.discipline-head{align-items:flex-start;flex-direction:column}.discipline-score{width:100%}.legacy-warning{grid-template-columns:1fr}.academy-toc{margin-left:-.9rem;margin-right:-.9rem;padding-left:.9rem;padding-right:.9rem;border-left:0;border-right:0;border-radius:0}}
.academy-toc button{display:grid;grid-template-columns:28px 1fr;gap:.45rem;width:100%;padding:.68rem .7rem;border:0;border-radius:9px;color:#4c687d;background:transparent;text-align:left;font-size:.76rem;font-weight:650}.academy-toc button span{color:#8ca0ae;font-family:"JetBrains Mono",monospace}.academy-toc button:hover,.academy-toc button:focus-visible{color:#0f5b91;background:#eaf4fa}.academy-toc button:focus-visible{outline:3px solid rgba(23,105,166,.28);outline-offset:2px}@media(max-width:1050px){.academy-toc button{min-width:max-content}}
.pattern-library{align-items:start}.pattern-study{align-self:start}
.hero-copy{color:#4d687d}

.login-wrap{min-height:68vh;display:grid;place-items:center;padding:48px 0}
.login-card{width:min(100%,480px);box-shadow:0 24px 70px rgba(20,61,92,.14)}

.logout-link{border:0;background:transparent;color:#b42318;text-align:left;padding:10px 12px;font:inherit;font-weight:700;cursor:pointer}
.logout-link:hover{background:#fff1f0;border-radius:9px}

.warning-disclosure summary{cursor:pointer!important;user-select:none;font-weight:700;color:var(--navy);transition:color .15s ease}
.warning-disclosure summary:hover{color:var(--sky)}
.filter-warn-btn{border-radius:20px!important;font-weight:700!important;transition:all .15s ease!important}

/* Challenge registration and controlled roster import */
.challenge-heading{display:flex;align-items:end;justify-content:space-between;gap:1.5rem}
.registration-card{padding:1.6rem;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:2rem;border-color:rgba(37,143,86,.32);background:linear-gradient(135deg,rgba(37,143,86,.08),rgba(255,255,255,.96) 55%)}
.registration-card h2,.import-panel h2{margin:.35rem 0 .55rem}.registration-state{display:flex;align-items:center;gap:.7rem;margin-top:1rem;color:var(--muted)}
.registration-form,.import-form{display:grid;gap:.85rem;align-content:start}
.public-registration-card{grid-template-columns:minmax(260px,.75fr) minmax(420px,1.25fr)}.registration-steps{margin:1rem 0;padding-left:1.25rem;color:var(--muted);display:grid;gap:.45rem}.registration-consent{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:.65rem!important;font-weight:500!important}.registration-consent input{width:auto;margin-top:.2rem;flex:0 0 auto}.registration-form small{font-weight:500;color:var(--muted)}.manual-account-panel{margin-bottom:1.25rem;border-color:rgba(31,111,168,.3)}.manual-account-panel>summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem}.registration-form label,.import-form label{display:grid;gap:.35rem;font-weight:700}
.registration-locked{grid-template-columns:1fr auto;align-items:center}.import-panel{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:1rem;scroll-margin-top:6rem}
.import-copy p{max-width:58ch}.import-result code{display:inline-block;margin-top:.3rem;padding:.25rem .45rem;border-radius:.35rem;background:rgba(18,33,28,.08);word-break:break-all}
@media(max-width:760px){.challenge-heading{display:block}.challenge-heading>.button{margin-top:1rem}.registration-card,.public-registration-card,.registration-locked,.import-panel{grid-template-columns:1fr}.manual-account-panel>summary{display:block}.manual-account-panel>summary .muted{display:block;margin-top:.35rem}}

/* Admin control center + competition member dashboard */
.admin-kpis{margin:1rem 0 1.4rem}.admin-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.command-card{padding:1.25rem;display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:center;text-decoration:none;color:inherit;transition:.2s ease}
.command-card:hover{transform:translateY(-2px);border-color:rgba(17,105,164,.35);box-shadow:0 14px 34px rgba(19,71,111,.11)}
.command-card>span{display:grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;background:#e7f3fb;color:#0d659c;font-family:var(--mono);font-weight:800}
.command-card b,.command-card small{display:block}.command-card small{margin-top:.3rem;color:var(--muted)}
.schema-code{padding:.8rem 1rem;border-radius:.65rem;background:#eff6fa;border:1px solid #dbe8f0;font:600 .72rem/1.7 var(--mono);word-break:break-word;color:#235775}
.inline-admin-form{display:grid;grid-template-columns:minmax(120px,1fr) 90px auto;gap:.4rem;min-width:340px}.inline-admin-form select,.inline-admin-form input{min-width:0;padding:.55rem}
.button.small{padding:.55rem .7rem;font-size:.74rem}.settings-section{padding:1rem 0;border-top:1px solid var(--line)}.settings-section h3{margin-top:0}
.member-task{display:grid;gap:1rem}.member-task .task-submit-form{display:grid;gap:.65rem}.member-task label{display:grid;gap:.3rem;font-weight:700}
.admin-layout .table-wrap{margin:0}.admin-layout table{min-width:1050px}
@media(max-width:900px){.admin-command-grid{grid-template-columns:1fr}.inline-admin-form{min-width:280px}.member-metrics.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.member-metrics.grid.four{grid-template-columns:1fr}.admin-kpis.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* SCORE rankings, live quote, CMS popup and tier system */
.ticker-price{font:700 .84rem "JetBrains Mono",monospace;color:var(--ink);min-width:7rem}
.quote-live{background:#18a870!important;box-shadow:0 0 0 .28rem rgba(24,168,112,.13)}
.quote-stale{background:#d48a14!important}.quote-test{background:#2d75cf!important}.quote-waiting{background:#95a1ad!important}
.footer-three{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:1.5rem}
.footer-three>div:last-child{text-align:right}.footer-designer{color:inherit;font-weight:600;text-decoration:none;opacity:.88}.footer-designer:hover{text-decoration:underline;opacity:1}
.form-grid label small { display: block; font-weight: 500 !important; color: #64748b !important; margin-top: 0.2rem; font-size: 0.75rem; }
.support-rank-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.mini-rank-list{display:grid;gap:.4rem;margin-top:1rem}.mini-rank-row{display:grid;grid-template-columns:2.2rem 1fr auto;align-items:center;gap:.8rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.mini-rank-row:last-child{border-bottom:0}.mini-rank-row>span{font:700 .78rem "JetBrains Mono",monospace;color:var(--muted)}.mini-rank-row div{display:grid;gap:.1rem}.mini-rank-row small{color:var(--muted)}.mini-rank-row strong,.score-cell{font-family:"JetBrains Mono",monospace;color:var(--gold)}
.tag.seed{background:#eef7f1;color:#26704a}.tag.growth{background:#e8f3ff;color:#2667a5}.tag.pro{background:#fff4d9;color:#8a6011}.tag.elite{background:#f3eafa;color:#72439a}
.tier-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}.tier-card{display:grid;gap:.32rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.tier-card>span{font:700 .72rem "JetBrains Mono",monospace;color:var(--muted)}.tier-card>b{font-size:1.05rem}.tier-card small{color:var(--muted)}.tier-card.seed{border-top:3px solid #59a879}.tier-card.growth{border-top:3px solid #4d93d2}.tier-card.pro{border-top:3px solid #c99a30}.tier-card.elite{border-top:3px solid #8c62af}
/* Admin Control Center Form Label & Card High-Contrast Styling */
.admin-editor label, .settings-section label, .form-grid label {
  color: #0f2942 !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  letter-spacing: -0.01em;
}
.admin-editor label small, .settings-section label small {
  color: #0284c7 !important;
  font-weight: 600 !important;
}
.admin-editor input, .admin-editor select, .admin-editor textarea {
  color: #0f172a !important;
  font-weight: 600 !important;
  border-color: #94a3b8 !important;
}
.admin-editor input:focus, .admin-editor select:focus, .admin-editor textarea:focus {
  border-color: #0284c7 !important;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15) !important;
}
.settings-section {
  padding: 1.25rem;
  margin-top: 1rem;
  border-radius: 12px;
  background: #f8fafc;
  border: 1px solid #cbd5e1;
}
.score-config {
  border-left: 4px solid var(--gold);
  background: linear-gradient(90deg, rgba(203,153,43,.08), #fff);
}

.popup-toggle{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.switch-label{display:flex!important;grid-template-columns:auto 1fr;align-items:center;gap:.55rem;white-space:nowrap}.switch-label input{width:1.1rem;height:1.1rem}.code-textarea{min-height:11rem;font:500 .84rem/1.55 "JetBrains Mono",monospace}
.site-popup-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:1rem;background:rgba(19,35,43,.52);backdrop-filter:blur(5px)}.site-popup{position:relative;width:min(560px,100%);max-height:min(80vh,720px);overflow:auto;padding:2rem;border:1px solid rgba(255,255,255,.7);border-radius:1.2rem;background:#fff;box-shadow:0 30px 80px rgba(12,32,43,.25)}.site-popup-close{position:absolute;right:.9rem;top:.8rem;border:0;background:#eef3f5;border-radius:50%;width:2rem;height:2rem;cursor:pointer}.site-popup-html{margin:1rem 0 1.4rem;color:var(--ink-soft);line-height:1.7}.site-popup-html a{color:var(--gold);font-weight:700}
.score-hero{display:grid;justify-items:end;gap:.2rem}.score-hero>span{font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.score-hero>strong{font:800 2.7rem "JetBrains Mono",monospace;color:var(--gold)}.score-hero>small{color:var(--muted)}
@media(max-width:900px){.tier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-three{grid-template-columns:1fr;text-align:center}.footer-three>div:last-child{text-align:center}}
@media(max-width:640px){.support-rank-grid,.tier-grid{grid-template-columns:1fr}.popup-toggle{display:grid}.score-hero{justify-items:start}.site-popup{padding:1.35rem}}

.member-hero .source-note{margin:.85rem 0 0;font-size:.82rem;line-height:1.5;color:var(--muted)}
.member-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;margin:1rem 0 1.5rem}.member-kpis strong{display:block;margin:.35rem 0;font:800 1.45rem/1.1 "JetBrains Mono",monospace;color:var(--ink)}.member-kpis small{display:block;line-height:1.45;color:var(--muted)}
.member-detail-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:1rem}.performance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:1rem 0}.performance-grid>div{padding:.7rem;border:1px solid #d9e5ed;border-radius:.75rem;background:#fbfdfe}.performance-grid span{display:block;font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.performance-grid b{display:block;margin-top:.28rem;font:800 1.03rem "JetBrains Mono",monospace;color:var(--ink)}
.requirements-list{display:grid;gap:.55rem;margin:1rem 0 0;padding:0;list-style:none}.requirements-list li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.5rem;padding:.55rem 0;border-bottom:1px solid #e5edf2}.requirements-list b{font-family:"JetBrains Mono",monospace;font-size:.84rem}.equity-curve{display:block;width:100%;height:14rem;margin-top:.7rem;border-radius:.8rem;background:linear-gradient(180deg,#f2fbff,#fff)}.equity-curve polyline{stroke:#1985c5;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.curve-scale{display:flex;justify-content:space-between;margin-top:.35rem;font:.76rem "JetBrains Mono",monospace;color:var(--muted)}.chart-empty{display:grid;min-height:11rem;place-items:center;padding:1rem;border:1px dashed #bed0dc;border-radius:.8rem;color:var(--muted);text-align:center}.warning-list{display:grid;gap:.65rem;margin-top:.8rem}.warning-row{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding:.7rem;border:1px solid #f0d69b;border-radius:.7rem;background:#fffaf0}.warning-row p{margin:.22rem 0;color:var(--ink-soft);font-size:.86rem}.warning-row small{color:var(--muted)}.positive{color:#16804b!important}.negative{color:#b83e3e!important}
@media(max-width:1100px){.member-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.member-detail-grid{grid-template-columns:1fr}}@media(max-width:640px){.member-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.member-kpis strong{font-size:1.12rem}.performance-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.requirements-list li{grid-template-columns:1fr auto}.requirements-list .tag{grid-column:2}.equity-curve{height:11rem}}

/* 2026-08-04: mobile navigation, ticker scroller and full leaderboard */
.nav-actions{margin-left:auto;flex:0 0 auto}
.ticker-inner{gap:.5rem}
.live-dot{flex:0 0 7px}
.ticker-scroller{min-width:0;flex:1;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none;scroll-snap-type:x proximity}
.ticker-scroller::-webkit-scrollbar{display:none}
.ticker-track{display:flex;width:max-content;min-width:100%;align-items:center;gap:.65rem}
.ticker-track>*{scroll-snap-align:start}
.leaderboard-scroll{max-height:560px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.leaderboard-scroll th{position:sticky;z-index:2;top:0}
.hqter-tag{margin-left:.3rem;padding:.16rem .42rem;font-size:.62rem}
.funded-section{padding-top:.25rem;border-top:1px solid var(--border)}
.funded-scroll{max-height:420px;border-color:#e3c77d}
.funded-table th{background:#fff5d9;color:#84520b}
.table-result-count{position:sticky;bottom:0;padding:.7rem 1rem;border-top:1px solid #d7e3ec;color:#536f82;background:rgba(248,251,253,.97);font-size:.78rem}
.admin-layout .table-wrap th{position:sticky;z-index:2;top:0}
.admin-account-row[hidden]{display:none}

@media(max-width:640px){
  .nav{width:100%;justify-content:space-between;gap:.45rem}
  .brand{min-width:0;flex:0 1 auto;font-size:.88rem}
  .brand-mark{flex:0 0 40px;width:40px;height:36px}
  .nav-actions{margin-left:auto}
  .nav-menu{flex:0 0 42px;width:42px;height:42px}
  .nav-links.open{left:.75rem;right:.75rem}
  .ticker-inner{padding:.2rem .75rem}
  .ticker-scroller{padding:.2rem 0}
  .ticker-track{gap:.55rem;font-size:.69rem}
  .ticker-price{min-width:max-content}
  .leaderboard-scroll{max-height:72vh;padding:.55rem;overflow-y:auto;background:#eef5f9}
  .leaderboard-table{display:block;min-width:0}
  .leaderboard-table thead{display:none}
  .leaderboard-table tbody{display:grid;gap:.65rem}
  .leaderboard-table .leaderboard-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem;padding:.75rem;border:1px solid #d5e3ec;border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(30,75,110,.06)}
  .leaderboard-table .leaderboard-row:hover td{background:transparent}
  .leaderboard-table .leaderboard-row td{display:flex;min-width:0;flex-direction:column;align-items:flex-end;justify-content:flex-start;padding:.5rem;border-top:0;text-align:right;overflow-wrap:anywhere}
  .leaderboard-table .leaderboard-row td::before{display:block;margin-bottom:.2rem;color:#758b9b;content:attr(data-label);font:700 .58rem "JetBrains Mono",monospace;letter-spacing:.06em;text-transform:uppercase}
  .leaderboard-table .leaderboard-row td:nth-child(2){grid-column:1/-1;grid-row:1;align-items:flex-start;padding-bottom:.7rem;border-bottom:1px solid #e5edf2;text-align:left}
  .leaderboard-table .leaderboard-row td:nth-child(1){grid-column:1;grid-row:2}
  .leaderboard-table .leaderboard-row td:nth-child(3){grid-column:2;grid-row:2}
  .leaderboard-table td[colspan]{display:block;grid-column:1/-1;padding:0;border:0}
  .funded-scroll{max-height:64vh}
  .funded-table .leaderboard-row{border-color:#ead69e;background:linear-gradient(145deg,#fff,#fffaf0)}
  #admin-account-search{min-width:100%!important}
}


/* Member account workspace and bounded trade history */
.member-account-hero{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 1.75rem}
.member-account-grid{align-items:start}
.member-trade-history-scroll{max-height:430px;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
.member-trade-history-scroll thead th{position:sticky;top:0;z-index:3}
.public-warning-card{align-items:center}
.public-warning-card .violation-count{font-weight:800;color:#bd3448}
@media(max-width:700px){.member-account-hero{align-items:flex-start;flex-direction:column}.member-trade-history-scroll{max-height:360px}}
/* Long public warning lists stay compact and independently scrollable. */
.public-warning-scroll{max-height:480px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding-right:.35rem;align-content:start}
@media(max-width:700px){.public-warning-scroll{max-height:380px}}
.leaderboard-row.disqualified-row.disqualified-row{background:rgba(241,113,130,.06)}.leaderboard-row.disqualified-row td{color:#788b9c}

/* Admin Lucky Wheel CSS Styling */
.wheel-wrapper-card {
  background: #ffffff !important;
  border-radius: 20px !important;
  border: 1px solid #cbd5e1 !important;
  box-shadow: 0 12px 32px rgba(15, 23, 42, 0.08) !important;
  overflow: hidden;
  padding: 1.5rem !important;
}

.wheel-header-banner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem;
  background: linear-gradient(135deg, #0f2942 0%, #1e40af 100%);
  color: #ffffff;
  padding: 1.25rem 1.5rem;
  border-radius: 16px;
  margin-bottom: 1.25rem;
}

.wheel-eyebrow {
  color: #f59e0b;
  font-weight: 800;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
}

.wheel-main-title {
  font-size: 1.4rem;
  font-weight: 800;
  margin: 0.2rem 0;
}

.wheel-sub-title {
  color: #94a3b8;
  font-size: 0.88rem;
  margin: 0;
}

.wheel-preset-buttons {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.wheel-preset-buttons .preset-label {
  font-size: 0.82rem;
  font-weight: 700;
  color: #cbd5e1;
}

.wheel-mode-switcher {
  display: flex;
  gap: 0.5rem;
  background: #f1f5f9;
  padding: 4px;
  border-radius: 12px;
  margin-bottom: 1.5rem;
}

.wheel-mode-switcher .mode-tab {
  flex: 1;
  padding: 10px 16px;
  border: none;
  background: transparent;
  color: #475569;
  font-weight: 700;
  font-size: 0.9rem;
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s ease;
}

.wheel-mode-switcher .mode-tab.active {
  background: #ffffff;
  color: #0f2942;
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.wheel-grid-layout {
  display: grid;
  grid-template-columns: 440px minmax(0, 1fr);
  gap: 1.5rem;
  align-items: start;
}

@media (max-width: 1080px) {
  .wheel-grid-layout {
    grid-template-columns: 1fr;
  }
}

.wheel-stage-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fafafa;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 1.25rem;
  min-width: 0;
}

.wheel-stage {
  position: relative;
  width: 440px;
  height: 440px;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 500px) {
  .wheel-stage {
    width: 320px;
    height: 320px;
  }
  #wheel-canvas {
    width: 320px !important;
    height: 320px !important;
  }
}

.wheel-pointer {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-left: 18px solid transparent;
  border-right: 18px solid transparent;
  border-top: 32px solid #ef4444;
  z-index: 20;
  filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
  transition: transform 0.05s ease;
}

.wheel-pointer.tick-bounce {
  transform: translateX(-50%) translateY(-4px) scaleY(0.9);
}

.wheel-center-hub {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 86px;
  height: 86px;
  border-radius: 50%;
  background: linear-gradient(135deg, #f59e0b, #d97706);
  border: 4px solid #ffffff;
  color: #ffffff;
  font-weight: 900;
  font-size: 0.95rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(217,119,6,0.4);
  z-index: 15;
  transition: transform 0.15s ease;
}

.wheel-center-hub:hover {
  transform: translate(-50%, -50%) scale(1.06);
}

.wheel-action-bar {
  width: 100%;
  margin-top: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.huge-spin-button {
  width: 100%;
  padding: 14px;
  font-size: 1.05rem;
  font-weight: 800;
  background: linear-gradient(135deg, #10b981 0%, #059669 100%);
  border: none;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(16,185,129,0.3);
}

.wheel-manager-card {
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  padding: 1.25rem;
  min-width: 0;
  overflow: hidden;
}

.manager-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.75rem;
}

.manager-header h3 {
  margin: 0;
  color: #0f2942;
  font-size: 1.1rem;
}

.manager-toolbar {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem;
}

.manager-toolbar input {
  flex: 1;
  min-width: 0;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  padding: 8px 12px;
}

.candidate-list-scroll {
  max-height: 280px;
  overflow-y: auto;
  overflow-x: hidden;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  margin-bottom: 1rem;
}

.candidate-item-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 12px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  font-weight: 600;
  color: #1e293b;
  min-width: 0;
}

.candidate-item-row .btn-remove {
  background: none;
  border: none;
  color: #ef4444;
  cursor: pointer;
  font-weight: 700;
}

.ticket-table-wrap {
  max-height: 320px;
  overflow-y: auto;
  overflow-x: hidden;
  margin-bottom: 1rem;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
}

.ticket-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}

.ticket-table th {
  background: #f1f5f9;
  color: #475569;
  font-size: 0.8rem;
  padding: 8px 6px;
  text-align: left;
}

.ticket-table td {
  padding: 6px 6px;
  border-top: 1px solid #e2e8f0;
  font-size: 0.88rem;
  vertical-align: middle;
}

.ticket-table input[type="number"] {
  width: 60px;
  padding: 4px 6px;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  font-weight: 700;
}

.color-badge {
  display: inline-block;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  vertical-align: middle;
}

.ticket-summary-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-weight: 700;
  color: #0f2942;
}

/* ==================== SẢNH DANH VỌNG (HALL OF FAME) – PRESTIGE CLEAN THEME ==================== */
.hof-section {
  padding: 2.5rem 1.5rem;
  background: #ffffff;
  border: 1.5px solid #fde68a;
  border-top: 4px solid #f59e0b;
  border-radius: 20px;
  box-shadow: 0 10px 40px rgba(245, 158, 11, 0.08), 0 2px 6px rgba(15, 23, 42, 0.04);
  margin-bottom: 2.5rem;
  color: #0f2942;
  position: relative;
  overflow: hidden;
}
.hof-container {
  max-width: 860px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.hof-header {
  text-align: center;
  margin-bottom: 2rem;
}
.hof-brand {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.9rem;
  font-weight: 900;
  letter-spacing: 2px;
  color: #b45309;
  text-transform: uppercase;
  margin-bottom: 0.4rem;
}
.hof-sparkle {
  color: #f59e0b;
  animation: sparkle 2s ease-in-out infinite;
}
@keyframes sparkle {
  0%, 100% { opacity: 0.6; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.3); }
}
.hof-crown-icon {
  font-size: 2.6rem;
  filter: drop-shadow(0 4px 12px rgba(245, 158, 11, 0.4));
  margin: 0.25rem 0;
  animation: floatCrown 3s ease-in-out infinite;
}
@keyframes floatCrown {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}
.hof-title {
  font-size: clamp(2.4rem, 6vw, 4rem);
  font-weight: 950;
  line-height: 1;
  letter-spacing: 4px;
  text-transform: uppercase;
  background: linear-gradient(180deg, #78350f 0%, #b45309 30%, #d97706 60%, #f59e0b 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 6px rgba(180, 83, 9, 0.2));
  margin: 0.25rem 0 0.75rem 0;
}
.hof-ribbon {
  display: inline-block;
  padding: 0.6rem 2.2rem;
  background: linear-gradient(90deg, #b45309 0%, #d97706 30%, #f59e0b 50%, #d97706 70%, #b45309 100%);
  color: #fff;
  font-weight: 950;
  font-size: clamp(0.9rem, 2.5vw, 1.2rem);
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: 999px;
  box-shadow: 0 4px 16px rgba(217, 119, 6, 0.3), inset 0 1px 2px rgba(255,255,255,0.4);
  margin-bottom: 0.6rem;
}
.hof-subtitle {
  font-size: 1.05rem;
  font-weight: 900;
  color: #0f2942;
  margin: 0.3rem 0;
}
.hof-gold-text {
  color: #d97706;
  font-weight: 950;
}
.hof-slogan {
  font-size: 0.85rem;
  color: #64748b;
  font-style: italic;
  letter-spacing: 1.5px;
  text-transform: uppercase;
}
.hof-list {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-bottom: 2rem;
}
.hof-card {
  display: grid;
  grid-template-columns: 60px 1fr 140px 130px;
  align-items: center;
  padding: 0.85rem 1.25rem;
  border-radius: 12px;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
  transition: all 0.25s ease;
}
.hof-card:hover {
  transform: translateY(-2px);
  border-color: #f59e0b;
  box-shadow: 0 8px 24px rgba(245, 158, 11, 0.12);
}
.hof-card.top-1 {
  background: linear-gradient(90deg, #fffbeb 0%, #ffffff 40%, #ffffff 100%);
  border: 2px solid #f59e0b;
  box-shadow: 0 4px 20px rgba(245, 158, 11, 0.15);
}
.hof-card.top-2 {
  background: linear-gradient(90deg, #f8fafc 0%, #ffffff 40%, #ffffff 100%);
  border: 1.5px solid #94a3b8;
}
.hof-card.top-3 {
  background: linear-gradient(90deg, #fff7ed 0%, #ffffff 40%, #ffffff 100%);
  border: 1.5px solid #ea580c;
}
.hof-rank-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 34px;
  background: linear-gradient(135deg, #fef08a, #f59e0b);
  color: #451a03;
  font-weight: 950;
  font-size: 1.15rem;
  border-radius: 8px 0 0 8px;
  clip-path: polygon(0% 0%, 85% 0%, 100% 50%, 85% 100%, 0% 100%);
  padding-right: 6px;
}
.hof-card.top-1 .hof-rank-badge { background: linear-gradient(135deg, #fef08a, #f59e0b, #d97706); }
.hof-card.top-2 .hof-rank-badge { background: linear-gradient(135deg, #e2e8f0, #94a3b8, #64748b); color: #fff; }
.hof-card.top-3 .hof-rank-badge { background: linear-gradient(135deg, #fed7aa, #f97316, #ea580c); color: #fff; }
.hof-trader-info {
  padding-left: 0.75rem;
}
.hof-name-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.hof-trader-name {
  font-size: 1.05rem;
  font-weight: 900;
  color: #0f2942;
}
.hof-pill-badge {
  background: #d97706;
  color: #fff;
  font-size: 0.65rem;
  font-weight: 800;
  padding: 1px 6px;
  border-radius: 4px;
}
.hof-trader-id {
  font-family: monospace;
  font-size: 0.82rem;
  color: #64748b;
  display: block;
}
.hof-metric {
  text-align: right;
}
.hof-metric small {
  display: block;
  font-size: 0.72rem;
  color: #64748b;
  font-weight: 600;
}
.hof-metric strong {
  font-family: monospace;
  font-size: 1.05rem;
  color: #0f2942;
}
.hof-profit strong.profit-pos {
  color: #16a34a;
  font-weight: 900;
}
.hof-profit strong.profit-neg {
  color: #dc2626;
}
.hof-footer-banner {
  text-align: center;
  padding: 1.25rem;
  border-radius: 12px;
  background: #fffbeb;
  border: 1.5px solid #fde68a;
}
.hof-trophy-icon {
  font-size: 1.8rem;
  display: block;
  margin-bottom: 0.25rem;
}
.hof-footer-banner h3 {
  font-size: 1.3rem;
  font-weight: 950;
  color: #b45309;
  letter-spacing: 1px;
  margin: 0.2rem 0;
}
.hof-footer-banner p {
  font-size: 0.9rem;
  color: #475569;
  font-weight: 700;
  font-style: italic;
  margin: 0;
}

/* Homepage HOF Teaser Banner */
.hof-teaser-section {
  margin-bottom: 1.5rem;
}
.hof-teaser-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  background: #ffffff;
  border: 1.5px solid #fde68a;
  border-left: 5px solid #f59e0b;
  border-radius: 14px;
  padding: 1.25rem 1.5rem;
  box-shadow: 0 4px 20px rgba(245, 158, 11, 0.08);
}
.hof-teaser-badge {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 800;
  color: #b45309;
  background: #fef3c7;
  padding: 2px 8px;
  border-radius: 6px;
  margin-bottom: 0.4rem;
}
.hof-teaser-left h3 {
  font-size: 1.15rem;
  font-weight: 800;
  color: #0f2942;
  margin: 0.2rem 0;
}
.hof-teaser-left p {
  font-size: 0.88rem;
  color: #64748b;
  margin: 0;
}
@media (max-width: 680px) {
  .hof-card {
    grid-template-columns: 50px 1fr auto;
  }
  .hof-balance {
    display: none;
  }
  .hof-teaser-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}

/* ==================== LIVE CHAT WIDGET & FLOATING MESSENGER (BRIGHT GLORY THEME) ==================== */
.chat-widget-section {
  margin-top: 1.5rem;
  margin-bottom: 2rem;
}

.hqt-chat-container {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1.5px solid #e2e8f0;
  border-top: 4px solid #0284c7;
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06), 0 1px 3px rgba(15, 23, 42, 0.04);
  padding: 1.25rem 1.5rem;
  transition: all 0.25s ease;
}
.hqt-chat-container:hover {
  box-shadow: 0 16px 40px rgba(2, 132, 199, 0.08), 0 4px 12px rgba(15, 23, 42, 0.05);
}

.hqt-chat-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 1rem;
}

.hqt-chat-status {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.95rem;
  font-weight: 800;
  color: #0f2942;
}

.hqt-chat-status .live-dot {
  width: 10px;
  height: 10px;
  background: #16a34a;
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.6);
  animation: pulseGreen 2s infinite;
}

@keyframes pulseGreen {
  0% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0.6); }
  70% { box-shadow: 0 0 0 8px rgba(22, 163, 74, 0); }
  100% { box-shadow: 0 0 0 0 rgba(22, 163, 74, 0); }
}

.hqt-chat-messages {
  flex-grow: 1;
  min-height: 220px;
  max-height: 320px;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-bottom: 0.85rem;
  scroll-behavior: smooth;
}

.hqt-chat-messages::-webkit-scrollbar {
  width: 6px;
}
.hqt-chat-messages::-webkit-scrollbar-track {
  background: #f1f5f9;
  border-radius: 4px;
}
.hqt-chat-messages::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

.chat-msg-item {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  max-width: 82%;
  animation: fadeInMsg 0.2s ease-out;
}

@keyframes fadeInMsg {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

.chat-msg-item.is-me {
  align-self: flex-end;
}

.chat-msg-meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.78rem;
  padding: 0 0.25rem;
}

.chat-msg-sender {
  font-weight: 800;
  color: #0284c7;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.chat-msg-sender.is-admin {
  color: #e11d48;
  background: #ffe4e6;
  padding: 1px 6px;
  border-radius: 4px;
  font-weight: 900;
}

.chat-msg-item.is-me .chat-msg-sender {
  color: #d97706;
}

.chat-msg-time {
  font-size: 0.72rem;
  color: #94a3b8;
}

.chat-msg-item.is-me .chat-msg-meta {
  justify-content: flex-end;
}

.chat-msg-text {
  font-size: 0.92rem;
  color: #1e293b;
  background: #ffffff;
  padding: 0.6rem 0.95rem;
  border-radius: 12px 12px 12px 2px;
  border: 1px solid #e2e8f0;
  box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04);
  word-break: break-word;
  line-height: 1.45;
}

.chat-msg-item.is-me .chat-msg-text {
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
  color: #ffffff;
  border: none;
  border-radius: 12px 12px 2px 12px;
  box-shadow: 0 3px 10px rgba(2, 132, 199, 0.25);
}

.hqt-chat-emojis {
  display: flex;
  gap: 0.4rem;
  overflow-x: auto;
  padding: 0.25rem 0.2rem 0.5rem 0.2rem;
  margin-bottom: 0.5rem;
}

.chat-emoji-pill {
  cursor: pointer;
  font-size: 1.05rem;
  padding: 4px 10px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  transition: all 0.18s ease;
  user-select: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.chat-emoji-pill:hover {
  transform: translateY(-2px) scale(1.15);
  background: #fef3c7;
  border-color: #fcd34d;
  box-shadow: 0 4px 10px rgba(245, 158, 11, 0.2);
}

.hqt-chat-input-bar {
  display: flex;
  gap: 0.6rem;
  align-items: center;
}

.hqt-chat-input-bar input {
  flex-grow: 1;
  background: #ffffff;
  border: 1.5px solid #cbd5e1;
  color: #0f2942;
  padding: 10px 14px;
  border-radius: 10px;
  font-size: 0.92rem;
  font-weight: 500;
  transition: all 0.2s ease;
}

.hqt-chat-input-bar input::placeholder {
  color: #94a3b8;
}

.hqt-chat-input-bar input:focus {
  outline: none;
  border-color: #0284c7;
  box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
}

.hqt-chat-input-bar button[type="submit"] {
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
  color: #ffffff;
  border: none;
  border-radius: 10px;
  padding: 10px 20px;
  font-weight: 800;
  font-size: 0.92rem;
  cursor: pointer;
  transition: all 0.2s ease;
  box-shadow: 0 4px 12px rgba(2, 132, 199, 0.25);
  white-space: nowrap;
}

.hqt-chat-input-bar button[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(2, 132, 199, 0.35);
  background: linear-gradient(135deg, #0369a1 0%, #075985 100%);
}

/* ==================== FLOATING MESSENGER BUBBLE & DRAWER ==================== */
.hqt-floating-bubble {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: linear-gradient(135deg, #0284c7 0%, #0369a1 50%, #075985 100%);
  color: #ffffff;
  display: grid;
  place-items: center;
  box-shadow: 0 10px 30px rgba(2, 132, 199, 0.4), 0 2px 6px rgba(0,0,0,0.1);
  cursor: pointer;
  z-index: 1200;
  transition: all 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  border: 2px solid rgba(255, 255, 255, 0.3);
}

.hqt-floating-bubble:hover {
  transform: scale(1.1) rotate(5deg);
  box-shadow: 0 14px 36px rgba(2, 132, 199, 0.55);
}

.hqt-floating-bubble .bubble-icon {
  font-size: 1.6rem;
  line-height: 1;
}

.hqt-messenger-drawer {
  position: fixed;
  bottom: 96px;
  right: 24px;
  width: min(390px, calc(100vw - 32px));
  height: min(520px, 70vh);
  background: #ffffff;
  border: 1.5px solid #cbd5e1;
  border-top: 4px solid #0284c7;
  border-radius: 18px;
  box-shadow: 0 20px 50px rgba(15, 23, 42, 0.18), 0 4px 14px rgba(0,0,0,0.06);
  display: flex;
  flex-direction: column;
  padding: 1.15rem;
  z-index: 1250;
  animation: slideUpMessenger 0.28s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes slideUpMessenger {
  from { opacity: 0; transform: translateY(20px) scale(0.96); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

.messenger-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid #f1f5f9;
  margin-bottom: 0.75rem;
}

.messenger-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.95rem;
  font-weight: 800;
  color: #0f2942;
}

.messenger-close-btn {
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  color: #64748b;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  font-size: 0.85rem;
  font-weight: 700;
  transition: all 0.15s ease;
}

.messenger-close-btn:hover {
  background: #fee2e2;
  color: #dc2626;
  border-color: #fca5a5;
}

.messenger-messages {
  flex-grow: 1;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding: 0.75rem;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  margin-bottom: 0.75rem;
}

@media (max-width: 640px) {
  .hqt-messenger-drawer {
    bottom: 0;
    right: 0;
    width: 100vw;
    height: 82vh;
    border-radius: 20px 20px 0 0;
    border: none;
    border-top: 4px solid #0284c7;
    padding: 1rem;
    box-shadow: 0 -10px 40px rgba(0,0,0,0.25);
  }
}

