.profile-quick-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px 24px; }
.profile-quick-actions .notification-profile-link { margin: 0; }
.profile-account-tools { margin: 24px 0; padding: 24px; border: 1px solid #4a4355; border-radius: 20px; }
.profile-account-tools__summary { cursor: pointer; font-size: 20px; font-weight: 600; line-height: 1.4; }
.profile-account-tools__summary:hover { color: #c3a8ff; }
.profile-account-tools__summary:focus-visible { outline: 3px solid #c3a8ff; outline-offset: 4px; border-radius: 4px; }
.profile-account-tools[open] > .profile-account-tools__summary { margin-bottom: 16px; }
.profile-account-tools > p { margin: 0 0 20px; color: #c2bacd; line-height: 1.6; }
.profile-account-tools a.qr-button { display: inline-block; text-align: center; text-decoration: none; }
.profile-account-tools__telegram { margin: 0; color: #c2bacd; }
.profile-account-tools .qr-button svg { vertical-align: middle; margin-right: 6px; fill: currentColor; }
.profile-account-tools .qr-button .profile-action-icon { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.qr-profile-notice:empty { display: none; }
.qr-profile-notice { flex-basis: 100%; }
.qr-button { appearance: none; border: 1px solid #8053e3; border-radius: 24px; background: #713acb; color: #fff; padding: 12px 22px; font: inherit; font-weight: 600; cursor: pointer; line-height: 1.4; }
.qr-button--outline { background: transparent; border-color: #9b83ca; }
.qr-button:hover:enabled, a.qr-button:hover { background: #824cdb; }
.qr-button:disabled { opacity: .55; cursor: wait; }
.qr-button:focus-visible, .qr-phone__link:focus-visible { outline: 3px solid #c3a8ff; outline-offset: 4px; }
.qr-dialog { box-sizing: border-box; width: min(520px, calc(100% - 24px)); max-height: calc(100dvh - 24px); padding: 0; border: 1px solid #57515f; border-radius: 20px; background: #29272d; color: #fff; overflow: auto; }
.qr-dialog::backdrop { background: rgb(0 0 0 / 75%); }
.qr-dialog__content { padding: 28px; text-align: center; }
.qr-dialog h2 { margin: 0 0 16px; font-size: 24px; }
.qr-dialog p { line-height: 1.55; margin: 12px 0; }
.qr-image { width: min(280px, 100%); height: auto; display: block; margin: 16px auto; background: #fff; }
.qr-image[hidden], .qr-countdown[hidden] { display: none; }
.qr-countdown { font-variant-numeric: tabular-nums; }
.qr-hint { font-size: 14px; color: #c2bacd; line-height: 1.6; }
.qr-actions { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-top: 24px; }
.qr-status { color: #ded0fa; }
.qr-phone { box-sizing: border-box; min-height: 100vh; margin: 0; padding: 32px 16px; display: flex; justify-content: center; align-items: center; background: #222; color: #fff; font: 16px/1.6 system-ui, sans-serif; }
.qr-phone__card { box-sizing: border-box; width: min(460px, 100%); padding: 28px; border: 1px solid #4a4355; border-radius: 20px; background: #2c292f; overflow-wrap: anywhere; }
.qr-phone__card h1 { font-size: 26px; line-height: 1.3; }
.qr-phone__card h2 { font-size: 22px; }
.qr-phone__logo { display: block; max-width: 210px; max-height: 60px; }
.qr-phone__card .qr-button { width: 100%; }
.qr-phone__link { display: inline-block; color: #c3a8ff; margin-top: 20px; }
.qr-login-buttons { display: flex; flex-wrap: wrap; gap: 12px; }
.qr-login-buttons .qr-mobile-entry { display: inline-flex; align-items: center; justify-content: center; margin: 0; text-decoration: none; text-align: center; }
.qr-mobile-entry[hidden], .qr-camera[hidden], [data-qr-camera-stop][hidden] { display: none; }
.qr-camera { display: block; width: 100%; max-height: 320px; object-fit: cover; border-radius: 12px; background: #151515; }
.qr-instructions { padding-left: 24px; }
.qr-phone__instructions { margin-top: 28px; padding-top: 20px; border-top: 1px solid #4a4355; }
.qr-instructions li { margin: 10px 0; }
@media (max-width: 767px) {
    .qr-desktop-entry { display: none; }
}
@media (max-width: 480px) {
    .qr-dialog__content, .qr-phone__card { padding: 22px 18px; }
    .qr-actions .qr-button { width: 100%; }
    .profile-quick-actions { align-items: flex-start; flex-direction: column; }
    .profile-account-tools { padding: 20px; }
    .profile-account-tools .profile-quick-actions > .qr-button { box-sizing: border-box; width: 100%; }
}
