/* Aubrelia — carrito flotante (todo con prefijo aubc-, sin fugas al resto del sitio) */
.aubc-btn{position:fixed;right:22px;bottom:22px;z-index:60;width:58px;height:58px;border-radius:999px;background:#1F1830;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 28px rgba(31,24,48,0.28);transition:background 0.18s ease,transform 0.18s ease;font-family:Poppins,sans-serif}
.aubc-btn:hover{background:#7B4FD1;transform:translateY(-2px)}
.aubc-btn svg{width:24px;height:24px;stroke:#FFFFFF;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aubc-badge{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;border-radius:999px;background:#F8ED9E;color:#1F1830;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 5px;font-variant-numeric:tabular-nums;box-shadow:0 0 0 2px #FFFFFF}
.aubc-badge[data-n="0"]{display:none}
body.woocommerce-checkout .aubc-btn{display:none}

.aubc-overlay{position:fixed;inset:0;z-index:65;background:rgba(31,24,48,0.45);opacity:0;pointer-events:none;transition:opacity 0.24s ease}
.aubc-panel{position:fixed;top:12px;right:12px;bottom:12px;z-index:70;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 24px);background:#FFFFFF;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transform:translateX(calc(100% + 80px));transition:transform 0.28s cubic-bezier(0.22,0.61,0.36,1);box-shadow:0 18px 60px rgba(31,24,48,0.25);font-family:Poppins,sans-serif;color:#1F1830}
body.admin-bar .aubc-panel{top:44px}
@media screen and (max-width:782px){body.admin-bar .aubc-panel{top:58px}}
.aubc-abierto .aubc-overlay{opacity:1;pointer-events:auto}
.aubc-abierto .aubc-panel{transform:translateX(0)}

.aubc-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px 24px;border-bottom:1px solid #E9E2F5;flex:none}
.aubc-titulo{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:600;letter-spacing:-0.02em}
.aubc-titulo-n{font-size:11px;font-weight:700;color:#7B4FD1;background:#EFE9FB;border-radius:999px;padding:4px 10px;font-variant-numeric:tabular-nums}
.aubc-cerrar{width:36px;height:36px;border-radius:999px;border:1.5px solid #E9E2F5;background:#FFFFFF;color:#1F1830;font-size:17px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.15s ease;font-family:Poppins,sans-serif}
.aubc-cerrar:hover{border-color:#7B4FD1;color:#7B4FD1}

.aubc-items{flex:1;overflow-y:auto;padding:8px 24px}
.aubc-item{display:flex;gap:14px;padding:18px 0;border-bottom:1px solid #F0EBF9;position:relative}
.aubc-item:last-child{border-bottom:none}
.aubc-thumb{width:64px;height:64px;border-radius:14px;background:#EFE9FB;flex:none;overflow:hidden;display:block}
.aubc-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.aubc-info{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}
.aubc-nombre{font-size:14px;font-weight:600;letter-spacing:-0.01em;line-height:1.3;color:#1F1830;text-decoration:none;padding-right:26px;display:block}
.aubc-nombre:hover{color:#7B4FD1}
.aubc-fila{display:flex;align-items:center;justify-content:space-between;gap:12px}
.aubc-cant{display:inline-flex;align-items:center;border:1.5px solid #E4D8F6;border-radius:999px;overflow:hidden}
.aubc-mas,.aubc-menos{width:32px;height:32px;border:none;background:#FFFFFF;color:#1F1830;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.15s ease;font-family:Poppins,sans-serif}
.aubc-mas:hover,.aubc-menos:hover{background:#EFE9FB}
.aubc-menos[disabled]{color:#C9C2D8;cursor:default;background:#FFFFFF}
.aubc-n{min-width:26px;text-align:center;font-size:13.5px;font-weight:600;font-variant-numeric:tabular-nums}
.aubc-precio{font-size:14.5px;font-weight:600;font-variant-numeric:tabular-nums}
.aubc-unit{font-size:12px;color:#9B90B0;font-variant-numeric:tabular-nums}
.aubc-quitar{position:absolute;top:16px;right:0;width:24px;height:24px;border-radius:999px;border:none;background:transparent;color:#9B90B0;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:Poppins,sans-serif}
.aubc-quitar:hover{color:#C2417E;background:#FBE0EE}

.aubc-pie{flex:none;border-top:1px solid #E9E2F5;padding:20px 24px 24px;display:flex;flex-direction:column;gap:14px}
.aubc-subtotal{display:flex;align-items:baseline;justify-content:space-between;font-size:15px}
.aubc-subtotal b{font-size:19px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-0.02em}
.aubc-nota{font-size:12.5px;color:#9B90B0;margin-top:-6px}
.aubc-cta{display:block;text-align:center;font-size:15px;font-weight:600;color:#FFFFFF!important;background:#1F1830;border-radius:999px;padding:17px 24px;text-decoration:none;transition:background 0.18s ease}
.aubc-cta:hover{background:#7B4FD1;color:#FFFFFF!important}
.aubc-ver{display:block;text-align:center;font-size:13.5px;font-weight:600;color:#7B4FD1!important;text-decoration:none;padding:2px}
.aubc-ver:hover{text-decoration:underline}

.aubc-vacio{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:32px;text-align:center}
.aubc-vacio-icono{width:64px;height:64px;border-radius:999px;background:#EFE9FB;display:flex;align-items:center;justify-content:center}
.aubc-vacio-icono svg{width:26px;height:26px;stroke:#7B4FD1;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.aubc-vacio-t{font-size:17px;font-weight:600;letter-spacing:-0.015em}
.aubc-vacio-p{font-size:13.5px;line-height:1.55;color:#6A6080;max-width:26ch;margin:0}
.aubc-vacio-btn{font-size:13.5px;font-weight:600;color:#1F1830!important;background:#EFE9FB;border:1.5px solid #E4D8F6;border-radius:999px;padding:13px 24px;text-decoration:none;margin-top:4px;transition:all 0.18s ease}
.aubc-vacio-btn:hover{background:#7B4FD1;border-color:#7B4FD1;color:#FFFFFF!important}

.aubc-cargando .aubc-items,.aubc-cargando .aubc-pie{opacity:0.45;pointer-events:none;transition:opacity 0.15s ease}
.aubc-error{margin:0 24px 10px;font-size:12.5px;color:#C2417E;background:#FBE0EE;border-radius:12px;padding:10px 14px;display:none}
.aubc-panel:focus{outline:none}
.aubc-btn:focus-visible,.aubc-cerrar:focus-visible,.aubc-mas:focus-visible,.aubc-menos:focus-visible,.aubc-quitar:focus-visible,.aubc-cta:focus-visible,.aubc-ver:focus-visible,.aubc-vacio-btn:focus-visible{outline:2px solid #7B4FD1;outline-offset:2px}
@media (max-width:600px){.aubc-btn{right:16px;bottom:16px}}
