@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@500&display=swap');
/* ============================================================
   KK Dark — WooCommerce layer (Kai 2026-06-14)
   Bolt / termék / kosár / pénztár dark, branded styling.
   Loaded only on WC pages via mu-plugin (kk-woo-style.php).
   Mirrors the .course (kurzus-kártya) look from css-kurzusok.css.
   ============================================================ */
:root{
  --navy:#0F1C38; --navy-2:#0B1730; --navy-deep:#070F22; --navy-card:#11203F;
  --red:#BF1E2D; --red-bright:#E23544;
  --cream:#F8F4EE; --cream-dim:rgba(248,244,238,.64); --cream-faint:rgba(248,244,238,.42);
  --gold:#D8B871; --line:rgba(248,244,238,.12); --maxw:1240px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body.woocommerce,body.woocommerce-page,body.woocommerce-cart,body.woocommerce-checkout,body.woocommerce-account,
body.archive.post-type-archive-product,body.single-product{
  background:var(--navy-deep);color:var(--cream);font-family:'Inter',sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased
}
.woocommerce a,.woocommerce-page a{color:inherit;text-decoration:none}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px}

/* ── header / footer chrome (same as css-kurzusok) ── */
header{position:sticky;top:0;z-index:50;background:rgba(11,23,48,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
header .bar{display:flex;align-items:center;gap:30px;height:74px;max-width:var(--maxw);margin:0 auto;padding:0 40px}
header .logo img{height:42px;width:auto;display:block}
nav.main{display:flex;gap:24px;margin-left:6px;align-items:center}
nav.main a{font-size:15px;font-weight:600;color:var(--cream-dim);position:relative;padding:4px 0;transition:color .2s}
nav.main a:hover,nav.main a.active{color:var(--cream)}
header .spacer{flex:1}
.cta-red{background:var(--red);color:#fff;font-weight:700;font-size:14px;padding:11px 20px;border-radius:10px;transition:.2s;white-space:nowrap;display:inline-block}
.cta-red:hover{background:var(--red-bright)}
footer{background:var(--navy-deep);padding:52px 0 32px;border-top:1px solid var(--line)}
footer .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:13px;color:var(--cream-faint)}
footer .logo img{height:34px;width:auto}

/* ── content wrapper ── */
.content-area{max-width:var(--maxw);margin:0 auto;padding:56px 40px 90px}
.content-area main.site-main{display:block}

/* shop header */
.woocommerce-products-header{margin-bottom:30px}
.page-title,.woocommerce-products-header__title{font-family:'DM Serif Display',serif!important;font-size:clamp(34px,5vw,52px)!important;font-weight:400;color:var(--cream);letter-spacing:-.015em;line-height:1.08}
.term-description,.woocommerce-products-header p{color:var(--cream-dim);margin-top:12px;max-width:760px}
.woocommerce-result-count{color:var(--cream-faint);font-size:13.5px}
.woocommerce-ordering select,.woocommerce select,.woocommerce .select2-container .select2-selection{
  background:var(--navy-2);color:var(--cream);border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-family:'Inter';font-size:14px}
.woocommerce-breadcrumb{color:var(--cream-faint);font-size:13px;margin-bottom:22px}
.woocommerce-breadcrumb a{color:var(--cream-dim)}

/* ── product grid (mirror .course cards) ── */
.woocommerce ul.products{display:grid!important;gap:22px;margin:30px 0 0!important;list-style:none}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
.woocommerce ul.products.columns-4{grid-template-columns:repeat(4,1fr)}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{
  width:auto!important;margin:0!important;float:none!important;padding:0!important;
  border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--navy-2);
  transition:.25s;display:flex;flex-direction:column}
.woocommerce ul.products li.product:hover{transform:translateY(-4px);border-color:rgba(248,244,238,.22)}
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link{display:block;position:relative}
.woocommerce ul.products li.product img{width:100%!important;height:180px;object-fit:cover;margin:0!important;display:block;background:linear-gradient(135deg,#243a5e,#16243f)}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,.woocommerce ul.products li.product h3{
  font-family:'DM Serif Display',serif!important;font-size:20px!important;line-height:1.22;color:var(--cream);
  padding:20px 22px 0!important;margin:0!important;font-weight:400}
.woocommerce ul.products li.product .price{
  font-family:'DM Serif Display',serif!important;font-size:21px!important;color:var(--gold)!important;
  padding:10px 22px 0;margin:0;display:block;font-weight:400}
.woocommerce ul.products li.product .price del{color:var(--cream-faint);font-size:16px;opacity:.7;margin-right:8px}
.woocommerce ul.products li.product .price ins{text-decoration:none}
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart{
  margin:16px 22px 22px!important;display:block;text-align:center;background:var(--red)!important;color:#fff!important;
  font-family:'Inter'!important;font-weight:700!important;font-size:14px!important;padding:12px!important;border-radius:10px!important;
  border:0!important;transition:.2s;text-transform:none;letter-spacing:0;margin-top:auto!important}
.woocommerce ul.products li.product .button:hover{background:var(--red-bright)!important}
.woocommerce ul.products li.product .added_to_cart{margin-top:0!important;background:transparent!important;color:var(--gold)!important;border:1px solid var(--line)!important}

/* ── single product ── */
.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:46px;align-items:start}
.single-product div.product .woocommerce-product-gallery{margin:0}
.single-product .woocommerce-product-gallery__wrapper{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(135deg,#243a5e,#16243f);min-height:340px;display:block}
.single-product .woocommerce-product-gallery img{border-radius:18px}
.single-product div.product .product_title{font-family:'DM Serif Display',serif!important;font-size:clamp(28px,3.4vw,42px)!important;font-weight:400;color:var(--cream);line-height:1.1;margin-bottom:16px}
.single-product div.product .price,.single-product div.product p.price{font-family:'DM Serif Display',serif!important;font-size:30px!important;color:var(--gold)!important;margin-bottom:20px}
.single-product div.product .woocommerce-product-details__short-description{color:var(--cream-dim);font-size:16px;margin-bottom:26px}
.single-product .quantity input.qty{background:var(--navy-2);color:var(--cream);border:1px solid var(--line);border-radius:9px;padding:11px;width:74px;font-family:'Inter'}
.woocommerce div.product form.cart .button,.woocommerce-page div.product form.cart .button,
.single_add_to_cart_button{background:var(--red)!important;color:#fff!important;font-family:'Inter'!important;font-weight:700!important;
  font-size:16px!important;padding:15px 30px!important;border-radius:12px!important;border:0!important;text-transform:none;transition:.2s}
.single_add_to_cart_button:hover{background:var(--red-bright)!important;transform:translateY(-1px)}
.woocommerce-tabs{grid-column:1/-1;margin-top:54px}
.woocommerce-tabs ul.tabs{border:0;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.woocommerce-tabs ul.tabs li{background:var(--navy-2);border:1px solid var(--line)!important;border-radius:10px;margin:0}
.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce-tabs ul.tabs li a{color:var(--cream-dim);font-weight:600;padding:11px 18px}
.woocommerce-tabs ul.tabs li.active{background:var(--red);border-color:var(--red)!important}
.woocommerce-tabs ul.tabs li.active a{color:#fff}
.woocommerce-tabs .panel{color:var(--cream-dim);padding-top:24px}
.woocommerce-tabs .panel h2{font-family:'DM Serif Display',serif;color:var(--cream);font-weight:400}
.related.products,.upsells.products{grid-column:1/-1;margin-top:60px;border-top:1px solid var(--line);padding-top:40px}
.related.products>h2,.upsells.products>h2{font-family:'DM Serif Display',serif;font-size:28px;color:var(--cream);font-weight:400;margin-bottom:8px}

/* ── cart ── */
.woocommerce table.shop_table{background:var(--navy-2);border:1px solid var(--line);border-radius:14px;border-collapse:separate;overflow:hidden;color:var(--cream)}
.woocommerce table.shop_table th{color:var(--cream);font-family:'Inter';font-weight:700;border-bottom:1px solid var(--line);padding:16px}
.woocommerce table.shop_table td{border-top:1px solid var(--line);padding:16px;color:var(--cream-dim)}
.woocommerce table.shop_table td a{color:var(--cream)}
.woocommerce .cart .product-subtotal,.woocommerce .order-total .amount{color:var(--gold)}
.woocommerce-cart table.cart img{width:64px;border-radius:8px}
.woocommerce a.remove{color:var(--red-bright)!important;border:1px solid var(--line);background:transparent!important}
.woocommerce a.remove:hover{background:var(--red)!important;color:#fff!important}
.woocommerce .cart-collaterals .cart_totals,.woocommerce-checkout .woocommerce-checkout-review-order{
  background:var(--navy-2);border:1px solid var(--line);border-radius:16px;padding:26px}
.woocommerce .cart_totals h2,.woocommerce-checkout-review-order h3,.woocommerce h3#order_review_heading{
  font-family:'DM Serif Display',serif;color:var(--cream);font-weight:400;margin-bottom:14px}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,.woocommerce-checkout #place_order,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt{
  background:var(--red)!important;color:#fff!important;font-family:'Inter'!important;font-weight:700!important;font-size:16px!important;
  padding:15px 28px!important;border-radius:12px!important;border:0!important;width:100%;text-transform:none;transition:.2s}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,.woocommerce #place_order:hover{background:var(--red-bright)!important}
.woocommerce .button,.woocommerce input.button{background:var(--navy-card);color:var(--cream);border:1px solid var(--line);border-radius:10px;font-family:'Inter';font-weight:600;padding:12px 18px;transition:.2s}
.woocommerce .button:hover,.woocommerce input.button:hover{border-color:var(--cream-faint)}
.woocommerce .coupon input.input-text{background:var(--navy-2);color:var(--cream);border:1px solid var(--line);border-radius:9px;padding:12px}

/* ── checkout form fields ── */
.woocommerce form .form-row label,.woocommerce-checkout label{color:var(--cream-dim);font-size:14px;font-weight:600}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce-checkout input,
.woocommerce-checkout textarea,.woocommerce-checkout select,.select2-selection{
  background:var(--navy-2)!important;color:var(--cream)!important;border:1px solid var(--line)!important;border-radius:10px!important;padding:13px 14px!important;font-family:'Inter'}
.woocommerce form .form-row input.input-text::placeholder{color:var(--cream-faint)}
.woocommerce-checkout #customer_details{margin-bottom:10px}
.woocommerce-checkout .woocommerce-billing-fields h3,.woocommerce-checkout h3{font-family:'DM Serif Display',serif;color:var(--cream);font-weight:400}
.woocommerce-info,.woocommerce-message,.woocommerce-error,.woocommerce-noreviews,.woocommerce-NoticeGroup{
  background:var(--navy-2)!important;color:var(--cream)!important;border-top:3px solid var(--gold)!important;border-radius:10px}
.woocommerce-message{border-top-color:#46C28A!important}
.woocommerce-error{border-top-color:var(--red)!important}
.woocommerce-info::before,.woocommerce-message::before{color:var(--gold)}

/* ── WooCommerce Blocks (block-based cart / checkout) ── */
.wc-block-components-button.contained,.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,a.wc-block-cart__submit-button{
  background:var(--red)!important;color:#fff!important;border-radius:12px!important;
  font-family:'Inter'!important;font-weight:700!important;font-size:16px!important;padding:14px 26px!important;border:0!important;box-shadow:none!important}
.wc-block-components-button.contained:hover,.wc-block-cart__submit-button:hover,.wc-block-components-checkout-place-order-button:hover{background:var(--red-bright)!important}
.wc-block-cart .wc-block-components-sidebar,.wc-block-checkout__sidebar,.wc-block-components-totals-wrapper{
  background:var(--navy-2);border:1px solid var(--line);border-radius:16px}
.wc-block-components-product-name,.wc-block-cart-item__product,.wc-block-components-order-summary-item__description{color:var(--cream)!important}
.wc-block-components-totals-item__value,.wc-block-formatted-money-amount,.wc-block-components-totals-footer-item .wc-block-formatted-money-amount{color:var(--gold)!important}
.wc-block-components-totals-item__label,.wc-block-components-text-input label{color:var(--cream-dim)!important}
.wc-block-cart-items th,.wc-block-cart-items td,.wc-block-cart__totals-title{color:var(--cream)!important;border-color:var(--line)!important}
.wc-block-components-text-input input,.wc-block-components-text-input textarea,.wc-block-components-select__select{
  background:var(--navy-2)!important;color:var(--cream)!important;border:1px solid var(--line)!important;border-radius:10px!important}
.wc-block-components-product-metadata,.wc-block-cart-item__prices,.wc-block-components-order-summary{color:var(--cream-dim)!important}
.wp-block-woocommerce-cart .wc-block-cart__main h2,.wc-block-checkout__main h2,.wc-block-components-title{color:var(--cream)!important;font-family:'DM Serif Display',serif!important;font-weight:400}
.wc-block-components-product-badge,.wc-block-cart__sidebar .wc-block-components-panel{color:var(--cream-dim)}
.wc-block-components-quantity-selector{background:var(--navy-2);border:1px solid var(--line);border-radius:8px}
.wc-block-components-quantity-selector__input,.wc-block-components-quantity-selector__button{color:var(--cream)!important;background:transparent!important}

/* ── responsive ── */
@media(max-width:1024px){
  .woocommerce ul.products.columns-4{grid-template-columns:repeat(3,1fr)}
  .single-product div.product{grid-template-columns:1fr;gap:30px}
}
@media(max-width:768px){
  .content-area{padding:34px 20px 64px}
  header .bar{padding:0 20px}
  .woocommerce ul.products.columns-4,.woocommerce ul.products.columns-3{grid-template-columns:repeat(2,1fr)}
  footer .wrap{flex-direction:column;text-align:center}
}
@media(max-width:480px){
  .woocommerce ul.products.columns-4,.woocommerce ul.products.columns-3{grid-template-columns:1fr}
}
