/* ============================================================
   IBKR THEME VARIABLES — driven by localStorage("siddhantha_theme")
   gateway.js reads the key on load and sets:
       document.documentElement.setAttribute('data-theme', 'dark'|'light')
   Every IBKR inline style should reference var(--ibkr-*) below
   instead of a hardcoded hex, so both themes stay in sync from
   ONE place. Fonts (--ibkr-serif / --ibkr-sans) are identical in
   both themes, only colors change.

   NOTE: This file is shared by ALL IBKR pages (Portfolio, Orders,
   Trade). Trade-screen-only rules (.trade-card, .trade-form,
   #tradeConfirmModal, etc.) now live in trade.css — load that
   file ONLY on the page that includes trade.js.
   ============================================================ */

:root{
    /* ---------- LIGHT THEME (default) ---------- */
    --ibkr-page-bg:            transparent;

    --ibkr-card-bg:            #FFFFFF;
    --ibkr-card-border:        #E5E9F0;
    --ibkr-card-shadow:        0 1px 3px rgba(15,23,42,.04);

    --ibkr-stat-accent:        #1E3A8A;

    --ibkr-table-bg:           #FFFFFF;
    --ibkr-table-row-alt:      #F8FAFC;
    --ibkr-table-border:       #EDF1F5;
    --ibkr-table-head-bg:      #F8FAFC;

    --ibkr-input-bg:           #FFFFFF;
    --ibkr-input-border:       #D8DEE8;

    --ibkr-btn-ghost-bg:       #FFFFFF;
    --ibkr-btn-ghost-border:   #D8DEE8;

    --ibkr-text-dark:          #0F172A;
    --ibkr-text-body:          #334155;
    --ibkr-text-muted:         #64748B;

    --ibkr-accent-green:       #16A34A;
    --ibkr-accent-red:         #DC2626;

    --ibkr-warn-bg:            #FEF3C7;
    --ibkr-warn-border:        #FDE68A;
    --ibkr-warn-text:          #92400E;

    --ibkr-pill-connected-bg:      #DCFCE7;
    --ibkr-pill-connected-text:    #15803D;
    --ibkr-pill-disconnected-bg:   #FEE2E2;
    --ibkr-pill-disconnected-text: #B91C1C;

    --ibkr-badge-stk-bg:#EFF6FF; --ibkr-badge-stk-text:#1D4ED8; --ibkr-badge-stk-border:#DBEAFE;
    --ibkr-badge-opt-bg:#FDF4FF; --ibkr-badge-opt-text:#A21CAF; --ibkr-badge-opt-border:#F5D0FE;
    --ibkr-badge-fut-bg:#FFF7ED; --ibkr-badge-fut-text:#C2410C; --ibkr-badge-fut-border:#FED7AA;
    --ibkr-badge-cash-bg:#F0FDF4; --ibkr-badge-cash-text:#15803D; --ibkr-badge-cash-border:#BBF7D0;
    --ibkr-badge-bond-bg:#FEF2F2; --ibkr-badge-bond-text:#B91C1C; --ibkr-badge-bond-border:#FECACA;
    --ibkr-badge-fund-bg:#F5F3FF; --ibkr-badge-fund-text:#6D28D9; --ibkr-badge-fund-border:#DDD6FE;
    --ibkr-badge-def-bg:#F1F5F9;  --ibkr-badge-def-text:#475569;  --ibkr-badge-def-border:#E2E8F0;

    --ibkr-serif: Georgia, "Times New Roman", serif;
    --ibkr-sans:  Inter, Arial, sans-serif;

    /* ---------- TRADE SCREEN (trade.css / trade.js) ---------- */
    --ibkr-trade-card-bg:          #FFFFFF;
    --ibkr-trade-card-border:      #E5E9F0;
    --ibkr-trade-card-shadow:      0 1px 3px rgba(15,23,42,.06);
    --ibkr-trade-section-border:   #EDF1F5;

    --ibkr-trade-input-bg:         #F8FAFC;
    --ibkr-trade-input-border:     #D8DEE8;
    --ibkr-trade-input-text:       #0F172A;
    --ibkr-trade-input-placeholder:#94A3B8;

    --ibkr-trade-text-primary:     #0F172A;
    --ibkr-trade-text-secondary:   #64748B;

    --ibkr-trade-empty-icon-bg:    #F1F5F9;
    --ibkr-trade-empty-icon:       #94A3B8;

    --ibkr-trade-search-btn-bg:        #2563EB;
    --ibkr-trade-search-btn-bg-hover:  #1D4ED8;

    --ibkr-trade-modal-overlay:    rgba(15,23,42,.55);
    --ibkr-trade-ticket-bg:        #FFFFFF;
    --ibkr-trade-ticket-border:    #E2E8F0;
    --ibkr-trade-ticket-shadow:    0 30px 60px -20px rgba(15,23,42,.25);
    --ibkr-trade-perf-dot-bg:      #EDF1F5;
    --ibkr-trade-perf-line:        #E2E8F0;

    --ibkr-trade-row-label:        #64748B;
    --ibkr-trade-row-value:        #0F172A;
    --ibkr-trade-row-value-dim:    #94A3B8;
    --ibkr-trade-row-heading:      #0F172A;

    --ibkr-trade-btn-cancel-bg:        #F1F5F9;
    --ibkr-trade-btn-cancel-border:    #D8DEE8;
    --ibkr-trade-btn-cancel-text:      #64748B;
}

