/* BullSignal Unified UI System v3.4.0
 * Additive presentation layer only. It intentionally does not change analytics,
 * entitlements, execution rules, or security semantics.
 */
.bullsignal-ui-v340 {
    --bs-ui-bg: #071019;
    --bs-ui-surface: rgba(12, 24, 36, .88);
    --bs-ui-surface-2: rgba(16, 31, 46, .94);
    --bs-ui-border: rgba(143, 178, 204, .14);
    --bs-ui-border-strong: rgba(143, 178, 204, .24);
    --bs-ui-text: #edf6fb;
    --bs-ui-muted: #8da5b6;
    --bs-ui-green: #2be49a;
    --bs-ui-red: #ff6475;
    --bs-ui-amber: #f4bd55;
    --bs-ui-blue: #69aef8;
    --bs-ui-radius: 18px;
    --bs-ui-radius-sm: 12px;
    --bs-ui-shadow: 0 18px 50px rgba(0, 0, 0, .22);
    --bs-ui-gap: clamp(14px, 1.7vw, 22px);
    color: var(--bs-ui-text);
}

.bullsignal-ui-v340 :where(.bs-account-card,.bs-engine-card,.bs-market-card,.bs-diagnostics-panel,.bs-signals-panel,.bs-watchlist-panel,.bs-timeline-panel,.bs-strategy-lab-panel,.bs-operations-panel,.bs-operation-card,.bs-listing-radar-panel,.bs-bullos-catalog-panel,.bs-trade-planner-panel,.bs-pricing-card,.bs-support-card,.bs-final-security-center) {
    border: 1px solid var(--bs-ui-border) !important;
    border-radius: var(--bs-ui-radius) !important;
    background: linear-gradient(145deg, rgba(18, 34, 50, .94), rgba(8, 18, 28, .96)) !important;
    box-shadow: var(--bs-ui-shadow);
}

.bullsignal-ui-v340 :where(.bs-account-card,.bs-diagnostics-panel,.bs-signals-panel,.bs-watchlist-panel,.bs-timeline-panel,.bs-strategy-lab-panel,.bs-operations-panel,.bs-listing-radar-panel,.bs-bullos-catalog-panel,.bs-trade-planner-panel) {
    overflow: hidden;
}

.bullsignal-ui-v340 :where(button,input,select,textarea,a) { transition: border-color .18s ease, background .18s ease, transform .18s ease, opacity .18s ease, box-shadow .18s ease; }
.bullsignal-ui-v340 :where(input,select,textarea) {
    border-radius: 11px !important;
    border: 1px solid var(--bs-ui-border-strong) !important;
    background: rgba(4, 13, 22, .72) !important;
    color: var(--bs-ui-text) !important;
    min-height: 44px;
}
.bullsignal-ui-v340 :where(input,select,textarea):focus {
    outline: none;
    border-color: rgba(105, 174, 248, .75) !important;
    box-shadow: 0 0 0 3px rgba(105, 174, 248, .12);
}
.bullsignal-ui-v340 :where(button,.bs-account-secondary-button,.bs-trade-plan-action) { border-radius: 11px !important; font-weight: 760; }
.bullsignal-ui-v340 :where(button,.bs-account-secondary-button,.bs-trade-plan-action):not(:disabled):hover { transform: translateY(-1px); }

