/* Keeps compound login controls isolated from the application-wide form styles. */
.login-page .login-panels{position:relative;padding:18px;border:1px solid #eadfcb;border-radius:12px;background:linear-gradient(145deg,#fffefa,#fffaf1)}
.login-page .login-panel{display:grid;gap:12px}.login-page .login-panel label{margin:0}

/* Decorative country-code selector: a layered, jewel-like focal point for the phone field. */
.login-page .phone-field{position:relative;isolation:isolate;height:58px;padding:0;border:1px solid #d9b260;border-radius:15px;background:linear-gradient(135deg,#fffefb 0%,#fff8e9 100%);box-shadow:inset 0 1px #fff,inset 0 0 0 1px #fff7e7,0 8px 18px #75501312;overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.login-page .phone-field:before{content:"";position:absolute;z-index:-1;inset:0;opacity:.7;background:radial-gradient(circle at 12% 50%,#dca33628 0 1px,transparent 2px),radial-gradient(circle at 18% 50%,#dca3361d 0 1px,transparent 2px);background-size:11px 11px;pointer-events:none}
.login-page .phone-field input{position:relative;z-index:1;min-width:0;flex:1;height:100%;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0;padding:0 16px;color:var(--ink);font:600 11px Alexandria,sans-serif}
.login-page .phone-field input::placeholder{color:#9a8870}.login-page .phone-field input:focus::placeholder{color:#b7a990}
.login-page .country-code{position:relative;z-index:1;align-self:stretch;min-width:122px;display:flex;align-items:center;justify-content:center;gap:5px;padding:0 10px;border:0;border-left:1px solid #e1bd70;border-radius:0;background:linear-gradient(90deg,#fff0c8,#fffaf0);color:#725019;font:700 11px 'DM Sans',sans-serif;box-shadow:inset -1px 0 #fff;cursor:pointer;transition:background .2s ease,color .2s ease}
.login-page .country-code:before{content:"";position:absolute;inset:5px 4px;border:1px solid #e9c66b66;border-radius:9px;pointer-events:none}.login-page .country-code span{font-size:17px;line-height:1;filter:drop-shadow(0 1px 1px #a8782430)}.login-page .country-code b{letter-spacing:.04em}.login-page .country-code i{margin-right:auto;color:#bd8120;font-size:17px;transition:transform .2s ease}
.login-page .country-code:hover{background:#fff4d7;color:#56390c}.login-page .country-code:hover i{transform:translateY(2px)}
.login-page .phone-field:focus-within{border-color:#bf8620;box-shadow:0 0 0 4px #d7a44320,0 12px 24px #75501319;transform:translateY(-1px)}.login-page .phone-field:focus-within .country-code{background:#fff1cd}

.login-page .input-field{height:54px;border-radius:10px;background:#fffdfa}.login-page .input-field input{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:11px!important}.login-page .input-field:focus-within{border-color:#ca8b20;box-shadow:0 0 0 4px #d7a4431c}.login-page .field-note{margin:0 2px 3px;padding:9px 10px;border-right:2px solid #d6a243;background:#fff7e8;font-size:9px}.login-page .login-submit{margin-top:3px;border-radius:10px}.login-page .demo-credentials{margin-top:2px;border-radius:9px}.login-page #email-login .label-row{margin:2px 0 -3px}.login-page #email-login .label-row+.input-field{margin:0}.login-page .social-divider{margin:5px 0 0}.login-page .social-login{margin-top:-2px}.login-page .otp-panel{gap:14px}.login-page .otp-inputs{margin:4px 0}.login-page .otp-inputs input{border:1px solid #e2d8c9!important;border-radius:7px!important;background:#fff!important;box-shadow:none!important}
@media(max-width:420px){.login-page .login-panels{padding:14px}.login-page .phone-field,.login-page .input-field{height:51px}.login-page .phone-field{border-radius:13px}.login-page .country-code{min-width:110px;padding:0 8px;font-size:10px}.login-page .login-panel{gap:10px}}

/* Profile completion benefits from a calmer, more deliberate vertical rhythm. */
.login-page .login-card--profile .form-group--compact{display:block;margin-top:2px;padding:18px;border:1px solid #eadab9;border-radius:11px;background:linear-gradient(145deg,#fffefa,#fff8e9);box-shadow:inset 0 1px #fff,0 10px 25px #7550130b}.login-page .login-card--profile .form-group--compact>label{display:flex;align-items:center;gap:7px;margin:19px 1px 9px;color:#394558;font-size:10px;font-weight:800}.login-page .login-card--profile .form-group--compact>label:first-of-type{margin-top:0}.login-page .login-card--profile .form-group--compact>label:before{content:"";width:6px;height:6px;flex:0 0 6px;border:2px solid #d19a32;border-radius:50%;box-shadow:0 0 0 3px #d19a3214}.login-page .login-card--profile .input-field{height:57px;border-color:#e1c994;border-radius:9px;box-shadow:0 3px 8px #70502008}.login-page .login-card--profile .input-field:hover{border-color:#d6ae60}.login-page .login-card--profile .input-field>i{width:31px;height:31px;margin-right:11px;border-radius:7px;display:grid;place-items:center;background:#fbefd5;color:#bc7d16;font-size:16px}.login-page .login-card--profile .input-field input{padding:0 10px;font-size:11px!important}.login-page .login-card--profile .field-note{margin:8px 1px 0}.login-page .login-card--profile .login-submit{height:53px;margin-top:23px}.login-page .login-card--profile .login-submit i{margin-right:10px}@media(max-width:420px){.login-page .login-card--profile .form-group--compact{padding:15px}.login-page .login-card--profile .form-group--compact>label{margin-top:17px}.login-page .login-card--profile .input-field{height:53px}}
.password-strength{margin:10px 1px 0;padding:10px 11px;border:1px solid #e8dcc5;border-radius:8px;background:#fffdf8;color:#7f776a;font-size:8px;transition:border-color .2s,background .2s}.password-strength__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;font-weight:700}.password-strength__top strong{color:#9aa1a8;font-size:9px}.password-strength__bars{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;direction:ltr}.password-strength__bars span{height:4px;border-radius:99px;background:#e8e2d8;transition:background .25s,box-shadow .25s}.password-strength p{margin:8px 0 0;line-height:1.75}.password-strength[data-state="weak"]{border-color:#f0c5bd;background:#fff8f6}.password-strength[data-state="weak"] .password-strength__top strong{color:#c76458}.password-strength[data-state="weak"] .password-strength__bars .is-active{background:#d76859}.password-strength[data-state="fair"]{border-color:#ebd09a;background:#fffbf2}.password-strength[data-state="fair"] .password-strength__top strong{color:#b57b1e}.password-strength[data-state="fair"] .password-strength__bars .is-active{background:#d59a2d}.password-strength[data-state="strong"]{border-color:#c8ddbb;background:#f8fcf5}.password-strength[data-state="strong"] .password-strength__top strong{color:#4d8a48}.password-strength[data-state="strong"] .password-strength__bars .is-active{background:#64a45b}.password-strength[data-state="excellent"]{border-color:#aed8cd;background:#f3fbf8}.password-strength[data-state="excellent"] .password-strength__top strong{color:#247d69}.password-strength[data-state="excellent"] .password-strength__bars .is-active{background:#2e9b81;box-shadow:0 0 7px #2e9b8140}
.login-page .login-card--profile input[readonly]{cursor:not-allowed;color:#7a6952!important;background:#f8f0df!important}.login-page .login-card--profile input[readonly]::placeholder{color:#a9987d}
