/* Homepage language dialog: isolated from the legacy inline stylesheet. */
.language-modal[hidden] { display: none !important; }
.language-modal { pointer-events: none; transition: opacity .18s ease; }
.language-modal.is-open { opacity: 1; pointer-events: auto; }
.language-modal-overlay { border: 0; cursor: pointer; background: rgba(15, 23, 42, .46); }
.language-modal-content {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    transform: translateY(8px) scale(.98);
    transition: transform .18s ease;
    box-shadow: 0 18px 48px rgba(15, 23, 42, .22);
}
.language-modal.is-open .language-modal-content { transform: translateY(0) scale(1); }
.language-modal-header { background: #f8fafc; color: #111827; border-bottom: 1px solid #e5e7eb; }
.language-modal-header p { margin: 6px 0 0; color: #64748b; font-size: 12px; }
.close-btn { color: #64748b; border-radius: 6px; font-size: 16px; }
.close-btn:hover { background: #e5e7eb; color: #111827; }
.language-option {
    width: 100%;
    text-align: left;
    font: inherit;
    background: #fff;
    color: #1f2937;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    transition: background .18s ease, border-color .18s ease;
}
.language-option:hover { background: #f8fafc; border-color: #cbd5e1; transform: none; }
.language-option.active { background: #eff6ff !important; color: #1d4ed8 !important; border-color: #60a5fa !important; box-shadow: none !important; }
.language-option:disabled { cursor: wait; opacity: .72; }
.language-option.is-loading .language-check { animation: language-spin .8s linear infinite; }
.language-check { margin-left: auto; visibility: hidden; }
.language-option.active .language-check { visibility: visible; }
.language-code {
    display: inline-flex;
    width: 32px;
    height: 32px;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: #f1f5f9;
    color: #475569;
    font-size: 12px;
    font-weight: 700;
}
.language-option.active .language-code { background: #dbeafe; color: #1d4ed8; }
.language-switch-error { margin: 12px 0 0; color: #b91c1c; font-size: 12px; }
@keyframes language-spin { to { transform: rotate(360deg); } }
body.language-modal-open { overflow: hidden; }
