body.robo-auth-page { margin: 0; background: #fff; }
.robo-auth-layout, .robo-auth-layout * { box-sizing: border-box; }
.robo-auth-layout {
    --auth-blue: #0849b3;
    --auth-ink: #232429;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    width: 100%;
    min-height: 100svh;
    color: var(--auth-ink);
    background: #fff;
    font: 400 15px/1.45 "Poppins", "Inter", system-ui, sans-serif;
}
.robo-auth-pane { display: flex; flex-direction: column; min-width: 0; justify-content: center; padding: clamp(32px, 7vh, 76px) 6.2%; }
.robo-auth-content { width: min(100%, clamp(330px, 26vw, 390px)); margin-inline: auto; }
.robo-auth-logo { display: block; width: min(100%, clamp(280px, 23.4vw, 350px)); margin-bottom: 17px; }
.robo-auth-logo img { display: block; width: 100%; height: auto; }
.robo-auth-kicker { margin: 0 0 10px; color: #0849b3; font-size: 12px; font-weight: 750; letter-spacing: .08em; }
.robo-auth-content h1 { margin: 0; color: var(--auth-ink); font-size: clamp(25px, 2vw, 30px); font-weight: 750; letter-spacing: -.028em; line-height: 1.2; }
.robo-auth-notices { margin-top: 12px; }
.robo-auth-notices :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) { margin: 0; }
.robo-auth-layout form.robo-auth-form { display: block; margin: 30px 0 0; padding: 0; border: 0; }
.robo-auth-notices + .robo-auth-form { margin-top: 25px; }
.robo-auth-field { position: relative; margin-bottom: 24px; }
.robo-auth-field label {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 17px;
    margin: 0;
    padding: 0 11px;
    transform: translateY(-50%);
    background: #fff;
    color: #666970;
    font-size: 13px;
    line-height: 1.25;
}
.robo-auth-field:focus-within label { color: #1d60ab; }
.robo-auth-field input {
    display: block;
    width: 100%;
    min-width: 0;
    height: 54px;
    padding: 0 48px 0 20px;
    border: 1px solid #c9cbd1;
    border-radius: 9px;
    color: var(--auth-ink);
    background: #fff;
    font: inherit;
}
.robo-auth-field input::placeholder { color: #70747c; opacity: 1; }
.robo-auth-field input:focus { border-color: #3278c7; outline: 2px solid #c9e1fb; outline-offset: 1px; }
.robo-auth-icon { position: absolute; inset-inline-end: 13px; top: 50%; translate: 0 -50%; display: grid; place-items: center; color: #757b85; }
button.robo-auth-icon { width: 31px; height: 34px; padding: 0; border: 0; background: transparent; cursor: pointer; }
button.robo-auth-icon[hidden] { display: none; }
.robo-auth-submit { display: block; width: 100%; min-height: 50px; padding: 8px 12px; border: 1px solid #2d6fdf; border-radius: 9px; color: #fff; background: var(--auth-blue); font: inherit; font-weight: 650; cursor: pointer; }
.robo-auth-submit:hover { background: #2266db; }
.robo-auth-layout a { color: #1566ac; text-underline-offset: 3px; }
.robo-auth-layout :is(a,button):focus-visible { outline: 2px solid #235eae; outline-offset: 4px; }
.robo-auth-reset { display: block; margin-top: 12px; width: max-content; margin-inline-start: auto; font-size: 13px; }
.robo-auth-form .woocommerce-privacy-policy-text { margin: 0 0 12px; color: #5b6069; font-size: 12px; }
.robo-auth-form .woocommerce-privacy-policy-text p { margin: 0; }
.robo-auth-switch { margin: 24px 0 0; padding: 18px 0 0; border-top: 1px solid #e2eaf5; color: #475970; font-size: 14px; }
.robo-auth-switch a { font-weight: 700; }
.robo-auth-home { display: inline-block; margin-top: 16px; font-size: 13px; }
.robo-auth-intro { margin: 12px 0 0; color: #475970; }
.robo-auth-photo { min-width: 0; position: relative; background: #ece9e4; }
.robo-auth-photo img { position: absolute; inset: 0; width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; }
@media (max-width: 720px) {
    .robo-auth-layout { grid-template-columns: 1fr; }
    .robo-auth-pane { min-height: 0; padding: 42px 24px 28px; }
    .robo-auth-content { width: min(100%, 390px); }
    .robo-auth-logo { width: min(82%, 315px); }
    .robo-auth-photo { height: clamp(160px, 45vw, 280px); }
    .robo-auth-photo img { object-position: 55% 55%; }
}
.robo-auth-google { display: grid; gap: 9px; margin-top: 18px; text-align: center; color: #475970; font-size: 13px; }
.robo-auth-google .nsl-container-buttons { display: block; width: 100%; padding: 0 !important; }
.robo-auth-google .nsl-container-buttons a { display: block; max-width: none; }
.robo-auth-recovery { margin-top: 22px; }
.robo-auth-recovery :is(input[type=text], input[type=password]) { width: 100%; min-height: 48px; border: 1px solid #aabacf; border-radius: 8px; padding: 8px 12px; font: inherit; }
.robo-auth-recovery .woocommerce button.button { background: #0849b3; color: #fff; border-radius: 8px; min-height: 44px; }

body.robo-auth-page { background: #f1f6fd; }
.robo-auth-page #main { padding: clamp(22px, 4vw, 52px) 16px; }
.robo-auth-page .robo-auth-layout {
    width: min(100%, 850px);
    min-height: 0;
    margin-inline: auto;
    grid-template-columns: minmax(0, 1.16fr) minmax(0, .84fr);
    border: 1px solid #dfe8f4;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 46px #132b4914;
}
.robo-auth-page .robo-auth-pane { padding: clamp(22px, 4vw, 41px); }
.robo-auth-page .robo-auth-content { width: min(100%, 365px); }
.robo-auth-page .robo-auth-logo { width: min(100%, 214px); margin-bottom: 17px; }
.robo-auth-page .robo-auth-layout form.robo-auth-form { margin-top: 22px; }
.robo-auth-page .robo-auth-field { margin-bottom: 18px; }
.robo-auth-page .robo-auth-field input { height: 47px; }
.robo-auth-page .robo-auth-submit { min-height: 44px; }
.robo-auth-page .robo-auth-switch { margin-top: 16px; padding-top: 12px; }
.robo-auth-page .robo-auth-google { margin-top: 12px; }
@media (max-width: 640px) {
    .robo-auth-page .robo-auth-layout { grid-template-columns: minmax(0, 1fr); }
    .robo-auth-page .robo-auth-photo { display: none; }
}
