.auth-nav { display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:var(--tap);padding:.55rem .8rem;border:1px solid var(--navy);border-radius:var(--r-s);background:var(--navy);color:var(--surface)!important;text-decoration:none;max-width:100%;font:inherit;white-space:normal;overflow-wrap:anywhere }
.auth-nav [data-auth-nickname] { max-width:9em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap }
/* Override the neighbourhood chip rules at every breakpoint. */
.main-nav a.auth-nav { display:inline-flex!important;font-size:13px!important }
.main-nav a.auth-nav [data-auth-nav-label] { display:inline!important;font-size:13px!important }
.auth-nav [data-auth-nickname][hidden],.auth-legal-notice[hidden] { display:none!important }
.auth-legal-links { display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1.1rem;font-size:.85rem;line-height:1.5 }
.site-footer .auth-legal-links { padding-top:1rem;color:inherit }
.auth-footer-standalone { position:fixed;bottom:8px;left:8px;z-index:8;max-width:70vw;padding:5px 9px;border-radius:var(--r-s);background:rgba(255,255,255,.94);color:#253c65;box-shadow:0 1px 8px #0001 }
.auth-footer-standalone .auth-legal-links { font-size:11px;gap:.4rem .8rem }
.auth-page { background:var(--surface-2);color:#192740;font-family:var(--sans);line-height:1.65;margin:0 }
.auth-page *, .auth-panel * { box-sizing:border-box }
.auth-page .auth-shell-header { display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:18px max(20px,calc((100% - 1000px)/2));background:var(--surface);border-bottom:1px solid #dce2ee }
.auth-page .brand img { width:170px;height:auto;display:block }
.auth-page .auth-shell-nav { display:flex;align-items:center;gap:.75rem;flex-wrap:wrap }
.auth-page .auth-shell-footer { max-width:1000px;margin:0 auto;padding:24px 20px 40px }
.auth-panel { width:min(100% - 32px,520px);margin:40px auto;padding:clamp(20px,5vw,36px);border:1px solid #dbe1ed;border-radius:16px;background:var(--surface);box-shadow:0 10px 34px #1323450b }
.auth-panel h1,.auth-panel h2 { line-height:1.35;margin:0 0 14px;font-size:var(--fs-card);overflow-wrap:anywhere }.auth-panel h2{font-size:var(--fs-card);}
.auth-panel p { margin:0 0 18px;overflow-wrap:anywhere }
.auth-panel label { display:block;margin:15px 0 6px;font-weight:var(--fw-strong)}
.auth-panel input:not([type=checkbox]),.auth-panel select { display:block;width:100%;min-height:46px;padding:10px 12px;border:1px solid #aebbd0;border-radius:var(--r-s);background:var(--surface);color:#192740;font:inherit }
.auth-panel input[readonly] { background:#f2f4f8 }
.auth-panel fieldset { min-width:0;padding:0;margin:0;border:0 }
.auth-panel fieldset:disabled { opacity:.65 }
.auth-panel .auth-consent { display:flex;gap:10px;align-items:flex-start;font-size:.9rem;font-weight:400 }
.auth-consent input { width:19px;height:19px;margin:4px 0 0;flex:none }
.auth-button { display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:10px 18px;border:1px solid var(--navy);border-radius:var(--r-s);background:var(--navy);color:var(--surface);text-decoration:none;font:inherit;font-weight:650;cursor:pointer;max-width:100%;overflow-wrap:anywhere }
.auth-button:disabled { opacity:.5;cursor:not-allowed }
.auth-panel form > .auth-button,.auth-panel fieldset > .auth-button { margin-top:20px;width:100% }
.auth-panel .auth-secondary { background:var(--surface);color:var(--navy);margin:10px 0 }
.auth-panel .auth-code-input { font-size:1.5rem;letter-spacing:.35em;font-variant-numeric:tabular-nums }
.auth-panel .auth-small { font-size:.82rem;color:#526178;margin:12px 0 }
.auth-panel .auth-status { min-height:1.6em;color:#942c31;font-size:.95rem;overflow-wrap:anywhere }
.auth-panel .auth-link-row { display:flex;gap:1rem;flex-wrap:wrap;margin-top:15px }
.auth-panel .auth-link-row a { color:var(--navy) }
.auth-panel [data-auth-captcha-wrap] { margin:18px 0;max-width:100%;min-width:0 }
.auth-panel [data-auth-step][hidden],.auth-panel [hidden] { display:none!important }
.auth-panel [data-auth-contact] { overflow-wrap:anywhere }
.auth-legal { max-width:900px;margin:32px auto;padding:24px;background:var(--surface);border:1px solid #dbe1ed;border-radius:var(--r-m);overflow-wrap:anywhere }
.auth-legal h1 { font-size:var(--fs-h1);line-height:1.45 }
.auth-legal h2 { font-size:var(--fs-h2);line-height:1.5;margin-top:2rem }
.auth-legal p,.auth-legal li { line-height:1.9 }
.auth-table-wrap { overflow-x:auto;max-width:100%;margin:20px 0 }
.auth-legal table { border-collapse:collapse;min-width:580px;width:100%;font-size:.9rem }
.auth-legal th,.auth-legal td { border:1px solid #cdd6e4;padding:10px;text-align:left;vertical-align:top }
.auth-legal th { background:#f0f3f9 }
.auth-legal-notice { padding:14px;background:#eef2fa;border-radius:var(--r-s) }
.auth-page :focus-visible,.auth-nav:focus-visible { outline:3px solid #1e74df;outline-offset:3px }
@media(max-width:760px){
 .site-header:has(.auth-nav) .header-inner,.site-header:has(.auth-nav) .main-nav,.site-header:has(.auth-nav) .header-actions { flex-wrap:wrap;gap:8px }
 .site-header:has(.auth-nav) .main-nav { min-width:0 }
 .site-header .auth-nav { font-size:13px;padding:8px 10px;min-height:var(--tap)}
 .site-header .auth-nav [data-auth-nickname] { max-width:5em }
 .auth-panel { margin-top:24px }
 .auth-legal { margin:20px 12px;padding:18px }
 .auth-page .auth-shell-header { padding:14px 16px }
}

.topbar:has(.auth-nav) { flex-wrap:wrap;gap:8px }
.auth-page :lang(ko){word-break:keep-all}

/* Request34: upcoming legal changes; no changes to the current document body. */
.auth-legal .legal-changes{margin:20px 0 28px;padding:18px;border:2px solid var(--navy);border-radius:var(--r-s);background:var(--surface-2);word-break:keep-all;overflow-wrap:break-word}
.auth-legal .legal-changes h2{margin:0 0 10px;font-size:var(--fs-h3);line-height:1.5}
.auth-legal .legal-changes p{margin:10px 0;line-height:1.9}
.legal-changes-lead{font-weight:var(--fw-strong)}
.legal-changes ul{padding-left:1.4em;margin:12px 0}
.auth-legal .legal-changes-dates{font-size:var(--fs-small);color:var(--muted)}
.legal-changes summary{color:var(--navy);font-weight:var(--fw-strong);cursor:pointer}
.legal-changes-table{max-width:100%;overflow-x:auto;margin-top:12px}
.auth-legal .legal-changes table{min-width:580px;margin:0}
.legal-changes th:first-child,.legal-changes td:first-child{min-width:7.5em}
.legal-changes tbody th{font-weight:400;background:var(--surface)}
.auth-panel p.auth-legal-change{margin:12px 0 8px;padding:8px 10px;border-left:3px solid var(--navy);background:var(--surface-2);font-size:var(--fs-small);line-height:1.6;word-break:keep-all;overflow-wrap:break-word}
.auth-legal-change a{color:var(--navy);font-weight:var(--fw-strong);white-space:nowrap}
.legal-changes time,.auth-legal-change time{display:inline-block;white-space:nowrap}

/* Request35: opt-in Google login and sent-to code step. */
.auth-google-button{max-width:400px;width:100%;min-width:0;margin:0 auto}
.auth-panel p.auth-google-note{font-size:var(--fs-small);color:var(--muted);margin:8px 0 0;line-height:1.6;word-break:keep-all}
.auth-or{display:flex;align-items:center;gap:10px;margin:22px 0;color:var(--muted);font-size:var(--fs-small);text-align:center;word-break:keep-all}
.auth-or::before,.auth-or::after{content:"";height:1px;background:var(--line);flex:1;min-width:12px}
.auth-inapp{padding:14px;border:1px solid #e4d39b;border-radius:var(--r-s);background:#fff9e8;color:#66501d;word-break:keep-all}
.auth-panel .auth-inapp p{margin:0 0 8px;font-size:var(--fs-small);line-height:1.65}
.auth-inapp .auth-button{width:100%;margin:4px 0 0;background:var(--surface);border-color:#ab8a39;color:#66501d;font-size:var(--fs-small)}
.auth-panel .auth-inapp [data-auth-copy-feedback]{margin:8px 0 0}
.auth-inapp input{margin-top:8px;font-size:var(--fs-small)!important;word-break:break-all}
.auth-sent-to{padding:12px;border:2px solid var(--navy);border-radius:var(--r-s);background:var(--surface-2);margin:18px 0 22px}
.auth-sent-to small{display:block;color:var(--muted);font-size:var(--fs-small)}
.auth-sent-to strong{display:block;font-size:18px;margin:4px 0;word-break:break-all;overflow-wrap:anywhere}
.auth-sent-to button{border:0;padding:0;background:none;color:var(--navy);text-decoration:underline;font:inherit;font-size:var(--fs-small);text-align:start;cursor:pointer;word-break:keep-all}
.auth-panel .auth-code-help{margin-top:18px;word-break:keep-all}

/* Request37: closed version history, without the former announcement box. */
.auth-legal .legal-history{margin:16px 0 0;padding:12px 0;border-top:1px solid var(--line)}
.legal-history summary{color:var(--navy);font-weight:var(--fw-strong);cursor:pointer}
.auth-legal .legal-history table{min-width:580px;margin:0}
.legal-history th:first-child,.legal-history td:first-child{min-width:7.5em}
.legal-history tbody th{font-weight:400;background:var(--surface)}
