/* 소셜 로그인 단추·연결 안내. 로그인·회원가입·내 정보 화면에서 쓴다(central-social-login.js). */

.qz-social {
    margin-top: 18px;
}

.qz-social[hidden],
.qz-social-pending[hidden] {
    display: none !important;
}

.qz-social-divider {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
    font-size: 12px;
    color: var(--qz-muted);
}

.qz-social-divider::before,
.qz-social-divider::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: var(--qz-line);
}

.qz-social-buttons {
    display: grid;
    gap: 8px;
}

.qz-social-button {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 44px;
    padding: 0 44px;
    border: 1px solid transparent;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
}

.qz-social-button img {
    position: absolute;
    left: 12px;
    top: 50%;
    width: 22px;
    height: 22px;
    transform: translateY(-50%);
}

.qz-social-button:focus-visible {
    outline: 2px solid var(--qz-accent);
    outline-offset: 2px;
}

/* 각 제공자 로그인 버튼 가이드의 배경·글자색. */
.qz-social-button.is-naver {
    background: #03c75a;
    color: #fff;
}

.qz-social-button.is-kakao {
    background: #fee500;
    color: rgba(0, 0, 0, .85);
}

.qz-social-button.is-google {
    background: #fff;
    border-color: #dadce0;
    color: #1f1f1f;
}

.qz-social-button:hover {
    filter: brightness(.96);
}

.qz-social-button[aria-disabled="true"] {
    opacity: .6;
    pointer-events: none;
}

.qz-social-pending {
    margin-bottom: 16px;
    padding: 12px 14px;
    border: 1px solid rgba(133, 193, 255, .36);
    border-radius: 10px;
    background: rgba(133, 193, 255, .1);
    color: #d6e8ff;
    font-size: 13px;
    line-height: 19px;
}

.qz-social-pending b {
    color: #fff;
}

.qz-social-pending-consent {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-top: 8px;
    cursor: pointer;
}

.qz-social-pending-consent input {
    margin-top: 3px;
    accent-color: var(--qz-accent);
}

.qz-social-pending-actions {
    margin-top: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 12px;
}

.qz-social-pending-actions a,
.qz-social-pending-actions button {
    padding: 0;
    border: 0;
    background: none;
    color: var(--qz-blue);
    font: inherit;
    text-decoration: underline;
    cursor: pointer;
}

/* 내 정보 › 계정 보안 */
.qz-social-links {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 8px;
}

.qz-social-link {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    font-size: 13px;
}

.qz-social-link-icon {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 8px;
}

.qz-social-link-icon.is-naver { background: #03c75a; }
.qz-social-link-icon.is-kakao { background: #fee500; }
.qz-social-link-icon.is-google { background: #fff; }

.qz-social-link-icon img {
    width: 20px;
    height: 20px;
}

.qz-social-link-text {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.qz-social-link-text small {
    color: var(--qz-muted);
    font-size: 12px;
    overflow-wrap: anywhere;
}

.qz-security-block .qz-social-links {
    margin-top: 10px;
}

.qz-site .qz-social-link .qz-profile-link-btn:disabled {
    opacity: .45;
    cursor: default;
}
