/* Login inherits the account palette and the site's .dina-dark toggle. */
.dg-login {
 --dga-blue:#17a2b8; --dga-blue-light:#2db4ca; --dga-teal:#11788a; --dga-tint:#edf7fa; --dga-text:#1f2328; --dga-muted:#5f6670;
 --dga-line:#e6e9ee; --dga-control:#7a838f; --dga-card:#fff; --dga-soft:#f6f8f9;
 --dga-primary-text:#062e38; --dga-red:#b42318;
 color:var(--dga-text); background:var(--dga-card); direction:rtl; text-align:start;
 line-height:1.9; font-variant-numeric:tabular-nums; accent-color:var(--dga-teal); caret-color:var(--dga-teal);
}
.dina-dark .dg-login {
 --dga-blue:#75cbd9; --dga-blue-light:#a3dfE9; --dga-teal:var(--dga-blue); --dga-tint:#1c3047; --dga-text:#e8eaed; --dga-muted:#b3b6bc;
 --dga-line:#404349; --dga-control:#878d98; --dga-card:#25272b; --dga-soft:#2e3035;
 --dga-primary-text:#102338; --dga-red:#f7a39b; color-scheme:dark;
}
.dg-login *, .dg-login *::before, .dg-login *::after {box-sizing:border-box}
.dg-login ::selection {background:var(--dga-tint);color:var(--dga-text)}
.dg-login [hidden], .dg-login .d-none {display:none!important}
.dg-login.dina-login-form-wrapper {width:min(460px, calc(100% - 32px)); padding:32px; border:1px solid var(--dga-line);border-radius:20px;box-shadow:0 16px 48px #10262a0a;backdrop-filter:none}
.dg-login .dina-login-logo {max-width:160px; margin:0 auto 24px}
.dg-login > h1, .dg-login .dina-side-title {display:none}
.dg-login .dg-login-heading {margin:0 0 8px;font-size:24px;font-weight:800;line-height:1.6;color:var(--dga-text)}
.dg-login .dina-login-form {margin:0;padding:0;border:0;background:none;box-shadow:none}
.dg-login .row {margin:0;display:block}
.dg-login .col-12 {padding:0;width:100%;max-width:100%;flex:none}
.dg-login .form-group, .dg-login .dina-otp-container {position:relative;margin:0 0 18px}
.dg-login label {display:block;font-size:13px;font-weight:600;margin-bottom:8px;color:var(--dga-text)}
.dg-login .form-group > i, .dg-login .btn > i {display:none!important}
.dg-login input.form-control {
 width:100%; height:54px; padding:12px 14px; border:1px solid var(--dga-control);border-radius:10px;
 background:var(--dga-card);color:var(--dga-text);font:inherit;font-size:16px;box-shadow:none;
 transition:border-color 180ms ease,background-color 180ms ease;
}
.dg-login input[dir=ltr] {text-align:left}
.dg-login input::placeholder {color:var(--dga-muted);opacity:1}
.dg-login input:-webkit-autofill,.dg-login input:-webkit-autofill:focus { -webkit-box-shadow:0 0 0 1000px var(--dga-card) inset; -webkit-text-fill-color:var(--dga-text);caret-color:var(--dga-teal)}
.dg-login :is(input,button,a,summary,[role=button]):focus-visible {outline:2px solid var(--dga-teal);outline-offset:3px}
.dg-login input[aria-invalid=true] {border-color:var(--dga-red)}
.dg-login .dg-field-error {color:var(--dga-red);font-size:12px;margin:6px 0 0}
.dg-login .dina-login-form-button {display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:52px;padding:12px 16px;border:1px solid var(--dga-teal);border-radius:10px;background:var(--dga-teal);color:var(--dga-primary-text);font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:opacity 180ms ease,transform 150ms ease}
.dg-login .dina-login-form-button:active {transform:scale(.98)}
.dg-login .dina-login-form-button:disabled {opacity:.65;cursor:wait}
.dg-login form[aria-busy=true] .dina-login-form-button::after {content:'';width:17px;height:17px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:dg-login-spin .65s linear infinite}
@keyframes dg-login-spin {to {transform:rotate(360deg)}}
.dg-login .dina-login-phone-btn,.dg-login .dina-login-email-btn,.dg-login .dg-login-back,.dg-login #dina-resend-code-btn {display:flex;align-items:center;justify-content:center;min-height:44px;width:100%;margin:12px 0 0;padding:8px;border:0;background:transparent;color:var(--dga-teal);font:inherit;font-size:14px;cursor:pointer;text-decoration:none}
.dg-login #dina-resend-code-btn.disabled {color:var(--dga-muted);cursor:default;pointer-events:none}
.dg-login .dina-login-links {display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;margin-bottom:16px}
.dg-login .dina-login-links :is(a,span) {min-height:44px;display:inline-flex;align-items:center;color:var(--dga-teal);cursor:pointer}
.dg-login [id=dina_sms_login_form] .dina-login-links {display:none}
.dg-login .status {font-size:13px;line-height:1.8;margin:0 0 16px;padding:10px 12px;background:var(--dga-soft);color:var(--dga-text);border:0;border-radius:8px}
.dg-login .status:empty {display:none!important}
.dg-login .status.woocommerce-error {color:var(--dga-red)}
.dg-login .status::before {display:none}
.dg-login .dg-password-toggle {position:absolute;inset-inline-end:6px;bottom:5px;min-width:56px;height:44px;padding:6px;border:0;background:transparent;color:var(--dga-teal);font:inherit;font-size:12px;cursor:pointer}
.dg-login input[type=password],.dg-login .dg-has-toggle input {padding-inline-end:70px}
/* One native input retains selection, paste, SMS autofill and screen-reader semantics. */
.dg-login .dg-otp-wrap {position:relative;direction:ltr;height:58px;margin-block:12px}
.dg-login .dg-otp-slots {position:absolute;inset:0;display:flex;justify-content:center;gap:8px;pointer-events:none}
.dg-login .dg-otp-slots span {display:flex;align-items:center;justify-content:center;flex:1;max-width:58px;border:1px solid var(--dga-control);border-radius:10px;background:var(--dga-card);font-size:24px;font-weight:600}
.dg-login .dg-otp-wrap input.form-control {position:absolute;inset:0;height:58px;opacity:0;cursor:text}
.dg-login .dg-otp-wrap:focus-within .dg-otp-slots span {border-color:var(--dga-teal)}
.dg-login .dg-otp-wrap:focus-within {outline:2px solid var(--dga-teal);outline-offset:4px;border-radius:10px}
.dg-login .dg-otp-wrap:has([aria-invalid=true]) .dg-otp-slots span {border-color:var(--dga-red)}
.dg-login .dg-register-extras {margin-bottom:18px}
.dg-login .dg-register-extras summary {min-height:44px;color:var(--dga-teal);cursor:pointer;font-size:13px}
.dg-login .form-check {display:flex;align-items:center;gap:10px;min-height:44px;padding:0}
.dg-login .form-check input {position:static;margin:0;width:20px;height:20px;flex:none}
.dg-login .form-check label {margin:0;font-weight:400}
.dg-login .dina-login-notices-wrapper,.dg-login > .dina-side-image,.dg-login > .dina-side-icon {display:none}
#dinaSideLogin.dg-login {width:min(420px,100vw);padding:24px;overflow-y:auto;overscroll-behavior:contain}
.dg-login .dina-side-head {display:flex;justify-content:flex-end;margin-bottom:24px;border:0;padding:0}
.dg-login .dina-mclosebtn {display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--dga-text)}
@media(max-width:480px) {.dg-login.dina-login-form-wrapper {padding:28px 22px}.dg-login .dg-login-heading {font-size:22px}}
@media(prefers-reduced-motion:reduce) {.dg-login *, .dg-login *::before,.dg-login *::after {transition:none!important;animation:none!important}}
/* Override vendor OTP flex sizing, button hover palette and input !important background. */
.dg-login .dina-otp-container {display:block;width:100%;max-width:none}
.dg-login input.form-control {background-color:var(--dga-card)!important}
.dg-login .dina-login-form-button:is(:hover,:active,.disabled,:disabled) {background:var(--dga-teal)!important;border-color:var(--dga-teal)!important;color:var(--dga-primary-text)!important}
.dg-login .status:is(.woocommerce-error,.woocommerce-message,.woocommerce-info) {padding:10px 12px}
.dg-login .btn-dina-toggle {min-width:44px;min-height:44px}
@starting-style {.dg-login .dina-login-form {opacity:.5;transform:translateY(4px)}}
.dg-login .dina-login-form {transition:opacity 180ms cubic-bezier(.23,1,.32,1),transform 180ms cubic-bezier(.23,1,.32,1)}
.dg-login [data-close-sidebar] {display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid var(--dga-line);border-radius:10px;background:var(--dga-soft);color:var(--dga-text);cursor:pointer}
@media(hover:hover) and (pointer:fine) {.dg-login .dina-login-form-button:hover {filter:brightness(.94)}.dg-login :is(.dg-login-back,.dina-login-email-btn,.dina-login-phone-btn):hover {text-decoration:underline;text-underline-offset:4px}}
/* Own the complete drawer geometry: theme open/close still toggles .open. */
#dinaSideLogin.dg-login {position:fixed;top:0;bottom:0;width:min(440px,100vw);height:100%;height:100dvh;max-height:none;margin:0;box-sizing:border-box;transition:transform 220ms cubic-bezier(.32,.72,0,1);border-radius:24px 0 0 24px;box-shadow:-16px 0 60px #071c3533}
#dinaSideLogin.dg-login[data-direction=right] {right:0!important;left:auto!important;transform:translateX(calc(100% + 24px))}
#dinaSideLogin.dg-login[data-direction=left] {left:0!important;right:auto!important;transform:translateX(calc(-100% - 24px));border-radius:0 24px 24px 0}
#dinaSideLogin.dg-login.open {transform:translateX(0)}
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form) {display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid var(--dga-teal);border-radius:10px;background:transparent;color:var(--dga-teal);font:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:background-color 160ms ease,transform 160ms ease}
.dg-login :is(.dina-show-register-form,.dina-show-login-form) {flex:1}
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form):active {transform:scale(.98)}
.dg-login [id=dina_sms_login_form] .dina-login-links {display:flex}
.dg-login .lost-password {font-size:12px;color:var(--dga-muted)!important}
.dg-login .form-check label {display:block;line-height:1.9;font-size:12px}
.dg-login .form-check label a {color:var(--dga-teal);text-decoration:underline;text-underline-offset:3px}
.dg-login .dg-channel {display:flex;border:0;padding:0;min-width:0}
.dg-login .dg-channel label {position:relative;flex:1;margin:0;cursor:pointer}
.dg-login .dg-channel input {position:absolute;opacity:0;width:1px;height:1px}
.dg-login .dg-channel input:focus-visible + span {outline:2px solid var(--dga-teal);outline-offset:3px}
/* v4: quiet glass, cable scene and one organizational blue family. */
.dg-login {font-family:inherit;--dga-card:#ffffffeb;--dga-soft:#f1f5fa;--dga-line:#d6e1ee;--dga-control:#a5b4c7}
.dina-dark .dg-login {--dga-card:#101f32eb;--dga-soft:#182b42;--dga-line:#30465f;--dga-control:#617c99;--dga-text:#ecf3fb;--dga-muted:#b1c1d5}
.dg-login.dina-login-form-wrapper {position:relative;width:min(440px,calc(100% - 40px));padding:32px;border-radius:28px;background:var(--dga-card);backdrop-filter:blur(18px);box-shadow:0 28px 80px #10243d24,inset 0 1px 0 #ffffff40}
.dg-login .dg-login-heading {margin-bottom:24px;font-size:25px;font-weight:850}
.dg-login .dina-login-form-button {min-height:58px;border-radius:16px;background:linear-gradient(100deg,var(--dga-blue),var(--dga-blue-light));border:0;color:var(--dga-primary-text)}
.dg-login .dina-login-form-button:is(:hover,:active,:disabled,.disabled) {background:linear-gradient(100deg,var(--dga-blue),var(--dga-blue-light))!important}
.dg-login input.form-control {border-radius:16px;background-color:var(--dga-soft)!important}
.dg-login .dg-phone-field {position:relative;display:flex;align-items:center;direction:ltr;border:1px solid var(--dga-control);border-radius:16px;background:var(--dga-soft);overflow:hidden}
.dg-login .dg-phone-field input.form-control {border:0;height:62px;min-width:0;padding:12px 16px;font-size:20px;font-weight:650;outline:none;box-shadow:none}
.dg-login .dg-phone-field:focus-within {border-color:var(--dga-blue);outline:3px solid var(--dga-tint);outline-offset:2px}
.dg-login .dg-phone-prefix {padding:0 14px;border-right:1px solid var(--dga-line);color:var(--dga-muted);font-size:16px;font-weight:650;white-space:nowrap}
.dg-login .dg-phone-charge {position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--dga-blue),var(--dga-blue-light));transform:scaleX(0);transform-origin:left;transition:transform 200ms cubic-bezier(.23,1,.32,1)}
.dg-login .dg-phone-field:has([aria-invalid=true]) {border-color:var(--dga-red)}
.dg-login #dina_sms_login_form .form-group > label,.dg-login .dg-channel legend,.dg-login .dina-otp-container > label {position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.dg-login #dina_sms_login_form .dina-login-links {display:none}
.dg-login .dg-channel {gap:10px;margin:0 0 20px}
.dg-login .dg-channel .dg-channel-tile {position:relative;display:flex;gap:10px;align-items:center;justify-content:center;min-height:64px;border:1px solid var(--dga-line);border-radius:14px;background:var(--dga-soft);color:var(--dga-text)}
.dg-login .dg-channel b {font-size:14px;font-weight:600}
.dg-login .dg-channel img {object-fit:contain;width:28px;height:28px}
.dg-login .dg-channel .dg-sms-icon {display:flex;min-height:0;border:0;background:none;color:currentColor;border-radius:0}
.dg-login .dg-channel input:checked + .dg-channel-tile {border-color:var(--dga-blue);color:var(--dga-text);background:var(--dga-tint)}
.dg-login .dg-channel input:checked + .dg-channel-tile::after {content:'✓';position:absolute;top:3px;right:8px;font-size:12px}
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn) {border:0;background:none;font-size:13px;color:var(--dga-muted);margin:8px 0 0;font-weight:500}
.dg-login .dg-login-trust {border:0;margin:4px 0 0;padding:0;font-size:11px}
.dg-login .dg-login-legal {display:block;line-height:2;color:var(--dga-muted)}
.dg-login .dg-login-legal a {display:inline-flex;margin-inline:3px;min-height:44px;align-items:center}
.dg-login .dg-otp-wrap,.dg-login .dg-otp-wrap input.form-control {height:66px}
.dg-login .dg-otp-slots span {position:relative;overflow:hidden;border-radius:16px;background:var(--dga-soft);max-width:none;border-color:var(--dga-line);isolation:isolate}
.dg-login .dg-otp-slots span::before {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,color-mix(in srgb,var(--dga-blue) 30%,transparent),transparent);transform:translateY(100%);transition:transform 220ms cubic-bezier(.23,1,.32,1)}
.dg-login .dg-otp-slots span.dg-filled {border-color:var(--dga-blue)}
.dg-login .dg-otp-slots span.dg-filled::before {transform:translateY(0)}
.dg-login .dg-login-back {justify-content:flex-start;margin:0 0 10px;padding:0;color:var(--dga-muted);font-size:14px}
.dg-login .dg-channel-alternate {display:block;min-height:44px;margin:auto;padding:8px 16px;border:0;background:none;color:var(--dga-teal);font:inherit;font-size:13px;cursor:pointer}
.dg-login-scene {position:relative;isolation:isolate;overflow:hidden;min-height:100dvh;background:#eaf1f9!important;display:flex!important;align-items:center;justify-content:center;gap:clamp(50px,8vw,160px);padding:64px 40px!important;direction:rtl}
.dina-dark .dg-login-scene {background:#091727!important}
.dg-login-scene::before {content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 85% 0%,#17a2b824,transparent 65%)}
.dg-login-cables {position:absolute;inset:0;z-index:-1;pointer-events:none;color:#17a2b8;opacity:.22}
.dina-dark .dg-login-cables {color:#75cbd9}
.dg-login-cables svg {width:100%;height:100%;overflow:visible}
.dg-login-cables g {stroke-dasharray:70 12 350 16;animation:dg-cable-flow 35s linear infinite}
@keyframes dg-cable-flow {to {stroke-dashoffset:-896}}
.dg-login-hero {display:flex;flex-direction:column;gap:12px;max-width:400px;color:#153858;text-align:right;line-height:1.5}
.dg-login-hero strong {font-size:clamp(38px,4vw,60px);font-weight:900}
.dg-login-hero span {font-size:clamp(22px,2.5vw,34px);font-weight:650;color:#17a2b8;white-space:nowrap}
.dina-dark .dg-login-hero {color:#edf4fc}.dina-dark .dg-login-hero span {color:#75cbd9}
.dg-login-scene .dina-return-home {position:absolute;bottom:12px;right:24px}
#dinaSideLogin.dg-login {background:var(--dga-card);backdrop-filter:blur(18px);padding:24px 28px;border-inline-end:1px solid var(--dga-line)}
@media(max-width:800px) {.dg-login-hero {display:none}.dg-login-scene {padding:40px 0!important}.dg-login.dina-login-form-wrapper {padding:28px 24px}}
@media(max-width:600px) {
 #dinaSideLogin.dg-login {top:auto!important;bottom:0;width:100vw;height:auto;max-height:94dvh;border-radius:28px 28px 0 0!important;padding:12px 24px max(24px,env(safe-area-inset-bottom));transform:translateY(110%)!important}
 #dinaSideLogin.dg-login.open {transform:translateY(0)!important}
 #dinaSideLogin.dg-login::before {content:'';display:block;width:40px;height:4px;border-radius:4px;background:var(--dga-control);margin:0 auto 8px}
 .dg-login .dina-side-head {margin-bottom:4px}.dg-login .dg-login-heading {font-size:22px}
}
@media(prefers-reduced-motion:reduce) {.dg-login-cables g {animation:none}.dg-login *,#dinaSideLogin.dg-login {transition:none!important;animation:none!important}}

.dg-login .dg-phone-field input.form-control {direction:ltr!important;text-align:left!important}
/* Stage review: own vendor states, clipping, and the shared recovery presentation. */
body :is(.dina-merge-btn,.dina-mobile-login-btn) {
 display:inline-flex;align-items:center;justify-content:center;gap:8px;
 background:linear-gradient(115deg,#128397,#17a2b8)!important;color:#fff!important;
 border:1px solid #168fa4!important;border-radius:14px!important;
 box-shadow:0 4px 14px #17a2b82b!important;
 transition:transform 160ms cubic-bezier(.23,1,.32,1),box-shadow 160ms ease!important;
}
body :is(.dina-merge-btn,.dina-mobile-login-btn) > :is(i,.dina-login-separator) {display:none!important}
.dg-header-user {flex:none;width:23px;height:23px}
body :is(.dina-merge-btn,.dina-mobile-login-btn):active {transform:scale(.98)!important}
@media(hover:hover) and (pointer:fine) {
 body :is(.dina-merge-btn,.dina-mobile-login-btn):hover {transform:translateY(-2px);box-shadow:0 7px 20px #17a2b83d!important}
}
body :is(.dina-merge-btn,.dina-mobile-login-btn):focus-visible {outline:2px solid #17a2b8;outline-offset:3px}
.dg-login {--dga-blue:#17a2b8;--dga-blue-light:#238db8;--dga-primary-text:#fff}
.dina-dark .dg-login {--dga-primary-text:#fff}
.dg-login .dina-login-form-button {background:linear-gradient(110deg,#128397,#238db8)!important;color:#fff!important;box-shadow:0 6px 18px #17a2b826}
.dg-login .dina-login-form-button:is(:hover,:active,:disabled,.disabled) {background:linear-gradient(110deg,#128397,#238db8)!important;color:#fff!important}
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form) {
 border:0!important;background:none!important;box-shadow:none!important;border-radius:0;color:var(--dga-teal)!important;
 text-decoration:none;transition:none;
}
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form):is(:hover,:focus-visible) {text-decoration:underline;text-underline-offset:4px}
/* Keep link/label skins out of the owned login controls. */
.dg-login .dg-channel label {min-width:0;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
.dg-login .dg-channel label::before,.dg-login .dg-channel label::after,
.dg-login .dg-channel-tile::before,
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form)::before,
.dg-login :is(.dina-login-email-btn,.dina-login-phone-btn,.dina-show-register-form,.dina-show-login-form)::after {content:none!important;display:none!important}
/* A rounded tile needs no nested clip/isolation surface. In particular, avoid
   padding-box clipping under the card's backdrop filter (mobile corner seams).
   Keep the real border and the selected checkmark; focus remains visible. */
.dg-login .dg-channel .dg-channel-tile {overflow:visible;isolation:auto;background-clip:border-box;box-shadow:none;transition:none}
.dg-login .dg-channel .dg-sms-icon {width:28px;height:28px;align-items:center;justify-content:center;border-radius:50%;background:#e4f4f8;color:#17a2b8;flex:none}
.dg-login .dg-channel .dg-sms-icon svg {width:24px;height:24px}
.dg-login .dina-side-head {position:relative;height:44px;margin:0 0 8px;flex:none;align-items:center;justify-content:flex-start;background:none;box-shadow:none}
.dg-login .dina-side-head .dina-side-title {display:none!important}
.dg-login [data-close-sidebar] {border:0!important;background:none!important;box-shadow:none!important;border-radius:50%;width:44px;min-width:44px;height:44px}
.dg-login [data-close-sidebar]::before,.dg-login [data-close-sidebar]::after {content:none!important}
.dg-login [data-close-sidebar] svg {width:22px;height:22px}
#dinaSideLogin.dg-login {isolation:isolate;overflow-x:hidden}
#dinaSideLogin.dg-login > :not(.dg-login-cables) {position:relative}
.dg-login-scene {display:grid!important;grid-template-columns:minmax(0,400px) minmax(0,440px);gap:clamp(40px,7vw,120px);justify-content:center}
.dg-login-scene .dg-login-hero {grid-column:1;grid-row:1;justify-self:start}
.dg-login-scene > .dg-login {grid-column:2;grid-row:1;width:100%;min-width:0;margin:0!important}
.dg-login-cables {opacity:.5;filter:drop-shadow(0 0 5px #17a2b8);animation:dg-cable-drift 14s ease-in-out infinite alternate}
.dg-login-cables .dg-cable-base {stroke-width:1;opacity:.28;stroke-dasharray:none;animation:none}
.dg-login-cables .dg-cable-pulse {stroke-width:2;stroke-linecap:round;stroke-dasharray:2 8 45 945;animation:dg-cable-pulse 12s linear infinite;filter:drop-shadow(0 0 3px #4de0ff)}
.dg-login-cables .dg-cable-pulse path:nth-child(2) {opacity:.65}
.dg-login-cables .dg-cable-pulse path:nth-child(3) {opacity:.45}
@keyframes dg-cable-pulse {to {stroke-dashoffset:-1000}}
@keyframes dg-cable-drift {to {transform:translate3d(12px,-10px,0)}}
.dg-login .dg-drawer-cables {opacity:.13;inset:0;z-index:-1}
.dg-login.dina-login-form-wrapper {max-width:440px}
.dg-login .lost_reset_password {line-height:1.9}
.dg-login input:-webkit-autofill,.dg-login input:-webkit-autofill:is(:hover,:focus,:active) {
 -webkit-box-shadow:0 0 0 1000px var(--dga-soft) inset!important;
 -webkit-text-fill-color:var(--dga-text)!important;caret-color:var(--dga-teal);
}
.dg-login .dg-password-back {position:absolute!important;inset-inline-end:0;top:-64px;width:44px;height:44px;min-height:44px;margin:0;justify-content:center}
.dg-login.dg-password-step .dg-login-heading {padding-inline-end:42px}
.dg-login #dina_login_form .col-12 {position:relative}
.dg-login #dina_login_form .form-group > label {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.dg-login #dina_login_form input.form-control {height:58px;padding-inline-start:44px}
.dg-login .dg-field-icon {position:absolute;inset-inline-start:14px;top:17px;display:flex;color:var(--dga-muted);pointer-events:none}
.dg-login .dg-password-toggle {width:44px;min-width:44px;bottom:7px;display:flex;align-items:center;justify-content:center}
.dg-login .dg-password-toggle.dg-revealed::after {content:'';position:absolute;width:25px;height:2px;background:currentColor;transform:rotate(-45deg)}
.dg-login #dina_login_form .lost-password {display:flex;align-items:center;justify-content:center;min-height:44px;margin:8px 0 0;text-decoration:none}
.dg-login .dg-login-divider {display:flex;align-items:center;gap:12px;margin:12px 0;color:var(--dga-muted);font-size:12px}
.dg-login .dg-login-divider::before,.dg-login .dg-login-divider::after {content:'';height:1px;flex:1;background:var(--dga-line)}
.dg-login .dg-google-button {display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;background:#fff!important;border:1px solid #d6dce2;border-radius:16px;color:#25272b!important;font:inherit;font-size:14px;font-weight:650;cursor:pointer;box-shadow:none}
.dg-login .dg-google-button:active {transform:scale(.98)}
.dg-login .dg-google-status {font-size:13px;line-height:1.9;margin:12px 0;color:var(--dga-muted)}
@media(max-width:800px) {
 .dg-login-scene {grid-template-columns:minmax(0,440px);padding:40px 20px!important}
 .dg-login-scene > .dg-login {grid-column:1}
 .dg-login-scene .dg-login-hero {display:none}
}
@media(max-width:600px) {
 #dinaSideLogin.dg-login::before {display:none}
 #dinaSideLogin.dg-login .dina-side-head::before {content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:40px;height:4px;border-radius:4px;background:var(--dga-control)}
 #dinaSideLogin.dg-login .dina-side-head {margin-bottom:8px}
 .dg-login .dg-login-heading {font-size:22px}
}
@media(prefers-reduced-motion:reduce) {
 .dg-login-cables,.dg-login-cables g {animation:none!important}
 body :is(.dina-merge-btn,.dina-mobile-login-btn) {transition:none!important;transform:none!important}
}
.dg-login #dina_login_form .dina-login-links {display:flex;justify-content:center;gap:8px;margin:0;font-size:12px}
.dg-login #dina_login_form .dina-login-links > :is(.dina-login-phone-btn,.dina-show-register-form) {width:auto;flex:1;margin:0;padding:6px 0;font-size:12px;font-weight:500}
/* Equal viewport halves: RTL puts the hero in the right column. */
.dg-login-scene {grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:48px 0!important;box-sizing:border-box;align-content:center}
.dg-login-scene .dg-login-hero {justify-self:center;align-self:center;align-items:center;text-align:center;width:100%;max-width:none}
.dg-login-scene > .dg-login {justify-self:center;align-self:center;width:calc(100% - 48px);max-width:440px}
/* Center prose without changing native input direction or OTP geometry. */
.dg-login {text-align:center}
.dg-login :is(h1,h2,h3,p,label,legend,.status,.dg-field-error,.dg-login-trust,.dg-login-legal,.dg-login-divider,.dg-google-status,.lost_reset_password,.dina-login-links,a,button,summary) {text-align:center}
.dg-login :is(.dg-login-back,.dina-login-links,.form-check) {justify-content:center}
.dg-login.dg-password-step .dg-login-heading {padding-inline:42px}
/* Packet motion repaints only the contained SVG; three shared glow groups. */
.dg-login-cables {opacity:.78;filter:none;animation:none;contain:strict}
.dg-login-cables svg {overflow:hidden}
.dg-login-cables g {animation:none;stroke-dasharray:none}
.dg-login-cables .dg-cable-layer {stroke-width:1;opacity:.4}
.dg-login-cables .dg-cable-depth-1 {stroke-width:1.4;opacity:.65}
.dg-login-cables .dg-cable-depth-2 {stroke-width:1.8;opacity:.85}
.dg-login-cables .dg-cable-base {stroke-width:inherit;opacity:.22;animation:none;stroke-dasharray:none}
/* Blur the static ambient routes once; moving packets remain unfiltered. */
.dg-login-cables .dg-cable-ambient {filter:blur(3px);opacity:.35;stroke-width:4}
.dg-login-cables .dg-cable-glow {filter:none}
.dg-login-cables .dg-cable-packet {stroke-linecap:round;animation:dg-cable-pulse var(--dg-speed) linear var(--dg-delay) infinite;animation-direction:var(--dg-direction)}
.dg-login-cables .dg-cable-tail {stroke-width:3;stroke-dasharray:20 313 14 319 16 318;opacity:.6}
.dg-login-cables .dg-cable-head {stroke:#a6efff;stroke-width:2;stroke-dasharray:2 331 2 331 2 332}
.dg-login-cables .dg-cable-nodes {opacity:.65;filter:drop-shadow(0 0 4px #72e6ff)}
.dg-login .dg-drawer-cables {opacity:.18}
@media(max-width:800px) {
 .dg-login-scene {grid-template-columns:minmax(0,1fr);padding:32px 0!important}
 .dg-login-scene > .dg-login {grid-column:1;width:calc(100% - 32px)}
}
@media(prefers-reduced-motion:reduce) {
 .dg-login-cables .dg-cable-packet {animation:none!important}
}

/* Cache the soft static glow separately from dash animation. The nearly opaque
   card supplies its own glass tint, avoiding a viewport-sized backdrop repaint. */
.dg-login-cables svg {position:absolute;inset:0}
.dg-login-cables .dg-cable-static {transform:translateZ(0)}
.dg-login-cables .dg-cable-nodes {filter:none}
.dg-login.dina-login-form-wrapper,#dinaSideLogin.dg-login {backdrop-filter:none}

/* Round 5: the whole left half is the login panel (desktop); brighter data flow. */
@media(min-width:801px) {
 .dg-login-scene {padding:0!important;align-content:stretch}
 .dg-login-scene > .dg-login.dina-login-form-wrapper {
  grid-column:2;grid-row:1;width:100%;max-width:none;min-height:100dvh;box-sizing:border-box;
  border-radius:0;border-width:0 0 0 0;border-inline-end:1px solid var(--dga-line);
  display:flex;flex-direction:column;justify-content:center;
  padding:48px max(32px,calc((100% - 400px)/2));
  box-shadow:0 0 80px #10243d1f;
 }
 .dg-login-scene .dg-login-hero {min-height:100dvh;justify-content:center}
}
.dg-login-cables {opacity:1}
.dg-login-cables .dg-cable-layer {opacity:.6}
.dg-login-cables .dg-cable-depth-1 {opacity:.85}
.dg-login-cables .dg-cable-depth-2 {opacity:1}
.dg-login-cables .dg-cable-ambient {opacity:.7;stroke-width:6;filter:blur(5px)}
.dg-login-cables .dg-cable-tail {stroke-width:5;opacity:.95}
.dg-login-cables .dg-cable-head {stroke:#fff;stroke-width:3.2;filter:drop-shadow(0 0 6px #4de0ff) drop-shadow(0 0 12px #17a2b8)}
.dg-login-cables .dg-cable-nodes {opacity:1}
.dg-login-cables .dg-cable-nodes circle {r:5}
@media(prefers-reduced-motion:reduce) {.dg-login-cables .dg-cable-head {filter:none}}

/* Round 5b: no filters on moving strokes (they repaint every frame); fake glow with wider strokes. */
.dg-login-cables .dg-cable-head {filter:none;stroke-width:3.5}
.dg-login-cables .dg-cable-tail {stroke-width:6;opacity:.8}
.dg-login-cables .dg-cable-ambient {filter:none;opacity:.22;stroke-width:9}
.dg-login-cables .dg-cable-packet {will-change:stroke-dashoffset}

/* Mobile keyboard: sheet rides above the keyboard, scrolls, drops decoration. */
@media(max-width:600px) {
 #dinaSideLogin.dg-login {bottom:var(--dg-kb,0px)!important;max-height:calc(var(--dg-vh,100dvh) - 8px);overflow-y:auto;overscroll-behavior:contain;transition:transform 220ms cubic-bezier(.32,.72,0,1),bottom 120ms ease-out}
 html.dg-kb-open #dinaSideLogin.dg-login {padding-bottom:12px}
 html.dg-kb-open #dinaSideLogin .dina-login-logo,html.dg-kb-open #dinaSideLogin .dg-drawer-cables,html.dg-kb-open #dinaSideLogin .dg-login-legal {display:none!important}
 html.dg-kb-open #dinaSideLogin .dg-login-heading {font-size:18px;margin-bottom:12px}
}
