/*
 * Adhan Display
 * Islamic UI V7
 *
 * Digital Tasbih centered visual rebuild.
 *
 * The existing Tasbih JavaScript is NOT modified.
 */


/* ============================================================
   TASBIH PAGE VIEW
   ============================================================ */

.islamic-page .tasbih-view {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding-left: 0 !important;
    padding-right: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;

    box-sizing: border-box !important;

    overflow: visible !important;
}


/* ============================================================
   TASBIH HEADER
   ============================================================ */

.islamic-page .tasbih-view .islamic-tool-header {
    width: 100% !important;
    max-width: 900px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}


/* ============================================================
   TASBIH CONTAINER
   ============================================================ */

.islamic-page .tasbih-container {
    width: 100% !important;
    max-width: 680px !important;

    margin: 24px auto 0 !important;
    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 24px !important;

    box-sizing: border-box !important;

    text-align: center !important;

    overflow: visible !important;
}


/* ============================================================
   COUNTER
   ============================================================ */

.islamic-page .tasbih-counter {
    width: 100% !important;
    max-width: 460px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    min-height: 210px !important;

    padding: 32px 24px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;

    box-sizing: border-box !important;

    position: relative !important;
    left: auto !important;
    right: auto !important;

    transform: none !important;

    overflow: visible !important;
}


/* Counter eyebrow */

.islamic-page .tasbih-counter .ad2-eyebrow {
    width: 100% !important;

    margin: 0 0 8px !important;

    text-align: center !important;
}


/* Counter number */

.islamic-page .tasbih-counter [data-tasbih-count] {
    display: block !important;

    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;

    font-size: clamp(72px, 11vw, 120px) !important;
    line-height: .9 !important;
    font-weight: 700 !important;

    position: static !important;
    left: auto !important;
    right: auto !important;

    transform: none !important;

    box-sizing: border-box !important;
}


/* ============================================================
   TAP SHELL
   ============================================================ */

/*
 * IMPORTANT:
 *
 * The shell itself becomes the visual tap surface.
 * This avoids relying on a nested button structure that may
 * differ between Tasbih implementations.
 */

.islamic-page .tasbih-tap-shell {
    width: 100% !important;
    max-width: 460px !important;

    min-width: 0 !important;
    min-height: 150px !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    text-align: center !important;

    position: relative !important;
    left: auto !important;
    right: auto !important;

    box-sizing: border-box !important;

    overflow: hidden !important;

    transform: none !important;

    border-radius: 24px !important;

    cursor: pointer !important;

    touch-action: manipulation !important;
}


/* Remove old decorative layers */

.islamic-page .tasbih-tap-shell::before,
.islamic-page .tasbih-tap-shell::after {
    display: none !important;
    content: none !important;

    position: static !important;

    transform: none !important;
}


/* ============================================================
   EVERYTHING INSIDE TAP SHELL
   ============================================================ */

.islamic-page .tasbih-tap-shell > * {
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    text-align: center !important;

    box-sizing: border-box !important;
}


/*
 * Reset possible absolute positioning from old Tasbih CSS.
 */

.islamic-page .tasbih-tap-shell * {
    position: static !important;

    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;

    float: none !important;

    transform: none !important;

    text-align: center !important;
}


/* ============================================================
   TAP LABEL
   ============================================================ */

.islamic-page .tasbih-tap-shell span,
.islamic-page .tasbih-tap-shell strong,
.islamic-page .tasbih-tap-shell p {
    display: block !important;

    width: auto !important;
    max-width: 100% !important;

    margin-left: auto !important;
    margin-right: auto !important;

    padding: 0 !important;

    text-align: center !important;

    position: static !important;
}


/*
 * Primary TAP text.
 */

.islamic-page .tasbih-tap-shell strong {
    font-size: 1.05rem !important;
    line-height: 1.25 !important;

    font-weight: 700 !important;

    letter-spacing: .06em !important;

    text-align: center !important;
}


/*
 * Secondary text, if present.
 */

