/*
Theme Name: Tradingupandown (TUAD)
Theme URI: https://tuad.nl
Author: Tradingupandown Team
Author URI: https://tuad.nl
Description: A professional trading signals platform WordPress theme with real-time market data, trade management, signal alerts, order book, heatmap, education center, and admin control panel. Built with React and integrated into WordPress via REST API.
Version: 1.0.1-sso-continuation
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tuad
Domain Path: /languages
Tags: trading, forex, signals, finance, dashboard, responsive, dark-mode
*/

/* ═══════════════════════════════════════════
   WORDPRESS THEME BASE STYLES
   ═══════════════════════════════════════════ */

/* Ensure the React app fills the viewport */
html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: auto !important;
}

body.tuad-theme,
body.tuad-theme #tuad-root {
  overflow-y: auto !important;
}

body {
  background-color: #141625;
  color: #FFFFFF;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* WordPress admin bar compatibility */
body.admin-bar #tuad-root {
  min-height: calc(100vh - 32px);
}

/* Hide WordPress content when our theme is active */
#tuad-root {
  width: 100%;
  min-height: 100vh;
  position: relative;
}

/* Smooth scrolling */
html {
  scroll-behavior: smooth;
}

/* Selection color */
::selection {
  background-color: rgba(255, 196, 19, 0.3);
  color: #FFFFFF;
}

/* Scrollbar styling */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.15);
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.25);
}

/* Hide scrollbar utility */
.hide-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

/* WordPress core compatibility */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

/* Prevent FOUC (Flash of Unstyled Content) */
#tuad-root:empty::before {
  content: '';
  display: block;
  width: 100%;
  height: 100vh;
  background-color: #141625;
}


