/*
Theme Name: Pra Criar Magic
Theme URI: https://patypegorin.net/
Author: Paty Pegorin + ChatGPT
Author URI: https://patypegorin.net/
Description: Tema WordPress inspirado no layout mágico, fofo e editorial do blog Pra Criar. Inclui painel de opções seguro para configurar Home, páginas, CTAs, imagens e cores.
Version: 1.4.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: pracriar-magic
Tags: blog, custom-logo, featured-images, custom-menu, editor-style, one-column, two-columns, accessibility-ready
*/

:root {
  --pc-pink: #ec2f7d;
  --pc-pink-soft: #ffe5f0;
  --pc-pink-deep: #c9176a;
  --pc-purple: #31135d;
  --pc-lilac: #a57eea;
  --pc-lilac-soft: #f2e8ff;
  --pc-turquoise: #3bc6c3;
  --pc-turquoise-soft: #e5fffd;
  --pc-yellow: #ffd76d;
  --pc-cream: #fff9fb;
  --pc-white: #ffffff;
  --pc-ink: #31235a;
  --pc-muted: #6f6190;
  --pc-border: rgba(236, 47, 125, .18);
  --pc-shadow: 0 20px 50px rgba(120, 73, 175, .16);
  --pc-radius: 28px;
  --pc-font-title: Georgia, 'Times New Roman', serif;
  --pc-font-script: 'Segoe Script', 'Bradley Hand ITC', cursive;
  --pc-font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--pc-ink);
  background:
    radial-gradient(circle at 8% 16%, rgba(255, 213, 232, .55), transparent 16rem),
    radial-gradient(circle at 92% 10%, rgba(206, 250, 248, .70), transparent 18rem),
    linear-gradient(180deg, #fff 0%, #fff8fc 52%, #fff 100%);
  font-family: var(--pc-font-body);
  line-height: 1.6;
  overflow-x: hidden;
}
a { color: var(--pc-pink); text-decoration: none; transition: .22s ease; }
a:hover { color: var(--pc-purple); }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea, select { font: inherit; }
.screen-reader-text { position:absolute!important; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

.pc-topbar {
  background: linear-gradient(90deg, #fb1f75, #f34c99, #ff73b6);
  color: #fff;
  text-align: center;
  padding: .55rem 1rem;
  font-size: .9rem;
  font-weight: 700;
  letter-spacing: .01em;
}
.pc-site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(236,47,125,.10);
}
.admin-bar .pc-site-header { top: 32px; }
.pc-site-header.pc-header-static {
  position: relative;
  top: auto;
}
.admin-bar .pc-site-header.pc-header-static { top: auto; }
.pc-container {
  width: min(1180px, calc(100% - 40px));
  margin-inline: auto;
}
.pc-header-inner {
  min-height: 88px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}
.pc-logo { display: inline-flex; align-items: center; gap: .75rem; }
.pc-logo img { max-width: 170px; max-height: 78px; object-fit: contain; }
.pc-word-logo {
  display: inline-grid;
  line-height: .82;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: -.05em;
  filter: drop-shadow(0 8px 0 rgba(255, 170, 211, .25));
}
.pc-word-logo b:first-child { color: var(--pc-pink); font-size: 2.1rem; }
.pc-word-logo b:nth-child(2) { color: var(--pc-turquoise); font-size: 1.75rem; }
.pc-word-logo span { justify-self: center; margin-top: .35rem; color: #ff6c43; font-size: .75rem; letter-spacing: .03em; background: #ffe8d7; padding: .15rem .45rem; border-radius: 999px; }
.pc-nav-wrap { display: flex; align-items: center; gap: 1.1rem; }
.pc-main-nav { position: relative; }
.pc-main-nav ul { padding: 0; margin: 0; list-style: none; }
.pc-main-nav > ul {
  display: flex;
  gap: clamp(.85rem, 1.35vw, 1.55rem);
  align-items: center;
}
.pc-main-nav li { position: relative; }
.pc-main-nav a {
  color: var(--pc-purple);
  font-size: .96rem;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .42rem 0;
}
.pc-main-nav .menu-item-has-children > a::after {
  content: '⌄';
  font-size: .82em;
  line-height: 1;
  color: var(--pc-pink);
  transform: translateY(-1px);
}
.pc-main-nav .sub-menu {
  position: absolute;
  left: 50%;
  top: calc(100% + 12px);
  transform: translateX(-50%) translateY(8px);
  min-width: 230px;
  display: grid;
  gap: 4px;
  padding: 12px;
  background: rgba(255,255,255,.97);
  border: 1px solid rgba(236,47,125,.15);
  border-radius: 18px;
  box-shadow: 0 20px 46px rgba(49,19,93,.14);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: .18s ease;
}
.pc-main-nav .sub-menu::before {
  content: '';
  position: absolute;
  inset: -14px 0 auto;
  height: 14px;
}
.pc-main-nav li:hover > .sub-menu,
.pc-main-nav li:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.pc-main-nav .sub-menu a {
  width: 100%;
  justify-content: flex-start;
  padding: .66rem .78rem;
  border-radius: 12px;
  color: var(--pc-purple);
  font-size: .9rem;
  line-height: 1.25;
  white-space: nowrap;
}
.pc-main-nav .sub-menu a:hover,
.pc-main-nav .sub-menu a:focus {
  background: linear-gradient(135deg, var(--pc-pink-soft), var(--pc-turquoise-soft));
  color: var(--pc-pink);
}
.pc-search { position: relative; min-width: 210px; }
.pc-search input[type="search"] {
  width: 100%;
  border: 1px solid rgba(49, 19, 93, .16);
  background: #fff;
  color: var(--pc-purple);
  border-radius: 12px;
  padding: .72rem 2.5rem .72rem .9rem;
  outline: none;
}
.pc-search button {
  position: absolute;
  right: .45rem;
  top: 50%;
  transform: translateY(-50%);
  border: 0;
  background: transparent;
  color: var(--pc-purple);
  cursor: pointer;
}
.pc-btn, .wp-block-button__link, input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  border: 0;
  border-radius: 13px;
  padding: .88rem 1.25rem;
  background: linear-gradient(135deg, var(--pc-pink), #ff4f98);
  color: #fff !important;
  font-weight: 900;
  box-shadow: 0 14px 30px rgba(236,47,125,.25);
  cursor: pointer;
  text-decoration: none;
}
.pc-btn:hover { transform: translateY(-2px); color: #fff !important; box-shadow: 0 18px 36px rgba(236,47,125,.30); }
.pc-btn-outline {
  background: #fff;
  color: var(--pc-purple)!important;
  border: 1px solid rgba(49,19,93,.18);
  box-shadow: 0 14px 30px rgba(83,61,142,.10);
}
.pc-menu-toggle { display: none; border: 0; background: var(--pc-pink-soft); color: var(--pc-purple); border-radius: 12px; padding: .75rem; font-weight: 900; }

.pc-hero { position: relative; padding: 46px 0 36px; }
.pc-floating { position: absolute; pointer-events:none; opacity: .90; animation: pcFloat 5s ease-in-out infinite; }
.pc-floating:nth-child(2n) { animation-delay: 1s; }
@keyframes pcFloat { 0%,100% { transform: translateY(0) rotate(0); } 50% { transform: translateY(-10px) rotate(6deg); } }
.pc-hero-grid {
  display: grid;
  grid-template-columns: .92fr 1.08fr;
  gap: 44px;
  align-items: center;
}
.pc-hero-copy {
  position: relative;
  padding: 14px 16px 20px 0;
  isolation: isolate;
}
.pc-hero-copy > *:not(.pc-hero-doodles) {
  position: relative;
  z-index: 2;
}
.pc-hero-doodles {
  position: absolute;
  inset: -8px -8px -8px -52px;
  z-index: 1;
  pointer-events: none;
}
.pc-doodle {
  position: absolute;
  display: block;
  filter: drop-shadow(0 10px 18px rgba(236,47,125,.14));
  animation: pcFloat 5s ease-in-out infinite;
}
.pc-doodle::before,
.pc-doodle::after {
  box-sizing: border-box;
}
.pc-doodle-heart-left { left: 4px; top: 82px; }
.pc-doodle-heart-left::before {
  content: '💗';
  font-size: 2rem;
  line-height: 1;
}
.pc-doodle-button-top { left: 205px; top: -2px; width: 36px; height: 36px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #ffb6d6, #ec2f7d 68%, #b91461 100%); border: 3px solid #fff; }
.pc-doodle-button-top::before, .pc-doodle-button-side::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: rgba(255,255,255,.95);
  transform: translate(-50%, -50%);
  box-shadow: -7px 0 0 rgba(255,255,255,.95), 7px 0 0 rgba(255,255,255,.95), 0 -7px 0 rgba(255,255,255,.95), 0 7px 0 rgba(255,255,255,.95);
}
.pc-doodle-flower-top { left: 255px; top: 56px; }
.pc-doodle-flower-top::before {
  content: '🌸';
  font-size: 2rem;
  line-height: 1;
}
.pc-doodle-sparkle-top { left: 314px; top: 108px; }
.pc-doodle-sparkle-top::before {
  content: '✦';
  font-size: 1.35rem;
  line-height: 1;
  color: #ff9b1f;
}
.pc-doodle-button-side { left: -20px; bottom: 80px; width: 42px; height: 42px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #aefcf9, #25c6c5 72%, #139897 100%); border: 3px solid #fff; animation-delay: 1s; }
.pc-doodle-flower-side { left: -8px; bottom: 8px; }
.pc-doodle-flower-side::before {
  content: '✿';
  font-size: 1.9rem;
  line-height: 1;
  color: #b16ff0;
  text-shadow: 0 3px 0 rgba(255,255,255,.75);
}
.pc-doodle-sparkle-bottom { left: -2px; bottom: 144px; animation-delay: .6s; }
.pc-doodle-sparkle-bottom::before {
  content: '✦';
  font-size: 1.2rem;
  line-height: 1;
  color: #ff8f1f;
}
.pc-doodle-heart-bottom { left: 10px; bottom: -10px; animation-delay: 1.3s; }
.pc-doodle-heart-bottom::before {
  content: '🩷';
  font-size: 1.55rem;
  line-height: 1;
}
.pc-hero-title {
  margin: 0 0 20px;
  font-family: var(--pc-font-title);
  color: var(--pc-purple);
  font-size: clamp(3.5rem, 8vw, 7.3rem);
  line-height: .82;
  letter-spacing: -.055em;
}
.pc-hero-title .pc-script,
.pc-script {
  display: inline-block;
  color: var(--pc-pink);
  font-family: var(--pc-font-script);
  font-size: 1.08em;
  line-height: .72;
  font-weight: 700;
  letter-spacing: -.035em;
}
.pc-hero-text { max-width: 440px; color: var(--pc-ink); font-size: 1.08rem; font-weight: 600; }
.pc-hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: 26px; }
.pc-hero-media { position: relative; }
.pc-hero-frame {
  position: relative;
  width: 100%;
  background: transparent;
  padding: 0;
  min-height: 0;
  overflow: visible;
  filter: none;
}
.pc-hero-frame::before,
.pc-hero-frame::after {
  display: none;
}
.pc-hero-frame img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  border-radius: 0;
}

.pc-section { padding: 34px 0; position: relative; }
.pc-section-title {
  margin: 0 0 24px;
  text-align: center;
  font-family: var(--pc-font-title);
  color: var(--pc-purple);
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.08;
}
.pc-section-title .pc-script { font-size: 1.15em; }
.pc-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 22px; }
.pc-choice-card,
.pc-post-card,
.pc-shop-card,
.pc-stat-card {
  position: relative;
  background: rgba(255,255,255,.78);
  border: 1px solid var(--pc-border);
  border-radius: 22px;
  box-shadow: 0 16px 34px rgba(175, 102, 166, .07);
  overflow: hidden;
}
.pc-choice-card { padding: 30px 26px; text-align: center; min-height: 260px; }
.pc-choice-icon {
  width: 86px;
  height: 86px;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  font-size: 3rem;
  background: radial-gradient(circle, #fff, var(--pc-pink-soft));
  border-radius: 24px;
  box-shadow: inset 0 0 0 1px rgba(236,47,125,.10);
}
.pc-choice-card h3 { margin: 0 0 10px; color: var(--pc-purple); font-family: var(--pc-font-title); font-size: 1.35rem; }
.pc-choice-card p { color: var(--pc-muted); font-size: .94rem; margin: 0 0 18px; }
.pc-arrow-link { font-weight: 900; color: var(--pc-pink); }

.pc-ribbon {
  margin-top: 12px;
  border-radius: 28px;
  padding: 34px 36px;
  background:
    radial-gradient(circle at 10% 20%, rgba(255,255,255,.38), transparent 11rem),
    linear-gradient(120deg, #be87ee, #a488ef 42%, #68d2d6);
  color: #fff;
  border: 1px dashed rgba(255,255,255,.55);
  box-shadow: var(--pc-shadow);
  display: grid;
  grid-template-columns: .95fr 1.05fr;
  gap: 28px;
  align-items: center;
}
.pc-ribbon h2 { margin: 0 0 12px; font-family: var(--pc-font-script); font-size: clamp(2rem, 3vw, 3.2rem); line-height: 1.1; font-weight: 700; }
.pc-ribbon p { max-width: 520px; font-size: 1.08rem; margin: 0 0 14px; }
.pc-ribbon .pc-btn { background: #fff; color: var(--pc-lilac)!important; box-shadow: 0 16px 26px rgba(49,19,93,.12); }
.pc-ribbon-gallery {
  min-height: 220px;
  position: relative;
  display: grid;
  place-items: center;
}
.pc-polaroid {
  position: absolute;
  width: min(48%, 230px);
  background: #fff;
  border: 8px solid #fff;
  border-bottom-width: 22px;
  border-radius: 13px;
  box-shadow: 0 20px 35px rgba(49,19,93,.20);
  transform: rotate(-7deg) translateX(-80px);
}
.pc-polaroid:nth-child(2) { transform: rotate(5deg) translateX(66px) translateY(-8px); z-index: 2; }
.pc-polaroid:nth-child(3) { transform: rotate(-2deg) translateX(156px) translateY(22px); z-index: 1; }
.pc-polaroid img { width: 100%; aspect-ratio: 1.05; object-fit: cover; border-radius: 8px; }
.pc-note-card {
  position: relative;
  z-index: 4;
  margin-inline: auto;
  width: 176px;
  min-height: 190px;
  display: grid;
  place-items: center;
  text-align: center;
  background: #e5fbff;
  color: var(--pc-ink);
  border: 8px solid #fff;
  border-radius: 18px;
  box-shadow: 0 20px 35px rgba(49,19,93,.17);
  transform: rotate(2deg);
  font-family: var(--pc-font-script);
  font-size: 1.18rem;
  line-height: 1.5;
}

.pc-post-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.pc-post-card { padding-bottom: 18px; }
.pc-post-card .pc-thumb { aspect-ratio: 1 / .84; background: linear-gradient(135deg, var(--pc-pink-soft), var(--pc-turquoise-soft)); overflow: hidden; border-radius: 18px 18px 0 0; }
.pc-post-card .pc-thumb img { width: 100%; height: 100%; object-fit: cover; }
.pc-category-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: -16px 12px 8px;
  position: relative;
  z-index: 2;
  background: linear-gradient(135deg, var(--pc-pink), #ba7bef);
  color: #fff;
  font-size: .73rem;
  font-weight: 900;
  padding: .35rem .65rem;
  border-radius: 999px;
}
.pc-post-card h3 { margin: 0 14px 12px; color: var(--pc-purple); font-size: .98rem; line-height: 1.32; }
.pc-post-card .pc-arrow-link { margin: 0 14px; font-size: .85rem; }

.pc-lead {
  display: grid;
  grid-template-columns: .96fr 1.04fr;
  gap: 34px;
  align-items: center;
  background:
    radial-gradient(circle at 13% 20%, rgba(255,255,255,.55), transparent 13rem),
    linear-gradient(120deg, #c27df1 0%, #966fe5 42%, #f174bc 100%);
  color: #fff;
  border-radius: 28px;
  padding: 34px 46px;
  border: 1px dashed rgba(255,255,255,.55);
  box-shadow: var(--pc-shadow);
}
.pc-lead h2 { margin: 0 0 12px; font-family: var(--pc-font-title); font-size: clamp(2rem, 3vw, 3.2rem); line-height: 1.05; }
.pc-lead p { margin: 0 0 22px; font-size: 1.04rem; }
.pc-lead-mockup {
  position: relative;
  min-height: 240px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: rgba(255,255,255,.14);
}
.pc-lead-mockup img { max-height: 250px; margin-inline: auto; filter: drop-shadow(0 20px 24px rgba(49,19,93,.20)); border-radius: 18px; }
.pc-form-grid { display: grid; gap: 14px; }
.pc-form-grid input[type="text"], .pc-form-grid input[type="email"] {
  border: 0;
  border-radius: 12px;
  padding: 1rem 1.1rem;
  min-height: 52px;
  box-shadow: inset 0 0 0 1px rgba(49,19,93,.12);
}
.pc-form-note { font-size: .85rem; opacity: .92; margin-top: 10px; }

.pc-shop-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 18px; }
.pc-shop-card { min-height: 145px; padding: 14px; display: grid; align-items: end; overflow: hidden; }
.pc-shop-card::before {
  content:'';
  position:absolute; inset:0;
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(49,19,93,.13));
  z-index:1;
}
.pc-shop-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.pc-shop-card span {
  position: relative; z-index: 2;
  display: inline-flex;
  width: fit-content;
  background: linear-gradient(135deg, var(--pc-pink), #a98af0);
  color: #fff;
  border-radius: 999px;
  padding: .48rem .8rem;
  font-weight: 900;
  font-size: .83rem;
  box-shadow: 0 12px 22px rgba(49,19,93,.15);
}

.pc-about {
  display: grid;
  grid-template-columns: .86fr 1.14fr;
  gap: 40px;
  align-items: center;
}
.pc-about-photo {
  position: relative;
  border-radius: 42% 58% 55% 45% / 42% 38% 62% 58%;
  padding: 10px;
  background: linear-gradient(135deg, var(--pc-pink), var(--pc-turquoise));
  filter: drop-shadow(0 16px 35px rgba(236,47,125,.16));
}
.pc-about-photo img { border-radius: inherit; aspect-ratio: 1.24; width: 100%; object-fit: cover; border: 7px solid #fff; }
.pc-about h2 { margin: 0 0 12px; font-family: var(--pc-font-title); font-size: clamp(2.2rem, 3vw, 3.4rem); color: var(--pc-purple); }
.pc-about p { color: var(--pc-muted); font-size: 1.06rem; margin: 0 0 16px; }
.pc-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-top: 24px; }
.pc-stat-card { text-align: center; padding: 18px 10px; }
.pc-stat-card strong { display: block; color: var(--pc-purple); font-size: 1.2rem; }
.pc-stat-card span { display: block; color: var(--pc-muted); font-size: .78rem; line-height: 1.25; }

.pc-bottom-signup {
  background: linear-gradient(90deg, #ad7ee8, #d088f1, #f080bd);
  color: #fff;
  padding: 22px 0;
  margin-top: 38px;
}
.pc-bottom-signup .pc-container { display: grid; grid-template-columns: .65fr 1.35fr; gap: 26px; align-items: center; }
.pc-bottom-signup h2 { margin: 0; font-size: 1.15rem; line-height: 1.2; }
.pc-bottom-signup form { display: grid; grid-template-columns: 1fr auto; gap: 14px; }
.pc-bottom-signup input[type="email"] { border: 0; border-radius: 12px; padding: .98rem 1rem; }

.pc-site-footer {
  background: #fff;
  border-top: 1px solid rgba(236,47,125,.11);
  padding: 34px 0 18px;
}
.pc-footer-grid { display: grid; grid-template-columns: 1.25fr repeat(4, 1fr); gap: 32px; }
.pc-footer-grid h3 { margin: 0 0 12px; color: var(--pc-purple); font-size: 1rem; }
.pc-footer-grid p, .pc-footer-grid li, .pc-footer-grid a { color: var(--pc-muted); font-size: .92rem; }
.pc-footer-grid ul { list-style:none; padding:0; margin:0; display:grid; gap:.35rem; }
.pc-socials { display:flex; gap:.55rem; margin-top:12px; flex-wrap:wrap; }
.pc-socials a {
  width: 36px;
  height: 36px;
  display:grid;
  place-items:center;
  background:var(--pc-pink-soft);
  border-radius:999px;
  color:var(--pc-pink);
  box-shadow: 0 8px 18px rgba(236,47,125,.10);
}
.pc-socials a:hover { background: var(--pc-pink); color:#fff; transform: translateY(-2px); }
.pc-socials svg { width: 17px; height: 17px; fill: currentColor; display:block; }
.pc-copyright { border-top:1px solid rgba(236,47,125,.10); margin-top:26px; padding-top:16px; text-align:center; color:var(--pc-muted); font-size:.86rem; }

.pc-page-hero {
  padding: 58px 0 34px;
  text-align: center;
}
.pc-page-hero-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255,229,240,.84), rgba(229,255,253,.84));
  border: 1px solid var(--pc-border);
  border-radius: 32px;
  padding: clamp(38px, 6vw, 76px) 24px;
  box-shadow: var(--pc-shadow);
}
.pc-page-hero h1 { margin: 0 auto 12px; max-width: 780px; font-family: var(--pc-font-title); font-size: clamp(2.6rem, 6vw, 5.5rem); line-height: .96; color: var(--pc-purple); }
.pc-page-hero p { margin: 0 auto; max-width: 680px; color: var(--pc-muted); font-size: 1.08rem; }
.pc-content-area { padding: 36px 0 70px; }
.pc-layout { display:grid; grid-template-columns: minmax(0, 1fr) 315px; gap: 38px; align-items:start; }
.pc-article {
  background: #fff;
  border: 1px solid rgba(236,47,125,.11);
  border-radius: 26px;
  box-shadow: 0 18px 45px rgba(120,73,175,.08);
  padding: clamp(24px, 4vw, 48px);
}
.pc-article h1, .pc-article h2, .pc-article h3 { color: var(--pc-purple); line-height: 1.18; }
.pc-article h1, .pc-article h2 { font-family: var(--pc-font-title); }
.pc-article p { color: #4b3d70; }
.pc-entry-meta { display:flex; gap:.65rem; flex-wrap:wrap; align-items:center; color: var(--pc-muted); font-size:.9rem; margin-bottom:16px; }
.pc-featured { border-radius: 24px; overflow:hidden; margin-bottom:22px; }
.pc-sidebar { display:grid; gap:20px; }
.pc-widget {
  background: #fff;
  border: 1px solid rgba(236,47,125,.11);
  border-radius: 24px;
  padding: 22px;
  box-shadow: 0 14px 32px rgba(120,73,175,.08);
}
.pc-widget h2, .pc-widget h3 { margin:0 0 12px; color:var(--pc-purple); font-family:var(--pc-font-title); }
.pc-widget ul { margin:0; padding-left:1.1rem; }
.pc-pagination { display:flex; gap: .65rem; justify-content:center; margin-top:34px; flex-wrap:wrap; }
.pc-pagination .page-numbers { padding:.68rem .9rem; border-radius:12px; background:#fff; border:1px solid var(--pc-border); font-weight:800; }
.pc-pagination .current { background: var(--pc-pink); color:#fff; }
.pc-empty { text-align:center; padding:50px 20px; }

.pc-sparkle-bg::before,
.pc-sparkle-bg::after {
  content: '✦';
  position: absolute;
  color: var(--pc-yellow);
  font-size: 1.6rem;
  opacity: .9;
}
.pc-sparkle-bg::before { left: 4%; top: 18%; }
.pc-sparkle-bg::after { right: 5%; bottom: 15%; color: var(--pc-pink); }

@media (max-width: 1080px) {
  .pc-header-inner { flex-wrap: wrap; padding: 12px 0; }
  .pc-nav-wrap { order: 3; width: 100%; justify-content: space-between; }
  .pc-hero-grid, .pc-ribbon, .pc-lead, .pc-about, .pc-layout { grid-template-columns: 1fr; }
  .pc-post-grid { grid-template-columns: repeat(3, 1fr); }
  .pc-card-grid, .pc-shop-grid { grid-template-columns: repeat(2, 1fr); }
  .pc-bottom-signup .pc-container { grid-template-columns:1fr; }
}
@media (max-width: 782px) {
  .admin-bar .pc-site-header { top: 46px; }
}
@media (max-width: 720px) {
  .pc-container { width: min(100% - 28px, 1180px); }
  .pc-menu-toggle { display: inline-flex; }
  .pc-nav-wrap { display: none; }
  .pc-nav-wrap.is-open { display: grid; gap: 14px; }
  .pc-main-nav > ul { display: grid; gap: .45rem; }
  .pc-main-nav a { width: 100%; justify-content: space-between; padding: .65rem .25rem; }
  .pc-main-nav .sub-menu { position: static; transform: none; min-width: 0; opacity: 1; visibility: visible; pointer-events: auto; box-shadow: none; border: 0; background: var(--pc-cream); margin: 0 0 .35rem 1rem; padding: .35rem .55rem; }
  .pc-main-nav .sub-menu::before { display: none; }
  .pc-main-nav li:hover > .sub-menu, .pc-main-nav li:focus-within > .sub-menu { transform: none; }
  .pc-main-nav .sub-menu a { white-space: normal; font-size: .9rem; }
  .pc-search { min-width: 100%; }
  .pc-hero { padding-top: 30px; }
  .pc-hero-grid { gap: 24px; }
  .pc-hero-copy { padding-left: 10px; }
  .pc-hero-doodles { inset: -6px auto -10px -8px; width: 100%; }
  .pc-doodle-button-top { left: 46%; top: -12px; }
  .pc-doodle-flower-top { left: 58%; top: 42px; }
  .pc-doodle-sparkle-top { left: 71%; top: 92px; }
  .pc-doodle-button-side { left: -10px; bottom: 92px; }
  .pc-doodle-flower-side { left: -3px; bottom: 22px; }
  .pc-hero-title { font-size: clamp(3.7rem, 18vw, 5.2rem); }
  .pc-hero-frame, .pc-hero-frame img { min-height: 0; height: auto; }
  .pc-card-grid, .pc-post-grid, .pc-shop-grid, .pc-stats { grid-template-columns: 1fr; }
  .pc-ribbon, .pc-lead { padding: 28px 22px; }
  .pc-ribbon-gallery { min-height: 270px; }
  .pc-polaroid { width: 58%; }
  .pc-bottom-signup form { grid-template-columns:1fr; }
  .pc-footer-grid { grid-template-columns: 1fr; }
}
