/* Danna Store Core - cajon lateral del carrito.

   El panel, la capa oscura y la apertura al agregar los aporta Astra Free
   (opcion shop-add-to-cart-action = slide_in_cart). Aqui solo se maqueta el
   contenido del mini carrito.

   Astra y WooCommerce ya estilan el <li> del mini carrito: le ponen
   padding-left para hacer sitio a una miniatura en position:absolute y sacan
   el enlace de quitar a la esquina. Esas reglas usan hasta tres clases, asi
   que las de aqui llevan cuatro para ganarles. */

/* --- Estructura del panel: solo la lista hace scroll --- */

.astra-cart-drawer .astra-cart-drawer-content .widget_shopping_cart_content{
	display:flex;
	flex-direction:column;
	height:100%;
}

.ds-minicart-encabezado{
	flex:0 0 auto;
	display:flex;
	justify-content:space-between;
	gap:16px;
	padding:0 20px 12px;
	border-bottom:1px solid var(--line,#E5E7EB);
	font-size:11px;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--ink-2,#6B7280);
}

/* Astra le mete 1.3em de padding; los items traen el suyo. */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart.ds-minicart-lista{
	flex:1 1 auto;
	overflow-y:auto;
	margin:0;
	padding:0;
	list-style:none;
}

/* --- Linea de producto --- */

.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item{
	display:grid;
	grid-template-columns:72px 1fr auto;
	gap:14px;
	align-items:start;
	min-height:0;
	margin:0;
	padding:20px;
	border-bottom:1px solid var(--line,#E5E7EB);
	transition:opacity .18s ease;
}
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item--cargando{
	opacity:.45;
	pointer-events:none;
}

/* WooCommerce usa ::before y ::after como clearfix en el <li>. En un grid
   cuentan como celdas y desplazan la miniatura, los datos y el total. */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item::before,
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item::after{
	content:none;
	display:none;
}

/* WooCommerce saca la miniatura del flujo; aqui vuelve a su celda. */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item img{
	position:static;
	float:none;
	display:block;
	width:72px;
	height:72px;
	margin:0;
	object-fit:cover;
	border:1px solid var(--line,#E5E7EB);
	border-radius:10px;
}

.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item .ds-minicart-nombre{
	display:block;
	font-weight:700;
	line-height:1.35;
	color:var(--ink,#111111);
	text-decoration:none;
}
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item .ds-minicart-nombre:hover{
	color:var(--accent,#2563EB);
}

.ds-minicart-unitario{
	margin-top:4px;
	font-size:14px;
	color:var(--ink-2,#6B7280);
}
.ds-minicart-unitario .amount{
	color:inherit;
}

.ds-minicart-controles{
	display:flex;
	align-items:center;
	gap:10px;
	margin-top:12px;
}

/* --- Selector de cantidad --- */

.ds-qty{
	display:inline-flex;
	align-items:center;
	border:1px solid var(--line,#E5E7EB);
	border-radius:8px;
	overflow:hidden;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-qty-btn{
	appearance:none;
	-webkit-appearance:none;
	border:0;
	background:none;
	width:34px;
	height:36px;
	padding:0;
	font-size:17px;
	line-height:1;
	color:var(--ink,#111111);
	cursor:pointer;
	transition:background .18s ease;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-qty-btn:hover{
	background:var(--line,#E5E7EB);
}
.astra-cart-drawer .astra-cart-drawer-content .ds-qty-input{
	width:42px;
	height:36px;
	padding:0;
	border:0;
	border-left:1px solid var(--line,#E5E7EB);
	border-right:1px solid var(--line,#E5E7EB);
	border-radius:0;
	background:none;
	text-align:center;
	font-size:15px;
	color:var(--ink,#111111);
	-moz-appearance:textfield;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-qty-input::-webkit-outer-spin-button,
.astra-cart-drawer .astra-cart-drawer-content .ds-qty-input::-webkit-inner-spin-button{
	-webkit-appearance:none;
	margin:0;
}

/* Astra lo pinta como una X de 20px anclada arriba a la derecha. */
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item a.remove{
	position:static;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:36px;
	height:36px;
	line-height:1;
	font-size:0;
	color:var(--ink-2,#6B7280);
	background:none;
	border:1px solid var(--line,#E5E7EB);
	border-radius:8px;
	transition:color .18s ease,border-color .18s ease;
}
.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item a.remove:hover{
	color:var(--oferta,#EF4444);
	border-color:var(--oferta,#EF4444);
	background:none;
}

.ds-minicart-linea{
	font-weight:700;
	white-space:nowrap;
	color:var(--ink,#111111);
}

/* --- Pie fijo --- */

.ds-minicart-pie{
	flex:0 0 auto;
	padding:20px;
	border-top:1px solid var(--line,#E5E7EB);
	background:var(--paper,#fff);
}
.ds-minicart-total{
	display:flex;
	align-items:baseline;
	justify-content:space-between;
	gap:16px;
	font-size:17px;
	color:var(--ink,#111111);
}
.ds-minicart-total strong{
	font-size:22px;
}
.ds-minicart-aviso{
	margin:6px 0 16px;
	font-size:13px;
	line-height:1.45;
	color:var(--ink-2,#6B7280);
}
.astra-cart-drawer .astra-cart-drawer-content .ds-minicart-pagar{
	display:block;
	width:100%;
	padding:14px 20px;
	border-radius:999px;
	background:var(--accent,#2563EB);
	color:#fff;
	font-weight:700;
	text-align:center;
	text-decoration:none;
	transition:background .18s ease;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-minicart-pagar:hover{
	background:var(--accent-2,#1D4ED8);
	color:#fff;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-minicart-vercarrito{
	display:block;
	margin-top:10px;
	text-align:center;
	font-size:14px;
	color:var(--ink-2,#6B7280);
	text-decoration:underline;
}
.astra-cart-drawer .astra-cart-drawer-content .ds-minicart-vercarrito:hover{
	color:var(--accent,#2563EB);
}

.ds-minicart-vacio{
	padding:40px 20px;
	text-align:center;
	color:var(--ink-2,#6B7280);
}
.ds-minicart-vacio p{
	margin:0 0 20px;
}

/* --- Pantallas estrechas --- */

@media (max-width:480px){
	.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item{
		grid-template-columns:60px 1fr auto;
		gap:12px;
		padding:16px;
	}
	.astra-cart-drawer .astra-cart-drawer-content .woocommerce-mini-cart li.ds-minicart-item img{
		width:60px;
		height:60px;
	}
	.ds-minicart-encabezado{
		padding:0 16px 10px;
	}
	.ds-minicart-pie{
		padding:16px;
	}
}