:root {
    --entry-navy: #070d1f;
    --entry-navy-soft: #0f172a;
    --entry-blue: #0ea5e9;
    --entry-blue-dark: #0284c7;
    --entry-blue-light: #38bdf8;
    --entry-body: #f8fafc;
    --entry-text: #0f172a;
    --entry-muted: #64748b;
    --entry-border: #e2e8f0;
}

.auth-entry-page,
.auth-entry-page * { box-sizing: border-box; }
.auth-entry-page { min-height:100vh; margin:0; color:var(--entry-text); font-family:'Plus Jakarta Sans',sans-serif !important; background:#050811; }
.auth-entry-page a { text-decoration:none !important; }
.auth-entry-shell { display:flex; align-items:center; justify-content:center; min-height:100vh; padding:24px 12px; background:#eef2f7; }
.auth-entry-card { width:min(100%,420px); padding:28px 20px 20px; background:#fff; border:1px solid #dfe6ee; border-radius:28px; box-shadow:0 18px 40px rgba(15,23,42,.1); }
.auth-entry-brand { display:flex; align-items:center; justify-content:flex-start; gap:10px; width:max-content; margin:0 auto 25px; }
.auth-entry-brand img { display:block; width:54px; height:54px; object-fit:contain; padding:7px; background:linear-gradient(135deg,#0284c7,#38bdf8); border:0; border-radius:14px; box-shadow:0 7px 16px rgba(2,132,199,.3); }
.auth-entry-brand-mark { display:grid; place-items:center; width:52px; height:52px; color:#fff; font-size:22px; background:linear-gradient(135deg,var(--entry-blue-dark),var(--entry-blue-light)); border-radius:15px; }
.auth-entry-brand-copy { display:flex; flex-direction:column; gap:3px; }
.auth-entry-brand-copy strong { color:var(--entry-text); font-size:20px; font-weight:800; }
.auth-entry-brand-copy small { color:var(--entry-muted); font-size:9px; font-weight:700; letter-spacing:.8px; text-transform:uppercase; }
.auth-entry-title { margin:0 0 5px; color:var(--entry-text); text-align:center; font-size:25px; font-weight:800; }
.auth-entry-subtitle { margin:0 0 20px; color:var(--entry-muted); text-align:center; font-size:11px; font-weight:600; }
.auth-entry-label { display:block; margin-bottom:6px; color:var(--entry-muted); font-size:10px; font-weight:800; letter-spacing:.5px; text-transform:uppercase; }
.auth-entry-input { display:block; width:100%; min-height:48px; padding:12px 14px; color:var(--entry-text); font:inherit; font-size:13px; font-weight:700; background:var(--entry-body); border:1px solid var(--entry-border); border-radius:12px; outline:none; }
.auth-entry-input:focus { background:#fff; border-color:var(--entry-blue); box-shadow:0 0 0 3px rgba(14,165,233,.1); }
.auth-entry-button { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:44px; margin-top:14px; padding:12px; color:#fff; font:inherit; font-size:12px; font-weight:800; cursor:pointer; background:linear-gradient(135deg,var(--entry-blue-dark),var(--entry-blue-light)); border:0; border-radius:11px; box-shadow:0 8px 20px rgba(2,132,199,.22); }
.auth-entry-message { margin:0 0 14px; padding:11px 12px; color:#991b1b; font-size:11px; font-weight:700; line-height:1.4; background:#fef2f2; border:1px solid #fecaca; border-radius:10px; }
.auth-entry-status { margin:12px 0 0; color:#991b1b; text-align:center; font-size:11px; font-weight:700; }
.auth-entry-status[data-kind="success"] { color:#166534; }
.auth-entry-divider { display:flex; align-items:center; gap:10px; margin:20px 0 12px; color:#94a3b8; font-size:9px; font-weight:800; }
.auth-entry-divider::before,.auth-entry-divider::after { height:1px; flex:1; background:var(--entry-border); content:''; }
.auth-entry-secondary { display:flex; align-items:center; justify-content:center; gap:7px; min-height:44px; color:var(--entry-blue-dark); font-size:12px; font-weight:800; background:#f0f9ff; border:1px solid #bae6fd; border-radius:11px; }
.auth-entry-branches-label { margin:0 0 10px; color:var(--entry-muted); text-align:left; font-size:9px; font-weight:800; letter-spacing:.7px; text-transform:uppercase; }
.auth-entry-branches { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; max-height:260px; margin-bottom:20px; overflow-y:auto; }
.auth-entry-branch { display:flex; min-width:0; flex-direction:column; align-items:center; justify-content:center; gap:7px; min-height:94px; padding:10px 7px; color:var(--entry-text); cursor:default; background:#f1f5f9; border:2px solid #dfe7f0; border-radius:16px; }
.auth-entry-branch-logo { display:grid; flex:0 0 34px; place-items:center; width:34px; height:34px; overflow:hidden; color:#dc2626; font-size:16px; font-weight:800; background:#fff; border:1px solid #e2e8f0; border-radius:50%; box-shadow:0 2px 5px rgba(15,23,42,.06); }
.auth-entry-branch-logo img { width:100%; height:100%; object-fit:contain; background:#fff; }
.auth-entry-branch-name { max-width:100%; overflow:hidden; font-size:10px; font-weight:800; text-align:center; text-overflow:ellipsis; white-space:nowrap; }
.auth-entry-footer { margin-top:20px; color:var(--entry-muted); text-align:center; font-size:10px; line-height:1.5; }
.auth-entry-footer a { color:var(--entry-blue-dark); font-weight:800; }
@media (max-width:420px) { .auth-entry-shell { padding:20px 12px; } .auth-entry-card { padding:22px 16px 18px; border-radius:20px; } .auth-entry-brand { margin-bottom:20px; } .auth-entry-title { font-size:20px; } }
