/**
 * Crypto Finance Dashboard — Dashboard CSS
 * Prefixo .cfd- isolado · Tema Dark/Light com transição suave
 * Pares no formato BTCUSDT.P · Futuro · Binance
 *
 * @package CryptoFinanceDashboard
 * @version 1.1.0
 */

/* ════════════════════════════════════════════════════════════════
   TEMA DARK (padrão)
════════════════════════════════════════════════════════════════ */
.cfd-wrapper,
.cfd-wrapper.cfd-theme-dark {
	--cfd-bg-grad:       linear-gradient(135deg, #020e4a 0%, #01082e 50%, #030f52 100%);
	--cfd-surface:       rgba(2,29,145,0.22);
	--cfd-surface-h:     rgba(2,29,145,0.42);
	--cfd-surface-2:     rgba(2,14,74,0.60);
	--cfd-header-bg:     rgba(2,14,74,0.90);
	--cfd-border:        rgba(99,140,255,0.18);
	--cfd-border-h:      rgba(99,140,255,0.48);
	--cfd-accent:        #638cff;
	--cfd-accent-b:      #7fa3ff;
	--cfd-green:         #00e5a0;
	--cfd-green-d:       rgba(0,229,160,0.13);
	--cfd-red:           #ff4d6a;
	--cfd-red-d:         rgba(255,77,106,0.13);
	--cfd-yellow:        #ffd166;
	--cfd-yellow-d:      rgba(255,209,102,0.13);
	--cfd-txt:           #c8d8ff;
	--cfd-txt-strong:    #e8f0ff;
	--cfd-muted:         rgba(200,216,255,0.52);
	--cfd-dim:           rgba(200,216,255,0.28);
	--cfd-scrollbar:     rgba(99,140,255,0.30);
	--cfd-chart-label:   rgba(200,216,255,0.36);
	--cfd-input-bg:      rgba(2,14,74,0.72);
	--cfd-badge-bg:      rgba(99,140,255,0.12);
	--cfd-badge-color:   #638cff;
	--cfd-badge-bdr:     rgba(99,140,255,0.25);
	--cfd-toggle-track:  rgba(99,140,255,0.20);
	--cfd-toggle-active: rgba(99,140,255,0.50);
}

/* ════════════════════════════════════════════════════════════════
   TEMA LIGHT
════════════════════════════════════════════════════════════════ */
.cfd-wrapper.cfd-theme-light {
	--cfd-bg-grad:       linear-gradient(135deg,#eef2ff 0%,#f5f7ff 50%,#edf1ff 100%);
	--cfd-surface:       rgba(255,255,255,0.88);
	--cfd-surface-h:     rgba(255,255,255,1);
	--cfd-surface-2:     rgba(235,240,255,0.80);
	--cfd-header-bg:     rgba(241,245,255,0.97);
	--cfd-border:        rgba(90,120,220,0.20);
	--cfd-border-h:      rgba(90,120,220,0.50);
	--cfd-accent:        #2d5be3;
	--cfd-accent-b:      #1a44c8;
	--cfd-green:         #00935a;
	--cfd-green-d:       rgba(0,147,90,0.11);
	--cfd-red:           #d42040;
	--cfd-red-d:         rgba(212,32,64,0.10);
	--cfd-yellow:        #a06800;
	--cfd-yellow-d:      rgba(160,104,0,0.10);
	--cfd-txt:           #1c2b6e;
	--cfd-txt-strong:    #0e1a4f;
	--cfd-muted:         rgba(28,43,110,0.55);
	--cfd-dim:           rgba(28,43,110,0.32);
	--cfd-scrollbar:     rgba(90,120,220,0.35);
	--cfd-chart-label:   rgba(28,43,110,0.45);
	--cfd-input-bg:      rgba(255,255,255,0.95);
	--cfd-badge-bg:      rgba(45,91,227,0.10);
	--cfd-badge-color:   #2d5be3;
	--cfd-badge-bdr:     rgba(45,91,227,0.25);
	--cfd-toggle-track:  rgba(90,120,220,0.18);
	--cfd-toggle-active: #2d5be3;
}

/* ════════════════════════════════════════════════════════════════
   BASE
════════════════════════════════════════════════════════════════ */
.cfd-wrapper {
	--cfd-radius:    14px;
	--cfd-radius-sm: 9px;
	--cfd-font-mono: 'JetBrains Mono','Courier New',monospace;
	--cfd-font-sans: 'Syne',system-ui,sans-serif;

	all: initial;
	display: block;
	box-sizing: border-box;
	font-family: var(--cfd-font-sans);
	color: var(--cfd-txt);
	background: var(--cfd-bg-grad);
	border-radius: var(--cfd-radius);
	overflow: hidden;
	position: relative;
	line-height: 1.4;
}

.cfd-wrapper *,
.cfd-wrapper *::before,
.cfd-wrapper *::after {
	box-sizing: border-box;
	margin: 0; padding: 0;
	transition: background-color .3s ease, border-color .3s ease, color .25s ease;
}

.cfd-wrapper ::-webkit-scrollbar { width: 4px; height: 4px; }
.cfd-wrapper ::-webkit-scrollbar-track { background: transparent; }
.cfd-wrapper ::-webkit-scrollbar-thumb { background: var(--cfd-scrollbar); border-radius: 2px; }

/* ── Utilidades ──────────────────────────────────────────────── */
.cfd-text--accent  { color: var(--cfd-accent)  !important; }
.cfd-text--green   { color: var(--cfd-green)   !important; }
.cfd-text--red     { color: var(--cfd-red)     !important; }
.cfd-text--yellow  { color: var(--cfd-yellow)  !important; }
.cfd-text--muted   { color: var(--cfd-muted)   !important; }
.cfd-text--dim     { color: var(--cfd-dim)     !important; }
.cfd-text--strong  { color: var(--cfd-txt-strong) !important; }
.cfd-text--xs      { font-size: 9px; font-family: var(--cfd-font-mono); }

/* ── Animações ───────────────────────────────────────────────── */
@keyframes cfd-pulse-ring { 0%{transform:scale(1);opacity:1} 100%{transform:scale(2.2);opacity:0} }
@keyframes cfd-ticker { 0%{transform:translateX(0)} 100%{transform:translateX(-50%)} }
@keyframes cfd-fade-in { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
@keyframes cfd-slide-in { from{opacity:0;transform:translateX(-8px)} to{opacity:1;transform:translateX(0)} }
@keyframes cfd-toggle-in { from{opacity:0;transform:scale(.95)} to{opacity:1;transform:scale(1)} }

/* ════════════════════════════════════════════════════════════════
   THEME TOGGLE
════════════════════════════════════════════════════════════════ */
.cfd-theme-toggle {
	display: flex;
	align-items: center;
	gap: 7px;
	cursor: pointer;
	padding: 5px 12px;
	border-radius: 20px;
	background: var(--cfd-surface-2);
	border: 1px solid var(--cfd-border);
	user-select: none;
	flex-shrink: 0;
}
.cfd-theme-toggle:hover { border-color: var(--cfd-border-h); }

.cfd-tt-icon { font-size: 13px; line-height: 1; transition: transform .45s ease; }
.cfd-theme-toggle.cfd-toggle--light .cfd-tt-icon { transform: rotate(180deg); }

.cfd-tt-track {
	width: 32px; height: 17px; border-radius: 9px;
	background: var(--cfd-toggle-track);
	border: 1px solid var(--cfd-border);
	position: relative; flex-shrink: 0;
}
.cfd-tt-track::after {
	content: '';
	position: absolute; top: 2px; left: 2px;
	width: 11px; height: 11px; border-radius: 50%;
	background: var(--cfd-accent);
	transition: transform .3s cubic-bezier(.4,0,.2,1), background .3s;
	box-shadow: 0 1px 4px rgba(0,0,0,.2);
}
.cfd-theme-toggle.cfd-toggle--light .cfd-tt-track { background: var(--cfd-toggle-active); border-color: var(--cfd-accent); }
.cfd-theme-toggle.cfd-toggle--light .cfd-tt-track::after { transform: translateX(15px); background: #fff; }

.cfd-tt-label { font-family: var(--cfd-font-mono); font-size: 10px; font-weight: 700; color: var(--cfd-muted); min-width: 32px; }

/* ════════════════════════════════════════════════════════════════
   HEADER
════════════════════════════════════════════════════════════════ */
.cfd-header {
	display: flex; align-items: center; justify-content: space-between;
	flex-wrap: wrap; gap: 10px; padding: 11px 20px;
	background: var(--cfd-header-bg);
	border-bottom: 1px solid var(--cfd-border);
	backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
}

.cfd-header__brand { display: flex; align-items: center; gap: 10px; }
.cfd-header__icon {
	width: 30px; height: 30px; border-radius: 9px;
	background: linear-gradient(135deg,#638cff,#3d5eff);
	display: flex; align-items: center; justify-content: center;
	font-size: 14px; color: #fff; font-weight: 800; flex-shrink: 0;
}
.cfd-header__title { font-size: 14px; font-weight: 800; letter-spacing: .04em; color: var(--cfd-txt-strong); }
.cfd-header__sub   { font-size: 9px; color: var(--cfd-muted); font-family: var(--cfd-font-mono); }
.cfd-header__controls { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

/* Timeframes */
.cfd-timeframes { display: flex; gap: 4px; }
.cfd-tf-btn {
	padding: 4px 10px; border-radius: 8px; font-size: 11px; font-weight: 700;
	font-family: var(--cfd-font-mono); cursor: pointer;
	background: transparent; color: var(--cfd-muted); border: 1px solid transparent; line-height: 1;
}
.cfd-tf-btn:hover { color: var(--cfd-txt); border-color: var(--cfd-border); }
.cfd-tf-btn--active { background: rgba(99,140,255,.18); color: var(--cfd-accent); border-color: var(--cfd-accent); }

/* Status */
.cfd-status { display: flex; align-items: center; gap: 6px; font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-green); }
.cfd-status__dot { width: 7px; height: 7px; border-radius: 50%; background: var(--cfd-green); position: relative; flex-shrink: 0; }
.cfd-status__dot::after { content:''; position:absolute; inset:0; border-radius:50%; background:var(--cfd-green); animation:cfd-pulse-ring 1.5s infinite; }
.cfd-clock { font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-dim); }

/* ── META ROW (Futuro / Binance) ─────────────────────────────── */
.cfd-meta-row {
	display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
	padding: 6px 20px; background: var(--cfd-surface-2);
	border-bottom: 1px solid var(--cfd-border);
	font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-muted);
}
.cfd-meta-badge {
	display: inline-flex; align-items: center; gap: 4px;
	padding: 3px 9px; border-radius: 6px; font-size: 10px; font-weight: 700;
}
.cfd-meta-badge--type     { background: var(--cfd-yellow-d); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.3); }
.cfd-meta-badge--exchange { background: var(--cfd-badge-bg); color: var(--cfd-badge-color); border: 1px solid var(--cfd-badge-bdr); }
.cfd-meta-badge--perp     { background: var(--cfd-green-d);  color: var(--cfd-green);  border: 1px solid rgba(0,229,160,.25); }
.cfd-meta-sep { color: var(--cfd-dim); }
.cfd-meta-row__pair-label {
	font-weight: 800; color: var(--cfd-txt-strong); font-size: 11px;
}
.cfd-meta-row__pair-label span { color: var(--cfd-accent); }

/* ── TICKER TAPE ─────────────────────────────────────────────── */
.cfd-ticker {
	overflow: hidden; height: 32px; display: flex; align-items: center;
	border-bottom: 1px solid var(--cfd-border); background: var(--cfd-surface-2);
}
.cfd-ticker__track { display: flex; gap: 0; animation: cfd-ticker 24s linear infinite; white-space: nowrap; }
.cfd-ticker__item {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 0 18px; border-right: 1px solid var(--cfd-border);
	font-family: var(--cfd-font-mono); font-size: 11px; color: var(--cfd-txt);
}
.cfd-ticker__pair   { font-weight: 700; color: var(--cfd-accent-b); }
.cfd-ticker__pair span { color: var(--cfd-accent); font-size: 9px; }
.cfd-ticker__type   { font-size: 8px; font-weight: 700; padding: 1px 5px; border-radius: 4px; background: var(--cfd-yellow-d); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.25); font-family: var(--cfd-font-mono); }
.cfd-ticker__exch   { font-size: 8px; color: var(--cfd-dim); }

/* ── METRICS ─────────────────────────────────────────────────── */
.cfd-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 10px; padding: 14px 20px; }
.cfd-metric-card {
	background: var(--cfd-surface); border: 1px solid var(--cfd-border);
	border-radius: var(--cfd-radius); padding: 12px 14px;
	backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
}
.cfd-metric-card:hover { border-color: var(--cfd-border-h); }
.cfd-metric-card__label { font-size: 9px; color: var(--cfd-muted); letter-spacing: .1em; margin-bottom: 5px; font-family: var(--cfd-font-mono); }
.cfd-metric-card__value { font-size: 20px; font-weight: 800; line-height: 1; letter-spacing: -.02em; color: var(--cfd-txt-strong); }
.cfd-metric-card__sub   { font-size: 9px; color: var(--cfd-muted); margin-top: 4px; font-family: var(--cfd-font-mono); }

