/* ================================================================
 * One-door sign in / sign up — pixel match of login-concept.html v4
 * Scope: .rcod (rendered only on logged-out account pages)
 * ================================================================ */
.rcod{--p:#6B1A2E;--p-lt:#7C2139;--deep:#4F0F22;--g:#C9A961;--g-lt:#E5D0A0;--bronze:#7E6035;
--canvas:#FAF6F0;--surface:#FDF9F3;--raise:#FFFDFA;--tint:#F3EADA;
--ink:#241F1D;--mut:#54504B;--sub:#6E6862;--line:rgba(52,34,28,.09);--line2:rgba(52,34,28,.17);
--lift:inset 0 1px 0 rgba(255,255,255,.92);
--e1:0 1px 2px rgba(58,26,36,.05),0 12px 28px -16px rgba(58,26,36,.16);
--display:'Fraunces',Georgia,serif;--ui:'Inter',system-ui,sans-serif;
max-width:420px;margin:0 auto;padding:22px 18px 40px;font-family:var(--ui);color:var(--ink)}
.rcod *{box-sizing:border-box}
.rcod-eb{font-size:10px;letter-spacing:.17em;text-transform:uppercase;color:var(--bronze);display:flex;align-items:center;gap:9px}
.rcod-eb::before{content:"";width:17px;height:1px;background:var(--g)}
.rcod h2{font-family:var(--display);font-weight:600;font-size:22px;margin:8px 0 4px;letter-spacing:-.014em;color:var(--ink)}
.rcod-lede{font-size:12.5px;line-height:1.6;color:var(--mut);margin:0 0 18px}
.rcod-or{display:flex;align-items:center;gap:10px;color:var(--sub);font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin:14px 0}
.rcod-or i{flex:1;height:1px;background:linear-gradient(90deg,rgba(201,169,97,0),rgba(201,169,97,.42),rgba(201,169,97,0))}
.rcod-fld{position:relative;margin-bottom:12px}
.rcod-fld input{width:100%;height:52px;border-radius:16px;border:1px solid var(--line2);background:var(--raise);
padding:0 16px;font:500 15px var(--ui);color:var(--ink);box-shadow:var(--lift);-webkit-appearance:none;appearance:none}
.rcod-fld input:focus{outline:none;border-color:var(--p);box-shadow:0 0 0 3px rgba(107,26,46,.08),var(--lift)}
.rcod-fld input::placeholder{color:var(--sub);font-weight:400}
.rcod-fld .rcod-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:44px;height:44px;
display:flex;align-items:center;justify-content:center;color:var(--sub);background:none;border:0;padding:0;cursor:pointer}
.rcod-fld .rcod-eye.is-on{color:var(--p)}
.rcod-digs{display:flex;align-items:center;gap:4px;margin:-6px 2px 12px;min-height:12px}
.rcod-digs i{width:15px;height:3.5px;border-radius:2px;background:var(--line2)}
.rcod-digs i.on{background:var(--g)}
.rcod-digs i.warn{background:#C77B3A}
.rcod-digs span{font-size:11px;color:var(--sub);margin-left:8px;font-weight:500}
.rcod-digs span.warn{color:#8A5A2E}
.rcod-det{display:flex;align-items:center;gap:6px;font-size:11.5px;margin:-6px 2px 12px;color:var(--bronze);font-weight:500}
.rcod-det.ok{color:#3E5E43}.rcod-det.warn{color:#8A5A2E}
.rcod-det svg{flex:0 0 auto}
.rcod-hint{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.5;color:var(--bronze);
background:linear-gradient(168deg,#FCF4E6,#F6EDDA);border:1px solid rgba(201,169,97,.36);border-radius:14px;
padding:11px 13px;margin:0 0 14px;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.rcod-hint b{font-weight:600}
.rcod-hint svg{flex:0 0 auto;margin-top:1px}
.rcod-hint.new{color:#3E5E43;background:linear-gradient(168deg,#EFF5EC,#E6EFE2);border-color:rgba(93,133,95,.30)}
.rcod-fix{display:flex;gap:9px;align-items:center;justify-content:space-between;font-size:12px;line-height:1.45;color:var(--ink);
background:linear-gradient(168deg,#FCF4E6,#F6EDDA);border:1px solid rgba(201,169,97,.4);border-radius:14px;
padding:11px 13px;margin:-4px 0 12px;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.rcod-fix b{color:var(--p)}
.rcod-fixbtn{flex:0 0 auto;border:1px solid var(--p);background:transparent;color:var(--p);border-radius:999px;
padding:0 13px;min-height:44px;font:600 10.5px var(--ui);letter-spacing:.09em;text-transform:uppercase;cursor:pointer}
.rcod-cta{display:flex;align-items:center;justify-content:center;gap:9px;height:50px;border-radius:999px;border:0;width:100%;
background:linear-gradient(180deg,var(--p-lt),var(--deep));color:#fff;font:600 13px var(--ui);letter-spacing:.13em;text-transform:uppercase;cursor:pointer;
box-shadow:0 1px 2px rgba(58,26,36,.22),0 11px 24px -11px rgba(107,26,46,.58),inset 0 1px 0 rgba(255,255,255,.22)}
.rcod-cta[disabled]{opacity:.72;cursor:default}
/* A disabled account CTA must look unavailable on touch screens too. A later
 * global button layer used to preserve the burgundy gradient, so it looked
 * tappable even though its disabled property rejected every tap. */
html body .rcod button.rcod-cta:disabled{background:#b9aba8!important;color:#f8f4ef!important;opacity:1!important;box-shadow:none!important;cursor:not-allowed!important}
.rcod-ghost{display:flex;align-items:center;justify-content:center;gap:8px;height:46px;border-radius:999px;width:100%;
border:1px solid var(--p);background:transparent;color:var(--p);font:600 12px var(--ui);letter-spacing:.11em;text-transform:uppercase;box-shadow:var(--lift);cursor:pointer}
.rcod-wa{display:flex;align-items:center;justify-content:center;gap:9px;height:50px;border-radius:999px;width:100%;border:0;
background:linear-gradient(180deg,#2AA95C,#1E7D45);color:#fff;font:600 13px var(--ui);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;
box-shadow:0 1px 2px rgba(20,60,35,.3),0 11px 24px -11px rgba(30,125,69,.55),inset 0 1px 0 rgba(255,255,255,.22)}
.rcod-mini{font-size:11.5px;color:var(--sub);text-align:center;margin:12px 0 0;line-height:1.5}
.rcod-mini a,.rcod-mini button{color:var(--p);font-weight:600;text-decoration:underline;text-underline-offset:2px;
background:none;border:0;padding:12px 4px;margin:-12px 0;font-size:11.5px;font-family:var(--ui);cursor:pointer}
.rcod-ok{display:flex;gap:10px;align-items:center;margin:0 0 14px}
.rcod-ok .rcod-dot{width:34px;height:34px;border-radius:999px;background:var(--tint);box-shadow:inset 0 0 0 1px rgba(201,169,97,.36);
display:flex;align-items:center;justify-content:center;color:var(--p);flex:0 0 auto}
.rcod-ok div{font-size:12.5px;line-height:1.5;color:var(--mut)}
.rcod-ok b{color:var(--ink)}
.rcod-err{font-size:12px;color:#8E2F2F;background:#FBEFEF;border:1px solid rgba(142,47,47,.25);border-radius:14px;padding:11px 13px;margin:0 0 12px;line-height:1.5}
.rcod [hidden]{display:none!important}

/* iOS Safari zooms the visual viewport when a focused form control renders
 * below 16px. Keep every guest-checkout text control at the safe size without
 * disabling the customer's normal pinch-to-zoom accessibility. */
@media(max-width:767px){
  body.woocommerce-checkout{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  body.woocommerce-checkout form.checkout input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  body.woocommerce-checkout form.checkout textarea,
  body.woocommerce-checkout form.checkout select,
  body.woocommerce-checkout form.checkout .select2-search__field,
  body.woocommerce-checkout .rcod .rcod-fld input{
    font-size:16px!important;
  }
}
/* keep the existing Google button styling untouched; just give it air */
.rcod .rcs-signin__sso{margin-bottom:2px}
@media(min-width:768px){.rcod{padding-top:44px}}

/* ================================================================
 * Concept parity (login-concept.html v4)
 * The account templates carry their own chrome — a centred header, a
 * white card around .woocommerce-form-login, a heavy focus ring and a
 * blanket button transform. Inside .rcod (logged-out account page only)
 * those are neutralised so the screen renders exactly as drawn.
 * ================================================================ */
/* css26-signin / css33-wishlist-login set the sign-in padding at (0,3,1) with
 * !important; these overrides carry (0,4,0) so they land without an id. */
.rcod[data-rcod].rcs-account.rcs-signin{padding:22px 12px 40px!important;
max-width:420px!important;margin:0 auto!important}
.rcod[data-rcod].rcs-account.rcs-signin .rcs-signin__header,
.rcod .rcs-signin__header{text-align:left!important;margin:0!important;padding:0!important;
background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.rcod .rcs-signin__header h2{text-align:left!important;margin:8px 0 4px!important;padding:0!important;
font-family:var(--display)!important;font-weight:600!important;font-size:22px!important;line-height:1.18!important;
letter-spacing:-.014em!important;color:var(--ink)!important}
.rcod .rcod-eb{text-align:left!important}
.rcod .rcod-lede{text-align:left!important;font-size:12.5px!important;line-height:1.6!important;
color:var(--mut)!important;margin:0 0 18px!important}
/* the login form is not a card in the concept */
.rcod form.woocommerce-form-login{background:none!important;background-image:none!important;border:0!important;
border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0!important}
/* Google button === concept .gbtn */
.rcod .rcs-signin__sso{margin:0 0 14px!important;padding:0!important;background:none!important;
border:0!important;border-radius:0!important;box-shadow:none!important}
.rcod .rcs-signin__google{display:flex!important;align-items:center!important;justify-content:center!important;
gap:10px!important;width:100%!important;height:50px!important;min-height:50px!important;padding:0 18px!important;
border-radius:999px!important;background:var(--raise)!important;border:1px solid var(--line2)!important;
color:var(--ink)!important;font-family:var(--ui)!important;font-size:13px!important;font-weight:600!important;
letter-spacing:normal!important;text-transform:none!important;line-height:1!important;
box-shadow:var(--e1),var(--lift)!important}
.rcod .rcs-signin__google>span{font-family:var(--ui)!important;font-size:13px!important;font-weight:600!important;
line-height:1!important;letter-spacing:normal!important;text-transform:none!important}
.rcod .rcs-signin__google[disabled]{opacity:.72;cursor:default}
.rcod .rcs-signin__sso-note{font-size:11.5px!important;line-height:1.5!important;color:var(--sub)!important;
text-align:center!important;margin:8px 0 0!important;padding:0!important}
/* concept spacing for the OR rule */
.rcod .rcod-or{margin:2px 0 14px!important}
/* concept focus: 1px primary border + a 3px whisper, not the theme's halo */
.rcod .rcod-fld input:focus,.rcod .rcod-fld input:focus-visible{outline:none!important;
border:1px solid var(--p)!important;box-shadow:0 0 0 3px rgba(107,26,46,.08),var(--lift)!important}
/* the theme resets transform on buttons; the eye must stay centred */
.rcod .rcod-fld .rcod-eye{transform:translateY(-50%)!important;min-height:0!important;
background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important}
/* idle Continue — concept screen 1 */
.rcod-idle{margin:0}
.rcod-idle[hidden]{display:none!important}
