/* Shared system logo. Legacy text marks remain supported on older exercise templates. */
.practice-brand .site-logo,
.practice-brand > span,
.search-brand .site-logo,
.search-brand > span {
    width: 38px !important;
    height: 38px !important;
    flex: 0 0 38px !important;
    box-sizing: border-box;
    border-radius: 10px !important;
    object-fit: contain;
    padding: 1px;
    background: #6654df url('../img/xuanyuan-logo.png?v=20260805-3') center / contain no-repeat !important;
    color: transparent !important;
    font-size: 0 !important;
}

.brand .brand-mark {
    display: block;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    box-sizing: border-box;
    padding: 1px;
    border-radius: 11px;
    object-fit: contain;
    background: #fff;
    transform: none;
}

.auth-brand .auth-site-logo,
.auth-brand > span {
    display: block;
    width: 40px !important;
    height: 40px !important;
    flex: 0 0 40px;
    box-sizing: border-box;
    padding: 1px;
    border-radius: 11px;
    object-fit: contain;
    background: #6654df url('../img/xuanyuan-logo.png?v=20260805-3') center / contain no-repeat !important;
    color: transparent !important;
    font-size: 0 !important;
    transform: none !important;
}

@media (max-width: 520px) {
    .practice-brand .site-logo,
    .practice-brand > span {
        width: 34px !important;
        height: 34px !important;
        flex-basis: 34px !important;
    }
}

.pwa-install-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 30px;
    padding: 5px 11px;
    border: 1px solid #cfdcff;
    border-radius: 9px;
    background: #eef4ff;
    color: #245fc4;
    font: inherit;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
}
.pwa-install-button:hover { background: #e3edff; border-color: #afc5fa; }
.pwa-install-button[hidden] { display: none !important; }
@media (display-mode: standalone) { .pwa-install-button { display: none !important; } }
