/* TITLE: BLXCKHIPPY ENTERTAINMENT - SIDE DRAWERS */

.bh-drawer-backdrop {
    position: fixed;
    top: 0; left: 0; width: 100vw; height: 100vh;
    background: rgba(5, 5, 5, 0.6);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
    z-index: 10000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.4s ease, visibility 0.4s ease;
}

.bh-drawer-panel {
    position: fixed;
    top: 0; right: 0;
    width: 100%; max-width: 480px; height: 100vh;
    background: rgba(10, 10, 10, 0.98);
    border-left: 1px solid rgba(255, 255, 255, 0.05);
    z-index: 10001;
    transform: translateX(100%);
    transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1);
    display: flex;
    flex-direction: column;
    padding: 40px;
    box-sizing: border-box;
}

/* Global Body States */
body.search-drawer-active #bh-search-backdrop,
body.cart-drawer-active #bh-cart-backdrop {
    opacity: 1;
    visibility: visible;
}

body.search-drawer-active #bh-search-panel,
body.cart-drawer-active #bh-cart-panel {
    transform: translateX(0);
}

/* Drawer Shared Elements */
.bh-drawer-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 40px;
}

.bh-drawer-title {
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: var(--bh-orange, #ff9f2e);
    margin: 0;
}

.bh-drawer-close {
    background: none; border: none;
    color: #fff; opacity: 0.5;
    font-size: 0.7rem; font-weight: 700; letter-spacing: 2px;
    cursor: pointer; transition: opacity 0.3s, color 0.3s;
}
.bh-drawer-close:hover { opacity: 1; color: var(--bh-red, #ff4e00); }

/* Editorial Search Specifics */
.bh-search-input-wrap { position: relative; margin-bottom: 40px; }
.bh-search-input {
    width: 100%; background: transparent; border: none;
    border-bottom: 1px solid rgba(255,255,255,0.2);
    color: #fff; font-size: 2.5rem; font-weight: 900;
    padding: 10px 0; outline: none; letter-spacing: -1px;
    transition: border-color 0.3s ease;
}
.bh-search-input:focus { border-bottom-color: var(--bh-orange, #ff9f2e); }
.bh-search-input::placeholder { color: rgba(255,255,255,0.15); font-weight: 800; }

.bh-search-results { flex: 1; overflow-y: auto; }
.bh-result-item { padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,0.05); display: block; text-decoration: none; opacity: 0; transform: translateY(20px); }
.bh-result-title { color: #fff; font-size: 1.2rem; font-weight: 700; margin: 0 0 5px 0; transition: color 0.3s; }
.bh-result-meta { color: rgba(255,255,255,0.4); font-size: 0.8rem; text-transform: uppercase; letter-spacing: 1px; }
.bh-result-item:hover .bh-result-title { color: var(--bh-orange, #ff9f2e); }

/* Editorial Cart Specifics */
.bh-cart-items { flex: 1; overflow-y: auto; display: flex; flex-direction: column; gap: 20px; }
.bh-cart-item { display: flex; gap: 15px; align-items: center; opacity: 0; transform: translateX(30px); }
.bh-cart-thumb { width: 70px; height: 70px; background: rgba(255,255,255,0.05); border-radius: 8px; object-fit: cover; }
.bh-cart-details { flex: 1; }
.bh-cart-name { font-size: 1rem; font-weight: 700; color: #fff; margin: 0 0 5px 0; }
.bh-cart-price { font-size: 0.9rem; color: rgba(255,255,255,0.6); font-family: monospace; }
.bh-cart-remove { background: none; border: none; color: rgba(255,255,255,0.3); cursor: pointer; font-size: 1.2rem; transition: color 0.3s; }
.bh-cart-remove:hover { color: var(--bh-red, #ff4e00); }

.bh-cart-footer { padding-top: 30px; border-top: 1px solid rgba(255,255,255,0.1); margin-top: auto; }
.bh-cart-total { display: flex; justify-content: space-between; font-size: 1.2rem; font-weight: 800; color: #fff; margin-bottom: 20px; }
.bh-checkout-btn { width: 100%; background: #fff; color: #000; border: none; padding: 18px; font-size: 0.9rem; font-weight: 800; text-transform: uppercase; letter-spacing: 2px; border-radius: 100px; cursor: pointer; transition: background 0.3s, color 0.3s; }
.bh-checkout-btn:hover { background: var(--bh-orange, #ff9f2e); color: #000; }