/* Grow It All 1.1: Pro, site pages, ads, and WooCommerce in the app's own tokens (see theme.css :root). */

/* Top bar additions */
.gia-pro-pill {
  display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border-radius: 999px;
  background: var(--terracotta); color: var(--primary-fg); font-weight: 700; font-size: 0.82rem; text-decoration: none;
}
.gia-pro-pill.is-pro { background: var(--surface); color: var(--terracotta); box-shadow: inset 0 0 0 1px var(--terracotta); }
.gia-account { display: inline-flex; align-items: center; gap: 6px; min-height: 34px; padding: 0 10px; border-radius: 999px; color: var(--fg); text-decoration: none; font-weight: 600; font-size: 0.82rem; border: 1px solid var(--border); background: var(--card); }
.gia-account span { display: none; }
.gia-mpdg { display: none; }
.gia-top-side .gia-chip { display: none; }
@media (min-width: 800px) {
  .gia-account span, .gia-mpdg { display: inline; }
  .gia-top-side .gia-chip { display: inline-block; max-width: 220px; }
}

/* PRO badge, card, and locked states */
.gia-badge-pro, .gia-pro-tag {
  background: var(--terracotta); color: var(--primary-fg); letter-spacing: 0.06em;
}
.gia-pro-tag {
  display: inline-flex; align-items: center; min-height: 20px; padding: 0 6px; border-radius: 999px;
  font-family: Figtree, ui-sans-serif, system-ui, sans-serif; font-size: 0.66rem; font-weight: 800; vertical-align: middle;
}
.gia-badge.is-urgent { background: rgba(154, 83, 64, 0.12); color: var(--terracotta); }
.gia-pro-card { border: 1px solid rgba(154, 83, 64, 0.35); background: linear-gradient(180deg, #fbf6ef, var(--card)); }
.gia-pro-card h3 { margin-top: 10px; }
.gia-pro-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 12px 0 0; }
.gia-month.is-locked, .gia-tabs a.is-locked { color: var(--subtle); }
.gia-month.is-locked.is-on, .gia-tabs a.is-locked.is-on { color: var(--primary-fg); }
.gia-tabs a .gia-pro-tag { margin-left: 6px; }
.gia-year-card.is-locked { background: var(--surface); }
.gia-year-card.is-locked.is-on { background: var(--primary); }
.gia-year-card .gia-pro-tag { align-self: flex-start; }
.gia-is-readonly .gia-choice, .gia-is-readonly .gia-veg button, .gia-is-readonly input { opacity: 0.7; }
button[disabled] { cursor: not-allowed; }
.gia-locked-wrap { margin-bottom: 20px; }

/* Intro strip for first-time visitors */
.gia-intro {
  display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between;
  background: var(--card); border-radius: 16px; box-shadow: var(--shadow); padding: 14px 18px; border-left: 4px solid var(--primary);
}
.gia-intro p { margin: 0; }
.gia-intro div p + p { color: var(--muted); }
.gia-intro-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }

