/* === SINGLE PRODUCT PAGE (bez header stilova) === */

/* Spusti sadržaj i container */
.single-product .single-product-wrap,
.single-product .sp-container {
  padding-top: 80px;
  width: 80%;
  margin: 0 auto;
}

/* Grid layout */
.single-product .sp-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
  margin-bottom: 60px;
}

/* ---------- GALERIJA ---------- */
.single-product .woocommerce-product-gallery {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.single-product .woocommerce-product-gallery__wrapper
  .woocommerce-product-gallery__image img {
  max-width: 1000px;
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: block;
  border-radius: 16px;
  object-fit: contain;
  box-shadow: 0 4px 20px rgba(0,0,0,.08);
  transition: transform .3s ease, box-shadow .3s ease;
}
.single-product .woocommerce-product-gallery__wrapper
  .woocommerce-product-gallery__image:hover img {
  transform: scale(1.02);
  box-shadow: 0 8px 30px rgba(0,0,0,.12);
}

.single-product .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
  gap: 10px;
  margin-top: 14px;
  padding: 0;
}
.single-product .flex-control-thumbs li { list-style: none; margin: 0 !important; }
.single-product .flex-control-thumbs img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
  opacity: .7;
  transition: all .25s ease;
  border: 2px solid transparent;
  cursor: pointer;
}
.single-product .flex-control-thumbs img:hover {
  opacity: 1;
  transform: translateY(-3px);
  border-color: #172443;
  box-shadow: 0 4px 12px rgba(23,36,67,.2);
}
.single-product .flex-control-thumbs .flex-active img {
  opacity: 1;
  border-color: #172443;
  box-shadow: 0 4px 12px rgba(23,36,67,.25);
  transform: translateY(-2px);
}

/* ---------- INFO DESNO ---------- */
.single-product .sp-title {
  font-size: 32px;
  margin: 0 0 12px;
  line-height: 1.3;
  font-weight: 700;
  color: #111827;
  letter-spacing: -0.02em;
}
.single-product .sp-price {
  font-weight: 700;
  font-size: 28px;
  margin: 16px 0 24px;
  color: #172443;
  display: flex;
  align-items: center;
  gap: 8px;
}
.single-product .sp-price del {
  font-size: 20px;
  color: #9ca3af;
  font-weight: 500;
  text-decoration: line-through;
}

/* Sakrij WooCommerce default prikaz cijene */
.single-product .woocommerce-variation-price,
.single-product .woocommerce-variation-price .price,
.single-product .woocommerce-variation-price-wrapper {
  display: none !important;
}
.single-product .sp-excerpt {
  opacity: .85;
  margin-bottom: 24px;
  font-size: 16px;
  line-height: 1.6;
  color: #4b5563;
}
.single-product .sp-add-to-cart .button {
  border-radius: 9999px;
  padding: 10px 18px;
  font-weight: 600;
  font-size: 15px;
}
.single-product .sp-meta {
  margin-top: 15px;
  font-size: 14px;
  opacity: .7;
}
.single-product .sp-tabs { margin-top: 50px; }

/* ---------- Responsive ---------- */
@media (max-width: 900px) {
  .single-product .sp-grid { grid-template-columns: 1fr; }
  .single-product .sp-container { width: 100%; padding-left:0 ;
    padding-right:0; 
  padding-bottom: 0;}
  .single-product .sp-title { font-size: 22px; }
}

/* ---------- VARIJACIJE (pills) ---------- */

/* default: pokaži select (fallback ako JS ne radi) */
.single-product .variations select[name^="attribute_"] { display:inline-block; }

/* kad JS napravi pills → sakrij select */
.variations_form.has-pills select[name^="attribute_"] { display:none; }

/* sakrij "Očisti" */
.variations_form .reset_variations { display:none; }
.variations_form.variation-selected .reset_variations { display:inline-block; }

