/*!
 * ZCK 移动端底栏 (zck-mobile-tabbar)
 * 复刻 codernav 风格移动端底部导航栏
 * 仅在宽度 <= 767.98px 时显示，桌面端完全隐藏
 */

.zck-tabbar {
    display: none;
}

@media (max-width: 767.98px) {

    /* 底栏容器：毛玻璃质感与滑动过渡 */
    .zck-tabbar {
        display: block;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 1020;
        height: calc(56px + constant(safe-area-inset-bottom, 0px));
        height: calc(56px + env(safe-area-inset-bottom, 0px));
        padding-bottom: constant(safe-area-inset-bottom, 0px);
        padding-bottom: env(safe-area-inset-bottom, 0px);
        background: rgba(255, 255, 255, 0.88);
        -webkit-backdrop-filter: blur(16px);
        backdrop-filter: blur(16px);
        border-top: 1px solid rgba(0, 0, 0, .06);
        box-shadow: 0 -3px 20px -5px rgba(108, 108, 108, .18);
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        box-sizing: border-box;
        transition: transform .3s cubic-bezier(0.25, 0.1, 0.25, 1), background .2s ease;
    }

    /* 滚动或弹窗呼出时向下滑出隐藏 */
    .zck-tabbar.zck-tabbar-hide {
        transform: translateY(100%);
    }

    /* 列表布局 */
    .zck-tabbar-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        height: 56px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .zck-tabbar-item {
        -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
        flex: 1 1 0;
        min-width: 0;
        margin: 0;
        padding: 0 1px;
        list-style: none;
        text-align: center;
    }

    /* 普通单项链接 */
    .zck-tabbar-link {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 56px;
        padding: 0 1px;
        color: #8a8f99;
        font-size: 10px;
        line-height: 1.1;
        text-decoration: none !important;
        transition: color .2s ease;
        -webkit-tap-highlight-color: transparent;
        overflow: hidden;
    }

    .zck-tabbar-link:hover,
    .zck-tabbar-link:focus,
    .zck-tabbar-link:active {
        text-decoration: none !important;
        color: #8a8f99;
    }

    .zck-tabbar-icon {
        display: block;
        font-size: 19px;
        line-height: 1;
        margin-bottom: 3px;
        color: inherit;
    }

    .zck-tabbar-label {
        display: block;
        font-size: 10px;
        line-height: 1.1;
        font-weight: 500;
        letter-spacing: -0.2px;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        max-width: 100%;
        color: inherit;
    }

    /* 当前项高亮 */
    .zck-tabbar-item.is-active .zck-tabbar-link,
    .zck-tabbar-item.is-active .zck-tabbar-link:hover,
    .zck-tabbar-item.is-active .zck-tabbar-link:focus {
        color: var(--zck-accent, var(--theme-color, #f1404b));
    }

    /* 中置搜索项：高亮突出胶囊按钮（对齐 codernav 原版风格，支持5~7栏自适应） */
    .zck-tabbar.has-search-highlight .zck-tabbar-item.is-highlight-search {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .zck-tabbar.has-search-highlight .zck-tabbar-item.is-highlight-search .zck-tabbar-link {
        display: -webkit-inline-box;
        display: -ms-inline-flexbox;
        display: inline-flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-align: center;
        align-items: center;
        width: clamp(40px, 12vw, 48px);
        height: 36px;
        background: var(--zck-accent, #f1404b);
        border-radius: 18px;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(241, 64, 75, .38);
        transition: transform .15s ease, box-shadow .15s ease;
    }

    .zck-tabbar.has-search-highlight .zck-tabbar-item.is-highlight-search .zck-tabbar-link:active {
        transform: scale(0.92);
        box-shadow: 0 2px 6px rgba(241, 64, 75, .25);
    }

    .zck-tabbar.has-search-highlight .zck-tabbar-item.is-highlight-search .zck-tabbar-icon {
        font-size: 18px;
        color: #ffffff !important;
        margin-bottom: 0;
    }

    .zck-tabbar.has-search-highlight .zck-tabbar-item.is-highlight-search .zck-tabbar-label {
        display: none;
    }

    /* 页面底部垫高空间，防止遮挡内容 */
    body.zck-tabbar-active {
        padding-bottom: calc(56px + constant(safe-area-inset-bottom, 0px)) !important;
        padding-bottom: calc(56px + env(safe-area-inset-bottom, 0px)) !important;
    }

    /* 上移主题右下角悬浮按钮组，避免与底栏重叠，并支持联动平滑位移 */
    body.zck-tabbar-active #footer-tools {
        bottom: calc(56px + constant(safe-area-inset-bottom, 0px) + 12px) !important;
        bottom: calc(56px + env(safe-area-inset-bottom, 0px) + 12px) !important;
        transition: bottom .3s ease;
    }

    body.zck-tabbar-active.zck-tabbar-hidden #footer-tools {
        bottom: calc(constant(safe-area-inset-bottom, 0px) + 16px) !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 16px) !important;
    }

    /* 暗黑模式 */
    .io-black-mode .zck-tabbar {
        background: rgba(40, 42, 45, 0.88);
        border-top-color: rgba(255, 255, 255, .08);
        box-shadow: 0 -3px 20px -5px rgba(0, 0, 0, .45);
    }

    .io-black-mode .zck-tabbar-link,
    .io-black-mode .zck-tabbar-link:hover,
    .io-black-mode .zck-tabbar-link:focus {
        color: #9aa0a8;
    }

    .io-black-mode .zck-tabbar-item.is-active .zck-tabbar-link,
    .io-black-mode .zck-tabbar-item.is-active .zck-tabbar-link:hover,
    .io-black-mode .zck-tabbar-item.is-active .zck-tabbar-link:focus {
        color: var(--zck-accent, var(--theme-color, #f1404b));
    }
}

/* 桌面端彻底隐藏（双保险） */
@media (min-width: 768px) {
    .zck-tabbar {
        display: none !important;
    }
}

/* 打印模式彻底隐藏 */
@media print {
    .zck-tabbar {
        display: none !important;
    }
    body.zck-tabbar-active {
        padding-bottom: 0 !important;
    }
}