/* ========================================================================
   Selected Blue/White Theme Override
   Reference: uploaded blue UI screenshot (13-06-2026 04:01).
   Scope: UI/CSS only. No trading logic, API, worker, cron, cache, or JS changes.
   ======================================================================== */
:root{
  --app-bg:#F2F8FE;
  --app-bg-2:#EBF3FC;
  --card-bg:#FFFFFE;
  --card-bg-2:#FDFDFE;
  --card-border:#D5DDE5;
  --card-border-soft:#E5EDF7;
  --shadow-color:rgba(22,43,95,.10);
  --text-main:#162B5F;
  --text-muted:#5B6C91;
  --text-soft:#8F9BB3;

  --primary:#2E83EB;
  --primary-hover:#1A6EDD;
  --primary-soft:#EBF3FC;
  --secondary:#F9FBFD;
  --secondary-hover:#E5EDF7;

  --success:#1B9666;
  --success-soft:#E9FAF3;
  --danger:#D13847;
  --danger-soft:#FDECEE;
  --warning:#FBE49C;
  --warning-soft:#FFF6DD;

  --badge-bg:#EBF3FC;
  --badge-border:#D5DDE5;
  --table-head-bg:#F9FBFD;
  --table-row-bg:#FEFEFE;
  --table-row-alt:#F9FBFD;
  --table-row-hover:#EBF3FC;
  --table-border:#E5EDF7;

  --shadow-soft:0 14px 42px rgba(22,43,95,.10);
  --shadow-card:0 10px 30px rgba(22,43,95,.08);
  --shadow-button:0 10px 24px rgba(46,131,235,.18);

  /* Map old frontend variables */
  --bg:#F2F8FE;
  --bg-2:#EBF3FC;
  --panel:#FFFFFE;
  --panel-2:#FDFDFE;
  --panel-3:#EBF3FC;
  --line:rgba(213,221,229,.74);
  --line-strong:rgba(181,200,217,.86);
  --text:#162B5F;
  --muted:#5B6C91;
  --blue:#2E83EB;
  --blue-2:#1A6EDD;
  --cyan:#6399E2;
  --green:#1B9666;
  --red:#D13847;
  --amber:#FBE49C;
  --shadow:0 18px 55px rgba(22,43,95,.10);

  /* Map admin variables */
  --admin-bg:#F2F8FE;
  --admin-bg-2:#F9FBFD;
  --admin-card:#FFFFFE;
  --admin-card-2:#FDFDFE;
  --admin-line:#E5EDF7;
  --admin-line-strong:#D5DDE5;
  --admin-text:#162B5F;
  --admin-muted:#5B6C91;
  --admin-gold:#2E83EB;
  --admin-gold-dark:#1A6EDD;
  --admin-gold-soft:#EBF3FC;
  --admin-green:#1B9666;
  --admin-red:#D13847;
  --admin-shadow:0 18px 55px rgba(22,43,95,.10);
  --admin-shadow-soft:0 10px 30px rgba(22,43,95,.08);
}

