/* ===== Shell próprio do plugin e proteção contra overflow do tema ===== */
html { overflow-x: hidden !important; }
body { overflow-x: hidden !important; }
.tc-wrapper { width: 100% !important; max-width: 100% !important; min-width: 0 !important; overflow-x: clip !important; }
.tc-wrapper *, .tc-wrapper *::before, .tc-wrapper *::after { min-width: 0 !important; max-width: 100% !important; }
.tc-plugin-header {
	display:flex !important;
	align-items:center !important;
	justify-content:flex-start !important;
	width:100% !important;
	min-height:56px !important;
	padding:calc(12px + env(safe-area-inset-top, 0px)) 16px 12px !important;
	margin:0 0 20px !important;
	background: var(--tc-fundo-card, #fff) !important;
	border-bottom:1px solid var(--tc-borda) !important;
	position: sticky !important;
	top: 0 !important;
	z-index: 500 !important;
}
.tc-plugin-header-brand { display:flex !important; align-items:center !important; gap:10px !important; color:var(--tc-texto) !important; font-size:18px !important; font-weight:800 !important; text-decoration:none !important; }
.tc-plugin-header-brand img { width:auto; max-width:100% !important; max-height:none !important; object-fit:contain !important; }
.tc-plugin-header-nav { display:flex !important; align-items:center !important; gap:10px !important; margin-left:24px !important; }
.tc-plugin-header-link,
.tc-plugin-header-blog { color:var(--tc-azul) !important; font-size:14px !important; font-weight:700 !important; text-decoration:none !important; padding:7px 12px !important; border:1px solid var(--tc-borda) !important; border-radius:999px !important; background:#fff !important; }
.tc-plugin-header-link:hover,
.tc-plugin-header-blog:hover { background:var(--tc-azul-claro) !important; }
.tc-plugin-menu-toggle { display:none !important; }
.tc-plugin-footer {
	display:flex !important;
	justify-content:center !important;
	align-items:center !important;
	width:100% !important;
	padding:16px 16px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
	margin:32px 0 0 !important;
	border-top:1px solid var(--tc-borda) !important;
	color:var(--tc-texto-suave) !important;
	font-size:12px !important;
}
/* =========================================================================
   Transfer Capitólio — estilos isolados do tema.
   Tudo fica dentro de .tc-wrapper para não herdar nem vazar estilos do tema.
   ========================================================================= */

.tc-wrapper,
.tc-wrapper * {
	box-sizing: border-box !important;
}

.tc-wrapper {
	--tc-azul: #1a56db;
	--tc-azul-escuro: #123a94;
	--tc-azul-claro: #eaf1fd;
	--tc-texto: #1f2430;
	--tc-texto-suave: #6b7280;
	--tc-borda: #e5e7eb;
	--tc-fundo-card: #ffffff;
	--tc-verde: #0f9d58;
	--tc-vermelho: #d93025;
	--tc-radius: 14px;
	--tc-sombra: 0 4px 18px rgba(20, 30, 60, 0.08);
	--tc-sombra-hover: 0 10px 28px rgba(20, 30, 60, 0.16);

	all: unset;
	display: block !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	font-size: 16px !important;
	line-height: 1.5 !important;
	color: var(--tc-texto) !important;
	background: transparent;
	text-align: left;
	-webkit-font-smoothing: antialiased;
}

.tc-wrapper *,
.tc-wrapper *::before,
.tc-wrapper *::after {
	font-family: inherit;
}

.tc-wrapper p,
.tc-wrapper h1,
.tc-wrapper h2,
.tc-wrapper h3,
.tc-wrapper h4,
.tc-wrapper ul,
.tc-wrapper li {
	all: unset;
	display: block;
	box-sizing: border-box !important;
}

.tc-wrapper a {
	all: unset;
	cursor: pointer;
	box-sizing: border-box !important;
}

.tc-wrapper img {
	max-width: 100%;
	display: block;
	border: 0 !important;
	box-shadow: none !important;
}

.tc-wrapper input,
.tc-wrapper button,
.tc-wrapper select,
.tc-wrapper textarea {
	all: unset;
	box-sizing: border-box !important;
	font-family: inherit !important;
	font-size: 15px !important;
	color: var(--tc-texto) !important;
}

/* ===== Caixa de colar imagem (admin e frontend) ===== */
.tc-paste-box {
	border: 2px dashed #b9c2d0 !important;
	border-radius: var(--tc-radius) !important;
	padding: 22px !important;
	max-width: 480px;
	text-align: center !important;
	background: #f7f9fc !important;
	cursor: pointer;
	outline: none;
	transition: border-color 0.15s ease, background 0.15s ease;
}
.tc-paste-box:focus,
.tc-paste-box.tc-drag-over {
	border-color: var(--tc-azul) !important;
	background: var(--tc-azul-claro) !important;
}
.tc-paste-preview {
	min-height: 120px;
	display: flex !important;
	align-items: center;
	justify-content: center;
}
.tc-paste-preview img {
	max-width: 100%;
	max-height: 260px;
	border-radius: 10px !important;
	box-shadow: 0 1px 6px rgba(0,0,0,0.18) !important;
}
.tc-paste-instrucoes {
	color: var(--tc-texto-suave) !important;
	margin: 0 !important;
	font-size: 14px !important;
}
.tc-paste-status {
	font-size: 13px !important;
	min-height: 18px;
	margin-top: 8px !important;
}
.tc-paste-status.tc-erro { color: var(--tc-vermelho) !important; }
.tc-paste-status.tc-sucesso { color: var(--tc-verde) !important; }

/* ===== Logomarca ===== */
.tc-logo {
	display: flex !important;
	justify-content: center !important;
	margin: 0 0 24px !important;
}
.tc-logo img {
	max-width: 100% !important;
	height: auto !important;
}

/* ===== Vitrine no frontend ===== */
.tc-grid {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)) !important;
	gap: 26px !important;
	width: calc(100% - 36px) !important;
	max-width: 1180px !important;
	margin: 24px auto !important;
}
.tc-filtros-transfer { width:calc(100% - 36px) !important; max-width:1180px !important; margin:22px auto 0 !important; display:flex !important; flex-wrap:wrap !important; gap:8px !important; justify-content:center !important; }
.tc-filtro-transfer { all:unset !important; box-sizing:border-box !important; padding:9px 16px !important; border:1px solid var(--tc-borda) !important; border-radius:999px !important; background:#fff !important; color:var(--tc-texto-suave) !important; font-size:13px !important; font-weight:700 !important; cursor:pointer !important; }
.tc-filtro-transfer:hover, .tc-filtro-transfer.tc-filtro-ativo { background:var(--tc-azul) !important; border-color:var(--tc-azul) !important; color:#fff !important; }

@media (min-width: 700px) {
	.tc-grid { margin-left: auto !important; margin-right: auto !important; }
}

.tc-card {
	border: 1px solid var(--tc-borda) !important;
	border-radius: var(--tc-radius) !important;
	overflow: hidden !important;
	background: var(--tc-fundo-card) !important;
	box-shadow: var(--tc-sombra) !important;
	display: flex !important;
	flex-direction: column !important;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.tc-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--tc-sombra-hover) !important;
}

.tc-card-imagem {
	position: relative !important;
	width: 100%;
}
.tc-card-imagem img {
	width: 100% !important;
	height: 190px !important;
	object-fit: cover !important;
	display: block !important;
}
.tc-sem-imagem {
	width: 100%;
	height: 190px;
	display: flex !important;
	align-items: center;
	justify-content: center;
	background: #eef0f4 !important;
	color: #9aa1ac !important;
	font-size: 14px !important;
}

.tc-badge-valor {
	position: absolute !important;
	top: 12px !important;
	right: 12px !important;
	background: rgba(20, 30, 60, 0.82) !important;
	color: #fff !important;
	padding: 6px 12px !important;
	border-radius: 999px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	display: inline-block !important;
	backdrop-filter: blur(2px);
}
.tc-badge-valor small {
	font-weight: 400 !important;
	opacity: 0.85;
	font-size: 11px !important;
}

.tc-card-corpo {
	padding: 16px 18px 18px !important;
	display: flex !important;
	flex-direction: column !important;
	flex: 1;
}

.tc-card-titulo {
	font-size: 18px !important;
	font-weight: 700 !important;
	margin: 0 0 4px !important;
	color: var(--tc-texto) !important;
	line-height: 1.3 !important;
}

.tc-card-minimo {
	font-size: 13px !important;
	color: var(--tc-texto-suave) !important;
	margin: 0 0 14px !important;
}
.tc-card-sentido {
	display: inline-block !important;
	margin: 0 0 10px !important;
	padding: 4px 9px !important;
	border-radius: 999px !important;
	background: var(--tc-azul-claro) !important;
	color: var(--tc-azul-escuro) !important;
	font-size: 12px !important;
	font-weight: 700 !important;
}

/* ===== Botões ===== */
.tc-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: linear-gradient(135deg, var(--tc-azul), var(--tc-azul-escuro)) !important;
	color: #fff !important;
	border: none !important;
	padding: 13px 20px !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	text-align: center !important;
	margin-top: auto !important;
	transition: filter 0.15s ease, transform 0.1s ease;
	box-shadow: 0 3px 10px rgba(26, 86, 219, 0.28) !important;
}
	.tc-btn:hover { filter: brightness(1.08); }
	.tc-btn:active { transform: scale(0.98); }
	.tc-btn:disabled { opacity: 0.65 !important; cursor: not-allowed !important; }
	.tc-btn-google { background: #fff !important; color: #1f2430 !important; border: 1px solid #d5d9e2 !important; margin-top: 10px !important; box-shadow: none !important; }
	.tc-btn-google:hover { background: #f7f9fc !important; }

.tc-btn-secundario {
	background: #f1f3f6 !important;
	color: var(--tc-texto) !important;
	box-shadow: none !important;
}

.tc-btn-enviar { width: 100% !important; margin-top: 18px !important; }

/* ===== Modal de pedido ===== */
.tc-modal-overlay {
	display: none;
	position: fixed !important;
	inset: 0 !important;
	background: rgba(15, 20, 35, 0.55) !important;
	backdrop-filter: blur(3px);
	z-index: 99999 !important;
	align-items: center;
	justify-content: center;
	padding: 16px !important;
}
.tc-modal-overlay.tc-aberto { display: flex !important; }

.tc-modal {
	background: #fff !important;
	border-radius: 18px !important;
	padding: 30px !important;
	width: min(100%, 520px) !important;
	max-width: 520px !important;
	max-height: calc(100vh - 32px) !important;
	overflow-y: auto !important;
	position: relative !important;
	box-shadow: 0 20px 60px rgba(0,0,0,0.3) !important;
}
.tc-conta-overlay .tc-modal { width: min(100%, 460px) !important; max-width: 460px !important; }
.tc-conta-aba-form { width: 100% !important; }
.tc-conta-aba-form .tc-btn { width: 100% !important; margin-top: 18px !important; }

.tc-modal-fechar {
	position: absolute !important;
	top: 12px !important;
	right: 14px !important;
	background: #f1f3f6 !important;
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	line-height: 0 !important;
	cursor: pointer !important;
	color: #555 !important;
}
.tc-modal-fechar svg {
	display: block !important;
	width: 14px !important;
	height: 14px !important;
	pointer-events: none !important;
}
.tc-modal-fechar:hover { background: #e5e7eb !important; }

.tc-modal h3,
.tc-modal-titulo {
	font-size: 20px !important;
	font-weight: 700 !important;
	margin: 0 0 4px !important;
	padding-right: 30px !important;
}

.tc-modal-minimo {
	background: #fff4e5 !important;
	color: #9a5b00 !important;
	font-size: 13px !important;
	padding: 8px 12px !important;
	border-radius: 8px !important;
	margin: 10px 0 !important;
}

/* ===== Indicador de etapas ===== */
.tc-steps-indicador {
	display: flex !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 18px 0 4px !important;
}
.tc-step-dot {
	width: 26px !important;
	height: 26px !important;
	border-radius: 50% !important;
	background: #e5e7eb !important;
	color: #9aa1ac !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	flex-shrink: 0 !important;
	transition: background 0.2s ease, color 0.2s ease;
}
.tc-step-dot::before { content: "•"; }
.tc-step-dot-ativo {
	background: var(--tc-azul) !important;
	color: #fff !important;
}
.tc-step-linha {
	flex: 1 !important;
	height: 2px !important;
	background: #e5e7eb !important;
}

/* ===== Etapas do formulário ===== */
.tc-step { display: none !important; }
.tc-step.tc-step-ativa { display: block !important; animation: tc-fade-in 0.2s ease; }

@keyframes tc-fade-in {
	from { opacity: 0; transform: translateX(6px); }
	to { opacity: 1; transform: translateX(0); }
}

.tc-form-nav {
	display: flex !important;
	gap: 10px !important;
	margin-top: 18px !important;
}
.tc-form-nav .tc-btn-enviar { margin-top: 0 !important; flex: 1 !important; }
.tc-btn-voltar {
	background: #f1f3f6 !important;
	color: var(--tc-texto) !important;
	box-shadow: none !important;
	flex: 0 0 auto !important;
}

.tc-modal label,
.tc-cadastrar-box label {
	display: block !important;
	margin: 16px 0 6px !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	color: var(--tc-texto) !important;
}

.tc-modal input,
.tc-cadastrar-box input[type="text"],
.tc-cadastrar-box input[type="number"] {
	width: 100% !important;
	padding: 12px !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 10px !important;
	font-size: 15px !important;
	background: #fbfbfc !important;
	transition: border-color 0.15s ease, background 0.15s ease;
}
.tc-modal input:focus,
.tc-cadastrar-box input:focus {
	border-color: var(--tc-azul) !important;
	background: #fff !important;
}

.tc-valor-total {
	margin-top: 16px !important;
	background: var(--tc-azul-claro) !important;
	color: var(--tc-azul-escuro) !important;
	padding: 12px 14px !important;
	border-radius: 10px !important;
	font-size: 15px !important;
}
.tc-valor-total strong { font-size: 17px !important; }

/* ===== Campo Local + botão de geolocalização ===== */
.tc-campo-com-botao {
	display: flex !important;
	gap: 8px !important;
}
.tc-campo-com-botao input {
	flex: 1 !important;
}
.tc-btn-localizacao {
	all: unset !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	background: #f1f3f6 !important;
	color: var(--tc-azul-escuro) !important;
	border: 1px solid var(--tc-borda) !important;
	padding: 0 14px !important;
	border-radius: 10px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
}
.tc-btn-localizacao:hover { background: var(--tc-azul-claro) !important; }
.tc-btn-localizacao:disabled { opacity: 0.6 !important; cursor: wait !important; }

.tc-localizacao-status {
	font-size: 12px !important;
	margin: 6px 0 0 !important;
	min-height: 14px;
}
.tc-localizacao-status.tc-erro { color: var(--tc-vermelho) !important; }
.tc-localizacao-status.tc-sucesso { color: var(--tc-verde) !important; }

.tc-form-msg {
	min-height: 20px;
	font-size: 14px !important;
	margin: 12px 0 0 !important;
}
.tc-form-msg.tc-erro { color: var(--tc-vermelho) !important; }
.tc-form-msg.tc-sucesso { color: var(--tc-verde) !important; }
.tc-vazio { color: var(--tc-texto-suave) !important; font-size: 15px !important; }

/* ===== Cadastro no frontend ===== */
.tc-cadastrar-box {
	max-width: 480px;
	background: #fafbfc !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: var(--tc-radius) !important;
	padding: 24px !important;
	box-shadow: var(--tc-sombra) !important;
}
.tc-cadastrar-box h3 {
	font-size: 19px !important;
	font-weight: 700 !important;
	margin: 0 0 4px !important;
}

/* ===== Área da empresa ===== */
.tc-login-shell {
	min-height: 70vh !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 20px !important;
}
.tc-login-card {
	background: #fff !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 18px !important;
	box-shadow: var(--tc-sombra-hover) !important;
	padding: 40px 34px !important;
	max-width: 380px !important;
	width: 100% !important;
	text-align: center !important;
}
.tc-login-logo {
	max-width: 160px !important;
	max-height: 70px !important;
	width: auto !important;
	height: auto !important;
	margin: 0 auto 18px !important;
	display: block !important;
}
.tc-login-titulo {
	font-size: 22px !important;
	font-weight: 800 !important;
	margin: 0 0 6px !important;
}
.tc-login-subtitulo {
	font-size: 14px !important;
	color: var(--tc-texto-suave) !important;
	margin: 0 0 20px !important;
}
.tc-login-card label { text-align: left !important; }
.tc-login-card form { text-align: left !important; }
.tc-login-rodape {
	font-size: 12px !important;
	color: var(--tc-texto-suave) !important;
	margin: 18px 0 0 !important;
}

.tc-empresa-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
	background: linear-gradient(135deg, var(--tc-azul), var(--tc-azul-escuro)) !important;
	border-radius: var(--tc-radius) !important;
	padding: 18px 22px !important;
	margin-bottom: 20px !important;
}
.tc-empresa-header-marca {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
}
.tc-empresa-header-marca img {
	max-height: 40px !important;
	width: auto !important;
	background: #fff !important;
	border-radius: 6px !important;
	padding: 4px !important;
}
.tc-empresa-header-marca div { display: flex !important; flex-direction: column !important; }
.tc-empresa-header-marca strong {
	color: #fff !important;
	font-size: 17px !important;
	font-weight: 800 !important;
}
.tc-empresa-header-marca span {
	color: rgba(255,255,255,0.85) !important;
	font-size: 13px !important;
}
.tc-empresa-header .tc-btn-secundario {
	background: rgba(255,255,255,0.16) !important;
	color: #fff !important;
}
.tc-empresa-header .tc-btn-secundario:hover { background: rgba(255,255,255,0.28) !important; }

.tc-empresa-stats {
	display: grid !important;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
	gap: 14px !important;
	margin-bottom: 28px !important;
}
.tc-empresa-stat-card {
	background: var(--tc-fundo-card) !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 12px !important;
	padding: 16px 18px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 4px !important;
}
.tc-empresa-stat-numero {
	font-size: 22px !important;
	font-weight: 800 !important;
	color: var(--tc-texto) !important;
}
.tc-empresa-stat-label {
	font-size: 12px !important;
	color: var(--tc-texto-suave) !important;
}
.tc-empresa-stat-destaque {
	background: var(--tc-azul-claro) !important;
	border-color: transparent !important;
}
.tc-empresa-stat-destaque .tc-empresa-stat-numero { color: var(--tc-azul-escuro) !important; }

.tc-empresa-secao-titulo {
	font-size: 15px !important;
	font-weight: 700 !important;
	margin: 26px 0 12px !important;
	color: var(--tc-texto) !important;
}

.tc-empresa-topo {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	margin-bottom: 20px !important;
	flex-wrap: wrap !important;
}

.tc-empresa-lista {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
	gap: 18px !important;
}

.tc-empresa-card {
	border: 1px solid var(--tc-borda) !important;
	border-radius: var(--tc-radius) !important;
	background: var(--tc-fundo-card) !important;
	box-shadow: var(--tc-sombra) !important;
	padding: 16px 18px !important;
}
.tc-empresa-card p {
	font-size: 14px !important;
	margin: 4px 0 !important;
	color: var(--tc-texto) !important;
}

.tc-empresa-card-topo {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
	margin-bottom: 8px !important;
}
.tc-empresa-card-topo strong {
	font-size: 15px !important;
}

.tc-empresa-status {
	display: inline-block !important;
	padding: 3px 10px !important;
	border-radius: 999px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #fff !important;
	background: #6b7280 !important;
	white-space: nowrap !important;
}
.tc-empresa-status[data-status="Aceito"],
.tc-empresa-status[data-status="Concluído"] { background: var(--tc-verde) !important; }
.tc-empresa-status[data-status="Recusado"] { background: var(--tc-vermelho) !important; }
.tc-empresa-status[data-status="Enviado"] { background: #b45309 !important; }

.tc-empresa-acoes {
	display: flex !important;
	gap: 8px !important;
	margin-top: 12px !important;
}
.tc-empresa-acoes .tc-btn { padding: 9px 14px !important; font-size: 14px !important; margin: 0 !important; }

/* ===== Consulta de status do cliente ===== */
.tc-status-secao {
	border-top: 1px solid var(--tc-borda) !important;
	margin-top: 40px !important;
	padding-top: 8px !important;
}
.tc-status-resultados {
	margin-top: 16px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 12px !important;
}
.tc-status-card {
	border: 1px solid var(--tc-borda) !important;
	border-radius: 10px !important;
	padding: 12px 14px !important;
	background: #fbfbfc !important;
}
.tc-status-card-topo {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 10px !important;
}
.tc-status-card p {
	font-size: 13px !important;
	color: var(--tc-texto-suave) !important;
	margin: 6px 0 0 !important;
}
.tc-status-badge {
	display: inline-block !important;
	padding: 3px 10px !important;
	border-radius: 999px !important;
	font-size: 12px !important;
	font-weight: 700 !important;
	color: #fff !important;
	white-space: nowrap !important;
}
.tc-status-badge.tc-status-pendente { background: #b45309 !important; }
.tc-status-badge.tc-status-ok { background: var(--tc-verde) !important; }
.tc-status-badge.tc-status-erro { background: var(--tc-vermelho) !important; }
/* ===== Blog ===== */
.tc-blog-wrapper { min-height: 100vh !important; }
.tc-blog-conteudo { width: calc(100% - 36px) !important; max-width: 1100px !important; margin: 0 auto !important; }
.tc-blog-titulo { font-size: 30px !important; font-weight: 800 !important; margin: 12px 0 22px !important; }
.tc-sobre-conteudo { width: calc(100% - 36px) !important; max-width: 900px !important; margin: 0 auto !important; }
.tc-sobre-titulo { font-size: 30px !important; font-weight: 800 !important; margin: 12px 0 22px !important; }
.tc-sobre-texto, .tc-sobre-texto p { color: var(--tc-texto) !important; font-size: 16px !important; line-height: 1.7 !important; margin: 0 0 16px !important; }
.tc-sobre-texto h2 { font-size: 23px !important; font-weight: 800 !important; margin: 28px 0 12px !important; }
.tc-sobre-texto h3 { font-size: 19px !important; font-weight: 800 !important; margin: 22px 0 10px !important; }
.tc-sobre-texto ul, .tc-sobre-texto ol { display: block !important; margin: 0 0 18px 22px !important; padding-left: 20px !important; }
.tc-sobre-texto li { display: list-item !important; margin: 0 0 7px !important; }
.tc-sobre-texto a { color: var(--tc-azul) !important; text-decoration: underline !important; }
.tc-blog-grid { display:grid !important; grid-template-columns:repeat(3, minmax(0, 1fr)) !important; gap:22px !important; align-items:start !important; }
.tc-blog-card { display:block !important; width:100% !important; max-width:100% !important; overflow:hidden !important; background:#fff !important; border:1px solid var(--tc-borda) !important; border-radius:14px !important; box-shadow:var(--tc-sombra) !important; color:var(--tc-texto) !important; text-decoration:none !important; cursor:pointer !important; transition:transform .2s ease, box-shadow .2s ease !important; }
.tc-blog-card:hover { transform:translateY(-4px) !important; box-shadow:var(--tc-sombra-hover) !important; }
.tc-blog-imagem img { width:100% !important; height:190px !important; object-fit:cover !important; }
.tc-blog-card-corpo { padding:20px !important; }
.tc-blog-card h2 { font-size:20px !important; line-height:1.25 !important; font-weight:800 !important; margin:0 0 6px !important; }
.tc-blog-card time { display:block !important; color:var(--tc-texto-suave) !important; font-size:12px !important; margin-bottom:14px !important; }
.tc-blog-texto, .tc-blog-texto p { color:var(--tc-texto) !important; font-size:15px !important; line-height:1.65 !important; margin:0 0 10px !important; }
.tc-blog-ler { display:block !important; color:var(--tc-azul) !important; font-size:14px !important; font-weight:800 !important; margin-top:16px !important; }
.tc-blog-artigo { width:calc(100% - 36px) !important; max-width:860px !important; margin:0 auto !important; }
.tc-blog-voltar { display:inline-block !important; color:var(--tc-azul) !important; font-size:14px !important; font-weight:700 !important; text-decoration:none !important; margin:4px 0 22px !important; }
.tc-blog-artigo-cabecalho { margin-bottom:24px !important; }
.tc-blog-kicker { color:var(--tc-azul) !important; font-size:13px !important; font-weight:800 !important; letter-spacing:.04em !important; text-transform:uppercase !important; margin:0 0 8px !important; }
.tc-blog-artigo-cabecalho h1 { font-size:clamp(32px, 5vw, 54px) !important; line-height:1.08 !important; font-weight:850 !important; margin:0 0 12px !important; }
.tc-blog-artigo-cabecalho time { display:block !important; color:var(--tc-texto-suave) !important; font-size:14px !important; }
.tc-blog-artigo-imagem { overflow:hidden !important; border-radius:16px !important; margin:0 0 30px !important; }
.tc-blog-artigo-imagem img { width:100% !important; height:auto !important; max-height:520px !important; object-fit:cover !important; }
.tc-blog-artigo-conteudo { color:var(--tc-texto) !important; font-size:18px !important; line-height:1.8 !important; }
.tc-blog-artigo-conteudo p { display:block !important; margin:0 0 20px !important; }
.tc-blog-artigo-conteudo h2 { display:block !important; font-size:30px !important; line-height:1.2 !important; font-weight:800 !important; margin:34px 0 14px !important; }
.tc-blog-artigo-conteudo h3 { display:block !important; font-size:24px !important; line-height:1.25 !important; font-weight:800 !important; margin:28px 0 12px !important; }
.tc-blog-artigo-conteudo ul, .tc-blog-artigo-conteudo ol { display:block !important; padding-left:24px !important; margin:0 0 20px !important; }
.tc-blog-artigo-conteudo li { display:list-item !important; margin-bottom:7px !important; }
.tc-blog-artigo-conteudo a { color:var(--tc-azul) !important; text-decoration:underline !important; }

/* ===== Barra de conta do cliente ===== */
.tc-conta-barra {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
	background: #f7f9fc !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 10px !important;
	padding: 10px 16px !important;
	margin-bottom: 22px !important;
	font-size: 14px !important;
	max-width: 1100px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.tc-conta-barra span { color: var(--tc-texto) !important; }
.tc-conta-menu {
	display: flex !important;
	gap: 16px !important;
}
.tc-conta-menu a {
	color: var(--tc-azul) !important;
	font-weight: 600 !important;
	font-size: 14px !important;
	text-decoration: none !important;
}
.tc-conta-menu a:hover { text-decoration: underline !important; }

.tc-meus-pedidos-painel {
	background: #fbfbfc !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 10px !important;
	padding: 14px 16px !important;
	margin-bottom: 22px !important;
	max-width: 1100px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.tc-perfil-painel {
	width: 100% !important;
	max-width: 620px !important;
	margin: 0 auto 24px !important;
	padding: 24px 28px !important;
	background: #fff !important;
	border: 1px solid var(--tc-borda) !important;
	border-radius: 14px !important;
	box-shadow: var(--tc-sombra) !important;
}
.tc-perfil-painel h3 { font-size: 20px !important; font-weight: 800 !important; margin: 0 0 5px !important; }
.tc-perfil-ajuda { color: var(--tc-texto-suave) !important; font-size: 13px !important; margin: 0 0 16px !important; }
.tc-perfil-painel label { display: block !important; margin: 14px 0 6px !important; font-size: 13px !important; font-weight: 650 !important; }
.tc-perfil-painel input { width: 100% !important; padding: 11px 12px !important; border: 1px solid var(--tc-borda) !important; border-radius: 9px !important; background: #fbfbfc !important; font-size: 15px !important; }
.tc-perfil-painel input:focus { border-color: var(--tc-azul) !important; background: #fff !important; outline: none !important; }
.tc-perfil-painel .tc-btn-enviar { width: 100% !important; margin-top: 18px !important; }

/* ===== Modal de login/cadastro (abas) ===== */
.tc-conta-abas {
	display: flex !important;
	gap: 6px !important;
	background: #f1f3f6 !important;
	border-radius: 10px !important;
	padding: 4px !important;
	margin: 6px 0 16px !important;
}
.tc-conta-aba-btn {
	all: unset !important;
	box-sizing: border-box !important;
	flex: 1 !important;
	text-align: center !important;
	padding: 9px 0 !important;
	border-radius: 8px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--tc-texto-suave) !important;
	cursor: pointer !important;
}
.tc-conta-aba-btn.tc-aba-ativa {
	background: #fff !important;
	color: var(--tc-texto) !important;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1) !important;
}

/* ===== Responsivo ===== */
@media (max-width: 480px) {
	.tc-plugin-header { position:relative !important; justify-content:space-between !important; padding-left:12px !important; padding-right:12px !important; }
	.tc-plugin-header-brand { font-size:16px !important; max-width:calc(100% - 54px) !important; }
	.tc-plugin-header-brand img { max-width:42px !important; }
	.tc-plugin-menu-toggle { display:flex !important; flex-direction:column !important; justify-content:center !important; align-items:center !important; gap:4px !important; width:40px !important; height:40px !important; margin-left:auto !important; padding:8px !important; border:1px solid var(--tc-borda) !important; border-radius:9px !important; background:#fff !important; cursor:pointer !important; }
	.tc-plugin-menu-toggle span { display:block !important; width:20px !important; height:2px !important; border-radius:2px !important; background:var(--tc-texto) !important; transition:transform .2s ease, opacity .2s ease !important; }
	.tc-plugin-header.tc-menu-aberto .tc-plugin-menu-toggle span:nth-child(1) { transform:translateY(6px) rotate(45deg) !important; }
	.tc-plugin-header.tc-menu-aberto .tc-plugin-menu-toggle span:nth-child(2) { opacity:0 !important; }
	.tc-plugin-header.tc-menu-aberto .tc-plugin-menu-toggle span:nth-child(3) { transform:translateY(-6px) rotate(-45deg) !important; }
	.tc-plugin-header-nav { display:none !important; position:absolute !important; top:100% !important; left:12px !important; right:12px !important; z-index:600 !important; padding:8px !important; margin:0 !important; border:1px solid var(--tc-borda) !important; border-radius:10px !important; background:#fff !important; box-shadow:var(--tc-sombra-hover) !important; }
	.tc-plugin-header.tc-menu-aberto .tc-plugin-header-nav { display:flex !important; flex-direction:column !important; align-items:stretch !important; }
	.tc-plugin-header-nav .tc-plugin-header-link,
	.tc-plugin-header-nav .tc-plugin-header-blog { display:block !important; text-align:left !important; border:0 !important; border-radius:7px !important; padding:11px 12px !important; }
	.tc-grid { grid-template-columns: 1fr !important; width: calc(100% - 24px) !important; }
	.tc-filtros-transfer { width:calc(100% - 24px) !important; justify-content:flex-start !important; overflow-x:auto !important; flex-wrap:nowrap !important; }
	.tc-blog-conteudo { width: calc(100% - 24px) !important; }
	.tc-blog-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
	.tc-blog-artigo { width:calc(100% - 24px) !important; }
	.tc-blog-artigo-conteudo { font-size:16px !important; line-height:1.7 !important; }
	.tc-conta-barra, .tc-meus-pedidos-painel { width: calc(100% - 24px) !important; }
	.tc-perfil-painel { width: calc(100% - 24px) !important; padding: 20px 16px !important; }
	.tc-modal-overlay { padding: 12px !important; align-items: center !important; }
	.tc-modal,
	.tc-conta-overlay .tc-modal { width: calc(100vw - 24px) !important; max-width: none !important; max-height: calc(100vh - 24px) !important; padding: 22px 18px !important; border-radius: 14px !important; }
	.tc-modal h3 { font-size: 18px !important; }
	.tc-conta-abas { margin-bottom: 12px !important; }
	.tc-campo-com-botao { flex-direction: column !important; }
	.tc-btn-localizacao { padding: 10px !important; justify-content: center !important; }
}

/* ===== Ajustes extras para celulares e telas móveis ===== */
@media (max-width: 700px) {
	.tc-modal-overlay { display:none !important; align-items:flex-start !important; overflow-y:auto !important; overflow-x:hidden !important; width:100vw !important; max-width:none !important; padding:10px !important; }
	.tc-modal-overlay.tc-aberto { display:flex !important; }
	.tc-modal,
	.tc-conta-overlay .tc-modal { display:block !important; flex:0 0 calc(100vw - 20px) !important; width:calc(100vw - 20px) !important; min-width:calc(100vw - 20px) !important; max-width:calc(100vw - 20px) !important; max-height:calc(100dvh - 20px) !important; margin-top:auto !important; margin-right:auto !important; margin-bottom:auto !important; margin-left:auto !important; padding:48px 16px 18px !important; border-radius:14px !important; overflow-x:hidden !important; overflow-y:auto !important; }
	.tc-modal h3,
	.tc-modal-titulo { font-size:19px !important; line-height:1.25 !important; }
	.tc-modal label { font-size:13px !important; line-height:1.35 !important; }
	.tc-modal input,
	.tc-modal textarea,
	.tc-conta-aba-form { width:100% !important; max-width:100% !important; min-width:0 !important; }
	.tc-modal input { font-size:16px !important; }
	.tc-conta-abas { width:100% !important; }
	.tc-conta-aba-btn { min-width:0 !important; white-space:normal !important; }
	.tc-conta-aba-form { display:block !important; min-height:0 !important; }
	.tc-conta-aba-form .tc-btn { min-height:46px !important; padding:12px 14px !important; line-height:1.25 !important; white-space:normal !important; }
	.tc-conta-overlay .tc-modal-fechar { top:10px !important; right:10px !important; }
	.tc-conta-overlay .tc-modal { overscroll-behavior:contain !important; -webkit-overflow-scrolling:touch !important; }
	.tc-form-nav { width:100% !important; flex-wrap:wrap !important; }
	.tc-form-nav .tc-btn { min-width:0 !important; }
	.tc-btn-localizacao { width:100% !important; white-space:normal !important; text-align:center !important; }
	.tc-campo-com-botao { width:100% !important; }
}