/* pills stilovi */
.attr-pills {
  display: flex;
  gap: .75rem;
  flex-wrap: wrap;
  margin: .5rem 0 1.5rem;
}
.attr-pill {
  border: 2px solid #e5e7eb;
  border-radius: 999px;
  padding: .6rem 1.2rem;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  user-select: none;
  transition: all .2s ease;
  background: #fff;
  color: #374151;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}
.attr-pill:hover { 
  transform: translateY(-2px); 
  border-color: #172443;
  box-shadow: 0 4px 12px rgba(23,36,67,.15);
  background: #f8fafc;
}
.attr-pill.is-active { 
  border-color: #172443; 
  background: #172443;
  color: #fff;
  font-weight: 600;
  box-shadow: 0 4px 16px rgba(23,36,67,.25);
}
.attr-pill.is-disabled { 
  opacity: .4; 
  cursor: not-allowed; 
  text-decoration: line-through;
  background: #f3f4f6;
}
.attr-pill.is-disabled:hover {
  transform: none;
  border-color: #e5e7eb;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}
/* Variations: label iznad, opcije ispod */
.single-product form.variations_form table.variations,
.single-product form.variations_form table.variations tr,
.single-product form.variations_form table.variations td {
  display: block;
  width: 100%;
}

.single-product .variations td.label {
  margin: 0 0 10px;
  padding: 0;
  font-weight: 600;
  font-size: 15px;
  color: #111827;
  letter-spacing: 0.01em;
}

.single-product .variations td.value {
  margin: 0 0 16px;
  padding: 0;
}

/* Sakrij tip dekoracije na početku - prikazaće se kada se izabere veličina */
.single-product .variations tr:has(select[name*="attribute_pa_vez"]),
.single-product .variations tr:has(select[name*="attribute_pa_tip"]),
.single-product .variations tr:has(select[name*="attribute_pa_dekoracija"]),
.single-product .variations tr:has(select[name*="attribute_pa_decoration"]),
.single-product .variations tr:has(select[name*="attribute_pa_type"]) {
  display: none;
}

/* Stil za "Size" dugmad (pokriće najčešće swatch plugine) */
.single-product .variable-items-wrapper .variable-item,
.single-product .variable-items-wrapper .button-variable-item {
  border: 2px solid #e5e7eb;
  border-radius: 999px;
  padding: 8px 16px;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0 8px 8px 0;
  cursor: pointer;
  font-weight: 500;
  font-size: 14px;
  background: #fff;
  color: #374151;
  transition: all .2s ease;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

.single-product .variable-items-wrapper .variable-item:hover,
.single-product .variable-items-wrapper .button-variable-item:hover {
  transform: translateY(-2px);
  border-color: #172443;
  box-shadow: 0 4px 12px rgba(23,36,67,.15);
  background: #f8fafc;
}

.single-product .variable-items-wrapper .variable-item.selected,
.single-product .variable-items-wrapper .button-variable-item.selected,
.single-product .variable-items-wrapper .variable-item:focus {
  border-color: #172443;
  background: #172443;
  color: #fff;
  box-shadow: 0 4px 16px rgba(23,36,67,.25);
  font-weight: 600;
}
/* Primarna boja za "Dodaj u korpu" */
.single-product .single_add_to_cart_button.button {
  background: #172443 !important;
  border-color: transparent;
  box-shadow: 0 4px 16px rgba(23,36,67,.3);
}
.single-product .single_add_to_cart_button.button:hover {
  background: #0f1830 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(23,36,67,.4);
}
.single-product .single_add_to_cart_button.button:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(23,36,67,.3);
}
.onsale { display: none !important; }
/* Ostali proizvodi */
.sp-related {
  margin-top: 80px;
  padding-top: 60px;
  border-top: 1px solid #e5e7eb;
}
.sp-related__title {
  font-size: 28px;
  margin-bottom: 32px;
  font-weight: 700;
  color: #111827;
  letter-spacing: -0.02em;
}
.sp-related__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
}
.sp-related__item {
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  padding: 16px;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  transition: all .3s ease;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}
.sp-related__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
  border-color: rgba(23,36,67,.2);
}
.sp-related__thumb img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  border-radius: 12px;
  transition: transform .3s ease;
}
.sp-related__item:hover .sp-related__thumb img {
  transform: scale(1.05);
}
.sp-related__name {
  font-size: 16px;
  line-height: 1.4;
  margin: 12px 0 12px;
  font-weight: 600;
  color: #111827;
}
.sp-related__name a {
  color: #111827;
  text-decoration: none;
  transition: color .2s ease;
}
.sp-related__name a:hover {
  color: #172443;
}
.sp-related__btn {
  align-self: flex-start;
  border-radius: 9999px;
  padding: 10px 20px;
  font-weight: 600;
  font-size: 14px;
  background: #172443;
  color: #fff;
  border: none;
  transition: all 0.2s ease;
  box-shadow: 0 2px 8px rgba(23,36,67,.2);
  text-decoration: none;
  display: inline-block;
}
.sp-related__btn:hover { 
  background: #0f1830;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(23,36,67,.3);
  color: #fff;
}
.sp-related__btn:active {
  transform: translateY(0);
  box-shadow: 0 1px 4px rgba(23,36,67,.2);
}

@media (max-width: 1024px) {
  .sp-related__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 720px) {
  .sp-related__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 500px) {
  .sp-related__grid { grid-template-columns: 1fr; }
}
.sp-container { max-width: 1200px; margin: 0 auto; padding: 24px; }
.sp-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; }
.sp-title { margin: 0 0 16px; }
.sp-description { margin-top: 16px; }

.sp-related { margin-top: 48px; }
.sp-related__title { margin: 0 0 16px; }
.sp-related__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 16px;
}
.sp-related__thumb { display: block; }
.sp-related__img { display: block; width: 100%; height: auto; }
.sp-related__name { font-size: 16px; margin: 8px 0; line-height: 1.3; }
.sp-related__btn { display: inline-block; padding: 8px 12px; border: 1px solid #ddd; border-radius: 6px; }
@media (max-width: 900px) {
  .sp-grid { grid-template-columns: 1fr; }
  .sp-related__grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
/* Grid */
.sp-related__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}

/* Kartica = kolona */
.sp-related__item{
  display:flex;
  flex-direction:column;
  padding:16px;
  border:1px solid #eee;
  border-radius:12px;
  background:#fff;
  height:100%;
}

/* Okvir slike – svi isti */
.sp-related__thumb{
  width:100%;
  aspect-ratio: 3 / 4;      /* po želji: 1/1, 4/5, 2/3… */
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  flex:0 0 auto;
}

/* Slika se uklapa bez rezanja */
.sp-related__img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
}