/* ── BENTO ───────────────────────────────────────────────────── */
.cfd-bento {
	display: grid; grid-template-columns: repeat(5,1fr);
	gap: 12px; padding: 0 20px 20px;
}

/* ── PANELS ──────────────────────────────────────────────────── */
.cfd-panel {
	background: var(--cfd-surface); border: 1px solid var(--cfd-border);
	border-radius: var(--cfd-radius); padding: 14px 16px;
	backdrop-filter: blur(16px) saturate(1.4); -webkit-backdrop-filter: blur(16px) saturate(1.4);
	overflow: hidden; animation: cfd-fade-in .5s ease both;
}
.cfd-panel:hover { border-color: var(--cfd-border-h); }

.cfd-panel--chart      { grid-column: 1/4; grid-row: 1; }
.cfd-panel--orderbook  { grid-column: 4/5; grid-row: 1; }
.cfd-panel--trades     { grid-column: 5/6; grid-row: 1; }
.cfd-panel--screener   { grid-column: 1/2; grid-row: 2; }
.cfd-panel--entries    { grid-column: 2/6; grid-row: 2; }
.cfd-panel--smartmoney { grid-column: 1/3; grid-row: 3; }
.cfd-panel--risk       { grid-column: 3/5; grid-row: 3; }
.cfd-panel--sentiment  { grid-column: 5/6; grid-row: 2/4; }

