*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#070707; --surface:#101010; --surface2:#171717; --surface3:#1d1d1d;
  /* Borda dourada um pouco mais contida (menos “neon” na moldura) */
  --border:rgba(212,175,55,0.13); --border2:rgba(212,175,55,0.24);
  --gold:#d4af37; --gold-soft:#f0d77a; --gold-dim:rgba(212,175,55,0.12);
  --ivory:#f2e3bf;
  --green:#7fbf9a; --green-dim:rgba(127,191,154,0.14);
  --red:#ff6b81; --red-dim:rgba(255,107,129,0.14);
  --text:#f6f0de; --text-dim:#9a8f73; --text-mid:#c1b28a;
  --shadow:0 18px 44px rgba(0,0,0,0.34);
  /* Casca premium única: mesma hierarquia em Mesa, busca, tabela, Seleto, modais, CDI */
  --panel-outer-bg:var(--surface);
  --panel-outer-border:1px solid var(--border2);
  --panel-outer-radius:20px;
  --panel-glow:radial-gradient(ellipse 115% 88% at 100% 0%,rgba(212,175,55,.04),transparent 74%);
  --panel-inset-bg:var(--surface2);
  --panel-inset-border:1px solid var(--border);
  --panel-inset-radius:16px;
  --panel-cell-bg:var(--surface3);
  --panel-cell-border:1px solid var(--border);
}
html{font-size:14px}
body{min-height:100vh;background:var(--bg);font-family:'Inter',sans-serif;color:var(--text);
  background-image:
    radial-gradient(circle at top left, rgba(212,175,55,0.08) 0%, transparent 35%),
    radial-gradient(circle at bottom right, rgba(212,175,55,0.04) 0%, transparent 35%),
    linear-gradient(180deg,#0a0a0a 0%,#070707 100%);}
.container{max-width:1080px;margin:0 auto;padding:28px 18px}

/* HEADER */
header{margin-bottom:32px;border-bottom:1px solid var(--border2);padding-bottom:24px;position:relative}header::after{content:'';position:absolute;left:0;bottom:-1px;width:160px;height:1px;background:linear-gradient(90deg,var(--gold),transparent)}
.logo-title{font-family:'Cormorant Garamond',serif;font-size:38px;font-weight:700;color:var(--gold-soft);letter-spacing:0.5px;text-shadow:0 0 24px rgba(212,175,55,0.12)}
.logo-sub{font-size:11px;letter-spacing:4px;color:var(--text-dim);text-transform:uppercase;margin-top:4px;margin-bottom:18px}
.header-stats{display:flex;gap:10px;flex-wrap:wrap}
.stat{display:flex;flex-direction:column;gap:4px;background:var(--panel-outer-bg);border:var(--panel-outer-border);border-radius:var(--panel-inset-radius);padding:12px 16px;box-shadow:var(--shadow)}
.stat-label{font-size:9px;letter-spacing:2.4px;color:var(--text-dim);text-transform:uppercase}
.stat-value{font-size:16px;font-weight:600;color:var(--text)}
.stat-value.up{color:var(--green)} .stat-value.down{color:var(--red)}

/* FORM */
.form-card{background:var(--panel-outer-bg);border:var(--panel-outer-border);border-radius:var(--panel-outer-radius);padding:22px;margin-bottom:22px;position:relative;overflow:hidden;box-shadow:var(--shadow)}
.form-card::before{content:'';position:absolute;top:0;right:0;width:168px;height:76px;pointer-events:none;border-radius:0 var(--panel-outer-radius) 0 0;background:var(--panel-glow);z-index:0}
.form-card > *{position:relative;z-index:1}
.form-title{font-size:10px;letter-spacing:3px;color:var(--text-dim);text-transform:uppercase;margin-bottom:16px}
.form-row{display:grid;gap:12px;margin-bottom:12px}
.cols-3{grid-template-columns:1fr 1fr 1fr}
.cols-2{grid-template-columns:1fr 1fr}
@media(max-width:560px){.cols-3{grid-template-columns:1fr 1fr}}
@media(max-width:360px){.cols-3,.cols-2{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:6px;position:relative}
.field label{font-size:9px;letter-spacing:2px;color:var(--text-dim);text-transform:uppercase}
.field input{background:rgba(255,255,255,0.02);border:1px solid var(--border);border-radius:12px;padding:12px 13px;color:var(--text);font-family:'Inter',sans-serif;font-size:14px;outline:none;transition:border-color 0.2s, box-shadow 0.2s;width:100%}
.field input:focus{border-color:var(--gold)}
.field input::placeholder{color:var(--text-dim)}


/* AUTOCOMPLETE */
.autocomplete-list{position:absolute;top:100%;left:0;right:0;background:var(--surface3);border:1px solid var(--border2);border-radius:8px;z-index:50;max-height:200px;overflow-y:auto;margin-top:4px;display:none}
.autocomplete-list.open{display:block}
.ac-item{padding:9px 12px;cursor:pointer;font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background 0.1s}
.ac-item:hover,.ac-item.selected{background:var(--gold-dim)}
.ac-ticker{color:var(--gold-soft);font-weight:500;letter-spacing:1px}
.ac-name{color:var(--text-dim);font-size:10px;text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}

/* TOGGLE */
.toggle-wrap{display:flex;border:1px solid var(--border2);border-radius:12px;overflow:hidden;height:46px;background:rgba(255,255,255,0.02)}
.toggle-btn{flex:1;border:none;cursor:pointer;font-family:'Inter',sans-serif;font-size:11px;font-weight:700;letter-spacing:1.4px;background:transparent;color:var(--text-dim);transition:all 0.18s;text-transform:uppercase}
.toggle-btn.buy.active{background:var(--gold-dim);color:var(--gold-soft)}
.toggle-btn.sell.active{background:rgba(255,255,255,0.08);color:var(--text-mid)}
.btn-add{width:100%;padding:14px;border:none;border-radius:12px;cursor:pointer;background:linear-gradient(135deg,var(--gold-soft),var(--gold));color:#111;font-family:'Inter',sans-serif;font-size:13px;font-weight:700;letter-spacing:1.2px;transition:transform 0.15s, filter 0.15s;margin-top:6px;box-shadow:0 12px 28px rgba(212,175,55,0.22)}
.btn-add:hover{filter:brightness(1.05)} .btn-add:active{transform:scale(0.985)}

/* TABS */
.tabs{display:flex;gap:8px;margin-bottom:16px}
.tab{flex:1;padding:11px 10px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,0.015);cursor:pointer;font-family:'Inter',sans-serif;font-size:10px;letter-spacing:1.5px;color:var(--text-dim);text-transform:uppercase;transition:all 0.15s;text-align:center}
.tab.active{background:linear-gradient(135deg,rgba(212,175,55,0.16),rgba(212,175,55,0.08));border-color:var(--gold);color:var(--gold-soft);box-shadow:var(--shadow)}
/* Radar + Sócio Seleto (FREE): chama atenção sem disputar a aba .active */
#tabRadarSocio.is-premium-disabled{
  opacity:1;
  border-color:rgba(212,175,55,0.42);
  background:linear-gradient(145deg,rgba(212,175,55,0.13),rgba(212,175,55,0.04));
  box-shadow:0 0 0 1px rgba(212,175,55,0.1),0 6px 22px rgba(212,175,55,0.09);
  color:var(--gold-soft);
}
#tabRadarSocio.is-premium-disabled:hover{
  border-color:rgba(212,175,55,0.55);
  background:linear-gradient(145deg,rgba(212,175,55,0.18),rgba(212,175,55,0.07));
  box-shadow:0 0 0 1px rgba(212,175,55,0.16),0 8px 28px rgba(212,175,55,0.12);
}
#tabRadarSocio.is-premium-disabled .seleto-inline-badge{
  margin-left:6px;
  padding:3px 9px;
  border-color:rgba(212,175,55,0.48);
  background:linear-gradient(180deg,rgba(240,226,183,0.22),rgba(212,175,55,0.11));
  color:#faf4df;
  font-size:8.5px;
  letter-spacing:0.95px;
  box-shadow:0 0 14px rgba(212,175,55,0.22);
}
.view{display:none} .view.active{display:block}