/* Tekst i dugme */
.sp-related__name{ margin:12px 0 8px; line-height:1.3; }
.sp-related__btn{ margin-top:auto; align-self:flex-start; } /* gura dugme dole u svim karticama */

/* Responsive */
@media (max-width: 900px){
  .sp-related__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
.single-product .sp-description{ 
  margin-top: 24px; 
  font-size: 16px; 
  line-height: 1.7; 
  color: #4b5563;
  padding: 20px;
  background: #f9fafb;
  border-radius: 12px;
  border-left: 4px solid #172443;
}
/* Sakrij ako je prazan */
.single-product .sp-description:empty {
  display: none !important;
}
.single-product .sp-description p {
  margin-bottom: 12px;
}
.single-product .sp-description p:last-child {
  margin-bottom: 0;
}
/* Sakrij ako sadrži samo prazne paragrafe */
.single-product .sp-description p:empty {
  display: none;
}
/* Sakrij ako nema vidljivog teksta - dodatna provjera */
.single-product .sp-description:not(:has(*)):empty,
.single-product .sp-description:has(p:only-child:empty) {
  display: none !important;
}
/* === ADD TO CART BLOK === */
.single-product .sp-add-to-cart {
  margin-top: 32px;
  padding-top: 24px;
  border-top: 1px solid #e5e7eb;
}

.single-product .sp-add-to-cart .quantity {
  display: inline-flex;
  align-items: center;
  margin-right: 10px;
}

.single-product .sp-add-to-cart .quantity input[type="number"] {
  width: 70px;
  height: 44px;
  border: 2px solid #e5e7eb;
  border-radius: 12px;
  text-align: center;
  font-size: 16px;
  font-weight: 600;
  margin-right: 12px;
  background: #fff;
  color: #111827;
  transition: all .2s ease;
  box-shadow: 0 1px 3px rgba(0,0,0,.05);
}
.single-product .sp-add-to-cart .quantity input[type="number"]:focus {
  outline: none;
  border-color: #172443;
  box-shadow: 0 0 0 4px rgba(23,36,67,.1);
}
.single-product .sp-add-to-cart .quantity input[type="number"]::-webkit-inner-spin-button,
.single-product .sp-add-to-cart .quantity input[type="number"]::-webkit-outer-spin-button {
  opacity: 1;
  height: 20px;
}

/* Dugme "Dodaj u korpu" */
.single-product .single_add_to_cart_button.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 28px;
  font-size: 16px;
  font-weight: 600;
  border-radius: 9999px;
  border: none;
  background: #172443 !important;
  color: #fff;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 4px 16px rgba(23,36,67,.3);
  letter-spacing: 0.01em;
}

.single-product .single_add_to_cart_button.button:hover {
  background: #0f1830 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 24px rgba(23,36,67,.4);
}

.single-product .single_add_to_cart_button.button:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgba(23,36,67,.3);
}

