/* ============================================================
   animal-3d.css — 全站 3D 厚底影统一层（animal-island-ui 手感）
   仅覆盖各页通用按钮类；页面私有细节样式不受影响
   ============================================================ */

/* ── 次级按钮：2px 厚底 ── */
.back-btn, .icon-btn, .speak-btn, .speed-btn, .mode-btn, .tool-btn, .nav-btn {
    box-shadow: 0 2px 0 0 var(--animal-shadow-input, #d4c9b4) !important;
    transition: all 0.18s var(--animal-ease, ease) !important;
}
.back-btn:hover, .icon-btn:hover, .speak-btn:hover, .speed-btn:hover,
.mode-btn:hover, .tool-btn:hover, .nav-btn:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 0 0 var(--animal-shadow-input, #d4c9b4) !important;
}
.back-btn:active, .icon-btn:active, .speak-btn:active, .speed-btn:active,
.mode-btn:active, .tool-btn:active, .nav-btn:active {
    transform: translateY(2px) !important;
    box-shadow: 0 1px 0 0 var(--animal-shadow-input, #d4c9b4) !important;
}

/* ── 主行动按钮：3px 厚底 ── */
.primary-btn, .review-btn, .exam-next-btn, .btn-primary, .btn-check,
.start-btn, .result-btn, .story-btn, .play-btn, .speak-rec-btn {
    box-shadow: 0 3px 0 0 rgba(61, 52, 40, 0.28) !important;
    transition: all 0.18s var(--animal-ease, ease) !important;
}
.primary-btn:hover:not(:disabled), .review-btn:hover:not(:disabled),
.exam-next-btn:hover:not(:disabled), .btn-primary:hover:not(:disabled),
.btn-check:hover:not(:disabled), .start-btn:hover:not(:disabled),
.result-btn:hover:not(:disabled), .story-btn:hover:not(:disabled),
.play-btn:hover:not(:disabled), .speak-rec-btn:hover:not(:disabled) {
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 0 0 rgba(61, 52, 40, 0.28) !important;
}
.primary-btn:active:not(:disabled), .review-btn:active:not(:disabled),
.exam-next-btn:active:not(:disabled), .btn-primary:active:not(:disabled),
.btn-check:active:not(:disabled), .start-btn:active:not(:disabled),
.result-btn:active:not(:disabled), .story-btn:active:not(:disabled),
.play-btn:active:not(:disabled), .speak-rec-btn:active:not(:disabled) {
    transform: translateY(2px) !important;
    box-shadow: 0 1px 0 0 rgba(61, 52, 40, 0.28) !important;
}

/* ── 禁用态：去影灰化 ── */
button:disabled {
    box-shadow: none !important;
    transform: none !important;
}