html,
body{
  background:
    radial-gradient(circle at 88% 0%, rgba(46,131,235,.12), transparent 28%),
    radial-gradient(circle at 4% 22%, rgba(235,243,252,.88), transparent 28%),
    linear-gradient(180deg,#FCFDFE 0%,#F2F8FE 44%,#EBF3FC 100%) !important;
  color:var(--text-main) !important;
  font-family:Tahoma,Arial,sans-serif !important;
}

body:before,
body:after{
  opacity:.18 !important;
  background:radial-gradient(circle, rgba(46,131,235,.12), transparent 64%) !important;
}

.wrap{
  max-width:1520px !important;
  padding:10px 18px 34px !important;
}

/* Header / top navigation */
.head,
.scan-details,
.btc-trend-banner,
.card,
.admin-card,
.admin-summary-card,
.admin-soft-panel,
.admin-status-strip,
.admin-success-panel,
.login-card,
.panel,
.box{
  background:linear-gradient(180deg, rgba(255,255,254,.98), rgba(253,253,254,.96)) !important;
  border:1px solid var(--card-border-soft) !important;
  box-shadow:var(--shadow-card) !important;
  color:var(--text-main) !important;
}

.head{
  border-radius:18px !important;
  padding:18px 24px !important;
  margin:8px 0 16px !important;
  min-height:auto !important;
  border-color:var(--card-border-soft) !important;
  overflow:visible !important;
}

.admin-dashboard-shell .head{
  margin:8px 0 16px !important;
  border-radius:18px !important;
  border:1px solid var(--card-border-soft) !important;
  background:linear-gradient(180deg,#FFFFFE,#FDFDFE) !important;
}

.head:before,
.head:after,
.card:after,
.btc-trend-banner:after{
  background:radial-gradient(circle, rgba(46,131,235,.12), transparent 68%) !important;
  opacity:.55 !important;
}

.title,
h1,
h2,
h3,
.card h3,
.admin-card-header h3,
.admin-summary-label,
.kv strong,
.meta strong,
.candidates-toolbar-meta strong,
.btc-trend-meta strong,
.trade-lock-title,
.trade-mode-indicator .mode-title,
.trade-mode-option-btn,
.profile-status-text,
.admin-key-values strong{
  color:var(--text-main) !important;
  background:none !important;
  -webkit-background-clip:initial !important;
  background-clip:initial !important;
  text-shadow:none !important;
}

.title{
  font-size:30px !important;
  font-weight:900 !important;
  letter-spacing:0 !important;
}

.meta,
.note,
.small,
.sub,
.admin-card-note,
.admin-soft-hint,
.profile-mini-help,
.scan-message-body,
.candidates-toolbar-meta,
.open-trade-targets-empty,
.history-delete-status,
.kv span,
.admin-key-values span,
label,
.label{
  color:var(--text-muted) !important;
}

.meta span:not(.meta-sep),
.admin-status-strip,
.admin-soft-panel,
.profile-mini-help,
.admin-card-note,
.note{
  /* background:rgba(249,251,253,.82) !important; */
  /* border-color:var(--table-border) !important; */
}

/* Buttons */
.actions a,
.tools-trigger,
.card form button[type="submit"],
.admin-card form button[type="submit"],
.mini-btn,
button,
button[type="button"],
button[type="submit"],
input[type="submit"],
.trade-toggle-btn,
.trade-mode-dropdown-trigger,
.trade-mode-option-btn,
.btn,
.clear-cache-top-btn,
a.btn,
a.button{
  color:var(--text-main) !important;
  border:1px solid var(--card-border-soft) !important;
  background:linear-gradient(180deg,#FFFFFE,#F9FBFD) !important;
  box-shadow:0 6px 18px rgba(22,43,95,.07), inset 0 1px 0 rgba(255,255,255,.95) !important;
  border-radius:12px !important;
  font-weight:800 !important;
  text-decoration:none !important;
}

.actions a:hover,
.tools-trigger:hover,
.card form button[type="submit"]:hover,
.admin-card form button[type="submit"]:hover,
.mini-btn:hover,
button:hover,
input[type="submit"]:hover,
.trade-toggle-btn:hover,
.trade-mode-dropdown-trigger:hover,
.trade-mode-option-btn:hover,
.btn:hover,
a.btn:hover,
a.button:hover{
  background:linear-gradient(180deg,#FFFFFF,#EBF3FC) !important;
  border-color:#B5C8D9 !important;
  box-shadow:0 12px 26px rgba(46,131,235,.13) !important;
  transform:translateY(-1px) !important;
}

.actions a.active,
.actions a.primary,
.mini-btn.primary,
button.primary,
.btn,
.nav-active,
.trade-mode-option-btn.active,
.trade-toggle-btn.enabled,
.card form button[type="submit"],
.admin-card form button[type="submit"]{
  color:#FFFFFF !important;
  background:linear-gradient(180deg,#549AF7,#2E83EB) !important;
  border-color:#2E83EB !important;
  box-shadow:var(--shadow-button) !important;
}

.actions a.warn,
button.warn,
.mini-btn.warn,
.danger,
.clear-cache-top-btn,
.close-btn,
.delete-btn{
  color:#FFFFFF !important;
  background:linear-gradient(180deg,#E06A73,#D13847) !important;
  border-color:#D13847 !important;
  box-shadow:0 10px 24px rgba(209,56,71,.18) !important;
}

.mini-btn.secondary,
button.secondary,
.actions a.secondary{
  color:var(--text-main) !important;
  background:linear-gradient(180deg,#FFFFFF,#F9FBFD) !important;
  border-color:var(--card-border-soft) !important;
}

/* Forms / filters */
input,
select,
textarea,
.input,
.number-input-en,
.trade-mode-dropdown-trigger{
  background:#FFFFFE !important;
  color:var(--text-main) !important;
  border:1px solid var(--card-border-soft) !important;
  border-radius:12px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9) !important;
  outline:none !important;
}

input:focus,
select:focus,
textarea:focus,
.input:focus{
  border-color:#2E83EB !important;
  box-shadow:0 0 0 4px rgba(46,131,235,.12) !important;
}

input::placeholder,
textarea::placeholder{
  color:var(--text-soft) !important;
}

/* Cards and grids */
.grid,
.admin-settings-grid,
.admin-summary-grid{
  gap:14px !important;
}

.card,
.admin-card,
.admin-summary-card{
  border-radius:18px !important;
  padding:18px !important;
}

.admin-card-icon,
.admin-summary-icon,
.icon{
  color:#2E83EB !important;
  background:linear-gradient(180deg,#EBF3FC,#F9FBFD) !important;
  border:1px solid var(--card-border-soft) !important;
}

.admin-card-kicker,
.admin-summary-content,
.big{
  color:var(--text-main) !important;
}

.big{
  font-weight:900 !important;
}

/* Key-value rows */
.kv,
.admin-key-values > div,
.profile-mini-help,
.admin-metrics-list > div{
  border-bottom-color:var(--table-border) !important;
}

.kv:nth-child(even),
.admin-key-values > div:nth-child(even){
  /* background:rgba(249,251,253,.55) !important; */
}

/* Tables */
.table-wrap,
.table-responsive{
  background:#FFFFFE !important;
  border:1px solid var(--table-border) !important;
  border-radius:16px !important;
  box-shadow:0 6px 18px rgba(22,43,95,.05) !important;
}

table,
.table{
  color:var(--text-main) !important;
  background:#FFFFFE !important;
  border-color:var(--table-border) !important;
}

table th,
.table th,
table thead th,
.table thead th{
  background:linear-gradient(180deg,#F9FBFD,#F1F6FC) !important;
  color:var(--text-main) !important;
  border-bottom:1px solid var(--table-border) !important;
  font-weight:900 !important;
}

table td,
.table td{
  color:var(--text-main) !important;
  border-bottom:1px solid var(--table-border) !important;
  background:transparent !important;
}

table tbody tr,
.table tbody tr{
  background:var(--table-row-bg) !important;
}

table tbody tr:nth-child(even),
.table tbody tr:nth-child(even){
  background:var(--table-row-alt) !important;
}

table tbody tr:hover,
.table tbody tr:hover{
  background:var(--table-row-hover) !important;
}

/* Badges / status chips */
.badge,
.system-badge,
.btc-trend-badge,
.open-trade-target-chip,
.trade-status-inline,
.profile-badge,
.trade-mode-dropdown-value,
.history-selected-count,
.candidates-toolbar-actions .mini-btn,
.admin-summary-card,
.admin-success-panel{
  color:var(--text-main) !important;
  background:#EBF3FC !important;
  border:1px solid var(--badge-border) !important;
  box-shadow:none !important;
}

.badge.long,
.badge.LONG,
.badge.buy,
.long,
.pnl-up,
.ok,
.good,
.success,
.trade-status-light.on,
.trade-toggle-btn.enabled,
.open-trade-target-chip-metric.profit,
.admin-summary-card.pnl-up,
.admin-summary-card.good{
  color:var(--success) !important;
  background:var(--success-soft) !important;
  border-color:#8ECDB4 !important;
}

.badge.short,
.badge.SHORT,
.badge.sell,
.short,
.pnl-down,
.fail,
.error,
.danger,
.trade-status-light.off,
.trade-toggle-btn.disabled,
.open-trade-target-chip-metric.loss,
.admin-summary-card.pnl-down,
.admin-summary-card.bad{
  color:var(--danger) !important;
  background:var(--danger-soft) !important;
  border-color:#E99A9F !important;
}

.badge.elite,
.badge.ELITE,
.badge.good,
.badge.warn,
.warn,
.warning,
.open-trade-target-chip-metric.note{
  color:#5B4B14 !important;
  background:var(--warning-soft) !important;
  border-color:#FBE49C !important;
}

/* Progress */
.progress,
progress,
.progress-bar,
.admin-progress,
.daily-guard-progress{
  background:#EBF3FC !important;
  border:1px solid var(--table-border) !important;
  border-radius:999px !important;
  overflow:hidden !important;
}

.progress > div,
.progress span,
progress::-webkit-progress-value,
.progress-bar-fill,
.admin-progress-fill{
  background:linear-gradient(90deg,#2E83EB,#549AF7) !important;
}

progress::-webkit-progress-bar{
  background:#EBF3FC !important;
}

/* Dropdowns / menus */
.tools-list,
.trade-mode-menu,
.dropdown-menu,
select option{
  background:#FFFFFE !important;
  color:var(--text-main) !important;
  border:1px solid var(--card-border-soft) !important;
  box-shadow:var(--shadow-card) !important;
}

.tools-list a,
.trade-mode-menu button,
.dropdown-menu a{
  color:var(--text-main) !important;
}

.tools-list a:hover,
.trade-mode-menu button:hover,
.dropdown-menu a:hover{
  background:#EBF3FC !important;
}

/* Open trade / candidates */
.open-trade-target-chip-symbol,
.ot-current-price,
.ot-entry-price,
.ot-take-profit,
.ot-stop-loss,
.ot-floating-pnl,
.candidate-confidence-cell,
.candidate-indicator-cell,
.candidate-levels-cell{
  color:var(--text-main) !important;
}

.ot-floating-pnl.pnl-up,
.ot-take-profit,
.profit{
  color:var(--success) !important;
}

.ot-floating-pnl.pnl-down,
.ot-stop-loss,
.loss{
  color:var(--danger) !important;
}

/* Login / diagnostics pages */
.hero,
.form,
.banner,
.logbox,
.jsonbox,
.code{
  background:#F9FBFD !important;
  color:var(--text-main) !important;
  border-color:var(--table-border) !important;
}

.hero{
  border-bottom:1px solid var(--table-border) !important;
}

.card:before,
.login-card:before{
  background:linear-gradient(90deg,transparent,rgba(46,131,235,.28),transparent) !important;
}

.error{
  color:var(--danger) !important;
  background:var(--danger-soft) !important;
  border-color:#E99A9F !important;
}

.banner.ok{
  color:var(--success) !important;
  background:var(--success-soft) !important;
  border-color:#8ECDB4 !important;
}

.banner.fail{
  color:var(--danger) !important;
  background:var(--danger-soft) !important;
  border-color:#E99A9F !important;
}

.logbox,
.jsonbox,
.code{
  direction:ltr;
  background:#F9FBFD !important;
  color:#324A71 !important;
}

/* Misc inline elements */
[style*="background:#24334f"],
[style*="background: #24334f"],
[style*="background:#031124"],
[style*="background:#08162f"],
[style*="background:#0d1525"],
[style*="background:#050913"],
[style*="background:#071733"]{
  background:#FFFFFE !important;
  color:var(--text-main) !important;
  border:1px solid var(--card-border-soft) !important;
}

[style*="background:#8f1d1d"],
[style*="background:#9a481b"],
[style*="background:#7c2d12"],
[style*="background:#8b1f2a"]{
  background:#D13847 !important;
  color:#FFFFFF !important;
  border-color:#D13847 !important;
}

[style*="background:#0b6b3a"],
[style*="background:#0a6b3a"],
[style*="background:#05421a"]{
  background:#1B9666 !important;
  color:#FFFFFF !important;
  border-color:#1B9666 !important;
}

hr,
.meta-sep{
  border-color:var(--table-border) !important;
  color:#A2B2CD !important;
}

::-webkit-scrollbar{
  width:10px;
  height:10px;
}
::-webkit-scrollbar-track{
  background:#EBF3FC;
}
::-webkit-scrollbar-thumb{
  background:#B5C8D9;
  border-radius:999px;
  border:2px solid #EBF3FC;
}
::-webkit-scrollbar-thumb:hover{
  background:#95A0B6;
}

@media (max-width:980px){
  .wrap{padding:10px 12px 28px !important;}
  .head{border-radius:16px !important;padding:16px !important;}
  .title{font-size:24px !important;}
}

/* ========================================================================
   Profit / Loss Number Colors
   UI-only: color numeric profit/loss values without changing data or logic.
   ======================================================================== */
:root{
  --profit-number:#1B9666;
  --loss-number:#D13847;
  --profit-number-soft:#E9FAF3;
  --loss-number-soft:#FDECEE;
}

/* Existing PHP/JS classes used by open trades and history tables */
.pnl-up,
.up,
.value.up,
td.up,
span.up,
strong.up,
.ot-floating-pnl.pnl-up,
.ot-take-profit,
.open-trade-target-chip-metric.profit,
.open-trade-target-chip-metric.profit strong,
.profit-number,
.positive-number,
.text-profit,
.text-success{
  color:var(--profit-number) !important;
  font-weight:900 !important;
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

.pnl-down,
.down,
.value.down,
td.down,
span.down,
strong.down,
.ot-floating-pnl.pnl-down,
.ot-stop-loss,
.open-trade-target-chip-metric.loss,
.open-trade-target-chip-metric.loss strong,
.loss-number,
.negative-number,
.text-loss,
.text-danger{
  color:var(--loss-number) !important;
  font-weight:900 !important;
  background:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

/* Keep LONG/SHORT badges as badges, but numeric cells stay clean */
table td.pnl-up,
table td.pnl-down,
table td.up,
table td.down,
.table td.pnl-up,
.table td.pnl-down,
.table td.up,
.table td.down{
  background:inherit !important;
  border-bottom-color:var(--table-border) !important;
  letter-spacing:.01em !important;
}

/* Optional soft emphasis for KPI/stat value numbers only */
.stat .value.up,
.admin-summary-value.pnl-up,
.admin-summary-value.up{
  color:var(--profit-number) !important;
  background:var(--profit-number-soft) !important;
  border:1px solid rgba(27,150,102,.20) !important;
  border-radius:12px !important;
  padding:4px 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.stat .value.down,
.admin-summary-value.pnl-down,
.admin-summary-value.down{
  color:var(--loss-number) !important;
  background:var(--loss-number-soft) !important;
  border:1px solid rgba(209,56,71,.20) !important;
  border-radius:12px !important;
  padding:4px 10px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}


/* ========================================================================
   Profit/Loss Numbers v2 â€” stronger table coloring
   UI-only: no data, API, trading, or calculation changes.
   ======================================================================== */
:root{
  --profit-number:#1B9666;
  --loss-number:#D13847;
  --profit-number-soft:#E9FAF3;
  --loss-number-soft:#FDECEE;
}

#open_trades_table td.profit-number,
#history_table td.profit-number,
.table td.profit-number,
td.profit-number,
span.profit-number,
strong.profit-number,
.pnl-up,
.up{
  color:var(--profit-number) !important;
  font-weight:900 !important;
  background:transparent !important;
  text-shadow:none !important;
}

#open_trades_table td.loss-number,
#history_table td.loss-number,
.table td.loss-number,
td.loss-number,
span.loss-number,
strong.loss-number,
.pnl-down,
.down{
  color:var(--loss-number) !important;
  font-weight:900 !important;
  background:transparent !important;
  text-shadow:none !important;
}

#open_trades_table td.tp-number,
#history_table td.tp-number,
#open_trades_table td.ot-take-profit,
#history_table td.ot-take-profit{
  color:var(--profit-number) !important;
  font-weight:900 !important;
}

#open_trades_table td.sl-number,
#history_table td.sl-number,
#open_trades_table td.ot-stop-loss,
#history_table td.ot-stop-loss{
  color:var(--loss-number) !important;
  font-weight:900 !important;
}

#history_table td.balance-after-up,
#history_table td.balance-after-down{
  font-weight:900 !important;
}

#history_table td.balance-after-up{
  color:var(--profit-number) !important;
}

#history_table td.balance-after-down{
  color:var(--loss-number) !important;
}