/* Poravnanje quantity + dugme */
.single-product .sp-add-to-cart .cart {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
/* === CART PAGE – ČIST I FUNKCIONALAN === */

/* Container */
.woocommerce-cart .wc-cart-container{
  max-width:1200px; width:90%; margin:0 auto; padding:60px 0;
}
@media (max-width:900px){
  .woocommerce-cart .wc-cart-container{ width:100%; padding:150px 20px 40px 20px; }
}

/* 2 kolone: tabela lijevo, totals desno */
.woocommerce-cart .woocommerce{
  display:grid; grid-template-columns: 1.7fr 1fr; gap:40px; align-items:start;
}
@media (max-width:1024px){
  .woocommerce-cart .woocommerce{ grid-template-columns:1fr; gap:32px; }
}

/* Naslov korpe */
.woocommerce-cart .woocommerce-cart-form h2,
.woocommerce-cart .entry-title {
  font-size: 28px;
  font-weight: 700;
  color: #111827;
  margin-bottom: 32px;
}

/* TABELA */
.woocommerce-cart table.shop_table{ 
  width:100%; 
  border:0; 
  border-collapse:separate; 
  border-spacing:0 16px; 
  background:transparent; 
}
@media (max-width: 767px) {
  .woocommerce-cart table.shop_table thead{
    display: none;
  }
  .woocommerce-cart table.shop_table{
    width: 100%;
    display: block;
  }
  .woocommerce-cart table.shop_table tbody{
    display: block;
    width: 100%;
  }
  .woocommerce-cart table.shop_table tr.cart_item{
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-bottom: 20px;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 8px rgba(0,0,0,.04);
    position: relative;
  }
  .woocommerce-cart .cart_item td{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0;
    border: 0;
    border-bottom: 1px solid #f3f4f6;
    width: 100%;
    text-align: left;
  }
  .woocommerce-cart .cart_item td.product-remove{
    position: absolute;
    top: 12px;
    right: 12px;
    width: auto;
    padding: 0;
    border: 0;
    z-index: 20;
    display: block !important;
  }
  .woocommerce-cart .cart_item td.product-thumbnail{
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 40px 0 15px 0;
    border-bottom: 1px solid #f3f4f6;
    order: -1;
  }
  .woocommerce-cart .cart_item td:last-child{
    border-bottom: 0;
  }
  .woocommerce-cart .cart_item td:before{
    content: attr(data-title);
    font-weight: 600;
    color: #6b7280;
    margin-right: 12px;
    flex-shrink: 0;
  }
  .woocommerce-cart .product-remove:before{
    display: none !important;
  }
  .woocommerce-cart .product-remove a.remove{
    width: 36px;
    height: 36px;
    font-size: 18px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: rgba(239, 68, 68, 0.1) !important;
    border-radius: 50%;
    transition: all 0.2s ease;
  }
  .woocommerce-cart .product-remove a.remove:hover{
    background: #ef4444 !important;
    color: #fff !important;
    transform: scale(1.1);
  }
  .woocommerce-cart .product-thumbnail{
    width: 100% !important;
    padding: 0 !important;
    margin-bottom: 0;
    text-align: center;
    display: flex !important;
    justify-content: center;
    align-items: center;
  }
  .woocommerce-cart .product-thumbnail:before{
    display: none !important;
  }
  .woocommerce-cart .product-thumbnail a{
    display: block !important;
    width: auto;
  }
  .woocommerce-cart .product-thumbnail img{
    width: 120px !important;
    height: 120px !important;
    max-width: 120px !important;
    max-height: 120px !important;
    display: block !important;
    margin: 0 auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    border-radius: 12px;
    object-fit: cover !important;
  }
  .woocommerce-cart .product-name{
    width: 100%;
    padding: 0;
    text-align: left;
    flex-direction: column;
    align-items: flex-start;
  }
  .woocommerce-cart .product-name:before{
    display: none;
  }
  .woocommerce-cart .product-name a{
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 8px;
    width: 100%;
  }
  .woocommerce-cart .product-name small{
    font-size: 14px;
    margin-top: 4px;
    width: 100%;
  }
  .woocommerce-cart .product-price:before{
    content: "Cijena: ";
  }
  .woocommerce-cart .product-quantity{
    padding: 12px 0;
  }
  .woocommerce-cart .product-quantity:before{
    content: "Količina: ";
  }
  .woocommerce-cart .quantity{
    margin-left: auto;
  }
  .woocommerce-cart .quantity .qty{
    width: 80px;
    height: 44px;
    font-size: 15px;
  }
  .woocommerce-cart .product-subtotal:before{
    content: "Međuzbir: ";
  }
  .woocommerce-cart .product-subtotal{
    font-size: 18px;
    font-weight: 700;
  }
}
.woocommerce-cart table.shop_table thead th{
  border:0; 
  background:transparent; 
  color:#6b7280; 
  font-weight:600; 
  font-size:13px; 
  text-transform:uppercase;
  padding:0 0 12px 0;
}

/* KARTICE PROIZVODA */
.woocommerce-cart .cart_item td{
  background:#fff; 
  border:1px solid #e5e7eb; 
  padding:20px; 
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  transition: all 0.2s ease;
  vertical-align:middle;
}
.woocommerce-cart .cart_item:hover td{
  box-shadow: 0 4px 12px rgba(0,0,0,.08);
}
.woocommerce-cart .cart_item td:first-child{ 
  border-radius:12px 0 0 12px; 
}
.woocommerce-cart .cart_item td:last-child{ 
  border-radius:0 12px 12px 0; 
}

/* Remove dugme */
.woocommerce-cart .product-remove{ 
  width:40px; 
  text-align:center;
}
.woocommerce-cart .product-remove a.remove{ 
  color:#ef4444 !important; 
  font-size: 18px;
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(239, 68, 68, 0.1);
  transition: all 0.2s ease;
}
.woocommerce-cart .product-remove a.remove:hover{ 
  background: #ef4444;
  color: #fff !important;
}

/* Slika proizvoda - POVEĆANA */
.woocommerce-cart .product-thumbnail{ 
  width:160px !important; 
  padding-right: 32px;
  min-width: 160px;
}
.woocommerce-cart .product-thumbnail a{
  display: block;
}
.woocommerce-cart .product-thumbnail img,
.woocommerce-cart table.cart .product-thumbnail img,
.woocommerce-cart table.shop_table .product-thumbnail img{ 
  width:150px !important; 
  height:150px !important;
  object-fit: cover;
  border-radius:16px; 
  display:block;
  transition: transform 0.2s ease;
}
.woocommerce-cart .product-thumbnail a:hover img{
  transform: scale(1.02);
}

/* Naziv proizvoda - POVEĆAN PROSTOR */
.woocommerce-cart .product-name{ 
  padding-left: 32px !important;
  padding-right: 40px;
  min-width: 0;
  width: auto;
}
.woocommerce-cart .product-name a{ 
  font-weight:600; 
  color:#111827; 
  font-size: 21px;
  line-height: 1.4;
  text-decoration: none;
  display: block;
  margin-bottom: 12px;
  letter-spacing: -0.01em;
}
.woocommerce-cart .product-name a:hover{ 
  color:#172443;
}
.woocommerce-cart .product-name small{
  display: block;
  margin-top: 10px;
  color: #6b7280;
  font-size: 15px;
  line-height: 1.7;
  font-weight: 400;
  padding-right: 30px;
}

/* Cena */
.woocommerce-cart .product-price{ 
  font-size: 16px;
  font-weight: 500;
  color: #6b7280;
  white-space:nowrap;
}
.woocommerce-cart .product-subtotal{
  font-size: 20px;
  font-weight: 700;
  color: #111827;
  white-space:nowrap;
}

/* Quantity input - SA STRELICAMA */
.woocommerce-cart .quantity{
  display: inline-flex;
  align-items: center;
}
.woocommerce-cart .quantity .qty{
  width:90px; 
  height:48px; 
  border:2px solid #e5e7eb; 
  border-radius:10px;
  text-align:center; 
  font-size:16px; 
  font-weight: 600;
  color: #111827;
  outline:none;
  transition: all 0.2s ease;
  background: #fff;
  padding: 0 8px;
}
.woocommerce-cart .quantity .qty::-webkit-inner-spin-button,
.woocommerce-cart .quantity .qty::-webkit-outer-spin-button {
  opacity: 1;
  height: 48px;
  cursor: pointer;
}
.woocommerce-cart .quantity .qty:focus{ 
  border-color:#172443;
  box-shadow: 0 0 0 3px rgba(23,36,67,.1);
  background: #f9fafb;
}
.woocommerce-cart .quantity .qty:hover{
  border-color: #d1d5db;
}

/* Akcije ispod tabele */
.woocommerce-cart .actions{
  background:#f9fafb; 
  border:1px solid #e5e7eb;
  border-radius:12px;
  padding:20px; 
  display:flex; 
  align-items:center; 
  justify-content:space-between; 
  gap:16px;
  flex-wrap: wrap;
  margin-top: 24px;
}
.woocommerce-cart .coupon{ 
  display:flex; 
  gap:12px; 
  align-items:center;
  flex: 1;
  min-width: 250px;
}
.woocommerce-cart .coupon label{
  display: none;
}
.woocommerce-cart .coupon .input-text{
  height:44px; 
  border:1px solid #e5e7eb; 
  border-radius:8px; 
  padding:0 16px; 
  flex: 1;
  font-size: 15px;
  transition: all 0.2s ease;
}
.woocommerce-cart .coupon .input-text:focus{
  border-color: #172443;
  box-shadow: 0 0 0 3px rgba(23,36,67,.1);
  outline: none;
}

/* Dugmad – moderniji dizajn */
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button{
  background:#172443; 
  color:#fff; 
  border:0; 
  border-radius:12px; 
  padding:14px 28px; 
  font-weight:600; 
  font-size:15px;
  transition:all 0.3s ease;
  cursor: pointer;
  box-shadow: 0 4px 12px rgba(23,36,67,.2);
}
.woocommerce a.button:hover, 
.woocommerce button.button:hover, 
.woocommerce input.button:hover{
  background:#0f1830; 
  transform:translateY(-2px);
  box-shadow: 0 6px 20px rgba(23,36,67,.3);
}
.woocommerce a.button:active,
.woocommerce button.button:active,
.woocommerce input.button:active{
  transform:translateY(0);
}

/* Sekundarno dugme (Update cart) */
.woocommerce-cart .actions .button[name="update_cart"]{
  background:#fff; 
  color:#172443; 
  border:2px solid #172443;
  box-shadow: none;
}
.woocommerce-cart .actions .button[name="update_cart"]:hover{ 
  background:#172443;
  color: #fff;
  transform:translateY(-2px);
}

/* TOTALS KARTICA */
.woocommerce-cart .cart-collaterals .cart_totals{
  background:#fff; 
  border:1px solid #e5e7eb; 
  border-radius:16px; 
  padding:24px; 
  box-shadow:0 4px 16px rgba(0,0,0,.06);
  position:sticky; 
  top:100px;
}
.woocommerce-cart .cart_totals h2{
  font-size:22px; 
  margin:0 0 20px; 
  font-weight:700; 
  color:#111827;
  padding-bottom: 16px;
  border-bottom: 1px solid #e5e7eb;
}
.woocommerce-cart .cart-collaterals .shop_table{ 
  width:100%; 
  border:0; 
  background:transparent; 
}
.woocommerce-cart .cart-collaterals .shop_table th,
.woocommerce-cart .cart-collaterals .shop_table td{
  border:0; 
  background:transparent; 
  padding:12px 0; 
  color:#111827;
  font-size: 15px;
}
.woocommerce-cart .cart-collaterals .shop_table th{
  font-weight: 500;
  color: #6b7280;
  text-align: left;
}
.woocommerce-cart .cart-collaterals .shop_table td{
  font-weight: 600;
  text-align: right;
}
.woocommerce-cart .cart-collaterals .shop_table tr + tr td,
.woocommerce-cart .cart-collaterals .shop_table tr + tr th{ 
  border-top:1px solid #e5e7eb; 
}
.woocommerce-cart .cart-collaterals .order-total th,
.woocommerce-cart .cart-collaterals .order-total td{
  font-size: 20px;
  font-weight: 700;
  color: #172443;
  padding-top: 16px;
  border-top: 2px solid #e5e7eb !important;
}

/* Checkout dugme */
.woocommerce-cart .wc-proceed-to-checkout{ 
  margin-top:20px; 
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  width:100%; 
  display:inline-flex; 
  justify-content:center; 
  align-items:center;
  height:50px; 
  font-size:16px; 
  font-weight: 600;
  border-radius:12px; 
  background:#172443 !important; 
  color:#fff;
  box-shadow: 0 4px 12px rgba(23,36,67,.2);
  transition: all 0.2s ease;
  text-decoration: none;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
  background:#0f1830 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(23,36,67,.3);
}

/* Notifications - modernije */
.woocommerce-message, 
.woocommerce-error, 
.woocommerce-info{
  border-radius:12px; 
  border:0; 
  box-shadow:0 4px 16px rgba(0,0,0,.08);
  padding: 16px 20px;
  margin-bottom: 24px;
}
.woocommerce-message{
  background: #f0fdf4;
  color: #166534;
  border-left: 4px solid #22c55e;
}
.woocommerce-error{
  background: #fef2f2;
  color: #991b1b;
  border-left: 4px solid #ef4444;
}
/* ===== CART & CHECKOUT HEADER FIX ===== */
:root { --header-h: 88px; } /* promijeni po potrebi */

/* 1) Odmakni sadržaj od fiksnog headera (radi za block i classic teme) */
body.woocommerce-cart .wp-site-blocks,
body.woocommerce-checkout .wp-site-blocks,
body.woocommerce-cart main.site-main,
body.woocommerce-checkout main.site-main,
body.woocommerce-cart .site-content,
body.woocommerce-checkout .site-content {
  padding-top: calc(var(--header-h) + 20px) !important;
}

/* 2) Header pozadina SAMO na korpi/checkoutu */
body.woocommerce-cart .site-header,
body.woocommerce-checkout .site-header {
  background: #172443 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.08);
  z-index: 9999;
}

/* Naslovi u cart/checkout sekciji */
.woocommerce-cart .cart_totals h2,
.woocommerce-checkout h3 {
    font-family: 'Montserrat', sans-serif;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 15px;
    color: #111;
}

/* Tabela u korpi */
.woocommerce-cart table.cart th,
.woocommerce-cart table.cart td {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
}

/* Dugmad */
.woocommerce button.button, 
.woocommerce a.button.alt, 
.woocommerce input.button {
    background: #001F54; /* tvoja boja */
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    border-radius: 50px;
    padding: 15px 30px;
    transition: all 0.3s ease;
}

.woocommerce button.button:hover, 
.woocommerce a.button.alt:hover, 
.woocommerce input.button:hover {
    background: #003080; /* hover boja */
}




/* 5) Hover u meniju (opciono) */
body.woocommerce-cart .site-header nav a:hover,
body.woocommerce-checkout .site-header nav a:hover,
body.woocommerce-cart .site-header .wp-block-navigation a:hover,
body.woocommerce-checkout .site-header .wp-block-navigation a:hover {
  opacity: .85;
}
/* Cart layout – full width centriran */
.woocommerce-cart .woocommerce {
  display: block !important;
  width: 70%;
  margin: 0 auto;
  padding-top: 150px;
}
@media (max-width: 1024px) {
  .woocommerce-cart .woocommerce {
    width: 90%;
    padding-top: 40px;
  }
}
@media (max-width: 768px) {
  .woocommerce-cart .woocommerce {
    width: 100%;
    padding-top: 150px;
  }
}

/* Totals box ispod tabele */
.woocommerce-cart .cart-collaterals {
  margin-top: 30px;
}

.woocommerce-cart .cart_totals {
  max-width: 500px;
  margin: 0 auto;
}
/* Checkout stranica – centriranje i padding */
.woocommerce-checkout form.checkout {
  max-width: 900px;         /* širina forme */
  margin: 200px auto 200px; /* gore 200px, auto centrirano, dolje 200px */
  padding: 40px;            /* unutrašnji razmak */
  background: #fff;         /* bijela pozadina */
  border-radius: 12px;      /* zaobljeni uglovi */
  box-shadow: 0 4px 14px rgba(0,0,0,0.08); /* lagana sjenka */
}

/* Dugme "Završi narudžbu" – da bude u tvom stilu */
.woocommerce-checkout #place_order {
  background: #172443 !important;
  color: #fff !important;
  font-weight: 600;
  border-radius: 999px;
  padding: 12px 24px;
  font-size: 16px;
  transition: all 0.2s ease-in-out;
}