/* Site pages */
.gia-site { gap: 36px; }
.gia-page-tabs { margin-bottom: -12px; }
.gia-hero-site h1 { font-size: clamp(2.3rem, 6vw, 3.4rem); max-width: 18ch; }
.gia-hero .gia-lead { max-width: 62ch; font-size: 1.06rem; }
.gia-cta-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 18px 0 0; }
.gia-btn-lg { min-height: 50px; padding: 10px 20px; border-radius: 999px; font-size: 1rem; }
.gia-split, .gia-feature { display: grid; gap: 18px; align-items: start; }
.gia-split h2, .gia-feature h2 { margin-top: 6px; }
.gia-feature { padding-top: 24px; border-top: 1px solid var(--border); }
.gia-band { display: grid; gap: 12px; align-items: center; padding: 24px; }
.gia-band h2 { margin-top: 8px; }
.gia-grid-3 { grid-template-columns: 1fr; }
.gia-fake-btn { align-self: center; font-weight: 650; font-size: 0.92rem; border: 1px solid var(--border); border-radius: 10px; padding: 10px 12px; background: var(--bg-elevated); }
.gia-plans { display: grid; gap: 14px; }
.gia-plan { display: flex; flex-direction: column; gap: 6px; }
.gia-plan.is-pro { box-shadow: 0 0 0 2px var(--primary), var(--shadow); }
.gia-price-big { margin: 4px 0 0; font-family: Fraunces, Palatino, serif; font-size: 2.6rem; line-height: 1; color: var(--fg) !important; }
.gia-price-big small { font-family: Figtree, ui-sans-serif, system-ui, sans-serif; font-size: 0.95rem; color: var(--muted); margin-left: 4px; }
.gia-save { color: var(--terracotta); }
.gia-checks { list-style: none; padding: 0; margin: 8px 0 0; }
.gia-checks li { padding: 6px 0 6px 26px; position: relative; border-top: 1px solid var(--border); }
.gia-checks li::before { content: ""; position: absolute; left: 4px; top: 12px; width: 12px; height: 7px; border-left: 2px solid var(--primary); border-bottom: 2px solid var(--primary); transform: rotate(-45deg); }
.gia-compare td:nth-child(2), .gia-compare td:nth-child(3) { white-space: nowrap; }
.gia-compare tr.is-on td { background: rgba(63, 107, 74, 0.08); }
.gia-table { border-radius: 12px; overflow: hidden; box-shadow: var(--shadow); }
.gia-table th { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--subtle); }
.gia-faq { display: flex; flex-direction: column; gap: 10px; }
.gia-faq h2 { margin-bottom: 4px; }
details.gia-card summary { cursor: pointer; font-weight: 700; list-style: none; display: flex; justify-content: space-between; gap: 12px; }
details.gia-card summary::after { content: "+"; color: var(--primary); font-weight: 800; }
details.gia-card[open] summary::after { content: "–"; }
details.gia-card p { margin-bottom: 0; }
.gia-steps-big li { margin: 12px 0; }
.gia-from { margin-top: -18px; }
.gia-narrow-site { width: min(760px, calc(100% - 32px)); }

/* Forms (contact, ads dashboard, account) */
.gia-form { display: flex; flex-direction: column; gap: 14px; }
.gia-form label { display: flex; flex-direction: column; gap: 6px; font-weight: 700; font-size: 0.85rem; color: var(--muted); }
.gia-form input, .gia-form select, .gia-form textarea {
  min-height: 44px; border-radius: 10px; border: 1px solid var(--border); background: var(--bg-elevated); color: var(--fg);
  padding: 10px 12px; font: inherit; font-weight: 500;
}
.gia-form textarea { min-height: 120px; }
.gia-form .gia-row { display: grid; gap: 14px; }
.gia-form fieldset { border: 1px solid var(--border); border-radius: 12px; padding: 12px 14px; margin: 0; }
.gia-form legend { font-weight: 700; font-size: 0.85rem; color: var(--muted); padding: 0 6px; }
.gia-form .gia-radio { flex-direction: row; align-items: center; gap: 8px; font-weight: 600; color: var(--fg); min-height: 36px; }
.gia-form .gia-radio input { min-height: 0; }
.gia-hp { position: absolute !important; left: -9999px !important; }
.gia-ok { color: var(--primary); font-weight: 700; }
.gia-card.gia-warn { color: var(--terracotta); font-weight: 700; }

/* Footer */
.gia-foot { border-top: 1px solid var(--border); padding-top: 24px; }
.gia-foot-cols { display: grid; grid-template-columns: repeat(2, 1fr); gap: 18px; margin-bottom: 18px; }
.gia-foot-cols ul { list-style: none; margin: 8px 0 0; padding: 0; }
.gia-foot-cols li { margin: 6px 0; }
.gia-foot-cols a { color: var(--fg); font-weight: 600; text-decoration: none; }
.gia-foot-cols a:hover { color: var(--primary); text-decoration: underline; }