.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.section-title{font-size:9px;letter-spacing:3px;color:var(--text-dim);text-transform:uppercase}
.btn-ghost{background:transparent;color:var(--text-dim);border:1px solid var(--border);border-radius:6px;padding:6px 12px;cursor:pointer;font-family:'Inter',sans-serif;font-size:10px;letter-spacing:1px;transition:all 0.15s}
.btn-ghost:hover{border-color:var(--border2);color:var(--text)}
.refresh-btn{display:flex;align-items:center;gap:6px;background:none;border:1px solid var(--border);border-radius:6px;padding:6px 14px;cursor:pointer;font-size:10px;color:var(--text-dim);font-family:'Inter',sans-serif;transition:all 0.15s;letter-spacing:1px}
.refresh-btn:hover{border-color:var(--gold);color:var(--gold-soft)}
.refresh-btn.loading{color:var(--gold-soft);border-color:var(--gold)}
.spin{display:inline-block;animation:spin 1s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* TABLE */
.table-wrap{overflow-x:auto;position:relative;border:var(--panel-outer-border);border-radius:var(--panel-inset-radius);box-shadow:var(--shadow);background:var(--panel-outer-bg)}
.table-wrap::before{content:'';position:absolute;top:0;right:0;width:140px;height:64px;pointer-events:none;border-radius:0 var(--panel-inset-radius) 0 0;background:var(--panel-glow);z-index:0}
.table-wrap table{position:relative;z-index:1}
table{width:100%;border-collapse:collapse;font-size:12px}
thead tr{border-bottom:1px solid var(--border2);background:var(--panel-inset-bg)}
thead th{padding:11px 14px;text-align:left;font-size:9px;letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;font-weight:400;white-space:nowrap}
tbody tr{border-bottom:1px solid var(--border);transition:background 0.1s}
tbody tr:last-child{border-bottom:none}
tbody tr:hover{background:var(--surface2)}
tbody td{padding:11px 14px;color:var(--text);white-space:nowrap}
.tag-buy{color:var(--gold-soft);background:var(--gold-dim);padding:2px 8px;border-radius:4px;font-size:10px;font-weight:500}
.tag-sell{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:500}
.tag-sell.up{color:var(--green);background:var(--green-dim)}
.tag-sell.down{color:var(--red);background:var(--red-dim)}
.ticker-cell{font-weight:500;color:var(--gold-soft);letter-spacing:1px}
.up{color:var(--gold-soft)} .down{color:var(--red)} .neutral{color:var(--text-mid)}
.btn-del{background:transparent;color:var(--red);border:1px solid rgba(255,77,109,0.2);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:11px;font-family:'Inter',sans-serif;transition:all 0.15s}
.btn-del:hover{background:var(--red-dim)}
.result-cell{font-weight:500}
/* Livro: resultado da venda positivo em verde (ganho) */
.result-cell.up{color:var(--green)}
.result-cell.down{color:var(--red)}
#view-ops .ops-mobile-meta-value.up{color:var(--green)}
#view-ops .ops-mobile-meta-value.down{color:var(--red)}

/* SUMMARY CARDS */
.summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:14px}
.summary-card{background:var(--panel-outer-bg);border:var(--panel-outer-border);border-radius:var(--panel-outer-radius);padding:20px;position:relative;overflow:hidden;transition:border-color 0.2s, transform 0.18s, box-shadow 0.2s;box-shadow:var(--shadow)}
.summary-card::before{content:'';position:absolute;top:0;right:0;width:168px;height:76px;pointer-events:none;border-radius:0 var(--panel-outer-radius) 0 0;background:var(--panel-glow);z-index:0}
.summary-card > *{position:relative;z-index:1}
.summary-card:hover{border-color:rgba(212,175,55,0.32);transform:translateY(-2px);box-shadow:0 22px 50px rgba(0,0,0,0.38)}
.summary-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,0.28),transparent);opacity:0.55;z-index:2;pointer-events:none}
.card-ticker{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:700;color:var(--gold-soft);margin-bottom:12px;letter-spacing:0.4px}
.card-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}
.card-label{font-size:10px;color:var(--text-dim);text-transform:uppercase;letter-spacing:1px}
.card-val{font-size:13px;color:var(--text)}
.card-divider{height:1px;background:var(--border);margin:12px 0}
.card-price-row{display:flex;justify-content:space-between;align-items:flex-end;margin-top:12px}
.price-block{display:flex;flex-direction:column;gap:3px}
.price-label{font-size:9px;color:var(--text-dim);letter-spacing:2px;text-transform:uppercase}
.price-val{font-size:18px;font-weight:500}
.pnl-block{display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.pnl-rs{font-size:16px;font-weight:500}
.pnl-pct{font-size:11px}
.loading-txt{color:var(--text-dim);font-size:12px;animation:pulse 1.5s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:0.4}50%{opacity:1}}

/* REALIZED P&L CARD */
.realized-section{margin-top:20px}
.realized-card{background:var(--panel-outer-bg);border:var(--panel-outer-border);border-radius:var(--panel-outer-radius);padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.realized-card::before{content:'';position:absolute;top:0;right:0;width:168px;height:76px;pointer-events:none;border-radius:0 var(--panel-outer-radius) 0 0;background:var(--panel-glow);z-index:0}
.realized-card > *{position:relative;z-index:1}
.realized-title{font-size:10px;letter-spacing:3px;color:var(--text-dim);text-transform:uppercase;margin-bottom:14px}
.realized-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.realized-item{background:var(--panel-cell-bg);border:var(--panel-cell-border);border-radius:12px;padding:13px 15px}
.realized-ticker{font-size:13px;font-weight:500;color:var(--gold-soft);margin-bottom:6px;letter-spacing:1px}
.realized-val{font-size:16px;font-weight:500}
.realized-ops{font-size:10px;color:var(--text-dim);margin-top:2px}

.empty{text-align:center;padding:50px 20px;color:var(--text-dim)}
.empty-icon{font-size:36px;margin-bottom:10px;opacity:0.4}
.empty-text{font-size:11px;letter-spacing:1px}

.toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(80px);background:#121212;border:1px solid var(--gold);border-radius:12px;padding:10px 20px;font-size:12px;color:var(--gold-soft);opacity:0;transition:all 0.3s ease;z-index:500;letter-spacing:0.5px;white-space:nowrap;box-shadow:var(--shadow)}
.toast.show{transform:translateX(-50%) translateY(0);opacity:1}

.context-card{background:var(--panel-inset-bg);border:var(--panel-inset-border);border-radius:12px;padding:12px 14px;margin-bottom:14px}
.context-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}
.context-item{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px}
.context-label{font-size:9px;letter-spacing:2px;color:var(--text-dim);text-transform:uppercase;margin-bottom:4px}
.context-value{font-size:13px;color:var(--text)}
.context-value.up{color:var(--gold-soft)} .context-value.down{color:var(--red)}
.note-cell{max-width:220px;white-space:normal;line-height:1.4;color:var(--text-mid)}
.btn-row{display:flex;gap:6px}
.btn-edit{background:transparent;color:var(--gold-soft);border:1px solid rgba(0,214,143,0.2);border-radius:6px;padding:4px 10px;cursor:pointer;font-size:11px;font-family:'Inter',sans-serif;transition:all 0.15s}
.btn-edit:hover{background:var(--gold-dim)}
.small-help{font-size:10px;color:var(--text-dim)}


.welcome-name-wrap{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:2px 0 18px}
.welcome-name-input{background:rgba(255,255,255,0.022);border:1px solid rgba(255,255,255,0.07);border-radius:14px;padding:12px 14px;color:var(--text);font-family:'Inter',sans-serif;font-size:14px;outline:none;min-width:280px;max-width:420px;flex:1}
.welcome-name-input:focus{border-color:rgba(201,178,122,0.9);box-shadow:0 0 0 4px rgba(201,178,122,0.08)}
.welcome-name-input::placeholder{color:var(--text-dim)}
.welcome-name-btn{border:none;border-radius:14px;padding:12px 16px;background:linear-gradient(135deg,#ece2c4,#c9b27a);color:#111;font-family:'Inter',sans-serif;font-size:13px;font-weight:700;cursor:pointer}
@media (max-width:640px){.welcome-name-input{min-width:100%}.welcome-name-btn{width:100%}.calendar-nav{grid-template-columns:repeat(2,1fr)}}


.date-display-btn{
  width:100%;
  min-height:46px;
  border:1px solid rgba(255,255,255,0.07);
  border-radius:14px;
  background:rgba(255,255,255,0.022);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:14px;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  transition:border-color 0.18s, box-shadow 0.18s, background 0.18s;
}
.date-display-btn:hover{
  border-color:rgba(201,178,122,0.55);
  background:rgba(255,255,255,0.03);
}
.date-display-btn:focus{
  outline:none;
  border-color:rgba(201,178,122,0.9);
  box-shadow:0 0 0 4px rgba(201,178,122,0.08);
}
.date-display-text-empty{color:var(--text-dim)}
.date-display-icon{
  color:var(--gold-soft);
  font-size:12px;
  opacity:0.85;
}
.calendar-modal{
  position:fixed;
  inset:0;
  background:rgba(6,10,16,0.68);
  backdrop-filter:blur(8px);
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  z-index:300;
}
.calendar-modal.open{display:flex}
.calendar-card{
  width:min(100%, 390px);
  background:linear-gradient(180deg, rgba(19,26,35,0.98), rgba(14,20,29,0.98));
  border:1px solid rgba(255,255,255,0.07);
  border-radius:24px;
  box-shadow:0 28px 70px rgba(0,0,0,0.42);
  overflow:hidden;
}
.calendar-topbar{
  padding:20px 20px 12px;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.calendar-kicker{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:6px;
}
.calendar-title{
  font-family:'Cormorant Garamond',serif;
  color:#f7f1e4;
  font-size:34px;
  line-height:1;
}
.calendar-close{
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  cursor:pointer;
}
.calendar-nav{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:8px;
  padding:0 20px 14px;
}
.calendar-nav-btn,.calendar-footer-btn{
  border:1px solid rgba(255,255,255,0.07);
  border-radius:12px;
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  font-family:'Inter',sans-serif;
  font-size:11px;
  letter-spacing:1px;
  text-transform:uppercase;
  padding:10px 8px;
  cursor:pointer;
  transition:all 0.16s;
}
.calendar-nav-btn:hover,.calendar-footer-btn:hover{
  border-color:rgba(201,178,122,0.4);
  color:#f0e2b7;
}
.calendar-weekdays{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:8px;
  padding:0 20px 8px;
}
.calendar-weekdays span{
  text-align:center;
  font-size:10px;
  letter-spacing:1.6px;
  text-transform:uppercase;
  color:var(--text-dim);
}
.calendar-grid{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  grid-template-rows:repeat(6, 1fr);
  gap:8px;
  padding:0 20px 20px;
  min-height:300px;
}
.calendar-day{
  aspect-ratio:1/1;
  border-radius:14px;
  border:1px solid rgba(255,255,255,0.05);
  background:rgba(255,255,255,0.02);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:13px;
  cursor:pointer;
  transition:all 0.16s;
}
.calendar-day.placeholder{
  visibility:hidden;
  pointer-events:none;
}
.calendar-day:hover{
  border-color:rgba(201,178,122,0.38);
  color:#f0e2b7;
  transform:translateY(-1px);
}
.calendar-day.muted{
  opacity:0.35;
}
.calendar-day.today{
  box-shadow:inset 0 0 0 1px rgba(201,178,122,0.6);
  color:#f0e2b7;
}
.calendar-day.selected{
  background:linear-gradient(135deg,#ece2c4,#c9b27a);
  color:#111;
  border-color:transparent;
  font-weight:700;
}
.calendar-footer{
  display:flex;
  gap:10px;
  padding:0 20px 20px;
}
.calendar-footer-btn{
  flex:1;
}
.calendar-footer-btn.ghost{
  background:rgba(255,255,255,0.02);
}


/* DEV PANEL */
.dev-panel{
  position:fixed;
  left:12px;
  right:12px;
  bottom:12px;
  z-index:9999;
  background:rgba(38, 8, 8, 0.98);
  border:1px solid rgba(255, 92, 92, 0.55);
  border-top:2px solid #ff4b4b;
  border-radius:14px;
  box-shadow:0 16px 40px rgba(0, 0, 0, 0.38);
  color:#ffd1d1;
  font-family:'Inter',sans-serif;
  max-height:min(42vh, 360px);
  overflow:hidden;
}
.dev-panel__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-bottom:1px solid rgba(255, 92, 92, 0.18);
}
.dev-panel__title{
  display:flex;
  align-items:center;
  gap:8px;
  color:#ff8b8b;
  font-size:12px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
}
.dev-panel__actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.dev-panel__btn{
  border:1px solid rgba(255, 92, 92, 0.45);
  background:transparent;
  color:#ff9a9a;
  border-radius:8px;
  padding:4px 10px;
  font-size:11px;
  cursor:pointer;
}
.dev-panel__btn:hover{
  background:rgba(255, 92, 92, 0.08);
}
.dev-panel__meta{
  padding:8px 12px 0;
  color:#ffb1b1;
  font-size:11px;
}
.dev-panel__log{
  overflow:auto;
  max-height:min(30vh, 250px);
  padding:8px 12px 12px;
}
.dev-panel__line{
  padding:8px 0;
  border-bottom:1px solid rgba(255, 92, 92, 0.12);
  white-space:pre-wrap;
  word-break:break-word;
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:11px;
  line-height:1.45;
}
.dev-panel__line:last-child{
  border-bottom:none;
}
.dev-panel__line--warn{
  color:#ffd3d3;
}
.dev-panel__line--error{
  color:#ff9f9f;
}
@media (max-width: 640px){
  .dev-panel{
    left:8px;
    right:8px;
    bottom:8px;
    max-height:48vh;
  }
  .dev-panel__header{
    align-items:flex-start;
    flex-direction:column;
  }
  .dev-panel__actions{
    width:100%;
  }
}


.field input.field-invalid,
.date-display-btn.field-invalid,
.toggle-wrap.field-invalid{
  border-color: rgba(255, 107, 129, 0.9) !important;
  box-shadow: 0 0 0 4px rgba(255, 107, 129, 0.10);
}
.field-label-invalid{
  color: #ffb3bf !important;
}


.header-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.reports-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(8, 12, 18, 0.68);
  backdrop-filter:blur(8px);
  z-index:320;
}
.reports-modal.open{
  display:flex;
}
.reports-card{
  width:min(100%, 560px);
  background:var(--panel-outer-bg);
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  box-shadow:0 30px 80px rgba(0,0,0,0.44);
  overflow:hidden;
  position:relative;
}
.reports-card::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:200px;
  height:96px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.reports-card__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:24px 24px 10px;
  position:relative;
  z-index:1;
}
.reports-card__kicker{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:6px;
}
.reports-card__title{
  font-family:'Cormorant Garamond',serif;
  color:#f7f1e4;
  font-size:44px;
  line-height:0.95;
}
.reports-card__close{
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  cursor:pointer;
  flex-shrink:0;
}
.reports-card__body{
  padding:0 24px 24px;
  position:relative;
  z-index:1;
}
.reports-select{
  width:100%;
  min-height:48px;
  border:1px solid rgba(255,255,255,0.07);
  border-radius:16px;
  background:rgba(255,255,255,0.022);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:15px;
  padding:12px 14px;
  outline:none;
}
.reports-card__note{
  margin-top:14px;
  border-radius:var(--panel-inset-radius);
  padding:14px 16px;
  background:var(--panel-inset-bg);
  border:var(--panel-inset-border);
  color:var(--text-mid);
  font-size:13px;
  line-height:1.55;
}
.reports-card__note strong{
  color:#f3efe4;
  font-weight:600;
}
.reports-error{
  margin-top:12px;
  border-radius:14px;
  padding:12px 14px;
  background:rgba(255,107,129,0.08);
  border:1px solid rgba(255,107,129,0.35);
  color:#ffb3bf;
  font-size:12px;
  line-height:1.45;
}
.reports-actions-group{
  margin-top:18px;
  border:1px solid rgba(255,255,255,0.06);
  border-radius:18px;
  padding:16px;
  background:rgba(255,255,255,0.016);
}
.reports-actions-group__label{
  font-size:10px;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:10px;
}
.reports-card__actions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}
.reports-card__actions > *{
  width:100%;
}
.reports-card__actions .btn-add{
  margin-top:0;
}
@media (max-width: 640px){
  .reports-card{
    width:min(100%, 96vw);
    border-radius:24px;
  }
  .reports-card__header{
    padding:20px 20px 10px;
  }
  .reports-card__body{
    padding:0 20px 20px;
  }
  .reports-card__title{
    font-size:36px;
  }
  .reports-card__actions{
    grid-template-columns:1fr;
  }
}


