/* Selected login direction: a compact account window, with a separate verification dialog. */
.member-auth-dialog,.member-captcha-dialog { max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:0; border:1px solid #deddd8; border-radius:6px; background:#fbfaf7; color:var(--color-text,#2c2c2c); box-shadow:0 8px 32px rgb(0 0 0 / 10%); overflow:auto; overscroll-behavior:contain; }
.member-auth-dialog { width:400px; }
.member-captcha-dialog { width:340px; }
.member-auth-dialog::backdrop { background:rgb(25 26 23 / 43%); }
.member-captcha-dialog::backdrop { background:rgb(25 26 23 / 21%); }
:is(.member-auth-dialog,.member-captcha-dialog) [hidden] { display:none!important; }
:is(.member-auth-dialog,.member-captcha-dialog) button { cursor:pointer; font:inherit; }
.member-auth-header,.member-captcha-header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.member-auth-header { padding:26px 28px 16px; }
.member-auth-header h2 { margin:0; font-family:var(--font-serif,serif); font-size:22px; font-weight:600; line-height:1.5; }
.member-auth-close { display:flex; align-items:center; justify-content:center; flex:none; width:44px; height:44px; margin:-6px -12px; padding:0; border:0; border-radius:3px; background:transparent; }
.member-auth-close img { display:block; opacity:.6; }
.member-auth-close:hover img { opacity:.9; }
.member-auth-body { padding:0 28px 24px; }
.member-auth-tabs { display:flex; gap:32px; margin-bottom:24px; border-bottom:1px solid #dddcd7; }
.member-auth-tabs button { min-height:44px; padding:0 0 12px; border:0; border-bottom:2px solid transparent; margin-bottom:-1px; background:transparent; color:#343434; font-family:var(--font-serif,serif); font-size:16px; line-height:1.5; }
.member-auth-tabs button.is-active { border-bottom-color:var(--color-accent,#c04851); color:var(--color-accent,#c04851); font-weight:600; }
.member-auth-form { display:flex; flex-direction:column; gap:16px; }
.member-auth-form label { margin:0; }
.member-auth-form input { box-sizing:border-box; width:100%; min-width:0; min-height:50px; padding:12px 14px; border:1px solid #d9dadd; border-radius:4px; background:#f9f9fa; color:#292929; font-family:var(--font-sans,sans-serif); font-size:16px; line-height:1.5; }
.member-auth-form input::placeholder,.member-auth-image-row input::placeholder { color:#747474; opacity:1; }
.member-auth-phone,.member-auth-code { display:flex; align-items:center; min-width:0; border:1px solid #d9dadd; border-radius:4px; background:#f9f9fa; }
.member-auth-form .member-auth-phone input,.member-auth-form .member-auth-code input { flex:1; width:0; min-height:48px; border:0; background:transparent; }
.member-auth-country { padding:0 0 0 14px; font-family:var(--font-sans,sans-serif); font-size:16px; color:#343434; }
.member-auth-phone:focus-within,.member-auth-code:focus-within { border-color:#507d7e; box-shadow:0 0 0 1px #507d7e; }
.member-auth-form :is(.member-auth-phone,.member-auth-code) input:focus-visible { outline:none; }
.member-auth-code button { flex:none; min-height:40px; margin:4px 0; padding:7px 14px; border:0; border-left:1px solid #e1e1df; border-radius:0; background:transparent; color:#004b50; font-size:14px; white-space:nowrap; }
.member-auth-code button:disabled { color:#767870; cursor:default; }
.member-auth-notice,.member-captcha-notice { margin:0 0 14px; color:#a13239; font-size:13px; line-height:1.6; overflow-wrap:anywhere; }
.member-auth-notice:empty,.member-captcha-notice:empty { display:none; }
.member-auth-submit { min-height:46px; margin-top:8px; padding:10px 16px; border:0; border-radius:4px; background:var(--color-accent,#c04851); color:#fff; font-family:var(--font-serif,serif)!important; font-size:16px!important; font-weight:600!important; line-height:1.5; }
.member-auth-submit:hover { background:#ad3d46; }
.member-auth-submit:disabled { opacity:.6; cursor:wait; }
.member-auth-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; }
.member-auth-registration { min-width:0; margin:0; color:#737373; font-size:12px; line-height:1.65; }
.member-auth-footer button { flex:none; min-height:44px; padding:8px 0; border:0; background:transparent; color:#004b50; font-size:13px; white-space:nowrap; }
:is(.member-auth-dialog,.member-captcha-dialog) :is(button,input,a):focus-visible { outline:2px solid #004b50; outline-offset:3px; }
.member-auth-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.member-captcha-header { padding:22px 24px 4px; }
.member-captcha-header h2 { margin:0; font-family:var(--font-serif,serif); font-size:22px; font-weight:600; line-height:1.5; }
.member-captcha-body { padding:0 24px 24px; }
.member-captcha-body [data-captcha-loading] { margin:0; padding:26px 0; font-size:14px; color:#666; text-align:center; }
.member-auth-puzzle { position:relative; overflow:hidden; border-radius:3px; }
.member-auth-puzzle [data-slide-background] { display:block; width:100%; height:auto; }
.member-auth-puzzle [data-slide-piece] { position:absolute; top:0; left:0; height:100%; max-width:none; pointer-events:none; filter:drop-shadow(0 1px 2px #0006); }
.member-captcha-refresh { display:flex; justify-content:flex-end; }
.member-captcha-refresh button { min-height:36px; padding:6px 0; border:0; background:transparent; color:#004b50; font-size:13px; line-height:1.5; }
.member-auth-slider { position:relative; display:block; min-height:44px; }
.member-auth-slider input { position:relative; z-index:1; display:block; appearance:none; width:100%; height:44px; margin:0; border:1px solid #d4d6d3; border-radius:4px; background:#f3f3f1; touch-action:none; cursor:grab; }
.member-auth-slider input::-webkit-slider-thumb { appearance:none; width:42px; height:42px; border:1px solid #a5b0a7; border-radius:3px; background:#e2e7e1 url('/images/ui/chevron-down.svg') center / 18px no-repeat; transform:rotate(-90deg); }
.member-auth-slider input::-moz-range-thumb { width:40px; height:40px; border:1px solid #a5b0a7; border-radius:3px; background:#e2e7e1 url('/images/ui/chevron-down.svg') center / 18px no-repeat; transform:rotate(-90deg); }
.member-auth-slider>span:last-child { position:absolute; z-index:2; inset:0 8px 0 48px; display:flex; align-items:center; justify-content:center; pointer-events:none; color:#62675f; font-size:12px; }
.member-captcha-notice { margin:12px 0 0; }
.member-auth-image-row { display:flex; align-items:center; gap:12px; }
.member-auth-image-row input { flex:1; width:0; min-width:0; min-height:48px; padding:10px 12px; border:1px solid #d9dadd; border-radius:4px; background:#f9f9fa; font:16px var(--font-sans,sans-serif); }
.member-auth-image-row img { width:150px; max-width:50%; height:48px; object-fit:contain; }
.member-captcha-body [data-image-send] { width:100%; min-height:44px; padding:10px 16px; border:0; border-radius:4px; background:var(--color-accent,#c04851); color:#fff; font-size:14px; }
.member-captcha-body [data-image-send]:disabled { opacity:.6; cursor:default; }
@media(max-width:420px) { .member-auth-header { padding:24px 24px 16px; }.member-auth-body { padding:0 24px 22px; }.member-auth-tabs { gap:28px; }.member-auth-code button { padding-left:10px; padding-right:10px; }.member-auth-footer { gap:8px; } }
@media(max-width:350px) { .member-auth-header { padding-left:20px; padding-right:20px; }.member-auth-body { padding-left:20px; padding-right:20px; }.member-auth-footer { align-items:flex-start; }.member-auth-registration { padding-top:12px; max-width:160px; }.member-captcha-header { padding-left:20px; padding-right:20px; }.member-captcha-body { padding-left:20px; padding-right:20px; } }
