/**
 * Nuggela & Sulé — UI odświeżone (konto, koszyk strona, koszyk wysuwany).
 * Tokeny zgodne z design-preview (tokens.css).
 */
@import url("https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,400;0,9..144,600;1,9..144,400&display=swap");

:root {
  --ns-ink: #15110d;
  --ns-ink-2: #2a211b;
  --ns-paper: #fbf7f1;
  --ns-paper-2: #f5efe5;
  --ns-paper-3: #ede3d3;
  --ns-line: #e5dbc8;
  --ns-muted: #6f6353;
  --ns-orange: #e86d31;
  --ns-orange-2: #ff7b3a;
  --ns-r-sm: 6px;
  --ns-r-md: 12px;
  --ns-r-lg: 18px;
  --ns-r-pill: 999px;
}

/* ── Mini koszyk (FunnelKit / fkcart) ─────────────────────────────── */
.fkcart-progress-wrap {
  background: var(--ns-paper-2) !important;
}

.fkcart-shortcode-icon-wrap .fkcart-shortcode-count.fkcart-item-count {
  background-color: var(--ns-ink) !important;
  border-radius: var(--ns-r-pill) !important;
  font-weight: 600 !important;
}

#fkcart-modal .fkcart-modal-backdrop {
  opacity: 0.55 !important;
  background: var(--ns-ink) !important;
}

#fkcart-modal .fkcart-title {
  font-family: "Fraunces", Georgia, "Times New Roman", serif;
  font-weight: 600;
  font-size: 1.25rem;
  letter-spacing: -0.02em;
  color: var(--ns-ink);
}

#fkcart-modal .fkcart-modal-close {
  border-radius: var(--ns-r-sm);
  transition: background 0.15s ease;
}

#fkcart-modal .fkcart-modal-close:hover {
  background: var(--ns-paper-2);
}

#fkcart-modal #fkcart-checkout-button {
  border-radius: var(--ns-r-pill) !important;
  margin-top: 20px !important;
  background: var(--ns-ink) !important;
  color: #fff !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  min-height: 52px;
  box-shadow: none !important;
  transition: background 0.2s ease, transform 0.12s ease !important;
}

#fkcart-modal #fkcart-checkout-button:hover {
  background: #000 !important;
}

#fkcart-modal .fkcart-item-wrap.fkcart-pt-16 .fkcart--item {
  border-bottom: 1px solid var(--ns-line) !important;
  padding-bottom: 18px !important;
}

#fkcart-modal .fkcart-image-wrapper {
  border-radius: var(--ns-r-md) !important;
  overflow: hidden;
  border: 1px solid var(--ns-line) !important;
}

#fkcart-modal .fkcart-image-wrapper img {
  border-radius: var(--ns-r-md) !important;
}

#fkcart-modal .fkcart-item-title {
  font-family: var(--font-family-primary) !important;
  color: var(--ns-ink) !important;
  font-weight: 600 !important;
}

#fkcart-modal .fkcart-quantity-selector {
  border: 1px solid var(--ns-ink) !important;
  border-radius: var(--ns-r-pill) !important;
  overflow: hidden;
  box-shadow: none !important;
}

#fkcart-modal .fkcart-remove-item {
  border-radius: var(--ns-r-sm) !important;
  color: var(--ns-muted) !important;
}

#fkcart-modal .fkcart-remove-item:hover {
  color: #b84f1c !important;
}

#fkcart-modal .fkcart-order-summary,
#fkcart-modal .fkcart-checkout-wrap {
  border-top: 1px solid var(--ns-line);
}

#fkcart-modal .fkcart-primary-button.fkcart-shop-button {
  border-radius: var(--ns-r-pill) !important;
  border: 1px solid var(--ns-line) !important;
  background: #fff !important;
  color: var(--ns-ink) !important;
}

#fkcart-modal .fkcart-primary-button.fkcart-shop-button:hover {
  background: var(--ns-paper-2) !important;
}