.card-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.card-brand{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.card-logo-badge{
  width:38px;
  height:38px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  flex-shrink:0;
  padding:0;
  box-sizing:border-box;
}
.card-logo-badge img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  border-radius:13px;
}
.card-logo-fallback{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  letter-spacing:0.8px;
  color:var(--gold-soft);
  font-weight:700;
  border-radius:13px;
  background:rgba(255,255,255,0.02);
}
.card-ticker-wrap{
  min-width:0;
}
.card-ticker-sub{
  font-size:10px;
  color:var(--text-dim);
  letter-spacing:1.1px;
  text-transform:uppercase;
  margin-top:-6px;
}


.app-select{
  width:100%;
  min-height:46px;
  border:1px solid rgba(255,255,255,0.07);
  border-radius:14px;
  background-color:rgba(255,255,255,0.022);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:14px;
  padding:12px 42px 12px 14px;
  outline:none;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23e7dcc0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><polyline points='6 9 12 15 18 9'/></svg>");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:16px;
  color-scheme:dark;
}
.app-select:focus{
  border-color:rgba(201,178,122,0.9);
  box-shadow:0 0 0 4px rgba(201,178,122,0.08);
}
.app-select option{
  background-color:#141b24;
  color:#f3efe4;
}
.app-select option[value=""]{
  color:#cbbfa4;
}
.app-select.field-invalid{
  border-color: rgba(255, 107, 129, 0.9) !important;
  box-shadow: 0 0 0 4px rgba(255, 107, 129, 0.10);
}


.summary-card .up,
.summary-card .pnl-rs.up,
.summary-card .pnl-pct.up,
.summary-card .price-val.up{
  color: var(--green) !important;
}
.summary-card .down,
.summary-card .pnl-rs.down,
.summary-card .pnl-pct.down,
.summary-card .price-val.down{
  color: var(--red) !important;
}


.ops-filters-panel{
  margin-bottom:14px;
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  background:var(--panel-outer-bg);
  box-shadow:var(--shadow);
  overflow:hidden;
  position:relative;
}
.ops-filters-panel::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:148px;
  height:70px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.ops-filters-toggle{
  width:100%;
  border:none;
  background:transparent;
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:12px;
  letter-spacing:1.6px;
  text-transform:uppercase;
  padding:14px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
  position:relative;
  z-index:1;
}
.ops-filters-toggle:hover{
  background:rgba(255,255,255,0.02);
}
.ops-filters-toggle-icon{
  color:var(--gold-soft);
  font-size:13px;
  transition:transform 0.18s ease;
}
.ops-filters-panel.collapsed .ops-filters-toggle-icon{
  transform:rotate(-90deg);
}
.ops-filters-body{
  padding:0 14px 14px;
  position:relative;
  z-index:1;
}
.ops-filters-panel.collapsed .ops-filters-body{
  display:none;
}
.ops-filter-grid{
  display:grid;
  grid-template-columns:minmax(280px, 1.8fr) minmax(180px, 0.9fr);
  gap:12px;
}
.ops-filter-grid--top{
  margin-bottom:12px;
}
.ops-period-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding-top:4px;
}
.ops-period-chip{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid rgba(255,255,255,0.06);
  background:linear-gradient(180deg, rgba(255,255,255,0.028), rgba(255,255,255,0.014));
  color:var(--text-mid);
  border-radius:999px;
  padding:9px 14px;
  min-height:38px;
  font-family:'Inter',sans-serif;
  font-size:12px;
  font-weight:500;
  letter-spacing:0.2px;
  line-height:1;
  cursor:pointer;
  transition:all 0.18s ease;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.025);
  outline:none;
}
.ops-period-chip:hover{
  border-color:rgba(201,178,122,0.24);
  color:var(--text);
  background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));
}
.ops-period-chip:focus{
  border-color:rgba(201,178,122,0.42);
  box-shadow:0 0 0 4px rgba(201,178,122,0.08);
}
.ops-period-chip.active{
  border-color:rgba(201,178,122,0.34);
  background:linear-gradient(180deg, rgba(201,178,122,0.18), rgba(201,178,122,0.10));
  color:#f5ecd3;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.05), 0 8px 18px rgba(0,0,0,0.14);
}
.ops-custom-range{
  display:grid;
  grid-template-columns:repeat(2, minmax(180px, 1fr));
  gap:12px;
  margin-top:14px;
}
@media (max-width: 920px){
  .ops-filter-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width: 720px){
  .ops-custom-range{
    grid-template-columns:1fr;
  }
}


.ops-period-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.ops-period-chip--ghost{
  min-height:32px;
  padding:7px 12px;
  font-size:11px;
  color:var(--text-mid);
  background:rgba(255,255,255,0.015);
}
@media (max-width: 720px){
  .ops-period-header{
    align-items:flex-start;
    flex-direction:column;
  }
}


.reports-actions-group{
  margin-top:16px;
}
.reports-actions-group__label{
  font-size:10px;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:8px;
}



#opsSearchInput{
  text-transform:uppercase !important;
}
#opsSearchInput::placeholder{
  text-transform:none !important;
}
#opsSearchField{
  position:relative;
}
#opsSearchSuggestions{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:40;
  border:1px solid rgba(255,255,255,0.08);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(21,29,41,0.98), rgba(17,24,36,0.98));
  box-shadow:0 22px 50px rgba(0,0,0,0.42);
  overflow:hidden;
}
#opsSearchSuggestions .autocomplete-item{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:2px;
  width:100%;
  border:none;
  border-bottom:1px solid rgba(255,255,255,0.05);
  background:transparent;
  text-align:left;
  padding:14px 16px;
  cursor:pointer;
}
#opsSearchSuggestions .autocomplete-item:last-child{
  border-bottom:none;
}
#opsSearchSuggestions .autocomplete-item:hover,
#opsSearchSuggestions .autocomplete-item:focus{
  background:rgba(255,255,255,0.035);
  outline:none;
}
#opsSearchSuggestions .ac-main{
  color:#f5ecd3;
  font-size:13px;
  font-weight:600;
  letter-spacing:0.8px;
}
#opsSearchSuggestions .ac-sub{
  color:var(--text-dim);
  font-size:11px;
  letter-spacing:0.4px;
  text-transform:none;
}


