/*
Theme Name: Cantinho da Thiana Clean
Theme URI: https://cantinhodathiana.com.br/
Author: Cantinho da Thiana
Description: Tema leve e independente, reconstruído para preservar o visual clássico do Cantinho da Thiana sem depender do tema anterior.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: cantinho-thiana-clean
*/

:root {
  --ct-pink: #e84f66;
  --ct-pink-dark: #d9465d;
  --ct-text: #505050;
  --ct-muted: #999;
  --ct-border: #eeeeee;
  --ct-background: #fff;
  --ct-width: 1170px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ct-text);
  background: var(--ct-background);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.55;
}
a { color: var(--ct-pink); text-decoration: none; }
a:hover, a:focus { color: var(--ct-pink-dark); }
img { max-width: 100%; height: auto; }
.container { width: min(calc(100% - 32px), var(--ct-width)); margin-inline: auto; }
.screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus {
  top: 8px; left: 8px; z-index: 99999; width: auto; height: auto;
  padding: 12px 16px; clip: auto; background: #fff; color: #111;
}

/* Cabeçalho */
.site-header { padding: 27px 0 24px; border-top: 1px solid #f3f3f3; }
.header-inner { display: flex; align-items: center; justify-content: space-between; gap: 48px; }
.site-branding { flex: 0 0 265px; min-height: 80px; display: flex; align-items: center; }
.custom-logo-link { display: inline-flex; align-items: center; }
.custom-logo { width: auto; max-width: 220px; max-height: 100px; object-fit: contain; }
.fallback-logo { width: auto; max-width: 220px; max-height: 100px; object-fit: contain; }
.site-title { margin: 0; font-size: 30px; line-height: 1.1; }
.site-title a { color: #333; }
.site-description { margin: 5px 0 0; color: var(--ct-muted); font-size: 13px; }
.header-search { width: min(100%, 455px); }
.search-form { display: flex; width: 100%; }
.search-field {
  min-width: 0; flex: 1; height: 42px; padding: 0 14px;
  border: 1px solid #e6e6e6; border-right: 0; outline: none; color: #666;
}
.search-field:focus { border-color: var(--ct-pink); }
.search-submit {
  width: 46px; height: 42px; border: 0; cursor: pointer;
  background: #d76a79; color: #fff; font-size: 20px;
}

/* Navegação */
.main-navigation { background: var(--ct-pink); }
.main-navigation ul { display: flex; flex-wrap: wrap; margin: 0; padding: 0; list-style: none; }
.main-navigation li { border-right: 1px solid rgba(255,255,255,.2); }
.main-navigation a {
  display: block; padding: 16px 30px; color: #fff; font-weight: 700;
  font-size: 14px; line-height: 1.2; text-transform: uppercase;
}
.main-navigation a:hover, .main-navigation .current-menu-item > a,
.main-navigation .current_page_item > a { background: rgba(0,0,0,.08); color: #fff; }

/* Listagem */
.site-main { padding: 32px 0 45px; }
.posts-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 28px; }
.post-card { min-width: 0; background: #fff; border: 1px solid #f1f1f1; }
.post-card-image { display: block; aspect-ratio: 1.28 / 1; overflow: hidden; background: #f5f5f5; }
.post-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.post-card:hover .post-card-image img { transform: scale(1.02); }
.post-card-body { padding: 12px 16px 17px; }
.post-card-title { margin: 0 0 9px; font-size: 18px; line-height: 1.45; font-weight: 400; }
.post-card-title a { color: var(--ct-text); }
.post-card-title a:hover { color: var(--ct-pink); }
.entry-meta { display: flex; flex-wrap: wrap; gap: 9px 20px; color: #aaa; font-size: 11px; }
.entry-meta a { color: inherit; }
.entry-meta a:hover { color: var(--ct-pink); }
.empty-thumbnail { width: 100%; height: 100%; display: grid; place-items: center; color: #bbb; }

/* Página interna */
.breadcrumbs { margin: -9px 0 22px; color: #999; font-size: 13px; }
.breadcrumbs a { color: #999; }
.breadcrumbs span { margin: 0 7px; }
.content-layout { display: grid; grid-template-columns: minmax(0, 2.15fr) minmax(250px, .85fr); gap: 52px; }
.single-article { min-width: 0; }
.category-badge {
  display: inline-block; margin-bottom: 17px; padding: 9px 14px;
  background: var(--ct-pink); color: #fff; font-size: 14px; font-weight: 700;
}
.entry-title { margin: 0 0 12px; color: #505050; font-size: clamp(30px, 3vw, 42px); line-height: 1.22; font-weight: 400; }
.single-meta { margin-bottom: 24px; font-size: 12px; }
.entry-content { font-size: 16px; }
.entry-content p { margin: 0 0 1.15em; }
.entry-content h2, .entry-content h3, .entry-content h4 { color: #444; line-height: 1.25; }
.entry-content h2 { font-size: 30px; }
.entry-content h3 { font-size: 24px; }
.entry-content img { display: block; margin: 18px auto; }
.entry-content iframe { max-width: 100%; }
.entry-content .wp-block-button__link,
.entry-content a.button, .entry-content .button, .ct-button {
  display: inline-block; padding: 15px 28px; border: 0; border-radius: 0;
  background: #d96b79; color: #fff; font-weight: 700; text-transform: uppercase;
}
.entry-content .wp-block-button__link:hover,
.entry-content a.button:hover, .entry-content .button:hover, .ct-button:hover {
  background: var(--ct-pink-dark); color: #fff;
}
.entry-content button,
.entry-content input[type="button"],
.entry-content input[type="submit"] {
  appearance: none;
  -webkit-appearance: none;
  display: inline-block;
  min-height: 52px;
  padding: 15px 30px;
  border: 0;
  border-radius: 3px;
  background: #d96b79;
  color: #fff;
  box-shadow: none;
  cursor: pointer;
  font: inherit;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color .2s ease, transform .2s ease;
}
.entry-content button:hover,
.entry-content button:focus,
.entry-content input[type="button"]:hover,
.entry-content input[type="submit"]:hover {
  background: var(--ct-pink-dark);
  color: #fff;
  transform: translateY(-1px);
}
.entry-content .quero-aprender-pokemon,
.entry-content .mauticform-button {
  margin: 5px 0 22px;
  padding: 18px 38px;
  background: #d96b79;
  font-size: 18px;
}
.entry-content .flexzao {
  display: flex;
  justify-content: center;
  margin: 22px 0 28px;
}
.entry-content .flexzao > a.button {
  padding: 0;
  background: transparent;
}
.entry-content .flexzao > a.button:hover,
.entry-content .flexzao > a.button:focus {
  background: transparent;
}
.entry-content .flexzao .butao {
  min-width: 200px;
  padding: 17px 34px;
  border-radius: 10px;
  background: #05c979;
  font-size: 18px;
}
.entry-content .flexzao .butao:hover,
.entry-content .flexzao .butao:focus {
  background: #00ae68;
}
.post-navigation { display: flex; justify-content: space-between; gap: 16px; margin-top: 35px; }
.post-navigation a { display: inline-block; padding: 12px 18px; background: var(--ct-pink); color: #fff; font-weight: 700; }

/* Sidebar */
.widget-area { min-width: 0; }
.widget { margin: 0 0 26px; border: 1px solid #f1f1f1; background: #fff; }
.widget-title { margin: 0; padding: 14px 16px; border-bottom: 1px solid #eee; font-size: 17px; text-transform: uppercase; }
.widget > ul, .widget > div:not(.widget-title), .widget > p, .widget > form { margin: 0; padding: 16px; }
.widget ul { list-style: none; }
.widget li { padding: 7px 0; border-bottom: 1px solid #f2f2f2; }
.widget li:last-child { border-bottom: 0; }

/* Títulos, paginação e rodapé */
.page-header { margin-bottom: 25px; }
.page-title { margin: 0; font-size: 30px; font-weight: 400; }
.pagination { margin-top: 34px; }
.nav-links { display: flex; flex-wrap: wrap; gap: 4px; }
.page-numbers { display: inline-block; padding: 8px 12px; background: var(--ct-pink); color: #fff; }
.page-numbers.current, .page-numbers:hover { background: var(--ct-pink-dark); color: #fff; }
.site-footer { border-top: 1px solid #f2f2f2; }
.site-info { padding: 35px 0; color: #999; font-size: 12px; }
.not-found { padding: 40px 0; text-align: center; }

/* Compatibilidade com conteúdo antigo */
.alignleft { float: left; margin: 7px 20px 15px 0; }
.alignright { float: right; margin: 7px 0 15px 20px; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; }
.wp-caption { max-width: 100%; }
.wp-caption-text { color: #888; font-size: 12px; text-align: center; }
.gallery { display: grid; gap: 12px; }
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }

/* Compatibilidade global com páginas e posts antigos */
.flexzao {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.flexzao > a.button {
  display: inline-flex;
  padding: 0;
  background: transparent;
  color: inherit;
}
.flexzao > a.button:hover,
.flexzao > a.button:focus { background: transparent; }

.button-41,
.button-44,
.butao,
.quero-aprender-pokemon,
.quero-aprender-patati,
.mauticform-button {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-block !important;
  border: 0 !important;
  outline: 0 !important;
  color: #fff !important;
  cursor: pointer;
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: center;
  text-decoration: none !important;
  white-space: normal;
  box-shadow: 0 7px 18px rgba(0, 0, 0, .16) !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.button-41,
.button-44,
.butao {
  min-width: 200px;
  min-height: 72px;
  padding: 16px 28px !important;
  border-radius: 15px !important;
  background-color: #00bd68 !important;
  background-image: linear-gradient(180deg, #00d775, #00bd68) !important;
  font-size: 20px !important;
}
.button-41 { width: min(100%, 300px) !important; }
.button-44 { width: min(100%, 330px) !important; min-height: 98px; }
.butao { width: min(100%, 200px) !important; }
.button-41:hover,
.button-44:hover,
.butao:hover {
  background: #00ae60 !important;
  box-shadow: 0 10px 23px rgba(0, 0, 0, .2) !important;
  transform: translateY(-2px);
}
.button-41 .garantia,
.button-44 .garantia,
.butao .garantia,
.garantia {
  margin: 6px 0 0 !important;
  color: inherit !important;
  font-size: .68em !important;
  font-weight: 400;
  line-height: 1.15;
}
.quero-aprender-pokemon,
.quero-aprender-patati,
.mauticform-button {
  margin: 5px 0 22px;
  padding: 18px 34px !important;
  border-radius: 3px !important;
  background: #d86b78 !important;
  font-size: 18px !important;
}
.quero-aprender-pokemon:hover,
.quero-aprender-patati:hover,
.mauticform-button:hover { background: #934e56 !important; }

.cartoes {
  display: flex !important;
  flex-flow: row wrap !important;
  justify-content: center !important;
  gap: 5px;
  padding-top: 1em;
}
.cartoes img {
  width: 45px !important;
  height: auto !important;
  padding: 2px;
  object-fit: contain;
}
.compra-segura { width: min(100%, 400px) !important; margin-inline: auto; }
.certificado { text-align: center; }
.certificado img { width: min(100%, 300px) !important; }
.tac { text-align: center; }
.motivo { width: min(100%, 300px); margin-inline: auto; font-size: 16px; }
.errado, .correto { margin: 0 0 20px; border-radius: 28px; }
.errado { background: #ffebeb; }
.correto { background: #c4f0e0; }
.my-auto { padding: 1.3em; }

/* WhatsApp antigo: restaura o botão flutuante e a caixa de atendimento. */
.forMobile.wtsp {
  position: fixed !important;
  right: 18px !important;
  bottom: 18px !important;
  z-index: 99999 !important;
  text-shadow: none !important;
}
.wptwa-container,
.wptwa-container * { box-sizing: border-box; }
.wptwa-container {
  position: relative !important;
  inset: auto !important;
  display: block;
  width: auto !important;
  max-width: min(360px, calc(100vw - 28px));
  color: #555;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 13px;
  line-height: 1.4;
  text-align: right;
}
.wptwa-container p { margin: 0; }
.wptwa-container a { text-decoration: none; }
.wptwa-container .wptwa-box {
  position: absolute !important;
  right: 0;
  bottom: 58px;
  display: none;
  width: min(320px, calc(100vw - 28px)) !important;
  margin: 0 !important;
  padding: 20px 20px 12px !important;
  border: 1px solid #eee !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #555 !important;
  box-shadow: 0 12px 35px rgba(0, 0, 0, .2) !important;
  text-align: left;
}
.wptwa-container .wptwa-box.show { display: block; }
.wptwa-description {
  margin: -20px -20px 12px !important;
  padding: 16px 36px 16px 18px !important;
  border-radius: 10px 10px 0 0;
  background: #25b95a !important;
  color: #fff !important;
}
.wptwa-description p { color: inherit !important; }
.wptwa-container .wptwa-account {
  display: flex !important;
  align-items: center;
  gap: 12px;
  margin: 0 !important;
  padding: 10px !important;
  border-radius: 8px;
  color: #555 !important;
}
.wptwa-container .wptwa-account:hover { background: #f5f5f5; }
.wptwa-container .wptwa-face {
  position: relative;
  flex: 0 0 42px;
  width: 42px !important;
  height: 42px !important;
  margin: 0 !important;
}
.wptwa-container .wptwa-face img {
  display: block;
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  object-fit: cover;
}
.wptwa-container .wptwa-info { flex: 1; width: auto !important; }
.wptwa-container .wptwa-title {
  display: block;
  margin-bottom: 3px;
  color: #777;
  font-size: 11px;
  line-height: 1.1;
}
.wptwa-container .wptwa-name { display: block; color: #333; font-weight: 700; }
.wptwa-container .wptwa-handler {
  display: inline-flex !important;
  align-items: center;
  min-height: 46px;
  margin: 0 !important;
  padding: 12px 18px !important;
  border-radius: 28px !important;
  background: #25b95a !important;
  color: #fff !important;
  box-shadow: 0 6px 22px rgba(0, 0, 0, .24);
  cursor: pointer;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
}
.wptwa-container .wptwa-handler:hover { background: #1fa64f !important; }
.wptwa-container .fa-whatsapp { padding-right: 8px; font-size: 20px; }
.wptwa-container .wptwa-close {
  position: absolute;
  top: 10px;
  right: 10px;
  display: block;
  width: 18px;
  height: 18px;
  cursor: pointer;
}
.wptwa-container .wptwa-close::before,
.wptwa-container .wptwa-close::after {
  content: '';
  position: absolute;
  top: 8px;
  left: 1px;
  width: 16px;
  height: 2px;
  background: #fff;
  transform: rotate(45deg);
}
.wptwa-container .wptwa-close::after { transform: rotate(-45deg); }
.wptwa-clearfix::after { content: ''; display: table; clear: both; }

@media (max-width: 900px) {
  .posts-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .content-layout { grid-template-columns: 1fr; gap: 35px; }
  .header-inner { gap: 24px; }
  .site-branding { flex-basis: 220px; }
  .main-navigation a { padding: 14px 20px; }
}

@media (max-width: 640px) {
  .site-header { padding: 18px 0; }
  .header-inner { flex-direction: column; align-items: stretch; }
  .site-branding { flex: none; min-height: 0; justify-content: center; text-align: center; }
  .header-search { width: 100%; }
  .main-navigation ul { display: grid; grid-template-columns: repeat(2, 1fr); }
  .main-navigation li { border-right: 1px solid rgba(255,255,255,.2); border-bottom: 1px solid rgba(255,255,255,.2); }
  .main-navigation a { padding: 13px 14px; font-size: 12px; text-align: center; }
  .posts-grid { grid-template-columns: 1fr; }
  .entry-title { font-size: 30px; }
  .entry-content h2 { font-size: 25px; }
  .post-navigation { flex-direction: column; }
  .alignleft, .alignright { float: none; display: block; margin: 15px auto; }
  .button-41, .button-44 { width: min(100%, 330px) !important; }
  .forMobile.wtsp { right: 12px !important; bottom: 12px !important; }
  .wptwa-container .wptwa-handler { min-height: 44px; padding: 11px 15px !important; font-size: 13px; }
}

