/* =====================================
   Bottom Navigation — shared shell styles
   ===================================== */

.tahouri-bottom-navigation,
.tahouri-bottom-navigation * { box-sizing: border-box; }

/* Hide the global bottom navigation while any activity is actively playing. */
body.activity-playing .tahouri-bottom-navigation {
    display: none !important;
}

.tahouri-bottom-navigation { position: fixed; left: 0; right: 0; bottom: 0; z-index: 2000; width: 100%; min-height: 68px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: stretch; direction: rtl; padding: 5px 6px calc(5px + env(safe-area-inset-bottom, 0px)); background: rgba(255,255,255,.98); border-top: 1px solid #e1e7ef; box-shadow: 0 -4px 18px rgba(31,41,55,.08); backdrop-filter: blur(12px); }
.tahouri-bottom-nav-item { min-width: 0; min-height: 58px; padding: 5px 2px 4px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border: 0; border-radius: 12px; background: transparent; color: #7a8494; font-family: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; transition: background .16s ease, color .16s ease, transform .16s ease; }
.tahouri-bottom-nav-item:hover { background: #f5f7fa; }
.tahouri-bottom-nav-item:active { transform: scale(.96); }
.tahouri-bottom-nav-item.is-active { background: #eef3f8; color: #243b53; }
.tahouri-bottom-nav-item:focus-visible { outline: 3px solid rgba(37,99,235,.22); outline-offset: 2px; }
.tahouri-bottom-nav-icon { width: 25px; height: 25px; display: grid; place-items: center; font-size: 20px; line-height: 1; }
.tahouri-bottom-nav-label { max-width: 100%; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: 11px; line-height: 1.35; font-weight: 700; }

@media (max-width: 480px) {
    body { padding-bottom: 72px; }
    .tahouri-bottom-navigation { min-height: 64px; padding-left: 3px; padding-right: 3px; }
    .tahouri-bottom-nav-item { min-height: 54px; border-radius: 10px; }
    .tahouri-bottom-nav-icon { font-size: 19px; }
    .tahouri-bottom-nav-label { font-size: 10px; }
}

@media (min-width: 700px) {
    .tahouri-bottom-navigation { width: min(680px, calc(100% - 32px)); left: 50%; right: auto; transform: translateX(-50%); border: 1px solid #e1e7ef; border-bottom: 0; border-radius: 18px 18px 0 0; }
}

@media (prefers-reduced-motion: reduce) { .tahouri-bottom-nav-item { transition: none; } .tahouri-bottom-nav-item:active, .tahouri-bottom-nav-item:hover { transform: none; } }