.realized-item .up,
.realized-item .card-val.up,
.realized-item .realized-ticker.up,
.realized-item .realized-value.up,
.closed-item .up,
.closed-item .card-val.up,
.closed-item .closed-ticker.up,
.closed-item .closed-value.up{
  color: var(--green) !important;
}
.realized-item .down,
.realized-item .card-val.down,
.realized-item .realized-ticker.down,
.realized-item .realized-value.down,
.closed-item .down,
.closed-item .card-val.down,
.closed-item .closed-ticker.down,
.closed-item .closed-value.down{
  color: var(--red) !important;
}


.seleto-banner{
  margin:0 0 22px;
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  background:var(--panel-outer-bg);
  box-shadow:var(--shadow);
  overflow:hidden;
  position:relative;
}
.seleto-banner::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:min(55%, 320px);
  height:120px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.seleto-banner__inner{
  padding:22px;
  position:relative;
  z-index:1;
}
.seleto-banner__kicker{
  font-size:10px;
  letter-spacing:2.8px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:8px;
}
.seleto-banner__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.35fr) minmax(280px, 0.95fr);
  gap:18px;
  align-items:start;
}
.seleto-banner__title{
  font-family:'Cormorant Garamond',serif;
  font-size:42px;
  line-height:0.95;
  color:var(--ivory);
  margin-bottom:10px;
}
.seleto-banner__desc{
  color:var(--text-mid);
  font-size:14px;
  line-height:1.55;
  max-width:640px;
}
.seleto-banner__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:16px;
}
.seleto-banner__features{
  display:grid;
  gap:10px;
}
.seleto-feature{
  border:var(--panel-cell-border);
  border-radius:var(--panel-inset-radius);
  padding:14px 14px 12px;
  background:var(--panel-cell-bg);
}
.seleto-feature__title{
  color:var(--gold-soft);
  font-size:12px;
  font-weight:600;
  letter-spacing:0.5px;
  margin-bottom:4px;
}
.seleto-feature__desc{
  color:var(--text-dim);
  font-size:12px;
  line-height:1.45;
}
.btn-seleto{
  border:none;
  border-radius:14px;
  padding:12px 16px;
  background:linear-gradient(135deg, #ece2c4, #c9b27a);
  color:#111;
  font-family:'Inter',sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:1px;
  cursor:pointer;
}
.btn-seleto-ghost{
  border:var(--panel-inset-border);
  border-radius:14px;
  padding:12px 16px;
  background:var(--panel-inset-bg);
  color:var(--text-mid);
  font-family:'Inter',sans-serif;
  font-size:12px;
  font-weight:600;
  letter-spacing:0.6px;
  cursor:pointer;
}
.seleto-note{
  margin-top:14px;
  color:var(--text-dim);
  font-size:11px;
  letter-spacing:0.4px;
}
@media (max-width: 860px){
  .seleto-banner__grid{
    grid-template-columns:1fr;
  }
  .seleto-banner__title{
    font-size:36px;
  }
}


.panel-footer{
  margin-top:14px;
  padding-top:12px;
  border-top:var(--panel-inset-border);
  font-size:10px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:var(--text-dim);
}


.seleto-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:3px 8px;
  border-radius:999px;
  border:1px solid rgba(201,178,122,0.28);
  background:rgba(201,178,122,0.10);
  color:#f0e2b7;
  font-size:10px;
  letter-spacing:0.8px;
  text-transform:uppercase;
  font-weight:600;
}
.lock-icon{
  display:inline-block;
  font-size:11px;
  line-height:1;
  opacity:0.9;
}
.locked-col-label{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.locked-cell{
  color:var(--text-dim);
  font-style:italic;
}


.seleto-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:2px 7px;
  border-radius:999px;
  border:1px solid rgba(201,178,122,0.22);
  background:rgba(201,178,122,0.08);
  color:#e8d9b0;
  font-size:9px;
  letter-spacing:0.7px;
  text-transform:uppercase;
  font-weight:600;
  white-space:nowrap;
}
.lock-icon{
  display:inline-block;
  font-size:10px;
  line-height:1;
  opacity:0.9;
}
.locked-col-label{
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.locked-cell{
  color:var(--text-dim);
}
.locked-cell .seleto-badge{
  transform:translateY(-1px);
}


.table-wrap{
  overflow-x:auto;
}
table{
  min-width:1400px;
  table-layout:auto;
}
thead th.actions-col,
tbody td.actions-col{
  width:104px;
  min-width:104px;
  text-align:right;
}
tbody td.actions-col .btn-row{
  justify-content:flex-end;
}
tbody td, thead th{
  vertical-align:middle;
}


/* Livro do Sócio — fit sem barra horizontal */
.table-wrap{
  overflow-x:hidden !important;
}

#view-ops table{
  width:100% !important;
  min-width:0 !important;
  table-layout:fixed !important;
}

#view-ops thead th,
#view-ops tbody td{
  padding:10px 8px !important;
  text-align:center !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

#view-ops thead th{
  font-size:8px !important;
  letter-spacing:1.6px !important;
}

#view-ops tbody td{
  font-size:11px !important;
}

#view-ops .ticker-cell{
  text-align:center !important;
}

#view-ops .note-cell{
  max-width:none !important;
  white-space:nowrap !important;
  text-align:center !important;
}

#view-ops .tag-buy,
#view-ops .tag-sell{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

#view-ops .actions-col{
  width:88px !important;
  min-width:88px !important;
  text-align:center !important;
}

#view-ops .actions-col .btn-row{
  justify-content:center !important;
  gap:6px !important;
}

#view-ops .btn-edit,
#view-ops .btn-del{
  padding:4px 8px !important;
}

#view-ops th:nth-child(1), #view-ops td:nth-child(1){width:9% !important;}   /* Data */
#view-ops th:nth-child(2), #view-ops td:nth-child(2){width:8% !important;}   /* Ticker */
#view-ops th:nth-child(3), #view-ops td:nth-child(3){width:6% !important;}   /* Ativo */
#view-ops th:nth-child(4), #view-ops td:nth-child(4){width:8% !important;}   /* Tipo */
#view-ops th:nth-child(5), #view-ops td:nth-child(5){width:5% !important;}   /* QTD */
#view-ops th:nth-child(6), #view-ops td:nth-child(6){width:9% !important;}   /* Preço */
#view-ops th:nth-child(7), #view-ops td:nth-child(7){width:8% !important;}   /* PM Antes */
#view-ops th:nth-child(8), #view-ops td:nth-child(8){width:10% !important;}  /* Total Op */
#view-ops th:nth-child(9), #view-ops td:nth-child(9){width:8% !important;}   /* Saldo */
#view-ops th:nth-child(10), #view-ops td:nth-child(10){width:10% !important;}/* Resultado */
#view-ops th:nth-child(11), #view-ops td:nth-child(11){width:9% !important;} /* Nota */
#view-ops th:nth-child(12), #view-ops td:nth-child(12){width:10% !important;}/* Ações */

@media (max-width: 1200px){
  #view-ops thead th,
  #view-ops tbody td{
    padding:9px 6px !important;
  }

  #view-ops thead th{
    font-size:7px !important;
    letter-spacing:1.2px !important;
  }

  #view-ops tbody td{
    font-size:10px !important;
  }

  #view-ops .tag-buy,
  #view-ops .tag-sell{
    font-size:9px !important;
    padding:2px 6px !important;
  }

  #view-ops .btn-edit,
  #view-ops .btn-del{
    font-size:10px !important;
    padding:3px 7px !important;
  }
}


#view-ops thead th{
  white-space:normal !important;
  line-height:1.25 !important;
}
#view-ops thead th br{
  content:"";
}
#view-ops thead th .locked-col-label{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  gap:4px !important;
  line-height:1.2 !important;
}


#view-ops th:nth-child(4), #view-ops td:nth-child(4){width:9% !important;}   /* Tipo da Operação */
#view-ops th:nth-child(6), #view-ops td:nth-child(6){width:9% !important;}   /* Preço Unitário */
#view-ops th:nth-child(7), #view-ops td:nth-child(7){width:10% !important;}  /* Preço Médio Anterior */
#view-ops th:nth-child(8), #view-ops td:nth-child(8){width:10% !important;}  /* Total da Operação */
#view-ops th:nth-child(10), #view-ops td:nth-child(10){width:11% !important;}/* Resultado da Venda */


.seleto-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(8, 12, 18, 0.68);
  backdrop-filter:blur(8px);
  z-index:330;
}
.seleto-modal.open{
  display:flex;
}
.seleto-modal__card{
  width:min(100%, 760px);
  background:var(--panel-outer-bg);
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  box-shadow:0 30px 80px rgba(0,0,0,0.44);
  overflow:hidden;
  position:relative;
}
.seleto-modal__card::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:200px;
  height:100px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.seleto-modal__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:24px 24px 10px;
  position:relative;
  z-index:1;
}
.seleto-modal__kicker{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:6px;
}
.seleto-modal__title{
  font-family:'Cormorant Garamond',serif;
  color:#f7f1e4;
  font-size:44px;
  line-height:0.95;
}
.seleto-modal__close{
  width:40px;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  cursor:pointer;
  flex-shrink:0;
}
.seleto-modal__body{
  padding:0 24px 24px;
  position:relative;
  z-index:1;
}
.seleto-modal__intro{
  color:var(--text-mid);
  font-size:14px;
  line-height:1.6;
  margin-bottom:16px;
  max-width:680px;
}
.seleto-modal__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}
.seleto-plan{
  border:var(--panel-cell-border);
  border-radius:var(--panel-inset-radius);
  background:var(--panel-cell-bg);
  padding:16px;
}
.seleto-plan--premium{
  background:linear-gradient(180deg, rgba(212,175,55,0.09), var(--panel-cell-bg));
  border-color:rgba(212,175,55,0.26);
}
.seleto-plan__label{
  font-size:10px;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:8px;
}
.seleto-plan__title{
  color:#f3efe4;
  font-size:18px;
  font-weight:700;
  margin-bottom:10px;
}
.seleto-list{
  display:grid;
  gap:8px;
}
.seleto-list__item{
  color:var(--text-mid);
  font-size:13px;
  line-height:1.45;
}
.seleto-list__item strong{
  color:#f0e2b7;
  font-weight:600;
}
.seleto-modal__cta{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:18px;
  position:relative;
  z-index:1;
}
.seleto-cta-note{
  margin-top:14px;
  color:var(--text-dim);
  font-size:11px;
  letter-spacing:0.4px;
}
@media (max-width: 760px){
  .seleto-modal__card{
    width:min(100%, 96vw);
    border-radius:24px;
  }
  .seleto-modal__header{
    padding:20px 20px 10px;
  }
  .seleto-modal__body{
    padding:0 20px 20px;
  }
  .seleto-modal__title{
    font-size:36px;
  }
  .seleto-modal__grid{
    grid-template-columns:1fr;
  }
}


