:root{
  --dcc-black:#171717;
  --dcc-charcoal:#30291f;
  --dcc-gold:#b88a2c;
  --dcc-gold-light:#d6b364;
  --dcc-cream:#fbf7ef;
  --dcc-white:#fff;
  --dcc-gray:#665f55;
  --dcc-border:#e5dac4;
  --dcc-green:#19763a;
  --dcc-red:#a32626;
}

html{background:#171717}
body.login{
  min-height:100vh;
  background:
    radial-gradient(circle at 12% 18%,rgba(184,138,44,.18),transparent 34%),
    radial-gradient(circle at 88% 78%,rgba(184,138,44,.12),transparent 30%),
    linear-gradient(125deg,#151515,#3a2e1c);
  color:var(--dcc-black);
  font-family:Arial,sans-serif;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:32px 18px;
  box-sizing:border-box;
}
body.login *{box-sizing:border-box}
body.login:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.18;
  background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:32px 32px;
}
#login{
  width:min(100%,480px);
  padding:0;
  margin:0;
  position:relative;
  z-index:2;
}
.login h1{display:none}
.dcc-login-brand{
  background:linear-gradient(125deg,#151515,#3a2e1c);
  color:#fff;
  padding:34px 38px 30px;
  border:1px solid rgba(214,179,100,.38);
  border-bottom:0;
  border-radius:20px 20px 0 0;
  box-shadow:0 24px 70px rgba(0,0,0,.35);
  text-align:left;
}
.dcc-login-mark{
  width:66px;
  height:66px;
  display:grid;
  place-items:center;
  border:2px solid var(--dcc-gold);
  border-radius:50%;
  color:var(--dcc-gold-light);
  font-family:Georgia,serif;
  font-size:22px;
  font-weight:700;
  letter-spacing:.06em;
  margin-bottom:20px;
  background:rgba(0,0,0,.2);
}
.dcc-login-kicker{
  color:var(--dcc-gold-light);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-size:12px;
  margin:0 0 8px;
}
.dcc-login-title{
  color:#fff!important;
  font-family:Georgia,serif;
  font-size:clamp(27px,6vw,37px)!important;
  line-height:1.08!important;
  margin:0 0 12px!important;
  font-weight:700!important;
}
.dcc-login-subtitle{color:#eee5d5;font-size:15px;line-height:1.55;margin:0}
.dcc-login-progress{height:7px;background:#4a4439;border-radius:999px;margin-top:24px;overflow:hidden}
.dcc-login-progress span{display:block;width:72%;height:100%;background:linear-gradient(90deg,var(--dcc-gold),var(--dcc-gold-light));border-radius:inherit}

.login form,
.login #login_error,
.login .message,
.login .success,
.dcc-login-intro{
  margin:0!important;
  border-left:0!important;
  box-shadow:none!important;
}
.dcc-login-intro,
.login #login_error,
.login .message,
.login .success{
  background:var(--dcc-cream);
  padding:18px 38px!important;
  border-right:1px solid var(--dcc-border)!important;
  border-left:1px solid var(--dcc-border)!important;
  color:var(--dcc-gray);
  line-height:1.5;
}
.login #login_error{color:var(--dcc-red);border-top:4px solid var(--dcc-red)!important}
.login .message,.login .success{color:var(--dcc-green);border-top:4px solid var(--dcc-green)!important}
.login form{
  padding:28px 38px 34px;
  background:var(--dcc-white);
  border:1px solid var(--dcc-border);
  border-top:0;
  border-radius:0 0 20px 20px;
  box-shadow:0 24px 70px rgba(0,0,0,.35)!important;
}
.login label{color:var(--dcc-black);font-weight:700;font-size:14px}
.login form .input,
.login input[type=text],
.login input[type=password],
.login input[type=email]{
  width:100%;
  min-height:52px;
  margin-top:8px;
  padding:12px 14px;
  border:1px solid var(--dcc-border);
  border-radius:10px;
  background:#fffdf8;
  color:var(--dcc-black);
  font-size:16px;
  box-shadow:none;
}
.login form .input:focus,
.login input[type=text]:focus,
.login input[type=password]:focus,
.login input[type=email]:focus{
  border-color:var(--dcc-gold);
  box-shadow:0 0 0 3px rgba(184,138,44,.16);
  outline:0;
}
.login .button.wp-hide-pw{color:#72511c;top:8px}
.login .forgetmenot{margin-top:8px}
.login input[type=checkbox]{border-color:#cdbd9f;border-radius:4px}
.login input[type=checkbox]:checked:before{content:"✓";color:var(--dcc-gold);font-size:20px;margin:-4px 0 0 -2px}
.login .submit{margin-top:22px!important}
.login .button-primary{
  width:100%;
  min-height:52px;
  background:var(--dcc-gold)!important;
  border:0!important;
  border-radius:9px!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:700!important;
  text-shadow:none!important;
  box-shadow:none!important;
  transition:transform .15s ease,background .15s ease;
}
.login .button-primary:hover,.login .button-primary:focus{background:#9d7420!important;transform:translateY(-1px)}
.login .button-primary:focus{box-shadow:0 0 0 4px rgba(184,138,44,.22)!important}
.login #nav,.login #backtoblog{
  margin:18px 0 0;
  padding:0;
  text-align:center;
  color:#eee5d5;
}
.login #nav a,.login #backtoblog a,.privacy-policy-page-link a,.dcc-login-help a{
  color:var(--dcc-gold-light)!important;
  text-decoration:none;
}
.login #nav a:hover,.login #backtoblog a:hover,.privacy-policy-page-link a:hover,.dcc-login-help a:hover{color:#fff!important;text-decoration:underline}
.login .privacy-policy-page-link{margin:16px 0;color:#d8cfbf}
.dcc-login-help{
  margin:22px auto 0;
  max-width:420px;
  color:#d8cfbf;
  text-align:center;
  line-height:1.45;
  font-size:13px;
}
.dcc-login-help p{margin:4px 0}
.login .language-switcher{margin-top:18px}
.login .language-switcher select{border-radius:8px;border-color:#cdbd9f}
.login .dashicons-translation{color:var(--dcc-gold-light)}
.login .wp-pwd{margin-top:8px}
.login .password-input-wrapper{width:100%}
.login .reset-pass-submit{display:flex;gap:10px;align-items:center}
.login .reset-pass-submit .button-primary{width:auto;flex:1}

@media(max-width:520px){
  body.login{align-items:flex-start;padding:18px 12px}
  .dcc-login-brand{padding:28px 24px 25px}
  .login form{padding:25px 24px 28px}
  .dcc-login-intro,.login #login_error,.login .message,.login .success{padding:16px 24px!important}
  .dcc-login-mark{width:58px;height:58px;font-size:19px}
}
@media(prefers-reduced-motion:reduce){.login .button-primary{transition:none}}
