/* Compact authentication only; ordering and signed-in screens retain their layout. */
.auth-wrap .auth{width:min(100%,460px);margin-inline:auto}
.auth-wrap .auth .brand-large{display:none}
.auth-wrap .auth>.card{padding:24px;border-radius:24px;box-shadow:0 8px 30px #173e5d08}
.auth-wrap .auth h1{font-size:26px;line-height:1.2;margin:0 0 6px}
.auth-wrap .auth .card>.sub{font-size:15px;line-height:1.45;margin:0 0 20px}
.auth-wrap .auth .tabs{margin:0 0 20px;padding:4px;border-radius:14px}
.auth-wrap .auth .tabs button{font-size:15px;min-height:44px;padding:10px 8px;border-radius:11px}
.auth-wrap #authForm{display:block}
.auth-wrap #authForm .field{margin:12px 0;gap:6px}
.auth-wrap #authForm .field>span{font-size:14px;font-weight:600}
.auth-wrap #authForm input{min-height:48px;font-size:16px;padding:12px 14px;border-radius:12px}
.auth-wrap #authForm .btn{min-height:46px;font-size:15px;padding:12px 16px;border-radius:12px}
.auth-wrap #authSubmit{margin-top:6px}
.auth-wrap #forgotPassword{margin-top:5px;min-height:44px;background:transparent;border:0;box-shadow:none;font-size:14px;font-weight:500;color:#275b7a;padding:10px}
.auth-wrap .auth-code-option{border-top:1px solid #e6edee;padding-top:4px;margin-top:4px}
.auth-wrap .auth-code-option summary{font-size:14px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;color:#275b7a;list-style:none}
.auth-wrap .auth-code-option summary::-webkit-details-marker{display:none}
.auth-wrap .auth-code-option summary::after{content:'+';font-size:18px}
.auth-wrap .auth-code-option details[open] summary::after{content:'−'}
.auth-wrap .auth-code-option .sub{font-size:14px;line-height:1.4;margin:8px 0}
.auth-wrap .auth .notice{font-size:14px;line-height:1.5;margin-top:12px;padding:12px;border-radius:12px}
.auth-wrap .auth-privacy{text-align:center;margin:14px 0 0;font-size:12px;color:#627578}
.auth-wrap .auth-privacy a{color:inherit;text-underline-offset:3px}
.auth-wrap .auth .foot{font-size:13px;line-height:1.5}
.auth-wrap #authForm .google-signin{display:flex;align-items:center;justify-content:center;gap:12px;position:relative;min-height:48px;border:1px solid #747775;border-radius:24px;background:#fff;color:#1f1f1f;font-family:Arial,sans-serif;font-weight:500;font-size:14px;box-shadow:none;transform:none;animation:none}
.auth-wrap #authForm .google-signin img{width:20px;height:20px;flex:none;object-fit:contain}
.auth-wrap #authForm .google-signin::before,.auth-wrap #authForm .google-signin::after,.auth-wrap #authForm .google-signin .button-water{display:none!important}
.auth-wrap #authForm .google-signin:hover{background:#f8faff}
.auth-wrap #authForm .google-signin:focus-visible,.auth-wrap summary:focus-visible{outline:3px solid #78bada;outline-offset:3px}
.auth-wrap .auth-separator{display:flex;align-items:center;gap:12px;margin:18px 0;color:#708084;font-size:12px}
.auth-wrap .auth-separator::before,.auth-wrap .auth-separator::after{content:'';height:1px;background:#e6edee;flex:1}
.auth-wrap [hidden]{display:none!important}
@media(max-width:480px){.auth-wrap .auth>.card{padding:20px}.auth-wrap .auth h1{font-size:24px}.auth-wrap .auth .guest-entry-hero{margin-bottom:16px}}

.auth-wrap .google-handoff{margin:12px 0 0;padding:16px;border:1px solid #dbe8ed;border-radius:16px;background:linear-gradient(135deg,#f7fbfd,#eff7fa);overflow:hidden;animation:google-handoff-in .35s ease-out}
.auth-wrap .google-handoff-heading{display:flex;align-items:center;gap:10px;color:#254c66;font-size:14px}
.auth-wrap .google-handoff-heading img{flex:none;background:white;border-radius:50%}
.auth-wrap .google-handoff p{margin:8px 0 12px;font-size:13px;line-height:1.45;color:#60737c}
.auth-wrap .google-handoff-progress{display:block;height:3px;border-radius:8px;background:linear-gradient(90deg,#d9edf4,#55a6c3,#d9edf4);background-size:200% 100%;animation:google-handoff-progress 1.6s ease-in-out infinite}
@keyframes google-handoff-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
@keyframes google-handoff-progress{from{background-position:100% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.auth-wrap .google-handoff,.auth-wrap .google-handoff-progress{animation:none}}

/* Anchor the auth card at the top: different form heights must not recenter it. */
.auth-wrap{align-items:start;align-content:start}
.auth-wrap .auth{align-self:start}
/* Reserve the OTP controls and feedback space as soon as the section is opened. */
.auth-wrap .auth-code-option{overflow-anchor:none}
.auth-wrap .auth-code-option [data-code-address]{height:2.8em;overflow:auto;font-size:13px;line-height:1.4;margin:10px 0}
.auth-wrap .auth-code-option:has(details[open])>.notice{height:8em;overflow:auto;box-sizing:border-box;margin:10px 0 0}
.auth-wrap .auth-code-option:has(details[open])>.notice.hidden{display:block!important;visibility:hidden}