.woocommerce-checkout #place_order:hover {
  filter: brightness(0.9);
}
/* ========================================
   Vars (po želji prilagodi boje)
   ======================================== */
:root{
  --brand:#001F54;         /* primarna */
  --brand-hover:#003080;   /* hover */
  --text:#1b1b1b;
  --muted:#6b7280;
  --border:#e6e7eb;
  --bg:#ffffff;
  --soft:#f7f8fb;
  --radius:16px;
}

/* ========================================
   Wrapper / kartice
   ======================================== */
.woocommerce-checkout form.checkout{
  background:var(--bg);
  border-radius:var(--radius);
  box-shadow:0 10px 30px rgba(0,0,0,.06);
  padding:40px;
  font-family:'Montserrat',sans-serif;
}

.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2{
  background:var(--soft);
  border-radius:14px;
  padding:24px;
  border:1px solid var(--border);
}

/* Naslovi sekcija */
.woocommerce-checkout h3,
.woocommerce .cart_totals h2{
  font-weight:800;
  font-size:22px;
  color:var(--text);
  margin:0 0 18px;
}

/* ========================================
   Forme (label + inputi)
   ======================================== */
.woocommerce form .form-row{
  margin-bottom:14px;
}
.woocommerce form .form-row label{
  font-size:14px;
  color:var(--muted);
  margin-bottom:6px;
  display:block;
}
.woocommerce form .form-row .required{
  color:#e11d48; /* crvena zvjezdica */
}

