/* public/tv-ticket-scale.css
   Ajusta o tamanho do Order Ticket inteiro.
   Muda apenas --ui-scale (ex: 0.90 / 0.85 / 0.80)
*/

:root{
  --ui-scale: 0.75; /* 👈 muda aqui: 1.00 = grande, 0.85 = mais compacto */
}

/* aplica escala apenas ao painel direito */
.right{
  font-size: calc(16px * var(--ui-scale));
}

/* header */
.tvHdr{ padding: calc(14px * var(--ui-scale)) calc(0px * var(--ui-scale)) calc(0px * var(--ui-scale)); }
.tvBrand{ width: calc(44px * var(--ui-scale)); height: calc(44px * var(--ui-scale)); border-radius: calc(9px * var(--ui-scale)); font-size: calc(12px * var(--ui-scale)); }
.tvSym{ font-size: calc(14px * var(--ui-scale)); }
.tvEnv{ font-size: calc(12px * var(--ui-scale)); }

.tvIcon{ width: calc(34px * var(--ui-scale)); height: calc(34px * var(--ui-scale)); border-radius: calc(10px * var(--ui-scale)); }

/* bid/ask */
.tvBidAsk{ padding: 0 calc(12px * var(--ui-scale)); }
.tvBidBox,.tvAskBox{ border-radius: calc(14px * var(--ui-scale)); padding: calc(10px * var(--ui-scale)) calc(12px * var(--ui-scale)); }
.tvBidLbl,.tvAskLbl{ font-size: calc(14px * var(--ui-scale)); }
.tvBidPx,.tvAskPx{ font-size: calc(20px * var(--ui-scale)); margin-top: calc(4px * var(--ui-scale)); }
.tvSpread{ font-size: calc(12px * var(--ui-scale)); padding: calc(3px * var(--ui-scale)) calc(10px * var(--ui-scale)); border-radius: calc(10px * var(--ui-scale)); }

/* tabs */
.tvTypeTabs{ padding: 0 calc(12px * var(--ui-scale)); margin-top: calc(10px * var(--ui-scale)); }
.tvTypeTab{ font-size: calc(16px * var(--ui-scale)); padding: calc(12px * var(--ui-scale)) 0 calc(14px * var(--ui-scale)); }
.tvTypeUnderline{ height: calc(4px * var(--ui-scale)); border-radius: calc(4px * var(--ui-scale)); }

/* form */
.tvForm{ padding: calc(12px * var(--ui-scale)); padding-bottom: calc(110px * var(--ui-scale)); }
.tvFieldRow{ margin-top: calc(14px * var(--ui-scale)); }
.tvFieldTop{ font-size: calc(14px * var(--ui-scale)); margin-bottom: calc(8px * var(--ui-scale)); }

.tvField{ border-radius: calc(12px * var(--ui-scale)); padding: calc(10px * var(--ui-scale)); }
.tvFieldInput{ font-size: calc(16px * var(--ui-scale)); }
.tvFieldRight{ font-size: calc(14px * var(--ui-scale)); gap: calc(8px * var(--ui-scale)); }
.tvSpinner{ padding-left: calc(8px * var(--ui-scale)); font-size: calc(10px * var(--ui-scale)); line-height: calc(10px * var(--ui-scale)); }

/* sections */
.tvSectionHdr{ margin-top: calc(18px * var(--ui-scale)); }
.tvSectionTitle{ font-size: calc(16px * var(--ui-scale)); }
.tvCollapseBtn{ font-size: calc(16px * var(--ui-scale)); }
.tvExitTop{ font-size: calc(14px * var(--ui-scale)); margin-bottom: calc(8px * var(--ui-scale)); }
.tvAddLevel{ font-size: calc(16px * var(--ui-scale)); padding: calc(8px * var(--ui-scale)) 0; }
.mt16{ margin-top: calc(16px * var(--ui-scale)); }

/* toggle */
.tvSwitch{ width: calc(46px * var(--ui-scale)); height: calc(26px * var(--ui-scale)); }
.tvSwitchUi:before{ height: calc(20px * var(--ui-scale)); width: calc(20px * var(--ui-scale)); left: calc(3px * var(--ui-scale)); top: calc(2px * var(--ui-scale)); }
.tvSwitch input:checked + .tvSwitchUi:before{ transform: translateX(calc(20px * var(--ui-scale))); }

/* info */
.tvInfo{ margin-top: calc(18px * var(--ui-scale)); padding-top: calc(14px * var(--ui-scale)); }
.tvInfoTitle{ font-size: calc(14px * var(--ui-scale)); margin-bottom: calc(10px * var(--ui-scale)); }
.tvInfoRow{ padding: calc(8px * var(--ui-scale)) 0; }
.tvBottom{ padding: calc(12px * var(--ui-scale)); }
.tvPlaceBtn{ border-radius: calc(16px * var(--ui-scale)); padding: calc(12px * var(--ui-scale)); }
.tvPlaceMain{ font-size: calc(18px * var(--ui-scale)); }
.tvPlaceSub{ font-size: calc(13px * var(--ui-scale)); margin-top: calc(4px * var(--ui-scale)); }
/* ===== FIX: o "bottom overlay" não pode roubar cliques do form ===== */
.tvBottom{
  pointer-events: none;
}
.tvBottom .tvPlaceBtn{
  pointer-events: auto;
}

/* extra safety: garante que o form tem espaço para o botão fixo */
.tvForm{
  padding-bottom: max(160px, calc(160px * var(--ui-scale)));
}