/* Ads with a creative */
.gia-out.gia-ad { flex-direction: column; align-items: flex-start; gap: 2px; text-align: left; background: var(--card); box-shadow: var(--shadow); border-color: transparent; border-radius: 14px; padding: 10px 14px; max-width: 100%; }
.gia-out.gia-ad.has-image { display: grid; grid-template-columns: 56px 1fr; column-gap: 12px; align-items: center; }
.gia-out.gia-ad.has-image > :not(.gia-ad-img) { grid-column: 2; }
.gia-ad-img { grid-row: 1 / span 4; width: 56px; height: 56px; object-fit: cover; border-radius: 12px; background: var(--surface); }
.gia-out.gia-ad .gia-label { font-family: Fraunces, Palatino, serif; font-weight: 500; font-size: 1.05rem; }
.gia-by { font-weight: 700; color: var(--fg); }
.gia-sponsor-row { gap: 10px; }

/* Ad dashboard */
.gia-ads-dash { display: flex; flex-direction: column; gap: 20px; }
.gia-status { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 999px; font-size: 0.72rem; font-weight: 800; letter-spacing: 0.04em; text-transform: uppercase; background: var(--surface); color: var(--muted); }
.gia-status.is-live { background: rgba(63, 107, 74, 0.14); color: var(--primary); }
.gia-status.is-review { background: rgba(241, 199, 33, 0.22); color: #6b5410; }
.gia-status.is-rejected, .gia-status.is-ended { background: rgba(154, 83, 64, 0.14); color: var(--terracotta); }
.gia-tiles { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.gia-tile { background: var(--card); border-radius: 14px; box-shadow: var(--shadow); padding: 14px; }
.gia-tile strong { display: block; font-family: Fraunces, Palatino, serif; font-weight: 500; font-size: 1.8rem; line-height: 1.1; }
.gia-tile span { color: var(--muted); font-size: 0.8rem; font-weight: 700; }
.gia-camp { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.gia-camp-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.gia-preview-box { background: var(--bg); border: 1px dashed var(--border); border-radius: 14px; padding: 14px; }

/* WooCommerce: shop, product, cart, checkout, my account */
.woocommerce, .woocommerce-page { color: var(--fg); }
.gia-prose { gap: 20px; }
.gia-prose > h1.gia-title { margin-bottom: 4px; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px; margin: 0; padding: 0; }
.woocommerce ul.products::before, .woocommerce ul.products::after { display: none !important; }
.woocommerce ul.products li.product { width: auto !important; margin: 0 !important; float: none !important; background: var(--card); border-radius: 16px; box-shadow: var(--shadow); padding: 14px; list-style: none; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family: Fraunces, Palatino, serif; font-weight: 500; font-size: 1.1rem; }
.woocommerce ul.products li.product .price, .woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--fg); font-weight: 700; }
.woocommerce span.onsale { background: var(--terracotta); border-radius: 999px; }
.woocommerce div.product .product_title { font-family: Fraunces, Palatino, serif; font-weight: 500; }
.woocommerce div.product { background: var(--card); border-radius: 16px; box-shadow: var(--shadow); padding: 18px; }
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,
.wc-block-components-button:not(.is-link), .wp-element-button, .wc-block-cart__submit-button, .wc-block-components-checkout-place-order-button {
  background: var(--primary) !important; color: var(--primary-fg) !important; border-radius: 999px !important; min-height: 46px; font-weight: 700 !important; border: 0 !important; padding: 10px 20px !important;
}
.woocommerce .quantity .qty, .woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce-page form .form-row input.input-text,
.wc-block-components-text-input input, .wc-block-components-combobox .wc-block-components-combobox-control input, .wc-blocks-components-select__select {
  border-radius: 10px !important; border: 1px solid var(--border) !important; background: var(--bg-elevated) !important; min-height: 44px; font: inherit;
}
.woocommerce table.shop_table { border: 0; box-shadow: var(--shadow); border-collapse: separate; overflow: hidden; }
.woocommerce table.shop_table th { font-size: 0.72rem; letter-spacing: 0.08em; text-transform: uppercase; color: var(--subtle); }
.woocommerce-info, .woocommerce-message, .woocommerce-error, .wc-block-components-notice-banner {
  border-radius: 14px !important; border: 0 !important; background: var(--card) !important; box-shadow: var(--shadow); color: var(--fg) !important; border-left: 4px solid var(--primary) !important;
}
.woocommerce-error, .wc-block-components-notice-banner.is-error { border-left-color: var(--terracotta) !important; }
.woocommerce-info::before, .woocommerce-message::before { color: var(--primary); }
.wc-block-cart, .wc-block-checkout { font-family: Figtree, ui-sans-serif, system-ui, sans-serif; }
.wc-block-components-sidebar-layout .wc-block-components-main, .wc-block-components-sidebar .wc-block-components-panel, .wc-block-checkout__sidebar, .wc-block-cart__sidebar {
  background: transparent;
}
.wc-block-components-checkout-step, .wc-block-components-order-summary, .wc-block-cart-items, .wc-block-components-totals-wrapper {
  border-color: var(--border) !important;
}
.wc-block-components-title, .wc-block-components-checkout-step__title { font-family: Fraunces, Palatino, serif !important; font-weight: 500 !important; }
.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option { border-radius: 12px; }
.wc-block-checkout__sidebar .wc-block-components-order-summary, .wc-block-cart__sidebar > div { background: var(--card); border-radius: 16px; box-shadow: var(--shadow); padding: 4px 14px; }
.woocommerce-account .woocommerce { display: grid; gap: 20px; }
.woocommerce-account .woocommerce-MyAccount-navigation, .woocommerce-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; overflow-x: auto; padding-bottom: 4px; }
.woocommerce-MyAccount-navigation li a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 12px; border-radius: 10px; background: var(--surface); color: var(--muted); text-decoration: none; font-weight: 700; font-size: 0.88rem; white-space: nowrap; }
.woocommerce-MyAccount-navigation li.is-active a { background: var(--primary); color: var(--primary-fg); }
.woocommerce-MyAccount-content { background: var(--card); border-radius: 16px; box-shadow: var(--shadow); padding: 18px; min-width: 0; }
.woocommerce form.login, .woocommerce form.register, .woocommerce form.checkout_coupon { border: 0 !important; background: var(--card); border-radius: 16px; box-shadow: var(--shadow); }
.woocommerce-account .u-columns { display: grid; gap: 16px; }
.woocommerce-account .u-columns .col-1, .woocommerce-account .u-columns .col-2 { float: none; width: auto; }
.gia-acct-pro { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; margin-bottom: 16px; }

