:root{
  --bg:#f6f8fb;
  --bg-alt:#eef3f8;
  --panel:#ffffff;
  --panel-soft:#f9fbfd;
  --border:#dbe3ee;
  --border-strong:#c8d4e3;
  --heading:#18212f;
  --text:#475467;
  --muted:#6b7280;
  --gold:#d4af37;
  --gold-soft:#f7e7aa;
  --shadow:0 18px 45px rgba(15,23,42,.08);
}

html,body{
  min-height:100%;
  background:linear-gradient(180deg,var(--bg) 0%, #fbfdff 100%);
  color:var(--text);
  font-family:Inter,Segoe UI,Arial,sans-serif;
}

body{margin:0;}
a{text-decoration:none}
.py-lg-6{padding-top:6rem!important;padding-bottom:6rem!important;}

.marketing-body .gt-nav{
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.navbar-brand,.nav-link{color:var(--heading)!important}
.nav-link{font-weight:500}
.nav-link:hover{color:#000!important}
.navbar-toggler{border-color:var(--border)}
.navbar-toggler:focus{box-shadow:none}

.btn-gold,
.btn-gold-soft{
  background:linear-gradient(135deg,#f7dea0,var(--gold));
  border:1px solid rgba(212,175,55,.4);
  color:#1b1b1b;
  font-weight:700;
  box-shadow:0 10px 22px rgba(212,175,55,.18);
}
.btn-gold:hover,.btn-gold-soft:hover{color:#000;filter:brightness(1.02)}
.btn-outline-light,
.btn-outline-secondary{
  border-color:var(--border-strong)!important;
  color:var(--heading)!important;
  background:#fff;
}
.btn-outline-light:hover,
.btn-outline-secondary:hover{background:var(--bg-alt);color:var(--heading)!important}

.hero-section{min-height:78vh;display:flex;align-items:center}
.glass-card,.plan-card,.metric-card{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:24px;
  box-shadow:var(--shadow);
}
.plan-card-featured{outline:2px solid rgba(212,175,55,.35);box-shadow:0 20px 60px rgba(212,175,55,.16)}
.metric-card{padding:1.25rem;height:100%}
.metric-card span{display:block;color:var(--muted);font-size:.9rem;margin-bottom:.4rem}
.metric-card strong{font-size:1.7rem;color:var(--heading)}
.bg-black-soft{background:linear-gradient(180deg,var(--bg-alt),#f8fbff)}
.text-light-emphasis{color:var(--text)!important}
.text-white{color:var(--heading)!important}
.text-secondary{color:var(--text)!important}
.text-muted{color:var(--muted)!important}
.small.text-secondary{color:var(--muted)!important}
.alert{border-radius:16px;border:none;box-shadow:var(--shadow)}
code{background:var(--bg-alt);padding:.2rem .45rem;border-radius:8px;color:#7a5d00}

.insight{
  border-radius:18px;
  padding:1rem;
  border:1px solid var(--border);
  background:var(--panel-soft);
}
.insight-success{border-color:rgba(67,160,71,.25);background:rgba(67,160,71,.08)}
.insight-warning{border-color:rgba(255,193,7,.32);background:rgba(255,193,7,.12)}
.insight-danger{border-color:rgba(220,53,69,.22);background:rgba(220,53,69,.08)}
.gt-input{
  background:#fff;
  border:1px solid var(--border);
  color:var(--heading);
}
.gt-input:focus{background:#fff;color:var(--heading);border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(212,175,55,.15)}
.table-dark{
  --bs-table-bg:transparent;
  --bs-table-color:var(--heading);
  --bs-table-striped-bg:rgba(15,23,42,.02);
  --bs-table-hover-bg:rgba(15,23,42,.03);
  --bs-table-border-color:var(--border);
}
.table > :not(caption) > * > *{border-bottom-color:var(--border)}
.alert-success{background:#eaf8ef;color:#166534}
.alert-danger{background:#fcecec;color:#991b1b}

.myfxbook-placeholder{min-height:320px;background:var(--panel-soft);border:1px dashed var(--border-strong)}
.comparison-card strong{font-size:1.05rem}
.thread-message{border-radius:18px;padding:1rem;border:1px solid var(--border);background:var(--panel-soft)}
.thread-admin{border-color:rgba(87,199,255,.35);background:rgba(87,199,255,.1)}
.thread-user{border-color:rgba(212,175,55,.28);background:rgba(212,175,55,.08)}
.badge{font-weight:600}
.list-group-item{background:transparent!important;color:var(--heading)!important;border-color:var(--border)!important}
.link-light{color:#274c77!important}
.link-light:hover{color:#16324f!important}

.app-layout{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  min-height:100vh;
}
.sidebar-panel{
  position:sticky;
  top:0;
  height:100vh;
  padding:1.5rem;
  background:linear-gradient(180deg,#fff8e4 0%, #ffffff 28%, #f8fbff 100%);
  border-right:1px solid var(--border);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1.5rem;
}
.sidebar-brand{
  display:flex;
  gap:1rem;
  align-items:center;
  color:var(--heading);
  margin-bottom:2rem;
}
.sidebar-brand-mark{
  width:52px;height:52px;border-radius:16px;display:grid;place-items:center;
  background:linear-gradient(135deg,#fde9b8,var(--gold));color:#1a1a1a;font-weight:800;box-shadow:0 12px 26px rgba(212,175,55,.2)
}
.sidebar-brand strong{display:block;font-size:1rem}
.sidebar-brand .small{color:var(--muted)}
.sidebar-section-label{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.75rem;
  color:var(--muted);
  margin-bottom:.85rem;
}
.sidebar-nav{display:flex;flex-direction:column;gap:.45rem}
.sidebar-link{
  display:flex;
  align-items:center;
  border-radius:14px;
  padding:.9rem 1rem;
  color:var(--heading);
  font-weight:600;
  border:1px solid transparent;
}
.sidebar-link:hover{background:#fff;border-color:var(--border);color:var(--heading)}
.sidebar-link.active{
  background:#fff;
  border-color:rgba(212,175,55,.35);
  box-shadow:0 14px 28px rgba(15,23,42,.06);
}
.sidebar-footer{
  padding:1rem;
  background:rgba(255,255,255,.76);
  border:1px solid var(--border);
  border-radius:20px;
}
.app-main-wrap{min-width:0;display:flex;flex-direction:column}
.app-topbar{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:1.25rem 2rem;
  border-bottom:1px solid var(--border);
  background:rgba(255,255,255,.75);
  backdrop-filter:blur(8px);
  position:sticky;
  top:0;
  z-index:50;
}
.app-main-content{padding:0 0 2rem}
.app-body .container{max-width:1320px}
.app-body .glass-card,
.app-body .plan-card,
.app-body .metric-card{border-radius:22px}

.site-footer{
  border-top:1px solid var(--border);
  color:var(--muted);
  background:transparent;
}
.app-body .site-footer{display:none}

@media (max-width: 991.98px){
  .app-layout{grid-template-columns:1fr}
  .sidebar-panel{position:relative;height:auto;border-right:none;border-bottom:1px solid var(--border)}
  .app-topbar{padding:1rem 1.25rem}
}

.auth-shell{
  min-height:calc(100vh - 120px);
  display:flex;
  align-items:center;
}
.auth-hero,
.auth-card{
  background:var(--panel);
  border:1px solid var(--border);
  border-radius:28px;
  box-shadow:var(--shadow);
}
.auth-hero{
  padding:2rem;
  background:linear-gradient(180deg,#fff8e4 0%, #ffffff 34%, #f8fbff 100%);
}
.auth-badge{
  display:inline-flex;
  padding:.45rem .75rem;
  border-radius:999px;
  background:rgba(212,175,55,.14);
  color:#7a5d00;
  font-size:.82rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:1rem;
}
.auth-hero h1,
.auth-card h2{color:var(--heading);font-weight:800}
.auth-hero p,
.auth-card p{color:var(--text)}
.auth-feature-list{
  padding-left:1.1rem;
  margin:1.25rem 0;
  color:var(--heading);
}
.auth-feature-list li{margin-bottom:.7rem}
.auth-hero-note{
  padding:1rem;
  border-radius:18px;
  background:rgba(255,255,255,.78);
  border:1px solid var(--border);
  color:var(--muted);
}
.auth-card{padding:2rem}
.auth-card-header{margin-bottom:1.25rem}
.auth-eyebrow{
  display:block;
  color:var(--muted);
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:.45rem;
}
.auth-input{
  min-height:52px;
  border-radius:14px;
}
.auth-form .form-label{
  color:var(--heading);
  font-weight:600;
}
.auth-form-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.auth-submit{min-height:52px;border-radius:14px}
.auth-footer-links{
  margin-top:1.2rem;
  display:flex;
  justify-content:center;
  gap:.45rem;
  color:var(--muted);
}
.auth-footer-links a{color:#7a5d00;font-weight:700}
.auth-footer-links a:hover{color:#5f4800}
@media (max-width: 991.98px){
  .auth-shell{min-height:auto}
  .auth-hero,.auth-card{padding:1.5rem}
}

.section-kicker{
  display:inline-flex;
  padding:.42rem .78rem;
  border-radius:999px;
  background:rgba(212,175,55,.14);
  color:#7a5d00;
  font-size:.8rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:.9rem;
}
.account-shell,.support-shell{max-width:1240px;margin:0 auto}
.account-role-pill,
.support-top-note{
  min-width:170px;
  padding:1rem 1.15rem;
  border-radius:18px;
  border:1px solid var(--border);
  background:linear-gradient(180deg,#fff8e4 0%,#ffffff 100%);
  box-shadow:var(--shadow);
  color:var(--heading);
}
.support-top-note{display:flex;flex-direction:column;gap:.15rem}
.support-top-note strong{font-size:1.5rem}
.account-status-badge{
  display:inline-flex;
  align-items:center;
  padding:.45rem .8rem;
  border-radius:999px;
  background:rgba(24,33,47,.06);
  color:var(--heading);
  font-weight:700;
}
.account-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.single-column-grid{grid-template-columns:1fr}
.account-field{
  padding:1rem;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--panel-soft);
}
.account-field label{
  display:block;
  font-size:.82rem;
  text-transform:uppercase;
  letter-spacing:.06em;
  color:var(--muted);
  margin-bottom:.45rem;
}
.account-field div{color:var(--heading);font-weight:600;word-break:break-word}
.account-note-card{background:linear-gradient(180deg,#ffffff 0%,#f9fbfd 100%)}
.account-note-list,.support-tips-list{padding-left:1.1rem;color:var(--heading)}
.account-note-list li,.support-tips-list li{margin-bottom:.75rem}
.support-ticket-row{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:1rem;
  padding:1rem 0;
  border-bottom:1px solid var(--border);
}
.support-ticket-row:last-child{border-bottom:none;padding-bottom:0}
.support-ticket-main{min-width:0;flex:1}
.support-ticket-actions{display:flex;align-items:center}
.support-status-chip,
.support-priority-chip{
  display:inline-flex;
  align-items:center;
  padding:.38rem .72rem;
  border-radius:999px;
  font-size:.78rem;
  font-weight:700;
  border:1px solid transparent;
}
.support-status-chip{background:rgba(39,76,119,.10);color:#274c77;border-color:rgba(39,76,119,.16)}
.support-priority-low{background:rgba(25,135,84,.10);color:#166534;border-color:rgba(25,135,84,.16)}
.support-priority-normal{background:rgba(212,175,55,.16);color:#7a5d00;border-color:rgba(212,175,55,.28)}
.support-priority-high{background:rgba(220,53,69,.10);color:#991b1b;border-color:rgba(220,53,69,.16)}
.support-empty-state{
  padding:2rem;
  border:1px dashed var(--border-strong);
  border-radius:22px;
  background:var(--panel-soft);
  text-align:center;
}
.support-help-card{background:linear-gradient(180deg,#fffdfa 0%,#ffffff 100%)}

@media (max-width: 991.98px){
  .account-grid{grid-template-columns:1fr}
  .support-ticket-row{flex-direction:column}
  .support-ticket-actions{width:100%}
  .support-ticket-actions .btn{width:100%}
}


.plans-empty-banner,
.subscription-cta-banner{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:1rem;
  padding:1.4rem 1.5rem;
  border-radius:24px;
  border:1px solid rgba(212,175,55,.28);
  background:linear-gradient(135deg,#fff7dd 0%,#ffffff 55%,#f7fbff 100%);
  box-shadow:var(--shadow);
}
.plans-price{
  font-size:2rem;
  line-height:1;
  font-weight:800;
  color:var(--heading);
}
@media (max-width: 991.98px){
  .plans-empty-banner,
  .subscription-cta-banner{flex-direction:column;align-items:flex-start}
}

.account-form .form-label{
  color:var(--heading);
  font-weight:700;
}
.account-input{
  min-height:52px;
  border-radius:14px;
  border-color:var(--border-strong);
  background:#fff;
}
.account-input:focus{
  border-color:rgba(212,175,55,.55);
  box-shadow:0 0 0 .2rem rgba(212,175,55,.14);
}


.recovery-code-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:12px}.recovery-code-grid code{display:block;background:#fff8db;border:1px solid rgba(179,140,0,.18);border-radius:12px;padding:10px 12px;font-size:.95rem;color:#6f5700}.security-status-stack{display:grid;gap:14px}.security-stat{display:flex;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#fff}.security-key-panel label{display:block;font-size:.85rem;font-weight:700;color:#64748b;margin-bottom:8px}.security-manual-key{padding:14px 16px;border-radius:16px;background:#f8fafc;border:1px dashed rgba(15,23,42,.16);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;letter-spacing:.08em;word-break:break-word}.security-steps li{margin-bottom:10px;}


.language-switcher-form{min-width:74px}.language-switcher-form .form-select{border-radius:999px;padding-right:2rem}.app-topbar-actions .language-switcher-form{margin-bottom:0}.security-key-panel img{max-width:220px}.table{--bs-table-bg:transparent}.table thead th{color:#6c757d;font-weight:600;border-bottom:1px solid rgba(0,0,0,.08)}.table tbody td{border-bottom:1px solid rgba(0,0,0,.05)}

.onboarding-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.onboarding-item{background:var(--panel-soft);border:1px solid var(--border);border-radius:16px;padding:1rem;font-weight:600;color:var(--heading)}


.myfxbook-widget-wrap {
    min-height: 260px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 1.5rem;
    background: transparent;
}

.myfxbook-widget-frame {
    width: 430px;
    height: 220px;
    border: 0;
    display: block;
}