*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; } body { font-family: system-ui, sans-serif; background: #f5f4f0; color: #1a1a1a; min-height: 100vh; padding: 2rem; } h1 { font-size: 1.1rem; font-weight: 500; color: #555; margin-bottom: 1.5rem; } .layout { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; max-width: 820px; } .section-label { font-size: 0.7rem; font-weight: 500; color: #888; text-transform: uppercase; letter-spacing: 0.06em; margin-bottom: 0.75rem; } /* ── Productos ── */ .product-list { display: flex; flex-direction: column; gap: 8px; } .product-card { display: flex; align-items: center; justify-content: space-between; padding: 10px 14px; background: #fff; border: 0.5px solid #ddd; border-radius: 8px; } .product-name { font-size: 0.875rem; font-weight: 500; color: #1a1a1a; } .product-price { font-size: 0.75rem; color: #888; margin-top: 2px; } .btn-add { display: flex; align-items: center; gap: 4px; padding: 6px 12px; font-size: 0.75rem; font-weight: 500; background: transparent; border: 0.5px solid #ccc; border-radius: 6px; color: #1a1a1a; cursor: pointer; transition: background 0.15s; } .btn-add:hover { background: #f0efeb; } /* ── Carrito ── */ .cart-panel { background: #edecea; border: 0.5px solid #ddd; border-radius: 12px; padding: 1rem 1.25rem; display: flex; flex-direction: column; gap: 10px; } .cart-header { display: flex; align-items: center; justify-content: space-between; } .badge { display: inline-flex; align-items: center; justify-content: center; min-width: 18px; height: 18px; padding: 0 5px; background: #fde8e8; color: #a32d2d; border-radius: 9px; font-size: 0.625rem; font-weight: 500; margin-left: 4px; } .cart-empty { font-size: 0.8rem; color: #aaa; text-align: center; padding: 1.5rem 0; } .cart-items { display: flex; flex-direction: column; gap: 8px; } .cart-item { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; background: #fff; border: 0.5px solid #ddd; border-radius: 8px; } .cart-item-name { font-size: 0.8rem; font-weight: 500; color: #1a1a1a; } .cart-item-sub { font-size: 0.7rem; color: #888; margin-top: 2px; } .cart-item-right { display: flex; align-items: center; gap: 10px; } .cart-item-total { font-size: 0.8rem; font-weight: 500; color: #1a1a1a; min-width: 64px; text-align: right; } .qty-controls { display: flex; align-items: center; gap: 4px; } .qty-btn { width: 22px; height: 22px; border: 0.5px solid #ccc; border-radius: 4px; background: transparent; color: #1a1a1a; cursor: pointer; font-size: 0.875rem; display: flex; align-items: center; justify-content: center; line-height: 1; } .qty-btn:hover { background: #f0efeb; } .qty-val { font-size: 0.8rem; font-weight: 500; min-width: 16px; text-align: center; color: #1a1a1a; } .divider { border: none; border-top: 0.5px solid #ccc; } .cart-total { display: flex; justify-content: space-between; align-items: baseline; } .cart-total-label { font-size: 0.8rem; color: #888; } .cart-total-amount { font-size: 1.25rem; font-weight: 500; color: #1a1a1a; }