.appify-bar {
    position: fixed;
    bottom: 0; left: 0; right: 0;
    z-index: 9999;
    display: flex;
    align-items: stretch;
    height: calc(var(--ap-bar-h) + var(--ap-safe));
    padding-bottom: var(--ap-safe);
    background: var(--ap-bar-bg);
    border-top: 1px solid var(--ap-bar-border);
}

.appify-bar-item,
.appify-bar-menu-btn {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    padding: 0 4px;
    text-decoration: none;
    color: #111111;
    background: none;
    border: none;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    position: relative;
    min-width: 0;
    transition: transform .08s ease-out;
    will-change: transform;
}

.appify-bar-item.is-active,
.appify-bar-menu-btn[aria-expanded="true"] {
    color: var(--ap-accent);
}

.appify-bar .appify-bar-item:hover,
.appify-bar .appify-bar-menu-btn:hover {
    color: #111111 !important;
}

.appify-bar .appify-bar-item.is-active:hover,
.appify-bar .appify-bar-menu-btn[aria-expanded="true"]:hover {
    color: var(--ap-accent) !important;
}

.appify-bar-item:active,
.appify-bar-menu-btn:active {
    transform: scale(.84);
}

.appify-bar-pill { display: none; }

.appify-bar-icon-wrap {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 28px;
}

.appify-bar-icon {
    width: 24px;
    height: 24px;
    stroke-width: 1.6;
    display: block;
    opacity: 1 !important;
    visibility: visible !important;
    transition: stroke-width .12s;
}

.appify-bar-item.is-active .appify-bar-icon,
.appify-bar-menu-btn[aria-expanded="true"] .appify-bar-icon {
    stroke-width: 2.2;
}

.appify-bar-label {
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    color: inherit;
    opacity: 1 !important;
    visibility: visible !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 60px;
    text-align: center;
    display: block;
}

.appify-bar-item.is-active .appify-bar-label,
.appify-bar-menu-btn[aria-expanded="true"] .appify-bar-label {
    font-weight: 700;
}

.appify-badge-dot {
    position: absolute;
    top: -2px;
    right: -2px;
    min-width: 16px;
    height: 16px;
    border-radius: 8px;
    background: #e53935;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 4px;
    border: 1.5px solid #ffffff;
    z-index: 2;
}

.appify-badge-dot.is-hidden { display: none; }

/* Dark mode */
body.appify-dark .appify-bar {
    background: #0a0a0a;
    border-top-color: #1a1a1a;
}

body.appify-dark .appify-bar-item,
body.appify-dark .appify-bar-menu-btn {
    color: #f0f0f0;
}

body.appify-dark .appify-bar .appify-bar-item:hover,
body.appify-dark .appify-bar .appify-bar-menu-btn:hover {
    color: #f0f0f0 !important;
}

body.appify-dark .appify-bar-item.is-active,
body.appify-dark .appify-bar-menu-btn[aria-expanded="true"] {
    color: var(--ap-accent);
}

body.appify-dark .appify-badge-dot {
    border-color: #0a0a0a;
}