.cfd-panel__header {
	display: flex; align-items: center; justify-content: space-between;
	margin-bottom: 12px; flex-wrap: wrap; gap: 6px;
}
.cfd-panel__title { font-size: 12px; font-weight: 700; color: var(--cfd-txt-strong); letter-spacing: .1em; }
.cfd-panel__title-group { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }

/* Pair label no chart */
.cfd-pair-label { font-family: var(--cfd-font-mono); font-size: 17px; font-weight: 800; color: var(--cfd-txt-strong); }
.cfd-pair-label__dot { color: var(--cfd-accent); }

/* ── BADGES ──────────────────────────────────────────────────── */
.cfd-badge {
	display: inline-flex; align-items: center; padding: 3px 8px;
	border-radius: 6px; font-size: 10px; font-weight: 600; font-family: var(--cfd-font-mono);
}
.cfd-badge--accent  { background: var(--cfd-badge-bg); color: var(--cfd-badge-color); border: 1px solid var(--cfd-badge-bdr); }
.cfd-badge--green   { background: var(--cfd-green-d); color: var(--cfd-green); border: 1px solid rgba(0,229,160,.3); }
.cfd-badge--red     { background: var(--cfd-red-d);   color: var(--cfd-red);   border: 1px solid rgba(255,77,106,.3); }
.cfd-badge--yellow  { background: var(--cfd-yellow-d); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.3); }