.radar-form{
  background:var(--panel-outer-bg);
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  padding:18px;
  margin-bottom:16px;
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
}
.radar-form::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:148px;
  height:70px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.radar-form > *{position:relative;z-index:1}
.radar-grid{
  display:grid;
  grid-template-columns:1.05fr 0.75fr 0.75fr 0.75fr 1.1fr auto;
  gap:12px;
  align-items:end;
}
.radar-grid .btn-add{
  margin-top:0;
  height:46px;
}
.radar-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:5px 10px;
  border-radius:999px;
  font-size:10px;
  letter-spacing:1px;
  text-transform:uppercase;
  font-weight:700;
}
.radar-status--low{
  background:rgba(255,107,129,0.10);
  color:var(--red);
}
.radar-status--near-min{
  background:rgba(127,191,154,0.12);
  color:var(--green);
}
.radar-status--inside{
  background:rgba(201,178,122,0.12);
  color:var(--gold-soft);
}
.radar-status--near-max{
  background:rgba(201,178,122,0.12);
  color:var(--gold-soft);
}
.radar-status--high{
  background:rgba(255,107,129,0.10);
  color:var(--red);
}
.radar-status--no-range{
  background:rgba(255,255,255,0.06);
  color:var(--text-mid);
}
.radar-range{
  margin-top:12px;
}
.radar-range__track{
  position:relative;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,0.06);
  overflow:hidden;
}
.radar-range__fill{
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  background:linear-gradient(90deg, rgba(127,191,154,0.85), rgba(201,178,122,0.85));
  border-radius:999px;
}
.radar-range__marker{
  position:absolute;
  top:50%;
  width:14px;
  height:14px;
  border-radius:999px;
  background:#f3efe4;
  border:2px solid rgba(17,24,36,0.75);
  transform:translate(-50%, -50%);
  box-shadow:0 4px 10px rgba(0,0,0,0.25);
}
.radar-note{
  margin-top:10px;
  color:var(--text-dim);
  font-size:12px;
  line-height:1.45;
  min-height:34px;
}
.radar-card .card-row{
  margin-bottom:8px;
}
.radar-card .btn-row{
  justify-content:flex-end;
  margin-top:10px;
}
.radar-card-actions{
  flex-wrap:wrap;
  align-items:center;
}
.radar-card-edit{
  margin-top:10px;
  padding-top:12px;
  border-top:1px solid var(--border);
}
.radar-card-edit .field{
  margin-bottom:8px;
}
.radar-card-edit .field:last-of-type{
  margin-bottom:0;
}
.radar-card--editing .radar-status{
  opacity:0.85;
}
.radar-card .price-val{
  font-size:19px;
}
.radar-hint{
  color:var(--text-dim);
  font-size:11px;
  margin-top:6px;
}
@media (max-width: 980px){
  .radar-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 640px){
  .radar-grid{
    grid-template-columns:1fr;
  }
}


#radarTickerField{
  position:relative;
}
#radarAcList{
  top:calc(100% + 4px);
}
#rTicker{
  text-transform:uppercase;
}
#rTicker::placeholder{
  text-transform:none;
}


.form-card .section-header{
  margin-bottom:12px !important;
}


body.radar-mode #mainFormCard{
  display:none;
}


#rCurrentPrice[readonly]{
  opacity:0.95;
  cursor:default;
}


.radar-day-change{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  margin-top:2px;
  font-size:12px;
  font-weight:600;
}
.radar-day-change.up{
  color:var(--green);
}
.radar-day-change.down{
  color:var(--red);
}
.radar-day-change.neutral{
  color:var(--text-mid);
}


#view-radar .section-header .field label{
  margin-bottom:4px;
}
#radarVariationSelect{
  min-height:38px;
  padding-top:8px;
  padding-bottom:8px;
  font-size:12px;
}


.radar-header{
  margin-bottom:12px;
}
.radar-toolbar{
  display:flex;
  justify-content:flex-end;
  margin-bottom:16px;
}
.radar-toolbar__field{
  width:min(220px, 100%);
  margin:0;
}
.radar-toolbar__field label{
  margin-bottom:6px;
}
@media (max-width: 720px){
  .radar-toolbar{
    justify-content:stretch;
  }
  .radar-toolbar__field{
    width:100%;
  }
}


.radar-toolbar{
  display:flex;
  justify-content:flex-end;
  margin:10px 0 16px;
}
.radar-toolbar__field{
  width:min(220px, 100%);
  margin:0;
}
.radar-toolbar__field label{
  margin-bottom:6px;
}
@media (max-width: 720px){
  .radar-toolbar{
    justify-content:stretch;
  }
  .radar-toolbar__field{
    width:100%;
  }
}

.feature-hidden{display:none !important;}

.confirm-modal{
  position:fixed;
  inset:0;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(8, 12, 18, 0.68);
  backdrop-filter:blur(8px);
  z-index:340;
}
.confirm-modal.open{
  display:flex;
}
.confirm-modal__card{
  width:min(100%, 520px);
  background:var(--panel-outer-bg);
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  box-shadow:0 30px 80px rgba(0,0,0,0.44);
  overflow:hidden;
  position:relative;
}
.confirm-modal__card::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:180px;
  height:88px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.confirm-modal__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:22px 22px 10px;
  position:relative;
  z-index:1;
}
.confirm-modal__kicker{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:6px;
}
.confirm-modal__title{
  font-family:'Cormorant Garamond',serif;
  color:#f7f1e4;
  font-size:38px;
  line-height:0.95;
}
.confirm-modal__close{
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  cursor:pointer;
  flex-shrink:0;
}
.confirm-modal__body{
  padding:0 22px 22px;
  position:relative;
  z-index:1;
}
.confirm-modal__text{
  color:var(--text-mid);
  font-size:14px;
  line-height:1.6;
}
.confirm-modal__warn{
  margin-top:14px;
  border-radius:16px;
  padding:14px 16px;
  background:rgba(255,107,129,0.08);
  border:1px solid rgba(255,107,129,0.22);
  color:#ffb3bf;
  font-size:13px;
  line-height:1.55;
}
.confirm-modal__actions{
  display:flex;
  gap:10px;
  margin-top:18px;
}
.confirm-btn-danger{
  border:none;
  border-radius:14px;
  padding:12px 16px;
  background:linear-gradient(135deg, #ff9aa9, #ff6b81);
  color:#1a1113;
  font-family:'Inter',sans-serif;
  font-size:12px;
  font-weight:700;
  letter-spacing:0.8px;
  cursor:pointer;
}
@media (max-width: 640px){
  .confirm-modal__actions{
    flex-direction:column;
  }
}


.seleto-inline-badge{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin-left:8px;
  padding:2px 7px;
  border-radius:999px;
  border:1px solid rgba(212,175,55,0.22);
  background:rgba(212,175,55,0.08);
  color:var(--gold-soft);
  font-size:9px;
  letter-spacing:0.7px;
  text-transform:uppercase;
  font-weight:600;
  vertical-align:middle;
}
.is-premium-disabled{
  opacity:0.92;
}


.dev-mode-toggle{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  margin:0 0 14px;
}
.dev-mode-chip{
  border:1px solid rgba(255,255,255,0.08);
  border-radius:999px;
  padding:7px 12px;
  background:rgba(255,255,255,0.025);
  color:var(--text-mid);
  font-size:11px;
  letter-spacing:0.8px;
  text-transform:uppercase;
  cursor:pointer;
}
.dev-mode-chip.active{
  border-color:rgba(201,178,122,0.28);
  background:rgba(201,178,122,0.10);
  color:#f0e2b7;
}
.premium-analysis{
  margin:18px 0 0;
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  background:var(--panel-outer-bg);
  padding:18px;
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
}
.premium-analysis::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:168px;
  height:76px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.premium-analysis > *{
  position:relative;
  z-index:1;
}
.premium-analysis__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
  flex-wrap:wrap;
}
.premium-analysis__title{
  font-size:13px;
  letter-spacing:1.4px;
  text-transform:uppercase;
  color:var(--gold-soft);
  line-height:1.35;
}
.premium-analysis__grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  padding:14px;
  border-radius:var(--panel-inset-radius);
  background:var(--panel-inset-bg);
  border:var(--panel-inset-border);
  isolation:isolate;
}
.premium-analysis__item{
  border:var(--panel-cell-border);
  border-radius:var(--panel-inset-radius);
  padding:16px;
  background:var(--panel-cell-bg);
}
.premium-analysis__label{
  color:var(--text-mid);
  font-size:10px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  margin-bottom:8px;
  font-weight:600;
}
.premium-analysis__value{
  color:var(--text);
  font-size:22px;
  font-weight:700;
  letter-spacing:0.02em;
  line-height:1.2;
}
.premium-analysis__sub{
  color:var(--text-mid);
  font-size:11px;
  line-height:1.5;
  margin-top:10px;
}
.premium-analysis--locked{
  position:relative;
  overflow:hidden;
}
.premium-analysis--locked::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(9,13,18,0.12), rgba(9,13,18,0.30));
  pointer-events:none;
  z-index:2;
}
.premium-analysis__cta{
  margin-top:12px;
  display:flex;
  justify-content:flex-end;
}
@media (max-width: 860px){
  .premium-analysis__grid{
    grid-template-columns:1fr;
  }
}


.dev-mode-toggle{
  display:flex !important;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0 14px;
}


