.dc-customer-menu { position: relative; flex: 0 1 auto; min-width: 0; grid-column: 2; grid-row: 2; justify-self: center; }
.dc-customer-menu > summary { list-style: none; }
.dc-customer-menu > summary::-webkit-details-marker { display: none; }
.domuschef-header .dc-customer-menu .dc-header-login-btn,
.domuschef-header.is-scrolled .dc-customer-menu .dc-header-login-btn {
    width: auto; gap: 8px; padding: 0 8px; max-width: 100%;
}
.domuschef-header .dc-customer-menu .dc-header-login-btn__text {
    display: inline-block; max-width: 180px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.domuschef-header .dc-customer-menu .dc-customer-menu__arrow { font-size: 12px; transition: transform .15s ease; }
.dc-customer-menu[open] .dc-customer-menu__arrow { transform: rotate(180deg); }
.dc-customer-menu__panel {
    position: absolute; right: 0; top: calc(100% + 8px); z-index: 100;
    min-width: 210px; max-width: calc(100vw - 24px); padding: 8px;
    background: #fff; border: 1px solid #e1e8db; border-radius: 14px;
    box-shadow: 0 14px 36px rgba(23,32,51,.16);
}
.dc-customer-menu:not([open]) .dc-customer-menu__panel { display: none; }
.dc-customer-menu__panel a {
    display: flex; align-items: center; gap: 10px; padding: 12px 14px;
    color: #172033; font-size: 14px; font-weight: 700; line-height: 1.3;
    white-space: nowrap; text-decoration: none; border-radius: 8px;
}
.dc-customer-menu__panel a:hover, .dc-customer-menu__panel a:focus-visible { background: #f1f7e9; color: #387700; }
.dc-customer-menu summary:focus-visible { outline: 2px solid #438d00; outline-offset: 3px; }
@media (max-width: 767px) {
    .domuschef-header .dc-customer-menu .dc-header-login-btn__text { max-width: min(110px, 25vw); font-size: 12px; }
    .domuschef-header .dc-customer-menu .dc-header-login-btn { gap: 5px; padding: 0 4px; }
}