.cfd-indicator-pills { display: flex; gap: 5px; flex-wrap: wrap; }
.cfd-ind-pill { font-family: var(--cfd-font-mono); font-size: 9px; font-weight: 600; padding: 2px 7px; border-radius: 5px; background: var(--cfd-badge-bg); color: var(--cfd-badge-color); border: 1px solid var(--cfd-badge-bdr); }

/* ── CHART ───────────────────────────────────────────────────── */
.cfd-chart-canvas-wrap { position: relative; width: 100%; }
.cfd-chart-canvas { display: block; width: 100% !important; height: auto; cursor: crosshair; }
.cfd-chart-tooltip {
	position: absolute; background: var(--cfd-surface-2);
	border: 1px solid var(--cfd-border-h); border-radius: 8px;
	padding: 8px 12px; font-family: var(--cfd-font-mono); font-size: 10px;
	color: var(--cfd-txt); pointer-events: none; white-space: nowrap; z-index: 10;
}

/* ── ORDER BOOK ──────────────────────────────────────────────── */
.cfd-pressure-text { font-family: var(--cfd-font-mono); font-size: 10px; }
.cfd-pressure-bar { height: 4px; border-radius: 2px; background: var(--cfd-red-d); overflow: hidden; margin-bottom: 8px; }
.cfd-pressure-bar__fill { height: 100%; background: linear-gradient(90deg,var(--cfd-green),rgba(0,229,160,.5)); border-radius: 2px; transition: width .5s ease; width: 50%; }
.cfd-ob-header { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 4px; margin-bottom: 4px; font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); }
.cfd-ob-asks, .cfd-ob-bids { max-height: 120px; overflow-y: auto; }
.cfd-ob-row { position: relative; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 4px; padding: 2px 0; font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-txt); }
.cfd-ob-row__bg { position: absolute; top: 0; bottom: 0; border-radius: 2px; pointer-events: none; }
.cfd-ob-spread { text-align: center; padding: 5px 0; border-top: 1px solid var(--cfd-border); border-bottom: 1px solid var(--cfd-border); font-family: var(--cfd-font-mono); font-size: 11px; font-weight: 700; color: var(--cfd-accent); margin: 4px 0; }

/* ── TRADES ──────────────────────────────────────────────────── */
.cfd-trades-list { display: flex; flex-direction: column; gap: 2px; max-height: 280px; overflow-y: auto; }
.cfd-trade-row { display: grid; grid-template-columns: 1fr 1fr 1fr auto; gap: 6px; align-items: center; padding: 3px 0; border-bottom: 1px solid rgba(99,140,255,.06); font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-txt); }
.cfd-trade-row--new { animation: cfd-slide-in .3s ease; }