.islamic-page .tasbih-tap-shell span {
    font-size: .8rem !important;
    line-height: 1.35 !important;

    text-align: center !important;
}


/* ============================================================
   IF THE TAP SHELL CONTAINS A BUTTON
   ============================================================ */

.islamic-page .tasbih-tap-shell button,
.islamic-page .tasbih-tap-shell [role="button"] {
    width: 100% !important;
    max-width: 460px !important;

    min-height: 150px !important;

    margin: 0 auto !important;

    padding: 28px !important;

    display: flex !important;
    flex-direction: column !important;

    align-items: center !important;
    justify-content: center !important;

    gap: 8px !important;

    text-align: center !important;

    box-sizing: border-box !important;

    border-radius: 24px !important;

    position: static !important;

    transform: none !important;

    overflow: hidden !important;
}


/* ============================================================
   HOVER
   ============================================================ */

.islamic-page .tasbih-tap-shell:hover {
    transform: translateY(-2px) !important;
}


/* ============================================================
   ACTIVE
   ============================================================ */

.islamic-page .tasbih-tap-shell:active {
    transform: scale(.985) !important;
}


/* ============================================================
   FOCUS
   ============================================================ */

.islamic-page .tasbih-tap-shell:focus-visible,
.islamic-page .tasbih-tap-shell button:focus-visible,
.islamic-page .tasbih-tap-shell [role="button"]:focus-visible {
    outline: 3px solid currentColor !important;
    outline-offset: 4px !important;
}


/* ============================================================
   MOBILE
   ============================================================ */

@media (max-width: 767px) {

    .islamic-page .tasbih-view {
        width: 100% !important;
    }

    .islamic-page .tasbih-container {
        width: 100% !important;
        max-width: 100% !important;

        margin-top: 16px !important;

        gap: 18px !important;
    }

    .islamic-page .tasbih-counter {
        width: calc(100% - 24px) !important;
        max-width: 460px !important;

        min-height: 180px !important;

        padding: 28px 18px !important;
    }

    .islamic-page .tasbih-counter [data-tasbih-count] {
        font-size: clamp(64px, 20vw, 96px) !important;
    }

    .islamic-page .tasbih-tap-shell {
        width: calc(100% - 24px) !important;
        max-width: 460px !important;

        min-height: 130px !important;

        margin-left: auto !important;
        margin-right: auto !important;

        border-radius: 22px !important;
    }

    .islamic-page .tasbih-tap-shell button,
    .islamic-page .tasbih-tap-shell [role="button"] {
        width: 100% !important;
        max-width: 100% !important;

        min-height: 130px !important;

        border-radius: 22px !important;
    }
}


/* ============================================================
   SMALL MOBILE
   ============================================================ */

@media (max-width: 480px) {

    .islamic-page .tasbih-container {
        gap: 14px !important;
    }

    .islamic-page .tasbih-counter {
        width: calc(100% - 16px) !important;

        min-height: 155px !important;

        padding: 22px 14px !important;
    }

    .islamic-page .tasbih-counter [data-tasbih-count] {
        font-size: clamp(56px, 22vw, 82px) !important;
    }

    .islamic-page .tasbih-tap-shell {
        width: calc(100% - 16px) !important;

        min-height: 115px !important;

        border-radius: 20px !important;
    }

    .islamic-page .tasbih-tap-shell button,
    .islamic-page .tasbih-tap-shell [role="button"] {
        min-height: 115px !important;

        padding: 18px !important;

        border-radius: 20px !important;
    }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion: reduce) {

    .islamic-page .tasbih-tap-shell,
    .islamic-page .tasbih-tap-shell * {
        animation: none !important;
        transition: none !important;
    }

    .islamic-page .tasbih-tap-shell:hover,
    .islamic-page .tasbih-tap-shell:active {
        transform: none !important;
    }
}


/* ============================================================
   PRINT
   ============================================================ */

@media print {

    .islamic-page .tasbih-view {
        break-inside: avoid !important;
    }

    .islamic-page .tasbih-tap-shell {
        box-shadow: none !important;
    }
}
