/*
Theme Name: Jornal Canário
Theme URI: https://jornalcanario.com
Author: VRA Assessoria de Marketing
Description: Tema do portal de notícias Jornal Canário — cobertura nacional em Brasil, Política, Economia, Mundo, Esportes, Entretenimento, Saúde e Vida e Estilo, com curadoria externa automática via o plugin Jornal Canário — Curadoria Externa.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: jornal-canario
*/

:root{
  --verde: #163C24;
  --verde-escuro: #0F2A19;
  --dourado: #E8A93C;
  --dourado-claro: #F4C866;
  --bg: #F7F6F2;
  --card-bg: #FFFFFF;
  --texto: #1A1A1A;
  --texto-suave: #5B5B57;
  --borda: #E6E3DA;
}
html.dark{
  --bg:#12140F; --card-bg:#1B1F17; --texto:#EDEAE0; --texto-suave:#B4AF9F; --borda:#2C3126;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  font-family: Georgia, 'Times New Roman', serif;
  background: var(--bg);
  color: var(--texto);
  line-height:1.5;
  transition: background .2s, color .2s;
}
a{color:inherit; text-decoration:none;}
img{display:block; max-width:100%;}
button{font:inherit; cursor:pointer;}
.sans{font-family: Arial, Helvetica, sans-serif;}
.container{max-width:1180px; margin:0 auto; padding:0 20px;}
.skip-link{
  position:absolute; left:-999px; top:0; background:var(--dourado); color:var(--verde-escuro);
  padding:10px 16px; font-family:Arial,sans-serif; font-weight:700; z-index:999;
}
.skip-link:focus{ left:10px; top:10px; }