#fkcart-modal .fkcart-below-checkout-upsell .fkcart-add-product-button {
  background: var(--ns-orange) !important;
  color: #fff !important;
  border-radius: var(--ns-r-pill) !important;
  font-weight: 600 !important;
}

#fkcart-modal .fkcart-below-checkout-upsell .fkcart-add-product-button:hover {
  background: var(--ns-orange-2) !important;
}

#fkcart-modal .fkcart-item-wrap.fkcart-carousel-wrap {
  border-radius: var(--ns-r-md) !important;
  border: 1px solid var(--ns-line) !important;
  background: var(--ns-paper);
}

/* ── Moje konto (WooCommerce) ─────────────────────────────────────── */
body.woocommerce-account .woocommerce {
  gap: clamp(20px, 3vw, 40px);
}

body.woocommerce-account .woocommerce-MyAccount-navigation {
  background: transparent !important;
  padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul {
  gap: 10px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
  color: var(--ns-ink) !important;
  background: #fff !important;
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-md) !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 48px;
  padding: 10px 14px !important;
  font-weight: 600 !important;
  box-shadow: 0 1px 0 rgba(21, 17, 13, 0.04);
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: var(--ns-paper-2) !important;
  border-color: var(--ns-line) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.my-account__panel .woocommerce-MyAccount-navigation li:hover a {
  background: var(--ns-ink) !important;
  color: #fff !important;
  border-color: var(--ns-ink) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content {
  background: #fff;
  border: 1px solid var(--ns-line);
  border-radius: var(--ns-r-lg);
  padding: clamp(20px, 3vw, 32px);
  box-shadow: 0 12px 40px rgba(21, 17, 13, 0.06);
}

body.woocommerce-account .woocommerce-MyAccount-content h1,
body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
  font-family: "Fraunces", Georgia, "Times New Roman", serif;
  font-weight: 600;
  color: var(--ns-ink);
  letter-spacing: -0.02em;
}

body.woocommerce-account .woocommerce-MyAccount-content h2 {
  font-size: clamp(1.25rem, 2vw, 1.5rem);
  margin-bottom: 16px;
}

body.woocommerce-account .woocommerce-MyAccount-content .button,
body.woocommerce-account .woocommerce-MyAccount-content button.button,
body.woocommerce-account .woocommerce-MyAccount-content a.button {
  background: var(--ns-ink) !important;
  color: #fff !important;
  border-radius: var(--ns-r-pill) !important;
  padding: 10px 22px !important;
  min-height: 44px;
  font-weight: 600 !important;
  font-size: 15px !important;
  justify-content: center;
}

body.woocommerce-account .woocommerce-MyAccount-content .button:hover,
body.woocommerce-account .woocommerce-MyAccount-content button.button:hover,
body.woocommerce-account .woocommerce-MyAccount-content a.button:hover {
  background: #000 !important;
  color: #fff !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-form-row input,
body.woocommerce-account .woocommerce-MyAccount-content .form-row input,
body.woocommerce-account .woocommerce-MyAccount-content textarea,
body.woocommerce-account .woocommerce-MyAccount-content select {
  border: 1px solid var(--ns-line) !important;
  background: #fff !important;
  border-radius: var(--ns-r-md) !important;
  color: var(--ns-ink) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .select2-selection--single {
  border: 1px solid var(--ns-line) !important;
  background: #fff !important;
  border-radius: var(--ns-r-md) !important;
  color: var(--ns-ink) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a {
  background: var(--ns-orange) !important;
  border-radius: var(--ns-r-pill) !important;
  border: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Address-title a:hover {
  background: var(--ns-orange-2) !important;
}

body.woocommerce-account .woocommerce-orders-table,
body.woocommerce-account table.shop_table {
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-md) !important;
  overflow: hidden;
}

body.woocommerce-account .woocommerce-orders-table thead th,
body.woocommerce-account table.shop_table thead th {
  background: var(--ns-paper-2);
  color: var(--ns-muted);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-error {
  border-radius: var(--ns-r-md);
  border-left-width: 4px;
}

body.woocommerce-account .woocommerce form.login,
body.woocommerce-account .woocommerce form.register,
body.woocommerce-account .woocommerce form.lost_reset_password {
  background: #fff !important;
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-lg) !important;
  box-shadow: 0 12px 40px rgba(21, 17, 13, 0.06);
}

body.woocommerce-account .woocommerce form.login input.input-text,
body.woocommerce-account .woocommerce form.register input.input-text,
body.woocommerce-account .woocommerce form.lost_reset_password input.input-text {
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-md) !important;
  background: #fff !important;
}

body.woocommerce-account .woocommerce form.login .button,
body.woocommerce-account .woocommerce form.register .button,
body.woocommerce-account .woocommerce form.lost_reset_password .button {
  border-radius: var(--ns-r-pill) !important;
  background: var(--ns-ink) !important;
}

body.woocommerce-account .woocommerce form.login .button:hover,
body.woocommerce-account .woocommerce form.register .button:hover,
body.woocommerce-account .woocommerce form.lost_reset_password .button:hover {
  background: #000 !important;
}

/* ── Koszyk (strona, bloki Woo) ───────────────────────────────────── */
body.woocommerce-cart .woocommerce,
body.woocommerce-cart .wp-block-group {
  color: var(--ns-ink);
}

body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-cart .wc-block-components-button:not(.is-link) {
  background: var(--ns-ink) !important;
  color: #fff !important;
  border-radius: var(--ns-r-pill) !important;
  font-weight: 600 !important;
  padding: 12px 24px !important;
  border: none !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-cart .wc-block-components-button:not(.is-link):hover {
  background: #000 !important;
  color: #fff !important;
}

body.woocommerce-cart .wc-block-components-product-name,
body.woocommerce-cart .wc-block-cart-item__product-name {
  color: var(--ns-ink);
  font-weight: 600;
}

body.woocommerce-cart .wc-block-cart-items {
  border: 1px solid var(--ns-line);
  border-radius: var(--ns-r-lg);
  overflow: hidden;
  background: #fff;
}

body.woocommerce-cart .wc-block-cart-items__header th {
  background: var(--ns-paper-2);
  color: var(--ns-muted);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

body.woocommerce-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
  border-radius: var(--ns-r-sm);
}

body.woocommerce-cart .wc-block-components-quantity-selector {
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-pill) !important;
  overflow: hidden;
}

body.woocommerce-cart .wc-block-cart-item__image img,
body.woocommerce-cart .wc-block-components-product-image {
  border-radius: var(--ns-r-md) !important;
  border: 1px solid var(--ns-line) !important;
}

body.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar {
  border: 1px solid var(--ns-line);
  border-radius: var(--ns-r-lg);
  padding: clamp(16px, 2vw, 24px);
  background: #fff;
  box-shadow: 0 12px 40px rgba(21, 17, 13, 0.05);
}

body.woocommerce-cart .wc-block-components-totals-wrapper,
body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-block {
  border-radius: var(--ns-r-md);
}

body.woocommerce-cart .wc-block-cart__empty-cart__title {
  font-family: "Fraunces", Georgia, serif;
  color: var(--ns-ink);
}

body.woocommerce-cart .wc-block-components-notice-banner.is-info {
  border-radius: var(--ns-r-md);
}

/* Klasyczny koszyk (shortcode), jeśli kiedyś wróci */
body.woocommerce-cart table.shop_table {
  border: 1px solid var(--ns-line) !important;
  border-radius: var(--ns-r-lg) !important;
  overflow: hidden;
}

body.woocommerce-cart table.shop_table thead th {
  background: var(--ns-paper-2);
  color: var(--ns-muted);
  font-weight: 600;
}
