﻿@import "../style.css";
body { background: radial-gradient(circle at top left, rgba(191,91,40,0.12), transparent 18%), linear-gradient(180deg, #f5eee5 0%, #ece1d5 100%); }
.hero { padding: 20px 0 18px; }
.menu-top, .hero-menu, .cart-shell, footer { width: min(1180px, calc(100% - 32px)); margin: 0 auto; }
.menu-top, .menu-left, .menu-right, .hero-menu, .cart-titlebar, .address-inline-main, .address-inline-actions, .sum-prices, .modal-actions, .inline-pay-actions, .footer-links { display: flex; align-items: center; gap: 16px; }
.menu-top, .hero-menu { justify-content: space-between; }
.menu-left, .menu-right, .hero-menu { flex-wrap: wrap; }
.menu-location, .profile-top, .notify-top, .cart-link, .hero-menu a, .hero-menu-cat-btn, .address-inline-link { display: inline-flex; align-items: center; gap: 10px; color: var(--text-soft); }
.menu-location svg, .notify-top svg, .cart-link svg, .profile-top svg { width: 20px; height: 20px; fill: currentColor; }
.profile-top-photo { width: 24px; height: 24px; border-radius: 999px; object-fit: cover; }
.search-top-wrap input { width: min(260px, 100%); border: 1px solid var(--line); border-radius: 999px; background: rgba(255,255,255,0.76); padding: 12px 16px; }
.cart-link strong { display: inline-grid; place-items: center; width: 24px; height: 24px; border-radius: 999px; background: #171411; color: #fff; }
.hero-menu-dropdown { position: relative; }
.hero-menu-cat-btn { border: none; background: transparent; cursor: pointer; }
.hero-menu-cat-panel { position: absolute; top: calc(100% + 10px); right: 0; min-width: 200px; padding: 10px; display: none; flex-direction: column; gap: 8px; background: rgba(255,255,255,0.96); border: 1px solid var(--line); border-radius: 18px; box-shadow: var(--shadow); }
.hero-menu-dropdown.is-open .hero-menu-cat-panel { display: flex; }
.cart-page { padding-bottom: 42px; }
.cart-shell { display: grid; grid-template-columns: minmax(0, 1.2fr) 360px; gap: 20px; }
.cart-products, .cart-summary, .modal-card, .inline-pay-card, .address-inline-box { background: rgba(255,255,255,0.82); border: 1px solid rgba(255,255,255,0.72); border-radius: 24px; box-shadow: var(--shadow); }
.cart-titlebar { justify-content: space-between; margin-bottom: 16px; }
.address-inline-box, .cart-products, .summary-card, .modal-card, .inline-pay-card { padding: 22px; }
.address-inline-box { display: grid; gap: 12px; }
.address-inline-main { justify-content: space-between; }
.address-inline-state { color: var(--success); font-size: 0.9rem; font-weight: 600; }
.address-inline-confirm, .more-payments-btn { border: 1px solid var(--line); background: transparent; border-radius: 999px; padding: 10px 14px; cursor: pointer; }
.cart-title-logo { font-size: 1.25rem; font-weight: 800; }
.cart-title-logo span { color: var(--accent); }
#cart-items { margin: 0; padding: 0; list-style: none; display: grid; gap: 12px; }
#cart-items li { display: grid; grid-template-columns: 92px minmax(0, 1fr) auto; gap: 14px; padding: 12px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,0.82); }
#cart-items img { width: 92px; height: 92px; border-radius: 16px; object-fit: cover; }
.summary-title, .pay-group-title, #modal-title, #inline-pay-title { margin: 0 0 16px; font-size: 1.2rem; }
.summary-list, .payment-list, .modal-form, .checkout-address-box, .inline-pay-content { display: grid; gap: 16px; }
.sum-row, .sum-total, .checkout-address-head, .pay-row, .inline-pay-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.money.before { color: var(--text-soft); text-decoration: line-through; }
.money.total, .money.now { font-weight: 700; }
.cart-actions { margin-top: 16px; }
.feedback, .checkout-address-line, .checkout-address-ship, .inline-pay-status { color: var(--text-soft); }
.modal, .inline-pay-modal { position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; padding: 18px; }
.modal[hidden], .inline-pay-modal[hidden] { display: none; }
.modal-backdrop { position: absolute; inset: 0; background: rgba(23,20,17,0.48); }
.modal-card, .inline-pay-card { position: relative; width: min(760px, 100%); max-height: calc(100vh - 40px); overflow: auto; }
.pay-row { align-items: flex-start; justify-content: flex-start; padding: 14px; border: 1px solid var(--line); border-radius: 18px; }
.pay-row-icon { width: 48px; height: 48px; display: inline-grid; place-items: center; border-radius: 14px; background: rgba(23,20,17,0.06); }
.pay-row-icon svg, .pay-row-icon img { width: 28px; height: 28px; }
.pay-row-body { display: grid; gap: 4px; }
.pay-row-body small, .pay-card-kind span { color: var(--text-soft); }
.pay-card-kind { display: inline-flex; align-items: center; gap: 8px; }
#card-kind-select { border-radius: 999px; border: 1px solid var(--line); background: #fff; padding: 6px 10px; }
.confirm-address-check { display: inline-flex; gap: 8px; align-items: center; }
.inline-pay-content img { max-width: 260px; }
footer { padding: 0 0 28px; }
footer p { color: var(--text-soft); }
@media (max-width: 920px) { .cart-shell { grid-template-columns: 1fr; } }
@media (max-width: 720px) { #cart-items li { grid-template-columns: 1fr; } .menu-top, .menu-left, .menu-right, .cart-titlebar, .address-inline-main, .sum-row, .sum-total, .checkout-address-head, .modal-actions, .inline-pay-actions { align-items: flex-start; flex-direction: column; } .search-top-wrap, .search-top-wrap input, .menu-right, .menu-left { width: 100%; } }

.cart-item-media { display: block; }
.cart-item-link { color: inherit; text-decoration: none; }
.cart-item-link:hover { text-decoration: underline; }
.cart-item-link-inline { display: inline-flex; margin-top: 6px; color: #c7512f; font-weight: 700; text-decoration: none; }
.cart-item-link-inline:hover { text-decoration: underline; }