/* input/select/textarea */
.woocommerce form .input-text,
.woocommerce form select,
.woocommerce form textarea{
  width:100%;
  padding:12px 14px;
  font-size:16px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  color:var(--text);
  outline:none;
  transition:border-color .2s, box-shadow .2s, background .2s;
}
.woocommerce form .input-text:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus{
  border-color:var(--brand);
  box-shadow:0 0 0 4px rgba(0,31,84,.08);
}

/* Placeholders malo svetliji */
.woocommerce ::placeholder{ color:#9aa3af; }

/* ========================================
   Tabela porudžbine (review order)
   ======================================== */
.woocommerce-checkout-review-order{
  background:var(--soft);
  border:1px solid var(--border);
  border-radius:14px;
  padding:20px;
}
.woocommerce-checkout-review-order table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  font-size:16px;
}
.woocommerce-checkout-review-order th{
  text-transform:uppercase;
  font-weight:700;
  letter-spacing:.4px;
  color:#374151;
  padding:14px 12px;
  background:#f2f4f8;
  border-bottom:1px solid var(--border);
  border-top-left-radius:10px;
  border-top-right-radius:10px;
}
.woocommerce-checkout-review-order td{
  padding:14px 12px;
  border-bottom:1px solid var(--border);
}
.woocommerce-checkout-review-order .cart_item:last-child td{
  border-bottom:1px solid var(--border);
}
.woocommerce-checkout-review-order .order-total th,
.woocommerce-checkout-review-order .order-total td{
  font-weight:800;
  font-size:18px;
  color:var(--text);
}

