/* BarberPro 1.1.0 — login móvil independiente */
.auth-body{min-height:100dvh;padding:max(18px,env(safe-area-inset-top,0px)) 18px max(18px,env(safe-area-inset-bottom,0px));background:radial-gradient(circle at 8% 0,rgba(181,138,69,.16),transparent 31%),radial-gradient(circle at 100% 100%,rgba(43,33,28,.10),transparent 28%),#f2eee8;display:grid;place-items:center;overflow-x:hidden}
.auth-shell{width:min(1060px,100%);min-height:min(680px,calc(100dvh - 36px));border:1px solid #ded3c6;border-radius:30px;background:#fff;box-shadow:0 28px 70px rgba(32,23,17,.18);overflow:hidden;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr)}
.auth-showcase{position:relative;padding:36px 38px;background:linear-gradient(145deg,#151210,#30231c 58%,#76522e);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.auth-showcase::before,.auth-showcase::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.10);border-radius:50%;pointer-events:none}.auth-showcase::before{width:430px;height:430px;right:-220px;top:-220px}.auth-showcase::after{width:250px;height:250px;left:-140px;bottom:-150px}.auth-showcase>*{position:relative;z-index:1}
.auth-logo{min-width:0;display:flex;align-items:center;gap:11px}.auth-logo>span{width:50px;height:50px;flex:0 0 50px;border:1px solid rgba(255,255,255,.18);border-radius:17px;background:rgba(255,255,255,.11);display:grid;place-items:center;font-size:.84rem;font-weight:950;box-shadow:0 10px 24px rgba(0,0,0,.14)}.auth-logo strong,.auth-logo small{display:block}.auth-logo strong{font-size:1rem}.auth-logo small{font-size:.58rem;color:#eadcc7}
.auth-showcase__copy{margin:34px 0 20px}.auth-badge{display:inline-flex;padding:7px 10px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:rgba(255,255,255,.08);color:#e8c98f;font-size:.55rem;font-weight:950;letter-spacing:.12em}.auth-showcase__copy h1{max-width:610px;margin:14px 0 12px;font-size:clamp(2rem,4vw,3rem);line-height:1.02;letter-spacing:-.055em}.auth-showcase__copy p{max-width:600px;margin:0;color:#e6dbcd;font-size:.75rem;line-height:1.55}.auth-benefits{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.auth-benefits span{min-height:32px;padding:0 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.07);display:inline-flex;align-items:center;gap:6px;font-size:.52rem;font-weight:800}.auth-benefits .ui-icon{width:15px;height:15px}
.auth-preview{position:relative;height:184px;border:1px solid rgba(255,255,255,.15);border-radius:28px;background:radial-gradient(circle at center,rgba(197,155,90,.19),transparent 42%),rgba(255,255,255,.045);display:grid;place-items:center;overflow:hidden}.auth-chair{width:88px;height:88px;border:1px solid rgba(255,255,255,.22);border-radius:30px;background:rgba(255,255,255,.11);display:grid;place-items:center}.auth-chair .ui-icon{width:42px;height:42px}.auth-pitch__reservation{position:absolute;min-width:154px;padding:9px 10px;border:1px solid rgba(255,255,255,.17);border-radius:14px;background:rgba(255,255,255,.12);box-shadow:0 10px 25px rgba(0,0,0,.13)}.auth-pitch__reservation b,.auth-pitch__reservation small{display:block}.auth-pitch__reservation b{font-size:.7rem}.auth-pitch__reservation small{font-size:.49rem;color:#eee2d0}.auth-pitch__reservation--one{left:18px;top:20px}.auth-pitch__reservation--two{right:18px;bottom:20px}
.auth-panel{padding:42px clamp(30px,5vw,54px);display:flex;flex-direction:column;justify-content:center}.auth-card{width:100%;max-width:430px;margin:auto}.auth-card__head{display:grid;grid-template-columns:54px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:24px}.auth-card__mark{width:54px;height:54px;border-radius:18px;background:linear-gradient(145deg,#231914,#7c572f);color:#fff;display:grid;place-items:center;font-weight:950;box-shadow:0 10px 24px rgba(46,31,21,.2)}.auth-card__head small{color:#9a7446;font-size:.54rem;font-weight:950;letter-spacing:.12em}.auth-card__head h2{margin:3px 0;font-size:1.55rem;letter-spacing:-.04em}.auth-card__head p{margin:0;color:#746a61;font-size:.67rem}
.auth-form{display:grid;gap:15px}.auth-form label{display:grid;gap:7px;color:#51453b;font-size:.68rem;font-weight:900}.auth-field{min-height:54px;border:1px solid #d7cab9;border-radius:16px;background:#fcfaf7;display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:8px;padding:0 13px;transition:border-color .17s ease,box-shadow .17s ease,background .17s ease}.auth-field:focus-within{border-color:#9d743e;background:#fff;box-shadow:0 0 0 4px rgba(157,116,62,.12)}.auth-field>.ui-icon{width:20px;height:20px;color:#86735f}.auth-field input{width:100%;min-height:50px;padding:0;border:0;background:transparent;box-shadow:none;outline:none;color:#211a16;font-size:16px}.auth-field input::placeholder{color:#a0978f}.auth-field button{min-width:70px;min-height:38px;padding:0 10px;border:0;border-radius:11px;background:#f1ebe4;color:#765b40;font-size:.58rem;font-weight:900;cursor:pointer}
.auth-submit{min-height:54px;margin-top:4px;padding:0 18px;border:0;border-radius:17px;background:linear-gradient(145deg,#231914,#76512b);color:#fff;display:flex;align-items:center;justify-content:center;gap:10px;font-size:.75rem;font-weight:950;box-shadow:0 12px 24px rgba(56,37,24,.20);cursor:pointer;transition:transform .17s ease,box-shadow .17s ease,opacity .17s ease}.auth-submit:hover{transform:translateY(-1px);box-shadow:0 15px 30px rgba(56,37,24,.24)}.auth-submit:active{transform:scale(.99)}.auth-submit:disabled{opacity:.68;transform:none;cursor:wait}.auth-submit .ui-icon{width:19px;height:19px}
.auth-message{margin-bottom:15px;padding:11px;border:1px solid #ead5d1;border-radius:14px;background:#fff8f7;color:#8f3943;display:flex;gap:8px;align-items:center;font-size:.63rem}.auth-message--success{border-color:#d3e3d7;background:#f5faf6;color:#356348}.auth-message .ui-icon{width:17px;height:17px}.auth-security{margin-top:18px;padding:11px;border-radius:14px;background:#f7f1e8;color:#756555;display:flex;align-items:flex-start;gap:8px;font-size:.58rem;line-height:1.45}.auth-security .ui-icon{width:17px;height:17px;color:#77542f}.auth-footer{margin-top:18px;text-align:center;color:#8c8177;font-size:.54rem}

@media(max-width:820px){
  .auth-body{padding:0;background:#fff;display:block}
  .auth-shell{width:100%;min-height:100dvh;border:0;border-radius:0;box-shadow:none;grid-template-columns:1fr;overflow:visible}
  .auth-showcase{min-height:238px;padding:max(22px,calc(16px + env(safe-area-inset-top,0px))) 20px 22px;justify-content:flex-start}
  .auth-showcase__copy{margin:24px 0 0}.auth-showcase__copy h1{max-width:520px;margin:11px 0 0;font-size:clamp(1.65rem,8vw,2.15rem)}.auth-showcase__copy p,.auth-benefits,.auth-preview{display:none}
  .auth-panel{min-height:calc(100dvh - 238px);padding:28px 20px calc(28px + env(safe-area-inset-bottom,0px));justify-content:flex-start;background:#fff}
  .auth-card{max-width:520px}.auth-card__head{margin-bottom:20px}.auth-card__head h2{font-size:1.4rem}
}
@media(max-width:430px){
  .auth-showcase{min-height:214px;padding-inline:17px}.auth-logo>span{width:46px;height:46px;flex-basis:46px}.auth-showcase__copy{margin-top:20px}.auth-showcase__copy h1{font-size:1.58rem;line-height:1.06}
  .auth-panel{min-height:calc(100dvh - 214px);padding:24px 16px calc(24px + env(safe-area-inset-bottom,0px))}.auth-card__mark{width:50px;height:50px}.auth-card__head{grid-template-columns:50px minmax(0,1fr);gap:10px}.auth-card__head h2{font-size:1.28rem}.auth-field{min-height:52px}.auth-submit{min-height:52px}
}
@media(max-width:350px){.auth-showcase__copy h1{font-size:1.43rem}.auth-panel{padding-inline:12px}.auth-card__head p{font-size:.61rem}.auth-field button{min-width:62px;padding-inline:7px}}
@media(max-height:650px) and (max-width:820px){.auth-showcase{min-height:165px}.auth-showcase__copy{margin-top:12px}.auth-showcase__copy h1{font-size:1.42rem}.auth-panel{min-height:calc(100dvh - 165px);padding-top:18px}.auth-card__head{margin-bottom:14px}.auth-security{margin-top:12px}}
@media(prefers-reduced-motion:reduce){.auth-field,.auth-submit{transition:none!important}}