/* ── SCREENER ────────────────────────────────────────────────── */
.cfd-screener-list { display: flex; flex-direction: column; gap: 3px; max-height: 300px; overflow-y: auto; }
.cfd-screener-row { display: grid; grid-template-columns: auto 1fr auto; gap: 8px; align-items: center; padding: 7px 8px; border-radius: 10px; cursor: pointer; border: 1px solid transparent; }
.cfd-screener-row:hover { background: var(--cfd-surface-h); border-color: var(--cfd-border); }
.cfd-screener-row--active { background: rgba(99,140,255,.14); border-color: var(--cfd-border-h); }
.cfd-screener-row__ico { width: 28px; height: 28px; border-radius: 50%; background: var(--cfd-badge-bg); border: 1px solid var(--cfd-border); display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 800; color: var(--cfd-accent); font-family: var(--cfd-font-mono); flex-shrink: 0; }
.cfd-screener-row__pair { font-size: 10px; font-weight: 700; font-family: var(--cfd-font-mono); color: var(--cfd-txt-strong); }
.cfd-screener-row__pair span { color: var(--cfd-accent); font-weight: 700; }
.cfd-screener-row__sub  { font-size: 8px; color: var(--cfd-muted); font-family: var(--cfd-font-mono); margin-top: 1px; }

/* ── ENTRY POINTS ────────────────────────────────────────────── */
.cfd-panel--entries .cfd-panel__header { flex-direction: column; align-items: flex-start; gap: 10px; }
.cfd-entry-controls { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; width: 100%; }

.cfd-search-wrap { position: relative; min-width: 160px; flex: 1; max-width: 280px; }
.cfd-search-icon { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); width: 12px; height: 12px; color: var(--cfd-muted); pointer-events: none; }
.cfd-search-input { width: 100%; background: var(--cfd-input-bg); border: 1px solid var(--cfd-border); border-radius: var(--cfd-radius-sm); padding: 6px 10px 6px 28px; color: var(--cfd-txt); font-family: var(--cfd-font-mono); font-size: 11px; outline: none; -webkit-appearance: none; }
.cfd-search-input:focus { border-color: var(--cfd-accent); }
.cfd-search-input::placeholder { color: var(--cfd-dim); }

.cfd-filter-pills { display: flex; gap: 5px; flex-wrap: wrap; }
.cfd-pill { font-family: var(--cfd-font-mono); font-size: 10px; font-weight: 600; padding: 5px 11px; border-radius: 8px; border: 1px solid var(--cfd-border); background: transparent; color: var(--cfd-muted); cursor: pointer; white-space: nowrap; line-height: 1; }
.cfd-pill:hover { border-color: var(--cfd-border-h); color: var(--cfd-txt); }
.cfd-pill--active { background: rgba(99,140,255,.18); border-color: var(--cfd-accent); color: var(--cfd-accent); }
.cfd-pill--green.cfd-pill--active  { background: var(--cfd-green-d);  border-color: rgba(0,229,160,.4);   color: var(--cfd-green);  }
.cfd-pill--red.cfd-pill--active    { background: var(--cfd-red-d);    border-color: rgba(255,77,106,.4);  color: var(--cfd-red);    }
.cfd-pill--yellow.cfd-pill--active { background: var(--cfd-yellow-d); border-color: rgba(255,209,102,.4); color: var(--cfd-yellow); }

.cfd-sort-select { background: var(--cfd-input-bg); border: 1px solid var(--cfd-border); border-radius: var(--cfd-radius-sm); padding: 6px 10px; color: var(--cfd-txt); font-family: var(--cfd-font-mono); font-size: 10px; outline: none; cursor: pointer; -webkit-appearance: none; appearance: none; }

.cfd-entry-stats { display: flex; gap: 16px; flex-wrap: wrap; padding: 8px 0; border-bottom: 1px solid var(--cfd-border); margin-bottom: 10px; }
.cfd-entry-stat { display: flex; align-items: center; gap: 6px; }
.cfd-entry-stat__val { font-family: var(--cfd-font-mono); font-size: 16px; font-weight: 800; }
.cfd-entry-stat__lbl { font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); }

.cfd-detail-panel { margin-bottom: 10px; padding: 14px 16px; background: var(--cfd-surface-2); border: 1px solid var(--cfd-border-h); border-radius: 12px; animation: cfd-fade-in .25s ease; }
.cfd-detail-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; flex-wrap: wrap; gap: 8px; }
.cfd-detail-grid { display: grid; grid-template-columns: repeat(6,1fr); gap: 10px; margin-bottom: 10px; }
.cfd-detail-item { background: var(--cfd-surface); border: 1px solid var(--cfd-border); border-radius: 9px; padding: 8px 10px; }
.cfd-detail-lbl { font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); letter-spacing: .06em; margin-bottom: 4px; }
.cfd-detail-val { font-family: var(--cfd-font-mono); font-size: 12px; font-weight: 700; color: var(--cfd-txt); }
.cfd-detail-indicators { display: flex; flex-wrap: wrap; gap: 6px; }
.cfd-ind-tag { display: inline-flex; align-items: center; gap: 5px; background: var(--cfd-surface); border: 1px solid var(--cfd-border); border-radius: 7px; padding: 4px 9px; font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-txt); }
.cfd-ind-tag__dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.cfd-close-btn { background: var(--cfd-red-d); border: 1px solid rgba(255,77,106,.3); color: var(--cfd-red); border-radius: 7px; padding: 4px 12px; cursor: pointer; font-size: 11px; font-family: var(--cfd-font-mono); }
.cfd-close-btn:hover { background: rgba(255,77,106,.25); }