/* ========================================
   Payment box
   ======================================== */
.woocommerce-checkout #payment{
  background:var(--soft);
  border:1px solid var(--border);
  border-radius:14px;
  padding:18px;
  margin-top:18px;
}
.woocommerce-checkout #payment .payment_methods > .wc_payment_method{
  padding:10px 0;
  border-bottom:1px dashed #e5e7eb;
}
.woocommerce-checkout #payment .payment_methods > .wc_payment_method:last-child{
  border-bottom:0;
}
.woocommerce-checkout #payment .payment_box{
  background:#fff;
  border:1px solid var(--border);
  border-radius:12px;
  padding:14px;
  margin:10px 0 0 0;
}

/* ========================================
   Dugmad
   ======================================== */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #place_order{
  background:var(--brand);
  color:#fff;
  border:0;
  border-radius:999px;
  padding:14px 28px;
  font-weight:700;
  font-size:18px;
  line-height:1;
  cursor:pointer;
  transition:transform .07s ease, background .2s ease, box-shadow .2s ease;
  box-shadow:0 8px 20px rgba(0,31,84,.18);
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #place_order:hover{
  background:var(--brand-hover);
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(0,31,84,.22);
}

/* Sekundarno dugme (npr. kuponi) */
.woocommerce .button.alt{
  background:#111827;
}
.woocommerce .button.alt:hover{
  background:#0b1220;
}

/* ========================================
   Notifikacije / Error poruke
   ======================================== */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info{
  border-radius:12px;
  border:1px solid var(--border);
  padding:14px 16px;
  background:#fff;
  box-shadow:0 4px 14px rgba(0,0,0,.04);
}
.woocommerce-error{
  border-color:#fecaca;
  background:#fff1f2;
}
.woocommerce-message{
  border-color:#bbf7d0;
  background:#f0fdf4;
}

/* ========================================
   Sitni detalji
   ======================================== */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-additional-fields__field-wrapper{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px 16px;
}
.woocommerce-checkout .form-row-wide{ grid-column:1 / -1; }

/* required asterisk malo finiji */
.woocommerce form .required { font-weight:700; opacity:.9; }

/* ========================================
   Responsive
   ======================================== */
@media (max-width: 992px){
  .woocommerce-checkout form.checkout{ padding:26px; }
}
@media (max-width: 768px){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  .woocommerce-additional-fields__field-wrapper{
    grid-template-columns:1fr;
  }
  .woocommerce-checkout-review-order{ padding:14px; }
  .woocommerce-checkout h3{ font-size:20px; }
  .woocommerce #place_order{ width:100%; }
}
.woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last {
  width: 100% !important;
  overflow: visible;
}
.col2-set{
  padding-bottom: 20px;
}
.woocommerce-privacy-policy-text{
  display: none;
}

