/* AZOTH 左右滑屏（10-05 App 手感批 S）。逻辑见 ui/gestures/swipe-core.js / app-swipes.js。 */

/* 可滑区域只把竖向滚动交给浏览器（pan-y）：横向拖动留给手势，竖向滚动不等 JS。
   里面能横向滚动的容器（代码块、表格、横排标签）自身是滚动容器，不受这里影响。 */
@media (pointer: coarse) {
    #view-calendar,
    #view-focus,
    #view-shop,
    #view-stats,
    #library-reading-room,
    #library-bookshelf,
    #library-personal,
    .character-manager-tab-page,
    #character-chat-messages {
        touch-action: pan-y;
    }
}

/* 拖动期间根层不许被横向撑出滚动（原生壳本来就锁了，这里兜 PWA） */
html.az-swiping,
html.az-swiping body {
    overflow-x: clip;
}

/* 被滑进来的页面：自身的入场动画（白雾 blur 显影 / 锈湖上浮 / 图书馆 fadeIn）让给跟手入场 */
.az-sw-noanim {
    animation: none !important;
}

/* 消息左滑引用时右侧浮出的回复图标（位置与透明度由 .az-sw-h 规则逐帧给） */
.az-swipe-reply-hint {
    position: fixed;
    right: 14px;
    top: -100px;
    z-index: 30;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(var(--accent-rgb, 93, 105, 115), 0.12);
    color: var(--accent);
    opacity: 0;
    pointer-events: none;
}

/* ── Bingo 卡片左滑：卡片盖在按钮上，左移露出按钮 ── */
.az-sw-c {
    position: relative;
    z-index: 1;
    background: var(--card-bg);   /* 卡片本身透明（底色在外层面板），滑动时要自己有底，按钮才不会透出来 */
}
.bgo-swipe-actions {
    position: absolute;
    right: 0;
    z-index: 0;
    display: flex;
    justify-content: flex-end;
    align-items: stretch;
    opacity: 0;
}
.bgo-swipe-act {
    width: 64px;
    border: none;
    border-radius: 0;
    margin: 0;
    padding: 0;
    font: inherit;
    font-size: 0.85rem;
    letter-spacing: 0.05em;
    color: #fff;
    cursor: pointer;
}
.bgo-swipe-act.is-journal { background: rgba(var(--accent-rgb, 93, 105, 115), 0.78); }
.bgo-swipe-act.is-archive { background: #8b8f96; }
.bgo-swipe-act.is-delete { background: #c0473d; }
.bgo-swipe-act:active { filter: brightness(0.92); }
