.event-auth-shell{width:min(400px,calc(100% - 32px));margin:24px auto 45px;color:#111}
.event-auth-shell .event-auth-card{width:100%;padding:24px;background:#fff;border:1px solid #dedede;color:#111;box-shadow:0 4px 18px rgba(0,0,0,.05)}
.event-auth-card h1{font-size:22px;color:#111}
.event-auth-card p,.event-auth-card label{color:#111}
.event-auth-card a{color:#111;text-decoration:none}
.event-auth-card .event-form{max-width:none}
.event-auth-card .event-form label{font-weight:600;margin:13px 0 6px}
.event-auth-card .event-form input{box-sizing:border-box;width:100%;height:41px;min-height:41px;padding:0 12px;background:#fff;border:1px solid #d8d8d8;color:#111}
.event-auth-card .event-form input::placeholder{color:#777}
.event-auth-card a.event-button.google{box-sizing:border-box;display:flex;width:100%;min-height:42px;align-items:center;justify-content:center;gap:9px;background:#fff;border:1px solid #d8d8d8;color:#111;text-decoration:none;font-weight:600}
.event-auth-card a.event-button.google img{display:block;visibility:visible;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;max-height:16px!important;object-fit:contain;flex:0 0 16px}
.event-auth-card .event-auth-divider{display:flex;align-items:center;gap:12px;margin:22px 0 16px;color:#777;font-size:10px}
.event-auth-card .event-auth-divider:before,.event-auth-card .event-auth-divider:after{content:"";height:1px;flex:1;background:#dedede}
.event-auth-card .event-auth-submit{width:100%;min-height:42px;margin-top:18px;background:#f3f3f3;border:1px solid #d8d8d8;color:#111;font-weight:600}
.event-auth-card .event-auth-switch{text-align:center;margin:26px 0 0;color:#444;font-size:11px}
.event-auth-card .event-auth-switch a{color:#111;text-decoration:none;font-weight:600}
.event-auth-card .event-flash{margin:0 0 16px}
.event-login-panel[hidden]{display:none}
.event-login-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:1300;width:min(400px,calc(100vw - 32px));max-height:calc(100vh - 90px);overflow:auto;background:#fff;border:1px solid #dedede;box-shadow:0 10px 30px rgba(0,0,0,.2)}
.event-login-panel .event-auth-card{padding:24px;border:0;box-shadow:none}
@media(max-width:420px){.event-auth-shell .event-auth-card{padding:22px 18px}}

/* Keep the header login panel independent from page-level form rules. */
#eventLoginPanel{width:min(440px,calc(100vw - 24px));box-sizing:border-box;padding:0;border-radius:6px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px) scale(.88);transform-origin:calc(100% - 42px) 0;transition:opacity .2s ease,transform .38s cubic-bezier(.18,.89,.32,1.22),visibility 0s linear .38s}
#eventLoginPanel.is-open{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);transition:opacity .2s ease,transform .38s cubic-bezier(.18,.89,.32,1.22),visibility 0s}
#eventLoginPanel .event-auth-viewport{overflow:hidden;transition:height .34s ease}
#eventLoginPanel .event-auth-track{display:flex;width:200%;align-items:flex-start;transition:transform .38s cubic-bezier(.2,.75,.25,1);will-change:transform}
#eventLoginPanel .event-auth-view{box-sizing:border-box;flex:0 0 50%;width:50%;min-width:0;margin:0;padding:24px;background:#fff;border:0;box-shadow:none}
#eventLoginPanel .event-auth-view h1{margin:0 0 7px;font-size:22px;line-height:1.25}
#eventLoginPanel .event-auth-view .event-subtitle{margin:0 0 17px;color:#333;font-size:14px;line-height:1.45}
#eventLoginPanel .event-auth-view .event-form{width:100%;max-width:none;margin:0}
#eventLoginPanel .event-auth-view .event-form label{display:block;width:100%;margin:13px 0 6px;font-size:13px;line-height:1.3}
#eventLoginPanel .event-auth-view .event-form input:not([type="hidden"]){display:block;box-sizing:border-box;width:100%;max-width:100%;height:37px;min-height:37px;margin:0;padding:0 14px;border:1px solid #d8d8d8;border-radius:4px;background:#fff;color:#111;font:400 12px Inter,Arial,sans-serif}
#eventLoginPanel .event-auth-view .event-form input[type="hidden"]{display:none}
#eventLoginPanel .event-auth-view .event-form input::placeholder{color:#777}
#eventLoginPanel .event-auth-view a.event-button.google{min-height:44px;padding-left:14px;padding-right:14px;border-radius:4px;font-size:14px}
#eventLoginPanel .event-auth-view .event-auth-divider{margin:20px 0 16px}
#eventLoginPanel .event-auth-view .event-auth-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;margin-top:18px;padding-left:14px;padding-right:14px;border-radius:4px;background:#111;border:1px solid #111;color:#fff;font:600 13px Inter,Arial,sans-serif;cursor:pointer}
#eventLoginPanel .event-auth-view .event-auth-submit:hover{background:#333;border-color:#333}
#eventLoginPanel .event-auth-view .event-auth-switch{margin:19px 0 0;font-size:12px}
#eventLoginPanel .event-auth-view .event-auth-switch a{cursor:pointer}
#eventLoginPanel .event-password-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:13px}
#eventLoginPanel .event-password-grid>div{min-width:0}
#eventLoginPanel .event-password-grid label{margin-top:0!important}
#eventLoginPanel .event-password-wrap{position:relative;width:100%}
#eventLoginPanel .event-password-wrap input{padding-right:40px!important}
#eventLoginPanel .event-password-toggle{position:absolute;top:0;right:2px;width:34px;height:37px;display:grid;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:#555;cursor:pointer}
@media(max-width:420px){#eventLoginPanel .event-auth-view{padding:20px 18px}#eventLoginPanel .event-password-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){#eventLoginPanel,#eventLoginPanel.is-open{transition:none;transform:none}}