/* Tabela */
.cfd-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.cfd-entries-table { width: 100%; border-collapse: separate; border-spacing: 0 4px; min-width: 940px; }
.cfd-entries-table thead th { font-family: var(--cfd-font-mono); font-size: 9px; font-weight: 600; color: var(--cfd-muted); letter-spacing: .1em; padding: 6px 10px; text-align: left; cursor: pointer; user-select: none; white-space: nowrap; background: transparent; border: none; }
.cfd-entries-table thead th:hover { color: var(--cfd-txt); }
.cfd-entries-table thead th.cfd-sorted { color: var(--cfd-accent); }
.cfd-sort-arr { margin-left: 3px; font-size: 8px; opacity: .4; }
.cfd-sorted .cfd-sort-arr { opacity: 1; color: var(--cfd-accent); }
.cfd-entries-table tbody tr { background: var(--cfd-surface); cursor: pointer; }
.cfd-entries-table tbody tr:hover { background: var(--cfd-surface-h); outline: 1px solid var(--cfd-border-h); border-radius: 12px; }
.cfd-entries-table tbody tr.cfd-row--selected { background: rgba(99,140,255,.13); outline: 1px solid var(--cfd-accent); }
.cfd-entries-table tbody td { padding: 10px; font-family: var(--cfd-font-mono); font-size: 10px; color: var(--cfd-txt); white-space: nowrap; vertical-align: middle; border: none; }
.cfd-entries-table tbody td:first-child { border-radius: 11px 0 0 11px; }
.cfd-entries-table tbody td:last-child  { border-radius: 0 11px 11px 0; }

.cfd-tok { display: flex; align-items: center; gap: 8px; }
.cfd-tok__ico { width: 28px; height: 28px; border-radius: 50%; background: var(--cfd-badge-bg); border: 1px solid var(--cfd-border); display: flex; align-items: center; justify-content: center; font-size: 9px; font-weight: 800; color: var(--cfd-accent); flex-shrink: 0; }
.cfd-tok__pair { font-size: 10px; font-weight: 700; color: var(--cfd-txt-strong); }
.cfd-tok__pair span { color: var(--cfd-accent); }
.cfd-tok__meta { font-size: 8px; color: var(--cfd-muted); margin-top: 1px; display: flex; gap: 4px; align-items: center; }
.cfd-tok__type { background: var(--cfd-yellow-d); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.25); padding: 1px 5px; border-radius: 4px; font-size: 8px; font-weight: 700; }

.cfd-sig { display: inline-flex; align-items: center; padding: 3px 8px; border-radius: 6px; font-size: 9px; font-weight: 700; letter-spacing: .04em; }
.cfd-sig--long    { background: var(--cfd-green-d);  color: var(--cfd-green);  border: 1px solid rgba(0,229,160,.3); }
.cfd-sig--short   { background: var(--cfd-red-d);    color: var(--cfd-red);    border: 1px solid rgba(255,77,106,.3); }
.cfd-sig--wait    { background: var(--cfd-yellow-d); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.3); }
.cfd-sig--neutral { background: var(--cfd-badge-bg); color: var(--cfd-badge-color); border: 1px solid var(--cfd-badge-bdr); }

.cfd-conf-wrap { display: flex; align-items: center; gap: 7px; }
.cfd-conf-bar { flex: 1; height: 4px; background: rgba(99,140,255,.1); border-radius: 2px; min-width: 50px; }
.cfd-conf-fill { height: 100%; border-radius: 2px; }
.cfd-conf-high .cfd-conf-fill { background: var(--cfd-green); }
.cfd-conf-mid  .cfd-conf-fill { background: var(--cfd-yellow); }
.cfd-conf-low  .cfd-conf-fill { background: var(--cfd-red); }
.cfd-conf-pct { font-size: 10px; font-weight: 700; min-width: 28px; text-align: right; }
.cfd-conf-high .cfd-conf-pct { color: var(--cfd-green); }
.cfd-conf-mid  .cfd-conf-pct { color: var(--cfd-yellow); }
.cfd-conf-low  .cfd-conf-pct { color: var(--cfd-red); }

