/* ===== Aura slide out basket ===== */
.aura-no-scroll { overflow: hidden !important; }

.aura-drawer-overlay {
    position: fixed; inset: 0; background: rgba(0,0,0,.45);
    opacity: 0; visibility: hidden; transition: opacity .25s ease;
    z-index: 999998;
}
.aura-drawer-overlay.open { opacity: 1; visibility: visible; }

.aura-drawer {
    position: fixed; top: 0; right: 0; height: 100%; width: 400px; max-width: 90vw;
    background: #fff; box-shadow: -4px 0 24px rgba(0,0,0,.18);
    transform: translateX(100%); transition: transform .28s ease;
    z-index: 999999; display: flex; flex-direction: column;
    font-family: Arial, sans-serif;
}
.aura-drawer.open { transform: translateX(0); }
.aura-drawer-inner { display: flex; flex-direction: column; height: 100%; }

.aura-drawer-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: 18px 22px; border-bottom: 1px solid #eee;
}
.aura-drawer-title { font-size: 22px; font-weight: 800; letter-spacing: 1px; color: #111; }
.aura-drawer-close {
    background: none; border: none; font-size: 30px; line-height: 1; cursor: pointer; color: #666;
}

.aura-drawer-body { flex: 1; overflow-y: auto; padding: 16px 22px; }
.aura-empty { color: #777; text-align: center; margin-top: 40px; }

.aura-drawer-item {
    display: flex; align-items: center; gap: 14px;
    padding: 14px 0; border-bottom: 1px solid #f0f0f0;
}
.aura-mini-plates { display: flex; flex-direction: column; gap: 6px; flex-shrink: 0; }
.aura-mini-plate {
    width: 96px; height: 26px; border-radius: 4px; display: flex; align-items: center;
    justify-content: center; position: relative; overflow: hidden;
    border: 1px solid #ddd; box-shadow: 0 1px 3px rgba(0,0,0,.18);
}
.aura-mini-plate.front { background: #fff; }
.aura-mini-plate.rear  { background: #ffd800; }
.aura-mini-plate span {
    font-family: 'UKNumberPlate','Charles Wright', Arial, sans-serif;
    font-weight: 700; font-size: 16px; color: #000; letter-spacing: 1px; line-height: 1;
    padding-left: 18px;
}
.aura-mini-badge {
    position: absolute; left: 2px; top: 2px; bottom: 2px; width: 14px;
    background: #00509f; color: #fff; font-size: 6px; font-weight: 800;
    display: flex; align-items: center; justify-content: center; border-radius: 2px;
}

.aura-drawer-meta { flex: 1; }
.aura-drawer-name { font-weight: 800; color: #111; font-size: 15px; }
.aura-drawer-sub  { color: #777; font-size: 12px; margin-top: 2px; }
.aura-drawer-price { font-weight: 800; color: #111; margin-top: 4px; }
.aura-remove {
    background: none; border: none; cursor: pointer; font-size: 18px; color: #b00; opacity: .7;
}
.aura-remove:hover { opacity: 1; }

.aura-drawer-footer { padding: 18px 22px; border-top: 1px solid #eee; }
.aura-drawer-subtotal {
    display: flex; justify-content: space-between; align-items: center;
    font-size: 17px; margin-bottom: 14px;
}
.aura-drawer-subtotal strong { font-size: 22px; }
.aura-checkout-btn {
    display: flex; align-items: center; justify-content: center;
    background: #08a84f; color: #fff !important; height: 54px; border-radius: 10px;
    font-weight: 800; font-size: 16px; text-decoration: none; letter-spacing: .5px;
    box-shadow: inset 0 -3px 0 rgba(0,0,0,.18);
}
.aura-checkout-btn:hover { background: #079447; }
.aura-viewcart-btn {
    display: block; text-align: center; margin-top: 10px; color: #444 !important;
    text-decoration: underline; font-size: 14px;
}

/* Floating basket button */
.aura-cart-fab {
    position: fixed; bottom: 22px; right: 22px; width: 56px; height: 56px;
    border-radius: 50%; background: #111; border: none; cursor: pointer;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 4px 14px rgba(0,0,0,.3); z-index: 999990;
}
.aura-cart-count {
    position: absolute; top: -4px; right: -4px; background: #ffd800; color: #111;
    font-size: 12px; font-weight: 800; min-width: 20px; height: 20px; border-radius: 10px;
    display: flex; align-items: center; justify-content: center; padding: 0 5px;
    font-family: Arial, sans-serif;
}

@media (max-width: 600px) {
    .aura-drawer { width: 100%; max-width: 100%; }
}
