.auth-page{margin:0;background:#f1f7f6;color:#073b54;font:16px/1.55 "Segoe UI",system-ui,sans-serif}.auth-page *{box-sizing:border-box}.auth-page [hidden],.account-bar[hidden]{display:none!important}.auth-layout{min-height:100svh;display:grid;grid-template-columns:minmax(320px,1fr) minmax(380px,1.1fr)}.auth-brand{background:#006e72;color:#fff;padding:48px clamp(30px,6vw,88px);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-brand:after{content:"";position:absolute;width:430px;height:430px;border:1px solid #ffffff21;border-radius:50%;bottom:-180px;left:-220px;pointer-events:none}.auth-wordmark{color:inherit;text-decoration:none;font-size:36px;font-weight:800;letter-spacing:-1.8px;line-height:1.2}.auth-wordmark span{display:block;font-size:10px;letter-spacing:3px;font-weight:600;margin-top:9px;color:#bce7df}.auth-intro{padding:60px 0}.auth-eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:#007a76}.auth-brand .auth-eyebrow{color:#a7e4d9}.auth-intro h1{font-size:clamp(40px,4.6vw,66px);line-height:1.06;letter-spacing:-2.5px;margin:22px 0}.auth-intro p{color:#d2edeb;max-width:350px;font-size:16px}.auth-label-art{max-width:290px;margin-top:36px;padding:22px 24px;background:#edf7f3;color:#073b54;transform:rotate(-4deg);border-radius:4px;box-shadow:8px 10px 0 #004b50}.auth-label-art span{font-size:12px}.auth-label-art strong{display:block;border-top:1px solid #aac6bf;margin-top:12px;padding-top:12px;font-size:15px}.auth-barcode{height:40px;margin:16px 0 8px;background:repeating-linear-gradient(90deg,#073b54 0 2px,transparent 2px 5px,#073b54 5px 6px,transparent 6px 10px,#073b54 10px 14px,transparent 14px 17px)}.auth-label-art small{font-size:9px;letter-spacing:2px}.auth-brand-foot{color:#b8ded8;font-size:12px}.auth-panel{display:grid;place-items:center;padding:48px 30px}.auth-card{width:100%;max-width:410px}.auth-card h2{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:16px 0 12px}.auth-card>p{color:#637b82;font-size:14px}.auth-tabs{display:flex;padding:5px;background:#e1ece9;border-radius:12px;margin:28px 0}.auth-page button{font:inherit;cursor:pointer}.auth-tabs button{flex:1;padding:11px 8px;border:0;border-radius:8px;background:transparent;color:#426268;font-size:13px;font-weight:700}.auth-tabs button[aria-pressed=true]{background:white;color:#006e72;box-shadow:0 2px 7px #073b5410}.auth-page label{display:block;font-weight:650;font-size:13px;margin-bottom:18px}.auth-page input{display:block;width:100%;padding:14px;margin-top:7px;border:1px solid #bdd2ce;border-radius:10px;background:#fff;color:#073b54;font-family:inherit;font-size:16px;line-height:1.3;text-transform:none;min-height:50px}.auth-page input::placeholder{color:#8ba09f}.auth-page input:focus{outline:3px solid #007f7c21;border-color:#007f7c}.auth-submit{width:100%;padding:15px;border:0;border-radius:10px;background:#006e72;color:#fff;font-weight:700;transition:background .2s}.auth-submit:hover{background:#00585c}.auth-page button:disabled{opacity:.6;cursor:wait}.auth-page button:focus-visible,.auth-page a:focus-visible{outline:3px solid #22a99d;outline-offset:3px}.auth-link{display:block;margin:14px auto 0;border:0;padding:4px;background:none;color:#007b76;font-size:13px!important;text-decoration:underline;text-underline-offset:4px}.auth-help{font-size:12px;color:#637b82}.auth-message{margin:14px 0 0;min-height:22px}.auth-message.error{background:#fff0ed;border:1px solid #e4b4ac;color:#912a20;padding:12px;border-radius:8px}.auth-message.success{background:#e0f3e8;border:1px solid #afd1ba;color:#15572f;padding:12px;border-radius:8px}.auth-footnote{font-size:11px!important;text-align:center;margin-top:28px!important}.account-bar{display:flex;justify-content:flex-end;align-items:center;gap:12px;flex-wrap:wrap;max-width:1050px;margin:12px auto;padding:0 15px;font:13px/1.4 system-ui,sans-serif;color:#073b54}.account-bar button{padding:9px 14px;background:#006e72;color:#fff;border:0;border-radius:9px;cursor:pointer}.account-bar [role=status]{color:#912a20}@media(max-width:760px){.auth-layout{grid-template-columns:1fr}.auth-brand{padding:24px 28px}.auth-wordmark{font-size:28px}.auth-intro{padding:22px 0 0}.auth-intro h1{font-size:36px;letter-spacing:-1.3px;margin:12px 0}.auth-intro p{max-width:none;margin:12px 0 0;font-size:14px}.auth-label-art,.auth-brand-foot{display:none}.auth-panel{padding:34px 24px 48px}.auth-card h2{font-size:28px}}

/* Safe area superior para notch, cámara frontal y barra de estado. */
:root{--acdishop-safe-area-top:env(safe-area-inset-top,0px)}
.auth-brand{padding-top:calc(48px + var(--acdishop-safe-area-top))}
@media(max-width:760px){.auth-brand{padding-top:calc(24px + var(--acdishop-safe-area-top))}}

/* Alinea Buscar DNI junto al campo y evita que invada el mensaje de validación. */
#form .dni-input-wrapper{display:flex!important;align-items:center!important;gap:8px!important}
#form .dni-input-wrapper #dni{flex:1 1 0!important;width:0!important;min-width:0!important;padding-right:12px!important}
#form .dni-input-wrapper>button{position:static!important;inset:auto!important;transform:none!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;height:38px!important;min-height:38px!important;padding:7px 12px!important;font-size:13px!important;line-height:1.2!important;white-space:nowrap!important;border-radius:9px!important;box-shadow:none!important}

/* Alinea el marco de DNI/CE con los demás campos y conserva el espacio bajo su etiqueta. */
#form .dni-input-wrapper{margin-top:5px!important;height:51px!important;min-height:51px!important}
#form .dni-input-wrapper input#dni{height:47px!important;min-height:47px!important}

/* Da más aire al botón de búsqueda dentro del marco en Android web y APK. */
@media(max-width:700px){
 #registryCard .acdishop-registry-search-row .registry-search-wrap input#registrySearch{padding-right:58px!important}
 #registryCard .acdishop-registry-search-row .registry-search-wrap button#registrySearchButton{right:8px!important;width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important}
}

/* Sube ligeramente la lupa para separar su botón del borde inferior del campo. */
@media(max-width:700px){
 #registryCard .acdishop-registry-search-row .registry-search-wrap button#registrySearchButton{top:calc(50% - 3px)!important}
}