.app-header__main{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:start;
}
.app-header__identity{
  min-width:0;
}
.dev-mode-toggle{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.dev-mode-toggle--header{
  justify-content:flex-end;
  align-self:start;
  margin-top:8px;
}
.dev-mode-chip{
  min-width:92px;
  justify-content:center;
  text-align:center;
}
@media (max-width: 900px){
  .app-header__main{
    grid-template-columns:1fr;
  }
  .dev-mode-toggle--header{
    justify-content:flex-start;
    margin-top:2px;
  }
}


/* Alinhamento fino do formulário principal */
.form-row.cols-2{
  align-items:start;
}
.form-row.cols-2 > .field,
.form-row.cols-2 > .toggle-wrap{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
}
.form-row.cols-2 > .field label,
.form-row.cols-2 > .toggle-wrap > label{
  min-height:32px;
  display:flex;
  align-items:flex-end;
}
.date-field .date-display-btn,
.toggle{
  min-height:68px;
}


/* Form principal — diagramação limpa e uniforme */
.form-row.cols-2{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:18px;
  align-items:start;
}
.form-row.cols-2 > .field,
.form-row.cols-2 > .toggle-wrap{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  min-width:0;
}
.form-row.cols-2 > .field label,
.form-row.cols-2 > .toggle-wrap > label{
  min-height:auto !important;
  height:20px;
  display:flex;
  align-items:center;
  white-space:nowrap;
}
.form-row.cols-2 .date-display-btn,
.form-row.cols-2 .app-select,
.form-row.cols-2 .toggle,
.form-row.cols-2 input[type="text"]{
  height:68px !important;
  min-height:68px !important;
}
.form-row.cols-2 .toggle-wrap > label{
  letter-spacing:2px;
}
@media (max-width: 900px){
  .form-row.cols-2{
    grid-template-columns:1fr !important;
  }
}


/* Refinamento visual do formulário principal */
.form-card{
  padding:34px 36px 26px !important;
  border-radius:var(--panel-outer-radius) !important;
}

.form-title{
  font-size:13px !important;
  letter-spacing:4px !important;
  margin-bottom:6px !important;
}

.form-row{
  gap:22px !important;
  margin-bottom:20px !important;
}

.form-row.cols-3{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  align-items:start !important;
}

.form-row.cols-2{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:22px !important;
  align-items:start !important;
}

.form-row > .field,
.form-row > .toggle-wrap{
  min-width:0 !important;
}

.form-row label,
.form-row .toggle-wrap > label{
  font-size:11px !important;
  letter-spacing:3px !important;
  margin-bottom:10px !important;
  white-space:nowrap !important;
}

.form-row input[type="text"],
.form-row input[type="number"],
.form-row .date-display-btn,
.form-row .app-select,
.form-row .toggle{
  height:60px !important;
  min-height:60px !important;
  border-radius:20px !important;
}

.form-row input[type="text"],
.form-row input[type="number"],
.form-row .app-select{
  padding-left:20px !important;
  padding-right:20px !important;
  font-size:16px !important;
}

.form-row .date-display-btn{
  padding-left:20px !important;
  padding-right:20px !important;
}

.form-row .toggle{
  overflow:hidden !important;
}

.form-row .toggle button{
  min-height:60px !important;
  font-size:16px !important;
  letter-spacing:1.5px !important;
}

#fNote{
  height:60px !important;
}

.context-card{
  min-height:0 !important;
  padding:16px 20px !important;
  border-radius:18px !important;
  font-size:12px !important;
  line-height:1.45 !important;
  color:var(--text-dim) !important;
  background:var(--panel-inset-bg) !important;
  border:var(--panel-inset-border) !important;
}

.btn-add{
  margin-top:18px !important;
  height:66px !important;
  border-radius:20px !important;
  font-size:18px !important;
  letter-spacing:2px !important;
}

.panel-footer{
  margin-top:22px !important;
  padding-top:16px !important;
  font-size:10px !important;
  letter-spacing:2px !important;
  opacity:0.9 !important;
}

@media (max-width: 1100px){
  .form-row.cols-3{
    grid-template-columns:1fr !important;
  }

  .form-row.cols-2{
    grid-template-columns:1fr !important;
  }

  .form-card{
    padding:28px 24px 24px !important;
  }
}


/* =========================================================
   STEP 1 — FOUNDATION / DESIGN TOKENS / BASE COMPONENTS
   Objetivo: unificar espaçamentos, alturas, raios e controles
   sem alterar a funcionalidade da página.
   ========================================================= */
:root{
  --ui-panel-padding: 22px;
  --ui-panel-radius: 22px;
  --ui-control-height: 46px;
  --ui-control-radius: 14px;
  --ui-control-padding-x: 14px;
  --ui-label-gap: 6px;
  --ui-row-gap: 12px;
  --ui-grid-gap: 12px;
  --ui-toolbar-gap: 8px;
  --ui-context-radius: 12px;
  --ui-context-padding: 12px 14px;
  --ui-button-radius: 12px;
  --ui-button-height: 46px;
  --ui-label-font-size: 9px;
  --ui-label-letter-spacing: 2px;
  --ui-small-font-size: 10px;
  --ui-field-font-size: 14px;
}

/* Base futura para componentes reutilizáveis */
.ui-panel{
  background:linear-gradient(180deg,rgba(255,255,255,0.02),rgba(255,255,255,0.01));
  border:1px solid var(--border);
  border-radius:var(--ui-panel-radius);
  box-shadow:var(--shadow);
}
.ui-panel-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--ui-toolbar-gap);
  flex-wrap:wrap;
}
.ui-grid-2{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:var(--ui-grid-gap);
}
.ui-grid-3{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:var(--ui-grid-gap);
}
.ui-field{
  display:flex;
  flex-direction:column;
  gap:var(--ui-label-gap);
  position:relative;
  min-width:0;
}
.ui-label{
  font-size:var(--ui-label-font-size);
  letter-spacing:var(--ui-label-letter-spacing);
  color:var(--text-dim);
  text-transform:uppercase;
}
.ui-control{
  width:100%;
  min-height:var(--ui-control-height);
  border:1px solid rgba(255,255,255,0.07);
  border-radius:var(--ui-control-radius);
  background:rgba(255,255,255,0.022);
  color:var(--text);
  font-family:'Inter',sans-serif;
  font-size:var(--ui-field-font-size);
  padding:12px var(--ui-control-padding-x);
  outline:none;
}

/* Aliases da base para os componentes já existentes */
.form-card,
.radar-form,
.ops-filters-panel,
.realized-card,
.reports-actions-group,
.context-card{
  border-radius:var(--ui-panel-radius);
}

.form-card,
.radar-form{
  padding:var(--ui-panel-padding);
}

.form-row{
  gap:var(--ui-grid-gap) !important;
  margin-bottom:var(--ui-row-gap) !important;
}

.field{
  gap:var(--ui-label-gap) !important;
}

.field label,
.toggle-wrap > label{
  font-size:var(--ui-label-font-size) !important;
  letter-spacing:var(--ui-label-letter-spacing) !important;
  margin-bottom:0 !important;
}

.field input,
.app-select,
.date-display-btn{
  min-height:var(--ui-control-height) !important;
  border-radius:var(--ui-control-radius) !important;
  padding-left:var(--ui-control-padding-x) !important;
  padding-right:var(--ui-control-padding-x) !important;
  font-size:var(--ui-field-font-size) !important;
}

.toggle-wrap{
  min-height:var(--ui-control-height) !important;
  border-radius:var(--ui-control-radius) !important;
}

.toggle-btn{
  min-height:var(--ui-control-height) !important;
}

.btn-add{
  min-height:var(--ui-button-height) !important;
  border-radius:var(--ui-button-radius) !important;
}

.btn-ghost,
.refresh-btn,
.btn-edit,
.btn-del{
  border-radius:10px;
}

.context-card{
  padding:var(--ui-context-padding) !important;
  border-radius:var(--ui-context-radius) !important;
}

.context-grid,
.realized-grid,
.summary-grid{
  gap:var(--ui-grid-gap);
}

.header-actions,
.btn-row,
.seleto-banner__actions,
.seleto-modal__cta,
.confirm-modal__actions{
  gap:var(--ui-toolbar-gap);
}

/* Labels do formulário principal mais próximos do campo,
   seguindo o ritmo visual do painel Buscar no Livro */
.form-card .field{
  gap:4px !important;
}
.form-card .field label,
.form-card .toggle-wrap > label{
  margin-bottom:0 !important;
}

/* Responsivo base */
@media (max-width: 900px){
  .ui-grid-3{
    grid-template-columns:1fr;
  }
  .ui-grid-2{
    grid-template-columns:1fr;
  }
}


/* Fix: header do painel de filtros não deve invadir visualmente o conteúdo */
.ops-filters-panel{
  overflow:hidden;
}

.ops-filters-toggle{
  position:relative;
  z-index:1;
  margin:0;
}

.ops-filters-body{
  position:relative;
  z-index:2;
  padding-top:12px !important;
}

.ops-filters-toggle:hover{
  background:rgba(255,255,255,0.015) !important;
}


/* Ajustar SOMENTE o dropdown do Buscar para seguir o padrão visual do Ticker */
#opsSearchSuggestions{
  position:absolute;
  top:calc(100% + 4px);
  left:0;
  right:0;
  z-index:40;
  border:1px solid var(--border2);
  border-radius:8px;
  background:var(--surface3);
  box-shadow:none;
  overflow:hidden;
}

#opsSearchSuggestions .autocomplete-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  width:100%;
  border:none;
  border-bottom:1px solid var(--border);
  background:transparent;
  text-align:left;
  padding:9px 12px;
  min-height:auto;
  cursor:pointer;
}

#opsSearchSuggestions .autocomplete-item:last-child{
  border-bottom:none;
}

#opsSearchSuggestions .autocomplete-item:hover,
#opsSearchSuggestions .autocomplete-item:focus{
  background:var(--gold-dim);
  outline:none;
}

#opsSearchSuggestions .ac-main{
  color:var(--gold-soft);
  font-weight:500;
  letter-spacing:1px;
  font-size:12px;
}

#opsSearchSuggestions .ac-sub{
  color:var(--text-dim);
  font-size:10px;
  text-align:right;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:160px;
  text-transform:none;
  font-weight:400;
  letter-spacing:0;
}


