/* Global Finance Trading: channel continuity, refined for reading and working.
 * Original artwork stays untouched. Gold is an interface accent, not a sampled logo colour.
 * --mint is a compatibility alias for existing markup; new components should use --gft-accent.
 */
:root {
  --ink:#20272F; --deep:#12171D; --paper:#F7F5F0; --mint:#D7B878;
  --muted:#59616A; --line:#DFDAD1; --soft:#EFECE5; --radius:14px;
  --gft-accent:#D7B878; --gft-accent-text:#72521B; --gft-accent-soft:#F3EAD8;
  --gft-link:#72521B; --gft-video:#B32328; --gft-video-light:#FFB5B7;
  --gft-dark-muted:#C4C8CC; --gft-panel:#1C232B; --gft-border-dark:#59616A;
  --gft-shadow:0 14px 36px #12171D0A;
}
body { background:var(--paper); color:var(--ink); }
:focus-visible { outline-color:var(--gft-accent-text); }
::selection { background:var(--gft-accent-soft); color:var(--ink); }
/* Identity stays legible even before the original logo is selected. */
.gft-brand-lockup { gap:12px; min-height:52px; max-width:100%; }
.gft-brand-lockup .brand-mark { color:var(--gft-accent); letter-spacing:-.065em; font-weight:800; }
.gft-brand-lockup .brand-mark i { background:var(--gft-accent); width:5px; height:5px; }
.gft-brand-lockup .brand-name { display:block; color:#FFFFFF; font-size:10px; letter-spacing:.1em; line-height:1.55; font-weight:700; }
.gft-brand-emblem { display:grid; place-items:center; flex:none; width:56px; height:56px; padding:4px; background:#FFFFFF; border:1px solid var(--line); border-radius:50%; overflow:hidden; }
.gft-brand-emblem .gft-brand-image { display:block; width:100%; height:100%; object-fit:contain; }
.site-header { background:var(--deep); border-bottom:1px solid #FFFFFF20; }
.site-header .menu a { color:#E5E5E5; }
.site-header .menu a:hover, .site-header .menu a[aria-current], .site-header .menu a.is-current-topic { color:var(--gft-accent); }
.site-header .menu a::after { background:var(--gft-accent); }
.site-header :focus-visible, .site-footer :focus-visible, .hero :focus-visible { outline-color:var(--gft-accent); }
/* Strong channel-style contrast without decorating the page with invented market results. */
.hero { background:var(--deep); border-bottom:3px solid var(--gft-accent); }
.hero-grid { gap:clamp(32px,5vw,72px); }
.hero h1 { font-weight:760; letter-spacing:-.045em; }
.hero-kicker { color:var(--gft-accent); letter-spacing:.14em; }
.hero-intro, .hero-note { color:var(--gft-dark-muted); }
.hero em, .workbench em { color:var(--gft-accent); }
.button.mint { background:var(--gft-accent); color:var(--deep); border-color:var(--gft-accent); }
.button.dark, .gft-learning-primary { background:var(--ink); color:#FFFFFF; }
.button.dark:hover, .gft-learning-primary:hover { background:var(--deep); color:#FFFFFF; }
.hero .button.outline { border-color:#899199; background:transparent; color:#FFFFFF; }
.hero .button.outline .icon { color:var(--gft-video-light); }
.workbench { background:var(--gft-panel); border-color:var(--gft-border-dark); box-shadow:0 24px 60px #0000001A; }
.workbench-top, .workbench-row small, .workbench-foot { color:var(--gft-dark-muted); }
.workbench-top > span:last-child { border-color:var(--gft-border-dark); color:var(--gft-accent); }
.workbench-icon { background:#30302B; color:var(--gft-accent); border:1px solid #706448; }
.workbench-row:hover strong { color:var(--gft-accent); }
.platform-strip { background:var(--soft); border-color:var(--line); }
.platform-strip span { color:var(--muted); }
.platform-strip a { color:var(--ink); }
.platform-strip a:hover { color:var(--gft-accent-text); }
/* Shared editorial surfaces and purposeful fallback covers. Actual video artwork is not recoloured. */
.path-card, .resource-card, .gft-journey, .gft-learning-path, .gft-next-lesson { border-color:var(--line); }
.path-card:hover, .resource-card:hover { border-color:#A58B59; box-shadow:var(--gft-shadow); }
.path-icon { color:var(--gft-accent-text); background:var(--gft-accent-soft); border-color:#D8C7A5; }
.card-media, .media-vps, .media-automation, .media-prop-firms { background:var(--gft-panel); color:#FFFFFF; }
.cover-brand { color:var(--gft-accent); }
.media-tools { background:var(--gft-accent-soft); color:var(--ink); }
.media-tools .cover-brand { color:var(--gft-accent-text); }
.card-format { background:#FFFFFF; color:var(--ink); border:1px solid #00000012; }
.card-format .icon { color:var(--gft-accent-text); }
.card-media:has(.duration) .card-format .icon { color:var(--gft-video); }
.card-content .eyebrow { color:var(--gft-accent-text); }
.duration { background:var(--deep); }
.tool-banner { background:var(--gft-accent-soft); border-color:#D8C7A5; }
.tool-banner > div > p:not(.eyebrow) { color:#505960; }
.checklist-preview { background:#FFFFFF; border-color:var(--line); }
.checklist-preview p span { color:var(--gft-accent-text); }
.checklist-preview small { color:var(--muted); }
.author-mark { background:var(--deep); color:var(--gft-accent); border:1px solid #4F4D44; }
.author-mark > span { color:var(--gft-dark-muted); }
.article-meta, .affiliate-note { color:var(--muted); }
.avatar { background:var(--gft-accent-soft); color:var(--gft-accent-text); font-weight:750; }
.article-content a:not(.button), .gft-journey a, .gft-decision-next a { color:var(--gft-link); }
.article-content :not(pre) > code { background:var(--soft); border-color:var(--line); }
.article-content pre, .code-example { background:var(--ink); color:#F5F1E7; }
.article-content .code-example pre { background:var(--ink); color:#F5F1E7; }
.toc-box a { color:var(--muted); }
.toc-box a:hover, .toc-box a[aria-current="location"] { border-left-color:var(--gft-accent-text); background:var(--gft-accent-soft); color:var(--gft-accent-text); }
.sidebar-next, .partner-callout { background:var(--soft); border-color:var(--line); }
.table-scroll th, .article-content th { background:var(--soft); }
.table-scroll tbody tr:nth-child(even) { background:#FAF9F6; }
.article-content td, .article-content th, .table-scroll { border-color:var(--line); }
.gft-decision { color:var(--ink); background:#FFFFFF; border-color:var(--line); border-top-color:var(--gft-accent-text); }
.gft-commercial-disclosure { color:#505960; }
.gft-decision a:focus-visible, .gft-inline-offer a:focus-visible { outline-color:var(--gft-accent-text); }
/* A restrained red cue connects video actions to the existing channel. */
.gft-learning-library, .gft-learning-next, .gft-toolkit { color:var(--ink); }
.gft-learning-secondary, .gft-path-steps summary, .gft-path-steps li a, .gft-video-chapters a { color:var(--gft-link); }
.gft-learning-secondary[href^="https://www.youtube.com/"], .gft-channel-invite a, .gft-learning-player figcaption a { color:var(--gft-video); }
.gft-channel-invite { border-color:var(--line); }
.gft-learning-player .video-frame { background:var(--deep); }
.gft-video-context, .gft-learning-player figcaption { color:#505960; }
.gft-video-unavailable { background:var(--soft); border-color:var(--line); }
.gft-learning-library a:focus-visible, .gft-learning-next a:focus-visible, .gft-learning-player a:focus-visible, .gft-video-chapters a:focus-visible, .gft-path-steps summary:focus-visible { outline-color:var(--gft-accent-text); }
.gft-journey-grid p, .gft-paths-intro { color:var(--muted); }
/* Forms and resources remain functional components, not competing visual identities. */
.gft-toolkit-intro { background:var(--deep); color:#FFFFFF; }
.gft-toolkit-intro .eyebrow, .gft-toolkit-intro .gft-toolkit-access { color:var(--gft-accent); }
.gft-toolkit-intro .button.dark { background:var(--gft-accent); border-color:var(--gft-accent); color:var(--deep); }
.gft-toolkit-intro .button.plain { border-color:#899199; }
.gft-toolkit-contents a, .gft-worksheet .button, .gft-toolkit-guides a, .gft-toolkit-next a, .gft-toolkit-compact a { color:var(--gft-link); }
.gft-worksheet-text { background:var(--paper); color:var(--ink); border-left-color:var(--gft-accent-text); }
.gft-toolkit-offer, .gft-toolkit-email-closed, .gft-preview-banner { background:var(--soft); border-color:var(--line); }
.gft-preview-banner { border-left-color:var(--gft-accent-text); }
.gft-toolkit a:focus-visible, .gft-toolkit button:focus-visible, .gft-toolkit-offer a:focus-visible, .gft-toolkit-compact a:focus-visible { outline-color:var(--gft-accent-text); }
.gft-toolkit-intro a:focus-visible, .gft-toolkit-intro button:focus-visible { outline-color:var(--gft-accent); }
.gft-tool { color:var(--ink); border-color:var(--line); box-shadow:var(--gft-shadow); }
.gft-tool .eyebrow, .gft-tool .tool-feedback, .gft-tool-next a { color:var(--gft-link); }
.gft-tool .tool-results { background:var(--deep); border-color:var(--gft-border-dark); color:#FFFFFF; }
.gft-tool .tool-results .eyebrow { color:var(--gft-accent); }
.gft-tool .tool-calc-state, .gft-tool .result-row span, .gft-tool .tool-result-note { color:#D7DADD; }
.gft-tool .result-row { border-color:var(--gft-border-dark); }
.gft-tool .tool-field input, .gft-signup-preview input[type=email], .gft-signup-preview input[type=text] { color:var(--ink); border-color:#7D8389; }
.gft-tool .tool-field input[aria-invalid=true] { border-color:#9F2525; }
.gft-tool .gft-tool-method, .gft-checklist-progress { background:var(--soft); border-color:var(--line); }
.gft-tool .gft-formula { color:var(--ink); border-color:var(--line); }
.gft-tool progress, .gft-tool .tool-checklist input { accent-color:var(--gft-accent-text); }
.gft-tool a:focus-visible, .gft-tool button:focus-visible, .gft-tool input:focus-visible, .gft-tool summary:focus-visible { outline-color:var(--gft-accent-text); }
.gft-signup-preview, .gft-email-signup { border-color:var(--line); color:var(--ink); }
.gft-signup-preview .button { background:var(--ink); }
/* Keep navigation spacious, without hiding the full brand to make it fit. */
.site-footer { background:var(--deep); color:#E0E0E0; border-top:3px solid #4F4D44; }
.footer-grid > div > p, .footer-grid li a, .footer-bottom { color:var(--gft-dark-muted); }
.site-footer .text-link { color:var(--gft-accent); }
.site-footer a:hover { color:#FFFFFF; }
@media (max-width:1000px) {
  .gft-brand-lockup { gap:10px; min-height:50px; }
  .gft-brand-emblem { width:48px; height:48px; }
  .gft-brand-lockup .brand-name { display:block; font-size:9px; }
}
@media (max-width:380px) {
  .gft-brand-lockup { gap:8px; }
  .gft-brand-lockup .brand-mark { font-size:26px; }
  .gft-brand-lockup .brand-name { display:block; font-size:8px; letter-spacing:.065em; }
  .gft-brand-emblem { width:42px; height:42px; padding:3px; }
  .site-header .menu-toggle { padding-inline:6px; }
}
@media (forced-colors:active) {
  .gft-brand-emblem { border:1px solid CanvasText; }
  .button, .gft-learning-primary { border:1px solid ButtonText; }
}
@media print {
  .gft-toolkit-intro, .gft-toolkit-intro h2, .gft-toolkit-intro .eyebrow, .gft-toolkit-intro .gft-toolkit-access,
  .article-content pre, .article-content .code-example pre, .gft-worksheet-text { background:#FFFFFF; color:#000000; }
}
