/* ═══════════════════════════════════════════════════════════════════
 *  [MOD-50-CSS] Painel do Indicador Profissional
 * ═══════════════════════════════════════════════════════════════════
 */

.ip-painel {
	max-width: none;
	margin: 0;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: #1e293b;
}
.ip-box {
	max-width: 1080px;
	margin: 30px auto;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	color: #1e293b;
}
/* Header e abas ocupam 100% com bg; conteúdo alinhado à .mbr-container do tema */
.ip-painel .ip-painel-head { border-radius: 0; padding: 0; }
.ip-painel-head-inner { padding: 28px 20px; display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.ip-painel-saudacao { font-size: 20px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.ip-painel-canais { margin-top: 0; font-size: 13px; color: #cbd5e1; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; row-gap: 8px; }
.ip-painel-canais small { margin: 0; }
.ip-canal-chip { padding: 6px 14px; font-size: 12px; font-weight: 700; border-radius: 20px; margin: 0; letter-spacing: .02em; }
.ip-badge--pro { margin-left: 0; padding: 5px 14px; font-size: 11px; }

.ip-painel .ip-tabs-wrap { background: #fff; border-bottom: 1px solid #e2e8f0; border-left: 0; border-right: 0; position: sticky; top: 0; z-index: 40; }
.ip-painel .ip-tabs-inner { display: flex; gap: 2px; overflow-x: auto; padding: 0 20px; }

.ip-painel .ip-tab-content-wrap { background: #f8fafc; padding: 0; border: 0; border-radius: 0; }
.ip-painel .ip-tab-content { padding: 30px 20px; background: transparent; border: 0; }

/* ── Box genérico (deslogado, form, pendente, rejeitado) ── */
.ip-box {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-radius: 14px;
	padding: 32px 28px;
}
.ip-box--muted {
	background: #f8fafc;
}
.ip-box h2 {
	margin: 0 0 14px;
	font-size: 24px;
	color: #0F172A;
}
.ip-box h3 {
	margin: 0 0 10px;
	font-size: 18px;
	color: #0F172A;
}
.ip-lead {
	font-size: 15px;
	line-height: 1.6;
	color: #475569;
	margin: 0 0 18px;
}
.ip-hint {
	font-size: 12px;
	color: #94a3b8;
	margin: 8px 0;
}

/* ── Botões ── */
.ip-btn {
	display: inline-block;
	padding: 10px 18px;
	border-radius: 8px;
	font-weight: 600;
	font-size: 14px;
	background: #f1f5f9;
	color: #0F172A;
	border: 1px solid #cbd5e1;
	cursor: pointer;
	text-decoration: none;
	transition: .15s;
}
.ip-btn:hover {
	background: #e2e8f0;
}
.ip-btn--primary {
	background: #FF6B00;
	color: #fff;
	border-color: #FF6B00;
}
.ip-btn--primary:hover {
	background: #e55b00;
	color: #fff;
}

/* ── Form de aplicação ── */
.ip-form .ip-field {
	margin-bottom: 16px;
}
.ip-form label {
	display: block;
	font-weight: 600;
	font-size: 13px;
	color: #475569;
	margin-bottom: 6px;
}
.ip-form input[type=text],
.ip-form input[type=number],
.ip-form select,
.ip-form textarea {
	width: 100%;
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 14px;
	font-family: inherit;
	box-sizing: border-box;
	background: #fff;
}
.ip-form input:focus,
.ip-form select:focus,
.ip-form textarea:focus {
	outline: none;
	border-color: #FF6B00;
	box-shadow: 0 0 0 3px rgba(255,107,0,.15);
}
.ip-canais-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 6px;
}
.ip-check {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	background: #fff;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-size: 13px;
	cursor: pointer;
}
.ip-check input[type=checkbox] {
	margin: 0;
}
.ip-check span {
	padding: 2px 10px;
	border-radius: 12px;
	font-size: 12px;
	font-weight: 600;
}
.ip-check-inline {
	font-weight: normal !important;
	font-size: 13px !important;
	color: #475569;
}
.ip-check-inline input {
	margin-right: 6px;
}

/* ── Notices inline ── */
.ip-notice {
	padding: 10px 14px;
	border-radius: 8px;
	margin: 12px 0;
	font-size: 14px;
}
.ip-notice--info { background: #eff6ff; color: #1D4ED8; border: 1px solid #bfdbfe; }
.ip-notice--warn { background: #FEF3C7; color: #92400E; border: 1px solid #FCD34D; }
.ip-notice--err  { background: #fee2e2; color: #991b1b; border: 1px solid #fca5a5; }

/* ── Painel (aprovado) ── */
.ip-painel-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
	padding: 20px 24px;
	background: linear-gradient(135deg, #0F172A 0%, #1e293b 100%);
	color: #fff;
	border-radius: 14px 14px 0 0;
	flex-wrap: wrap;
}
.ip-painel-saudacao {
	font-size: 18px;
}
.ip-painel-saudacao strong {
	color: #FF9900;
}
.ip-badge {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 12px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .08em;
	margin-left: 8px;
}
.ip-badge--pro {
	background: linear-gradient(135deg, #FFD700, #FF6B00);
	color: #0F172A;
}
.ip-painel-canais {
	margin-top: 10px;
	font-size: 13px;
	color: #cbd5e1;
}
.ip-painel-canais small {
	margin-right: 8px;
}
.ip-canal-chip {
	display: inline-block;
	padding: 3px 10px;
	border-radius: 10px;
	font-size: 11px;
	font-weight: 600;
	margin-right: 4px;
}

/* ── Abas ── */
.ip-tabs {
	display: flex;
	gap: 2px;
	background: #fff;
	border-left: 1px solid #e2e8f0;
	border-right: 1px solid #e2e8f0;
	overflow-x: auto;
}
.ip-tab {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 14px 18px;
	font-size: 14px;
	font-weight: 600;
	color: #64748b;
	text-decoration: none;
	border-bottom: 3px solid transparent;
	white-space: nowrap;
	transition: .15s;
}
.ip-tab:hover {
	color: #0F172A;
	background: #f8fafc;
}
.ip-tab.is-active {
	color: #FF6B00;
	border-bottom-color: #FF6B00;
}
.ip-tab-icon {
	font-size: 16px;
}

/* ── Conteúdo da aba ── */
.ip-tab-content {
	background: #fff;
	border: 1px solid #e2e8f0;
	border-top: 0;
	border-radius: 0 0 14px 14px;
	padding: 28px;
}

/* ── Stats grid ── */
.ip-stats-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 14px;
}
.ip-stat {
	background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
	border: 1px solid #e2e8f0;
	border-radius: 12px;
	padding: 20px 18px;
	text-align: center;
}
.ip-stat-val {
	font-size: 32px;
	font-weight: 800;
	color: #0F172A;
	line-height: 1;
	margin-bottom: 6px;
}
.ip-stat-lbl {
	font-size: 13px;
	color: #64748b;
}

/* ── Link box ── */
.ip-link-box {
	background: #f8fafc;
	border: 1px solid #e2e8f0;
	border-radius: 10px;
	padding: 18px;
}
.ip-copy-row {
	display: flex;
	gap: 8px;
	margin-top: 10px;
	flex-wrap: wrap;
}
.ip-copy-row input {
	flex: 1;
	min-width: 200px;
	padding: 10px 12px;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	font-family: monospace;
	font-size: 13px;
	background: #fff;
}
.ip-share-row {
	display: flex;
	gap: 8px;
	margin-top: 14px;
	flex-wrap: wrap;
}
.ip-share {
	flex: 1;
	min-width: 120px;
	text-align: center;
	padding: 10px;
	border-radius: 8px;
	text-decoration: none;
	font-weight: 600;
	font-size: 13px;
	color: #fff;
}
.ip-share:hover { opacity: .9; color: #fff; }
.ip-share--wa { background: #25D366; }
.ip-share--tg { background: #0088cc; }
.ip-share--fb { background: #1877F2; }
.ip-share--tw { background: #0F172A; }

/* ── Mobile ── */
@media (max-width: 640px) {
	.ip-painel-head { flex-direction: column; }
	.ip-tab { padding: 12px 14px; font-size: 13px; }
	.ip-tab-content { padding: 18px; }
	.ip-stat-val { font-size: 26px; }
}

/* ═══════════════════════════════════════════════════════════════════
 *  [MOD-50-LAND] Landing (deslogado + form amador) — hero com imagem
 * ═══════════════════════════════════════════════════════════════════ */
.ip-land { max-width: none; margin: 0; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif; color: #1e293b; }

.ip-land-hero {
	position: relative;
	padding: 80px 24px 70px;
	margin: 0 auto 48px;
	color: #fff;
	background:
		linear-gradient(135deg, rgba(15,23,42,.82) 0%, rgba(30,41,59,.72) 60%, rgba(255,107,0,.65) 100%),
		url('https://images.unsplash.com/photo-1529156069898-49953e39b3ac?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
	border-radius: 0 0 24px 24px;
	overflow: hidden;
}
.ip-land-hero::after {
	content: ''; position: absolute; inset: 0;
	background: radial-gradient(ellipse at 85% 30%, rgba(255,215,0,.2), transparent 55%);
	pointer-events: none;
}
.ip-land-hero-inner { position: relative; z-index: 1; max-width: 880px; margin: 0 auto; text-align: center; }
.ip-land-eyebrow { display: inline-block; background: rgba(255,255,255,.15); backdrop-filter: blur(6px); padding: 6px 16px; border-radius: 20px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 20px; color: #FFD700; }
.ip-land-hero h1 { font-size: 52px; font-weight: 800; line-height: 1.1; letter-spacing: -.02em; margin: 0 0 20px; color: #fff; }
.ip-land-hero h1 em { font-style: italic; font-weight: 400; color: #FFD700; display: inline-block; }
.ip-land-lead { font-size: 17px; line-height: 1.6; max-width: 680px; margin: 0 auto 26px; color: #e2e8f0; opacity: .98; }
.ip-land-lead strong { color: #fff; }

.ip-land-ctas { margin: 26px 0 14px; display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; }
.ip-land-btn { display: inline-block; padding: 14px 32px; border-radius: 10px; font-weight: 800; font-size: 15px; text-decoration: none; transition: .15s ease; background: #fff; color: #0F172A !important; border: 2px solid transparent; }
.ip-land-btn:hover { transform: translateY(-2px); color: #0F172A !important; }
.ip-land-btn--primary { background: linear-gradient(135deg, #FFD700 0%, #FF9900 100%); color: #0F172A !important; box-shadow: 0 10px 24px rgba(255,153,0,.35); }
.ip-land-btn--primary:hover { box-shadow: 0 14px 30px rgba(255,153,0,.5); }
.ip-land-btn--lg { padding: 18px 40px; font-size: 16px; }
.ip-land-mini { font-size: 12px; color: #cbd5e1; margin: 10px 0 0; }

/* Variante compacta pra quem já está logado */
.ip-land-hero--compact { padding: 54px 24px 44px; }
.ip-land-hero--compact h1 { font-size: 34px; }

/* Steps — Como funciona */
.ip-land-steps {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px;
	max-width: 1040px; margin: 0 auto 56px; padding: 0 24px;
}
.ip-land-step {
	background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 30px 24px;
	text-align: center; position: relative; transition: transform .2s;
}
.ip-land-step:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,.08); }
.ip-land-step-num {
	width: 48px; height: 48px; border-radius: 50%;
	background: linear-gradient(135deg, #FF6B00, #FFD700);
	color: #fff; display: inline-flex; align-items: center; justify-content: center;
	font-size: 20px; font-weight: 800; margin-bottom: 14px;
	box-shadow: 0 6px 14px rgba(255,107,0,.35);
}
.ip-land-step h3 { margin: 0 0 8px; font-size: 18px; color: #0F172A; font-weight: 800; }
.ip-land-step p { margin: 0; font-size: 14px; color: #64748b; line-height: 1.6; }

/* Pra quem é */
.ip-land-why { max-width: 1040px; margin: 0 auto 56px; padding: 0 24px; }
.ip-land-why h2 { font-size: 28px; text-align: center; color: #0F172A; margin: 0 0 22px; font-weight: 800; }
.ip-land-why-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.ip-land-why-grid > div { background: linear-gradient(135deg, #FFF7ED 0%, #fff 100%); border: 1px solid #FED7AA; border-radius: 12px; padding: 20px 22px; transition: .15s; }
.ip-land-why-grid > div:hover { border-color: #FF6B00; transform: translateY(-2px); }
.ip-land-why-grid strong { display: block; color: #0F172A; font-size: 16px; margin-bottom: 6px; }
.ip-land-why-grid p { margin: 0; font-size: 14px; color: #64748b; line-height: 1.5; }

/* CTA final */
.ip-land-final {
	background: linear-gradient(135deg, #0F172A 0%, #1e293b 100%);
	color: #fff; text-align: center; padding: 50px 24px; margin: 0; border-radius: 24px 24px 0 0;
}
.ip-land-final h2 { font-size: 32px; color: #fff; margin: 0 0 10px; font-weight: 800; }
.ip-land-final p { font-size: 16px; color: #cbd5e1; margin: 0 0 24px; }

@media (max-width: 760px) {
	.ip-land-hero { padding: 50px 20px 40px; }
	.ip-land-hero h1 { font-size: 32px; }
	.ip-land-hero--compact h1 { font-size: 24px; }
	.ip-land-lead { font-size: 15px; }
	.ip-land-final h2 { font-size: 24px; }
}

/* ═══════════════════════════════════════════════════════════════════
 *  [MOD-50-KIT-CSS] Kit de divulgação
 * ═══════════════════════════════════════════════════════════════════ */
.ip-kit-intro { background: linear-gradient(135deg, #FFF7ED, #fff); border-left: 4px solid #FF6B00; padding: 18px 22px; border-radius: 0 10px 10px 0; margin-bottom: 24px; }
.ip-kit-intro h3 { margin: 0 0 6px; font-size: 17px; color: #0F172A; }
.ip-kit-intro p { margin: 0; color: #475569; font-size: 14px; line-height: 1.6; }
.ip-kit-block { margin-bottom: 36px; }
.ip-kit-block h3 { font-size: 20px; color: #0F172A; margin: 0 0 6px; font-weight: 800; }
.ip-kit-desc { color: #64748b; font-size: 14px; margin: 0 0 16px; line-height: 1.6; }
.ip-kit-desc code { background: #f1f5f9; color: #FF6B00; padding: 1px 6px; border-radius: 4px; }

.ip-kit-textos { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 14px; }
.ip-kit-texto { background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; padding: 16px; }
.ip-kit-texto-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; flex-wrap: wrap; }
.ip-kit-texto-head strong { font-size: 14px; color: #0F172A; }
.ip-kit-badge { background: linear-gradient(135deg, #FFD700, #FF9900); color: #0F172A; font-size: 10px; font-weight: 800; padding: 3px 8px; border-radius: 10px; }
.ip-kit-texto textarea { width: 100%; padding: 10px 12px; border: 1px solid #e2e8f0; border-radius: 6px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 13px; resize: vertical; background: #f8fafc; color: #334155; line-height: 1.6; }
.ip-kit-copy { margin-top: 8px; background: #FF6B00; color: #fff; border: 0; padding: 8px 14px; border-radius: 6px; font-weight: 700; cursor: pointer; font-size: 13px; transition: .15s; }
.ip-kit-copy:hover { background: #e55b00; }

.ip-kit-sizes { display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)); gap: 14px; }
.ip-kit-size { text-align: center; background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px; }
.ip-kit-size-box { width: 100%; max-width: 120px; margin: 0 auto 8px; background: linear-gradient(135deg, #FFF7ED, #FED7AA); border: 2px dashed #FB923C; border-radius: 6px; display: flex; align-items: center; justify-content: center; }
.ip-kit-size-box span { font-size: 11px; font-weight: 700; color: #9A3412; text-align: center; padding: 6px; }
.ip-kit-size strong { display: block; font-size: 13px; color: #0F172A; margin-bottom: 2px; }
.ip-kit-size small { font-size: 11px; color: #94a3b8; }

.ip-kit-info { background: #eff6ff; border: 1px solid #bfdbfe; color: #1D4ED8; padding: 12px 16px; border-radius: 8px; margin-top: 16px; font-size: 13px; }
.ip-kit-info a { color: #1D4ED8; font-weight: 700; }

.ip-kit-videos { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 14px; }
.ip-kit-video { background: #fff; border: 1px solid #e2e8f0; border-left: 4px solid var(--c, #FF6B00); border-radius: 0 10px 10px 0; padding: 18px 20px; }
.ip-kit-video h4 { margin: 0 0 12px; font-size: 15px; color: #0F172A; }
.ip-kit-video h4 span { font-size: 12px; color: #64748b; font-weight: 500; }
.ip-kit-video ol { margin: 0; padding-left: 22px; }
.ip-kit-video li { font-size: 13px; color: #334155; margin-bottom: 6px; line-height: 1.5; }
.ip-kit-video li strong { color: #0F172A; }
.ip-kit-cta { margin-top: 10px; padding: 8px 12px; background: #f0fdf4; border-radius: 6px; font-size: 12px; color: #166534; }

.ip-kit-tips { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 12px; }
.ip-kit-tip { background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px 18px; }
.ip-kit-tip strong { display: block; font-size: 14px; color: #0F172A; margin-bottom: 6px; }
.ip-kit-tip p { margin: 0; font-size: 13px; color: #64748b; line-height: 1.5; }

.ip-kit-check { list-style: none; padding: 0; margin: 0; background: #fff; border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px 18px; }
.ip-kit-check li { display: flex; align-items: center; gap: 10px; padding: 8px 0; border-bottom: 1px solid #f1f5f9; font-size: 14px; color: #334155; }
.ip-kit-check li:last-child { border-bottom: 0; }
.ip-kit-check input[type=checkbox] { width: 18px; height: 18px; accent-color: #FF6B00; }
.ip-kit-check code { background: #FFF7ED; color: #FF6B00; padding: 1px 6px; border-radius: 4px; font-size: 12px; }

.ip-kit-tools { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.ip-kit-tool { background: linear-gradient(135deg, #f8fafc, #fff); border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px 18px; text-decoration: none; color: #0F172A; transition: .15s; }
.ip-kit-tool:hover { border-color: #FF6B00; transform: translateY(-2px); box-shadow: 0 8px 18px rgba(0,0,0,.05); }
.ip-kit-tool strong { display: block; font-size: 14px; margin-bottom: 4px; }
.ip-kit-tool small { font-size: 12px; color: #64748b; }

/* ═══════════════════════════════════════════════════════════════════
 *  [MOD-50-COMPLIANCE-CSS] Como trabalhar em cada canal
 * ═══════════════════════════════════════════════════════════════════ */
.ip-comp-intro { background: linear-gradient(135deg, #FEF3C7, #fff); border-left: 4px solid #D97706; padding: 18px 22px; border-radius: 0 10px 10px 0; margin-bottom: 28px; }
.ip-comp-intro h3 { margin: 0 0 8px; color: #92400E; }
.ip-comp-intro p { margin: 0; color: #78350F; font-size: 14px; line-height: 1.7; }

.ip-comp-canal { background: #fff; border: 1px solid #e2e8f0; border-radius: 14px; padding: 24px; margin-bottom: 18px; }
.ip-comp-canal.is-bloqueado { opacity: .55; filter: grayscale(.3); }
.ip-comp-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin-bottom: 16px; padding-bottom: 16px; border-bottom: 2px solid var(--cor, #FF6B00); flex-wrap: wrap; }
.ip-comp-head h3 { margin: 0 0 8px; font-size: 20px; color: #0F172A; font-weight: 800; }
.ip-comp-meta { display: flex; gap: 18px; flex-wrap: wrap; font-size: 12px; color: #64748b; }
.ip-comp-meta strong { color: #0F172A; }
.ip-comp-badge { padding: 6px 14px; border-radius: 20px; font-size: 11px; font-weight: 800; white-space: nowrap; letter-spacing: .04em; }
.ip-comp-badge--ok { background: #dcfce7; color: #166534; }
.ip-comp-badge--no { background: #f1f5f9; color: #64748b; }

.ip-comp-destaque { background: var(--cor, #FF6B00); color: var(--cor-txt, #fff); padding: 10px 14px; border-radius: 8px; font-size: 13px; margin-bottom: 16px; font-weight: 600; }

.ip-comp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ip-comp-ok, .ip-comp-no { padding: 14px 18px; border-radius: 8px; }
.ip-comp-ok { background: #f0fdf4; border: 1px solid #86efac; }
.ip-comp-no { background: #fef2f2; border: 1px solid #fca5a5; }
.ip-comp-ok strong { color: #166534; display: block; margin-bottom: 8px; font-size: 13px; letter-spacing: .02em; }
.ip-comp-no strong { color: #991b1b; display: block; margin-bottom: 8px; font-size: 13px; letter-spacing: .02em; }
.ip-comp-ok ul, .ip-comp-no ul { margin: 0; padding-left: 18px; }
.ip-comp-ok li, .ip-comp-no li { font-size: 13px; margin-bottom: 6px; line-height: 1.55; }
.ip-comp-ok li { color: #166534; }
.ip-comp-no li { color: #7f1d1d; }
.ip-comp-ok li strong, .ip-comp-no li strong { color: inherit; font-weight: 800; }
.ip-comp-ok code, .ip-comp-no code { background: rgba(0,0,0,.08); color: inherit; padding: 1px 6px; border-radius: 3px; font-size: 11px; }

.ip-comp-footer { margin-top: 14px; padding-top: 14px; border-top: 1px dashed #e2e8f0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.ip-comp-disclosure { font-size: 12px; color: #475569; }
.ip-comp-disclosure strong { color: #0F172A; display: block; margin-bottom: 2px; }
.ip-comp-disclosure em { color: #FF6B00; font-style: italic; font-weight: 600; }
.ip-comp-risco { font-size: 12px; color: #991b1b; background: #fef2f2; padding: 8px 12px; border-radius: 6px; border-left: 3px solid #dc2626; }

.ip-comp-final { background: linear-gradient(135deg, #0F172A 0%, #1e293b 100%); color: #fff; padding: 28px 24px; border-radius: 14px; margin-top: 30px; }
.ip-comp-final h3 { color: #FFD700; margin: 0 0 18px; font-size: 20px; }
.ip-comp-rules { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.ip-comp-rules > div { background: rgba(255,255,255,.05); padding: 12px 14px; border-radius: 8px; font-size: 13px; color: #e2e8f0; border-left: 3px solid #FFD700; }
.ip-comp-rules strong { color: #FFD700; }

@media (max-width: 760px) {
	.ip-comp-grid, .ip-comp-footer { grid-template-columns: 1fr; }
	.ip-kit-sizes { grid-template-columns: repeat(2, 1fr); }
}

/* ═══════════════════════════════════════════════════════════════════
 *  [MOD-50-MEUKIT-CSS] Kit personalizado (canvas)
 * ═══════════════════════════════════════════════════════════════════ */
.ip-mk-intro { background: linear-gradient(135deg, #f0fdf4, #fff); border-left: 4px solid #16a34a; padding: 18px 22px; border-radius: 0 10px 10px 0; margin-bottom: 20px; }
.ip-mk-intro h3 { margin: 0 0 6px; font-size: 17px; color: #0F172A; }
.ip-mk-intro p { margin: 0; color: #475569; font-size: 14px; line-height: 1.6; }
.ip-mk-intro strong { color: #0F172A; }

.ip-mk-presets { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 16px 20px; margin-bottom: 14px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ip-mk-presets strong { font-size: 13px; color: #475569; margin-right: 6px; }
.ip-mk-preset { background: #f1f5f9; border: 2px solid transparent; color: #475569; padding: 8px 14px; border-radius: 20px; font-weight: 600; font-size: 13px; cursor: pointer; transition: .15s; }
.ip-mk-preset:hover { background: #e2e8f0; }
.ip-mk-preset.is-active { background: linear-gradient(135deg, #FF6B00, #FFD700); color: #fff; border-color: #FF6B00; }

.ip-mk-controls { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; margin-bottom: 20px; }
.ip-mk-ctrl--wide { grid-column: span 2; }
@media (max-width: 640px) { .ip-mk-ctrl--wide { grid-column: span 1; } }
.ip-mk-ctrl label { display: block; font-size: 12px; font-weight: 700; color: #475569; margin-bottom: 6px; text-transform: uppercase; letter-spacing: .04em; }
.ip-mk-ctrl input[type=text] { width: 100%; padding: 10px 12px; border: 1px solid #cbd5e1; border-radius: 8px; font-size: 14px; }
.ip-mk-ctrl input[type=file] { width: 100%; font-size: 13px; }
.ip-mk-ctrl small { display: block; font-size: 11px; color: #94a3b8; margin-top: 4px; }
.ip-mk-colors { display: flex; gap: 6px; flex-wrap: wrap; }
.ip-mk-color { width: 32px; height: 32px; border-radius: 50%; border: 3px solid transparent; cursor: pointer; transition: .15s; }
.ip-mk-color:hover { transform: scale(1.1); }
.ip-mk-color.is-active { border-color: #0F172A; box-shadow: 0 0 0 2px #fff, 0 0 0 4px #0F172A; }

.ip-mk-info { background: #FFF7ED; border: 1px solid #FED7AA; color: #9A3412; padding: 12px 16px; border-radius: 8px; margin-bottom: 20px; font-size: 13px; }
.ip-mk-info code { background: rgba(0,0,0,.08); color: #9A3412; padding: 2px 6px; border-radius: 4px; font-size: 11px; }
.ip-mk-info strong { color: #7C2D12; }

.ip-mk-templates { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; }
.ip-mk-tpl { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.ip-mk-tpl header h4 { margin: 0 0 2px; font-size: 14px; color: #0F172A; font-weight: 700; }
.ip-mk-tpl header small { font-size: 11px; color: #94a3b8; }
.ip-mk-canvas { display: block; width: 100%; height: auto; border-radius: 8px; background: #f1f5f9; max-width: 100%; border: 1px solid #e2e8f0; }
.ip-mk-canvas--vertical { max-width: 200px; margin: 0 auto; }
.ip-mk-canvas--horiz { aspect-ratio: 1200/630; }
.ip-mk-download { background: #FF6B00; color: #fff; border: 0; padding: 10px 14px; border-radius: 8px; font-weight: 700; cursor: pointer; font-size: 13px; transition: .15s; }
.ip-mk-download:hover { background: #e55b00; }

.ip-mk-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; margin-top: 24px; padding-top: 20px; border-top: 1px solid #e2e8f0; }
.ip-mk-all, .ip-mk-refresh { padding: 12px 22px; border-radius: 8px; font-weight: 700; cursor: pointer; font-size: 14px; border: 0; }
.ip-mk-all { background: linear-gradient(135deg, #FFD700, #FF9900); color: #0F172A; }
.ip-mk-all:hover { transform: translateY(-2px); }
.ip-mk-refresh { background: #fff; border: 1px solid #cbd5e1; color: #475569; }
.ip-mk-refresh:hover { background: #f8fafc; }
