/* Terminal theme (2026-09-30, Joseph: "old school terminal trading like look"). Companion to layout-switch.js. Look only: type, colour, borders,
   shape. It never changes what a control does, hides or shrinks a trading button, or moves anything in the page structure.
   Everything is inside html.agwtf-terminal, so in Modern and Classic this file does nothing. Chosen in Setting Panel > Appearance > Theme.
   Accent: html.agwtf-t-amber (default) | agwtf-t-green | agwtf-t-grey. Extras: html.agwtf-t-scan (faint scan lines), html.agwtf-t-cursor (block caret
   and a blinking cursor after the app name). Gains stay green and losses stay red in every accent: those colours are left to the app.
   The theme is dark: layout-switch.js turns the app's own dark mode on while it is chosen (so the dark-mode layer re-maps the compiled styles)
   and puts it back afterwards. Rollback: delete the terminal-theme.css line in index.html. */

html.agwtf-terminal {
  --t-fg: #ffb000; --t-dim: #b37b00; --t-line: #4d3700; --t-bg: #050400; --t-bg2: #0c0900; --t-bg3: #171100; --t-inv: #050400;
  --t-up: #3ddc84; --t-down: #ff5c5c;
  --t-font: "SF Mono", SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  /* the design variables the features that stay on read (manual Meta trade, alerts, destination tabs, settings hub) */
  --ap-blue: var(--t-fg); --ap-blue-press: var(--t-dim); --ap-green: var(--t-up); --ap-red: var(--t-down); --ap-orange: var(--t-fg);
  --ap-bg: var(--t-bg); --ap-surface: var(--t-bg2); --ap-surface-2: var(--t-bg3);
  --ap-fill: var(--t-bg3); --ap-fill-hover: var(--t-line); --ap-hair: var(--t-line);
  --ap-text: var(--t-fg); --ap-text-2: var(--t-dim); --ap-glass: var(--t-bg2);
  --ap-shadow-1: none; --ap-shadow-2: none; --ap-shadow-3: none;
  --ap-ease: linear; --ap-font: var(--t-font); --ap-dur-press: 0s; --ap-dur-state: 0s; --ap-dur-panel: 0s;
  --hub-accent: var(--t-fg); --hub-on: var(--t-fg);
  color-scheme: dark;
}
html.agwtf-terminal.agwtf-t-green { --t-fg: #46d369; --t-dim: #2e8f48; --t-line: #1c4a2a; --t-bg: #010402; --t-bg2: #050e08; --t-bg3: #0a1a10; --t-inv: #010402; }
html.agwtf-terminal.agwtf-t-grey  { --t-fg: #d8d8d8; --t-dim: #8c8c8c; --t-line: #3a3a3a; --t-bg: #080808; --t-bg2: #101010; --t-bg3: #1a1a1a; --t-inv: #080808; }

/* ---- type ---- */
html.agwtf-terminal body,
html.agwtf-terminal body :is(div, span, p, a, li, ul, label, small, strong, b, em, th, td, h1, h2, h3, h4, h5, h6, button, input, select, textarea, nav, aside, section, header, mat-form-field):not(.mat-icon):not(.material-icons):not(mat-icon) {
  font-family: var(--t-font) !important;
  font-variant-numeric: tabular-nums; letter-spacing: 0; text-shadow: none !important;
}
html.agwtf-terminal body { font-size: 13px; background: var(--t-bg) !important; color: var(--t-fg); }

/* ---- shape: square, flat, no blur ---- */
html.agwtf-terminal body *:not(canvas) { border-radius: 0 !important; box-shadow: none !important; -webkit-backdrop-filter: none !important; backdrop-filter: none !important; }
html.agwtf-terminal .ai-chatbot-fab, html.agwtf-terminal .ai-chatbot-fab-pulse, html.agwtf-terminal .ai-chatbot-fab-wrapper { border-radius: 50% !important; }

/* ---- surfaces ---- */
html.agwtf-terminal .page-loader-wrapper, html.agwtf-terminal section.content, html.agwtf-terminal .content { background: var(--t-bg) !important; }
html.agwtf-terminal nav.app-header, html.agwtf-terminal .header-topbar, html.agwtf-terminal .header-tickers-bar, html.agwtf-terminal .header-times-bar,
html.agwtf-terminal .hub-tape-placeholder, html.agwtf-terminal aside.sidebar, html.agwtf-terminal #leftsidebar, html.agwtf-terminal .sidebar .menu,
html.agwtf-terminal .navbar, html.agwtf-terminal .sidebar .user-info {
  background: var(--t-bg) !important; color: var(--t-fg) !important; border-color: var(--t-line) !important;
}
html.agwtf-terminal .header-topbar, html.agwtf-terminal .header-tickers-bar, html.agwtf-terminal .header-times-bar { border-bottom: 1px solid var(--t-line) !important; }
html.agwtf-terminal aside.sidebar { border-right: 1px solid var(--t-line) !important; }
html.agwtf-terminal .card, html.agwtf-terminal .mat-mdc-card, html.agwtf-terminal mat-expansion-panel, html.agwtf-terminal .mat-expansion-panel,
html.agwtf-terminal .mat-mdc-dialog-surface, html.agwtf-terminal .mat-mdc-menu-panel, html.agwtf-terminal .mat-mdc-select-panel, html.agwtf-terminal .mat-mdc-autocomplete-panel,
html.agwtf-terminal .settingSidebar, html.agwtf-terminal .settingSidebar2, html.agwtf-terminal .settingSidebar3, html.agwtf-terminal .settingSidebar4,
html.agwtf-terminal .modal-content, html.agwtf-terminal .dropdown-menu, html.agwtf-terminal .mat-mdc-tooltip .mdc-tooltip__surface, html.agwtf-terminal .mat-mdc-snack-bar-container .mdc-snackbar__surface {
  background: var(--t-bg2) !important; color: var(--t-fg) !important; border: 1px solid var(--t-line) !important;
}
html.agwtf-terminal .card-header, html.agwtf-terminal .header, html.agwtf-terminal .materialTableHeader, html.agwtf-terminal .setting-panel-header,
html.agwtf-terminal mat-expansion-panel-header, html.agwtf-terminal .mat-expansion-panel-header, html.agwtf-terminal .modal-header, html.agwtf-terminal .mat-mdc-dialog-title {
  background: var(--t-bg3) !important; color: var(--t-fg) !important; border-color: var(--t-line) !important;
}
html.agwtf-terminal mat-expansion-panel-header:hover, html.agwtf-terminal .mat-expansion-panel-header:hover { background: var(--t-line) !important; }
html.agwtf-terminal .card { margin-bottom: 8px; }
html.agwtf-terminal hr, html.agwtf-terminal .divider, html.agwtf-terminal .mat-divider { border-color: var(--t-line) !important; background: var(--t-line) !important; }
html.agwtf-terminal .cdk-overlay-dark-backdrop, html.agwtf-terminal .cdk-overlay-backdrop.cdk-overlay-backdrop-showing { background: rgba(0, 0, 0, .72) !important; }

/* ---- text ---- */
html.agwtf-terminal h1, html.agwtf-terminal h2, html.agwtf-terminal h3, html.agwtf-terminal h4, html.agwtf-terminal h5, html.agwtf-terminal h6 { color: var(--t-fg) !important; font-weight: 600; }
html.agwtf-terminal h6, html.agwtf-terminal th, html.agwtf-terminal .mdc-tab__text-label { text-transform: uppercase; letter-spacing: .04em; }
html.agwtf-terminal label, html.agwtf-terminal .mat-mdc-form-field-label, html.agwtf-terminal .mdc-floating-label, html.agwtf-terminal small, html.agwtf-terminal .text-muted { color: var(--t-dim) !important; }
html.agwtf-terminal a:not(.btn):not(.menu-top):not(.settingPanelToggle) { color: var(--t-fg); text-decoration: underline; text-underline-offset: 2px; }
html.agwtf-terminal ::selection { background: var(--t-fg); color: var(--t-inv); }
html.agwtf-terminal .info-text, html.agwtf-terminal .primary-text, html.agwtf-terminal .hub-name, html.agwtf-terminal .ap-name, html.agwtf-terminal .hide-menu { color: var(--t-fg); }
html.agwtf-terminal .hub-desc, html.agwtf-terminal .ap-desc, html.agwtf-terminal .hub-count { color: var(--t-dim) !important; }

/* ---- left menu ---- */
html.agwtf-terminal .sidebar .menu .list a, html.agwtf-terminal a.menu-top { color: var(--t-dim) !important; background: transparent !important; }
html.agwtf-terminal .sidebar .menu .list a:hover, html.agwtf-terminal a.menu-top:hover { color: var(--t-fg) !important; background: var(--t-bg3) !important; }
html.agwtf-terminal .sidebar .menu .list li.active > a, html.agwtf-terminal .sidebar .menu .list .active > a, html.agwtf-terminal a.menu-top.toggled, html.agwtf-terminal a.menu-top.active {
  color: var(--t-inv) !important; background: var(--t-fg) !important;
}
html.agwtf-terminal .sidebar svg, html.agwtf-terminal .sidebarIcon { color: inherit !important; stroke: currentColor; }

/* ---- tabs: [ TICKET ] ---- */
html.agwtf-terminal .mat-mdc-tab-header, html.agwtf-terminal .mat-mdc-tab-nav-bar, html.agwtf-terminal .mat-mdc-tab-header-pagination { background: transparent !important; border-bottom: 1px solid var(--t-line) !important; }
html.agwtf-terminal .mat-mdc-tab .mdc-tab__text-label, html.agwtf-terminal .mdc-tab__text-label { color: var(--t-dim) !important; }
html.agwtf-terminal .mat-mdc-tab:hover .mdc-tab__text-label { color: var(--t-fg) !important; }
html.agwtf-terminal .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label { color: var(--t-fg) !important; }
html.agwtf-terminal .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label::before { content: "[ "; }
html.agwtf-terminal .mat-mdc-tab.mdc-tab--active .mdc-tab__text-label::after { content: " ]"; }
html.agwtf-terminal .mdc-tab-indicator__content--underline { border-color: var(--t-fg) !important; }
html.agwtf-terminal .mdc-tab { background: transparent !important; }

/* ---- buttons: outlined boxes, inverted when pressed or hovered; size and position untouched ---- */
html.agwtf-terminal .btn, html.agwtf-terminal .mdc-button, html.agwtf-terminal .mat-mdc-button, html.agwtf-terminal .mat-mdc-raised-button, html.agwtf-terminal .mat-mdc-unelevated-button,
html.agwtf-terminal .mat-mdc-outlined-button, html.agwtf-terminal .tbl-action-btn, html.agwtf-terminal .hub-link, html.agwtf-terminal .gc-seg {
  background: transparent !important; color: var(--t-fg) !important; box-shadow: inset 0 0 0 1px var(--t-fg) !important; border-color: transparent !important; text-shadow: none !important;
}
html.agwtf-terminal .btn:hover, html.agwtf-terminal .mdc-button:hover, html.agwtf-terminal .mat-mdc-button:hover, html.agwtf-terminal .mat-mdc-raised-button:hover,
html.agwtf-terminal .mat-mdc-unelevated-button:hover, html.agwtf-terminal .tbl-action-btn:hover, html.agwtf-terminal .gc-seg:hover,
html.agwtf-terminal .btn:active, html.agwtf-terminal .mdc-button:active, html.agwtf-terminal .tbl-action-btn:active {
  background: var(--t-fg) !important; color: var(--t-inv) !important;
}
html.agwtf-terminal .btn.btn-success, html.agwtf-terminal .btn-outline-success { color: var(--t-up) !important; box-shadow: inset 0 0 0 1px var(--t-up) !important; }
html.agwtf-terminal .btn.btn-danger, html.agwtf-terminal .btn-outline-danger { color: var(--t-down) !important; box-shadow: inset 0 0 0 1px var(--t-down) !important; }
html.agwtf-terminal .btn.btn-success:hover { background: var(--t-up) !important; color: var(--t-inv) !important; }
html.agwtf-terminal .btn.btn-danger:hover { background: var(--t-down) !important; color: var(--t-inv) !important; }
html.agwtf-terminal .gc-seg.gc-seg-on, html.agwtf-terminal .gc-seg[aria-pressed="true"], html.agwtf-terminal .gc-seg.active, html.agwtf-terminal .gc-seg.selected { background: var(--t-fg) !important; color: var(--t-inv) !important; }
html.agwtf-terminal .mat-icon, html.agwtf-terminal mat-icon, html.agwtf-terminal .btn svg, html.agwtf-terminal .tbl-action-btn svg { color: inherit; }
html.agwtf-terminal .mat-mdc-button-persistent-ripple, html.agwtf-terminal .mat-ripple, html.agwtf-terminal .mdc-elevation-overlay { display: none !important; }

/* ---- badges and pills ---- */
html.agwtf-terminal .badge, html.agwtf-terminal .sx-pill { background: transparent !important; box-shadow: inset 0 0 0 1px currentColor !important; }

/* ---- fields ---- */
html.agwtf-terminal input, html.agwtf-terminal textarea, html.agwtf-terminal select, html.agwtf-terminal .form-control, html.agwtf-terminal .mat-mdc-input-element {
  background: var(--t-bg) !important; color: var(--t-fg) !important; border-color: var(--t-line) !important; caret-color: var(--t-fg);
}
html.agwtf-terminal input::placeholder, html.agwtf-terminal textarea::placeholder { color: var(--t-dim) !important; opacity: 1; }
html.agwtf-terminal .mat-mdc-form-field { background: var(--t-bg) !important; }
html.agwtf-terminal .mat-mdc-text-field-wrapper, html.agwtf-terminal .mat-mdc-form-field-flex, html.agwtf-terminal .mat-mdc-form-field-infix, html.agwtf-terminal .mdc-text-field, html.agwtf-terminal .mdc-text-field--filled { background: transparent !important; }
html.agwtf-terminal mat-select, html.agwtf-terminal .mat-mdc-select, html.agwtf-terminal .mat-mdc-select-min-line:not(.mat-mdc-select-placeholder), html.agwtf-terminal .mat-mdc-select-value-text { color: var(--t-fg) !important; }
html.agwtf-terminal .mat-mdc-select-value, html.agwtf-terminal .mat-mdc-form-field-subscript-wrapper, html.agwtf-terminal .mat-mdc-form-field-bottom-align { background: transparent !important; }
html.agwtf-terminal .mdc-notched-outline__leading, html.agwtf-terminal .mdc-notched-outline__notch, html.agwtf-terminal .mdc-notched-outline__trailing { border-color: var(--t-line) !important; }
html.agwtf-terminal .mdc-line-ripple::before, html.agwtf-terminal .mdc-line-ripple::after { border-bottom-color: var(--t-line) !important; }
html.agwtf-terminal .mat-mdc-form-field.mat-focused .mdc-line-ripple::after { border-bottom-color: var(--t-fg) !important; }
html.agwtf-terminal .mat-mdc-select-arrow, html.agwtf-terminal .mat-mdc-select-arrow svg { color: var(--t-dim) !important; fill: var(--t-dim) !important; }
html.agwtf-terminal .mat-mdc-option, html.agwtf-terminal .mat-mdc-menu-item { background: transparent !important; color: var(--t-fg) !important; }
html.agwtf-terminal .mat-mdc-option:hover, html.agwtf-terminal .mat-mdc-option.mat-mdc-option-active, html.agwtf-terminal .mat-mdc-menu-item:hover { background: var(--t-fg) !important; color: var(--t-inv) !important; }

/* ---- switches and checkboxes ---- */
html.agwtf-terminal .mdc-switch__track::before, html.agwtf-terminal .mdc-switch__track::after { background: var(--t-line) !important; border: 1px solid var(--t-dim) !important; }
html.agwtf-terminal .mdc-switch--selected .mdc-switch__track::after { background: var(--t-dim) !important; }
html.agwtf-terminal .mdc-switch__handle::before, html.agwtf-terminal .mdc-switch__handle::after { background: var(--t-fg) !important; }
html.agwtf-terminal .mdc-switch--unselected .mdc-switch__handle::after { background: var(--t-dim) !important; }
html.agwtf-terminal .mdc-switch__icon { fill: var(--t-inv) !important; }
html.agwtf-terminal .hub-switch, html.agwtf-terminal .ap-sw { background: var(--t-line) !important; box-shadow: inset 0 0 0 1px var(--t-dim) !important; }
html.agwtf-terminal .hub-row[aria-checked="true"] .hub-switch, html.agwtf-terminal .ap-row[aria-checked="true"] .ap-sw { background: var(--t-dim) !important; }
html.agwtf-terminal .mdc-checkbox__background { border-color: var(--t-dim) !important; background: transparent !important; }
html.agwtf-terminal .mdc-checkbox__native-control:checked ~ .mdc-checkbox__background { background: var(--t-fg) !important; border-color: var(--t-fg) !important; }
html.agwtf-terminal .mdc-checkbox__checkmark { color: var(--t-inv) !important; }

/* ---- tables ---- */
html.agwtf-terminal table, html.agwtf-terminal .mat-mdc-table, html.agwtf-terminal .mdc-data-table__table { background: transparent !important; }
html.agwtf-terminal th, html.agwtf-terminal .mat-mdc-header-cell { color: var(--t-dim) !important; background: var(--t-bg3) !important; border-color: var(--t-line) !important; font-weight: 600; }
html.agwtf-terminal td, html.agwtf-terminal .mat-mdc-cell { color: var(--t-fg); border-color: var(--t-line) !important; }
html.agwtf-terminal tr:hover > td, html.agwtf-terminal .mat-mdc-row:hover { background: var(--t-bg3) !important; }

/* ---- scrollbars ---- */
html.agwtf-terminal * { scrollbar-width: thin; scrollbar-color: var(--t-line) var(--t-bg); }
html.agwtf-terminal ::-webkit-scrollbar { width: 10px; height: 10px; background: var(--t-bg); }
html.agwtf-terminal ::-webkit-scrollbar-thumb { background: var(--t-line); border: 0; }
html.agwtf-terminal ::-webkit-scrollbar-thumb:hover { background: var(--t-dim); }
html.agwtf-terminal .ng-scrollbar-thumb, html.agwtf-terminal .ng-scrollbar-track { background: var(--t-line) !important; }

/* ---- focus: a dashed box, like a terminal selection ---- */
html.agwtf-terminal :focus-visible { outline: 1px dashed var(--t-fg) !important; outline-offset: 1px; }

/* ---- destination tabs: same bracket idea ---- */
html.agwtf-terminal .dt-strip { background: transparent; padding: 0; gap: 0; border-bottom: 1px solid var(--t-line); width: auto; max-width: calc(100% - 24px); }
html.agwtf-terminal .dt-strip .dt-tab { color: var(--t-dim); background: transparent !important; box-shadow: none !important; }
html.agwtf-terminal .dt-strip .dt-tab[aria-selected="true"] { color: var(--t-inv) !important; background: var(--t-fg) !important; }
html.agwtf-terminal .dt-strip .dt-tab[aria-selected="true"] .dt-n { color: var(--t-inv); }

/* ---- extras (optional, off by default): scan lines and the cursor ---- */
html.agwtf-terminal.agwtf-t-scan body::after {
  content: ""; position: fixed; inset: 0; z-index: 2147483000; pointer-events: none;
  background: repeating-linear-gradient(to bottom, rgba(0, 0, 0, .16) 0, rgba(0, 0, 0, .16) 1px, transparent 1px, transparent 3px);
}
html.agwtf-terminal.agwtf-t-cursor input, html.agwtf-terminal.agwtf-t-cursor textarea { caret-shape: block; caret-color: var(--t-fg); }
html.agwtf-terminal.agwtf-t-cursor .header-topbar .brand-name::after { content: "\2588"; margin-left: 4px; color: var(--t-fg); animation: t-blink 1.06s steps(1) infinite; }
@keyframes t-blink { 0%, 55% { opacity: 1; } 56%, 100% { opacity: 0; } }
@media (prefers-reduced-motion: reduce) {
  html.agwtf-terminal.agwtf-t-cursor .header-topbar .brand-name::after { animation: none; }
}

/* ---- the round and corner buttons that carry their own colour ---- */
html.agwtf-terminal .mat-mdc-mini-fab, html.agwtf-terminal .mat-mdc-fab, html.agwtf-terminal .mdc-fab, html.agwtf-terminal .btn-primary, html.agwtf-terminal .btn-info {
  background: transparent !important; color: var(--t-fg) !important; box-shadow: inset 0 0 0 1px var(--t-fg) !important;
}
html.agwtf-terminal .mat-mdc-mini-fab:hover, html.agwtf-terminal .mdc-fab:hover, html.agwtf-terminal .btn-primary:hover, html.agwtf-terminal .btn-info:hover { background: var(--t-fg) !important; color: var(--t-inv) !important; }
html.agwtf-terminal a.settingPanelToggle, html.agwtf-terminal a.settingPanelToggle2, html.agwtf-terminal a.settingPanelToggle3, html.agwtf-terminal a.settingPanelToggle4 {
  background: var(--t-fg) !important; color: var(--t-inv) !important; border: 0 !important;
}
html.agwtf-terminal .ai-chatbot-fab { background: var(--t-bg2) !important; color: var(--t-fg) !important; box-shadow: inset 0 0 0 1px var(--t-fg) !important; }

/* ---- the Theme picker in the panel, and rows that do nothing in this theme ---- */
html.agwtf-terminal .ap-dark, html.agwtf-terminal .ap-uni { display: none !important; }
html.agwtf-terminal .tt-tip { display: none !important; }
html.agwtf-terminal .th-seg { background: transparent; box-shadow: inset 0 0 0 1px var(--t-line) !important; padding: 0; gap: 0; }
html.agwtf-terminal .th-opt { color: var(--t-dim) !important; background: transparent !important; }
html.agwtf-terminal .th-opt:hover { color: var(--t-fg) !important; }
html.agwtf-terminal .th-opt[aria-checked="true"] { background: var(--t-fg) !important; color: var(--t-inv) !important; }
html.agwtf-terminal .th-label, html.agwtf-terminal .th-desc { color: var(--t-dim) !important; }
html.agwtf-terminal .ap-row:hover, html.agwtf-terminal .hub-row:hover { background: var(--t-bg3) !important; }
html.agwtf-terminal .ap-row:hover .ap-desc, html.agwtf-terminal .ap-row:focus-visible .ap-desc {
  background: var(--t-bg2) !important; color: var(--t-fg) !important; border: 1px solid var(--t-fg) !important;
}

/* login and start pages: a plain dark screen instead of the picture */
html.agwtf-terminal .dark-image, html.agwtf-terminal .auth-wrapper, html.agwtf-terminal .auth-content { background-image: none !important; background-color: var(--t-bg) !important; }
html.agwtf-terminal .tbl-action-btn svg, html.agwtf-terminal .tbl-action-btn mat-icon { stroke: currentColor !important; }
