:root {
    --auth-red:#d71920;
    --auth-red-dark:#a90e14;
    --auth-red-soft:#fff0f1;
    --auth-text:#20242b;
    --auth-muted:#707984;
    --auth-border:#dfe3e8;
    --auth-shadow:0 32px 85px rgba(0,0,0,.32);
}

html,body,body.auth-body,.auth-page-root {
    width:100%;
    height:100%;
    min-height:100%;
    margin:0;
}

body.auth-body {
    height:100dvh;
    overflow:hidden;
    background:#07111d;
    font-family:"Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif;
}

button,input,select,textarea { font-family:inherit; }

.auth-page-root,.dada-auth-page {
    width:100%;
    height:100dvh;
    min-height:100dvh;
    overflow:hidden;
}

.dada-auth-page { position:relative; color:#fff; }

.dada-auth-background,.dada-auth-overlay {
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.dada-auth-background {
    z-index:0;
    background:url("/images/auth/dada-property-background.png");
    animation:backgroundZoom 18s ease-in-out infinite alternate;
}

.dada-auth-overlay {
    z-index:1;
    background:linear-gradient(90deg,rgba(4,10,18,.96),rgba(7,16,28,.9) 38%,rgba(5,12,20,.58));
}

.dada-auth-overlay::before {
    content:"";
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 18% 48%,rgba(215,25,32,.14),transparent 34%),
        radial-gradient(circle at 82% 20%,rgba(255,255,255,.1),transparent 28%);
}

.auth-language-header {
    position:absolute;
    top:22px;
    right:28px;
    z-index:30;
}

.auth-language-switcher {
    display:flex;
    align-items:center;
    min-height:52px;
    padding:6px;
    border:1px solid rgba(255,255,255,.52);
    border-radius:999px;
    background:rgba(255,255,255,.94);
    box-shadow:0 16px 38px rgba(0,0,0,.22);
}

.language-switch-form { display:contents; }

.language-option {
    min-height:40px;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:0 17px;
    border:0;
    border-radius:999px;
    color:#3e434b;
    background:transparent;
    font-size:13px;
    font-weight:700;
    cursor:pointer;
}

.language-option.active {
    color:#fff;
    background:linear-gradient(135deg,var(--auth-red),var(--auth-red-dark));
    box-shadow:0 8px 18px rgba(215,25,32,.28);
}

.language-code { min-width:24px; font-size:11px; font-weight:900; }
.language-divider { width:1px; height:24px; background:#d8dce1; }

.dada-auth-container {
    position:relative;
    z-index:5;
    width:min(1540px,calc(100% - 56px));
    height:100dvh;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(540px,630px);
    align-items:center;
    gap:clamp(45px,5vw,90px);
    margin:0 auto;
    padding:80px 0 28px;
}

.auth-brand-section {
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.auth-brand-logo-wrap { width:min(470px,72%); margin-bottom:24px; }
.auth-large-logo {
    display:block;
    width:100%;
    max-height:300px;
    object-fit:contain;
    filter:drop-shadow(0 25px 42px rgba(0,0,0,.5));
    animation:logoFloat 6s ease-in-out infinite;
}

.auth-brand-copy { max-width:720px; }
.auth-brand-eyebrow {
    display:block;
    margin-bottom:15px;
    color:#ff4148;
    font-size:13px;
    font-weight:800;
    letter-spacing:.18em;
}

.auth-brand-copy h1 {
    max-width:700px;
    margin:0 0 18px;
    color:#fff;
    font-size:clamp(42px,4vw,66px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.045em;
}

.auth-brand-copy p {
    max-width:670px;
    margin:0;
    color:rgba(255,255,255,.72);
    font-size:16px;
    line-height:1.65;
}

.auth-feature-row {
    max-width:540px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:30px;
}

.auth-feature-card {
    min-height:84px;
    display:flex;
    align-items:center;
    gap:13px;
    padding:15px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:16px;
    background:rgba(255,255,255,.055);
    backdrop-filter:blur(14px);
}

.auth-feature-card>span {
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:#ff353d;
    background:rgba(215,25,32,.16);
}

.auth-feature-card strong,.auth-feature-card small { display:block; }
.auth-feature-card strong { color:#fff; font-size:13px; }
.auth-feature-card small { margin-top:4px; color:rgba(255,255,255,.58); font-size:11px; }

.auth-login-section {
    width:100%;
    max-width:630px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    justify-self:end;
}

.premium-auth-card {
    position:relative;
    overflow:hidden;
    width:100%;
    min-height:clamp(590px,72dvh,680px);
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(34px,4vh,48px) clamp(40px,3vw,52px) clamp(32px,4vh,44px);
    border:1px solid rgba(255,255,255,.8);
    border-radius:30px;
    color:var(--auth-text);
    background:linear-gradient(145deg,rgba(255,255,255,.985),rgba(247,248,250,.97));
    box-shadow:var(--auth-shadow);
}

.auth-card-accent {
    position:absolute;
    top:0;
    left:50%;
    width:48%;
    height:5px;
    border-radius:0 0 999px 999px;
    background:linear-gradient(90deg,var(--auth-red-dark),#ff343c,var(--auth-red-dark));
    transform:translateX(-50%);
}

.auth-card-logo { display:flex; justify-content:center; margin-bottom:18px; }
.auth-card-logo img { width:205px; max-width:68%; max-height:135px; object-fit:contain; }

.auth-card-heading { margin-bottom:30px; text-align:center; }
.auth-welcome-line {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    margin-bottom:13px;
}
.auth-welcome-line span { width:40px; height:1px; background:linear-gradient(90deg,transparent,var(--auth-red)); }
.auth-welcome-line span:last-child { background:linear-gradient(90deg,var(--auth-red),transparent); }
.auth-welcome-line strong { color:var(--auth-red); font-size:12px; font-weight:800; letter-spacing:.17em; }

.auth-card-heading h2 {
    margin:0 0 10px;
    color:#202329;
    font-size:clamp(29px,2vw,35px);
    font-weight:800;
}

.auth-card-heading p {
    max-width:450px;
    margin:0 auto;
    color:var(--auth-muted);
    font-size:14px;
    line-height:1.6;
}

.auth-validation-summary {
    display:none;
    margin-bottom:18px;
    padding:13px 15px;
    border:1px solid #f0b3b6;
    border-radius:11px;
    color:#a50f15;
    background:#fff0f1;
    font-size:13px;
}

.auth-validation-summary.validation-summary-errors { display:block; }

.auth-form-group { margin-bottom:19px; }
.auth-form-group>label { display:block; margin-bottom:9px; color:#333840; font-size:14px; font-weight:700; }

.auth-input-container { position:relative; display:flex; align-items:center; }
.auth-input-container input {
    width:100%;
    min-height:60px;
    height:60px;
    padding:0 52px 0 57px;
    border:1px solid var(--auth-border);
    border-radius:14px;
    outline:none;
    color:#20242b;
    background:#fff;
    font-size:15px;
}

.auth-input-container input:focus {
    border-color:var(--auth-red);
    box-shadow:0 0 0 4px rgba(215,25,32,.09);
}

.auth-input-icon {
    position:absolute;
    left:17px;
    z-index:2;
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:var(--auth-red);
    background:var(--auth-red-soft);
}

.auth-password-toggle {
    position:absolute;
    right:10px;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    color:#707781;
    background:transparent;
    font-size:17px;
}

.auth-field-validation { display:block; min-height:18px; padding-top:5px; color:#c5151c; font-size:11px; }

.auth-forgot-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin:0 0 24px;
}

.auth-remember-option {
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:#626a75;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
}

.auth-remember-option input { position:absolute; opacity:0; }
.auth-checkbox {
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    border:1px solid #cbd0d6;
    border-radius:6px;
    color:transparent;
    background:#fff;
}
.auth-remember-option input:checked + .auth-checkbox { border-color:var(--auth-red); color:#fff; background:var(--auth-red); }

.auth-forgot-link { display:inline-flex; align-items:center; gap:7px; color:var(--auth-red); font-size:13px; font-weight:700; text-decoration:none; }

.auth-login-button {
    width:100%;
    min-height:60px;
    height:60px;
    display:grid;
    grid-template-columns:34px 1fr 34px;
    align-items:center;
    padding:0 17px;
    border:0;
    border-radius:15px;
    color:#fff;
    background:linear-gradient(135deg,var(--auth-red),#f5242c 52%,var(--auth-red-dark));
    box-shadow:0 15px 30px rgba(215,25,32,.29);
    font-size:16px;
    font-weight:800;
    cursor:pointer;
}

.button-icon {
    width:31px;
    height:31px;
    display:grid;
    place-items:center;
    border-radius:9px;
    background:rgba(255,255,255,.16);
}
.button-arrow { justify-self:end; font-size:18px; }

.auth-separator { display:flex; align-items:center; gap:12px; margin:25px 0 18px; }
.auth-separator span { flex:1; height:1px; background:#e5e8eb; }
.auth-separator small { color:#8b929b; font-size:11px; font-weight:700; }

.auth-support-card {
    display:flex;
    align-items:center;
    gap:13px;
    padding:16px;
    border:1px solid #eceef1;
    border-radius:14px;
    background:linear-gradient(135deg,#fbfbfc,#f4f5f7);
}
.auth-support-icon {
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:13px;
    color:var(--auth-red);
    background:var(--auth-red-soft);
}
.auth-support-card strong { display:block; margin-bottom:4px; color:#30343a; font-size:13px; }
.auth-support-card p { margin:0; color:#7d858f; font-size:12px; }

.auth-page-footer {
    margin-top:12px;
    color:rgba(255,255,255,.66);
    text-align:center;
    font-size:10px;
}

.floating-auth-icon {
    position:absolute;
    z-index:4;
    width:60px;
    height:60px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.1);
    border-radius:18px;
    color:#ff3038;
    background:rgba(8,13,21,.57);
    backdrop-filter:blur(14px);
    font-size:24px;
}
.floating-icon-one { left:4%; top:19%; animation:floatOne 6.8s ease-in-out infinite; }
.floating-icon-two { right:8%; top:18%; animation:floatTwo 7.2s ease-in-out infinite; }
.floating-icon-three { left:7%; bottom:13%; animation:floatThree 6.3s ease-in-out infinite; }

.auth-network-lines { position:absolute; inset:0; z-index:3; pointer-events:none; }
.network-dot {
    position:absolute;
    width:6px;
    height:6px;
    border-radius:50%;
    background:#ff3038;
    box-shadow:0 0 15px rgba(255,48,56,.95);
    animation:dotPulse 2.6s ease-in-out infinite;
}
.dot-1{top:13%;left:8%}.dot-2{top:31%;left:32%}.dot-3{top:67%;left:18%}
.dot-4{top:84%;left:41%}.dot-5{top:15%;right:31%}.dot-6{top:45%;right:9%}

@keyframes backgroundZoom { from{transform:scale(1.03)} to{transform:scale(1.075)} }
@keyframes logoFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-9px)} }
@keyframes floatOne { 0%,100%{transform:translate(0,0) rotate(-3deg)} 50%{transform:translate(8px,-16px) rotate(3deg)} }
@keyframes floatTwo { 0%,100%{transform:translateY(0) rotate(4deg)} 50%{transform:translateY(18px) rotate(-4deg)} }
@keyframes floatThree { 0%,100%{transform:translateY(0) rotate(-2deg)} 50%{transform:translateY(-14px) rotate(3deg)} }
@keyframes dotPulse { 0%,100%{opacity:.4;transform:scale(.75)} 50%{opacity:1;transform:scale(1.35)} }

@media (max-width:1250px) {
    .dada-auth-container {
        width:calc(100% - 40px);
        grid-template-columns:minmax(0,1fr) minmax(480px,560px);
        gap:36px;
    }
    .premium-auth-card { min-height:590px; padding:35px 38px 32px; }
    .auth-feature-row { display:none; }
}

@media (max-width:950px) {
    .dada-auth-container {
        width:min(570px,calc(100% - 24px));
        display:flex;
        align-items:center;
        justify-content:center;
        padding:72px 0 14px;
    }
    .auth-brand-section { display:none; }
    .auth-login-section { max-width:570px; }
    .premium-auth-card {
        min-height:auto;
        max-height:calc(100dvh - 92px);
        padding:clamp(25px,3.5vh,36px) clamp(25px,5vw,42px) clamp(23px,3vh,32px);
        border-radius:24px;
    }
    .auth-language-header { top:12px; right:50%; transform:translateX(50%); }
    .floating-auth-icon,.auth-network-lines,.auth-page-footer { display:none; }
}

@media (max-width:560px) {
    .dada-auth-container { width:calc(100% - 18px); padding:67px 0 9px; }
    .premium-auth-card {
        max-height:calc(100dvh - 78px);
        padding:22px 20px 20px;
        border-radius:21px;
    }
    .auth-card-logo img { width:145px; max-height:84px; }
    .auth-card-heading { margin-bottom:18px; }
    .auth-card-heading h2 { font-size:25px; }
    .auth-card-heading p { font-size:12px; }
    .auth-input-container input { min-height:52px; height:52px; font-size:14px; }
    .auth-remember-option,.auth-forgot-link { font-size:11px; }
    .auth-login-button { min-height:52px; height:52px; font-size:14px; }
    .auth-support-card p { display:none; }
    .language-option { min-height:35px; padding:0 11px; font-size:12px; }
}

@media (max-height:750px) {
    .dada-auth-container { padding-top:64px; padding-bottom:8px; }
    .premium-auth-card {
        min-height:auto;
        max-height:calc(100dvh - 74px);
        padding-top:22px;
        padding-bottom:20px;
    }
    .auth-card-logo img { width:145px; max-height:78px; }
    .auth-card-heading { margin-bottom:15px; }
    .auth-card-heading p,.auth-separator,.auth-support-card,.auth-page-footer { display:none; }
    .auth-input-container input { min-height:50px; height:50px; }
}

@media (max-height:600px) {
    .auth-card-logo,.auth-welcome-line { display:none; }
    .premium-auth-card { padding-top:17px; padding-bottom:15px; }
    .auth-card-heading { margin-bottom:10px; }
    .auth-card-heading h2 { font-size:23px; }
    .auth-input-container input { min-height:44px; height:44px; }
    .auth-login-button { min-height:46px; height:46px; }
}

@media (prefers-reduced-motion:reduce) {
    .dada-auth-background,.auth-large-logo,.floating-auth-icon,.network-dot { animation:none!important; }
}
/* 2026 modal-style login redesign */
.dada-login-screen{min-height:100vh;position:relative;display:grid;place-items:center;padding:6rem 1rem 3rem;overflow:hidden;font-family:"Century Gothic",Arial,sans-serif}.dada-login-bg{position:absolute;inset:0;background:url('/images/auth/dada-property-background.png') center/cover no-repeat;transform:scale(1.03)}.dada-login-overlay{position:absolute;inset:0;background:rgba(9,20,35,.62);backdrop-filter:blur(5px)}.dada-login-topbar{position:absolute;z-index:3;left:clamp(1rem,4vw,4rem);right:clamp(1rem,4vw,4rem);top:1.2rem;display:flex;justify-content:space-between;align-items:center}.dada-login-topbar>img{width:150px;height:56px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}.auth-language-switcher.compact{display:flex;background:rgba(255,255,255,.94);padding:.25rem;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.15)}.auth-language-switcher.compact form{margin:0}.auth-language-switcher.compact button{border:0;background:transparent;border-radius:999px;padding:.45rem .75rem;font-weight:800}.auth-language-switcher.compact button.active{background:#dc2f34;color:#fff}.dada-login-modal{position:relative;z-index:2;width:min(100%,530px);background:rgba(255,255,255,.98);border-radius:34px;padding:2rem 2.1rem 1.5rem;box-shadow:0 35px 80px rgba(0,0,0,.33);overflow:hidden}.dada-login-accent{position:absolute;left:0;right:0;top:0;height:6px;background:linear-gradient(90deg,#dc2f34 0 45%,#f29b2e 45% 72%,#17375e 72%)}.dada-login-card-logo{text-align:center;margin:.15rem 0 .8rem}.dada-login-card-logo img{width:145px;height:58px;object-fit:contain}.dada-login-heading h1{font-size:2rem;font-weight:800;margin:0;color:#0f2538}.dada-login-heading p{margin:.35rem 0 1.5rem;color:#6f6464;font-size:1rem}.dada-login-group{margin-bottom:1rem}.dada-login-group label{display:block;font-weight:800;color:#102637;margin-bottom:.45rem}.dada-login-control{height:58px;border:1px solid #dfd5d3;border-radius:18px;display:flex;align-items:center;background:#fff;box-shadow:0 3px 8px rgba(15,23,42,.08);overflow:hidden}.dada-login-control>i{margin-left:1rem;color:#7d6b68}.dada-login-control input{flex:1;border:0;outline:0;height:100%;padding:0 .85rem;font-size:1rem;background:transparent}.dada-login-control button{border:0;background:transparent;padding:0 1rem;color:#6a5552}.dada-login-options{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin:.25rem 0 1.2rem;font-size:.9rem}.dada-login-options label{display:flex;align-items:center;gap:.4rem}.dada-login-options a{color:#dc2f34;font-weight:800;text-decoration:none}.dada-login-submit{width:100%;height:58px;border:0;border-radius:18px;background:#dc2f34;color:#fff;font-size:1.05rem;font-weight:800;display:flex;align-items:center;justify-content:center;gap:.8rem;box-shadow:0 10px 24px rgba(220,47,52,.28)}.dada-login-submit:hover{background:#bd2227}.dada-login-support{display:flex;justify-content:center;gap:.5rem;align-items:center;margin-top:1.25rem;color:#617080;font-size:.84rem}.dada-login-screen>footer{position:absolute;z-index:2;bottom:1rem;color:rgba(255,255,255,.88);font-size:.8rem;text-align:center}@media(max-width:575px){.dada-login-screen{padding-top:5.5rem}.dada-login-modal{padding:1.55rem 1.15rem 1.2rem;border-radius:24px}.dada-login-heading h1{font-size:1.65rem}.dada-login-topbar>img{width:112px}.dada-login-options{align-items:flex-start;flex-direction:column}.dada-login-control{height:54px}}

/* =========================================================
   DADA corporate login: dark blue, orange and white.
   Compact enough to fit the current viewport without browser zooming.
   ========================================================= */
.dada-login-screen {
    min-height: 100dvh;
    height: 100dvh;
    padding: clamp(4.6rem, 9vh, 6rem) 1rem clamp(2rem, 4vh, 3rem);
    overflow: hidden;
    background: #062b4c;
}

.dada-login-overlay {
    background:
        linear-gradient(110deg, rgba(3, 35, 63, .94), rgba(5, 48, 82, .82) 54%, rgba(255, 121, 0, .24)),
        rgba(3, 35, 63, .45);
    backdrop-filter: blur(4px);
}

.dada-login-topbar {
    top: clamp(.65rem, 2vh, 1.2rem);
}

.auth-language-switcher.compact button.active {
    color: #fff;
    background: #ff7900;
}

.dada-login-modal {
    width: min(100%, 490px);
    max-height: calc(100dvh - clamp(6.8rem, 15vh, 9rem));
    padding: clamp(1.15rem, 2.6vh, 1.8rem) clamp(1.15rem, 2.8vw, 1.9rem) clamp(1rem, 2.2vh, 1.4rem);
    border: 1px solid rgba(255,255,255,.9);
    border-radius: clamp(20px, 3vw, 30px);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    box-shadow: 0 28px 70px rgba(0, 24, 45, .38);
}

.dada-login-accent {
    height: 6px;
    background: linear-gradient(90deg, #062b4c 0 42%, #ff7900 42% 78%, #ffffff 78% 100%);
}

.dada-login-card-logo {
    margin: 0 0 clamp(.45rem, 1.4vh, .75rem);
}

.dada-login-card-logo img {
    width: clamp(112px, 17vh, 145px);
    height: clamp(42px, 7vh, 58px);
}

.dada-login-heading h1 {
    color: #062b4c;
    font-size: clamp(1.5rem, 3.5vh, 1.95rem);
}

.dada-login-heading p {
    margin: .25rem 0 clamp(.8rem, 2.4vh, 1.3rem);
    color: #607182;
    font-size: clamp(.85rem, 1.8vh, .98rem);
}

.dada-login-group {
    margin-bottom: clamp(.65rem, 1.7vh, .95rem);
}

.dada-login-group label {
    margin-bottom: .35rem;
    color: #062b4c;
}

.dada-login-control {
    height: clamp(48px, 7vh, 56px);
    border-color: #d6e0e8;
    border-radius: 15px;
}

.dada-login-control:focus-within {
    border-color: #ff7900;
    box-shadow: 0 0 0 3px rgba(255, 121, 0, .13);
}

.dada-login-control > i,
.dada-login-control button,
.dada-login-options a {
    color: #ff7900;
}

.dada-login-options {
    margin: .15rem 0 clamp(.75rem, 1.8vh, 1.05rem);
}

.dada-login-submit {
    height: clamp(48px, 7vh, 56px);
    border-radius: 15px;
    background: #ff7900;
    box-shadow: 0 10px 24px rgba(255, 121, 0, .28);
}

.dada-login-submit:hover,
.dada-login-submit:focus-visible {
    background: #e96f00;
}

.dada-login-support {
    margin-top: clamp(.7rem, 1.8vh, 1.05rem);
    color: #536b80;
}

.dada-login-support i {
    color: #ff7900;
}

.dada-login-screen > footer {
    bottom: clamp(.35rem, 1.2vh, .8rem);
}

@media (max-height: 700px) {
    .dada-login-screen {
        padding-top: 4.35rem;
        padding-bottom: 1.65rem;
    }
    .dada-login-modal {
        max-height: calc(100dvh - 5.8rem);
        padding-top: 1rem;
        padding-bottom: .85rem;
    }
    .dada-login-card-logo img { width: 108px; height: 40px; }
    .dada-login-heading h1 { font-size: 1.42rem; }
    .dada-login-heading p { margin-bottom: .65rem; font-size: .82rem; }
    .dada-login-group { margin-bottom: .55rem; }
    .dada-login-control { height: 46px; }
    .dada-login-options { margin-bottom: .65rem; font-size: .8rem; }
    .dada-login-submit { height: 46px; }
    .dada-login-support { margin-top: .55rem; font-size: .75rem; }
}

@media (max-width: 575px) {
    .dada-login-screen {
        place-items: center;
        padding: 4.3rem .65rem 1.6rem;
    }
    .dada-login-topbar { left: .75rem; right: .75rem; }
    .dada-login-topbar > img { width: 96px; height: 42px; }
    .dada-login-modal {
        width: 100%;
        max-height: calc(100dvh - 5.4rem);
        padding: 1rem;
        border-radius: 20px;
    }
    .dada-login-options {
        align-items: center;
        flex-direction: row;
        flex-wrap: wrap;
    }
}


/* DADA bilingual system title between logo and language selector */
.dada-login-system-name{position:absolute;left:50%;transform:translateX(-50%);font-size:clamp(1.05rem,2vw,1.55rem);font-weight:700;letter-spacing:.03em;color:#fff;text-align:center;white-space:nowrap;text-shadow:0 2px 8px rgba(0,0,0,.28)}
@media(max-width:767.98px){.dada-login-topbar{align-items:flex-start}.dada-login-system-name{position:static;transform:none;order:3;width:100%;margin-top:.6rem;white-space:normal;font-size:1rem}.dada-login-topbar{flex-wrap:wrap}}

/* =========================================================
   DADA LOGIN LOGO ENHANCEMENT
   Large, visible logo inside a circular white background.
   This block is intentionally placed last so it overrides
   earlier login-logo rules without affecting other pages.
   ========================================================= */

.dada-login-card-logo {
    position: relative;
    z-index: 5;
    width: clamp(124px, 16vh, 154px);
    height: clamp(124px, 16vh, 154px);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto clamp(.75rem, 1.8vh, 1.1rem);
    padding: clamp(13px, 1.8vh, 18px);
    border: 4px solid #ff7900;
    border-radius: 50%;
    background: #ffffff;
    box-shadow:
        0 16px 34px rgba(0, 34, 63, .24),
        0 0 0 7px rgba(6, 43, 76, .10);
    overflow: hidden;
    isolation: isolate;
}

.dada-login-card-logo::before {
    content: "";
    position: absolute;
    inset: 7px;
    z-index: -1;
    border: 1px solid rgba(6, 43, 76, .10);
    border-radius: 50%;
    background:
        radial-gradient(circle at 35% 28%, #ffffff 0 34%, #f4f8fb 100%);
}

.dada-login-card-logo img {
    width: 100%;
    height: 100%;
    max-width: none;
    max-height: none;
    display: block;
    object-fit: contain;
    object-position: center;
    filter: none;
}

.dada-login-card-logo:hover {
    transform: translateY(-2px);
    box-shadow:
        0 20px 42px rgba(0, 34, 63, .28),
        0 0 0 8px rgba(255, 121, 0, .12);
}

.dada-login-card-logo {
    transition:
        transform .22s ease,
        box-shadow .22s ease;
}

/* Keep the login card compact enough for normal browser zoom. */
.dada-login-modal {
    padding-top: clamp(1rem, 2.2vh, 1.45rem);
}

@media (max-height: 760px) {
    .dada-login-card-logo {
        width: 112px;
        height: 112px;
        padding: 12px;
        margin-bottom: .55rem;
        border-width: 3px;
        box-shadow:
            0 12px 26px rgba(0, 34, 63, .22),
            0 0 0 5px rgba(6, 43, 76, .09);
    }
}

@media (max-height: 650px) {
    .dada-login-card-logo {
        width: 90px;
        height: 90px;
        padding: 10px;
        margin-bottom: .35rem;
    }
}

@media (max-width: 575px) {
    .dada-login-card-logo {
        width: 116px;
        height: 116px;
        padding: 12px;
        margin-bottom: .65rem;
        border-width: 3px;
    }
}

@media (max-width: 380px) {
    .dada-login-card-logo {
        width: 100px;
        height: 100px;
        padding: 10px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dada-login-card-logo {
        transition: none;
    }

    .dada-login-card-logo:hover {
        transform: none;
    }
}


/* ==========================================================
   MOBILE HEADER FIX
   Prevent system title overlapping the logo on phones.
   ========================================================== */

@media (max-width:768px){

    .dada-login-topbar{
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:wrap;
        gap:12px;
    }

    .dada-login-topbar-logo{
        width:74px;
        height:74px;
        padding:7px;
    }

    /* Hide long title on phones */
    .dada-login-system-name{
        display:none !important;
    }

    .auth-language-switcher.compact{
        margin-left:auto;
    }

    .dada-login-modal{
        margin-top:18px;
    }

    .dada-login-card-logo{
        width:108px;
        height:108px;
        padding:10px;
        margin-bottom:.7rem;
    }
}

@media (max-width:480px){

    .dada-login-topbar{
        left:.75rem;
        right:.75rem;
        top:.65rem;
    }

    .dada-login-topbar-logo{
        width:68px;
        height:68px;
    }

    .dada-login-modal{
        width:100%;
        max-height:calc(100dvh - 95px);
        border-radius:22px;
    }

    .dada-login-heading h1{
        font-size:1.7rem;
    }

    .dada-login-heading p{
        font-size:.9rem;
    }
}

/* ==========================================================
   COMPACT MOBILE LOGIN CARD
   Fits the complete login form on smaller phone screens.
   ========================================================== */

@media (max-width: 768px) {
    .dada-login-screen {
        min-height: 100dvh;
        height: 100dvh;
        padding: 4.2rem .65rem 1rem;
        overflow: hidden;
    }

    .dada-login-topbar {
        top: .55rem;
        left: .7rem;
        right: .7rem;
    }

    .dada-login-topbar-logo {
        width: 64px;
        height: 64px;
        padding: 7px;
        border-width: 2px;
    }

    .auth-language-switcher.compact {
        min-height: 42px;
        padding: 3px;
    }

    .auth-language-switcher.compact button {
        padding: .38rem .65rem;
        font-size: .9rem;
    }

    .dada-login-modal {
        width: min(100%, 420px);
        max-height: calc(100dvh - 5.1rem);
        margin-top: 0;
        padding: .85rem 1rem .8rem;
        border-radius: 20px;
        overflow-y: auto;
        scrollbar-width: thin;
    }

    .dada-login-card-logo {
        width: 88px;
        height: 88px;
        padding: 9px;
        margin-bottom: .45rem;
        border-width: 3px;
        box-shadow:
            0 10px 22px rgba(0, 34, 63, .20),
            0 0 0 4px rgba(6, 43, 76, .08);
    }

    .dada-login-heading {
        text-align: left;
    }

    .dada-login-heading h1 {
        font-size: 1.55rem;
        line-height: 1.1;
        margin-bottom: .15rem;
    }

    .dada-login-heading p {
        margin: 0 0 .65rem;
        font-size: .84rem;
        line-height: 1.35;
    }

    .dada-login-group {
        margin-bottom: .55rem;
    }

    .dada-login-group label {
        margin-bottom: .25rem;
        font-size: .9rem;
    }

    .dada-login-control {
        height: 46px;
        border-radius: 13px;
    }

    .dada-login-control > i {
        margin-left: .85rem;
        font-size: .95rem;
    }

    .dada-login-control input {
        padding: 0 .7rem;
        font-size: .9rem;
    }

    .dada-login-control button {
        padding: 0 .8rem;
    }

    .auth-field-validation {
        min-height: 14px;
        padding-top: 2px;
        font-size: 10px;
    }

    .dada-login-options {
        margin: .05rem 0 .6rem;
        gap: .5rem;
        font-size: .76rem;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        flex-wrap: nowrap;
    }

    .dada-login-options label {
        gap: .3rem;
        white-space: nowrap;
    }

    .dada-login-options a {
        white-space: nowrap;
        font-size: .76rem;
    }

    .dada-login-submit {
        height: 46px;
        border-radius: 13px;
        font-size: .92rem;
    }

    .dada-login-support {
        margin-top: .45rem;
        font-size: .72rem;
    }

    .dada-login-screen > footer {
        bottom: .2rem;
        font-size: .66rem;
    }
}

@media (max-width: 420px) {
    .dada-login-screen {
        padding-left: .45rem;
        padding-right: .45rem;
    }

    .dada-login-modal {
        width: 100%;
        padding: .75rem .85rem .7rem;
        border-radius: 18px;
    }

    .dada-login-topbar-logo {
        width: 58px;
        height: 58px;
        padding: 6px;
    }

    .dada-login-card-logo {
        width: 80px;
        height: 80px;
        padding: 8px;
    }

    .dada-login-heading h1 {
        font-size: 1.42rem;
    }

    .dada-login-control {
        height: 44px;
    }

    .dada-login-submit {
        height: 44px;
    }
}

@media (max-height: 700px) and (max-width: 768px) {
    .dada-login-screen {
        padding-top: 3.85rem;
        padding-bottom: .45rem;
    }

    .dada-login-topbar-logo {
        width: 54px;
        height: 54px;
        padding: 6px;
    }

    .dada-login-modal {
        max-height: calc(100dvh - 4.45rem);
        padding-top: .65rem;
        padding-bottom: .6rem;
    }

    .dada-login-card-logo {
        width: 72px;
        height: 72px;
        padding: 7px;
        margin-bottom: .3rem;
    }

    .dada-login-heading h1 {
        font-size: 1.3rem;
    }

    .dada-login-heading p {
        margin-bottom: .45rem;
        font-size: .78rem;
    }

    .dada-login-group {
        margin-bottom: .4rem;
    }

    .dada-login-control {
        height: 42px;
    }

    .dada-login-options {
        margin-bottom: .45rem;
    }

    .dada-login-submit {
        height: 42px;
    }

    .dada-login-support {
        margin-top: .35rem;
    }
}

@media (max-height: 600px) and (max-width: 768px) {
    .dada-login-card-logo {
        width: 60px;
        height: 60px;
        padding: 6px;
    }

    .dada-login-heading p,
    .dada-login-support {
        display: none;
    }

    .dada-login-heading {
        margin-bottom: .35rem;
    }

    .dada-login-screen > footer {
        display: none;
    }
}

/* ==========================================================
   MOBILE SYSTEM TITLE FIX
   Keep "Property Management System" visible on mobile,
   place it on its own centered row, and prevent overlap.
   This block must remain at the END of the stylesheet.
   ========================================================== */

@media (max-width: 768px) {
    .dada-login-topbar {
        display: grid;
        grid-template-columns: auto 1fr auto;
        grid-template-rows: auto auto;
        align-items: center;
        column-gap: 12px;
        row-gap: 6px;
        left: .7rem;
        right: .7rem;
        top: .5rem;
    }

    .dada-login-topbar-logo {
        grid-column: 1;
        grid-row: 1;
        justify-self: start;
    }

    .auth-language-switcher.compact {
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
        margin-left: 0;
    }

    .dada-login-system-name {
        display: block !important;
        position: static !important;
        grid-column: 1 / -1;
        grid-row: 2;
        width: 100%;
        margin: 0;
        padding: 0 .5rem;
        transform: none !important;
        color: #fff;
        text-align: center;
        white-space: normal;
        overflow-wrap: anywhere;
        line-height: 1.25;
        font-size: clamp(.86rem, 3.5vw, 1rem);
        font-weight: 700;
        letter-spacing: .015em;
        text-shadow: 0 2px 8px rgba(0, 0, 0, .35);
    }

    .dada-login-screen {
        padding-top: 6.2rem;
    }

    .dada-login-modal {
        margin-top: 0;
        max-height: calc(100dvh - 7rem);
    }
}

@media (max-width: 420px) {
    .dada-login-topbar {
        column-gap: 8px;
        row-gap: 4px;
    }

    .dada-login-system-name {
        padding: 0 .2rem;
        font-size: .84rem;
    }

    .dada-login-screen {
        padding-top: 5.9rem;
    }

    .dada-login-modal {
        max-height: calc(100dvh - 6.6rem);
    }
}

@media (max-height: 700px) and (max-width: 768px) {
    .dada-login-system-name {
        font-size: .78rem;
        line-height: 1.15;
    }

    .dada-login-screen {
        padding-top: 5.35rem;
    }

    .dada-login-modal {
        max-height: calc(100dvh - 5.85rem);
    }
}

@media (max-height: 600px) and (max-width: 768px) {
    .dada-login-system-name {
        font-size: .99rem;
    }

    .dada-login-screen {
        padding-top: 5rem;
    }

    .dada-login-modal {
        max-height: calc(100dvh - 5.35rem);
    }
}
