@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700&display=swap');
:root{
  --primary-color:#61CE70;
  --primary-hover:#52b85f;
  --shadow:0 10px 30px rgba(0,0,0,0.1);
  --shadow-hover:0 15px 40px rgba(0,0,0,0.15);
  --border-radius:20px;
  --transition:all .3s ease;
  --text-color:#1c1f23;
  --subtext-color:#6b7280;
  --error-color:#dc2626;
  --success-color:#16a34a;
  --card-bg:#ffffff;
  --card-shadow:0 12px 40px rgba(0,0,0,.12);
}
*{box-sizing:border-box;}
/* Card container */
.cpc-auth{
  font-family:'Poppins',system-ui,sans-serif !important;
  display:grid; grid-template-columns:1.1fr 1fr; gap:0;
  background:var(--card-bg) !important;
  border-radius:24px !important;
  box-shadow:var(--card-shadow) !important;
  color:var(--text-color) !important;
  overflow:hidden;
  max-width:980px; margin:40px auto; min-height:650px;
}
.cpc-auth__media{ min-height:650px; background-size:cover; background-position:center; }
.cpc-auth__media--login{ background-image:url('/wp-content/uploads/2025/09/DSC04652-scaled.jpg'); }
.cpc-auth__media--register{ background-image:url('/wp-content/uploads/2025/09/FV5A0134-scaled.jpg'); }

/* Panel + text */
.cpc-auth__panel{
  background:var(--card-bg) !important;
  padding:48px;
  display:flex; flex-direction:column; justify-content:center; align-items:center;
  color:var(--text-color) !important;
}
.cpc-auth__title{ margin:0 0 12px; font-size:clamp(24px,4vw,32px); font-weight:700; color:var(--text-color) !important; text-align:center; }
.cpc-auth__sub{ margin:0 0 28px; font-size:16px; color:var(--subtext-color) !important; line-height:1.45; text-align:center; max-width:80%; }

/* Form */
.cpc-auth__form{ width:100%; max-width:360px; display:flex; flex-direction:column; align-items:center; margin:0 auto; }
.cpc-field{ margin-bottom:24px; width:100%; display:flex; flex-direction:column; align-items:center; }
.cpc-field__label{ display:block; font-size:13px; font-weight:600; color:var(--text-color) !important; margin-bottom:8px; text-transform:uppercase; letter-spacing:.5px; }
.cpc-input{
  width:100%;
  background:#fafafa !important; border:1px solid #e5e7eb !important; color:var(--text-color) !important;
  border-radius:10px; padding:14px 16px; font-size:16px; outline:none; transition:var(--transition); min-height:50px;
}
.cpc-input:focus{ border-color:var(--primary-color) !important; box-shadow:0 0 0 3px rgba(97,206,112,0.15) !important; }
.cpc-auth__options{ width:100%; max-width:360px; display:flex; justify-content:space-between; align-items:center; gap:16px; margin:24px 0; font-size:14px; color:var(--subtext-color) !important; }
.cpc-check{ display:flex; align-items:center; gap:8px; color:var(--subtext-color) !important; }
.cpc-check input[type='checkbox']{ accent-color:var(--primary-color); width:16px; height:16px; }

/* Links + buttons */
.cpc-link{ color:var(--primary-color) !important; font-weight:600; text-decoration:none; transition:var(--transition); }
.cpc-link:hover{ color:var(--primary-hover) !important; text-decoration:underline; }
.cpc-btn--brand{
  width:100%; max-width:360px; border:none; border-radius:50px; padding:16px 24px; font-weight:700; font-size:16px; cursor:pointer;
  background:var(--primary-color) !important; color:#fff !important; line-height:1.2; box-shadow:var(--shadow); transition:var(--transition); min-height:56px;
}
.cpc-btn--brand:hover{ background:var(--primary-hover) !important; box-shadow:var(--shadow-hover); }

.cpc-auth__links{ margin-top:24px; font-size:14px; color:var(--subtext-color) !important; text-align:center; }
.cpc-auth__links a{ color:var(--primary-color) !important; font-weight:600; text-decoration:none; transition:var(--transition); }
.cpc-auth__links a:hover{ color:var(--primary-hover) !important; text-decoration:underline; }
.cpc-auth__back{ margin-top:28px; text-align:center; }
.cpc-back-home{ font-size:14px; color:var(--primary-color) !important; font-weight:600; text-decoration:none; transition:var(--transition); }
.cpc-back-home:hover{ color:var(--primary-hover) !important; text-decoration:underline; }

/* Notices */
.woocommerce-error,.woocommerce-message{
  width:100%; max-width:360px; margin:0 auto 16px; padding:12px 16px; border-radius:10px; font-size:14px; text-align:center;
}
.woocommerce-error{ background:#fff5f5 !important; border:1px solid var(--error-color) !important; color:#b91c1c !important; }
.woocommerce-message{ background:#f0fdf4 !important; border:1px solid var(--success-color) !important; color:#166534 !important; }

/* Mobile centering + tighten layout */
@media (max-width:900px){
  .cpc-auth{ grid-template-columns:1fr; margin:24px auto; min-height:500px; padding:0 16px; }
  .cpc-auth__media{ display:none !important; }
  .cpc-auth__panel{
    padding:32px 24px;
    width:100%; max-width:520px;
    margin:0 auto; display:flex; align-items:center; justify-content:center;
  }
  .cpc-auth__form{ width:100%; max-width:360px; margin:0 auto; }
  .woocommerce-error,.woocommerce-message{ max-width:360px; margin-left:auto; margin-right:auto; }
}

/* Force white even if theme/dark-mode toggles add classes or prefers-color-scheme sets dark */
body, .site, .entry-content .cpc-auth, .cpc-auth, .cpc-auth__panel{
  background:#ffffff !important;
  color:var(--text-color) !important;
}
/* Kill any theme "dark:" utilities or global dark rules */
[class*="dark"], [data-theme="dark"] .cpc-auth, [data-theme="dark"] .cpc-auth__panel{
  background:#ffffff !important;
  color:var(--text-color) !important;
}
/* Do NOT include @media (prefers-color-scheme:dark) to avoid flipping to dark */