/* ---------- DARK THEME ---------- */
:root[data-theme="dark"]{
    --ibkr-card-bg:            #161B22;
    --ibkr-card-border:        rgba(255,255,255,.08);
    --ibkr-card-shadow:        0 12px 30px rgba(0,0,0,.35);

    --ibkr-stat-accent:        #3B82F6;

    --ibkr-table-bg:           #161B22;
    --ibkr-table-row-alt:      #1B2230;
    --ibkr-table-border:       rgba(255,255,255,.07);
    --ibkr-table-head-bg:      #1C2333;

    --ibkr-input-bg:           #1E293B;
    --ibkr-input-border:       #334155;

    --ibkr-btn-ghost-bg:       #1E293B;
    --ibkr-btn-ghost-border:   #334155;

    --ibkr-text-dark:          #F1F5F9;
    --ibkr-text-body:          #CBD5E1;
    --ibkr-text-muted:         #94A3B8;

    --ibkr-accent-green:       #16a34a;
    --ibkr-accent-red:         #dc2626;

    --ibkr-warn-bg:            rgba(240,166,58,.15);
    --ibkr-warn-border:        rgba(240,166,58,.35);
    --ibkr-warn-text:          #F0A63A;

    --ibkr-pill-connected-bg:      rgba(34,197,94,.15);
    --ibkr-pill-connected-text:    #22C55E;
    --ibkr-pill-disconnected-bg:   rgba(239,68,68,.15);
    --ibkr-pill-disconnected-text: #EF4444;

    --ibkr-badge-stk-bg:rgba(59,130,246,.15);  --ibkr-badge-stk-text:#60A5FA;  --ibkr-badge-stk-border:rgba(59,130,246,.3);
    --ibkr-badge-opt-bg:rgba(192,38,211,.15);  --ibkr-badge-opt-text:#E879F9;  --ibkr-badge-opt-border:rgba(192,38,211,.3);
    --ibkr-badge-fut-bg:rgba(234,88,12,.15);   --ibkr-badge-fut-text:#FB923C;  --ibkr-badge-fut-border:rgba(234,88,12,.3);
    --ibkr-badge-cash-bg:rgba(22,163,74,.15);  --ibkr-badge-cash-text:#4ADE80; --ibkr-badge-cash-border:rgba(22,163,74,.3);
    --ibkr-badge-bond-bg:rgba(220,38,38,.15);  --ibkr-badge-bond-text:#F87171; --ibkr-badge-bond-border:rgba(220,38,38,.3);
    --ibkr-badge-fund-bg:rgba(124,58,237,.15); --ibkr-badge-fund-text:#A78BFA; --ibkr-badge-fund-border:rgba(124,58,237,.3);
    --ibkr-badge-def-bg:#1E293B; --ibkr-badge-def-text:#CBD5E1; --ibkr-badge-def-border:#334155;

    /* ---------- TRADE SCREEN (trade.css / trade.js) ---------- */
    --ibkr-trade-card-bg:          #111827;
    --ibkr-trade-card-border:      #263247;
    --ibkr-trade-card-shadow:      0 20px 45px rgba(0,0,0,.35);
    --ibkr-trade-section-border:   #2d3748;

    --ibkr-trade-input-bg:         #1f2937;
    --ibkr-trade-input-border:     #374151;
    --ibkr-trade-input-text:       #FFFFFF;
    --ibkr-trade-input-placeholder:#6B7280;

    --ibkr-trade-text-primary:     #FFFFFF;
    --ibkr-trade-text-secondary:   #9CA3AF;

    --ibkr-trade-empty-icon-bg:    #1f2937;
    --ibkr-trade-empty-icon:       #6b7280;

    --ibkr-trade-search-btn-bg:        #2563eb;
    --ibkr-trade-search-btn-bg-hover:  #1d4ed8;

    --ibkr-trade-modal-overlay:    rgba(5,8,16,.82);
    --ibkr-trade-ticket-bg:        #0f1521;
    --ibkr-trade-ticket-border:    #232b3d;
    --ibkr-trade-ticket-shadow:    0 30px 60px -20px rgba(0,0,0,.6);
    --ibkr-trade-perf-dot-bg:      #050810;
    --ibkr-trade-perf-line:        #232b3d;

    --ibkr-trade-row-label:        #7c8494;
    --ibkr-trade-row-value:        #eef1f6;
    --ibkr-trade-row-value-dim:    #7c8494;
    --ibkr-trade-row-heading:      #eef1f6;

    --ibkr-trade-btn-cancel-bg:        #1a2332;
    --ibkr-trade-btn-cancel-border:    #232b3d;
    --ibkr-trade-btn-cancel-text:      #7c8494;
}

