/*
 * CouponCodes / PromoCodes.Guru Unified Premium Design System v3.3
 * -----------------------------------------------------------------
 * Goal: use the same mature /us-page typography, spacing and colour
 * language across PUBLIC, SHOPPER DASHBOARD, AUTH and ADMIN screens.
 *
 * This file is an override-only layer. It changes presentation only:
 * no routes, controllers, models, database schema, affiliate logic,
 * verification logic, queues, scheduler, auth or provider code.
 */

:root {
  /* Exact commercial design-system palette */
  --pcg-u-navy: #071d2f;
  --pcg-u-navy-soft: #12314a;
  --pcg-u-navy-line: #1f3a52;
  --pcg-u-green: #087a55;
  --pcg-u-green-dark: #065f43;
  --pcg-u-green-soft: #e3f5ee;
  --pcg-u-green-mist: #f2faf6;
  --pcg-u-amber: #b8710f;
  --pcg-u-amber-soft: #fbeed9;
  --pcg-u-bg: #f7f6f2;
  --pcg-u-surface: #ffffff;
  --pcg-u-line: #e6e2d9;
  --pcg-u-line-strong: #d8d2c4;
  --pcg-u-text: #16212c;
  --pcg-u-muted: #5c6b78;
  --pcg-u-muted-soft: #8794a0;
  --pcg-u-danger: #c23b3b;
  --pcg-u-danger-soft: #fbe6e6;

  /* Same spacing rhythm as the mature commercial pages */
  --pcg-u-s1: 4px;
  --pcg-u-s2: 8px;
  --pcg-u-s3: 12px;
  --pcg-u-s4: 16px;
  --pcg-u-s5: 20px;
  --pcg-u-s6: 24px;
  --pcg-u-s8: 32px;
  --pcg-u-s10: 40px;
  --pcg-u-s14: 56px;
  --pcg-u-s18: 72px;

  --pcg-u-radius-xs: 8px;
  --pcg-u-radius-sm: 12px;
  --pcg-u-radius: 20px;
  --pcg-u-radius-lg: 28px;
  --pcg-u-shadow-xs: 0 1px 2px rgba(7,29,47,.06);
  --pcg-u-shadow-sm: 0 4px 16px -4px rgba(7,29,47,.10);
  --pcg-u-shadow: 0 20px 48px -16px rgba(7,29,47,.18);
  --pcg-u-public-max: 1500px;
  --pcg-u-admin-max: 1680px;
}

/* ================================================================
   1. SHARED FOUNDATION
   ================================================================ */