/* ========================================
   ORDER RECEIVED / THANK YOU PAGE - PREKRASAN
   ======================================== */
.woocommerce-order-received .woocommerce{
  max-width: 900px;
  margin: 150px auto;
  padding: 0 20px;
}
@media (max-width: 768px) {
  .woocommerce-order-received .woocommerce{
    margin: 120px auto;
    padding: 0 15px;
  }
}

/* Poruka o uspešnoj porudžbini */
.woocommerce-order-received .woocommerce-order{
  background: #fff;
  border-radius: 20px;
  padding: 40px;
  box-shadow: 0 8px 32px rgba(0,0,0,.08);
  border: 1px solid #e5e7eb;
}
@media (max-width: 768px) {
  .woocommerce-order-received .woocommerce-order{
    padding: 30px 20px;
  }
}

/* Naslov "Hvala" */
.woocommerce-order-received .woocommerce-order h2{
  font-size: 32px;
  font-weight: 700;
  color: #172443;
  margin-bottom: 12px;
  text-align: center;
}
@media (max-width: 768px) {
  .woocommerce-order-received .woocommerce-order h2{
    font-size: 26px;
  }
}

/* Poruka */
.woocommerce-order-received .woocommerce-order p{
  font-size: 16px;
  color: #6b7280;
  text-align: center;
  margin-bottom: 30px;
  line-height: 1.6;
}

/* Order details sekcija */
.woocommerce-order-received .woocommerce-order-details{
  margin-top: 40px;
  padding-top: 30px;
  border-top: 2px solid #e5e7eb;
}

.woocommerce-order-received .woocommerce-order-details h3{
  font-size: 22px;
  font-weight: 700;
  color: #111827;
  margin-bottom: 20px;
}

/* Tabela sa proizvodima */
.woocommerce-order-received .woocommerce-table{
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: #f9fafb;
  border-radius: 12px;
  overflow: hidden;
  margin-bottom: 30px;
}

.woocommerce-order-received .woocommerce-table thead th{
  background: #172443;
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 16px;
  text-align: left;
}

.woocommerce-order-received .woocommerce-table tbody td{
  background: #fff;
  padding: 20px 16px;
  border-bottom: 1px solid #e5e7eb;
  font-size: 15px;
  color: #111827;
}

.woocommerce-order-received .woocommerce-table tbody tr:last-child td{
  border-bottom: 0;
}

.woocommerce-order-received .woocommerce-table .product-name{
  font-weight: 600;
  color: #172443;
}

.woocommerce-order-received .woocommerce-table .product-total{
  font-weight: 700;
  color: #111827;
  text-align: right;
}

/* Order totals */
.woocommerce-order-received .woocommerce-table tfoot th,
.woocommerce-order-received .woocommerce-table tfoot td{
  background: #f9fafb;
  padding: 16px;
  font-weight: 600;
  border-top: 2px solid #e5e7eb;
}

.woocommerce-order-received .woocommerce-table tfoot .order-total th,
.woocommerce-order-received .woocommerce-table tfoot .order-total td{
  background: #172443;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  border-top: 3px solid #0f1830;
}

/* Billing/Shipping address */
.woocommerce-order-received .woocommerce-customer-details{
  margin-top: 40px;
  padding-top: 30px;
  border-top: 2px solid #e5e7eb;
}

.woocommerce-order-received .woocommerce-customer-details h3{
  font-size: 22px;
  font-weight: 700;
  color: #111827;
  margin-bottom: 20px;
}

.woocommerce-order-received .woocommerce-customer-details address{
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  padding: 24px;
  font-style: normal;
  line-height: 1.8;
  color: #374151;
  margin-bottom: 20px;
}

.woocommerce-order-received .woocommerce-customer-details address strong{
  color: #111827;
  font-weight: 600;
  display: block;
  margin-bottom: 8px;
}

/* Payment method */
.woocommerce-order-received .woocommerce-order-details__title{
  font-size: 18px;
  font-weight: 600;
  color: #6b7280;
  margin-top: 20px;
  margin-bottom: 8px;
}

.woocommerce-order-received .woocommerce-order-details__method{
  background: #f9fafb;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  padding: 12px 16px;
  color: #374151;
  font-size: 15px;
}

/* Responsive tabela */
@media (max-width: 768px) {
  .woocommerce-order-received .woocommerce-table{
    font-size: 14px;
  }
  .woocommerce-order-received .woocommerce-table thead{
    display: none;
  }
  .woocommerce-order-received .woocommerce-table tbody td{
    display: block;
    padding: 12px;
    text-align: left !important;
  }
  .woocommerce-order-received .woocommerce-table tbody td:before{
    content: attr(data-title) ": ";
    font-weight: 600;
    color: #6b7280;
    display: inline-block;
    margin-right: 8px;
  }
  .woocommerce-order-received .woocommerce-table tfoot th,
  .woocommerce-order-received .woocommerce-table tfoot td{
    display: block;
    padding: 12px;
  }
}