/* DoItEasy cPanel login branding. Native authentication markup and JS retained. */
body.doiteasy-cpanel {
  --doiteasy-green: #0b6e3e;
  margin: 0; min-height: 100vh; color: #18352a;
  background: radial-gradient(ellipse at 4% 4%, #4f997766 0, transparent 48%),
    radial-gradient(ellipse at 92% 90%, #0b6e3e88 0, transparent 56%),
    linear-gradient(135deg, #124c38 0%, #082f24 48%, #064432 100%);
  background-attachment: fixed;
}
/* Soft interlocking arcs echo the DoItEasy mark without competing with the form. */
body.doiteasy-cpanel::before, body.doiteasy-cpanel::after {
  content: ""; position: fixed; pointer-events: none; z-index: 0;
  width: 75vw; height: 75vw; min-width: 520px; min-height: 520px;
  border: 1px solid #b4dfbc24; border-radius: 48% 52% 62% 38%;
  box-shadow: 0 0 0 65px #b4dfbc06, 0 0 0 130px #b4dfbc05, 0 0 0 195px #b4dfbc04;
}
body.doiteasy-cpanel::before {left: -48vw; top: -25vw; transform: rotate(-28deg);}
body.doiteasy-cpanel::after {right: -50vw; bottom: -37vw; transform: rotate(32deg);}
.doiteasy-cpanel #login-wrapper, .doiteasy-cpanel #locale-footer, .doiteasy-cpanel #notify {position: relative; z-index: 1;}
.doiteasy-cpanel .copyright {display: none;}
.doiteasy-cpanel .doiteasy-recovery-link {display: block; text-align: center; margin-top: 16px; font-size: 12px;}
.doiteasy-cpanel #login-wrapper {margin: 0 auto; padding: 64px 20px 22px; min-height: 0; box-sizing: border-box;}
.doiteasy-cpanel #login-container {width: 100%; max-width: 460px;}
.doiteasy-cpanel #login-sub-container {left: auto; right: auto; width: 100%; box-sizing: border-box; background: #fff;
  padding: 30px 38px 28px; border: 1px solid #dce9e1; border-top: 4px solid #d4af37; border-radius: 18px;
  box-shadow: 0 24px 70px #00180f66;}
.doiteasy-cpanel #login-sub-header {height: auto; padding: 0 0 22px;}
.doiteasy-cpanel #login-sub-header img.main-logo {height: auto; width: 222px; max-width: 90%; margin: 0;}
.doiteasy-cpanel .doiteasy-title {font-size: 22px; line-height: 1.35; font-weight: 600; margin: 14px 0 7px; color: #123c2a;}
.doiteasy-cpanel .doiteasy-caption {font-size: 13px; line-height: 1.65; color: #597064; margin: 0;}
.doiteasy-cpanel #forms, .doiteasy-cpanel #login-sub, .doiteasy-cpanel #login_form {width: 100%; padding-left: 0; padding-right: 0; box-sizing: border-box;}
.doiteasy-cpanel #login-sub {position: relative; height: auto; padding-top: 0;}
.doiteasy-cpanel #forms, .doiteasy-cpanel #login_form {position: relative; top: auto; left: auto; right: auto; height: auto;}
.doiteasy-cpanel #clickthrough_form {top: 0; left: 0; right: 0; width: 100%;}
.doiteasy-cpanel #login_form .controls, .doiteasy-cpanel #login_form .login-btn, .doiteasy-cpanel #login_form .reset-pw {width: 100%; box-sizing: border-box;}
.doiteasy-cpanel #login_form .login-btn {padding-top: 22px;}
.doiteasy-cpanel #login_form .reset-pw {padding: 18px 0 0;}
.doiteasy-cpanel #login_form .login-password-field-label {padding-top: 18px;}
.doiteasy-cpanel #login_form .input-field-login input.std_textbox {width: calc(100% - 48px);}
.doiteasy-cpanel #forms label {color: #274b39; font-weight: 600; font-size: 13px;}
.doiteasy-cpanel .input-field-login.icon {height: 44px; border: 1px solid #cbdcd1; border-radius: 8px; box-sizing: border-box; background-position-y: center;}
.doiteasy-cpanel .input-field-login.icon:focus-within {border-color: #0b6e3e; box-shadow: 0 0 0 3px #0b6e3e1a;}
.doiteasy-cpanel .input-field-login.icon input.std_textbox {box-sizing: border-box; height: 36px; margin-top: 3px; font-size: 14px; background: transparent;}
.doiteasy-cpanel .login-btn button, .doiteasy-cpanel .clickthrough-cont-btn {
  min-height: 44px; border-radius: 8px; border: 1px solid #0b6e3e; background: #0b6e3e; color: #fff; font-size: 14px; box-shadow: none;
}
.doiteasy-cpanel .login-btn button:hover, .doiteasy-cpanel .clickthrough-cont-btn:hover {background: #064e3b; border-color: #064e3b;}
.doiteasy-cpanel .login-btn button:focus-visible, .doiteasy-cpanel a:focus-visible {outline: 3px solid #d4af37; outline-offset: 3px;}
.doiteasy-cpanel #login-container a, .doiteasy-cpanel #login-container a:visited {color: #0b6e3e;}
.doiteasy-cpanel #login-container a:hover {color: #064e3b; text-decoration: underline;}
.doiteasy-cpanel .doiteasy-links {padding-top: 22px; margin-top: 20px; border-top: 1px solid #e5eee8; text-align: center; font-size: 12px;}
.doiteasy-cpanel .doiteasy-links span {color: #adbdb3; margin: 0 14px;}
.doiteasy-cpanel #locale-footer {margin: 25px auto 0; max-width: 680px;}
.doiteasy-cpanel .locale-container a, .doiteasy-cpanel #morelocale, .doiteasy-cpanel #mobilelocalemenu {color: #d8e9df;}
.doiteasy-cpanel .locale-container a:hover {color: #fff;}
.doiteasy-cpanel .copyright {color: #bdd1c5; margin: 0 auto 28px;}
.doiteasy-cpanel .copyright a, .doiteasy-cpanel .copyright a:visited {color: #d8e9df;}
.doiteasy-cpanel .copyright a:hover {color: #fff;}
.doiteasy-cpanel #notify {max-width: 650px; margin: 0 auto;}
.doiteasy-cpanel #locale-container {color: #243a2c;}
.doiteasy-cpanel #locale-container a {color: #0b6e3e;}
html[dir="rtl"] .doiteasy-cpanel #login-sub-container {left: auto; right: auto;}
@media (max-width: 600px) {
 .doiteasy-cpanel #login-wrapper {padding: 24px 16px 20px; min-width: 0;}
 .doiteasy-cpanel #login-sub-container {padding: 24px;}
 .doiteasy-cpanel #login-sub-header img.main-logo {width: 200px;}
 .doiteasy-cpanel .doiteasy-title {font-size: 20px;}
 .doiteasy-cpanel .copyright {margin-bottom: 22px;}
}

/* Responsive login icons: reserve inline space rather than a fixed RTL x position. */
html[dir="ltr"] .doiteasy-cpanel #login_form .input-field-login.icon{background-position:left 12px center;background-size:20px 20px}
html[dir="rtl"] .doiteasy-cpanel #login_form .input-field-login.icon{background-position:right 12px center;background-size:20px 20px}
.doiteasy-cpanel #login_form .input-field-login.icon input.std_textbox{display:block;width:100%;height:100%;margin:0!important;border:0;box-sizing:border-box;padding-block:0;padding-inline-start:44px;padding-inline-end:12px;text-align:start}
