/* GPLWPClub — single stylesheet, system fonts, no framework */
:root{--ink:#1a1a2e;--muted:#5a5a6e;--brand:#1d4ed8;--brand-dark:#1e40af;--bg:#fff;--soft:#f4f5f7;--line:#e2e4ea;--green:#15803d;--radius:8px}
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);line-height:1.6;background:var(--bg)}
a{color:var(--brand)}a:hover{color:var(--brand-dark)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1140px;margin:0 auto;padding:0 16px}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:10}
.header-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:12px 16px}
.logo{font-size:1.4rem;font-weight:800;color:var(--ink);text-decoration:none}.logo span{color:var(--brand)}
.main-nav{display:flex;gap:14px;flex-wrap:wrap}.main-nav a{color:var(--ink);text-decoration:none;font-size:.95rem}.main-nav a:hover{color:var(--brand)}
.header-search{display:flex;gap:6px;flex:1;min-width:200px;position:relative}
.header-search input[type=search]{flex:1;padding:8px 10px;border:1px solid var(--line);border-radius:var(--radius);font:inherit}
.header-search button,.btn{padding:8px 16px;border-radius:var(--radius);border:1px solid var(--brand);background:var(--brand);color:#fff;cursor:pointer;font:inherit;text-decoration:none;display:inline-block;text-align:center}
.btn-outline{background:#fff;color:var(--brand)}.btn-lg{padding:12px 22px;font-size:1.05rem}
.header-actions{display:flex;gap:8px}
.search-suggest{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 16px rgba(0,0,0,.12);z-index:20}
.search-suggest a{display:block;padding:8px 12px;color:var(--ink);text-decoration:none}.search-suggest a:hover{background:var(--soft)}
.hero{background:var(--soft);padding:56px 0;text-align:center}.hero h1{font-size:2.2rem;line-height:1.2;margin:0 0 12px}.hero-sub{font-size:1.15rem;color:var(--muted);max-width:680px;margin:0 auto 20px}.hero-cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.hero-trust{color:var(--green);font-size:.95rem}
.section{padding:32px 16px}.narrow{max-width:760px}
h1{font-size:1.9rem;line-height:1.25}h2{font-size:1.4rem}h3{font-size:1.1rem}
.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.card{border:1px solid var(--line);border-radius:var(--radius);padding:16px;background:#fff}
.card h2,.card h3{margin-top:0}.card h2 a,.card h3 a{color:var(--ink);text-decoration:none}.card h2 a:hover,.card h3 a:hover{color:var(--brand)}
.product-card img{border-radius:6px;margin-bottom:10px}
.product-meta{color:var(--muted);font-size:.9rem}
.price{font-weight:700;font-size:1.1rem}.price-lg{font-size:1.8rem;margin:8px 0}.price-period{font-size:1rem;font-weight:400;color:var(--muted)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;list-style:none;padding:0}.steps li{border:1px solid var(--line);border-radius:var(--radius);padding:16px}
.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.pricing-featured{border:2px solid var(--brand)}
.pricing-card ul{padding-left:20px}
.product-layout{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}
.product-cover{border-radius:var(--radius);border:1px solid var(--line)}
.product-cover-placeholder{border:1px dashed var(--line);border-radius:var(--radius);padding:80px 20px;text-align:center;color:var(--muted);background:var(--soft)}
.buy-box{border:1px solid var(--line);border-radius:var(--radius);padding:20px;position:sticky;top:80px;background:#fff}
.buy-box .btn{display:block;width:100%;margin:8px 0}
.buy-points{padding-left:20px;font-size:.95rem}.small{font-size:.85rem;color:var(--muted)}
.faq details{border:1px solid var(--line);border-radius:var(--radius);padding:12px;margin-bottom:8px}.faq summary{cursor:pointer;font-weight:600}
.breadcrumbs{color:var(--muted);font-size:.9rem}
.form label{display:block;font-weight:600;margin-bottom:4px}.form input,.form textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:var(--radius);font:inherit}
.search-form{display:flex;gap:8px;flex-wrap:wrap;align-items:end}.search-form input{flex:1;min-width:200px;padding:10px;border:1px solid var(--line);border-radius:var(--radius);font:inherit}
.notice{padding:12px;border-radius:var(--radius)}.notice-success{background:#dcfce7;color:#14532d}.notice-error{background:#fee2e2;color:#7f1d1d}
.legal-body h2{margin-top:28px}
.site-footer{border-top:1px solid var(--line);background:var(--soft);margin-top:40px;padding:32px 0 16px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px}.footer-grid h3{font-size:1rem}.footer-grid ul{list-style:none;padding:0}.footer-grid li{margin-bottom:6px}
.footer-logo{font-weight:800;font-size:1.2rem}.footer-logo span{color:var(--brand)}
.trust-badges span{display:inline-block;margin:4px 8px 4px 0;font-size:.9rem;color:var(--green)}
.footer-bottom{border-top:1px solid var(--line);margin-top:24px;padding-top:16px;font-size:.85rem;color:var(--muted)}
@media (max-width:820px){
  .product-layout{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .hero h1{font-size:1.7rem}
  .header-search{order:3;flex-basis:100%}
  .buy-box{position:static}
}
@media (max-width:520px){.footer-grid{grid-template-columns:1fr}}

img{background:#eef0f3}
.product-card img,.product-cover,.featured-image{background:#eef0f3}
.featured-image{border-radius:8px;border:1px solid var(--line)}
.author-box{border:1px solid var(--line);border-radius:8px;padding:16px;background:var(--soft);margin:24px 0}
.author-box h2{margin-top:0}

/* --- v2: PluginTheme-style pricing, discounts, fancy header/home, mobile nav --- */
.site-header{background:linear-gradient(180deg,#ffffff,#f8faff);box-shadow:0 2px 12px rgba(29,78,216,.08)}
.nav-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:8px 12px;font:inherit;font-weight:700;cursor:pointer;color:var(--ink)}
.offer-strip{background:linear-gradient(90deg,#1d4ed8,#7c3aed);color:#fff;text-align:center;padding:10px 14px;border-radius:var(--radius);font-weight:600;margin:0 0 20px}
.pricing-intro{color:var(--muted);font-size:1.1rem}
.pricing-card{position:relative;overflow:hidden}
.pricing-card::before{content:"";display:block;height:6px;margin:-16px -16px 12px;background:linear-gradient(90deg,var(--brand),#7c3aed)}
.pricing-featured{border:2px solid var(--brand);box-shadow:0 10px 30px rgba(29,78,216,.18);transform:scale(1.02)}
.was-price{color:var(--muted);margin:4px 0 0}.was-price s{font-size:1.1rem}
.off-badge{display:inline-block;background:#16a34a;color:#fff;font-weight:800;font-size:.9rem;padding:3px 10px;border-radius:999px}
.off-badge-sm{font-size:.75rem;padding:2px 8px;vertical-align:middle}
.price-xl{font-size:2.4rem;margin:6px 0}
.pricing-note{color:var(--muted);margin-top:0}
.check-list{list-style:none;padding-left:0}.check-list li{padding:6px 0;border-bottom:1px solid var(--soft);color:var(--ink)}
.check-list li:last-child{border-bottom:0}
.popular-ribbon{position:absolute;top:12px;right:-34px;transform:rotate(35deg);background:#f59e0b;color:#fff;font-weight:800;font-size:.8rem;padding:4px 40px;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.btn-block{width:100%}
.single-strip{border:1px dashed var(--brand);border-radius:var(--radius);padding:16px 20px;margin:24px 0;background:#eff6ff;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.single-strip p{margin:4px 0}
.included-title{margin:16px 0 4px;font-size:1rem}
.included-list li{font-size:.95rem}
.share-box{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}
.share-label{font-weight:700;margin:0 0 8px}
.share-buttons{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.share-btn{display:inline-block;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;font-weight:700;font-size:.9rem;cursor:pointer}
.share-btn:hover{border-color:var(--brand);color:var(--brand)}
.share-x{background:#000;color:#fff;border-color:#000}.share-x:hover{color:#fff;background:#222}
.share-fb{background:#1877f2;color:#fff;border-color:#1877f2}.share-fb:hover{color:#fff;background:#0d65d9}
.share-wa{background:#25d366;color:#fff;border-color:#25d366}.share-wa:hover{color:#fff;background:#1da851}
.share-tg{background:#229ed9;color:#fff;border-color:#229ed9}.share-tg:hover{color:#fff;background:#1a86b8}
.share-copied{color:var(--green);font-weight:700;margin:6px 0 0}
.hero{background:linear-gradient(135deg,#1d4ed8 0%,#7c3aed 55%,#db2777 100%);color:#fff;padding:72px 0}
.hero h1{font-size:2.6rem}
.hero-sub{color:rgba(255,255,255,.9)}
.hero-trust{color:#fff}
.trust-pill{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:999px;padding:5px 12px;margin:4px;font-size:.9rem}
.hero .btn-outline{background:transparent;color:#fff;border-color:#fff}
.hero .btn-outline:hover{background:rgba(255,255,255,.15);color:#fff}
.product-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px}
.tab-btn{padding:9px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:700;cursor:pointer;color:var(--ink)}
.tab-btn:hover{border-color:var(--brand);color:var(--brand)}
.tab-btn.active{background:linear-gradient(90deg,var(--brand),#7c3aed);color:#fff;border-color:transparent}
.product-card{transition:transform .15s ease,box-shadow .15s ease;overflow:hidden}
.product-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,26,46,.14)}
.product-card img{border-radius:6px 6px 0 0;margin:-16px -16px 10px;width:calc(100% + 32px);max-width:none}
@media (max-width:820px){
  .nav-toggle{display:inline-block;margin-left:auto}
  .main-nav{display:none;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid var(--line);padding-top:8px}
  body.nav-open .main-nav{display:flex}
  .main-nav a{padding:10px 4px;border-bottom:1px solid var(--soft);font-size:1rem}
  .header-inner{gap:10px}
  .header-actions{margin-left:auto}
  .header-actions .btn{padding:8px 10px}
  .pricing-grid{grid-template-columns:1fr}
  .pricing-featured{transform:none}
  .hero{padding:48px 0}
  .hero h1{font-size:1.9rem}
  .single-strip{flex-direction:column;align-items:flex-start}
  .buy-box{position:static}
}
@media (max-width:520px){
  .header-search{order:4}
  .price-xl{font-size:2rem}
  .hero-cta .btn{display:block;width:100%}
  .hero-cta{gap:8px}
}

/* Brands page (v3) — matches the v2 fancy design: gradients, shadows, hover lift */
.brand-hero{text-align:center;padding:24px 0 8px}
.brand-hero h1{font-size:2.2rem;margin:0 0 10px}
.brand-hero .hero-sub{color:var(--muted);max-width:640px;margin:0 auto 12px}
.brand-hero .hero-trust{color:var(--green)}
.brand-hero-single .brand-tile-lg{margin:0 auto 14px}
.brand-tools{max-width:520px;margin:20px auto 14px}
.brand-search{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:999px;font:inherit;box-shadow:0 2px 8px rgba(26,26,46,.06)}
.brand-search:focus{outline:2px solid var(--brand);border-color:var(--brand)}
.az-row{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:0 0 22px}
.az-btn{padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-weight:700;cursor:pointer;color:var(--ink)}
.az-btn:hover{border-color:var(--brand);color:var(--brand)}
.az-btn.active{background:linear-gradient(90deg,var(--brand),#7c3aed);color:#fff;border-color:transparent}
.brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.brand-card{padding:0;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}
.brand-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,26,46,.14)}
.brand-card[hidden]{display:none}
.brand-card-link{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:24px 16px;text-decoration:none;color:var(--ink)}
.brand-tile{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:18px;color:#fff;font-size:2rem;font-weight:800;box-shadow:0 6px 16px rgba(26,26,46,.2)}
.brand-tile-lg{width:96px;height:96px;font-size:2.8rem;border-radius:24px}
.brand-name{font-size:1.15rem;font-weight:800}
.brand-meta{color:var(--muted);font-size:.95rem}
.brand-cta{color:var(--brand);font-weight:700;font-size:.95rem}
.brand-empty{text-align:center;color:var(--muted);margin-top:16px}
@media (max-width:820px){
  .brand-hero h1{font-size:1.8rem}
  .brand-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .brand-tile{width:60px;height:60px;font-size:1.6rem}
}

/* --- v4: sales-focused homepage, richer product cards, membership band --- */
.btn-gradient{background:linear-gradient(90deg,#f59e0b,#db2777);border-color:transparent;color:#fff;font-weight:800}
.btn-gradient:hover{background:linear-gradient(90deg,#d97706,#be185d);color:#fff}
.hero-sales{background:linear-gradient(135deg,#0f1e5c 0%,#1d4ed8 42%,#7c3aed 72%,#db2777 100%);padding:84px 0 64px}
.hero-eyebrow{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:7px 16px;font-weight:700;font-size:.95rem;margin:0 0 18px}
.hero-sales h1{font-size:3rem;line-height:1.1}
.hero-sales .hero-sub{font-size:1.25rem;max-width:720px}
.hero-sales .hero-sub strong{color:#fde68a}
.hero-stats{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.hero-stat{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);border-radius:14px;padding:12px 22px;min-width:130px}
.hero-stat strong{display:block;font-size:1.7rem;line-height:1.1}
.hero-stat span{font-size:.9rem;color:rgba(255,255,255,.85)}
.section-title{font-size:1.8rem;margin:0 0 6px}
.section-sub{color:var(--muted);margin:0 0 20px;font-size:1.05rem}
.why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}
.why-card{border:1px solid var(--line);border-radius:14px;padding:20px;background:#fff;box-shadow:0 4px 14px rgba(26,26,46,.05);transition:transform .15s ease,box-shadow .15s ease}
.why-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,26,46,.12)}
.why-icon{font-size:2rem;display:block;margin-bottom:8px}
.why-card h3{margin:0 0 6px}
.why-card p{margin:0;color:var(--muted);font-size:.96rem}
.category-card{transition:transform .15s ease,box-shadow .15s ease}
.category-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(26,26,46,.12);border-color:var(--brand)}
.product-card-rich{padding:0;display:flex;flex-direction:column}
.product-card-rich .card-body{padding:0 16px 16px;display:flex;flex-direction:column;flex:1}
.card-img-wrap{position:relative;display:block;overflow:hidden;border-radius:8px 8px 0 0;margin:0 0 12px;background:#eef0f3}
.card-img-wrap img{margin:0 !important;width:100%;max-width:100%;border-radius:0;transition:transform .3s ease}
.product-card-rich:hover .card-img-wrap img{transform:scale(1.06)}
.img-off-badge{position:absolute;top:12px;left:12px;background:#16a34a;color:#fff;font-weight:800;font-size:.85rem;padding:4px 10px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.img-best-badge{position:absolute;top:12px;right:12px;background:#f59e0b;color:#fff;font-weight:800;font-size:.8rem;padding:4px 10px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.25)}
.card-desc{flex:1}
.stars{color:#d97706;font-weight:700}
.price-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}
.price-row .price{font-size:1.3rem}
.card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:8px 0 0}
.card-actions .btn{flex:1;white-space:nowrap}
.card-details{font-weight:700;font-size:.95rem;white-space:nowrap}
.section-cta{text-align:center;margin-top:24px}
.membership-band{background:linear-gradient(135deg,#0f1e5c,#1d4ed8 55%,#7c3aed);color:#fff;margin:32px 0 0}
.membership-band .section{padding:48px 16px}
.section-title-light{color:#fff}
.section-sub-light{color:rgba(255,255,255,.85)}
.membership-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:820px;margin:0 auto}
.membership-card{border-radius:16px;box-shadow:0 8px 24px rgba(0,0,0,.18);color:var(--ink)}
.membership-card .price-period{color:var(--muted)}
.membership-featured{background:linear-gradient(180deg,#fffbeb,#fff);border:2px solid #f59e0b;box-shadow:0 16px 40px rgba(245,158,11,.35);transform:scale(1.03)}
.pricing-featured-glow{box-shadow:0 16px 44px rgba(245,158,11,.35);border-color:#f59e0b}
.pricing-featured-glow .price-xl{font-size:2.8rem;color:#b45309}
.pricing-trust{text-align:center;color:var(--green);font-weight:700;margin:18px 0 0}
.membership-trust{text-align:center;color:rgba(255,255,255,.9);margin:22px 0 0}
.membership-trust a{color:#fde68a;font-weight:700}
.steps-fancy li{position:relative;padding-top:20px;background:#fff;box-shadow:0 4px 14px rgba(26,26,46,.05)}
.step-num{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(90deg,var(--brand),#7c3aed);color:#fff;font-weight:800;margin-right:8px}
.blog-card{transition:transform .15s ease,box-shadow .15s ease}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,26,46,.14)}
@media (max-width:820px){
  .hero-sales{padding:56px 0 44px}
  .hero-sales h1{font-size:2rem}
  .hero-sales .hero-sub{font-size:1.05rem}
  .hero-stats{gap:8px}
  .hero-stat{min-width:calc(50% - 8px);padding:10px 12px}
  .hero-stat strong{font-size:1.4rem}
  .product-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;-webkit-overflow-scrolling:touch}
  .tab-btn{flex:0 0 auto}
  .membership-featured{transform:none}
  .membership-band .section{padding:36px 16px}
  .section-title{font-size:1.5rem}
  .card-actions .btn{flex:1 1 100%}
}
.product-card[hidden]{display:none}

/* v5 — competitor ideas: hero search, Simple Math, freshness, FAQ */
.hero-search{display:flex;gap:8px;max-width:640px;margin:20px auto 10px}
.hero-search input[type="search"]{flex:1;padding:14px 16px;border-radius:10px;border:0;font-size:1rem;min-width:0}
.hero-search .btn{flex:0 0 auto}
.hero-chips{color:rgba(255,255,255,.9);font-size:.95rem;margin:6px 0 0}
.hero-chips a{display:inline-block;color:#fff;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:4px 12px;margin:2px 3px;text-decoration:none}
.hero-chips a:hover{background:rgba(255,255,255,.3)}
.product-fresh{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:.85rem;color:#475569;margin:2px 0 8px}
.version-chip{display:inline-block;background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:6px;padding:1px 7px;font-weight:700}
.checked-mark{color:var(--green);font-weight:700}
.math-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.math-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:22px;box-shadow:0 4px 14px rgba(26,26,46,.05)}
.math-card h3{margin-top:0}
.math-list{list-style:none;padding:0;margin:0 0 12px}
.math-list li{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px dashed #e2e8f0}
.math-list li span{font-weight:700}
.math-total{font-size:1.05rem}
.math-big{font-size:1.7rem;font-weight:800;margin:8px 0}
.math-save{color:var(--green);font-weight:700}
.math-card-mid{background:#f0fdf4;border-color:#bbf7d0}
.math-card-best{background:linear-gradient(180deg,#fffbeb,#fff);border:2px solid #f59e0b}
.math-note{text-align:center;color:#64748b}
.faq-section{max-width:820px}
.faq-list details{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px 18px;margin:0 0 10px}
.faq-list summary{font-weight:700;cursor:pointer;font-size:1.05rem}
.faq-list summary:hover{color:var(--brand)}
.faq-list details p{margin:10px 0 4px;color:#334155}
@media (max-width:820px){
  .hero-search{flex-direction:column}
  .hero-search .btn{width:100%}
  .math-card-best{transform:none}
}

/* v6 — attention-grabbing brands page + fancier product cards */
.brand-hero-band{background:linear-gradient(135deg,#0f1e5c,#1d4ed8 55%,#7c3aed);color:#fff;padding:56px 0 44px;text-align:center}
.brand-hero-band h1{color:#fff;font-size:2.6rem;margin:0 0 12px}
.brand-hero-sub{color:rgba(255,255,255,.9);max-width:640px;margin:0 auto 20px;font-size:1.1rem}
.brand-hero-sub a{color:#fde68a;font-weight:700}
.brand-hero-search{display:flex;gap:8px;max-width:640px;margin:0 auto 10px}
.brand-hero-search input[type="search"]{flex:1;padding:14px 18px;border-radius:10px;border:0;font-size:1rem;min-width:0}
.brand-hero-search .btn{flex:0 0 auto}
.brand-hero-note{color:rgba(255,255,255,.8);font-size:.9rem;margin:6px 0 0}
.brand-hero-stats{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:22px 0 0}
.brand-hero-stats span{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:8px 16px;font-size:.95rem}
.brand-hero-stats strong{color:#fde68a}
.brand-hero-band-single .brand-tile-xl{margin:6px auto 14px}
.breadcrumbs-light{color:rgba(255,255,255,.75);text-align:center}
.breadcrumbs-light a{color:#fde68a}
.popular-brands{margin-bottom:28px}
.popular-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.popular-brand-card{position:relative;border:2px solid #f59e0b;border-radius:16px;box-shadow:0 10px 28px rgba(245,158,11,.22);overflow:hidden}
.popular-brand-card:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(245,158,11,.3)}
.popular-badge{position:absolute;top:12px;right:12px;background:#f59e0b;color:#fff;font-weight:800;font-size:.8rem;padding:4px 10px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.2);z-index:1}
.brand-tile-xl{width:96px;height:96px;font-size:2.8rem;border-radius:26px}
.brand-card{border-radius:16px}
.brand-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px rgba(26,26,46,.16)}
.brand-card:hover .brand-tile{transform:scale(1.1)}
.brand-tile{width:84px;height:84px;font-size:2.2rem;border-radius:22px;transition:transform .2s ease}
.brand-count-pill{display:inline-block;background:#eef2ff;color:#3730a3;border:1px solid #c7d2fe;border-radius:999px;padding:3px 12px;font-weight:700;font-size:.9rem}
.brand-view-btn{display:inline-block;background:linear-gradient(90deg,#f59e0b,#db2777);color:#fff;font-weight:800;border-radius:999px;padding:8px 18px;font-size:.95rem;margin-top:4px}
.brand-card-link:hover .brand-view-btn{filter:brightness(1.08)}
/* Fancier product cards (home, /products, brand pages) */
.product-card-rich{border-radius:16px;box-shadow:0 4px 16px rgba(26,26,46,.08)}
.product-card-rich:hover{transform:translateY(-6px);box-shadow:0 18px 36px rgba(26,26,46,.18)}
.product-card-rich:hover .card-img-wrap img{transform:scale(1.08)}
.product-card-rich .card-body h2,.product-card-rich .card-body h3{font-size:1.15rem}
.img-off-badge{background:#dc2626;font-size:.95rem;padding:6px 12px}
.price-row .price{font-size:1.55rem;font-weight:800}
.stars{color:#f59e0b}
.card-actions .btn{padding:10px 14px}
@media (max-width:820px){
  .brand-hero-band{padding:40px 0 32px}
  .brand-hero-band h1{font-size:1.9rem}
  .brand-hero-search{flex-direction:column}
  .brand-hero-search .btn{width:100%}
  .popular-grid{grid-template-columns:1fr}
  .brand-tile-xl{width:80px;height:80px;font-size:2.3rem}
}

/* v7 — premium product page, attention header, mobile audit */
h1,h2,h3,h4,p,li,th,td,a{overflow-wrap:break-word}
.site-header{background:linear-gradient(180deg,#ffffff,#eef4ff);box-shadow:0 4px 18px rgba(29,78,216,.14)}
.logo{display:inline-flex;align-items:center;gap:8px}
.logo-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,#1d4ed8,#7c3aed 60%,#db2777);color:#fff;font-size:1.2rem;font-weight:800;box-shadow:0 4px 10px rgba(29,78,216,.3);flex:0 0 auto}
.main-nav a{position:relative;padding:6px 2px;font-weight:600}
.main-nav a:hover{color:var(--brand)}
.main-nav a.active{color:var(--brand);font-weight:800;box-shadow:inset 0 -3px 0 var(--brand)}
.main-nav a.nav-highlight{color:#7c3aed;font-weight:800}
.main-nav a.nav-highlight:hover{color:#db2777}
.main-nav a.nav-highlight.active{color:#db2777;box-shadow:inset 0 -3px 0 #db2777}
.nav-search{display:none}
.product-top{display:grid;grid-template-columns:1.15fr 380px;gap:32px;align-items:start;margin-bottom:8px}
.product-cover-wrap{position:relative;overflow:hidden;border-radius:16px;box-shadow:0 12px 32px rgba(26,26,46,.16)}
.product-cover-wrap .product-cover{border:0;border-radius:0;width:100%}
.product-cover-wrap .product-cover-placeholder{border:0;border-radius:0}
.img-off-badge-lg{font-size:1.05rem;padding:8px 14px;top:16px;left:16px}
.cover-fresh{position:absolute;left:0;right:0;bottom:0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:10px 14px;background:rgba(15,23,42,.78);color:#fff;font-size:.88rem}
.cover-fresh .version-chip{background:rgba(255,255,255,.18);color:#fff;border-color:rgba(255,255,255,.35)}
.cover-fresh .checked-mark{color:#86efac}
.product-media-note{color:var(--muted);font-size:.95rem;margin:12px 0 0}
.product-title{font-size:2.1rem;margin:0 0 8px}
.product-purchase .product-meta{font-size:1rem}
.product-purchase .product-short{font-size:1.1rem;color:#334155}
.buy-box-fancy{border-radius:16px;box-shadow:0 12px 32px rgba(26,26,46,.14);border:1px solid #e2e8f0;padding:24px;top:92px}
.buy-box-fancy .price-lg{font-size:2.2rem}
.why-mini{margin-top:16px;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;background:#f8fafc}
.why-mini h3{margin:0 0 8px;font-size:1rem}
.why-mini ul{list-style:none;padding:0;margin:0}
.why-mini li{padding:5px 0;font-size:.95rem;color:#334155}
.about-card{border:1px solid #e2e8f0;border-radius:16px;padding:24px 28px;background:#fff;box-shadow:0 4px 16px rgba(26,26,46,.05);margin:24px 0}
.product-media .about-card{margin:24px 0 0}
.about-card h2{margin-top:0}
.about-card h3{margin-top:24px}
.details-table{width:100%;border-collapse:collapse;table-layout:fixed}
.details-table th,.details-table td{padding:10px 12px;border-bottom:1px solid var(--soft);text-align:left;vertical-align:top;overflow-wrap:break-word}
.details-table th{width:140px;color:var(--muted);font-weight:600}
.details-table tr:last-child th,.details-table tr:last-child td{border-bottom:0}
.changelog{background:var(--soft);border-radius:var(--radius);padding:14px 18px}
.product-page .faq{margin-bottom:8px}
@media (max-width:820px){
  .nav-toggle{display:inline-flex;align-items:center;min-height:48px;padding:12px 18px;font-size:1.05rem}
  .main-nav{border:0;padding:0;background:linear-gradient(135deg,#0f1e5c,#1d4ed8 60%,#7c3aed);border-radius:14px;box-shadow:0 12px 28px rgba(15,30,92,.35);margin-top:10px;overflow:hidden}
  body.nav-open .main-nav{display:flex}
  .main-nav a{color:#fff;padding:14px 16px;min-height:48px;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.16);font-size:1.05rem}
  .main-nav a:hover{color:#fde68a}
  .main-nav a.active{color:#fde68a;box-shadow:inset 4px 0 0 #fde68a;background:rgba(255,255,255,.12)}
  .main-nav a.nav-highlight{color:#fde68a}
  .main-nav a.nav-highlight.active{color:#fde68a;box-shadow:inset 4px 0 0 #fde68a}
  .nav-search{display:flex;gap:8px;padding:14px 16px}
  .nav-search input[type=search]{flex:1;min-width:0;padding:12px 14px;border-radius:10px;border:0;font:inherit;min-height:48px}
  .nav-search button{padding:12px 18px;min-height:48px;white-space:nowrap}
  .header-actions .btn{min-height:44px}
  .product-top{grid-template-columns:1fr;gap:20px}
  .product-purchase{order:-1}
  .buy-box-fancy{position:static}
  .product-title{font-size:1.7rem}
  .about-card{padding:20px 18px}
  .details-table th{width:110px}
  .hero h1{font-size:1.8rem}
  .tab-btn{min-height:44px}
  .az-btn{min-height:44px}
  .share-btn{min-height:44px}
  .brand-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:600px){
  .hero-sales h1{font-size:1.8rem}
  .product-title{font-size:1.55rem}
  .buy-box-fancy{padding:18px}
  .about-card{padding:18px 16px}
  .card-grid{grid-template-columns:1fr}
  .breadcrumbs{font-size:.85rem}
}
@media (max-width:400px){
  .hero-sales h1{font-size:1.65rem}
  .hero h1{font-size:1.65rem}
  .product-title{font-size:1.45rem}
  .brand-grid{grid-template-columns:1fr}
  .popular-grid{grid-template-columns:1fr}
  .hero-stat strong{font-size:1.25rem}
  .details-table th{width:96px}
  .buy-box-fancy .price-lg{font-size:1.9rem}
  .header-actions .btn{padding:8px 10px;font-size:.9rem}
  .logo{font-size:1.2rem}
  .logo-mark{width:30px;height:30px;font-size:1.05rem}
}

/* v9 — sticky buy box that actually sticks, and fancier.
   Root cause of the old failure: .product-top used align-items:start, so the
   right column (.product-purchase) shrank to its content height and the sticky
   buy box had zero room to travel. With stretch, the column spans the full row
   height (the tall left column), so the box can stick beside the description.
   No ancestor on this chain uses overflow/transform, so nothing else breaks it. */
.product-top{align-items:stretch}
.product-media{align-self:start}
.buy-box-fancy{position:sticky;top:92px;max-height:calc(100vh - 108px);overflow-y:auto;overflow-x:hidden;box-shadow:0 16px 40px rgba(26,26,46,.20),0 0 0 1px rgba(29,78,216,.10)}
.buy-box-fancy::before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#1d4ed8,#7c3aed,#db2777)}
.buy-box-fancy .price-lg{font-size:2.4rem}
.buy-box-fancy .off-badge{font-size:1rem;padding:6px 12px}
.buy-price-panel{background:linear-gradient(135deg,#eff6ff,#fdf2f8);border:1px solid #dbeafe;border-radius:12px;padding:12px 16px;margin:0 0 8px}
.buy-price-panel .price-lg{margin:0}
.save-line{margin:6px 0 0;color:#15803d;font-weight:700}
@media (max-width:820px){
  .product-top{align-items:start}
  .buy-box-fancy{position:static;max-height:none;overflow:visible;box-shadow:0 12px 32px rgba(26,26,46,.14)}
}

/* v10 — PluginTheme-style fancy brand cards: big colourful visual header
   (own gradients + big initial, never a vendor logo), a strip of the brand's
   real product covers, and a gradient View button. Filter hooks untouched:
   .brand-card / .popular-brand-card with data-name + data-letter, #brand-grid,
   #brand-filter, #brand-empty, .az-btn — and no inline <script> anywhere. */
.brand-grid{grid-template-columns:repeat(3,1fr);gap:20px}
.popular-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.brand-card-fancy{border-radius:18px;overflow:hidden;border:1px solid #e2e8f0;box-shadow:0 6px 20px rgba(26,26,46,.08);transition:transform .2s ease,box-shadow .2s ease}
.brand-card-fancy:hover{transform:translateY(-6px);box-shadow:0 20px 44px rgba(26,26,46,.20)}
.brand-card-fancy .brand-card-link{padding:0;align-items:stretch;text-align:left;gap:0}
.brand-visual{position:relative;display:flex;align-items:center;justify-content:center;height:150px;overflow:hidden}
.brand-visual::before{content:"";position:absolute;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.22);top:-80px;right:-60px}
.brand-visual::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.28) 1.5px,transparent 1.5px);background-size:18px 18px;opacity:.45}
.brand-visual-watermark{position:absolute;right:6px;bottom:-42px;font-size:9rem;font-weight:800;line-height:1;color:rgba(255,255,255,.14);z-index:1}
.brand-visual-initial{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;width:88px;height:88px;border-radius:50%;background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.55);color:#fff;font-size:2.6rem;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.25);transition:transform .25s ease}
.brand-card-fancy:hover .brand-visual-initial{transform:scale(1.08) rotate(-2deg)}
.brand-covers{position:relative;z-index:3;display:flex;gap:8px;margin:-28px 14px 0}
.brand-covers img{flex:1;min-width:0;height:72px;object-fit:cover;border-radius:10px;border:2px solid #fff;box-shadow:0 6px 16px rgba(26,26,46,.18);transition:transform .25s ease}
.brand-covers-single img{height:96px}
.brand-card-fancy:hover .brand-covers img{transform:scale(1.03)}
.brand-body{display:flex;flex-direction:column;gap:10px;padding:16px 18px 20px}
.brand-body .brand-name{font-size:1.3rem;font-weight:800}
.brand-pills{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.brand-pills .brand-count-pill{color:#fff;border-radius:999px;padding:5px 12px;font-size:.85rem;font-weight:700}
.brand-pills .brand-meta{font-weight:700}
.brand-body .brand-view-btn{display:block;text-align:center;background:linear-gradient(90deg,#1d4ed8,#7c3aed);color:#fff;font-weight:700;padding:11px 14px;border-radius:10px;margin-top:2px}
.brand-card-fancy:hover .brand-view-btn{background:linear-gradient(90deg,#1e40af,#6d28d9)}
.popular-brand-card[hidden]{display:none}
.brand-card-featured .brand-visual{height:190px}
.brand-card-featured .brand-visual-initial{width:108px;height:108px;font-size:3.2rem}
.brand-card-featured .brand-covers img{height:88px}
.brand-card-featured .brand-body .brand-name{font-size:1.5rem}
@media (max-width:1000px){
  .brand-grid,.popular-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:600px){
  .brand-grid,.popular-grid{grid-template-columns:1fr}
  .brand-visual{height:130px}
  .brand-card-featured .brand-visual{height:160px}
  .brand-visual-initial{width:76px;height:76px;font-size:2.2rem}
}

/* --- v11: fancy login/auth pages + fancy admin dashboard --- */
.auth-page{background:linear-gradient(180deg,#eef2ff 0%,#f8f5ff 55%,#fff 100%);padding:56px 16px 64px;display:flex;justify-content:center}
.auth-card{position:relative;width:100%;max-width:440px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 40px rgba(26,26,46,.12);padding:36px 32px 28px;overflow:hidden}
.auth-card::before{content:"";display:block;height:6px;margin:-36px -32px 24px;background:linear-gradient(90deg,#1d4ed8,#7c3aed,#db2777)}
.auth-logo-mark{display:flex;align-items:center;justify-content:center;width:56px;height:56px;margin:0 auto 14px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#7c3aed 55%,#db2777);color:#fff;font-size:1.7rem;font-weight:800;box-shadow:0 8px 20px rgba(124,58,237,.35)}
.auth-card h1{text-align:center;margin:0 0 6px;font-size:1.7rem}
.auth-sub{text-align:center;color:var(--muted);margin:0 0 22px}
.auth-card .form-field{margin-bottom:16px}
.auth-card .form label{font-size:.95rem}
.auth-card .form input{padding:12px 14px;border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease}
.auth-card .form input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px rgba(29,78,216,.15)}
.auth-card .form small{color:var(--muted);font-size:.85rem}
.auth-card .form-check label{font-weight:400}
.auth-card .form-check input{width:auto}
.auth-card .btn{padding:13px 16px;font-size:1.02rem;border-radius:10px}
.auth-links{text-align:center;margin:14px 0 0;color:var(--muted)}
.auth-links.auth-alt{border-top:1px solid var(--soft);padding-top:16px;margin-top:18px}
.flash{padding:12px 14px;border-radius:10px;margin:0 0 16px;font-size:.95rem}
.flash-success{background:#dcfce7;color:#14532d;border:1px solid #bbf7d0}
.flash-error{background:#fee2e2;color:#7f1d1d;border:1px solid #fecaca}
@media (max-width:520px){.auth-page{padding:32px 12px 40px}.auth-card{padding:28px 20px 22px}}

.admin-title{font-size:1.9rem;margin:0 0 20px;padding-bottom:12px;border-bottom:3px solid transparent;border-image:linear-gradient(90deg,#1d4ed8,#7c3aed,#db2777) 1}
.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:0 0 28px}
.stat-card{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:14px;box-shadow:0 4px 14px rgba(26,26,46,.05);transition:transform .15s ease,box-shadow .15s ease}
.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(26,26,46,.13)}
.stat-icon{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:14px;color:#fff;font-size:1.5rem;box-shadow:0 6px 16px rgba(26,26,46,.2)}
.stat-blue .stat-icon{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}
.stat-violet .stat-icon{background:linear-gradient(135deg,#7c3aed,#a855f7)}
.stat-pink .stat-icon{background:linear-gradient(135deg,#db2777,#f472b6)}
.stat-green .stat-icon{background:linear-gradient(135deg,#15803d,#22c55e)}
.stat-teal .stat-icon{background:linear-gradient(135deg,#0f766e,#2dd4bf)}
.stat-body{min-width:0}
.stat-card h2{font-size:.95rem;color:var(--muted);margin:0 0 2px;font-weight:700}
.stat-number{font-size:1.7rem;line-height:1.15;margin:0}
.stat-number strong{font-weight:800}
.stat-sub{color:var(--muted);font-size:.88rem;margin:2px 0 0}
.admin-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;margin:0 0 24px;box-shadow:0 4px 14px rgba(26,26,46,.04)}
.admin-section{font-size:1.25rem;margin:0 0 14px;padding-left:12px;border-left:4px solid transparent;border-image:linear-gradient(180deg,#1d4ed8,#db2777) 1}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
.table{width:100%;border-collapse:collapse;font-size:.95rem}
.table th{text-align:left;padding:10px 14px;background:var(--soft);font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap}
.table td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top}
.table tbody tr:nth-child(even){background:#f8f9fb}
.table tbody tr:hover{background:#eef2ff}
.status-pill{display:inline-block;padding:3px 11px;border-radius:999px;font-size:.82rem;font-weight:700;white-space:nowrap}
.status-green{background:#dcfce7;color:#14532d}
.status-amber{background:#fef3c7;color:#92400e}
.status-red{background:#fee2e2;color:#7f1d1d}
.status-grey{background:#e5e7eb;color:#374151}
.admin-more{margin:14px 0 0}
.admin-empty{color:var(--muted);margin:0}
.btn-small{padding:6px 12px;font-size:.9rem}
@media (max-width:820px){.admin-stats{grid-template-columns:repeat(2,1fr)}.admin-panel{padding:16px 12px}}
@media (max-width:520px){.admin-stats{grid-template-columns:1fr}.stat-number{font-size:1.5rem}}

/* v11 — account panel redesign: WooCommerce-style sidebar + fancy account pages */
.account-page{padding:24px 0 40px}
.account-layout{display:grid;grid-template-columns:240px 1fr;gap:24px;align-items:start}
.account-sidebar{position:sticky;top:92px;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 4px 14px rgba(26,26,46,.05)}
.account-user{display:flex;gap:12px;align-items:center;padding:18px 16px;background:linear-gradient(135deg,#1d4ed8,#7c3aed 55%,#db2777);color:#fff}
.account-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.22);border:2px solid rgba(255,255,255,.6);font-size:1.3rem;font-weight:800}
.account-user-meta{min-width:0;display:flex;flex-direction:column}
.account-user-meta strong{font-size:1rem;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-user-meta small{font-size:.82rem;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-nav{display:flex;flex-direction:column;padding:8px}
.account-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:10px;color:var(--ink);text-decoration:none;font-weight:600;font-size:.95rem}
.account-nav a:hover{background:#eef2ff;color:var(--brand)}
.account-nav a.active{background:linear-gradient(90deg,#1d4ed8,#7c3aed);color:#fff;box-shadow:0 4px 12px rgba(29,78,216,.35)}
.account-logout{padding:0 8px 12px;margin:0}
.account-logout button{width:100%;display:flex;align-items:center;gap:10px;padding:11px 12px;border:0;border-radius:10px;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.95rem;cursor:pointer;text-align:left}
.account-logout button:hover{background:#fee2e2;color:#991b1b}
.account-main{min-width:0}
.account-main h1{margin:0 0 16px}
.account-hero{background:linear-gradient(135deg,#1d4ed8,#7c3aed 55%,#db2777);color:#fff;border-radius:16px;padding:28px 24px;margin:0 0 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 10px 28px rgba(29,78,216,.3)}
.account-hero h1{margin:0 0 6px;color:#fff;font-size:1.7rem}
.account-hero p{margin:0;opacity:.92}
.account-hero .btn{flex:0 0 auto}
.account-hero-badge{display:inline-block;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.5);font-weight:700;font-size:.9rem;white-space:nowrap}
.account-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin:0 0 20px}
.account-stats .stat-card{margin:0}
.stat-amber .stat-icon{background:linear-gradient(135deg,#d97706,#f59e0b)}
.account-actions{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 20px}
.account-list{list-style:none;padding:0;margin:0}
.account-list li{display:flex;gap:12px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}
.account-list li:first-child{border-top:0;padding-top:0}
.account-list-icon{flex:0 0 auto;width:44px;height:44px;border-radius:10px;background:#eef2ff;display:flex;align-items:center;justify-content:center;font-size:1.25rem}
.account-list-body{flex:1;min-width:0;display:flex;flex-direction:column}
.account-list-body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-list-body small{color:var(--muted);font-size:.88rem}
.account-limit-bar{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap;align-items:center;background:#eef2ff;border:1px solid #dbeafe;border-radius:12px;padding:12px 16px;margin:0 0 20px;font-size:.95rem}
.account-downloads{list-style:none;padding:0;margin:0}
.account-downloads li{display:flex;gap:14px;align-items:center;padding:14px 0;border-top:1px solid var(--line)}
.account-downloads li:first-child{border-top:0;padding-top:0}
.account-cover{flex:0 0 auto;width:120px;border-radius:8px;overflow:hidden;border:1px solid var(--line);display:block}
.account-cover img{width:100%;height:auto;margin:0}
.account-cover-fallback{height:63px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:#eef2ff}
.account-help{color:var(--muted);font-size:.92rem}
.account-h2{margin:28px 0 14px}
.account-empty-note{background:#fef3c7;border:1px solid #fde68a;border-radius:12px;padding:14px 16px;margin:0 0 20px}
.account-plan-current{background:linear-gradient(135deg,#1d4ed8,#7c3aed 55%,#db2777);color:#fff;border-radius:16px;padding:26px 24px;margin:0 0 20px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 10px 28px rgba(29,78,216,.3)}
.account-plan-current h2{margin:4px 0 8px;color:#fff;font-size:1.6rem}
.account-plan-current p{margin:4px 0;opacity:.95}
.account-plan-current .btn{flex:0 0 auto;background:#fff;color:#1d4ed8;border-color:#fff;font-weight:800}
.account-plan-eyebrow{font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.9}
.account-plan-price{font-size:1.35rem}
.account-plan-price span{font-size:.95rem;font-weight:400;opacity:.85}
.account-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:0 0 8px}
.account-plan-card{position:relative}
.account-plan-card-current{border:2px solid #7c3aed;box-shadow:0 8px 22px rgba(124,58,237,.18)}
.account-plan-current-pill{position:absolute;top:-11px;right:14px;background:linear-gradient(90deg,#7c3aed,#db2777);color:#fff;font-size:.78rem;font-weight:800;padding:4px 10px;border-radius:999px;white-space:nowrap}
.account-referral{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:0;margin:0;padding:0}
.account-referral input{flex:1;min-width:220px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius);font:inherit;background:var(--soft)}
@media (max-width:820px){
  .account-layout{grid-template-columns:1fr}
  .account-sidebar{position:static}
  .account-user{display:none}
  .account-nav{flex-direction:row;overflow-x:auto;gap:4px;padding:8px;scrollbar-width:thin}
  .account-nav a{white-space:nowrap}
  .account-logout{padding:0 8px 8px}
  .account-hero{padding:22px 16px}
  .account-hero h1{font-size:1.4rem}
  .account-cover{width:90px}
}
@media (max-width:520px){
  .account-downloads li{flex-wrap:wrap}
  .account-cover{width:100%;max-width:220px}
  .account-list li{flex-wrap:wrap}
}

/* --- v12: premium split login + richer admin dashboard --- */
.auth-page-split{padding:64px 16px 72px}
.auth-split{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:980px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 24px 60px rgba(26,26,46,.16)}
.auth-brand{position:relative;overflow:hidden;background:linear-gradient(150deg,#1d4ed8 0%,#7c3aed 55%,#db2777 100%);background-size:200% 200%;animation:authGradient 14s ease infinite;color:#fff;padding:48px 40px;display:flex;align-items:center}
@keyframes authGradient{0%,100%{background-position:0% 0%}50%{background-position:100% 100%}}
.auth-brand-shape{position:absolute;border-radius:50%;background:rgba(255,255,255,.12);animation:authFloat 7s ease-in-out infinite}
.auth-brand-shape-1{width:220px;height:220px;top:-70px;right:-50px}
.auth-brand-shape-2{width:150px;height:150px;bottom:-40px;left:-30px;animation-delay:1.5s}
.auth-brand-shape-3{width:90px;height:90px;top:38%;right:22%;animation-delay:3s}
@keyframes authFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.auth-brand-dot{position:absolute;border-radius:50%;background:rgba(255,255,255,.4)}
.auth-brand-dot-1{width:10px;height:10px;top:22%;left:12%}
.auth-brand-dot-2{width:7px;height:7px;top:64%;right:14%}
.auth-brand-dot-3{width:12px;height:12px;bottom:14%;right:38%}
.auth-brand-inner{position:relative;z-index:1}
.auth-brand-logo{margin:0 0 18px;box-shadow:0 8px 24px rgba(0,0,0,.3);background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45)}
.auth-brand-eyebrow{margin:0 0 10px;font-size:.8rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;opacity:.85}
.auth-brand h2{margin:0 0 22px;font-size:2rem;line-height:1.2;color:#fff}
.auth-trust{list-style:none;margin:0 0 26px;padding:0;display:grid;gap:10px;font-size:.98rem}
.auth-brand-stats{margin:0;padding-top:18px;border-top:1px solid rgba(255,255,255,.3);font-size:.95rem;opacity:.95}
.auth-brand-stats strong{font-size:1.05rem}
.auth-form-side{padding:44px 40px;display:flex;align-items:center}
.auth-split .auth-card{width:100%;max-width:none;padding:0;border:0;border-radius:0;box-shadow:none;background:transparent}
.auth-split .auth-card::before{display:none}
.auth-split .auth-card h1,.auth-split .auth-sub,.auth-split .auth-links{text-align:left}
.input-icon{position:relative}
.input-icon svg{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.input-icon input{padding-left:40px !important}
.auth-submit{border-radius:999px !important;box-shadow:0 10px 24px rgba(219,39,119,.35);transition:transform .15s ease,box-shadow .15s ease}
.auth-submit:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(219,39,119,.45)}
@media (max-width:820px){.auth-page-split{padding:32px 12px 40px}.auth-split{grid-template-columns:1fr}.auth-brand{padding:30px 24px}.auth-brand h2{font-size:1.5rem}.auth-brand-shape-2,.auth-brand-shape-3{display:none}.auth-form-side{padding:28px 22px}}
@media (prefers-reduced-motion:reduce){.auth-brand,.auth-brand-shape{animation:none}}

.admin-greeting{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;margin:0 0 22px}
.admin-greeting-title{margin:0;font-size:2rem;line-height:1.2}
.admin-date{margin:6px 0 0;color:var(--muted)}
.admin-quick-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-quick-actions .btn{text-decoration:none}
.stat-card{position:relative;overflow:hidden}
.stat-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px}
.stat-blue::after{background:linear-gradient(90deg,#1d4ed8,#3b82f6)}
.stat-violet::after{background:linear-gradient(90deg,#7c3aed,#a855f7)}
.stat-pink::after{background:linear-gradient(90deg,#db2777,#f472b6)}
.stat-green::after{background:linear-gradient(90deg,#15803d,#22c55e)}
.stat-teal::after{background:linear-gradient(90deg,#0f766e,#2dd4bf)}
.stat-card:hover{box-shadow:0 14px 32px rgba(124,58,237,.18)}
.admin-quicklinks{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:0 0 28px}
.admin-quicklinks a{display:flex;align-items:center;gap:10px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);font-weight:700;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease}
.admin-quicklinks a:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(26,26,46,.12);color:var(--brand)}
.admin-quicklinks a span{font-size:1.25rem}
.admin-panel-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px}
.admin-panel-head .admin-section{margin:0}
.feed{display:grid}
.feed-row{display:flex;align-items:center;gap:14px;padding:13px 4px;border-top:1px solid var(--line)}
.feed-row:first-child{border-top:0}
.feed-dot{flex:0 0 auto;width:10px;height:10px;border-radius:50%}
.feed-dot-green{background:#22c55e}
.feed-dot-amber{background:#f59e0b}
.feed-dot-red{background:#ef4444}
.feed-dot-grey{background:#9ca3af}
.feed-main{flex:1;min-width:0}
.feed-title{margin:0;font-weight:700}
.feed-sub{margin:2px 0 0;color:var(--muted);font-size:.88rem}
.feed-amount{white-space:nowrap;font-size:1.05rem}
.user-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#db2777);color:#fff;font-weight:800;font-size:1.05rem}
.timeline{list-style:none;margin:0;padding:2px 0 0 10px;border-left:2px solid #e5e7eb}
.timeline li{position:relative;padding:0 0 18px 24px}
.timeline li:last-child{padding-bottom:0}
.timeline-dot{position:absolute;left:-17px;top:5px;width:10px;height:10px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#db2777);box-shadow:0 0 0 3px #fff}
.admin-body{background:#f6f7fb}
.admin-wrap{display:flex;min-height:100vh}
.admin-sidebar{flex:0 0 230px;background:linear-gradient(180deg,#1a1a2e 0%,#312e81 100%);color:#e5e7eb;padding:22px 16px}
.admin-brand{margin:0 0 20px;font-size:1.2rem;font-weight:800}
.admin-brand a{color:#fff;text-decoration:none}
.admin-brand a::before{content:"G";display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-right:8px;border-radius:8px;background:linear-gradient(135deg,#f59e0b,#db2777);color:#fff;font-size:1rem}
.admin-sidebar nav{display:grid;gap:2px}
.admin-sidebar nav a{display:block;padding:9px 12px;border-radius:9px;color:#d1d5db;text-decoration:none;font-size:.95rem}
.admin-sidebar nav a:hover{background:rgba(255,255,255,.1);color:#fff}
.admin-sidebar nav a.active{background:linear-gradient(90deg,#7c3aed,#db2777);color:#fff;font-weight:700}
.admin-side-foot{margin:22px 0 0;padding-top:16px;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem}
.admin-side-foot a{color:#d1d5db;text-decoration:none}
.admin-side-foot a:hover{color:#fff}
.admin-main{flex:1;min-width:0;padding:20px 28px 40px}
.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(26,26,46,.04)}
@media (max-width:820px){.admin-quicklinks{grid-template-columns:repeat(2,1fr)}.admin-wrap{flex-direction:column}.admin-sidebar{flex:none}.admin-sidebar nav{display:flex;flex-wrap:wrap;gap:6px}.admin-main{padding:16px 14px 32px}.admin-greeting-title{font-size:1.6rem}.feed-row{flex-wrap:wrap}.feed-amount{margin-left:auto}}

/* --- v12-detail: admin order + user detail pages (WooCommerce-style) --- */
.detail-back{margin:0 0 14px}
.detail-back a{color:var(--muted);text-decoration:none;font-weight:700}
.detail-back a:hover{color:var(--brand)}
.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 20px}
.detail-head h1{margin:0 0 4px;font-size:1.7rem}
.status-pill-lg{font-size:.95rem;padding:6px 16px}
.detail-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:20px;margin:0 0 24px}
.detail-grid .admin-panel{margin:0}
.kv{margin:0}
.kv-row{display:grid;grid-template-columns:170px 1fr;gap:10px;padding:10px 0;border-top:1px solid var(--line)}
.kv-row:first-child{border-top:0}
.kv-row dt{color:var(--muted);font-weight:600}
.kv-row dd{margin:0;font-weight:600;overflow-wrap:break-word}
.profile-head{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}
.profile-main{flex:1;min-width:0}
.profile-name{margin:0;font-weight:800;font-size:1.1rem}
.profile-name-lg{margin:0 0 4px;font-size:1.4rem}
.user-avatar-lg{width:64px;height:64px;font-size:1.6rem}
.profile-actions{margin-left:auto}
.profile-panel .kv{margin-top:18px}
.inline-form{display:inline}
.link-danger{color:#dc2626}
.btn.link-danger:hover{color:#b91c1c}
@media (max-width:820px){.detail-grid{grid-template-columns:1fr}.kv-row{grid-template-columns:130px 1fr}.detail-head h1{font-size:1.4rem}}

/* v13 — admin plans + membership actions */
.admin-grant-form{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;max-width:760px}
.admin-grant-form .form-field{margin-bottom:0}
.admin-row-actions{display:flex;gap:6px;flex-wrap:wrap}
.admin-row-actions .btn{white-space:nowrap}
@media (max-width:820px){.admin-grant-form{grid-template-columns:1fr}.admin-grant-form .form-field{margin-bottom:12px}}

/* --- v14: fancy admin — dark fixed sidebar, full-gradient stat cards, colourful quick tiles --- */
/* Sidebar: deep navy, stays fixed while the page scrolls */
.admin-sidebar{position:sticky;top:0;align-self:flex-start;height:100vh;overflow-y:auto;flex-basis:250px;background:linear-gradient(180deg,#0f0c29 0%,#1a1a2e 45%,#312e81 100%);padding:24px 14px 20px;box-shadow:4px 0 24px rgba(15,12,41,.28)}
.admin-brand{margin:0 0 8px}
.admin-brand a{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-size:1.25rem;font-weight:800}
.admin-brand a::before{display:none}
.admin-brand-mark{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#f59e0b,#db2777);color:#fff;font-size:1.3rem;font-weight:800;box-shadow:0 6px 16px rgba(219,39,119,.45)}
.admin-brand-text{display:flex;flex-direction:column;line-height:1.15}
.admin-brand-sub{font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#a5b4fc}
.admin-nav-label{margin:18px 10px 8px;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#818cf8}
.admin-sidebar nav a{display:flex;align-items:center;gap:11px;padding:10px 12px}
.nav-ico{flex:0 0 auto;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:rgba(255,255,255,.09);font-size:1rem}
.admin-sidebar nav a:hover{background:rgba(255,255,255,.1);color:#fff}
.admin-sidebar nav a.active{background:linear-gradient(90deg,#7c3aed,#db2777);box-shadow:0 6px 18px rgba(219,39,119,.4)}
.admin-sidebar nav a.active .nav-ico{background:rgba(255,255,255,.22)}
.admin-side-foot a{display:inline-block;padding:4px 10px}
/* Topbar: sticky white card with admin identity + actions */
.admin-topbar{position:sticky;top:0;z-index:5;padding:10px 18px;border-radius:14px}
.admin-who{display:flex;align-items:center;gap:12px;min-width:0}
.admin-avatar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#1d4ed8,#7c3aed 55%,#db2777);color:#fff;font-size:1.15rem;font-weight:800;box-shadow:0 4px 12px rgba(124,58,237,.35)}
.admin-who-meta{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.admin-who-meta strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-who-meta small{color:var(--muted);font-size:.8rem}
.admin-top-actions{display:flex;align-items:center;gap:10px}
.admin-top-actions .admin-logout{margin:0}
.admin-top-actions .btn{text-decoration:none;white-space:nowrap}
/* Greeting title in gradient text */
.admin-greeting-title{background:linear-gradient(90deg,#1d4ed8,#7c3aed 55%,#db2777);-webkit-background-clip:text;background-clip:text;color:transparent}
/* Stat cards in FULL colour (scoped to the admin dashboard so account pages are untouched) */
.admin-stats .stat-card.stat-full{border:0;color:#fff;padding:22px 20px;min-height:118px;box-shadow:0 10px 26px rgba(26,26,46,.22)}
.admin-stats .stat-full.stat-blue{background:linear-gradient(135deg,#1d4ed8,#3b82f6 60%,#60a5fa)}
.admin-stats .stat-full.stat-violet{background:linear-gradient(135deg,#6d28d9,#a855f7 60%,#c084fc)}
.admin-stats .stat-full.stat-pink{background:linear-gradient(135deg,#be185d,#ec4899 60%,#f472b6)}
.admin-stats .stat-full.stat-green{background:linear-gradient(135deg,#15803d,#22c55e 60%,#4ade80)}
.admin-stats .stat-full.stat-teal{background:linear-gradient(135deg,#0f766e,#14b8a6 60%,#2dd4bf)}
.admin-stats .stat-full::after{display:none}
.admin-stats .stat-full h2{color:rgba(255,255,255,.85)}
.admin-stats .stat-full .stat-number{font-size:2.1rem}
.admin-stats .stat-full .stat-number strong{color:#fff}
.admin-stats .stat-full .stat-sub{color:rgba(255,255,255,.85)}
.admin-stats .stat-full .stat-body{position:relative;z-index:1}
.admin-stats .stat-full .stat-icon{position:absolute;right:8px;bottom:-16px;width:auto;height:auto;background:transparent;box-shadow:none;font-size:4.6rem;opacity:.22;border-radius:0}
.admin-stats .stat-full:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(26,26,46,.3)}
/* Quick links as colourful gradient tiles */
.admin-quicklinks a.ql{border:0;color:#fff;padding:16px 14px;box-shadow:0 8px 20px rgba(26,26,46,.16)}
.admin-quicklinks a.ql span{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.22);font-size:1.2rem}
.admin-quicklinks a.ql:hover{color:#fff;transform:translateY(-4px);box-shadow:0 14px 30px rgba(26,26,46,.25)}
.admin-quicklinks a.ql-products{background:linear-gradient(135deg,#1d4ed8,#3b82f6)}
.admin-quicklinks a.ql-orders{background:linear-gradient(135deg,#be185d,#ec4899)}
.admin-quicklinks a.ql-users{background:linear-gradient(135deg,#6d28d9,#a855f7)}
.admin-quicklinks a.ql-memberships{background:linear-gradient(135deg,#b45309,#f59e0b)}
.admin-quicklinks a.ql-coupons{background:linear-gradient(135deg,#15803d,#22c55e)}
.admin-quicklinks a.ql-posts{background:linear-gradient(135deg,#0f766e,#14b8a6)}
.admin-quicklinks a.ql-settings{background:linear-gradient(135deg,#334155,#64748b)}
.admin-quicklinks a.ql-logs{background:linear-gradient(135deg,#9f1239,#f43f5e)}
/* Panels with more depth: gradient top accent, stronger shadow, hover rows */
.admin-page .admin-panel{border-radius:16px;box-shadow:0 10px 28px rgba(26,26,46,.08);position:relative;overflow:hidden;padding-top:24px}
.admin-page .admin-panel::before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1d4ed8,#7c3aed,#db2777)}
.admin-page .admin-section{font-size:1.35rem}
.admin-page .feed-row{transition:background .12s ease}
.admin-page .feed-row:hover{background:#f8f5ff}
@media (max-width:820px){
  .admin-sidebar{position:static;height:auto;overflow:visible;flex-basis:auto;padding:16px 12px}
  .admin-sidebar nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:4px;scrollbar-width:thin}
  .admin-sidebar nav a{white-space:nowrap}
  .admin-nav-label{display:none}
  .admin-side-foot{display:none}
  .admin-topbar{position:static}
  .admin-stats .stat-full .stat-icon{font-size:3.4rem}
}
@media (max-width:520px){.admin-stats .stat-full .stat-number{font-size:1.8rem}}

/* --- v15: admin membership change-plan form --- */
.change-plan-form select{max-width:180px;padding:6px 8px;border:1px solid #d7dce6;border-radius:8px;background:#fff;font-size:13px}

/* --- v16: checkbox + label alignment in admin forms --- */
/* Base .form input{width:100%} stretches checkboxes full-width, pushing the label text far away. */
.form .form-check label{display:inline-flex;align-items:center;gap:8px;font-weight:600;margin-bottom:0;cursor:pointer}
.form .form-check input[type="checkbox"]{width:auto;flex:0 0 auto;height:18px;margin:0;padding:0;accent-color:var(--brand);cursor:pointer}

/* --- v17: fancy plan cards — Monthly, Semester, Yearly, Lifetime, Developer --- */
/* Dark text is forced on every fancy card. The homepage band sets color:#fff,
   which once made plan prices invisible (white text on white cards); the v16
   .membership-card fix covers band cards, and these rules cover the rest. */
.pricing-grid-fancy{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.plan-fancy{position:relative;border-radius:18px;color:var(--ink);box-shadow:0 10px 28px rgba(26,26,46,.10);transition:transform .15s ease,box-shadow .15s ease}
.plan-fancy:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(26,26,46,.16)}
.plan-fancy::before{content:"";display:block;height:6px;margin:-16px -16px 14px;border-radius:18px 18px 0 0;background:linear-gradient(90deg,var(--brand),#7c3aed)}
.plan-fancy h2,.plan-fancy h3{color:var(--ink)}
.plan-fancy .price,.plan-fancy .price-xl{color:var(--ink)}
.plan-fancy .price-period{color:var(--muted)}
.plan-fancy .was-price{color:var(--muted)}
.plan-fancy .pricing-note{color:#475569}
.plan-fancy .check-list{color:#1e293b}
.plan-fancy-teal::before{background:linear-gradient(90deg,#0f766e,#14b8a6)}
.plan-fancy-gold::before{background:linear-gradient(90deg,#b45309,#f59e0b)}
.plan-fancy-violet::before{background:linear-gradient(90deg,#6d28d9,#a855f7)}
.plan-fancy-pink::before{background:linear-gradient(90deg,#be185d,#ec4899)}
.plan-badge{display:inline-block;padding:5px 12px;border-radius:999px;font-size:.82rem;font-weight:800;letter-spacing:.02em;margin:0 0 10px}
.plan-badge-gold{background:linear-gradient(90deg,#b45309,#f59e0b);color:#fff}
.plan-badge-teal{background:linear-gradient(90deg,#0f766e,#14b8a6);color:#fff}
.plan-badge-violet{background:linear-gradient(90deg,#6d28d9,#a855f7);color:#fff}
.membership-grid{max-width:1080px}
.membership-more{text-align:center;margin:20px 0 0}
.membership-more a{color:#fde68a;font-weight:800;font-size:1.05rem}

/* --- v18: fancy checkout — matches the v17 plan cards --- */
/* Dark text on light cards throughout (v16/v17 rule). Two columns on
   desktop, one column on mobile. No JS: gateway highlight is pure CSS. */
.checkout-page h1{margin-top:0}
.checkout-intro{color:var(--muted);font-size:1.05rem;margin:0 0 24px}
.checkout-steps{display:flex;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 20px;color:var(--muted);font-weight:700;font-size:.95rem}
.checkout-steps li{display:flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink)}
.checkout-step-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--soft);color:var(--muted);font-size:.85rem;font-weight:800;flex:0 0 auto}
.checkout-step-done{border-color:#bbf7d0;background:#f0fdf4;color:var(--green)}
.checkout-step-done .checkout-step-num{background:#16a34a;color:#fff}
.checkout-step-now{border-color:var(--brand);background:#eff6ff;color:var(--brand-dark)}
.checkout-step-now .checkout-step-num{background:linear-gradient(90deg,var(--brand),#7c3aed);color:#fff}
.checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.checkout-summary-card,.checkout-pay-card{color:var(--ink)}
.checkout-summary-card h2,.checkout-pay-card h2{color:var(--ink)}
.checkout-card-eyebrow{margin:0 0 6px;font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand)}
.checkout-perks{margin:14px 0}
.checkout-breakdown{margin:18px 0 8px}
.checkout-breakdown>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;border-bottom:1px solid var(--soft)}
.checkout-breakdown dt{color:var(--muted)}
.checkout-breakdown dd{margin:0;font-weight:700;color:var(--ink);text-align:right}
.checkout-breakdown .checkout-total{border-bottom:0;border-top:2px solid var(--line);padding-top:12px;font-size:1.15rem}
.checkout-coupon-note{font-weight:400 !important;color:var(--muted);font-size:.9rem}
.checkout-gateways{border:0;padding:0;margin:0 0 18px;display:grid;gap:10px}
.pay-method{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border:2px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;color:var(--ink);min-height:56px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.pay-method:hover{border-color:var(--brand)}
.pay-method input[type="radio"]{width:20px;height:20px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--brand);cursor:pointer}
.pay-method:has(input:checked){border-color:var(--brand);background:#eff6ff;box-shadow:0 4px 16px rgba(29,78,216,.15)}
.pay-method-name{display:block;font-weight:800;color:var(--ink)}
.pay-method-desc{display:block;color:var(--muted);font-size:.9rem}
.checkout-coupon{margin:0 0 18px}
.checkout-coupon label{display:block;font-weight:700;margin-bottom:6px;color:var(--ink)}
.checkout-coupon-row{display:flex;gap:8px}
.checkout-coupon-row input[type="text"]{flex:1;min-width:0;padding:12px;border:1px solid var(--line);border-radius:var(--radius);font:inherit;color:var(--ink)}
.checkout-coupon-row input[type="text"]:focus{outline:2px solid var(--brand);outline-offset:1px}
.coupon-apply{display:inline-flex;align-items:center;padding:12px 18px;border-radius:var(--radius);background:var(--brand);color:#fff;font-weight:800;white-space:nowrap}
.checkout-coupon small{display:block;color:var(--muted);margin-top:6px}
.checkout-pay-btn{min-height:52px;font-size:1.15rem}
.checkout-trust{text-align:center;color:var(--green);font-weight:700;font-size:.92rem;margin:16px 0 0}
.checkout-note{margin:24px 0 0;padding:14px 16px;background:var(--soft);border:1px solid var(--line);border-radius:12px;color:var(--muted)}
.checkout-back{margin:18px 0 0}
.alert{padding:14px 16px;border-radius:12px;margin:0 0 20px;font-weight:600}
.alert-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}
.checkout-success-page{display:flex;justify-content:center}
.checkout-success-card{max-width:640px;width:100%;text-align:center;color:var(--ink)}
.checkout-success-card h1{color:var(--ink)}
.checkout-success-tick{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;background:linear-gradient(90deg,#16a34a,#22c55e);color:#fff;font-size:2.2rem;font-weight:800;margin:0 0 8px}
.checkout-success-breakdown{text-align:left}
.checkout-success-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:20px 0 8px}
@media (max-width:820px){
  .checkout-grid{grid-template-columns:1fr}
  .checkout-steps{font-size:.85rem}
  .checkout-steps li{padding:6px 10px}
  .checkout-pay-btn{width:100%}
  .checkout-success-actions .btn{flex:1 1 100%}
}