/* Livro do Sócio — versão mobile em cards (mesma casca premium dos outros painéis) */
.ops-mobile-list{
  display:none;
}
.ops-mobile-card{
  position:relative;
  border:var(--panel-outer-border);
  border-radius:var(--panel-inset-radius);
  background:var(--panel-outer-bg);
  box-shadow:var(--shadow);
  overflow:hidden;
}
.ops-mobile-card::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:min(42vw, 120px);
  height:52px;
  pointer-events:none;
  border-radius:0 var(--panel-inset-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.ops-mobile-card + .ops-mobile-card{
  margin-top:12px;
}
.ops-mobile-card__summary{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px 12px;
  position:relative;
  z-index:1;
}
.ops-mobile-card__main{
  min-width:0;
  display:grid;
  gap:6px;
}
.ops-mobile-card__top{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.ops-mobile-ticker{
  font-size:18px;
  font-weight:700;
  letter-spacing:0.6px;
  color:var(--gold-soft);
}
.ops-mobile-date{
  font-size:11px;
  color:var(--text-dim);
  letter-spacing:0.4px;
}
.ops-mobile-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}
.ops-mobile-meta-item{
  display:grid;
  gap:4px;
}
.ops-mobile-meta-label{
  font-size:9px;
  letter-spacing:1.8px;
  text-transform:uppercase;
  color:var(--text-dim);
}
.ops-mobile-meta-value{
  font-size:13px;
  color:var(--text);
}
.ops-mobile-expand{
  border:var(--panel-inset-border);
  background:var(--panel-inset-bg);
  color:var(--text-mid);
  border-radius:12px;
  padding:8px 10px;
  font-size:10px;
  letter-spacing:1.1px;
  text-transform:uppercase;
  cursor:pointer;
  flex-shrink:0;
}
.ops-mobile-expand:hover{
  border-color:var(--border2);
  color:var(--text);
}
.ops-mobile-card__details{
  position:relative;
  z-index:1;
  border-top:var(--panel-inset-border);
  padding:12px 14px 14px;
  display:none;
}
.ops-mobile-card.open .ops-mobile-card__details{
  display:grid;
  gap:12px;
}
.ops-mobile-detail-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}
.ops-mobile-note{
  padding:10px 12px;
  border:var(--panel-cell-border);
  border-radius:12px;
  background:var(--panel-cell-bg);
  color:var(--text-mid);
  font-size:12px;
  line-height:1.45;
}
.ops-mobile-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.ops-mobile-empty{
  text-align:center;
  padding:28px 18px;
  color:var(--text-dim);
  border:var(--panel-outer-border);
  border-radius:var(--panel-inset-radius);
  background:var(--panel-outer-bg);
  box-shadow:var(--shadow);
}
@media (max-width: 760px){
  #view-ops .table-wrap{
    display:none !important;
  }
  #view-ops .ops-mobile-list{
    display:block;
  }
  .ops-mobile-meta{
    grid-template-columns:1fr;
  }
  .ops-mobile-detail-grid{
    grid-template-columns:1fr 1fr;
  }
}


/* Ajuste fino: centralização de textos em botões/abas */
.tab,
.btn-ghost,
.refresh-btn,
.ops-mobile-expand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.tab{
  line-height:1.25;
}

.btn-ghost{
  min-height:38px;
}

@media (max-width: 760px){
  .tab{
    min-height:58px;
    padding-left:10px;
    padding-right:10px;
  }

  .seleto-inline-badge{
    margin-left:6px;
  }
}


/* Correção mobile do modal Sócio Seleto */
.seleto-modal{
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  align-items:flex-start;
}

.seleto-modal.open{
  display:flex;
}

.seleto-modal__card{
  margin:24px auto;
  max-height:none;
}

.seleto-modal__body{
  overflow:visible;
}

.seleto-modal__cta{
  display:flex;
  align-items:stretch;
  gap:10px;
}

.seleto-modal__cta .btn-seleto,
.seleto-modal__cta .btn-seleto-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  min-height:44px;
  line-height:1.25;
}

@media (max-width: 760px){
  .seleto-modal{
    padding:14px;
    align-items:flex-start;
  }

  .seleto-modal__card{
    width:100%;
    margin:14px auto;
    border-radius:var(--panel-outer-radius);
  }

  .seleto-modal__header{
    padding:20px 18px 8px;
  }

  .seleto-modal__body{
    padding:0 18px 18px;
  }

  .seleto-modal__title{
    font-size:34px;
  }

  .seleto-modal__cta{
    flex-direction:column;
  }

  .seleto-modal__cta .btn-seleto,
  .seleto-modal__cta .btn-seleto-ghost{
    width:100%;
    min-height:48px;
  }
}


body.modal-open{
  overflow:hidden;
}
@media (max-width: 760px){
  body.modal-open{
    position:fixed;
    width:100%;
  }
}


/* Mobile custom select — paleta Mesa do Sócio */
.mobile-select-trigger{
  display:none;
}

.mobile-select-sheet{
  position:fixed;
  inset:0;
  display:none;
  z-index:360;
}

.mobile-select-sheet.open{
  display:block;
}

.mobile-select-sheet__backdrop{
  position:absolute;
  inset:0;
  background:rgba(4, 6, 10, 0.72);
  backdrop-filter:blur(6px);
}

.mobile-select-sheet__panel{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  max-height:min(76vh, 620px);
  overflow:hidden;
  border:1px solid rgba(212,175,55,0.35);
  border-radius:28px;
  background:
    radial-gradient(circle at top left, rgba(212,175,55,0.10), transparent 32%),
    linear-gradient(180deg, rgba(19,26,35,0.985), rgba(12,17,25,0.985));
  box-shadow:0 30px 80px rgba(0,0,0,0.52);
}

.mobile-select-sheet__handle{
  width:56px;
  height:5px;
  border-radius:999px;
  background:rgba(240,215,122,0.38);
  margin:12px auto 8px;
}

.mobile-select-sheet__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding:12px 18px 14px;
  border-bottom:1px solid rgba(255,255,255,0.06);
}

.mobile-select-sheet__kicker{
  font-size:10px;
  letter-spacing:2.4px;
  text-transform:uppercase;
  color:var(--text-dim);
  margin-bottom:6px;
}

.mobile-select-sheet__title{
  font-family:'Cormorant Garamond',serif;
  color:#f6f0de;
  font-size:34px;
  line-height:1;
}

.mobile-select-sheet__close{
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  color:var(--text-mid);
  font-family:'Inter',sans-serif;
  cursor:pointer;
  flex-shrink:0;
}

.mobile-select-sheet__options{
  max-height:calc(min(76vh, 620px) - 118px);
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding:8px;
}

.mobile-select-option{
  width:100%;
  min-height:58px;
  border:none;
  border-bottom:1px solid rgba(255,255,255,0.055);
  background:transparent;
  color:#f6f0de;
  font-family:'Inter',sans-serif;
  font-size:20px;
  font-weight:500;
  text-align:left;
  padding:0 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  cursor:pointer;
}

.mobile-select-option:last-child{
  border-bottom:none;
}

.mobile-select-option:hover,
.mobile-select-option:focus{
  outline:none;
  background:rgba(212,175,55,0.08);
}

.mobile-select-option.active{
  border:1px solid rgba(212,175,55,0.42);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(212,175,55,0.16), rgba(212,175,55,0.06));
  color:var(--gold-soft);
  margin:4px 0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04);
}

.mobile-select-option__check{
  width:30px;
  height:30px;
  border-radius:999px;
  border:1px solid rgba(212,175,55,0.42);
  color:var(--gold-soft);
  display:none;
  align-items:center;
  justify-content:center;
  font-size:16px;
  flex-shrink:0;
}

.mobile-select-option.active .mobile-select-option__check{
  display:inline-flex;
}

@media (max-width: 760px){
  #fAssetType.app-select{
    display:none !important;
  }

  .mobile-select-trigger{
    width:100%;
    min-height:46px;
    border:1px solid rgba(255,255,255,0.07);
    border-radius:14px;
    background-color:rgba(255,255,255,0.022);
    color:var(--text);
    font-family:'Inter',sans-serif;
    font-size:14px;
    padding:12px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
  }

  .mobile-select-trigger:focus{
    outline:none;
    border-color:rgba(201,178,122,0.9);
    box-shadow:0 0 0 4px rgba(201,178,122,0.08);
  }

  .mobile-select-trigger__icon{
    color:var(--gold-soft);
    font-size:12px;
    opacity:0.85;
  }
}


/* Refinamento do seletor mobile: mais próximo da delicadeza do calendário */
.mobile-select-sheet__panel{
  left:20px !important;
  right:20px !important;
  bottom:auto !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  max-height:min(82vh, 520px) !important;
  border-radius:24px !important;
  border:1px solid rgba(255,255,255,0.07) !important;
  background:linear-gradient(180deg, rgba(19,26,35,0.98), rgba(14,20,29,0.98)) !important;
  box-shadow:0 28px 70px rgba(0,0,0,0.42) !important;
}

.mobile-select-sheet__handle{
  display:none !important;
}

.mobile-select-sheet__header{
  padding:20px 20px 12px !important;
  border-bottom:none !important;
}

.mobile-select-sheet__kicker{
  font-size:10px !important;
  letter-spacing:2.4px !important;
  text-transform:uppercase !important;
  color:var(--text-dim) !important;
  margin-bottom:6px !important;
}

.mobile-select-sheet__title{
  font-family:'Cormorant Garamond',serif !important;
  color:#f7f1e4 !important;
  font-size:34px !important;
  line-height:1 !important;
}

.mobile-select-sheet__close{
  width:34px !important;
  height:34px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,0.08) !important;
  background:rgba(255,255,255,0.03) !important;
  color:var(--text-mid) !important;
}

.mobile-select-sheet__options{
  padding:0 20px 20px !important;
  max-height:calc(min(82vh, 520px) - 96px) !important;
}

.mobile-select-option{
  min-height:52px !important;
  border:1px solid rgba(255,255,255,0.05) !important;
  border-radius:14px !important;
  background:rgba(255,255,255,0.02) !important;
  color:var(--text) !important;
  font-size:15px !important;
  font-weight:400 !important;
  letter-spacing:0.2px !important;
  padding:0 14px !important;
  margin-bottom:8px !important;
}

.mobile-select-option:last-child{
  margin-bottom:0 !important;
}

.mobile-select-option:hover,
.mobile-select-option:focus{
  border-color:rgba(201,178,122,0.38) !important;
  color:#f0e2b7 !important;
  background:rgba(255,255,255,0.03) !important;
  outline:none !important;
}

