.product-identity,
.shop-identity {
    display: flex;
    align-items: center;
    gap: 12px;
}
.product-identity {
    justify-content: center;
    margin-block-end: 20px;
}
.product-identity img { object-fit: contain; }
.product-identity strong { display: block; font-size: 1.45rem; }
.product-identity small { display: block; margin-block-start: 3px; color: #50677e; }
.shop-identity {
    justify-content: center;
    padding: 11px 14px;
    margin-block-end: 24px;
    border-radius: 12px;
    background: #eef6fc;
    text-align: center;
    overflow-wrap: anywhere;
}
.sign-in {
    min-height: 100vh;
    display: grid;
    place-items: center;
    background: radial-gradient(ellipse at top right, #dceef9, transparent 57%), #f3f6fa;
}
.sign-in .wrap { box-sizing: border-box; width: min(100%, 490px); margin: 0; padding: 18px; }
.sign-in .card { border-block-start: 4px solid #0b859e; padding: clamp(21px, 6vw, 38px); }
.sign-in h1 { margin: 0 0 20px; font-size: 1.52rem; }
.sign-in form { display: grid; gap: 15px; }
.sign-in input { background: #f8fafc; }
.sign-in input:focus-visible,
.sign-in button:focus-visible,
.sign-in a:focus-visible { outline: 2px solid #06768a; outline-offset: 3px; }
.sign-in button { margin-block-start: 3px; min-height: 46px; width: 100%; }
.sign-in button:hover { background: #184462; }
.sign-in-help { text-align: center; margin-block-start: 19px; font-size: .875rem; }
.sign-in-help a { color: #08576d; text-underline-offset: 3px; }
.sign-in-help p { color: #50677e; margin: 9px 0 0; line-height: 1.7; }
.sign-in .error { padding: 10px 12px; border-radius: 8px; background: #fff1f0; }

.employee-password-dialog { margin: auto; width: min(92vw, 26rem); }
.employee-password-dialog::backdrop { background: #0f172a80; }
