@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/BeVietnamPro-Regular.ttf') format('truetype')}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:500;font-display:swap;src:url('../fonts/BeVietnamPro-Medium.ttf') format('truetype')}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/BeVietnamPro-SemiBold.ttf') format('truetype')}
@font-face{font-family:'Be Vietnam Pro';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/BeVietnamPro-Bold.ttf') format('truetype')}
:root{
  --en-color-navy:#123b56;
  --en-color-navy-strong:#0c2d42;
  --en-color-navy-hover:#174b6d;
  --en-color-primary:#1688f8;
  --en-color-primary-hover:#1274d6;
  --en-color-primary-soft:#e8f4ff;
  --en-color-surface:#ffffff;
  --en-color-canvas:#f4f7fa;
  --en-color-text:#1f2937;
  --en-color-muted:#64748b;
  --en-color-border:#dfe7ef;
  --en-color-danger:#b42318;
  --en-color-danger-soft:#fef3f2;
  --en-color-warning:#b54708;
  --en-color-warning-soft:#fffaeb;
  --en-font-sans:'Be Vietnam Pro','Segoe UI',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
  --en-radius-sm:8px;
  --en-radius-md:12px;
  --en-radius-lg:18px;
  --en-shadow-card:0 1px 2px rgba(15,23,42,.06),0 12px 32px rgba(15,23,42,.08);
  --en-focus-ring:0 0 0 3px rgba(22,136,248,.2);
}
.en-ui-auth *,.en-ui-auth *::before,.en-ui-auth *::after{box-sizing:border-box}
.en-ui-auth{margin:0;min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--en-color-canvas);color:var(--en-color-text);font-family:var(--en-font-sans);-webkit-font-smoothing:antialiased}
.en-ui-auth-card{width:min(420px,100%);padding:32px;background:var(--en-color-surface);border:1px solid var(--en-color-border);border-radius:var(--en-radius-lg);box-shadow:var(--en-shadow-card)}
.en-ui-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.en-ui-brand-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:var(--en-radius-md);background:linear-gradient(135deg,var(--en-color-primary),#0ea5e9);color:#fff;font-size:14px;font-weight:800;letter-spacing:.04em}
.en-ui-brand-mark img{display:block;width:100%;height:100%;border-radius:inherit;object-fit:contain;background:#fff}
.en-ui-brand-copy{display:flex;flex-direction:column;min-width:0}
.en-ui-brand-copy strong{font-size:17px;line-height:1.25;color:var(--en-color-navy)}
.en-ui-brand-copy small{margin-top:2px;color:var(--en-color-muted);font-size:12px;line-height:1.4}
.en-ui-auth-title{margin:0;color:var(--en-color-navy);font-size:23px;line-height:1.25}
.en-ui-auth-copy{margin:8px 0 24px;color:var(--en-color-muted);font-size:14px;line-height:1.55}
.en-ui-alert{margin:0 0 16px;padding:11px 12px;border:1px solid transparent;border-radius:var(--en-radius-sm);font-size:13px;line-height:1.45}
.en-ui-alert-danger{border-color:#fecdca;background:var(--en-color-danger-soft);color:var(--en-color-danger)}
.en-ui-alert-warning{border-color:#fedf89;background:var(--en-color-warning-soft);color:#7a2e0e}
.en-ui-field{display:grid;gap:6px;margin-top:16px}
.en-ui-field label{font-size:13px;font-weight:700;color:var(--en-color-text)}
.en-ui-input{width:100%;min-height:42px;padding:9px 11px;border:1px solid #cfd6df;border-radius:var(--en-radius-sm);background:#fff;color:var(--en-color-text);font:inherit}
.en-ui-input:hover{border-color:#98a2b3}
.en-ui-input:focus-visible{border-color:var(--en-color-primary);outline:0;box-shadow:var(--en-focus-ring)}
.en-ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 16px;border:1px solid transparent;border-radius:var(--en-radius-sm);font:inherit;font-size:14px;font-weight:700;text-align:center;text-decoration:none;cursor:pointer}
.en-ui-button:focus-visible{outline:0;box-shadow:var(--en-focus-ring)}
.en-ui-button-primary{border-color:var(--en-color-primary);background:var(--en-color-primary);color:#fff}
.en-ui-button-primary:hover{border-color:var(--en-color-primary-hover);background:var(--en-color-primary-hover)}
.en-ui-button-warning{border-color:var(--en-color-warning);background:var(--en-color-warning);color:#fff}
.en-ui-button-warning:hover{filter:brightness(.94)}
.en-ui-auth-actions{margin-top:20px}
@media(max-width:480px){.en-ui-auth{padding:16px}.en-ui-auth-card{padding:24px}}