.cfd-rr { display: inline-block; padding: 3px 7px; border-radius: 6px; font-size: 10px; font-weight: 700; background: var(--cfd-badge-bg); color: var(--cfd-badge-color); border: 1px solid var(--cfd-badge-bdr); }
.cfd-rr--good  { background: var(--cfd-green-d); color: var(--cfd-green); border-color: rgba(0,229,160,.3); }
.cfd-rr--great { background: rgba(0,229,160,.2); color: #00c988; border-color: rgba(0,229,160,.5); }

.cfd-tf-row { display: flex; gap: 4px; }
.cfd-tf-tag { padding: 2px 6px; border-radius: 5px; font-size: 9px; font-weight: 600; font-family: var(--cfd-font-mono); }
.cfd-tf-tag--1h { background: rgba(0,229,160,.10); color: var(--cfd-green); border: 1px solid rgba(0,229,160,.2); }
.cfd-tf-tag--4h { background: rgba(99,140,255,.10); color: var(--cfd-accent); border: 1px solid rgba(99,140,255,.2); }
.cfd-tf-tag--1d { background: rgba(255,209,102,.10); color: var(--cfd-yellow); border: 1px solid rgba(255,209,102,.2); }

.cfd-spark { display: inline-flex; align-items: flex-end; gap: 1px; height: 20px; }
.cfd-spark__bar { width: 4px; border-radius: 1px 1px 0 0; }

.cfd-empty-state { text-align: center; padding: 30px; color: var(--cfd-muted); font-family: var(--cfd-font-mono); font-size: 12px; }
.cfd-table-footer { display: flex; justify-content: space-between; align-items: center; padding-top: 8px; font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-dim); }

/* ── SMART MONEY ─────────────────────────────────────────────── */
.cfd-sm-metrics { display: grid; grid-template-columns: repeat(4,1fr); gap: 8px; margin-bottom: 12px; }
.cfd-sm-metric { background: var(--cfd-surface-2); border: 1px solid var(--cfd-border); border-radius: 10px; padding: 8px; text-align: center; }
.cfd-sm-metric__icon { font-size: 16px; margin-bottom: 4px; }
.cfd-sm-metric__val  { font-family: var(--cfd-font-mono); font-size: 15px; font-weight: 800; display: block; }
.cfd-sm-metric__lbl  { font-family: var(--cfd-font-mono); font-size: 8px; color: var(--cfd-muted); margin-top: 2px; }
.cfd-whale-feed { display: flex; flex-direction: column; gap: 4px; max-height: 140px; overflow-y: auto; }
.cfd-whale-row { display: flex; justify-content: space-between; align-items: center; padding: 5px 8px; border-radius: 8px; font-family: var(--cfd-font-mono); font-size: 10px; }
.cfd-whale-row--buy  { background: var(--cfd-green-d); border: 1px solid rgba(0,229,160,.2); }
.cfd-whale-row--sell { background: var(--cfd-red-d);   border: 1px solid rgba(255,77,106,.2); }

/* ── RISK ENGINE ─────────────────────────────────────────────── */
.cfd-risk-form { display: flex; flex-direction: column; gap: 10px; }
.cfd-risk-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cfd-field { display: flex; flex-direction: column; gap: 4px; }
.cfd-field--full { grid-column: 1/-1; }
.cfd-field__label { font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); letter-spacing: .06em; }
.cfd-field__input { background: var(--cfd-input-bg); border: 1px solid var(--cfd-border); border-radius: 8px; padding: 7px 10px; color: var(--cfd-txt); font-family: var(--cfd-font-mono); font-size: 12px; outline: none; width: 100%; -webkit-appearance: none; }
.cfd-field__input:focus { border-color: var(--cfd-accent); }
.cfd-risk-direction { display: flex; gap: 6px; }
.cfd-dir-btn { flex: 1; padding: 7px; border-radius: 8px; font-family: var(--cfd-font-mono); font-size: 11px; font-weight: 700; cursor: pointer; border: 1px solid var(--cfd-border); background: var(--cfd-surface-2); color: var(--cfd-muted); }
.cfd-dir-btn--long.cfd-dir-btn--active  { background: var(--cfd-green-d); color: var(--cfd-green); border-color: rgba(0,229,160,.4); }
.cfd-dir-btn--short.cfd-dir-btn--active { background: var(--cfd-red-d);   color: var(--cfd-red);   border-color: rgba(255,77,106,.4); }
.cfd-calc-btn { background: linear-gradient(135deg,rgba(99,140,255,.25),rgba(127,163,255,.15)); border: 1px solid var(--cfd-accent); border-radius: 10px; padding: 9px; color: var(--cfd-accent-b); font-family: var(--cfd-font-mono); font-size: 12px; font-weight: 700; cursor: pointer; width: 100%; }
.cfd-calc-btn:hover { background: rgba(99,140,255,.3); }
.cfd-risk-results { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; animation: cfd-fade-in .3s ease; }
.cfd-risk-result-item { background: var(--cfd-surface-2); border: 1px solid var(--cfd-border); border-radius: 9px; padding: 8px 10px; }
.cfd-risk-result-item__lbl { font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); margin-bottom: 3px; }
.cfd-risk-result-item__val { font-family: var(--cfd-font-mono); font-size: 12px; font-weight: 700; }

