/* Shared header controls also appear above the guest account invitation. */
.eph-header { position:relative; margin:0!important; }
.eph-controls { display:flex; align-items:center; gap:16px; font:600 14px/1.4 system-ui,sans-serif; color:#382e2b; }
.eph-controls a,.eph-dropdown summary { color:#382e2b; text-decoration:none; }
.eph-dropdown { position:relative; margin:0; }
.eph-dropdown summary { display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px; cursor:pointer; list-style:none; font:600 14px/1.4 system-ui,sans-serif; }
.eph-dropdown summary::-webkit-details-marker { display:none; }
.eph-dropdown svg,.eph-chat svg { width:22px; height:22px; flex-shrink:0; }
.eph-dropdown[open]>summary,.eph-dropdown summary:hover { color:#60363f; }
.eph-panel { position:absolute; right:0; top:calc(100% + 12px); z-index:110; width:272px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 110px); overflow-y:auto; padding:12px; border:1px solid #e6dfd8; border-radius:18px; background:#fffefa; box-shadow:0 12px 38px #382e2b24; text-align:left; color:#382e2b; font:400 14px/1.45 system-ui,sans-serif; }
.eph-panel-heading { padding:9px 12px 13px; border-bottom:1px solid #eee7e1; margin-bottom:6px; font-weight:700; overflow-wrap:anywhere; }
.eph-panel a { display:flex; align-items:center; min-height:44px; padding:10px 12px; border-radius:9px; color:#382e2b; white-space:normal; }
.eph-panel a:hover { background:#f4ece6; color:#60363f; }
.eph-panel .eph-logout { border-top:1px solid #eee7e1; border-radius:0; margin-top:6px; color:#60363f; }
.eph-language .eph-panel { width:235px; padding:18px; }
.eph-language .eph-panel strong { display:block; margin-bottom:12px; }
.eph-language .eph-panel select { width:100%; min-height:44px; margin:0; font:inherit; color:inherit; background:#fff; }
.eph-account>summary { padding:4px 12px 4px 5px; border:1px solid #dfd6ce; border-radius:999px; background:#fffefa; gap:10px; }
.eph-avatar { position:relative; display:grid; place-items:center; width:38px; height:38px; flex:0 0 38px; border-radius:50%; background:#eee5dc; }
.eph-avatar img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:50%; }
.eph-avatar .eph-photo[hidden] { display:none; }
.eph-status { position:absolute; right:-1px; bottom:-1px; width:12px; height:12px; border:2px solid #fffefa; border-radius:50%; background:#a79c94; }
.eph-status.is-online { background:#61866c; }
.eph-name { max-width:130px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.eph-dropdown .eph-chevron { width:14px; height:14px; }
.eph-account[open] .eph-chevron { transform:rotate(180deg); }
.eph-chat { display:grid; place-items:center; width:44px; height:44px; position:relative; }
.eph-chat .menu_unread_messages { position:absolute; top:0; right:0; border-radius:999px; min-width:17px; padding:1px 4px; background:#a53e4a; color:#fff; font-size:10px; text-align:center; line-height:15px; }
.eph-chat .menu_unread_messages:empty { display:none; }
.eph-controls .eph-signup { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:11px 20px; border-radius:999px; background:#60363f; color:#fff; text-align:center; }
.eph-controls .eph-signup:hover { background:#48232c; }
.eph-login { display:inline-flex; align-items:center; min-height:44px; white-space:nowrap; }
.eph-controls :focus-visible,.eph-dropdown :focus-visible { outline:3px solid #925768; outline-offset:4px; }
@media(max-width:849px) {
    .eph-controls { gap:6px; font-size:12px; }
    #header:has(.eph-header) #logo { width:110px; max-width:110px; flex-shrink:1; }
    .eph-dropdown summary { gap:4px; font-size:12px; }
    .eph-controls .eph-signup { padding:9px 12px; width:max-content; flex-shrink:0; max-width:106px; line-height:1.2; }
    .eph-language summary { min-width:38px; }
    .eph-language summary svg { width:18px; }
    .eph-name { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
    .eph-account>summary { padding:3px; }
    .eph-account .eph-chevron { display:none; }
    .eph-avatar { width:34px; height:34px; flex-basis:34px; }
    .eph-chat { width:36px; }
    .eph-controls .eph-language .eph-panel { right:-125px; }
}
@media(max-width:380px) {
    .eph-controls { gap:4px; }
    #header:has(.eph-header) #logo { width:86px; max-width:86px; }
    .eph-controls .eph-language summary svg { display:none; }
    .eph-controls .eph-signup { max-width:78px; padding:7px 9px; }
}