/* Topbar */
.topbar{ background: var(--verde-escuro); color:#D9D2BE; font-family: Arial, Helvetica, sans-serif; font-size:12px; }
.topbar .container{ display:flex; justify-content:space-between; align-items:center; padding-top:7px; padding-bottom:7px; gap:12px; flex-wrap:wrap; }
.topbar .live{ display:inline-flex; align-items:center; gap:6px; color:var(--dourado-claro); font-weight:700; }
.live-dot{ width:7px; height:7px; border-radius:50%; background:#E24C4C; animation: pulse 1.6s infinite; }
@keyframes pulse{0%{opacity:1;}50%{opacity:.3;}100%{opacity:1;}}
#clock{ margin-left:10px; opacity:.85; }
.topbar-right{ display:flex; align-items:center; gap:16px; }
.topbar-links a{ opacity:.85; }
.topbar-links a:hover{ opacity:1; text-decoration:underline; }
.social-row{ display:flex; gap:10px; }
.social-row a{ opacity:.8; display:flex; }
.social-row a:hover{ opacity:1; }
.icon-btn{ background:none; border:1px solid rgba(255,255,255,.25); color:#D9D2BE; border-radius:50%; width:26px; height:26px; display:flex; align-items:center; justify-content:center; }
.icon-btn:hover{ border-color:var(--dourado); color:var(--dourado-claro); }

/* Breaking ticker */
.ticker-wrap{ background:#fff; border-bottom:1px solid var(--borda); display:flex; align-items:center; overflow:hidden; }
html.dark .ticker-wrap{ background:var(--card-bg); }
.ticker-tag{ background:var(--dourado); color:var(--verde-escuro); font-family:Arial,sans-serif; font-weight:800; font-size:11.5px; letter-spacing:.04em; padding:8px 14px; flex-shrink:0; white-space:nowrap; }
.ticker-track{ overflow:hidden; flex:1; position:relative; height:34px; }
.ticker-inner{ display:flex; gap:60px; position:absolute; white-space:nowrap; align-items:center; height:100%; animation: ticker 32s linear infinite; font-family: Arial, Helvetica, sans-serif; font-size:13px; padding-left:16px; }
.ticker-inner a:hover{ text-decoration:underline; }
@keyframes ticker{ from{ transform:translateX(0);} to{ transform:translateX(-50%);} }

/* Header */
header.main{ background:#fff; border-bottom:1px solid var(--borda); padding:20px 0; }
html.dark header.main{ background:var(--card-bg); }
.header-inner{ display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.logo-wrap{ display:flex; align-items:center; gap:12px; }
.logo-wrap img{ height:60px; width:60px; border-radius:8px; object-fit:cover; }
.logo-text .top{ font-family: Arial, Helvetica, sans-serif; font-size:11px; letter-spacing:.25em; color:var(--texto-suave); font-weight:600; }
.logo-text .main{ font-size:29px; font-weight:700; color:var(--verde); letter-spacing:.02em; }
html.dark .logo-text .main{ color:var(--dourado-claro); }
.header-actions{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.search-wrap{ position:relative; }
.search-box{ display:flex; align-items:center; border:1.5px solid var(--borda); border-radius:24px; padding:8px 16px; min-width:230px; font-family: Arial, Helvetica, sans-serif; background:transparent; }
.search-box input{ border:none; outline:none; flex:1; font-size:14px; font-family:inherit; background:transparent; color:var(--texto); }
.search-box svg{ flex-shrink:0; opacity:.5; }
.btn-assine{ background:var(--dourado); color:var(--verde-escuro); border:none; border-radius:22px; padding:10px 20px; font-family:Arial,Helvetica,sans-serif; font-weight:800; font-size:13px; letter-spacing:.02em; }
.btn-assine:hover{ background:var(--dourado-claro); }
.toggle-dark{ background:none; border:1.5px solid var(--borda); border-radius:50%; width:38px; height:38px; display:flex; align-items:center; justify-content:center; color:var(--texto); }
.toggle-dark:hover{ border-color:var(--dourado); }

/* Nav */
nav.editorias{ background: var(--verde); font-family: Arial, Helvetica, sans-serif; position:sticky; top:0; z-index:40; }
nav.editorias ul{ list-style:none; display:flex; overflow-x:auto; gap:2px; }
nav.editorias a{ display:block; padding:13px 16px; color:#F1EEE2; font-size:13.5px; font-weight:700; letter-spacing:.02em; white-space:nowrap; border-bottom:3px solid transparent; }
nav.editorias a:hover, nav.editorias a.active{ color: var(--dourado-claro); border-bottom-color: var(--dourado); background: rgba(255,255,255,0.04); }

main{ padding:32px 0 10px; }
.layout{ display:grid; grid-template-columns: 2.15fr 1fr; gap:34px; }
@media(max-width:900px){ .layout{grid-template-columns:1fr;} }

.kicker{ display:inline-block; font-family:Arial, Helvetica, sans-serif; font-size:11.5px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; color:var(--verde); background:#E4EEE6; padding:3px 9px; border-radius:3px; margin-bottom:10px; }
.kicker.politica{ background:#F6E7CE; color:#8A5A12; }
.kicker.economia{ background:#E4EEE6; color:var(--verde); }
.kicker.mundo{ background:#E8E4F2; color:#4B3B7A; }
.kicker.esportes{ background:#E1EEF6; color:#1E5F82; }
.kicker.entretenimento{ background:#F6E0E6; color:#8A2E4A; }
.kicker.saude{ background:#DCF0EA; color:#0F6B54; }
.kicker.estilo{ background:#F1E6F4; color:#6B3B7A; }
.kicker.repercussao{ background:#163C24; color:#fff; }

.media-ph{ display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
.media-ph svg{ width:34%; max-width:64px; opacity:.85; }
.media-ph img{ width:100%; height:100%; object-fit:cover; }
.grad-brasil{ background:linear-gradient(135deg,#1E4A2C,#3C7A4E); }
.grad-politica{ background:linear-gradient(135deg,#8A5A12,#C98A2E); }
.grad-economia{ background:linear-gradient(135deg,#8A5A12,#E8A93C); }
.grad-mundo{ background:linear-gradient(135deg,#4B3B7A,#7C6BB0); }
.grad-esportes{ background:linear-gradient(135deg,#1E5F82,#4FA0C9); }
.grad-entretenimento{ background:linear-gradient(135deg,#8A2E4A,#C15577); }
.grad-saude{ background:linear-gradient(135deg,#0F6B54,#3FAE8E); }
.grad-estilo{ background:linear-gradient(135deg,#6B3B7A,#A672B8); }

.hero{ margin-bottom:30px; }
.hero-img{ aspect-ratio:16/8.4; border-radius:6px; margin-bottom:16px; }
.hero h1{ font-size:34px; line-height:1.18; margin-bottom:10px; }
.hero h1 a:hover{ text-decoration:underline; }
.hero p.dek{ font-size:17px; color:var(--texto-suave); margin-bottom:10px; }
.meta{ font-family: Arial, Helvetica, sans-serif; font-size:12.5px; color:var(--texto-suave); }

.grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-bottom:8px; }
@media(max-width:700px){ .grid-3{grid-template-columns:1fr 1fr;} }
@media(max-width:480px){ .grid-3{grid-template-columns:1fr;} }
.card{ display:flex; flex-direction:column; }
.card-img{ aspect-ratio:16/10; border-radius:5px; margin-bottom:10px; }
.card h3{ font-size:17px; line-height:1.32; margin-bottom:6px; }
.card h3 a:hover{ text-decoration:underline; }
.card p.dek{ font-size:13.5px; color:var(--texto-suave); margin-bottom:6px; }

section.editoria{ margin:38px 0; padding-top:26px; border-top:1px solid var(--borda); }
.editoria-head{ display:flex; align-items:baseline; justify-content:space-between; margin-bottom:20px; }
.editoria-head h2{ font-size:21px; color:var(--verde); text-transform:uppercase; letter-spacing:.03em; }
html.dark .editoria-head h2{ color:var(--dourado-claro); }
.editoria-head a.ver-todas{ font-family:Arial, Helvetica, sans-serif; font-size:12.5px; font-weight:700; color:var(--texto-suave); }
.editoria-head a.ver-todas:hover{ color:var(--verde); }

.curadoria{ background:#FBF6EA; border:1px solid #EDDDB4; border-radius:8px; padding:22px 24px; margin:36px 0; }
html.dark .curadoria{ background:#241E12; border-color:#4A3B1C; }
.curadoria-head{ display:flex; align-items:center; gap:10px; margin-bottom:6px; font-family:Arial, Helvetica, sans-serif; flex-wrap:wrap; }
.curadoria-head .tag{ background:var(--verde); color:#fff; font-size:11px; font-weight:800; letter-spacing:.05em; padding:4px 9px; border-radius:3px; text-transform:uppercase; }
.curadoria-head h2{ font-size:19px; color:var(--verde-escuro); font-family:Georgia,serif; }
html.dark .curadoria-head h2{ color:var(--dourado-claro); }
.curadoria-sub{ font-family:Arial, Helvetica, sans-serif; font-size:12.5px; color:var(--texto-suave); margin-bottom:16px; }
.curadoria-list{ display:flex; flex-direction:column; gap:14px; }
.curadoria-item{ display:flex; gap:12px; align-items:baseline; padding-bottom:14px; border-bottom:1px dashed #E5D6A8; }
.curadoria-item:last-child{ border-bottom:none; padding-bottom:0; }
.curadoria-item .num{ font-family:Georgia,serif; font-size:20px; font-weight:700; color:var(--dourado); min-width:26px; }
.curadoria-item h4{ font-size:15.5px; margin-bottom:3px; }
.curadoria-item p{ font-size:13px; color:var(--texto-suave); margin-bottom:4px; }
.curadoria-item .fonte-link{ font-family:Arial, Helvetica, sans-serif; font-size:11.5px; font-weight:700; color:var(--verde); }
html.dark .curadoria-item .fonte-link{ color:var(--dourado-claro); }
.curadoria-item .fonte-link:hover{ text-decoration:underline; }
.curadoria-foot{ font-family:Arial, Helvetica, sans-serif; font-size:11px; color:var(--texto-suave); margin-top:14px; opacity:.85; }
.jc-fonte-aviso{ font-family:Arial,sans-serif; font-size:12px; color:var(--texto-suave); font-style:italic; }
.jc-fonte-link{ display:inline-block; margin-top:6px; font-family:Arial,sans-serif; font-weight:700; color:var(--verde); }

aside{ display:flex; flex-direction:column; gap:30px; }
.box{ background:var(--card-bg); border:1px solid var(--borda); border-radius:6px; padding:20px; }
.box-title{ font-family:Arial,sans-serif; font-size:13px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--verde); margin-bottom:16px; padding-bottom:10px; border-bottom:2px solid var(--verde); }
html.dark .box-title{ color:var(--dourado-claro); border-bottom-color: var(--dourado-claro); }
.lista-item{ display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--borda); }
.lista-item:last-child{ border-bottom:none; padding-bottom:0; }
.lista-item:first-child{ padding-top:0; }
.lista-item .num{ font-family:Georgia,serif; font-weight:700; font-size:24px; color:#D8CFAE; min-width:28px; }
.lista-item h4{ font-size:14.5px; line-height:1.35; }
.lista-item h4 a:hover{ text-decoration:underline; }

.colunista{ display:flex; gap:12px; align-items:center; padding:12px 0; border-bottom:1px solid var(--borda); }
.colunista:last-child{ border-bottom:none; }
.avatar{ width:44px; height:44px; border-radius:50%; flex-shrink:0; background:linear-gradient(135deg,var(--verde),var(--dourado)); overflow:hidden; }
.avatar img{ width:100%; height:100%; object-fit:cover; }
.colunista h4{ font-size:14px; }
.colunista p{ font-size:12px; color:var(--texto-suave); font-family:Arial, Helvetica, sans-serif; }

.newsletter-box{ background:var(--verde); color:#fff; text-align:center; }
.newsletter-box .box-title{ color:var(--dourado-claro); border-bottom-color:var(--dourado-claro); }
.newsletter-box p{ font-family:Arial, Helvetica, sans-serif; font-size:13px; margin-bottom:14px; opacity:.9; }
.newsletter-box input{ width:100%; padding:10px 12px; border-radius:4px; border:none; margin-bottom:10px; font-family:Arial, sans-serif; font-size:13px; }
.newsletter-box button.submit{ width:100%; padding:10px 12px; border-radius:4px; border:none; background:var(--dourado); color:var(--verde-escuro); font-family:Arial, Helvetica, sans-serif; font-weight:800; font-size:13px; letter-spacing:.03em; }

/* Article (single.php) */
.breadcrumb{ font-family:Arial,sans-serif; font-size:12.5px; color:var(--texto-suave); margin-bottom:16px; }
.breadcrumb a:hover{ text-decoration:underline; }
.voltar-btn{ display:inline-flex; align-items:center; gap:6px; font-family:Arial,sans-serif; font-size:13px; font-weight:700; color:var(--verde); margin-bottom:18px; }
html.dark .voltar-btn{ color:var(--dourado-claro); }
.voltar-btn:hover{ text-decoration:underline; }
.article-header h1{ font-size:32px; line-height:1.2; margin-bottom:14px; }
.article-meta{ display:flex; align-items:center; gap:14px; font-family:Arial,sans-serif; font-size:12.5px; color:var(--texto-suave); margin-bottom:20px; flex-wrap:wrap; }
.article-cover{ aspect-ratio:16/7; border-radius:6px; margin-bottom:22px; overflow:hidden; }
.article-cover img{ width:100%; height:100%; object-fit:cover; }
.article-body{ font-size:18px; line-height:1.75; max-width:740px; }
.article-body p{ margin-bottom:18px; }
.share-row{ display:flex; gap:10px; margin:26px 0; flex-wrap:wrap; }
.share-row a{ display:flex; align-items:center; gap:6px; font-family:Arial,sans-serif; font-size:12.5px; font-weight:700; border:1px solid var(--borda); border-radius:20px; padding:8px 14px; background:none; color:var(--texto); }
.share-row a:hover{ border-color:var(--dourado); color:var(--verde); }
html.dark .share-row a:hover{ color:var(--dourado-claro); }
.tags-row{ display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.tag-pill{ font-family:Arial,sans-serif; font-size:12px; background:var(--bg); border:1px solid var(--borda); padding:5px 12px; border-radius:14px; color:var(--texto-suave); }
.relacionadas{ margin-top:40px; padding-top:26px; border-top:1px solid var(--borda); }
.relacionadas h3{ font-size:16px; text-transform:uppercase; letter-spacing:.03em; color:var(--verde); margin-bottom:16px; font-family:Arial,sans-serif; }
html.dark .relacionadas h3{ color:var(--dourado-claro); }
.comments-box{ margin-top:40px; padding-top:26px; border-top:1px solid var(--borda); font-family:Arial,sans-serif; }

/* Cookie / LGPD bar */
.cookiebar{ position:fixed; left:0; right:0; bottom:0; background:var(--verde-escuro); color:#EFE9D8; z-index:80; padding:16px 20px; font-family:Arial,sans-serif; font-size:12.5px; display:flex; align-items:center; justify-content:center; gap:18px; flex-wrap:wrap; box-shadow:0 -4px 18px rgba(0,0,0,.15); }
.cookiebar.hidden{ display:none; }
.cookiebar a{ color:var(--dourado-claro); text-decoration:underline; }
.cookiebar button{ background:var(--dourado); color:var(--verde-escuro); border:none; border-radius:20px; padding:8px 18px; font-weight:800; }

#backtotop{ position:fixed; right:20px; bottom:20px; width:44px; height:44px; border-radius:50%; background:var(--verde); color:#fff; border:none; display:none; align-items:center; justify-content:center; box-shadow:0 4px 14px rgba(0,0,0,.2); z-index:70; }
#backtotop.show{ display:flex; }
#backtotop:hover{ background:var(--verde-escuro); }

footer.site-footer{ background:var(--verde-escuro); color:#C9C2AA; margin-top:50px; font-family:Arial, Helvetica, sans-serif; }
.footer-inner{ padding:40px 0 24px; display:grid; grid-template-columns:1.4fr repeat(3,1fr); gap:30px; }
@media(max-width:800px){ .footer-inner{grid-template-columns:1fr 1fr;} }
@media(max-width:480px){ .footer-inner{grid-template-columns:1fr;} }
footer .flogo{ display:flex; align-items:center; gap:10px; margin-bottom:12px; }
footer .flogo img{ height:38px; width:38px; border-radius:6px; object-fit:cover; }
footer .flogo span{ font-family:Georgia,serif; font-size:18px; color:#fff; font-weight:700; }
footer p.desc{ font-size:12.5px; line-height:1.6; opacity:.85; max-width:280px; margin-bottom:14px; }
footer .fsocial{ display:flex; gap:10px; }
footer h4{ color:#fff; font-size:12.5px; letter-spacing:.05em; text-transform:uppercase; margin-bottom:14px; }
footer ul{ list-style:none; }
footer li{ margin-bottom:9px; }
footer a{ font-size:13px; opacity:.85; }
footer a:hover{ opacity:1; text-decoration:underline; }
.footer-bottom{ border-top:1px solid rgba(255,255,255,.1); padding:16px 0; text-align:center; font-size:12px; opacity:.7; }

.sem-resultados{ padding:40px 0; text-align:center; font-family:Arial,sans-serif; color:var(--texto-suave); }

@media print{
  .topbar, .ticker-wrap, nav.editorias, aside, .cookiebar, #backtotop, .skip-link, .share-row, .comments-box, footer.site-footer{ display:none !important; }
}