.pcg-premium-v3,
.pcg-premium-v3-admin {
  font-family: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  color: var(--pcg-u-text);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.pcg-premium-v3 {
  background: var(--pcg-u-bg);
  font-size: 16px;
  line-height: 1.58;
}

.pcg-premium-v3 .container,
.pcg-premium-v3 .container-xxl,
.pcg-premium-v3 .container-xl,
.pcg-premium-v3 .container-lg,
.pcg-premium-v3 .container-md,
.pcg-premium-v3 .container-sm {
  width: min(calc(100% - 48px), var(--pcg-u-public-max));
  max-width: var(--pcg-u-public-max) !important;
  margin-inline: auto;
}

.pcg-premium-v3 h1,
.pcg-premium-v3 h2,
.pcg-premium-v3 h3,
.pcg-premium-v3 h4,
.pcg-premium-v3-admin h1,
.pcg-premium-v3-admin h2,
.pcg-premium-v3-admin h3,
.pcg-premium-v3-admin h4 {
  color: var(--pcg-u-navy);
  font-weight: 700;
  letter-spacing: -.025em;
}

.pcg-premium-v3 p,
.pcg-premium-v3 .text-muted { color: var(--pcg-u-muted) !important; }
.pcg-premium-v3 a { color: var(--pcg-u-green); }
.pcg-premium-v3 a:hover { color: var(--pcg-u-green-dark); }

/* Common readable small-text floor. */
.pcg-premium-v3 .pcg-eyebrow { font-size: 12.5px; line-height: 1.35; font-weight: 800; }
.pcg-premium-v3 .pcg-pill,
.pcg-premium-v3 .pcg-badge { font-size: 12px; line-height: 1.25; }
.pcg-premium-v3 .form-text,
.pcg-premium-v3 .pcg-input-help { font-size: 12.5px; line-height: 1.5; }

/* Premium surfaces */
.pcg-premium-v3 .pcg-coupon-card,
.pcg-premium-v3 .pcg-category-card,
.pcg-premium-v3 .pcg-store-tile,
.pcg-premium-v3 .pcg-process-card,
.pcg-premium-v3 .pcg-home-trust-card,
.pcg-premium-v3 .pcg-home-editorial-card,
.pcg-premium-v3 .pcg-saving-tip-card,
.pcg-premium-v3 .pcg-side-card,
.pcg-premium-v3 .pcg-table-card,
.pcg-premium-v3 .pcg-form-card,
.pcg-premium-v3 .pcg-metric,
.pcg-premium-v3 .pcg-empty-state {
  background: var(--pcg-u-surface);
  border-color: var(--pcg-u-line);
  box-shadow: var(--pcg-u-shadow-sm);
}

/* Forms / controls use the same scale everywhere public/user/auth. */
.pcg-premium-v3 input:not([type="checkbox"]):not([type="radio"]),
.pcg-premium-v3 select,
.pcg-premium-v3 textarea,
.pcg-premium-v3 .form-control,
.pcg-premium-v3 .form-select {
  min-height: 46px;
  font: inherit;
  font-size: 15px;
  color: var(--pcg-u-text);
  border-color: var(--pcg-u-line-strong);
  border-radius: 10px;
}
.pcg-premium-v3 textarea { min-height: 120px; }
.pcg-premium-v3 label,
.pcg-premium-v3 .form-label { font-size: 14px; font-weight: 700; color: var(--pcg-u-navy); }

.pcg-premium-v3 .btn,
.pcg-premium-v3 button {
  font-family: inherit;
}
.pcg-premium-v3 .btn-pcg-green,
.pcg-premium-v3 .btn-pcg-light,
.pcg-premium-v3 .btn-pcg-ghost,
.pcg-premium-v3 .btn-primary,
.pcg-premium-v3 .btn-secondary {
  min-height: 42px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 10px;
}
.pcg-premium-v3 .btn-pcg-green {
  background: var(--pcg-u-green);
  border-color: var(--pcg-u-green);
}
.pcg-premium-v3 .btn-pcg-green:hover {
  background: var(--pcg-u-green-dark);
  border-color: var(--pcg-u-green-dark);
}

/* Tables: never microscopic. */
.pcg-premium-v3 .table { font-size: 14px; color: var(--pcg-u-text); }
.pcg-premium-v3 .table > :not(caption) > * > * { padding: 14px 16px; }
.pcg-premium-v3 .table thead th {
  color: var(--pcg-u-muted);
  font-size: 12.5px;
  font-weight: 800;
  letter-spacing: .035em;
  text-transform: uppercase;
}

/* ================================================================
   2. PUBLIC /US-PAGE TYPOGRAPHY PARITY
   ================================================================ */
.pcg-premium-v3 .pcg-section { padding-block: 40px; }
.pcg-premium-v3 .pcg-section-tight { padding-block: 28px; }
.pcg-premium-v3 .pcg-section-head { gap: 18px; margin-bottom: 24px; }
.pcg-premium-v3 .pcg-section-head h2 {
  font-size: clamp(1.7rem, 2vw, 2.1rem); /* 27.2px -> 33.6px */
  line-height: 1.16;
}
.pcg-premium-v3 .pcg-section-head p { font-size: 15px; line-height: 1.62; }
.pcg-premium-v3 .pcg-section-head .btn { font-size: 13.5px; }

.pcg-premium-v3 .pcg-directory-page,
.pcg-premium-v3 .pcg-editorial-page,
.pcg-premium-v3 .pcg-store-page,
.pcg-premium-v3 .pcg-deals-page { font-size: 16px; }

.pcg-premium-v3 .pcg-directory-hero h1,
.pcg-premium-v3 .pcg-page-hero h1,
.pcg-premium-v3 .pcg-deals-hero h1,
.pcg-premium-v3 .pcg-authority-hero h1,
.pcg-premium-v3 .pcg-trust-hero h1 {
  font-size: clamp(2.35rem, 4.3vw, 4rem); /* 37.6px -> 64px */
  line-height: 1.02;
  letter-spacing: -.045em;
}
.pcg-premium-v3 .pcg-directory-hero p,
.pcg-premium-v3 .pcg-page-hero p,
.pcg-premium-v3 .pcg-deals-hero p,
.pcg-premium-v3 .pcg-authority-hero p,
.pcg-premium-v3 .pcg-trust-hero p {
  font-size: clamp(1rem, 1.4vw, 1.14rem); /* 16px -> 18.2px */
  line-height: 1.68;
}

.pcg-premium-v3 .pcg-coupon-card h3,
.pcg-premium-v3 .pcg-coupon-title { font-size: 15.7px; line-height: 1.42; }
.pcg-premium-v3 .pcg-coupon-card p,
.pcg-premium-v3 .pcg-coupon-desc { font-size: 13.4px; line-height: 1.58; }
.pcg-premium-v3 .pcg-coupon-card .btn { font-size: 13.1px; min-height: 42px; }
.pcg-premium-v3 .pcg-store-tile-name { font-size: 15.4px; }
.pcg-premium-v3 .pcg-category-card h3,
.pcg-premium-v3 .pcg-category-card strong { font-size: 15px; line-height: 1.35; }
.pcg-premium-v3 .pcg-category-card p,
.pcg-premium-v3 .pcg-category-card small { font-size: 12.5px; line-height: 1.45; }

/* ================================================================
   3. CUSTOM COUPONCODES HOMEPAGE -> SAME TYPOGRAPHY QUALITY
   ================================================================ */
body.cc-home-page {
  --cc-home-max: 1500px;
  --cc-home-section-gap: 26px;
  background: var(--pcg-u-bg);
  color: var(--pcg-u-text);
  font-size: 16px;
  line-height: 1.58;
}
body.cc-home-page .cc-shell {
  width: min(calc(100% - 48px), var(--cc-home-max));
  max-width: var(--cc-home-max);
}
body.cc-home-page .cc-card {
  border-color: var(--pcg-u-line);
  border-radius: 16px;
  box-shadow: var(--pcg-u-shadow-sm);
}

/* Header */
body.cc-home-page .cc-header { border-color: var(--pcg-u-line); background: rgba(255,255,255,.97); }
body.cc-home-page .cc-header-inner { height: 76px; gap: 24px; }
body.cc-home-page .cc-brand-name { font-size: 18px; color: var(--pcg-u-navy); }
body.cc-home-page .cc-brand-badge { font-size: 11.5px; }
body.cc-home-page .cc-nav { gap: 26px; }
body.cc-home-page .cc-nav a { font-size: 14.5px; color: var(--pcg-u-text); }
body.cc-home-page .cc-header-search { height: 44px; width: 330px; }
body.cc-home-page .cc-header-search input { font-size: 13.5px; }
body.cc-home-page .cc-country { font-size: 13px; }
body.cc-home-page .cc-submit { height: 44px; font-size: 13.5px; background: var(--pcg-u-green); }

/* Hero */
body.cc-home-page .cc-hero {
  grid-template-columns: minmax(390px,.68fr) minmax(0,1.32fr);
  gap: 40px;
  padding-top: 36px;
  margin-bottom: 30px !important;
}
body.cc-home-page .cc-hero-copy h1 {
  font-size: clamp(56px, 4.55vw, 72px);
  line-height: .98;
  letter-spacing: -.055em;
  margin-bottom: 20px;
}
body.cc-home-page .cc-hero-copy > p { font-size: 16px; line-height: 1.68; max-width: 600px; }
body.cc-home-page .cc-benefits { margin-top: 26px; gap: 14px; }
body.cc-home-page .cc-benefits strong { font-size: 13px; line-height: 1.28; }
body.cc-home-page .cc-benefits small { font-size: 11.5px; line-height: 1.4; }
body.cc-home-page .cc-benefits b { width: 31px; height: 31px; font-size: 13px; }
body.cc-home-page .cc-hero-carousel { height: 332px; }
body.cc-home-page .cc-hero-details { padding: 34px 32px; }
body.cc-home-page .cc-hero-details h2 { font-size: 25px; line-height: 1.22; }
body.cc-home-page .cc-hero-details > p { font-size: 13.5px; line-height: 1.58; }
body.cc-home-page .cc-guru-pill { font-size: 11.5px; }
body.cc-home-page .cc-hero-price strong { font-size: 25px; }
body.cc-home-page .cc-hero-price del,
body.cc-home-page .cc-hero-price span,
body.cc-home-page .cc-rating { font-size: 12px; }

/* Stats */
body.cc-home-page .cc-stats { min-height: 84px; padding-inline: 36px; background: var(--pcg-u-navy); }
body.cc-home-page .cc-stats strong { font-size: 19px; }
body.cc-home-page .cc-stats small { font-size: 11.5px; line-height: 1.35; }

/* Section heads */
body.cc-home-page .cc-section-head { min-height: 40px; margin-bottom: 18px; }
body.cc-home-page .cc-section-head h2 { font-size: 23px; line-height: 1.18; }
body.cc-home-page .cc-section-head a { font-size: 12.5px; }
body.cc-home-page .cc-heading-inline > span,
body.cc-home-page .cc-section-head > div > small { font-size: 11.5px; }

/* Category cards */
body.cc-home-page .cc-categories { padding: 22px; }
body.cc-home-page .cc-category { min-height: 150px; padding: 14px 10px; }
body.cc-home-page .cc-category-icon { height: 70px; font-size: 42px; }
body.cc-home-page .cc-category strong { font-size: 14px; line-height: 1.35; }
body.cc-home-page .cc-category small { font-size: 11.5px; margin-top: 7px; }

/* Top cards + right panel */
body.cc-home-page .cc-top-grid {
  grid-template-columns: minmax(0,4.35fr) minmax(300px,.95fr);
  gap: 20px;
  align-items: start !important;
}
body.cc-home-page .cc-top-panel { padding: 22px 20px 20px; }
body.cc-home-page .cc-deal-card { min-height: 400px; padding: 14px; }
body.cc-home-page .cc-deal-image { height: 140px; }
body.cc-home-page .cc-card-badges span { font-size: 10.5px; }
body.cc-home-page .cc-deal-card h3 { font-size: 15px; line-height: 1.4; min-height: 58px; }
body.cc-home-page .cc-deal-card > p { font-size: 12.5px; line-height: 1.55; min-height: 44px; }
body.cc-home-page .cc-store-name,
body.cc-home-page .cc-score-line { font-size: 11.5px; }
body.cc-home-page .cc-score-line em { font-size: 10.5px; }
body.cc-home-page .cc-price strong { font-size: 18.5px; }
body.cc-home-page .cc-price del { font-size: 11px; }
body.cc-home-page .cc-view-btn { height: 40px; font-size: 12.5px; }

body.cc-home-page .cc-trending {
  align-self: start !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 20px 18px 15px;
  background: linear-gradient(180deg, var(--pcg-u-navy), #082744);
}
body.cc-home-page .cc-trending h2 { font-size: 16.5px; }
body.cc-home-page .cc-trend-row { min-height: 56px; padding-block: 8px; }
body.cc-home-page .cc-trend-row > b { font-size: 11.5px; }
body.cc-home-page .cc-trend-row > span { font-size: 15px; }
body.cc-home-page .cc-trend-row strong { font-size: 13px; }
body.cc-home-page .cc-trend-row small { font-size: 10.5px; }
body.cc-home-page .cc-trend-all { font-size: 11px; }

/* Newest / blog */
body.cc-home-page .cc-middle-grid { grid-template-columns: minmax(0,3.9fr) minmax(320px,1.15fr); gap: 20px; }
body.cc-home-page .cc-newest-panel,
body.cc-home-page .cc-blog-panel { padding: 22px; }
body.cc-home-page .cc-tabs span { font-size: 11.5px; padding: 7px 11px; }
body.cc-home-page .cc-offer-card { min-height: 286px; padding: 15px; }
body.cc-home-page .cc-store-line strong { font-size: 13px; }
body.cc-home-page .cc-store-line small { font-size: 11px; }
body.cc-home-page .cc-offer-main h3 { font-size: 14px; line-height: 1.45; }
body.cc-home-page .cc-offer-main > b { font-size: 11px; }
body.cc-home-page .cc-offer-card .cc-price strong { font-size: 17.5px; }
body.cc-home-page .cc-offer-card .cc-score-line { font-size: 11px; }
body.cc-home-page .cc-offer-actions a { height: 38px; font-size: 12px; }
body.cc-home-page .cc-blog-panel .cc-section-head h2 { font-size: 21px; }
body.cc-home-page .cc-blog-item strong { font-size: 13.5px; line-height: 1.42; }
body.cc-home-page .cc-blog-item small { font-size: 11px; }
body.cc-home-page .cc-blog-empty { font-size: 14px; }

/* Lower panels */
body.cc-home-page .cc-pop-title strong { font-size: 13px; }
body.cc-home-page .cc-popular-card .cc-price strong { font-size: 17.5px; }
body.cc-home-page .cc-popular-card > small { font-size: 11.5px; }
body.cc-home-page .cc-popular-card > a { height: 38px; font-size: 12px; }
body.cc-home-page .cc-voted-row { min-height: 68px; }
body.cc-home-page .cc-voted-row > b { font-size: 12.5px; }
body.cc-home-page .cc-voted-row strong { font-size: 13px; }
body.cc-home-page .cc-voted-row small { font-size: 11px; }
body.cc-home-page .cc-voted-row > span { font-size: 10.5px; }
body.cc-home-page .cc-voted-row > em { font-size: 12px; }

/* Newsletter / trust / verification */
body.cc-home-page .cc-newsletter { min-height: 112px; padding: 22px 28px; gap: 22px; }
body.cc-home-page .cc-newsletter h2 { font-size: 20px; }
body.cc-home-page .cc-newsletter p { font-size: 13px; line-height: 1.55; }
body.cc-home-page .cc-newsletter input { height: 46px; font-size: 13.5px; }
body.cc-home-page .cc-newsletter button { height: 46px; font-size: 12.5px; }
body.cc-home-page .cc-newsletter form small { font-size: 10.5px; }
body.cc-home-page .cc-news-points { font-size: 11.5px; }

body.cc-home-page .cc-trust-strip { min-height: 86px; padding: 17px 22px; }
body.cc-home-page .cc-trust-strip strong { font-size: 12.5px; }
body.cc-home-page .cc-trust-strip small { font-size: 11px; }
body.cc-home-page .cc-verified { min-height: 182px; padding: 30px 40px; }
body.cc-home-page .cc-verified > div:first-child > small { font-size: 11.5px; }
body.cc-home-page .cc-verified h2 { font-size: 32px; }
body.cc-home-page .cc-verified h2 span { font-size: 15px; }
body.cc-home-page .cc-verified p { font-size: 13px; line-height: 1.6; }
body.cc-home-page .cc-verified-features strong { font-size: 12.5px; }
body.cc-home-page .cc-verified-features small { font-size: 10.5px; }

/* Custom footer: no more 7px/8px copy. */
body.cc-home-page .cc-footer { background: linear-gradient(135deg,#061a2b 0%,#08263c 100%); padding: 46px 0 26px; }
body.cc-home-page .cc-footer-brand strong { font-size: 18px; }
body.cc-home-page .cc-footer p { font-size: 13px; line-height: 1.65; }
body.cc-home-page .cc-footer small { font-size: 11px; }
body.cc-home-page .cc-footer h3 { font-size: 13px; }
body.cc-home-page .cc-footer a:not(.cc-footer-brand) { font-size: 13px; margin-block: 5px; }
body.cc-home-page .cc-footer-subscribe p { font-size: 12px; }
body.cc-home-page .cc-footer-subscribe input { font-size: 12.5px; }
body.cc-home-page .cc-footer-subscribe button { font-size: 11.5px; }
body.cc-home-page .cc-footer-subscribe small { font-size: 10.5px; }

/* ================================================================
   4. SHOPPER / USER DASHBOARD
   ================================================================ */
.pcg-premium-v3 .pcg-dashboard-shell {
  grid-template-columns: 270px minmax(0,1fr);
  gap: 28px;
  align-items: start;
}
.pcg-premium-v3 .pcg-dashboard-nav {
  padding: 14px;
  border-radius: 18px;
  border-color: var(--pcg-u-line);
  box-shadow: var(--pcg-u-shadow-sm);
}
.pcg-premium-v3 .pcg-dashboard-nav a {
  padding: 13px 15px;
  border-radius: 10px;
  font-size: 14.5px;
  font-weight: 700;
  color: var(--pcg-u-muted);
}
.pcg-premium-v3 .pcg-dashboard-nav a.active {
  color: var(--pcg-u-green-dark);
  background: var(--pcg-u-green-soft);
}
.pcg-premium-v3 .pcg-dashboard-main > h1 {
  font-size: clamp(2rem,2.4vw,2.5rem);
  line-height: 1.12;
  margin: 8px 0 22px;
}
.pcg-premium-v3 .pcg-dashboard-main .pcg-section-head h2 { font-size: 24px; }
.pcg-premium-v3 .pcg-metric-grid { gap: 18px; margin-block: 24px; }
.pcg-premium-v3 .pcg-metric { padding: 22px; border-radius: 16px; }
.pcg-premium-v3 .pcg-metric strong { font-size: 30px; }
.pcg-premium-v3 .pcg-metric span { font-size: 13.5px; }
.pcg-premium-v3 .pcg-dashboard-main .pcg-table-card h3 { font-size: 18px; }

/* ================================================================
   5. AUTH PAGES
   ================================================================ */
.pcg-premium-v3 .pcg-auth-shell,
.pcg-premium-v3-admin .pcg-auth-shell { max-width: 520px; }
.pcg-premium-v3 .pcg-auth-shell .pcg-form-card,
.pcg-premium-v3-admin .pcg-auth-shell .pcg-form-card {
  padding: 30px;
  border-radius: 20px;
  box-shadow: var(--pcg-u-shadow);
}
.pcg-premium-v3 .pcg-auth-shell h1,
.pcg-premium-v3-admin .pcg-auth-shell h1 {
  font-size: 32px;
  line-height: 1.15;
  margin-bottom: 12px;
}
.pcg-premium-v3 .pcg-auth-shell p,
.pcg-premium-v3-admin .pcg-auth-shell p { font-size: 14px; line-height: 1.6; }

/* ================================================================
   6. ADMIN CONTROL CENTER -> SAME COLOUR / TYPE SYSTEM
   ================================================================ */
.pcg-premium-v3-admin {
  background: #f4f6f4;
  color: var(--pcg-u-text);
  font-size: 16px;
  line-height: 1.55;
}
.pcg-premium-v3-admin .pcg-admin-topbar {
  height: 72px;
  padding-inline: 26px;
  background: rgba(255,255,255,.98);
  border-color: var(--pcg-u-line);
  box-shadow: var(--pcg-u-shadow-xs);
}
.pcg-premium-v3-admin .pcg-admin-topbar-title { font-size: 17px; font-weight: 750; color: var(--pcg-u-navy); }
.pcg-premium-v3-admin .pcg-admin-view-site,
.pcg-premium-v3-admin .pcg-admin-profile-btn { font-size: 14px; }
.pcg-premium-v3-admin .pcg-admin-shell { grid-template-columns: 260px minmax(0,1fr); min-height: calc(100vh - 72px); }
.pcg-premium-v3-admin .pcg-admin-sidebar {
  background: linear-gradient(180deg,var(--pcg-u-navy) 0%,#08263c 100%);
}
.pcg-premium-v3-admin .pcg-admin-nav[aria-label] { padding: 18px 13px 26px; }
.pcg-premium-v3-admin .pcg-admin-nav-group { margin-bottom: 9px; }
.pcg-premium-v3-admin .pcg-admin-nav-group-toggle {
  font-size: 12.5px;
  letter-spacing: .055em;
  color: #8fa7b8;
  padding: 10px 12px;
}
.pcg-premium-v3-admin .pcg-admin-nav-link {
  min-height: 42px;
  display: flex;
  align-items: center;
  padding: 10px 13px;
  font-size: 14.5px;
  line-height: 1.35;
  border-radius: 10px;
  color: #b8c9d5;
}
.pcg-premium-v3-admin .pcg-admin-nav-link:hover { color: #fff; background: rgba(255,255,255,.055); }
.pcg-premium-v3-admin .pcg-admin-nav-link[aria-current="page"] {
  color: #ecfff7;
  background: linear-gradient(90deg,rgba(16,185,129,.22),rgba(16,185,129,.07));
  box-shadow: inset 3px 0 0 #34d399;
}
.pcg-premium-v3-admin .pcg-admin-main {
  width: 100%;
  max-width: var(--pcg-u-admin-max);
  margin-inline: auto;
  padding: 32px 34px 46px;
}
.pcg-premium-v3-admin .pcg-admin-page-header { margin-bottom: 26px; }
.pcg-premium-v3-admin .pcg-admin-page-header h1 {
  font-size: clamp(1.9rem,2.1vw,2.25rem); /* 30.4px -> 36px */
  line-height: 1.15;
  letter-spacing: -.035em;
}
.pcg-premium-v3-admin .pcg-admin-page-header-desc { font-size: 15px; line-height: 1.6; color: var(--pcg-u-muted); }
.pcg-premium-v3-admin .pcg-admin-breadcrumb,
.pcg-premium-v3-admin .pcg-admin-breadcrumb a { font-size: 12.5px; }

.pcg-premium-v3-admin .pcg-admin-panel,
.pcg-premium-v3-admin .pcg-overview-card,
.pcg-premium-v3-admin .pcg-table-card,
.pcg-premium-v3-admin .pcg-form-card,
.pcg-premium-v3-admin .card {
  background: #fff;
  border-color: var(--pcg-u-line);
  border-radius: 16px;
  box-shadow: var(--pcg-u-shadow-sm);
}
.pcg-premium-v3-admin .pcg-admin-panel-head h2,
.pcg-premium-v3-admin .pcg-overview-section-head h2,
.pcg-premium-v3-admin .pcg-overview-heading-row h2,
.pcg-premium-v3-admin .pcg-overview-quick h2 { font-size: 19px; line-height: 1.3; }
.pcg-premium-v3-admin .pcg-overview-section-head p { font-size: 13.5px; }
.pcg-premium-v3-admin .pcg-eyebrow { font-size: 12px; font-weight: 800; }

/* Admin overview microcopy was previously too small; raise it to the /us readability floor. */
.pcg-premium-v3-admin .pcg-overview-status-label { font-size: 12.5px; }
.pcg-premium-v3-admin .pcg-overview-status-row strong { font-size: 14px; }
.pcg-premium-v3-admin .pcg-overview-live { font-size: 12px; }
.pcg-premium-v3-admin .pcg-overview-attention-row { font-size: 14px; }
.pcg-premium-v3-admin .pcg-overview-row-action { font-size: 12.5px; }
.pcg-premium-v3-admin .pcg-overview-quick-actions a { font-size: 13.5px; min-height: 44px; }
.pcg-premium-v3-admin .pcg-overview-metric strong { font-size: 30px; }
.pcg-premium-v3-admin .pcg-overview-metric span { font-size: 14px; }
.pcg-premium-v3-admin .pcg-overview-metric small { font-size: 12px; }
.pcg-premium-v3-admin .pcg-overview-performance-totals > span { font-size: 12.5px; }
.pcg-premium-v3-admin .pcg-overview-activity-row strong { font-size: 13.5px; }
.pcg-premium-v3-admin .pcg-overview-activity-row time { font-size: 12px; }
.pcg-premium-v3-admin .pcg-overview-empty-activity span { font-size: 13px; }

/* Admin tables */
.pcg-premium-v3-admin table,
.pcg-premium-v3-admin .table { font-size: 14px; color: var(--pcg-u-text); }
.pcg-premium-v3-admin .table > :not(caption) > * > * { padding: 14px 15px; vertical-align: middle; }
.pcg-premium-v3-admin th,
.pcg-premium-v3-admin .table thead th {
  font-size: 12.5px;
  font-weight: 800;
  letter-spacing: .035em;
  color: var(--pcg-u-muted);
}

/* Admin forms */
.pcg-premium-v3-admin .pcg-field label,
.pcg-premium-v3-admin .form-label { font-size: 14px; font-weight: 700; color: var(--pcg-u-navy); }
.pcg-premium-v3-admin .pcg-field input,
.pcg-premium-v3-admin .pcg-field select,
.pcg-premium-v3-admin .pcg-field textarea,
.pcg-premium-v3-admin .form-control,
.pcg-premium-v3-admin .form-select {
  min-height: 44px;
  font-size: 14.5px;
  border-color: var(--pcg-u-line-strong);
  border-radius: 10px;
}
.pcg-premium-v3-admin .pcg-field textarea { min-height: 120px; }
.pcg-premium-v3-admin .pcg-input-help,
.pcg-premium-v3-admin .form-text,
.pcg-premium-v3-admin small.text-muted { font-size: 12.5px; line-height: 1.5; }
.pcg-premium-v3-admin .btn {
  min-height: 42px;
  font-size: 13.5px;
  font-weight: 750;
  border-radius: 10px;
}
.pcg-premium-v3-admin .pcg-badge { font-size: 11.5px; }
.pcg-premium-v3-admin .pcg-alert-success,
.pcg-premium-v3-admin .pcg-alert-error,
.pcg-premium-v3-admin .pcg-alert-info { font-size: 14px; }

/* Admin auth pages */
.pcg-premium-v3-admin .pcg-admin-login-page { background: #f4f6f4; min-height: 100vh; }
.pcg-premium-v3-admin .pcg-auth-shell .pcg-form-card h1 { font-size: 32px; }
.pcg-premium-v3-admin .pcg-auth-shell .pcg-form-card p { font-size: 14px; }

/* ================================================================
   7. RESPONSIVE: KEEP READABILITY, DO NOT SHRINK TO 7-10PX
   ================================================================ */
@media (max-width: 1599px) and (min-width: 1200px) {
  :root { --pcg-u-public-max: 1420px; }
  body.cc-home-page { --cc-home-max: 1420px; }
  body.cc-home-page .cc-shell { width: min(calc(100% - 40px), var(--cc-home-max)); }
  body.cc-home-page .cc-nav a { font-size: 13.5px; }
  body.cc-home-page .cc-header-search input { font-size: 13px; }
  body.cc-home-page .cc-hero-copy h1 { font-size: clamp(52px,4.25vw,66px); }
  body.cc-home-page .cc-hero-copy > p { font-size: 15px; }
  body.cc-home-page .cc-benefits strong { font-size: 12px; }
  body.cc-home-page .cc-benefits small { font-size: 10.5px; }
  body.cc-home-page .cc-section-head h2 { font-size: 21px; }
  body.cc-home-page .cc-category strong { font-size: 13px; }
  body.cc-home-page .cc-category small { font-size: 10.5px; }
  body.cc-home-page .cc-deal-card h3 { font-size: 14px; }
  body.cc-home-page .cc-deal-card > p { font-size: 12px; }
  body.cc-home-page .cc-store-name,
  body.cc-home-page .cc-score-line { font-size: 10.5px; }
  body.cc-home-page .cc-view-btn { font-size: 11.5px; }
  body.cc-home-page .cc-trend-row strong { font-size: 12px; }
  body.cc-home-page .cc-trend-row small { font-size: 10px; }
  body.cc-home-page .cc-store-line strong { font-size: 12px; }
  body.cc-home-page .cc-store-line small { font-size: 10.5px; }
  body.cc-home-page .cc-offer-main h3 { font-size: 13px; }
  body.cc-home-page .cc-blog-item strong { font-size: 12.5px; }
  body.cc-home-page .cc-blog-item small { font-size: 10.5px; }
  body.cc-home-page .cc-newsletter p { font-size: 12px; }
  body.cc-home-page .cc-trust-strip strong { font-size: 12px; }
  body.cc-home-page .cc-trust-strip small { font-size: 10.5px; }
  body.cc-home-page .cc-verified-features strong { font-size: 12px; }
  body.cc-home-page .cc-verified-features small { font-size: 10.5px; }
  body.cc-home-page .cc-footer p,
  body.cc-home-page .cc-footer a:not(.cc-footer-brand) { font-size: 12.5px; }
}

@media (max-width: 1099px) {
  .pcg-premium-v3 .pcg-dashboard-shell { grid-template-columns: 1fr; }
  .pcg-premium-v3 .pcg-dashboard-nav { flex-direction: row; overflow-x: auto; }
  .pcg-premium-v3-admin .pcg-admin-shell { grid-template-columns: 1fr; }
  body.cc-home-page .cc-hero { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
  .pcg-premium-v3 { font-size: 15px; }
  .pcg-premium-v3 .container,
  .pcg-premium-v3 .container-xxl,
  .pcg-premium-v3 .container-xl,
  .pcg-premium-v3 .container-lg,
  .pcg-premium-v3 .container-md,
  .pcg-premium-v3 .container-sm { width: min(calc(100% - 30px), var(--pcg-u-public-max)); }
  .pcg-premium-v3 .pcg-section { padding-block: 28px; }
  .pcg-premium-v3 .pcg-section-head h2 { font-size: 24px; }
  .pcg-premium-v3 .table { font-size: 13.5px; }

  body.cc-home-page .cc-shell { width: min(calc(100% - 28px), 720px); }
  body.cc-home-page .cc-brand-name { font-size: 16px; }
  body.cc-home-page .cc-hero-copy h1 { font-size: clamp(42px,12vw,54px); }
  body.cc-home-page .cc-hero-copy > p { font-size: 14.5px; }
  body.cc-home-page .cc-benefits strong { font-size: 12px; }
  body.cc-home-page .cc-benefits small { font-size: 10.5px; }
  body.cc-home-page .cc-section-head h2 { font-size: 20px; }
  body.cc-home-page .cc-category strong { font-size: 13px; }
  body.cc-home-page .cc-category small { font-size: 10.5px; }
  body.cc-home-page .cc-deal-card h3 { font-size: 13px; }
  body.cc-home-page .cc-deal-card > p { font-size: 11.5px; }
  body.cc-home-page .cc-offer-main h3 { font-size: 12.5px; }
  body.cc-home-page .cc-blog-item strong { font-size: 12.5px; }
  body.cc-home-page .cc-newsletter p { font-size: 12px; }
  body.cc-home-page .cc-trust-strip strong { font-size: 11.5px; }
  body.cc-home-page .cc-trust-strip small { font-size: 10.5px; }
  body.cc-home-page .cc-verified p { font-size: 12px; }
  body.cc-home-page .cc-footer p,
  body.cc-home-page .cc-footer a:not(.cc-footer-brand) { font-size: 12px; }

  .pcg-premium-v3-admin { font-size: 15px; }
  .pcg-premium-v3-admin .pcg-admin-main { padding: 22px 16px 34px; }
  .pcg-premium-v3-admin .pcg-admin-page-header h1 { font-size: 28px; }
  .pcg-premium-v3-admin .table { font-size: 13.5px; }
}