@media (min-width: 800px) {
  .gia-split, .gia-feature { grid-template-columns: 5fr 6fr; gap: 32px; }
  .gia-band { grid-template-columns: 2fr 1fr; }
  .gia-grid-3 { grid-template-columns: repeat(3, 1fr); }
  .gia-plans { grid-template-columns: repeat(3, 1fr); }
  .gia-foot-cols { grid-template-columns: repeat(4, 1fr); }
  .gia-form .gia-row { grid-template-columns: 1fr 1fr; }
  .gia-tiles { grid-template-columns: repeat(4, 1fr); }
  .woocommerce ul.products { grid-template-columns: repeat(3, 1fr); }
  .woocommerce-account .u-columns { grid-template-columns: 1fr 1fr; }
}

/* Keep My account inside the phone width: nav scrolls sideways, tables scroll in their wrapper. */
.woocommerce-account .woocommerce { grid-template-columns: minmax(0, 1fr); }
.woocommerce-account .woocommerce-MyAccount-navigation { min-width: 0; max-width: 100%; }
.woocommerce-MyAccount-navigation ul { scrollbar-width: none; }
.gia-table-wrap { max-width: 100%; overflow-x: auto; }
.gia-ads-dash, .gia-ads-dash > * { min-width: 0; }
@media (min-width: 800px) {
  .woocommerce-account .woocommerce { grid-template-columns: minmax(0, 1fr); }
}

/* MPDG business card and legal footer */
.gia-biz h2 { margin: 4px 0 8px; }
.gia-biz p { margin: 6px 0; }
.gia-social { display: flex; flex-wrap: wrap; gap: 8px; }
.gia-foot-legal { font-size: 0.85rem; color: var(--muted); }
.gia-legal-review { border-left: 4px solid var(--terracotta); background: var(--card); border-radius: 12px; padding: 12px 16px; box-shadow: var(--shadow); }