/* ── SENTIMENT ───────────────────────────────────────────────── */
.cfd-gauge-svg { width: 100%; max-width: 200px; height: auto; display: block; margin: 0 auto; }
.cfd-social-sentiment { margin-top: 8px; }
.cfd-sent-label { font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-muted); margin-bottom: 8px; }
.cfd-sent-row { margin-bottom: 7px; }
.cfd-sent-row__header { display: flex; justify-content: space-between; font-family: var(--cfd-font-mono); font-size: 9px; margin-bottom: 3px; }
.cfd-sent-bar { height: 4px; background: rgba(99,140,255,.1); border-radius: 2px; }
.cfd-sent-bar__fill { height: 100%; border-radius: 2px; transition: width .8s ease; }
.cfd-sent-bar__fill--green { background: var(--cfd-green); }
.cfd-sent-bar__fill--muted { background: var(--cfd-muted); }
.cfd-sent-bar__fill--red   { background: var(--cfd-red); }

/* ── FOOTER ──────────────────────────────────────────────────── */
.cfd-footer {
	display: flex; justify-content: space-between; align-items: center;
	flex-wrap: wrap; gap: 8px; padding: 10px 20px;
	border-top: 1px solid var(--cfd-border); background: var(--cfd-header-bg);
	font-family: var(--cfd-font-mono); font-size: 9px; color: var(--cfd-dim);
}

/* ════════════════════════════════════════════════════════════════
   RESPONSIVIDADE
════════════════════════════════════════════════════════════════ */
@media (max-width: 1200px) {
	.cfd-bento { grid-template-columns: repeat(4,1fr); }
	.cfd-panel--chart      { grid-column: 1/4; }
	.cfd-panel--orderbook  { grid-column: 4/5; }
	.cfd-panel--trades     { grid-column: 1/3; grid-row: 2; }
	.cfd-panel--screener   { grid-column: 3/5; grid-row: 2; }
	.cfd-panel--entries    { grid-column: 1/-1; grid-row: 3; }
	.cfd-panel--smartmoney { grid-column: 1/3; grid-row: 4; }
	.cfd-panel--risk       { grid-column: 3/5; grid-row: 4; }
	.cfd-panel--sentiment  { grid-column: 1/-1; grid-row: 5; }
	.cfd-metrics { grid-template-columns: repeat(2,1fr); }
	.cfd-detail-grid { grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 900px) {
	.cfd-bento { grid-template-columns: 1fr 1fr; gap: 10px; }
	.cfd-panel--chart,.cfd-panel--entries,.cfd-panel--smartmoney { grid-column: 1/-1; }
	.cfd-panel--orderbook,.cfd-panel--risk     { grid-column: 1/2; grid-row: auto; }
	.cfd-panel--trades,.cfd-panel--sentiment   { grid-column: 2/3; grid-row: auto; }
	.cfd-panel--screener                       { grid-column: 1/-1; grid-row: auto; }
	.cfd-sm-metrics { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 600px) {
	.cfd-header { padding: 10px 14px; }
	.cfd-clock  { display: none; }
	.cfd-header__controls { gap: 8px; }
	.cfd-metrics { grid-template-columns: 1fr 1fr; gap: 8px; padding: 10px 14px; }
	.cfd-metric-card__value { font-size: 16px; }
	.cfd-bento { grid-template-columns: 1fr; gap: 10px; padding: 0 14px 14px; }
	.cfd-panel--chart,.cfd-panel--orderbook,.cfd-panel--trades,
	.cfd-panel--screener,.cfd-panel--entries,.cfd-panel--smartmoney,
	.cfd-panel--risk,.cfd-panel--sentiment { grid-column: 1/-1; grid-row: auto; }
	.cfd-entry-controls { flex-direction: column; align-items: flex-start; }
	.cfd-search-wrap { max-width: 100%; }
	.cfd-detail-grid { grid-template-columns: 1fr 1fr; }
	.cfd-risk-results { grid-template-columns: 1fr; }
	.cfd-footer { flex-direction: column; text-align: center; }
	.cfd-tf-btn { padding: 4px 7px; font-size: 10px; }
	.cfd-meta-row { flex-wrap: wrap; }
}
@media (max-width: 380px) {
	.cfd-metrics { grid-template-columns: 1fr; }
	.cfd-detail-grid { grid-template-columns: 1fr; }
	.cfd-risk-fields { grid-template-columns: 1fr; }
	.cfd-field--full { grid-column: 1; }
}