/* ---------- LONG / SHORT side badge (shared: Orders + Trade) ---------- */
.ibkr-side-badge {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.4px;
}

.ibkr-side-badge.BUY {
  background: var(--ibkr-pill-connected-bg);
  color: var(--ibkr-pill-connected-text);
}

.ibkr-side-badge.SELL {
  background: var(--ibkr-pill-disconnected-bg);
  color: var(--ibkr-pill-disconnected-text);
}

/* ============================================================
   IBKR GATEWAY MODULE — assets/css/gateway.css
   All styles here are IBKR-specific. Nothing here touches the
   shared dashboard classes (.card, .data-table, .btn, etc).
   Include this file only on pages that use the IBKR module:
     <link rel="stylesheet" href="assets/css/gateway.css"/>
   ============================================================ */

/* ---------- IBKR-scoped ticker cell (used only inside IBKR holdings table) ---------- */
.ibkr-ticker{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.ibkr-ticker-symbol{
    font-weight:700;
    font-size:15px;
    color:var(--ibkr-text-dark);
}

.ibkr-ticker-id{
    font-size:11px;
    color:var(--ibkr-text-muted);
}

/* ============================================================
   Small shared utilities used only by the IBKR module.
   (button:disabled / spinner already exist globally in
   dashboard.css — NOT duplicated here to avoid conflicts.
   If this file is used standalone without dashboard.css,
   uncomment the block below.)
   ============================================================
.spinner{
    width:16px;height:16px;border:2px solid rgba(255,255,255,.35);
    border-top:2px solid #fff;border-radius:50%;
    animation:spin .8s linear infinite;display:inline-block;
}
@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
button:disabled{opacity:.7;cursor:not-allowed;}
============================================================ */

/* ---------- Responsive ---------- */
@media(max-width:900px){
    .ibkr-stats{ grid-template-columns:1fr; }
    .ibkr-account-header{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
    }
}