/* Dashboard command center */
.bullsignal-ui-v340 .bs-dashboard-heading { margin-bottom: 18px; }
.bullsignal-ui-v340 .bs-dashboard-heading h1 { letter-spacing: -.035em; font-size: clamp(30px, 4vw, 50px); }
.bullsignal-ui-v340 .bs-command-center {
    position: relative;
    margin: 0 0 18px;
    padding: clamp(18px, 2.5vw, 28px);
    border: 1px solid rgba(105, 174, 248, .20);
    border-radius: 22px;
    background:
        radial-gradient(circle at 84% 10%, rgba(43, 228, 154, .11), transparent 30%),
        radial-gradient(circle at 15% 0%, rgba(105, 174, 248, .12), transparent 32%),
        linear-gradient(145deg, rgba(14, 29, 44, .98), rgba(6, 15, 24, .98));
    box-shadow: 0 22px 64px rgba(0, 0, 0, .30);
}
.bullsignal-ui-v340 .bs-command-center-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:18px; }
.bullsignal-ui-v340 .bs-command-center-head > div:first-child > span,
.bullsignal-ui-v340 .bs-command-center-head > div:first-child > p { color: var(--bs-ui-muted); }
.bullsignal-ui-v340 .bs-command-center-head > div:first-child > span { font-size:11px; font-weight:850; letter-spacing:.16em; }
.bullsignal-ui-v340 .bs-command-center-head h2 { margin:5px 0 5px; font-size:clamp(23px, 2.8vw, 34px); letter-spacing:-.025em; }
.bullsignal-ui-v340 .bs-command-center-head p { margin:0; max-width:760px; line-height:1.55; }
.bullsignal-ui-v340 .bs-command-center-live { display:flex; align-items:center; gap:8px; border:1px solid var(--bs-ui-border); border-radius:999px; padding:9px 12px; color:var(--bs-ui-muted); font-size:11px; font-weight:900; letter-spacing:.08em; white-space:nowrap; }
.bullsignal-ui-v340 .bs-command-center-live i { width:8px; height:8px; border-radius:50%; background:var(--bs-ui-amber); box-shadow:0 0 14px rgba(244,189,85,.55); }
.bullsignal-ui-v340 .bs-command-center-live.is-good { color:var(--bs-ui-green); border-color:rgba(43,228,154,.25); }
.bullsignal-ui-v340 .bs-command-center-live.is-good i { background:var(--bs-ui-green); box-shadow:0 0 14px rgba(43,228,154,.6); }
.bullsignal-ui-v340 .bs-command-center-live.is-danger { color:var(--bs-ui-red); border-color:rgba(255,100,117,.30); }
.bullsignal-ui-v340 .bs-command-center-live.is-danger i { background:var(--bs-ui-red); }
.bullsignal-ui-v340 .bs-command-center-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.bullsignal-ui-v340 .bs-command-metric { min-width:0; padding:15px; border:1px solid var(--bs-ui-border); border-radius:14px; background:rgba(5,15,24,.58); }
.bullsignal-ui-v340 .bs-command-metric.is-primary { background:linear-gradient(145deg,rgba(105,174,248,.13),rgba(5,15,24,.55)); }
.bullsignal-ui-v340 .bs-command-metric > span { display:block; margin-bottom:7px; color:var(--bs-ui-muted); font-size:10px; font-weight:850; letter-spacing:.10em; }
.bullsignal-ui-v340 .bs-command-metric > strong { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:clamp(18px,2.2vw,28px); letter-spacing:-.025em; }
.bullsignal-ui-v340 .bs-command-metric > small { display:block; margin-top:5px; color:var(--bs-ui-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bullsignal-ui-v340 .bs-command-metric strong.is-good { color:var(--bs-ui-green); }
.bullsignal-ui-v340 .bs-command-metric strong.is-warning { color:var(--bs-ui-amber); }
.bullsignal-ui-v340 .bs-command-metric strong.is-danger { color:var(--bs-ui-red); }
.bullsignal-ui-v340 .bs-command-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; padding-top:14px; border-top:1px solid var(--bs-ui-border); }
.bullsignal-ui-v340 .bs-command-actions a { text-decoration:none; color:#cde2f1; border:1px solid var(--bs-ui-border); background:rgba(255,255,255,.025); padding:8px 11px; border-radius:10px; font-size:12px; font-weight:760; }
.bullsignal-ui-v340 .bs-command-actions a:hover { border-color:rgba(105,174,248,.48); background:rgba(105,174,248,.08); }
.bullsignal-ui-v340 .bs-dashboard-systembar { border-radius:14px !important; margin-bottom:14px; }
.bullsignal-ui-v340 .bs-dashboard-secondary-grid,
.bullsignal-ui-v340 .bs-operations-grid,
.bullsignal-ui-v340 .bs-operations-panels { gap:var(--bs-ui-gap) !important; }
.bullsignal-ui-v340 .bs-operation-card { padding:18px !important; }
.bullsignal-ui-v340 .bs-operation-card span,
.bullsignal-ui-v340 .bs-operation-card small { color:var(--bs-ui-muted) !important; }

/* Account information architecture */
.bullsignal-ui-v340 .bs-account-command-nav {
    position:sticky; top:72px; z-index:18; display:flex; flex-wrap:wrap; gap:7px; margin:0 0 16px; padding:8px;
    border:1px solid var(--bs-ui-border); border-radius:14px; background:rgba(6,16,25,.90); backdrop-filter:blur(14px);
}
.bullsignal-ui-v340 .bs-account-command-nav a { color:#bfd4e2; text-decoration:none; font-size:12px; font-weight:800; padding:9px 12px; border-radius:9px; }
.bullsignal-ui-v340 .bs-account-command-nav a:hover { color:#fff; background:rgba(105,174,248,.10); }
.bullsignal-ui-v340 .bs-account-grid { gap:var(--bs-ui-gap) !important; align-items:start; }
.bullsignal-ui-v340 .bs-account-card-header { padding-bottom:14px; margin-bottom:16px; border-bottom:1px solid var(--bs-ui-border); }
.bullsignal-ui-v340 .bs-account-card-header h2 { letter-spacing:-.02em; }
.bullsignal-ui-v340 .bs-account-card-header > div > span { color:var(--bs-ui-muted); letter-spacing:.11em; }
.bullsignal-ui-v340 .bs-account-status { border-radius:999px !important; padding:7px 10px !important; }
.bullsignal-ui-v340 .bs-final-security-grid,
.bullsignal-ui-v340 .bs-final-security-subgrid { gap:10px !important; }
.bullsignal-ui-v340 .bs-final-security-grid > div { border:1px solid var(--bs-ui-border) !important; background:rgba(3,13,22,.42) !important; border-radius:12px !important; }
.bullsignal-ui-v340 .bs-final-security-actions { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px !important; }
.bullsignal-ui-v340 .bs-final-security-actions button { min-height:44px; }

/* Bybit dual-profile control */
.bullsignal-ui-v340 .bs-bybit-profile-switcher { margin:0 0 14px; padding:14px; border:1px solid rgba(105,174,248,.18); background:rgba(4,14,24,.48); border-radius:14px; }
.bullsignal-ui-v340 .bs-bybit-profile-switcher-head { display:flex; justify-content:space-between; gap:12px; align-items:baseline; margin-bottom:10px; }
.bullsignal-ui-v340 .bs-bybit-profile-switcher-head span { color:var(--bs-ui-muted); font-size:10px; font-weight:850; letter-spacing:.12em; }
.bullsignal-ui-v340 .bs-bybit-profile-switcher-head strong { font-size:12px; color:#c9dce9; }
.bullsignal-ui-v340 .bs-bybit-profile-tabs { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.bullsignal-ui-v340 .bs-bybit-profile-tab { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; min-width:0; text-align:left; padding:12px 13px; color:var(--bs-ui-text); border:1px solid var(--bs-ui-border); background:rgba(255,255,255,.025); }
.bullsignal-ui-v340 .bs-bybit-profile-tab.is-active { border-color:rgba(105,174,248,.55); background:linear-gradient(145deg,rgba(105,174,248,.13),rgba(255,255,255,.02)); box-shadow:inset 0 0 0 1px rgba(105,174,248,.08); }
.bullsignal-ui-v340 .bs-bybit-profile-dot { width:9px; height:9px; border-radius:50%; background:#536676; }
.bullsignal-ui-v340 .bs-bybit-profile-dot.is-connected { background:var(--bs-ui-green); box-shadow:0 0 12px rgba(43,228,154,.45); }
.bullsignal-ui-v340 .bs-bybit-profile-copy,.bullsignal-ui-v340 .bs-bybit-profile-state { min-width:0; }
.bullsignal-ui-v340 .bs-bybit-profile-copy strong,.bullsignal-ui-v340 .bs-bybit-profile-copy small,.bullsignal-ui-v340 .bs-bybit-profile-state b,.bullsignal-ui-v340 .bs-bybit-profile-state small { display:block; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.bullsignal-ui-v340 .bs-bybit-profile-copy small,.bullsignal-ui-v340 .bs-bybit-profile-state small { margin-top:3px; color:var(--bs-ui-muted); font-size:10px; }
.bullsignal-ui-v340 .bs-bybit-profile-state { text-align:right; font-size:10px; }
.bullsignal-ui-v340 .bs-bybit-profile-block { margin:9px 0 0; color:var(--bs-ui-amber); font-size:12px; }
.bullsignal-ui-v340 .bs-bybit-mode-strip { border-radius:12px !important; border:1px solid var(--bs-ui-border) !important; }
.bullsignal-ui-v340 .bs-bybit-account-summary,
.bullsignal-ui-v340 .bs-bybit-balance-grid,
.bullsignal-ui-v340 .bs-bybit-portfolio-summary { gap:9px !important; }
.bullsignal-ui-v340 :where(.bs-bybit-account-summary,.bs-bybit-balance-grid,.bs-bybit-portfolio-summary) > div { border:1px solid var(--bs-ui-border) !important; border-radius:12px !important; background:rgba(3,13,22,.42) !important; }
.bullsignal-ui-v340 .bs-bybit-table-wrap { border-radius:12px !important; border:1px solid var(--bs-ui-border) !important; overflow:auto; }
.bullsignal-ui-v340 .bs-bybit-readonly-note { border-radius:12px !important; }

/* Common hierarchy / compactness */
.bullsignal-ui-v340 :where(.bs-section-heading,.bs-panel-heading,.bs-diagnostics-header,.bs-signals-header,.bs-operations-panel-head,.bs-listing-radar-head) strong { letter-spacing:-.015em; }
.bullsignal-ui-v340 :where(.bs-dashboard-main,.bs-account-main,.bs-support-main) { background:radial-gradient(circle at 50% -10%, rgba(51,103,144,.10), transparent 35%); }
.bullsignal-ui-v340 :where(.bs-section-label,.bs-dashboard-chart-label,.bs-diagnostics-label) { color:var(--bs-ui-muted) !important; letter-spacing:.13em !important; }
.bullsignal-ui-v340 details { border-radius:12px; }

/* Auth / pricing / support coherence */
.bullsignal-ui-v340 :where(.bs-auth-card,.bs-pricing-card,.bs-support-card,.bs-checkout-card) { border-radius:var(--bs-ui-radius) !important; border:1px solid var(--bs-ui-border) !important; box-shadow:var(--bs-ui-shadow); }

@media (max-width: 1100px) {
    .bullsignal-ui-v340 .bs-command-center-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .bullsignal-ui-v340 .bs-final-security-actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 720px) {
    .bullsignal-ui-v340 .bs-command-center { padding:15px; border-radius:17px; }
    .bullsignal-ui-v340 .bs-command-center-head { display:block; }
    .bullsignal-ui-v340 .bs-command-center-live { width:max-content; margin-top:12px; }
    .bullsignal-ui-v340 .bs-command-center-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .bullsignal-ui-v340 .bs-command-metric { padding:12px; }
    .bullsignal-ui-v340 .bs-command-metric > strong { font-size:19px; }
    .bullsignal-ui-v340 .bs-command-actions { flex-wrap:nowrap; overflow-x:auto; padding-bottom:3px; }
    .bullsignal-ui-v340 .bs-command-actions a { flex:0 0 auto; }
    .bullsignal-ui-v340 .bs-account-command-nav { position:static; flex-wrap:nowrap; overflow-x:auto; }
    .bullsignal-ui-v340 .bs-account-command-nav a { flex:0 0 auto; }
    .bullsignal-ui-v340 .bs-bybit-profile-tabs { grid-template-columns:1fr; }
    .bullsignal-ui-v340 .bs-final-security-actions { grid-template-columns:1fr; }
}
@media (max-width: 430px) {
    .bullsignal-ui-v340 .bs-command-center-grid { grid-template-columns:1fr; }
    .bullsignal-ui-v340 .bs-command-metric > small { white-space:normal; }
    .bullsignal-ui-v340 .bs-bybit-profile-switcher-head { display:block; }
    .bullsignal-ui-v340 .bs-bybit-profile-switcher-head strong { display:block; margin-top:4px; }
}

/* v3.4.0 full-system normalization: auth, pricing, support, content, tables and modals */
.bullsignal-ui-v340 :where(.bs-container) { width:min(1440px, calc(100% - 28px)); }
.bullsignal-ui-v340 :where(.bs-account-heading,.bs-dashboard-heading,.bs-support-heading,.bs-pricing-heading,.bs-content-heading) { padding-top:clamp(18px,3vw,34px); }
.bullsignal-ui-v340 :where(.bs-account-heading p,.bs-dashboard-heading p,.bs-support-heading p,.bs-pricing-heading p,.bs-content-heading p) { color:var(--bs-ui-muted); line-height:1.6; }
.bullsignal-ui-v340 :where(.bs-auth-card,.bs-pricing-card,.bs-support-card,.bs-content-card,.bs-checkout-card,.bs-performance-card,.bs-service-card) {
    background:linear-gradient(145deg,rgba(17,32,47,.96),rgba(7,17,27,.97)) !important;
    border:1px solid var(--bs-ui-border) !important;
    border-radius:var(--bs-ui-radius) !important;
    box-shadow:var(--bs-ui-shadow);
}
.bullsignal-ui-v340 :where(.bs-support-card__head,.bs-content-card__head,.bs-pricing-card-head) { border-bottom:1px solid var(--bs-ui-border); padding-bottom:12px; margin-bottom:14px; }
.bullsignal-ui-v340 :where(.bs-pricing-card,.bs-support-card,.bs-content-card,.bs-service-card,.bs-performance-card) { overflow:hidden; }
.bullsignal-ui-v340 :where(.bs-auth-submit,.bs-account-save-button,.bs-checkout-button,.bs-pricing-button,.bs-trade-modal-primary) {
    border:1px solid rgba(43,228,154,.38) !important;
    background:linear-gradient(135deg,rgba(43,228,154,.95),rgba(31,190,132,.95)) !important;
    color:#04140e !important;
    box-shadow:0 10px 28px rgba(43,228,154,.13);
    border-radius:11px !important;
    font-weight:850 !important;
}
.bullsignal-ui-v340 :where(.bs-bybit-danger-button,.bs-trade-modal-secondary.is-danger,.is-danger-button) {
    border-color:rgba(255,100,117,.34) !important;
    background:rgba(255,100,117,.08) !important;
    color:#ff9aa6 !important;
}
.bullsignal-ui-v340 :where(.bs-signals-table,.bs-bybit-table) { border-collapse:separate; border-spacing:0; }
.bullsignal-ui-v340 :where(.bs-signals-table th,.bs-bybit-table th) { position:sticky; top:0; z-index:2; background:#0b1a28 !important; color:var(--bs-ui-muted) !important; font-size:10px; letter-spacing:.08em; }
.bullsignal-ui-v340 :where(.bs-signals-table td,.bs-signals-table th,.bs-bybit-table td,.bs-bybit-table th) { border-bottom:1px solid var(--bs-ui-border) !important; }
.bullsignal-ui-v340 :where(.bs-trade-modal-dialog,.bs-bybit-modal-dialog,.bs-auth-password-modal-dialog) {
    border:1px solid var(--bs-ui-border-strong) !important;
    border-radius:20px !important;
    background:linear-gradient(145deg,#102235,#07121d) !important;
    box-shadow:0 28px 90px rgba(0,0,0,.52) !important;
}
.bullsignal-ui-v340 :where(.bs-trade-modal-backdrop,.bs-bybit-modal-backdrop,.bs-auth-password-modal-backdrop) { background:rgba(0,6,12,.72) !important; backdrop-filter:blur(6px); }
.bullsignal-ui-v340 :where(.bs-account-readonly-grid,.bs-diagnostics-grid,.bs-performance-grid,.bs-services-grid) { gap:10px !important; }
.bullsignal-ui-v340 :where(.bs-account-readonly-grid>div,.bs-diagnostics-metric,.bs-dashboard-stat,.bs-service-card) { border:1px solid var(--bs-ui-border) !important; border-radius:12px !important; background:rgba(4,14,23,.48) !important; }
.bullsignal-ui-v340 :where(.is-online,.is-good,.is-ready) { color:var(--bs-ui-green) !important; }
.bullsignal-ui-v340 :where(.is-offline,.is-danger,.is-failed) { color:var(--bs-ui-red) !important; }
.bullsignal-ui-v340 :where(.is-warning,.is-degraded) { color:var(--bs-ui-amber) !important; }
.bullsignal-ui-v340 :where(.is-loading) { color:var(--bs-ui-muted) !important; }
.bullsignal-ui-v340 :where(.bs-account-card-text,.bs-pricing-features,.bs-support-card p,.bs-content-card p) { color:var(--bs-ui-muted); line-height:1.55; }
.bullsignal-ui-v340 :where(.bs-signals-controls,.bs-signals-filters,.bs-bybit-actions,.bs-account-profile-actions,.bs-checkout-actions) { gap:9px !important; }
.bullsignal-ui-v340 :where(.bs-toggle) { border:1px solid var(--bs-ui-border-strong) !important; }
.bullsignal-ui-v340 :where(.bs-final-security-center) { padding:clamp(16px,2vw,22px) !important; }
.bullsignal-ui-v340 :where(.bs-final-security-center h3,.bs-bybit-card h3,.bs-support-card h2,.bs-content-card h2) { letter-spacing:-.02em; }
.bullsignal-ui-v340 :where(.bs-pricing-grid,.bs-support-grid,.bs-content-grid,.bs-services-grid) { gap:var(--bs-ui-gap) !important; }

@media (max-width:720px) {
    .bullsignal-ui-v340 :where(.bs-container) { width:min(100% - 18px, 1440px); }
    .bullsignal-ui-v340 :where(.bs-auth-card,.bs-pricing-card,.bs-support-card,.bs-content-card,.bs-account-card) { border-radius:15px !important; }
    .bullsignal-ui-v340 :where(.bs-signals-table-wrap,.bs-bybit-table-wrap) { -webkit-overflow-scrolling:touch; }
}
