/*
Theme Name: Mark2 Receitas
Theme URI: https://receitasfaceis.digital/
Author: Luiz Cavalcanti
Description: Tema magazine/receitas com design rosa feminino, navegacao agentica, ferramentas interativas. Otimizado para Google Discover, News, AdSense.
Version: 2.0
License: Proprietario
Text Domain: mark2-receitas
*/

:root {
  --pink-50: #FFF5F7;
  --pink-100: #FFE0E6;
  --pink-200: #FFB8C9;
  --pink-300: #FD8FAA;
  --pink-400: #FD79A8;
  --pink-500: #E84393;
  --pink-600: #C2185B;
  --pink-700: #8E0F45;
  --purple-400: #A29BFE;
  --purple-500: #6C5CE7;
  --purple-600: #4A3DBF;
  --rec-text: #2D2D2D;
  --rec-text-soft: #6B6B6B;
  --rec-text-muted: #9CA3AF;
  --rec-border: #FFE0E6;
  --rec-surface: #FFFFFF;
  --rec-bg: #FFF5F7;
  --rec-radius: 16px;
  --rec-radius-sm: 10px;
  --rec-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --rec-shadow-hover: 0 10px 25px -5px rgba(0,0,0,0.1), 0 4px 10px -5px rgba(0,0,0,0.04);
  --rec-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --rec-font-alt: 'Playfair Display', Georgia, serif;
}
[data-theme="dark"] {
  --pink-50: #1A1A2E;
  --pink-100: #2D2044;
  --pink-200: #3D3054;
  --pink-300: #6C5CE7;
  --pink-400: #A29BFE;
  --pink-500: #FD79A8;
  --pink-600: #E84393;
  --pink-700: #C2185B;
  --rec-text: #E8E8E8;
  --rec-text-soft: #A0A0B0;
  --rec-text-muted: #6B6B6B;
  --rec-border: #3D3054;
  --rec-surface: #2D2044;
  --rec-bg: #1A1A2E;
  --rec-shadow: 0 1px 3px rgba(0,0,0,0.3);
  --rec-shadow-hover: 0 10px 25px -5px rgba(0,0,0,0.4);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{overflow-x:clip;scroll-behavior:smooth}
body{

/* Sub-menu dropdown */
.main-nav .sub-menu{
  display:none;
  position:absolute;top:100%;left:0;
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:0 0 var(--rec-radius-sm) var(--rec-radius-sm);
  box-shadow:var(--rec-shadow-hover);
  padding:8px;min-width:220px;z-index:999;
  flex-direction:column;gap:0;
}
.main-nav li:hover>.sub-menu{display:flex}
.main-nav .sub-menu li{height:auto}
.main-nav .sub-menu a{
  padding:8px 14px;height:auto;font-size:.82rem;
  border-bottom:1px solid var(--rec-border);white-space:nowrap;
}
.main-nav .sub-menu li:last-child a{border:none}
.main-nav .sub-menu a:hover{background:var(--pink-50);color:var(--pink-500);border-bottom-color:var(--rec-border)}
@media(max-width:768px){
  .main-nav .sub-menu{position:static;box-shadow:none;border:none;padding:0 0 0 16px;display:block}
}

body{
  font-family:var(--rec-font);
  background:var(--rec-bg);
  color:var(--rec-text);
  line-height:1.7;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
a{color:var(--pink-500);text-decoration:none;transition:all .2s}
a:hover{color:var(--pink-600)}
img{max-width:100%;height:auto;display:block}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.container-wide{max-width:1400px;margin:0 auto;padding:0 20px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* ═══════════════ HEADER + MEGA MENU ═══════════════ */
.site-header{
  background:var(--rec-surface);
  border-bottom:2px solid var(--rec-border);
  position:sticky;top:0;z-index:1000;
  box-shadow:var(--rec-shadow);
}
.header-inner{
  display:flex;align-items:center;gap:16px;
  max-width:1400px;margin:0 auto;padding:0 20px;
  height:64px;
}
.site-logo{flex-shrink:0}
.site-logo a{
  font-family:var(--rec-font-alt);
  font-size:1.4rem;font-weight:900;
  color:var(--rec-text);
  letter-spacing:-0.5px;
}
.site-logo span{color:var(--pink-500)}
.site-logo .icon{font-size:1.6rem;margin-right:4px}

/* Mega Menu */
.main-nav{flex:1;display:flex;align-items:center;height:100%}
.main-nav ul{display:flex;list-style:none;gap:0;height:100%}
.main-nav>ul>li{position:relative;height:100%}
.main-nav>ul>li>a{
  display:flex;align-items:center;
  padding:0 16px;height:100%;
  font-size:.875rem;font-weight:600;
  color:var(--rec-text-soft);
  transition:all .2s;
  white-space:nowrap;
  border-bottom:3px solid transparent;
}
.main-nav>ul>li>a:hover,.main-nav>ul>li.current-menu-item>a{
  color:var(--pink-500);
  border-bottom-color:var(--pink-500);
  background:var(--pink-50);
}
.main-nav .menu-item-has-children>a::after{
  content:" ▾";font-size:.65rem;margin-left:4px;opacity:.5;
}
.mega-menu-content{
  display:none;
  position:absolute;top:100%;left:0;
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:0 0 var(--rec-radius) var(--rec-radius);
  box-shadow:var(--rec-shadow-hover);
  padding:24px;
  min-width:600px;
  z-index:999;
  grid-template-columns:repeat(3,1fr);
  gap:24px;
}
.main-nav>ul>li:hover .mega-menu-content{display:grid}
.mega-col h4{
  font-size:.75rem;text-transform:uppercase;
  letter-spacing:1px;color:var(--pink-500);
  margin-bottom:12px;
  padding-bottom:8px;
  border-bottom:2px solid var(--pink-100);
}
.mega-col ul{flex-direction:column;gap:0;height:auto}
.mega-col ul li{height:auto}
.mega-col ul li a{
  padding:6px 0;
  font-size:.85rem;font-weight:400;
  color:var(--rec-text-soft);
  border:none;
  height:auto;
}
.mega-col ul li a:hover{color:var(--pink-500);background:none}
.mega-featured{grid-column:span 1}
.mega-featured .mega-card{
  background:var(--pink-50);
  border-radius:var(--rec-radius-sm);
  padding:12px;
  margin-bottom:8px;
  display:flex;gap:12px;align-items:center;
  transition:all .2s;
}
.mega-featured .mega-card:hover{background:var(--pink-100)}
.mega-featured .mega-card-img{
  width:56px;height:56px;border-radius:8px;
  background:var(--pink-200);flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  font-size:1.4rem;
}
.mega-featured .mega-card-text{flex:1;min-width:0}
.mega-featured .mega-card-text h5{
  font-size:.8rem;font-weight:600;
  color:var(--rec-text);
  line-height:1.3;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.mega-featured .mega-card-text span{
  font-size:.7rem;color:var(--rec-text-muted);
}

/* Header Actions */
.header-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.search-toggle{
  background:none;border:none;color:var(--rec-text-soft);
  font-size:1.2rem;cursor:pointer;padding:8px;
  border-radius:8px;transition:all .2s;
}
.search-toggle:hover{background:var(--pink-50);color:var(--pink-500)}
.voice-search-btn{
  background:none;border:none;color:var(--rec-text-muted);
  font-size:1.1rem;cursor:pointer;padding:8px;
  border-radius:50%;transition:all .2s;
}
.voice-search-btn:hover{background:var(--pink-50);color:var(--pink-500)}
.voice-search-btn.listening{color:var(--pink-500);animation:pulse 1s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.5}}
.menu-toggle{
  display:none;background:none;border:1px solid var(--rec-border);
  color:var(--rec-text);padding:8px 12px;border-radius:8px;
  cursor:pointer;font-size:1.2rem;
}

/* Search Overlay */
.search-overlay{
  display:none;
  position:fixed;top:64px;left:0;right:0;
  background:var(--rec-surface);
  border-bottom:2px solid var(--rec-border);
  padding:20px;
  z-index:999;
  box-shadow:var(--rec-shadow-hover);
}
.search-overlay.active{display:block}
.search-overlay-inner{max-width:600px;margin:0 auto}
.search-overlay input{
  width:100%;padding:14px 18px;
  border:2px solid var(--rec-border);border-radius:12px;
  font-size:1rem;color:var(--rec-text);
  background:var(--rec-bg);
  outline:none;transition:border-color .2s;
}
.search-overlay input:focus{border-color:var(--pink-400)}
.search-overlay .search-suggestions{
  margin-top:12px;display:flex;flex-wrap:wrap;gap:6px;
}
.search-overlay .search-suggestions span{
  font-size:.75rem;color:var(--rec-text-muted);
  background:var(--pink-50);padding:4px 12px;
  border-radius:20px;cursor:pointer;transition:all .2s;
}
.search-overlay .search-suggestions span:hover{background:var(--pink-100);color:var(--pink-500)}

/* ═══════════════ HERO CAROUSEL ═══════════════ */
.hero-section{
  margin:0 0 24px;
  border-radius:0 0 var(--rec-radius) var(--rec-radius);
  overflow:hidden;position:relative;
}
.hero-carousel{position:relative;overflow:hidden}
.hero-slides{display:flex;transition:transform .5s ease}
.hero-slide{
  min-width:100%;position:relative;
  aspect-ratio:12/5;
  display:flex;align-items:flex-end;
}
.hero-slide-bg{
  position:absolute;inset:0;
  background:linear-gradient(135deg,var(--pink-600),var(--pink-400));
  display:flex;align-items:center;justify-content:center;
  font-size:4rem;
}
.hero-slide::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,transparent 20%,rgba(0,0,0,.7) 100%);
  pointer-events:none;z-index:1;
}
.hero-slide-content{
  position:relative;z-index:2;padding:40px;
  width:100%;
}
.hero-slide-content .hero-cat{
  display:inline-block;
  background:var(--pink-500);color:#fff;
  padding:3px 12px;border-radius:20px;
  font-size:.7rem;font-weight:700;text-transform:uppercase;
  margin-bottom:8px;
}
.hero-slide-content h2{
  font-size:1.6rem;font-weight:800;color:#fff;
  margin-bottom:8px;line-height:1.2;
  text-shadow:0 2px 8px rgba(0,0,0,.5);
  max-width:600px;
}
.hero-slide-content .hero-meta{
  display:flex;gap:16px;font-size:.85rem;color:rgba(255,255,255,.85);
}
.hero-dots{
  position:absolute;bottom:16px;right:40px;z-index:3;
  display:flex;gap:6px;
}
.hero-dot{
  width:10px;height:10px;border-radius:50%;
  background:rgba(255,255,255,.4);border:none;cursor:pointer;
  transition:all .3s;
}
.hero-dot.active{background:#fff;transform:scale(1.3)}

/* ═══════════════ FRIDGE FINDER ═══════════════ */
.fridge-finder{
  background:var(--rec-surface);
  border:2px solid var(--pink-100);
  border-radius:var(--rec-radius);
  padding:24px;
  margin-bottom:24px;
}
.fridge-finder-header{
  display:flex;align-items:center;gap:12px;
  margin-bottom:16px;
}
.fridge-finder-header .icon{font-size:1.8rem}
.fridge-finder-header h2{font-size:1.1rem}
.fridge-finder-header p{font-size:.85rem;color:var(--rec-text-soft);margin-top:2px}
.fridge-input-wrap{display:flex;gap:8px}
.fridge-input-wrap input{
  flex:1;padding:12px 16px;
  border:2px solid var(--rec-border);border-radius:10px;
  font-size:.95rem;color:var(--rec-text);
  background:var(--rec-bg);outline:none;
}
.fridge-input-wrap input:focus{border-color:var(--pink-400)}
.fridge-input-wrap button{
  background:var(--pink-500);color:#fff;border:none;
  padding:12px 24px;border-radius:10px;
  font-weight:700;cursor:pointer;transition:all .2s;
}
.fridge-input-wrap button:hover{background:var(--pink-600)}
.fridge-suggestions{
  display:flex;flex-wrap:wrap;gap:6px;margin-top:12px;
}
.fridge-suggestions .chip{
  background:var(--pink-50);color:var(--rec-text-soft);
  padding:5px 14px;border-radius:20px;
  font-size:.8rem;cursor:pointer;
  border:1px solid transparent;transition:all .2s;
}
.fridge-suggestions .chip:hover,.fridge-suggestions .chip.active{
  border-color:var(--pink-400);color:var(--pink-500);background:var(--pink-100);
}
.fridge-results{display:none;margin-top:16px}

/* ═══════════════ TOOLS STRIP ═══════════════ */
.tools-strip{
  margin-bottom:24px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.tools-strip::-webkit-scrollbar{display:none}
.tools-strip-inner{
  display:flex;gap:12px;
  padding:4px 0;
  min-width:max-content;
}
.tool-chip{
  display:flex;align-items:center;gap:8px;
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:100px;
  padding:10px 20px;
  font-size:.85rem;font-weight:600;
  color:var(--rec-text-soft);
  transition:all .2s;
  white-space:nowrap;
  flex-shrink:0;
}
.tool-chip:hover{
  border-color:var(--pink-400);
  color:var(--pink-500);
  background:var(--pink-50);
  transform:translateY(-1px);
  box-shadow:var(--rec-shadow);
}
.tool-chip .icon{font-size:1.2rem}

/* ═══════════════ MAGAZINE GRID ═══════════════ */
.section-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:16px;
}
.section-header h2{
  font-size:1.25rem;font-weight:800;
  font-family:var(--rec-font-alt);
  color:var(--rec-text);
}
.section-header h2 span{color:var(--pink-500)}
.section-header .view-all{
  font-size:.8rem;font-weight:600;color:var(--rec-text-soft);
  display:flex;align-items:center;gap:4px;
}
.posts-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(280px,1fr));
  gap:20px;margin-bottom:32px;
}
.posts-grid.cols-2{grid-template-columns:repeat(2,1fr)}
.posts-grid.featured-grid{
  grid-template-columns:1.5fr 1fr;
}
.post-card{
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);
  overflow:hidden;
  transition:all .3s;
  box-shadow:var(--rec-shadow);
}
.post-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--rec-shadow-hover);
}
.post-card-img{
  aspect-ratio:16/9;
  background:var(--pink-50);
  display:flex;align-items:center;justify-content:center;
  font-size:3rem;
  overflow:hidden;
}
.post-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.post-card:hover .post-card-img img{transform:scale(1.05)}
.post-card-body{padding:16px}
.post-card-badges{display:flex;gap:4px;margin-bottom:8px;flex-wrap:wrap}
.diet-badge{
  display:inline-block;padding:1px 8px;
  border-radius:4px;font-size:.65rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.3px;
}
.diet-badge.vg{background:#D4EDDA;color:#155724}
.diet-badge.gf{background:#FFF3CD;color:#856404}
.diet-badge.lc{background:#F8D7DA;color:#721C24}
.diet-badge.ft{background:#CCE5FF;color:#004085}
.diet-badge.df{background:#E2E3E5;color:#383D41}
[data-theme="dark"] .diet-badge.vg{background:#1B3D2B;color:#7DDFA0}
[data-theme="dark"] .diet-badge.gf{background:#3D3520;color:#FFD75C}
[data-theme="dark"] .diet-badge.lc{background:#3D2020;color:#FF7D7D}
[data-theme="dark"] .diet-badge.ft{background:#1B2D3D;color:#7DB8FF}
[data-theme="dark"] .diet-badge.df{background:#2D2D2D;color:#CCC}
.post-card h3{
  font-size:.95rem;font-weight:700;line-height:1.4;margin-bottom:8px;
}
.post-card h3 a{color:var(--rec-text)}
.post-card h3 a:hover{color:var(--pink-500)}
.post-card-meta{
  display:flex;align-items:center;gap:12px;
  font-size:.75rem;color:var(--rec-text-muted);
}
.post-card-meta .stars{color:#F59E0B;letter-spacing:1px}
.post-card-meta .match-indicator{
  background:var(--pink-50);padding:2px 8px;border-radius:4px;
  color:var(--pink-500);font-weight:600;font-size:.65rem;
}
.post-card.featured-card{grid-row:span 2}
.post-card.featured-card .post-card-img{aspect-ratio:16/12}
.post-card.featured-card h3{font-size:1.1rem}

/* Alternating grid (Love & Lemons style) */
.alternating-grid{display:flex;flex-direction:column;gap:24px}
.alt-row{
  display:grid;grid-template-columns:1fr 1fr;gap:20px;
  align-items:start;
}
.alt-row .alt-card{background:var(--rec-surface);border:1px solid var(--rec-border);border-radius:var(--rec-radius);overflow:hidden;transition:all .3s}
.alt-row .alt-card:hover{transform:translateY(-2px);box-shadow:var(--rec-shadow-hover)}
.alt-card .alt-card-img{aspect-ratio:1/1;background:var(--pink-50);display:flex;align-items:center;justify-content:center;font-size:3rem;overflow:hidden}
.alt-card .alt-card-img img{width:100%;height:100%;object-fit:cover}
.alt-card .alt-card-body{padding:16px}
.alt-card .alt-card-body .alt-label{font-size:.65rem;font-weight:700;text-transform:uppercase;color:var(--pink-500);margin-bottom:4px}
.alt-card .alt-card-body h3{font-size:.9rem;line-height:1.4}
.alt-card .alt-card-body h3 a{color:var(--rec-text)}
.alt-card .alt-card-body .alt-desc{font-size:.8rem;color:var(--rec-text-soft);margin-top:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ═══════════════ SINGLE RECIPE ═══════════════ */
.recipe-single{max-width:1200px;margin:24px auto;padding:0 20px}
.recipe-layout-desktop{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}
.recipe-main{min-width:0}
.recipe-sidebar{position:sticky;top:88px}
.post-header{margin-bottom:20px}
.post-header .breadcrumbs{
  font-size:.75rem;color:var(--rec-text-muted);margin-bottom:8px;
  display:flex;flex-wrap:wrap;gap:4px;
}
.post-header .breadcrumbs a{color:var(--rec-text-muted)}
.post-header .breadcrumbs a:hover{color:var(--pink-500)}
.post-header h1{font-size:1.8rem;line-height:1.2;margin-bottom:8px}
.post-meta-bar{
  display:flex;flex-wrap:wrap;gap:16px;
  font-size:.85rem;color:var(--rec-text-soft);
  align-items:center;
}
.post-meta-bar .stars{color:#F59E0B}
.recipe-actions-bar{
  display:flex;gap:8px;margin:16px 0;
  flex-wrap:wrap;
}
.recipe-actions-bar button,.recipe-actions-bar a{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 16px;border-radius:8px;
  font-size:.8rem;font-weight:600;
  border:1px solid var(--rec-border);
  background:var(--rec-surface);color:var(--rec-text-soft);
  cursor:pointer;transition:all .2s;
}
.recipe-actions-bar button:hover,.recipe-actions-bar a:hover{
  border-color:var(--pink-400);color:var(--pink-500);background:var(--pink-50);
}
.recipe-actions-bar .save-btn.active{color:var(--pink-500);border-color:var(--pink-500)}
.featured-image-wrap{
  border-radius:var(--rec-radius);overflow:hidden;
  margin-bottom:24px;
  aspect-ratio:16/9;
  background:var(--pink-50);
}
.featured-image-wrap img{width:100%;height:100%;object-fit:cover}

/* Ingredients sidebar (sticky) */
.ingredients-box{
  background:var(--rec-surface);
  border:2px solid var(--pink-100);
  border-radius:var(--rec-radius);
  padding:20px;
}
.ingredients-box h3{
  font-size:1rem;font-weight:700;margin-bottom:12px;
  display:flex;align-items:center;justify-content:space-between;
}
.ingredients-box h3 .serving-controls{
  display:flex;align-items:center;gap:8px;
  font-size:.8rem;font-weight:600;color:var(--rec-text-soft);
}
.ingredients-box h3 .serving-controls button{
  width:28px;height:28px;border-radius:50%;
  border:1px solid var(--rec-border);
  background:var(--rec-bg);color:var(--rec-text);
  font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;
  transition:all .2s;
}
.ingredients-box h3 .serving-controls button:hover{background:var(--pink-50);border-color:var(--pink-400);color:var(--pink-500)}
.ingredients-progress{
  height:4px;background:var(--pink-100);border-radius:2px;
  margin-bottom:12px;overflow:hidden;
}
.ingredients-progress-bar{
  height:100%;background:var(--pink-500);
  border-radius:2px;transition:width .3s;
  width:0%;
}
.ingredient-item{
  display:flex;align-items:center;gap:10px;
  padding:8px 0;
  border-bottom:1px solid var(--rec-border);
  font-size:.85rem;line-height:1.4;
  cursor:pointer;transition:all .2s;
}
.ingredient-item:last-child{border:none}
.ingredient-item input[type="checkbox"]{
  width:18px;height:18px;border-radius:4px;
  border:2px solid var(--pink-300);
  accent-color:var(--pink-500);
  cursor:pointer;flex-shrink:0;
}
.ingredient-item.checked{opacity:.5;text-decoration:line-through}
.ingredient-item .qty{font-weight:700;color:var(--pink-500);flex-shrink:0}
.ingredient-sub{
  margin-left:auto;opacity:0;font-size:.8rem;
  color:var(--rec-text-muted);text-decoration:none;
  padding:2px 4px;border-radius:4px;transition:all .2s;
  flex-shrink:0;
}
.ingredient-item:hover .ingredient-sub{opacity:1}
.ingredient-sub:hover{background:var(--pink-50);color:var(--purple-500)}
.ingredients-actions{
  display:flex;flex-wrap:wrap;gap:4px;
  margin-top:10px;padding-top:10px;
  border-top:1px solid var(--rec-border);
}
.ia-btn{
  display:inline-flex;align-items:center;gap:3px;
  padding:5px 10px;border-radius:6px;
  font-size:.7rem;font-weight:600;
  background:var(--pink-50);
  border:1px solid var(--rec-border);
  color:var(--rec-text-soft);text-decoration:none;
  transition:all .2s;
}
.ia-btn:hover{border-color:var(--pink-400);color:var(--pink-500);background:var(--pink-100)}

/* Recipe steps */
.recipe-steps-section h2{
  font-size:1.15rem;font-weight:700;margin-bottom:16px;
  font-family:var(--rec-font-alt);
}
.recipe-step{
  display:flex;gap:16px;
  padding:16px 0;
  border-bottom:1px solid var(--rec-border);
}
.recipe-step:last-child{border:none}
.recipe-step-num{
  width:36px;height:36px;border-radius:50%;
  background:var(--pink-500);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:900;font-size:.85rem;
  flex-shrink:0;
  box-shadow:0 2px 8px rgba(232,67,147,.3);
}
.recipe-step-body{flex:1;min-width:0}
.recipe-step-body p{font-size:.9rem;line-height:1.7}
.recipe-step-body .step-timer{
  display:inline-flex;align-items:center;gap:4px;
  margin-top:8px;padding:4px 12px;
  background:var(--pink-50);border:1px solid var(--pink-100);
  border-radius:6px;font-size:.75rem;font-weight:600;color:var(--pink-500);
  cursor:pointer;transition:all .2s;
}
.recipe-step-body .step-timer:hover{background:var(--pink-100)}
.recipe-tips-box{
  background:linear-gradient(135deg,var(--pink-600),var(--pink-500));
  color:#fff;border-radius:var(--rec-radius);
  padding:20px;margin:24px 0;
}
.recipe-tips-box h2{font-size:1rem;margin-bottom:8px;font-family:var(--rec-font-alt)}
.recipe-tips-box p{font-size:.88rem;opacity:.92;line-height:1.7}
.nutrition-box{
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);
  padding:20px;margin:24px 0;
}
.nutrition-box h2{font-size:1rem;margin-bottom:12px}
.nutrition-grid{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
  gap:8px;
}
.nutrition-item{
  text-align:center;padding:10px;
  background:var(--pink-50);border-radius:8px;
}
.nutrition-item .value{font-size:1.1rem;font-weight:800;color:var(--pink-500)}
.nutrition-item .label{font-size:.65rem;text-transform:uppercase;color:var(--rec-text-muted);font-weight:600}
.faq-section{margin:24px 0}
.faq-section h2{font-size:1rem;margin-bottom:12px;font-family:var(--rec-font-alt)}
.faq-item{
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius-sm);
  margin-bottom:8px;overflow:hidden;
}
.faq-item h3{
  padding:14px 16px;cursor:pointer;font-size:.88rem;
  display:flex;justify-content:space-between;align-items:center;
  transition:all .2s;
}
.faq-item h3:hover{background:var(--pink-50)}
.faq-item h3::after{content:"+";font-size:1.1rem;color:var(--pink-400);transition:transform .2s}
.faq-item h3.active::after{content:"−"}
.faq-item .faq-answer{
  padding:0 16px 14px;display:none;
  font-size:.84rem;color:var(--rec-text-soft);line-height:1.6;
}

/* Related recipes */
.related-section{margin:32px 0}
.related-section h2{font-size:1rem;margin-bottom:16px;font-family:var(--rec-font-alt)}

/* ═══════════════ GUIDED COOKING MODE ═══════════════ */
.cooking-mode-overlay{
  display:none;
  position:fixed;inset:0;z-index:9999;
  background:var(--rec-bg);
  overflow-y:auto;
}
.cooking-mode-overlay.active{display:block}
.cooking-mode-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 20px;
  background:var(--rec-surface);
  border-bottom:1px solid var(--rec-border);
  position:sticky;top:0;z-index:10;
}
.cooking-mode-header h3{font-size:.9rem}
.cooking-mode-close{
  background:none;border:none;font-size:1.3rem;
  color:var(--rec-text);cursor:pointer;
  width:36px;height:36px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.cooking-mode-close:hover{background:var(--pink-50)}
.cooking-progress-bar{
  height:3px;background:var(--pink-100);
  position:sticky;top:57px;z-index:10;
}
.cooking-progress-fill{
  height:100%;background:var(--pink-500);
  transition:width .3s;
}
.cooking-step-container{
  max-width:500px;margin:40px auto;
  padding:0 20px 80px;
  text-align:center;
}
.cooking-step-count{
  font-size:.75rem;color:var(--rec-text-muted);
  font-weight:600;margin-bottom:8px;
}
.cooking-step-image{
  width:100%;aspect-ratio:1/1;
  background:var(--pink-50);border-radius:var(--rec-radius);
  display:flex;align-items:center;justify-content:center;
  font-size:5rem;margin-bottom:20px;
  overflow:hidden;
}
.cooking-step-image img{width:100%;height:100%;object-fit:cover}
.cooking-step-text{
  font-size:1.2rem;line-height:1.6;
  font-weight:600;margin-bottom:24px;
}
.cooking-step-timer-btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--pink-500);color:#fff;border:none;
  padding:14px 28px;border-radius:100px;
  font-size:1rem;font-weight:700;cursor:pointer;
  transition:all .2s;margin-bottom:24px;
}
.cooking-step-timer-btn:hover{background:var(--pink-600)}
.cooking-timer-display{
  font-size:3rem;font-weight:900;
  color:var(--pink-500);
  font-variant-numeric:tabular-nums;
  margin-bottom:24px;
  display:none;
}
.cooking-nav{
  display:flex;gap:12px;justify-content:center;
}
.cooking-nav button{
  padding:12px 24px;border-radius:10px;
  border:1px solid var(--rec-border);
  background:var(--rec-surface);color:var(--rec-text);
  font-weight:600;cursor:pointer;
  transition:all .2s;
}
.cooking-nav button:hover{border-color:var(--pink-400);color:var(--pink-500)}
.cooking-nav button.primary{background:var(--pink-500);color:#fff;border-color:var(--pink-500)}
.cooking-nav button.primary:hover{background:var(--pink-600)}

/* ═══════════════ ARCHIVE + FILTERS ═══════════════ */
.archive-header{
  text-align:center;padding:24px 0;
  background:var(--rec-surface);
  border-bottom:1px solid var(--rec-border);
  margin-bottom:24px;
}
.archive-header h1{font-family:var(--rec-font-alt);font-size:1.5rem;margin-bottom:4px}
.archive-header p{font-size:.85rem;color:var(--rec-text-soft)}
.filter-bar{
  display:flex;gap:8px;flex-wrap:wrap;
  margin-bottom:20px;
  padding:12px;background:var(--rec-surface);
  border-radius:var(--rec-radius-sm);
  border:1px solid var(--rec-border);
}
.filter-group{
  display:flex;flex-wrap:wrap;gap:4px;
}
.filter-chip{
  display:inline-block;
  padding:5px 12px;border-radius:20px;
  font-size:.78rem;font-weight:500;
  background:var(--pink-50);color:var(--rec-text-soft);
  border:1px solid transparent;
  cursor:pointer;transition:all .2s;
}
.filter-chip:hover,.filter-chip.active{
  border-color:var(--pink-400);color:var(--pink-500);background:var(--pink-100);
}
.pagination{
  display:flex;justify-content:center;gap:6px;
  margin:32px 0;
}
.pagination .page-numbers{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:36px;height:36px;padding:0 8px;
  border:1px solid var(--rec-border);border-radius:8px;
  background:var(--rec-surface);color:var(--rec-text-soft);
  font-size:.8rem;font-weight:600;text-decoration:none;
  transition:all .2s;
}
.pagination .page-numbers.current{
  background:var(--pink-500);color:#fff;border-color:var(--pink-500);
}
.pagination .page-numbers:hover:not(.current){border-color:var(--pink-400);color:var(--pink-500)}

/* ═══════════════ TOOL PAGES ═══════════════ */
.tool-page{padding:24px 0}
.tool-header{text-align:center;margin-bottom:24px}
.tool-header h1{font-size:1.5rem;font-family:var(--rec-font-alt);margin-bottom:4px}
.tool-header p{color:var(--rec-text-soft);font-size:.9rem}
.tool-card-page{
  max-width:700px;margin:0 auto;
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);
  padding:32px;
}
.tool-card-page label{display:block;font-size:.85rem;font-weight:600;margin-bottom:4px;color:var(--rec-text)}
.tool-card-page input,.tool-card-page select{
  width:100%;padding:10px 14px;
  border:2px solid var(--rec-border);border-radius:8px;
  font-size:.9rem;color:var(--rec-text);background:var(--rec-bg);
  outline:none;transition:border-color .2s;
  margin-bottom:16px;
}
.tool-card-page input:focus,.tool-card-page select:focus{border-color:var(--pink-400)}
.tool-card-page .tool-btn{
  background:var(--pink-500);color:#fff;border:none;
  padding:12px 24px;border-radius:8px;
  font-weight:700;cursor:pointer;width:100%;
  font-size:.95rem;transition:all .2s;
}
.tool-card-page .tool-btn:hover{background:var(--pink-600)}
.tool-card-page .tool-result{
  background:var(--pink-50);
  border:2px solid var(--pink-100);
  border-radius:var(--rec-radius-sm);
  padding:20px;margin-top:20px;
  display:none;
}
.tool-card-page .tool-result .result-value{
  font-size:1.8rem;font-weight:900;color:var(--pink-500);
  text-align:center;
}
.tool-card-page .tool-result .result-label{text-align:center;font-size:.85rem;color:var(--rec-text-soft);margin-top:4px}

/* ═══════════════ NEWSLETTER ═══════════════ */
.newsletter-section{
  background:linear-gradient(135deg,var(--pink-500),var(--pink-600));
  border-radius:var(--rec-radius);
  padding:32px;
  text-align:center;
  margin:32px 0;
  color:#fff;
}
.newsletter-section h2{font-size:1.2rem;font-family:var(--rec-font-alt);margin-bottom:4px}
.newsletter-section p{font-size:.85rem;opacity:.9;margin-bottom:16px}
.newsletter-form{display:flex;gap:8px;max-width:400px;margin:0 auto}
.newsletter-form input{
  flex:1;padding:10px 16px;
  border:2px solid rgba(255,255,255,.3);
  border-radius:8px;font-size:.9rem;
  background:rgba(255,255,255,.1);
  color:#fff;outline:none;
}
.newsletter-form input::placeholder{color:rgba(255,255,255,.6)}
.newsletter-form input:focus{border-color:rgba(255,255,255,.6)}
.newsletter-form button{
  background:#fff;color:var(--pink-600);
  border:none;padding:10px 20px;
  border-radius:8px;font-weight:700;cursor:pointer;
  transition:all .2s;
}
.newsletter-form button:hover{background:var(--pink-50)}

/* ═══════════════ FOOTER ═══════════════ */
.site-footer{
  background:var(--rec-surface);
  border-top:2px solid var(--rec-border);
  padding:40px 0 24px;
  margin-top:48px;
}
.footer-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:32px;margin-bottom:24px;
}
.footer-col h4{
  font-size:.75rem;text-transform:uppercase;
  letter-spacing:1px;color:var(--pink-500);
  margin-bottom:12px;
}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:6px}
.footer-col a{font-size:.82rem;color:var(--rec-text-soft);transition:all .2s}
.footer-col a:hover{color:var(--pink-500)}
.footer-bottom{
  text-align:center;font-size:.78rem;
  color:var(--rec-text-muted);
  padding-top:16px;
  border-top:1px solid var(--rec-border);
}

/* ═══════════════ RESPONSIVE ═══════════════ */
@media(max-width:900px){
  .posts-grid.featured-grid{grid-template-columns:1fr}
  .recipe-layout-desktop{grid-template-columns:1fr}
  .recipe-sidebar{position:static}
  .alt-row{grid-template-columns:1fr}
}
@media(max-width:768px){
  .header-inner{height:56px}
  .main-nav{
    display:none;
    position:fixed;top:56px;left:0;right:0;bottom:0;
    background:var(--rec-surface);
    z-index:9998;padding:20px;
    overflow-y:auto;
  }
  .main-nav.active{display:block}
  .main-nav ul{flex-direction:column;height:auto}
  .main-nav>ul>li{height:auto}
  .main-nav>ul>li>a{
    padding:12px 16px;height:auto;
    border-bottom:1px solid var(--rec-border);
  }
  .main-nav>ul>li>a:hover,.main-nav>ul>li.current-menu-item>a{border-bottom-color:var(--rec-border)}
  .mega-menu-content{
    display:none !important;
    position:static;min-width:auto;
    box-shadow:none;border:none;
    padding:0 0 0 16px;
  }
  .main-nav>ul>li.open .mega-menu-content{display:grid !important;grid-template-columns:1fr !important;gap:12px}
  .menu-toggle{display:flex}
  .hero-slide{aspect-ratio:16/9}
  .hero-slide-content h2{font-size:1.15rem}
  .fridge-input-wrap{flex-direction:column}
  .posts-grid{grid-template-columns:1fr}
  .post-header h1{font-size:1.3rem}
  .cooking-step-text{font-size:1rem}
  .newsletter-form{flex-direction:column}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
  .container{padding:0 16px}
  .featured-tools{grid-template-columns:repeat(3,1fr);gap:8px}
  .ft-card{padding:12px 8px}
  .tools-strip-inner{gap:8px}
  .tool-chip{padding:8px 14px;font-size:.78rem}
}
@media(max-width:480px){
  .hero-slide-content{padding:16px}
  .hero-slide-content h2{font-size:.95rem}
  .tool-card-page{padding:12px}
  .footer-grid{grid-template-columns:1fr}
  .container{padding:0 12px}
  .featured-tools{grid-template-columns:repeat(2,1fr);gap:6px}
  .ft-name{font-size:.78rem}
  .ft-desc{font-size:.68rem;-webkit-line-clamp:2}
  .archive-grid{grid-template-columns:repeat(2,1fr)}
  .hero-slide{aspect-ratio:4/3}
  .cooking-step-container{padding:0 12px 60px}
  .cooking-step-text{font-size:.9rem}
  .section-header h2{font-size:1.1rem}
  .post-card-body h3{font-size:.85rem}
  .newsletter-section{padding:24px 12px}
  .inline-cta-banner{flex-direction:column;text-align:center;gap:8px;padding:16px 12px}
  .inline-cta-body h4{font-size:.85rem}
  .alt-card .alt-desc{-webkit-line-clamp:2}
}

/* ═══════════════ ARCHIVE GRID ENHANCEMENTS ═══════════════ */
.archive-grid{grid-template-columns:repeat(3,1fr)}
.subcategory-bar{
  display:flex;align-items:center;gap:12px;
  margin-bottom:16px;padding:12px 16px;
  background:var(--rec-surface);border:1px solid var(--rec-border);
  border-radius:var(--rec-radius-sm);overflow-x:auto;
}
.subcategory-label{font-size:.75rem;font-weight:700;color:var(--rec-text-muted);white-space:nowrap;text-transform:uppercase;letter-spacing:.5px;}
.subcategory-list{display:flex;gap:6px;flex-wrap:nowrap}
.subcategory-chip{
  display:inline-block;padding:4px 14px;border-radius:20px;
  font-size:.78rem;font-weight:600;
  background:var(--pink-50);color:var(--rec-text-soft);
  border:1px solid var(--rec-border);
  transition:all .2s;white-space:nowrap;
}
.subcategory-chip:hover{border-color:var(--pink-400);color:var(--pink-500);background:var(--pink-100)}
.archive-description{font-size:.85rem;color:var(--rec-text-soft);margin-top:8px;max-width:700px;margin-left:auto;margin-right:auto;}
.sort-group{margin-left:auto}
.sort-form select{
  padding:6px 12px;border:1px solid var(--rec-border);border-radius:8px;
  font-size:.78rem;font-weight:600;color:var(--rec-text-soft);
  background:var(--rec-surface);cursor:pointer;outline:none;
}
.sort-form select:focus{border-color:var(--pink-400)}
@media(max-width:1024px){.archive-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.archive-grid{grid-template-columns:1fr}}
.post-card-link{display:block;color:inherit;text-decoration:none}

/* ═══════════════ JUMP TO RECIPE ═══════════════ */
.jump-to-recipe{
  position:fixed;bottom:80px;right:20px;z-index:999;
  background:var(--pink-500);color:#fff;border:none;
  padding:12px 20px;border-radius:100px;
  font-weight:700;font-size:.85rem;cursor:pointer;
  box-shadow:0 4px 16px rgba(232,67,147,.4);
  transition:all .3s;opacity:0;transform:translateY(20px);
  pointer-events:none;
}
.jump-to-recipe.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.jump-to-recipe:hover{background:var(--pink-600);transform:translateY(-2px);box-shadow:0 6px 20px rgba(232,67,147,.5)}
.jump-to-recipe.visible:hover{transform:translateY(-2px)}

/* ═══════════════ STAR RATING ═══════════════ */
.star-rating-box{
  display:flex;align-items:center;gap:10px;margin-top:12px;
  flex-wrap:wrap;
}
.star-rating-label{font-size:.8rem;font-weight:600;color:var(--rec-text-soft)}
.star-rating-stars{display:inline-flex;gap:2px}
.star-btn{
  background:none;border:none;cursor:pointer;
  font-size:1.4rem;line-height:1;padding:2px;
  color:var(--rec-border);transition:all .15s;
}
.star-btn.active,.star-btn:hover{color:#F59E0B}
.star-btn:hover~.star-btn{color:var(--rec-border)}
.rating-feedback{font-size:.75rem;color:var(--rec-text-muted);font-weight:600;min-width:80px}

/* ═══════════════ TOGGLE UNITS ═══════════════ */
.unit-toggle-wrap{margin-bottom:10px}
.unit-toggle{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 14px;border-radius:20px;
  font-size:.75rem;font-weight:700;cursor:pointer;
  border:1px solid var(--pink-300);
  background:var(--pink-50);color:var(--pink-500);
  transition:all .2s;
}
.unit-toggle:hover{background:var(--pink-100);border-color:var(--pink-500)}
.unit-toggle[data-mode="cups"]{background:var(--pink-500);color:#fff;border-color:var(--pink-500)}

/* ═══════════════ EQUIPMENT DISPLAY ═══════════════ */
.equipment-box{
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);
  padding:16px;margin-top:12px;
}
.equipment-box h3{font-size:.9rem;font-weight:700;margin-bottom:10px}
.equipment-list{list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.equipment-list li{
  background:var(--pink-50);
  border:1px solid var(--rec-border);
  border-radius:20px;
  padding:4px 14px;
  font-size:.78rem;font-weight:600;
  color:var(--rec-text-soft);
  display:inline-flex;align-items:center;gap:4px;
}

/* ═══════════════ COOK MODE ENHANCEMENTS ═══════════════ */
.cook-mode-status{
  display:flex;align-items:center;gap:6px;
}
.wake-lock-indicator{
  display:inline-block;
  font-size:1rem;
  opacity:.5;transition:opacity .3s;
}
.wake-lock-indicator.active{opacity:1;animation:pulse 1.5s infinite}

/* ═══════════════ GOOGLE DISCOVERY BANNER ═══════════════ */
.google-discovery-banner{
  display:flex;align-items:center;gap:16px;
  background:linear-gradient(135deg,var(--pink-50),var(--pink-100));
  border:2px solid var(--pink-200);
  border-radius:var(--rec-radius);
  padding:16px 20px;margin:0 0 24px;
  position:relative;overflow:hidden;
}
.google-discovery-banner::before{
  content:'';position:absolute;top:-50%;right:-20%;
  width:120px;height:120px;
  background:var(--pink-200);opacity:.3;
  border-radius:50%;pointer-events:none;
}
.gdb-icon{font-size:2rem;flex-shrink:0;position:relative;z-index:1}
.gdb-content{flex:1;min-width:0;position:relative;z-index:1}
.gdb-title{font-size:.85rem;font-weight:700;color:var(--rec-text);margin-bottom:2px;line-height:1.3}
.gdb-title strong{color:var(--pink-500)}
.gdb-text{font-size:.75rem;color:var(--rec-text-soft);line-height:1.4}
.gdb-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 18px;border-radius:8px;
  font-size:.78rem;font-weight:700;white-space:nowrap;
  background:var(--pink-500);color:#fff;text-decoration:none;
  transition:all .2s;flex-shrink:0;position:relative;z-index:1;
}
.gdb-btn:hover{background:var(--pink-600);color:#fff;transform:translateY(-1px)}
@media(max-width:640px){
  .google-discovery-banner{flex-direction:column;text-align:center;gap:10px}
  .gdb-btn{width:100%;justify-content:center}
}

/* ═══════════════ AEO CARD — Resposta Direta para Agentes ═══════════════ */
.aeo-card{
  background:var(--rec-surface);
  border:2px solid var(--purple-400);
  border-radius:var(--rec-radius);
  padding:24px;margin:0 0 24px;
  position:relative;overflow:hidden;
  box-shadow:0 0 0 1px rgba(108,92,231,.1),0 4px 20px rgba(108,92,231,.08);
}
.aeo-card::before{
  content:'';position:absolute;top:0;right:0;
  width:120px;height:120px;
  background:linear-gradient(135deg,var(--purple-400),var(--purple-500));
  opacity:.06;border-radius:0 0 0 120px;
  pointer-events:none;
}
.aeo-card-answer{
  font-size:.9rem;line-height:1.7;
  color:var(--rec-text-soft);
}
.aeo-card-answer p{margin-bottom:8px}
.aeo-card-answer strong{color:var(--rec-text)}
.aeo-card-details{
  margin:8px 0;border:1px solid var(--rec-border);
  border-radius:var(--rec-radius-sm);overflow:hidden;
}
.aeo-card-details summary{
  padding:10px 14px;cursor:pointer;
  font-size:.82rem;font-weight:700;
  color:var(--purple-500);
  background:var(--pink-50);
  transition:all .2s;
  user-select:none;
}
.aeo-card-details summary:hover{background:var(--pink-100)}
.aeo-card-details[open] summary{border-bottom:1px solid var(--rec-border)}
.aeo-card-details ul,.aeo-card-details ol{
  padding:12px 16px 12px 32px;margin:0;
  font-size:.82rem;line-height:1.6;
}
.aeo-card-details li{margin-bottom:4px}
.aeo-card-details li:last-child{margin-bottom:0}
.aeo-card-details ol li{padding-left:4px}
.aeo-card-tools{
  display:flex;flex-wrap:wrap;gap:6px;
  margin-top:16px;padding-top:12px;
  border-top:1px solid var(--rec-border);
}
.aeo-tool-chip{
  display:inline-flex;align-items:center;gap:4px;
  padding:6px 14px;border-radius:20px;
  font-size:.72rem;font-weight:600;
  background:var(--pink-50);
  border:1px solid var(--rec-border);
  color:var(--rec-text-soft);
  text-decoration:none;transition:all .2s;
  white-space:nowrap;
}
.aeo-tool-chip:hover{
  border-color:var(--purple-400);
  color:var(--purple-500);
  background:var(--pink-100);
  transform:translateY(-1px);
}
@media(max-width:640px){
  .aeo-card{padding:16px}
  .aeo-card-tools{justify-content:center}
}

/* ═══════════════ PRINT BUTTON ═══════════════ */
.print-btn{background:var(--pink-500) !important;color:#fff !important;border-color:var(--pink-500) !important}
.print-btn:hover{background:var(--pink-600) !important}

/* ═══════════════ MOBILE BOTTOM NAV BAR ═══════════════ */
.mobile-bottom-nav{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:9998;
  background:var(--rec-surface);
  border-top:2px solid var(--rec-border);
  padding:6px 0 env(safe-area-inset-bottom,6px);
  box-shadow:0 -4px 12px rgba(0,0,0,.08);
}
.mobile-bottom-nav-inner{
  display:flex;justify-content:space-around;align-items:center;
  max-width:500px;margin:0 auto;
}
.mobile-nav-item{
  display:flex;flex-direction:column;align-items:center;gap:2px;
  padding:6px 12px;font-size:.65rem;font-weight:600;
  color:var(--rec-text-muted);text-decoration:none;
  transition:color .2s;
}
.mobile-nav-item .mni-icon{font-size:1.2rem;line-height:1}
.mobile-nav-item.active,.mobile-nav-item:hover{color:var(--pink-500)}
@media(max-width:768px){.mobile-bottom-nav{display:block}}

/* ═══════════════ RESPONSIVE PRINT ═══════════════ */
@media print{.mobile-bottom-nav{display:none !important}}

/* ═══════════════ SMART CTAs (recipe-ctas.php) ═══════════════ */
/* Sidebar CTAs */
.smart-cta-sidebar{
  background:var(--rec-surface);
  border:2px solid var(--pink-100);
  border-radius:var(--rec-radius);
  padding:16px;margin-bottom:16px;
}
.smart-cta-title{font-size:.85rem;font-weight:700;margin-bottom:12px;color:var(--rec-text);}
.smart-cta-list{display:flex;flex-direction:column;gap:6px;}
.smart-cta-item{
  display:flex;align-items:center;gap:10px;
  padding:10px;border-radius:var(--rec-radius-sm);
  font-size:.78rem;font-weight:600;line-height:1.3;
  transition:all .2s;text-decoration:none;
  border:1px solid transparent;
}
.smart-cta-item:hover{background:var(--pink-50);border-color:var(--pink-200);}
.smart-cta-high{background:linear-gradient(135deg,var(--pink-50),var(--pink-100));}
.smart-cta-high:hover{background:linear-gradient(135deg,var(--pink-100),var(--pink-200));}
.smart-cta-medium{background:var(--pink-50);}
.smart-cta-low{background:transparent;border-color:var(--rec-border);}
.smart-cta-icon{font-size:1.2rem;flex-shrink:0;width:28px;text-align:center;}
.smart-cta-text{color:var(--rec-text);}

/* Inline CTA banners */
.inline-cta-banner{
  display:flex;align-items:center;gap:16px;
  padding:20px;margin:16px 0;
  border-radius:var(--rec-radius);
  transition:all .3s;
}
.inline-cta-banner.cta-urgency-high{
  background:linear-gradient(135deg,var(--pink-500),var(--pink-600));
  color:#fff;
}
.inline-cta-banner.cta-urgency-high .inline-cta-body h4{color:#fff;}
.inline-cta-banner.cta-urgency-high .inline-cta-body p{color:rgba(255,255,255,.85);}
.inline-cta-banner.cta-urgency-high .inline-cta-btn{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);}
.inline-cta-banner.cta-urgency-high .inline-cta-btn:hover{background:rgba(255,255,255,.3);}
.inline-cta-banner.cta-urgency-normal{
  background:var(--rec-surface);
  border:2px solid var(--pink-100);
}
.inline-cta-icon{font-size:2rem;flex-shrink:0;}
.inline-cta-body{flex:1;min-width:0;}
.inline-cta-body h4{font-size:.9rem;font-weight:700;margin-bottom:2px;color:var(--rec-text);}
.inline-cta-body p{font-size:.78rem;color:var(--rec-text-soft);line-height:1.4;}
.inline-cta-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:8px 18px;border-radius:8px;
  font-size:.78rem;font-weight:700;white-space:nowrap;
  transition:all .2s;text-decoration:none;flex-shrink:0;
  background:var(--pink-500);color:#fff;
}
.inline-cta-btn:hover{background:var(--pink-600);color:#fff;}
@media(max-width:640px){
  .inline-cta-banner{flex-direction:column;text-align:center;}
  .inline-cta-btn{width:100%;justify-content:center;}
}

/* Goal selector */
.goal-selector{
  background:var(--rec-surface);
  border:2px solid var(--rec-border);
  border-radius:var(--rec-radius);
  padding:24px;margin:24px 0;
}
.goal-selector-header{text-align:center;margin-bottom:16px;}
.goal-selector-header h3{font-size:1.1rem;font-family:var(--rec-font-alt);margin-bottom:2px;}
.goal-selector-header p{font-size:.82rem;color:var(--rec-text-soft);}
.goal-options{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;
}
.goal-options.grid-3{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));}
@media(max-width:600px){
  .goal-options,.goal-options.grid-3{grid-template-columns:repeat(2,minmax(0,1fr));}
  .goal-selector{padding:14px 8px;margin:12px 0;border-radius:var(--rec-radius-sm);}
  .goal-selector-header h3{font-size:.95rem;}
  .goal-card{padding:12px 8px;gap:4px;border-radius:10px;}
  .goal-desc{-webkit-line-clamp:2;font-size:.7rem;line-height:1.25;}
  .goal-title{font-size:.82rem;}
  .goal-icon{font-size:1.5rem;}
  .goal-btn{padding:4px 12px;font-size:.68rem;}
}
@media(max-width:360px){
  .goal-options,.goal-options.grid-3{grid-template-columns:1fr;}
}
.goal-card{
  display:flex;flex-direction:column;align-items:center;gap:6px;
  padding:20px 12px;border-radius:var(--rec-radius-sm);
  text-align:center;text-decoration:none;
  background:var(--pink-50);
  border:1px solid var(--rec-border);
  transition:all .3s;position:relative;overflow:hidden;
}
.goal-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--rec-shadow-hover);
  border-color:var(--pink-400);
  background:var(--pink-100);
}
.goal-icon{font-size:2rem;line-height:1;}
.goal-title{font-size:.85rem;font-weight:800;color:var(--rec-text);}
.goal-desc{font-size:.72rem;color:var(--rec-text-muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.goal-btn{
  display:inline-block;
  padding:4px 16px;border-radius:20px;
  font-size:.7rem;font-weight:700;
  background:var(--pink-500);color:#fff;
  transition:all .2s;margin-top:auto;
}
.goal-card:hover .goal-btn{background:var(--pink-600);}

/* ═══════════════ TITLE ACCENT (Preto/Rosa) ═══════════════ */
.title-word{color:var(--rec-text);}
.title-accent{color:var(--pink-500);}
.section-header h2 .title-word{font-weight:800;}
.section-header h2 .title-accent{font-weight:800;}

/* ═══════════════ FEATURED TOOLS HOME ═══════════════ */
.featured-tools{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;margin:24px 0;
}
.ft-card{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  padding:24px 12px;border-radius:var(--rec-radius);
  text-align:center;text-decoration:none;
  background:var(--rec-surface);
  border:2px solid var(--rec-border);
  transition:all .3s;
}
.ft-card:hover{
  transform:translateY(-3px);
  box-shadow:var(--rec-shadow-hover);
  border-color:var(--pink-400);
}
.ft-card.top-tool{border-color:var(--pink-400);background:linear-gradient(180deg,var(--pink-50),var(--rec-surface));}
.ft-icon{font-size:2.2rem;line-height:1;}
.ft-name{font-size:.85rem;font-weight:800;color:var(--rec-text);}
.ft-desc{font-size:.72rem;color:var(--rec-text-muted);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.ft-badge{
  display:inline-block;padding:2px 10px;border-radius:20px;
  font-size:.6rem;font-weight:800;text-transform:uppercase;letter-spacing:.5px;
  background:var(--pink-500);color:#fff;
}
@media(max-width:900px){.featured-tools{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.featured-tools{grid-template-columns:1fr 1fr;gap:8px;}.ft-card{padding:16px 8px;}}
.tools-cta-row{text-align:center;margin:8px 0 32px;}
.tools-cta-btn{
  display:inline-block;padding:12px 28px;border-radius:30px;
  font-size:.9rem;font-weight:800;text-decoration:none;
  background:var(--pink-500);color:#fff;
  box-shadow:var(--rec-shadow-hover);
  transition:all .3s;
}
.tools-cta-btn:hover{transform:translateY(-2px);background:var(--pink-400);}
.tools-hub-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0 40px;}
.tools-hub-grid .ft-card{padding:28px 14px;}
@media(max-width:900px){.tools-hub-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:480px){.tools-hub-grid{grid-template-columns:1fr 1fr;gap:8px;}}
@media(max-width:480px){
  .goal-options{grid-template-columns:repeat(2,1fr);}
  .goal-card{padding:16px 10px;}
}

/* Fit alternative section */
.fit-alternative-section{
  margin:24px 0;padding:20px;
  background:var(--rec-surface);
  border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);
}
.fit-alternative-section h3{font-size:1rem;font-family:var(--rec-font-alt);margin-bottom:4px;}
@media(max-width:768px){
  .fit-alternative-section .posts-grid{grid-template-columns:1fr !important;}
  .protein-section .posts-grid{grid-template-columns:1fr !important;}
}

/* Macro bar */
.macro-bar{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:8px;margin:12px 0;
}
.macro-item{
  text-align:center;
  background:var(--pink-50);
  border-radius:var(--rec-radius-sm);
  padding:12px 8px;
}
.macro-value{display:block;font-size:1.1rem;font-weight:800;color:var(--pink-500);}
.macro-label{display:block;font-size:.65rem;text-transform:uppercase;color:var(--rec-text-muted);font-weight:600;letter-spacing:.5px;margin-top:2px;}

/* ═══════════════ AUTHOR BOX (E-E-A-T) ═══════════════ */
.author-box{
  background:var(--rec-surface);
  border:2px solid var(--rec-border);
  border-radius:var(--rec-radius);
  padding:24px;margin:24px 0;
}
.author-box-inner{display:flex;gap:20px;align-items:flex-start;}
.author-avatar-link{flex-shrink:0;}
.author-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover;border:3px solid var(--pink-200);}
.author-box-body{flex:1;min-width:0;}
.author-name{font-size:1.05rem;font-weight:800;margin-bottom:2px;}
.author-name a{color:var(--rec-text);}
.author-name a:hover{color:var(--pink-500);}
.author-role{font-size:.78rem;color:var(--pink-500);font-weight:600;margin-bottom:8px;}
.author-bio{font-size:.82rem;color:var(--rec-text-soft);line-height:1.6;margin-bottom:8px;}
.author-stats{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:6px;}
.author-stat{font-size:.75rem;color:var(--rec-text-muted);}
.author-stat strong{color:var(--pink-500);}
.author-ai-disclosure{font-size:.72rem;color:var(--rec-text-muted);margin-bottom:10px;padding:6px 10px;background:var(--pink-50);border-radius:6px;display:inline-block;}
.author-links{display:flex;gap:8px;flex-wrap:wrap;}
.author-link-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:7px 16px;border-radius:8px;
  font-size:.78rem;font-weight:700;
  background:var(--pink-500);color:#fff;
  text-decoration:none;transition:all .2s;
}
.author-link-btn:hover{background:var(--pink-600);color:#fff;}
.author-link-btn.outline{background:transparent;color:var(--pink-500);border:2px solid var(--pink-300);}
.author-link-btn.outline:hover{background:var(--pink-50);}
@media(max-width:600px){.author-box-inner{flex-direction:column;align-items:center;text-align:center;}.author-stats{justify-content:center;}}

/* ═══════════════ ENHANCED COMMENTS ═══════════════ */
.comments-area{margin:32px 0;}
.comments-title{font-size:1.1rem;font-weight:800;margin-bottom:16px;font-family:var(--rec-font-alt);}
.comment-list{list-style:none;padding:0;}
.comment-list .comment-body{
  background:var(--rec-surface);border:1px solid var(--rec-border);
  border-radius:var(--rec-radius-sm);padding:16px;margin-bottom:12px;
}
.comment-meta{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px;flex-wrap:wrap;}
.comment-avatar{flex-shrink:0;}
.comment-avatar img{width:48px;height:48px;border-radius:50%;}
.comment-author-info{flex:1;min-width:0;}
.comment-author-name{font-weight:700;font-size:.88rem;color:var(--rec-text);display:block;}
.comment-author-name a{color:var(--rec-text);}
.comment-author-name a:hover{color:var(--pink-500);}
.comment-date{font-size:.72rem;color:var(--rec-text-muted);}
.made-it-badge{
  display:inline-block;font-size:.65rem;font-weight:700;
  background:var(--pink-50);color:var(--pink-500);
  padding:1px 8px;border-radius:4px;margin-left:4px;
}
.comment-rating-display{display:flex;align-items:center;gap:4px;}
.comment-stars-display{color:#F59E0B;font-size:1rem;letter-spacing:2px;}
.comment-rating-text{font-size:.72rem;color:var(--rec-text-muted);}
.comment-content{font-size:.85rem;line-height:1.6;color:var(--rec-text-soft);margin-bottom:10px;}
.comment-actions{display:flex;gap:12px;align-items:center;}
.comment-actions .comment-reply-link{font-size:.78rem;font-weight:600;color:var(--pink-500);}
.comment-like-btn{
  background:none;border:none;font-size:.75rem;color:var(--rec-text-muted);cursor:pointer;
  display:flex;align-items:center;gap:3px;padding:3px 8px;border-radius:4px;transition:all .2s;
}
.comment-like-btn:hover,.comment-like-btn.liked{color:var(--pink-500);background:var(--pink-50);}

/* Comment form */
.comment-respond{
  background:var(--rec-surface);border:2px solid var(--rec-border);
  border-radius:var(--rec-radius);padding:24px;margin-top:24px;
}
.comment-reply-title{font-size:1.05rem;font-weight:800;margin-bottom:4px;font-family:var(--rec-font-alt);}
.comment-notes{font-size:.75rem;color:var(--rec-text-muted);margin-bottom:12px;}
.comment-form-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.comment-field{margin-bottom:12px;}
.comment-field label{display:block;font-size:.78rem;font-weight:600;color:var(--rec-text-soft);margin-bottom:3px;}
.comment-field input,.comment-field textarea{
  width:100%;padding:10px 14px;border:2px solid var(--rec-border);
  border-radius:8px;font-size:.85rem;color:var(--rec-text);
  background:var(--rec-bg);outline:none;transition:border-color .2s;
}
.comment-field input:focus,.comment-field textarea:focus{border-color:var(--pink-400);}
.comment-field textarea{resize:vertical;min-height:100px;}
.comment-form-rating{margin-bottom:12px;}
.comment-form-rating label{display:block;font-size:.82rem;font-weight:600;margin-bottom:4px;color:var(--rec-text-soft);}
.comment-stars{display:flex;gap:2px;margin-bottom:4px;}
.cstar{
  background:none;border:none;font-size:1.5rem;cursor:pointer;
  color:var(--rec-border);transition:all .15s;padding:2px;
}
.cstar.active,.cstar.hover{color:#F59E0B;}
.rating-label{font-size:.75rem;color:var(--rec-text-muted);font-weight:600;}
.comment-form-madeit{margin-bottom:12px;}
.madeit-checkbox{display:flex;align-items:center;gap:6px;font-size:.85rem;cursor:pointer;}
.madeit-checkbox input[type="checkbox"]{width:18px;height:18px;accent-color:var(--pink-500);}
.comment-form-photo{margin-bottom:12px;}
.comment-form-photo label{display:block;font-size:.82rem;font-weight:600;margin-bottom:4px;color:var(--rec-text-soft);}
.comment-form-photo input[type="file"]{font-size:.8rem;color:var(--rec-text-soft);}
.comment-form-photo-note{font-size:.72rem;color:var(--rec-text-muted);margin-top:2px;}
.comment-submit-btn{
  background:var(--pink-500);color:#fff;border:none;
  padding:12px 24px;border-radius:8px;font-weight:700;
  font-size:.9rem;cursor:pointer;transition:all .2s;
}
.comment-submit-btn:hover{background:var(--pink-600);}
.comment-navigation{display:flex;justify-content:space-between;margin:16px 0;}
@media(max-width:600px){.comment-form-fields{grid-template-columns:1fr;}}

/* ═══════════════ AUTHOR FULL PAGE (page-author.php) ═══════════════ */
.author-full-page{padding:32px 0;}
.author-hero{text-align:center;margin-bottom:40px;}
.author-hero-avatar{margin-bottom:16px;}
.author-hero-avatar img{width:180px;height:180px;border-radius:50%;border:4px solid var(--pink-200);box-shadow:0 4px 20px rgba(232,67,147,.2);}
.author-hero h1{font-size:2rem;font-family:var(--rec-font-alt);margin-bottom:4px;color:var(--rec-text);}
.author-hero-role{font-size:1rem;color:var(--pink-500);font-weight:600;margin-bottom:8px;}
.author-hero-tagline{font-size:.9rem;color:var(--rec-text-soft);font-style:italic;max-width:500px;margin:0 auto;line-height:1.5;}
.author-section{margin-bottom:40px;}
.author-section h2{font-size:1.3rem;margin-bottom:16px;font-family:var(--rec-font-alt);}
.trajectory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.trajectory-card{
  background:var(--rec-surface);border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);padding:24px;text-align:center;
  transition:all .3s;
}
.trajectory-card:hover{transform:translateY(-3px);box-shadow:var(--rec-shadow-hover);}
.trajectory-card.highlight{border-color:var(--pink-400);background:linear-gradient(180deg,var(--pink-50),var(--rec-surface));}
.trajectory-icon{font-size:2.5rem;margin-bottom:12px;}
.trajectory-card h3{font-size:.95rem;font-weight:800;margin-bottom:8px;color:var(--rec-text);}
.trajectory-card p{font-size:.82rem;color:var(--rec-text-soft);line-height:1.5;}
.author-quote-section{margin-bottom:40px;}
.author-quote{
  max-width:700px;margin:0 auto;text-align:center;
  background:linear-gradient(135deg,var(--pink-50),var(--pink-100));
  border-radius:var(--rec-radius);padding:32px;
  position:relative;
}
.quote-icon{font-size:2.5rem;margin-bottom:8px;}
.author-quote blockquote{font-size:1rem;line-height:1.6;color:var(--rec-text);font-style:italic;margin-bottom:12px;}
.author-quote cite{font-size:.85rem;color:var(--pink-500);font-weight:600;font-style:normal;}
.author-numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;}
.author-number-card{
  text-align:center;background:var(--rec-surface);
  border:1px solid var(--rec-border);border-radius:var(--rec-radius);
  padding:24px 12px;transition:all .3s;
}
.author-number-card:hover{border-color:var(--pink-400);}
.number-value{font-size:2rem;font-weight:900;color:var(--pink-500);display:block;}
.number-label{font-size:.78rem;color:var(--rec-text-muted);margin-top:4px;}
.author-cta-section{text-align:center;margin:40px 0;padding:32px;background:var(--rec-surface);border:2px solid var(--pink-100);border-radius:var(--rec-radius);}
.author-cta-section h2{font-size:1.3rem;margin-bottom:8px;font-family:var(--rec-font-alt);}
.author-cta-section p{font-size:.88rem;color:var(--rec-text-soft);margin-bottom:16px;}
.author-cta-btn{
  display:inline-block;padding:14px 32px;border-radius:10px;
  background:var(--pink-500);color:#fff;font-weight:800;
  font-size:.95rem;transition:all .2s;text-decoration:none;
}
.author-cta-btn:hover{background:var(--pink-600);color:#fff;transform:translateY(-2px);}
@media(max-width:768px){.trajectory-grid{grid-template-columns:1fr;}.author-numbers-grid{grid-template-columns:repeat(2,1fr);}}

/* ═══════════════ AUTHOR BOX RICH (template-parts/author-box.php) ═══════════════ */
.author-box{background:var(--rec-surface);border:2px solid var(--pink-100);border-radius:var(--rec-radius);overflow:hidden;margin:24px 0;position:relative;}
.author-box-bg{
  height:60px;background:linear-gradient(90deg,var(--pink-400),var(--pink-500),var(--pink-600));
}
.author-box-inner{display:flex;gap:24px;padding:0 24px 24px;margin-top:-40px;position:relative;z-index:2;}
.author-avatar-wrap{text-align:center;flex-shrink:0;}
.author-avatar-ring{position:relative;}
.author-avatar{width:140px;height:140px;border-radius:50%;object-fit:cover;border:4px solid #fff;box-shadow:0 2px 12px rgba(0,0,0,.1);}
.author-badge{
  display:inline-block;padding:3px 14px;border-radius:20px;
  font-size:.7rem;font-weight:700;background:var(--pink-500);color:#fff;
  margin-top:6px;white-space:nowrap;
}
.author-box-body{flex:1;min-width:0;padding-top:12px;}
.author-name{font-size:1.2rem;font-weight:900;margin-bottom:2px;font-family:var(--rec-font-alt);}
.author-name a{color:var(--rec-text);}
.author-name a:hover{color:var(--pink-500);}
.author-role{font-size:.82rem;color:var(--pink-500);font-weight:600;margin-bottom:8px;}
.author-bio{font-size:.85rem;color:var(--rec-text-soft);line-height:1.6;margin-bottom:12px;}
.author-stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
.author-stat-card{
  text-align:center;background:var(--pink-50);border-radius:10px;
  padding:10px 16px;flex:1;min-width:80px;
}
.stat-number{display:block;font-size:1.1rem;font-weight:900;color:var(--pink-500);}
.stat-label{display:block;font-size:.65rem;text-transform:uppercase;color:var(--rec-text-muted);font-weight:600;letter-spacing:.5px;margin-top:1px;}
.author-timeline{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:12px;padding:10px 14px;background:var(--pink-50);border-radius:8px;}
.timeline-item{display:flex;align-items:center;gap:8px;}
.timeline-year{font-size:.78rem;font-weight:800;color:var(--pink-500);white-space:nowrap;}
.timeline-desc{font-size:.78rem;color:var(--rec-text-soft);}
.author-ai-disclosure{font-size:.72rem;color:var(--rec-text-muted);margin-bottom:10px;padding:6px 12px;background:var(--pink-50);border-radius:6px;display:inline-block;}
.author-links{display:flex;gap:8px;flex-wrap:wrap;}
.author-link-btn{
  display:inline-flex;align-items:center;gap:6px;
  padding:8px 18px;border-radius:8px;
  font-size:.8rem;font-weight:700;
  background:var(--pink-500);color:#fff;
  text-decoration:none;transition:all .2s;
}
.author-link-btn:hover{background:var(--pink-600);color:#fff;transform:translateY(-1px);}
.author-link-btn.outline{background:transparent;color:var(--pink-500);border:2px solid var(--pink-300);}
.author-link-btn.outline:hover{background:var(--pink-50);}
.btn-icon{font-size:1rem;}
@media(max-width:640px){.author-box-inner{flex-direction:column;align-items:center;text-align:center;margin-top:0;padding:16px;}.author-stats{justify-content:center;}.author-timeline{justify-content:center;}}

/* ═══════════════ SUBMIT RECIPE PAGE (page-submit-recipe.php) ═══════════════ */
.submit-recipe-page{padding:32px 0;}
.submit-recipe-header{text-align:center;margin-bottom:32px;max-width:600px;margin-left:auto;margin-right:auto;}
.submit-recipe-header h1{font-size:1.6rem;font-family:var(--rec-font-alt);margin-bottom:8px;}
.submit-recipe-header p{font-size:.9rem;color:var(--rec-text-soft);line-height:1.5;}
.submit-recipe-form-wrap{max-width:700px;margin:0 auto;}
.submit-recipe-form fieldset{
  background:var(--rec-surface);border:1px solid var(--rec-border);
  border-radius:var(--rec-radius);padding:24px;margin-bottom:16px;
}
.submit-recipe-form legend{
  font-size:1rem;font-weight:800;padding:0 8px;margin-bottom:12px;color:var(--rec-text);
}
.form-row{display:flex;gap:12px;}
.form-row.two-cols>*{flex:1;}
.form-group{margin-bottom:12px;}
.form-group label{display:block;font-size:.82rem;font-weight:600;margin-bottom:4px;color:var(--rec-text-soft);}
.form-group input,.form-group select,.form-group textarea{
  width:100%;padding:10px 14px;border:2px solid var(--rec-border);
  border-radius:8px;font-size:.9rem;color:var(--rec-text);
  background:var(--rec-bg);outline:none;transition:border-color .2s;
  font-family:var(--rec-font);
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--pink-400);}
.form-group textarea{resize:vertical;min-height:80px;}
.form-group textarea.mono{font-family:monospace;font-size:.85rem;}
.form-hint{display:block;font-size:.72rem;color:var(--rec-text-muted);margin-top:2px;}
.terms-check{margin:12px 0;}
.checkbox-label{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;color:var(--rec-text-soft);cursor:pointer;line-height:1.4;}
.checkbox-label input[type="checkbox"]{width:18px;height:18px;accent-color:var(--pink-500);margin-top:2px;flex-shrink:0;}
.form-submit-row{text-align:center;margin-top:24px;}
.submit-recipe-btn{
  padding:14px 32px;border-radius:10px;
  background:var(--pink-500);color:#fff;font-weight:800;
  font-size:1rem;border:none;cursor:pointer;transition:all .2s;
}
.submit-recipe-btn:hover{background:var(--pink-600);transform:translateY(-2px);}
.submit-recipe-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;}
.form-disclaimer{font-size:.75rem;color:var(--rec-text-muted);margin-top:8px;}
.form-disclaimer a{color:var(--pink-500);}
@media(max-width:640px){.form-row.two-cols{flex-direction:column;gap:0;}}