.mobile-select-option.active{
  border-color:rgba(201,178,122,0.6) !important;
  background:linear-gradient(135deg,#ece2c4,#c9b27a) !important;
  color:#111 !important;
  font-weight:700 !important;
  margin:0 0 8px !important;
  box-shadow:none !important;
}

.mobile-select-option__check{
  width:24px !important;
  height:24px !important;
  border-radius:999px !important;
  border:1px solid rgba(17,17,17,0.22) !important;
  color:#111 !important;
  font-size:13px !important;
}

@media (max-width: 760px){
  .mobile-select-sheet{
    padding:20px !important;
  }

  .mobile-select-sheet__panel{
    left:20px !important;
    right:20px !important;
    width:auto !important;
  }

  .mobile-select-trigger{
    min-height:46px !important;
    border-radius:14px !important;
  }
}


/* Seletores mobile genéricos com o mesmo estilo delicado do calendário */
.mobile-select-trigger--generic{
  display:none;
}

@media (max-width: 760px){
  select.app-select.mobile-native-hidden{
    display:none !important;
  }

  .mobile-select-trigger--generic{
    width:100%;
    min-height:46px;
    border:1px solid rgba(255,255,255,0.07);
    border-radius:14px;
    background-color:rgba(255,255,255,0.022);
    color:var(--text);
    font-family:'Inter',sans-serif;
    font-size:14px;
    padding:12px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    cursor:pointer;
  }

  .mobile-select-trigger--generic:focus{
    outline:none;
    border-color:rgba(201,178,122,0.9);
    box-shadow:0 0 0 4px rgba(201,178,122,0.08);
  }

  .mobile-select-trigger--generic .mobile-select-trigger__icon{
    color:var(--gold-soft);
    font-size:12px;
    opacity:0.85;
  }

  .mobile-select-trigger--generic[disabled]{
    opacity:0.55;
    cursor:not-allowed;
  }
}


/* Refinamento dos seletores genéricos mobile: mais delicados, sem título quebrado */
.mobile-select-sheet--generic .mobile-select-sheet__panel{
  left:20px !important;
  right:20px !important;
  top:50% !important;
  bottom:auto !important;
  transform:translateY(-50%) !important;
  max-height:min(78vh, 500px) !important;
  border-radius:24px !important;
}

.mobile-select-sheet--generic .mobile-select-sheet__header{
  align-items:center !important;
  padding:20px 20px 12px !important;
  gap:12px !important;
}

.mobile-select-sheet--generic .mobile-select-sheet__title{
  font-size:clamp(27px, 7vw, 32px) !important;
  line-height:1 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  max-width:calc(100vw - 118px) !important;
}

.mobile-select-sheet--generic .mobile-select-sheet__options{
  padding:0 20px 20px !important;
}

.mobile-select-sheet--generic .mobile-select-option{
  min-height:50px !important;
  font-size:14px !important;
  font-weight:400 !important;
  letter-spacing:0.15px !important;
  border-radius:14px !important;
  margin-bottom:8px !important;
}

.mobile-select-sheet--generic .mobile-select-option.active{
  font-weight:700 !important;
}

.mobile-select-sheet--generic .mobile-select-option__check{
  width:22px !important;
  height:22px !important;
  font-size:12px !important;
}


/* Ajuste específico: botão Adicionar do Radar */
.radar-grid .btn-add{
  height:46px !important;
  min-height:46px !important;
  align-self:end !important;
  margin-top:0 !important;
  padding:0 18px !important;
  border-radius:14px !important;
  font-size:13px !important;
  letter-spacing:1.2px !important;
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

@media (min-width: 981px){
  .radar-grid{
    grid-template-columns:1.05fr 0.75fr 0.75fr 0.75fr 1.1fr 180px !important;
  }
}


/* Sócio Seleto — Comparativo CDI */
.cdi-section{margin-top:18px}
/* Fundo 100% estável: qualquer gradiente no .cdi-card inteiro “viaja” quando a Memória DEV aumenta a altura do card e a parte de cima parece amarelar. Card = sólido; brilho só num retângulo fixo em px no canto do título. */
.cdi-card{
  position:relative;
  border:var(--panel-outer-border);
  border-radius:var(--panel-outer-radius);
  background:var(--panel-outer-bg);
  padding:18px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.cdi-card::before{
  content:'';
  position:absolute;
  top:0;
  right:0;
  width:168px;
  height:76px;
  pointer-events:none;
  border-radius:0 var(--panel-outer-radius) 0 0;
  background:var(--panel-glow);
  z-index:0;
}
.cdi-card > *{
  position:relative;
  z-index:1;
}
.cdi-card__head{margin-bottom:16px}
.cdi-card__head-text{min-width:0}
.cdi-card__title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
.cdi-card__title-row .cdi-card__title{
  flex:1;
  min-width:min(100%,200px);
  margin:0;
}
.cdi-card__title-row .cdi-status{flex-shrink:0}
.cdi-card__title{font-size:13px;letter-spacing:1.4px;text-transform:uppercase;color:var(--gold-soft);line-height:1.35}
.cdi-card__sub{margin-top:8px;color:var(--text-mid);font-size:11px;line-height:1.5}
.cdi-status{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:7px 12px;font-size:10px;letter-spacing:1px;text-transform:uppercase;font-weight:600;color:var(--text-mid);background:rgba(255,255,255,.04)}
.cdi-status.loading{color:var(--gold-soft);border-color:rgba(212,175,55,.28);background:rgba(212,175,55,.06)}
.cdi-status.error{color:#ffb3bf;border-color:rgba(255,107,129,.28);background:rgba(255,107,129,.06)}
.cdi-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding:14px;
  border-radius:var(--panel-inset-radius);
  background:var(--panel-inset-bg);
  border:var(--panel-inset-border);
  isolation:isolate;
}
.cdi-metric{border:var(--panel-cell-border);border-radius:var(--panel-inset-radius);padding:16px;background:var(--panel-cell-bg)}
.cdi-metric__label{color:var(--text-mid);font-size:10px;letter-spacing:1.2px;text-transform:uppercase;margin-bottom:8px;font-weight:600}
.cdi-metric__value{color:var(--text);font-size:22px;font-weight:700;letter-spacing:0.02em;line-height:1.2}
.cdi-metric__value.up{color:var(--green)}
.cdi-metric__value.down{color:var(--red)}
.cdi-metric__sub{color:var(--text-mid);font-size:11px;line-height:1.5;margin-top:10px}
.cdi-list{
  margin-top:14px;
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:var(--panel-inset-radius);
  background:var(--panel-inset-bg);
  border:var(--panel-inset-border);
  isolation:isolate;
}
.cdi-row{display:grid;grid-template-columns:.8fr 1fr 1fr 1fr;gap:10px;align-items:center;border:var(--panel-cell-border);border-radius:14px;padding:12px 14px;background:var(--panel-cell-bg)}
.cdi-row__ticker{color:var(--gold-soft);font-weight:700;letter-spacing:.8px}
.cdi-row__label{color:var(--text-dim);font-size:9px;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:3px}
.cdi-row__value{color:var(--text);font-size:12px}
.cdi-row__value.up{color:var(--green)}
.cdi-row__value.down{color:var(--red)}
.cdi-actions{display:flex;justify-content:flex-end;margin-top:12px}
.cdi-card--locked{position:relative;overflow:hidden}
.cdi-card--locked::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,13,18,.08),rgba(9,13,18,.22));pointer-events:none;z-index:2}
@media(max-width:760px){.cdi-grid{grid-template-columns:1fr}.cdi-row{grid-template-columns:1fr;gap:8px}}


/* Configurações do Comparativo CDI */
.cdi-config-panel{
  margin:0 0 14px;
  padding:14px 16px 16px;
  border-radius:var(--panel-inset-radius);
  background:var(--panel-inset-bg);
  border:var(--panel-inset-border);
  display:grid;
  gap:12px;
}
.cdi-config{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  align-items:end;
  margin:0;
}
.cdi-config .field{
  margin:0;
}
.cdi-config .field label{
  font-size:10px;
  letter-spacing:1.2px;
  color:var(--text-mid);
  font-weight:600;
  margin-bottom:7px;
  display:block;
}
.cdi-config .field input[type="number"]{
  width:100%;
  max-width:100%;
  box-sizing:border-box;
  min-height:46px;
  padding:11px 12px;
  font-size:14px;
  font-weight:600;
  border-radius:12px;
}
.cdi-mode-toggle{
  display:flex;
  width:100%;
  border:1px solid var(--border);
  border-radius:14px;
  overflow:hidden;
  min-height:46px;
  background:rgba(255,255,255,0.022);
}
.cdi-mode-toggle button{
  flex:1;
  border:none;
  background:transparent;
  color:var(--text-dim);
  font-family:'Inter',sans-serif;
  font-size:11px;
  font-weight:700;
  letter-spacing:1px;
  text-transform:uppercase;
  cursor:pointer;
}
.cdi-mode-toggle button.active{
  background:linear-gradient(135deg, rgba(212,175,55,0.16), rgba(212,175,55,0.08));
  color:var(--gold-soft);
}
.cdi-config-note{
  margin:0;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(212,175,55,0.04);
  border:1px solid var(--border);
  color:var(--text-mid);
  font-size:11px;
  line-height:1.5;
}
@media(max-width:760px){
  .cdi-config{
    grid-template-columns:1fr;
  }
}


.cdi-dev-audit{margin-top:14px;border:1px dashed rgba(212,175,55,.28);border-radius:18px;background:rgba(212,175,55,.035);overflow:hidden}
.cdi-dev-audit__toggle{width:100%;border:none;background:transparent;color:var(--gold-soft);font-family:'Inter',sans-serif;font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.cdi-dev-audit__body{border-top:1px solid rgba(212,175,55,.16);padding:14px;display:grid;gap:12px}
.cdi-dev-audit__note{color:var(--text-dim);font-size:11px;line-height:1.45}
.cdi-dev-asset{border:1px solid rgba(255,255,255,.06);border-radius:16px;background:rgba(255,255,255,.018);padding:14px}
.cdi-dev-asset__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}
.cdi-dev-asset__ticker{color:var(--gold-soft);font-size:16px;font-weight:800;letter-spacing:.8px}
.cdi-dev-asset__diff{font-size:13px;font-weight:700}
.cdi-dev-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}
.cdi-dev-cell{border:1px solid rgba(255,255,255,.045);border-radius:12px;padding:10px;background:rgba(255,255,255,.012)}
.cdi-dev-label{color:var(--text-dim);font-size:9px;letter-spacing:1.1px;text-transform:uppercase;margin-bottom:4px}
.cdi-dev-value{color:var(--text);font-size:12px;line-height:1.35;word-break:break-word}
.cdi-dev-lots{margin-top:12px;display:grid;gap:8px}
.cdi-dev-lot{border:1px solid rgba(255,255,255,.045);border-radius:14px;padding:12px;background:rgba(0,0,0,.12)}
.cdi-dev-lot__title{color:var(--gold-soft);font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px}
@media(max-width:860px){.cdi-dev-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.cdi-dev-grid{grid-template-columns:1fr}}