/* TUAD Workstation 2.0.147.16.96 — Academy promotional handoff */
.tuad-academy-promo{min-height:100vh;padding:clamp(18px,3vw,34px);background:var(--bg-body);color:var(--text-primary)}
.tuad-academy-promo-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:28px;align-items:end;padding:clamp(28px,5vw,60px);border:1px solid var(--border-color);border-radius:20px;background:radial-gradient(circle at 88% 8%,rgba(255,196,19,.14),transparent 28%),linear-gradient(135deg,#10131f,#1a1e30);box-shadow:var(--shadow-elevated)}
.tuad-academy-promo-copy h1{max-width:900px;margin:10px 0 18px;font-size:clamp(38px,5vw,70px);line-height:1;letter-spacing:-.05em;font-weight:850}.tuad-academy-promo-copy h1 em{color:var(--amber);font-style:normal}.tuad-academy-promo-copy>p{max-width:780px;color:#b9bdc9;font-size:15px;line-height:1.7}.tuad-academy-promo-kicker{display:block;color:var(--amber);font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
.tuad-academy-promo-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tuad-academy-promo-primary,.tuad-academy-promo-secondary{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:0 16px;border-radius:9px;font-size:12px;font-weight:800;text-decoration:none}.tuad-academy-promo-primary{background:var(--amber);color:#11131f}.tuad-academy-promo-secondary{border:1px solid rgba(255,255,255,.2);color:#fff}
.tuad-academy-promo-status{padding:20px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.055)}.tuad-academy-promo-status>span,.tuad-academy-promo-status>small{display:block;color:#9297a8;font-size:10px}.tuad-academy-promo-status>strong{display:block;margin:6px 0 14px;font-size:15px;word-break:break-word}.tuad-academy-promo-status>div{display:inline-flex;margin-bottom:12px;padding:6px 9px;border-radius:999px;background:rgba(16,185,129,.14);color:#6fd3aa;font-size:10px;font-weight:800}.tuad-academy-promo-status>div.is-warning{background:rgba(255,196,19,.13);color:var(--amber)}
.tuad-academy-promo-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.tuad-academy-promo-stats article{padding:16px 18px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);box-shadow:var(--shadow-card)}.tuad-academy-promo-stats span{display:block;color:var(--text-secondary);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.tuad-academy-promo-stats strong{display:block;margin-top:6px;font-size:26px}
.tuad-academy-promo-main{padding:clamp(24px,4vw,48px) 0}.tuad-academy-promo-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.6fr);gap:28px;align-items:end;margin-bottom:22px}.tuad-academy-promo-heading h2{margin:7px 0 8px;font-size:clamp(27px,3vw,40px);letter-spacing:-.035em}.tuad-academy-promo-heading p{max-width:720px;color:var(--text-secondary);font-size:13px;line-height:1.6}
.tuad-academy-promo-tools{display:grid;grid-template-columns:1.4fr .8fr;gap:10px}.tuad-academy-promo-tools label{display:grid;gap:6px;color:var(--text-secondary);font-size:10px;font-weight:700}.tuad-academy-promo-tools input,.tuad-academy-promo-tools select{min-height:42px;padding:0 12px;border:1px solid var(--border-color);border-radius:9px;background:var(--bg-elevated);color:var(--text-primary)}
.tuad-academy-promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tuad-academy-course-card{display:flex;min-width:0;flex-direction:column;padding:20px;border:1px solid var(--border-color);border-radius:14px;background:linear-gradient(180deg,var(--bg-card),rgba(20,24,39,.88));box-shadow:var(--shadow-card)}.tuad-academy-course-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.tuad-academy-course-top>span:first-child{color:var(--text-muted);font-size:11px;font-weight:800}.tuad-academy-course-status,.tuad-academy-course-level{display:inline-flex;width:max-content;padding:5px 8px;border-radius:999px;font-size:9px;font-weight:800}.tuad-academy-course-status{background:rgba(16,185,129,.12);color:#69d0a6}.tuad-academy-course-level{margin-top:20px;border:1px solid rgba(255,196,19,.32);color:var(--amber)}.tuad-academy-course-card h3{margin:13px 0 9px;font-size:21px;line-height:1.15}.tuad-academy-course-card>p{min-height:62px;color:var(--text-secondary);font-size:12px;line-height:1.6}.tuad-academy-course-card dl{display:grid;grid-template-columns:1fr 1fr;margin:16px 0;border-top:1px solid var(--border-color)}.tuad-academy-course-card dl>div{padding:11px 0;border-bottom:1px solid var(--border-color)}.tuad-academy-course-card dt{color:var(--text-muted);font-size:9px;text-transform:uppercase}.tuad-academy-course-card dd{margin:4px 0 0;font-size:11px;font-weight:700}.tuad-academy-course-card>a{margin-top:auto;padding-top:14px;color:var(--amber);font-size:11px;font-weight:800;text-decoration:none}
.tuad-academy-promo-message{display:flex;gap:10px;align-items:center;margin-bottom:16px;padding:16px;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-card);color:var(--text-secondary);font-size:12px}.tuad-academy-promo-message.is-warning{border-color:rgba(255,196,19,.35)}.tuad-academy-promo-message a{margin-left:auto;color:var(--amber);font-weight:800}.tuad-academy-promo-boundary,.tuad-academy-admin-handoff{margin-top:12px;padding:22px;border:1px solid rgba(255,196,19,.22);border-radius:14px;background:rgba(255,196,19,.055)}.tuad-academy-promo-boundary strong{font-size:15px}.tuad-academy-promo-boundary p{margin:7px 0 0;color:var(--text-secondary);font-size:12px;line-height:1.6}
.tuad-academy-admin-handoff{max-width:900px;margin:36px auto}.tuad-academy-admin-handoff h1{margin:8px 0 14px;font-size:38px;line-height:1.05}.tuad-academy-admin-handoff p{margin-bottom:20px;color:var(--text-secondary);line-height:1.65}.tuad-academy-admin-handoff small{display:block;margin-top:18px;color:var(--text-muted)}
@media(max-width:1100px){.tuad-academy-promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tuad-academy-promo-heading{grid-template-columns:1fr}.tuad-academy-promo-tools{max-width:680px}}
@media(max-width:820px){.tuad-academy-promo-hero{grid-template-columns:1fr}.tuad-academy-promo-stats{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.tuad-academy-promo{padding:12px}.tuad-academy-promo-hero{padding:24px 20px;border-radius:15px}.tuad-academy-promo-copy h1{font-size:42px}.tuad-academy-promo-actions{display:grid}.tuad-academy-promo-actions a{width:100%}.tuad-academy-promo-stats,.tuad-academy-promo-grid,.tuad-academy-promo-tools{grid-template-columns:1fr}.tuad-academy-course-card>p{min-height:0}.tuad-academy-promo-message{align-items:flex-start;flex-direction:column}.tuad-academy-promo-message a{margin-left:0}}


/* Phase 147.16.96: Academy promo page — complete native light-mode treatment.
 * Workstation theme owns frontend theming; no Design System frontend overrides.
 */
[data-theme=light] .tuad-academy-promo-hero{
  background:
    radial-gradient(circle at 88% 8%,rgba(255,196,19,.17),transparent 31%),
    linear-gradient(135deg,#ffffff,#f4f5f8);
  border-color:rgba(17,19,31,.10);
  box-shadow:0 18px 48px rgba(17,19,31,.10)
}
[data-theme=light] .tuad-academy-promo-copy h1{color:var(--text-primary)}
[data-theme=light] .tuad-academy-promo-copy>p{color:var(--text-secondary)}
[data-theme=light] .tuad-academy-promo-secondary{
  border-color:rgba(17,19,31,.18);
  background:rgba(255,255,255,.68);
  color:var(--text-primary)
}
[data-theme=light] .tuad-academy-promo-secondary:hover{background:#fff}
[data-theme=light] .tuad-academy-promo-status{
  border-color:rgba(17,19,31,.11);
  background:rgba(17,19,31,.035)
}
[data-theme=light] .tuad-academy-promo-status>span,
[data-theme=light] .tuad-academy-promo-status>small{color:var(--text-secondary)}
[data-theme=light] .tuad-academy-promo-status>strong{color:var(--text-primary)}
[data-theme=light] .tuad-academy-promo-status>div.is-live{
  background:rgba(5,150,105,.10);
  color:#047857
}
[data-theme=light] .tuad-academy-course-card{
  background:linear-gradient(180deg,#ffffff,#f6f7f9);
  border-color:rgba(17,19,31,.10);
  box-shadow:0 8px 24px rgba(17,19,31,.075)
}
[data-theme=light] .tuad-academy-course-card h3{color:var(--text-primary)}
[data-theme=light] .tuad-academy-course-status{
  background:rgba(5,150,105,.10);
  color:#047857
}
[data-theme=light] .tuad-academy-promo-boundary,
[data-theme=light] .tuad-academy-admin-handoff{
  background:rgba(255,196,19,.07);
  border-color:rgba(177,128,0,.24)
}
[data-theme=light] .tuad-academy-promo-message{
  background:#fff;
  box-shadow:0 6px 20px rgba(17,19,31,.05)
}


/* ═══════════════════════════════════════════
   TUAD 2.0.147.16.99 — tuad.nl transition
   Legal scrolling + Education/Workstation alignment
   ═══════════════════════════════════════════ */

/* Legal & Info documents must use the document/page scroll, not a nested viewport trap. */
html:has(.tuad-legal-document),
body:has(.tuad-legal-document),
body.tuad-theme:has(.tuad-legal-document),
body.tuad-theme:has(.tuad-legal-document) #tuad-root {
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-y: auto !important;
  overscroll-behavior-y: auto !important;
}

.tuad-legal-document {
  height: auto !important;
  min-height: 100dvh !important;
  max-height: none !important;
  overflow: visible !important;
  overscroll-behavior-y: auto !important;
}

.tuad-legal-document main,
.tuad-legal-document article,
.tuad-legal-document section {
  max-height: none !important;
}

.tuad-legal-document :is(h1,h2,h3,h4,[id]) {
  scroll-margin-top: 4rem;
}

.tuad-legal-document :focus-visible {
  outline: 3px solid var(--amber, #ffc413);
  outline-offset: 3px;
}

/* Education is presented as part of the Workstation UI rather than a separate marketing landing page. */
.tuad-education-workstation {
  display: grid;
  gap: 14px;
  color: var(--text-primary);
}

.tuad-education-workstation .tuad-education-header,
.tuad-education-workstation .tuad-education-toolbar,
.tuad-education-workstation .tuad-education-status,
.tuad-education-workstation .tuad-education-card,
.tuad-education-workstation .tuad-education-boundary {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  box-shadow: var(--shadow-card, 0 8px 24px rgba(0,0,0,.18));
}

.tuad-education-workstation .tuad-education-header {
  display: flex;
  gap: 18px;
  justify-content: space-between;
  align-items: flex-start;
  padding: 18px;
}

.tuad-education-workstation .tuad-education-title {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  min-width: 0;
}

.tuad-education-workstation .tuad-education-icon {
  width: 38px;
  height: 38px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 9px;
  color: var(--amber);
  background: var(--amber-bg);
  border: 1px solid color-mix(in srgb, var(--amber) 35%, transparent);
  font-weight: 800;
  letter-spacing: .04em;
}

.tuad-education-workstation h1,
.tuad-education-workstation h2,
.tuad-education-workstation h3,
.tuad-education-workstation p {
  margin-top: 0;
}

.tuad-education-workstation h1 {
  margin-bottom: 4px;
  font-size: clamp(1.15rem, 2vw, 1.55rem);
  letter-spacing: -.02em;
}

.tuad-education-workstation .tuad-education-muted {
  color: var(--text-secondary);
  font-size: 12px;
  line-height: 1.6;
}

.tuad-education-workstation .tuad-education-status {
  padding: 12px 14px;
  min-width: 210px;
}

.tuad-education-workstation .tuad-education-status-label,
.tuad-education-workstation .tuad-education-kicker {
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: .09em;
  font-size: 9px;
  font-weight: 700;
}

.tuad-education-workstation .tuad-education-status strong {
  display: block;
  margin: 4px 0;
  font-size: 12px;
}

.tuad-education-workstation .tuad-education-live {
  color: var(--green);
  font-size: 10px;
  font-weight: 700;
}

.tuad-education-workstation .tuad-education-live.is-warning {
  color: var(--amber);
}

.tuad-education-workstation .tuad-education-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.tuad-education-workstation .tuad-education-stat {
  padding: 13px 14px;
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 9px;
}

.tuad-education-workstation .tuad-education-stat span {
  display: block;
  color: var(--text-muted);
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.tuad-education-workstation .tuad-education-stat strong {
  display: block;
  margin-top: 4px;
  color: var(--text-primary);
  font: 700 16px/1.2 "JetBrains Mono", monospace;
}

.tuad-education-workstation .tuad-education-toolbar {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  align-items: flex-end;
  padding: 14px;
}

.tuad-education-workstation .tuad-education-toolbar-copy {
  max-width: 58ch;
}

.tuad-education-workstation .tuad-education-tools {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.tuad-education-workstation .tuad-education-tools label {
  display: grid;
  gap: 5px;
  color: var(--text-muted);
  font-size: 9px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.tuad-education-workstation :is(input,select) {
  min-height: 36px;
  min-width: 170px;
  border-radius: 7px;
  border: 1px solid var(--border-color);
  background: var(--bg-hover);
  color: var(--text-primary);
  padding: 0 10px;
  outline: none;
}

.tuad-education-workstation :is(input,select):focus-visible,
.tuad-education-workstation a:focus-visible {
  outline: 3px solid var(--amber);
  outline-offset: 2px;
}

.tuad-education-workstation .tuad-education-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.tuad-education-workstation .tuad-education-card {
  padding: 14px;
  min-width: 0;
  transition: border-color .18s ease, transform .18s ease;
}

.tuad-education-workstation .tuad-education-card:hover {
  border-color: var(--border-hover);
  transform: translateY(-1px);
}

.tuad-education-workstation .tuad-education-card-top {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  margin-bottom: 10px;
}

.tuad-education-workstation .tuad-education-code,
.tuad-education-workstation .tuad-education-level {
  color: var(--amber);
  font-size: 9px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.tuad-education-workstation .tuad-education-card-status {
  color: var(--text-muted);
  font-size: 9px;
}

.tuad-education-workstation .tuad-education-card h3 {
  margin: 8px 0 6px;
  font-size: 13px;
}

.tuad-education-workstation .tuad-education-card p {
  color: var(--text-secondary);
  font-size: 10px;
  line-height: 1.55;
}

.tuad-education-workstation .tuad-education-card dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 7px;
  margin: 12px 0;
}

.tuad-education-workstation .tuad-education-card dl div {
  padding: 8px;
  border-radius: 6px;
  background: var(--bg-hover);
}

.tuad-education-workstation .tuad-education-card dt {
  color: var(--text-muted);
  font-size: 8px;
  text-transform: uppercase;
}

.tuad-education-workstation .tuad-education-card dd {
  margin: 3px 0 0;
  color: var(--text-primary);
  font: 600 10px/1.2 "JetBrains Mono", monospace;
}

.tuad-education-workstation .tuad-education-card a,
.tuad-education-workstation .tuad-education-action {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  border-radius: 7px;
  padding: 0 11px;
  text-decoration: none;
  font-size: 10px;
  font-weight: 700;
  color: #141625;
  background: var(--amber);
}

.tuad-education-workstation .tuad-education-message,
.tuad-education-workstation .tuad-education-boundary {
  padding: 14px;
  color: var(--text-secondary);
  font-size: 11px;
}

.tuad-education-workstation .tuad-education-message.is-warning {
  border-color: color-mix(in srgb, var(--amber) 45%, var(--border-color));
}

@media (max-width: 1024px) {
  .tuad-education-workstation .tuad-education-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .tuad-education-workstation .tuad-education-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .tuad-education-workstation .tuad-education-header,
  .tuad-education-workstation .tuad-education-toolbar {
    flex-direction: column;
    align-items: stretch;
  }
  .tuad-education-workstation .tuad-education-status {
    min-width: 0;
  }
  .tuad-education-workstation .tuad-education-grid,
  .tuad-education-workstation .tuad-education-stats {
    grid-template-columns: 1fr;
  }
  .tuad-education-workstation .tuad-education-tools {
    display: grid;
    grid-template-columns: 1fr;
  }
  .tuad-education-workstation :is(input,select) {
    width: 100%;
    min-width: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .tuad-education-workstation *,
  .tuad-legal-document * {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
  }
}
