/* === VARIJABLE / KOLOR ŠEMA === */
:root {
    --boja-osnovna: #888ec6;
    --boja-osnovna-tamna: #3D3F57;
    --boja-osnovna-svetla: #b4b8e4;
    --boja-sekundarna: #BA94D1;
    --boja-sekundarna-tamna: #9250bb;
    --boja-pozadine-blaga: #474A66;
    --tekst-glavni: #fff;
    --tekst-bledukast: #a8adde;
    --boja-greske: #e74c3c;
    --boja-ciklama: #E31787;
    --boja-bela-transp-10: rgba(255,255,255,0.1);
    --boja-cena: #FF6DBD;
    --boja-cijan:#35e7ff;
}

/* === RESET === */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: sans-serif;
    background: var(--boja-osnovna-tamna);
    color: var(--tekst-glavni);
    line-height: 1.6;
}

.container {
    width: 90%;
    max-width: 1200px;
    margin: auto;
    padding: 1rem 0;
}

main {
	padding-top: 0.5rem;
}

/* === GLOBALNI LINK STIL === */
a {
    color: var(--boja-osnovna);
    text-decoration: none;
}

a:hover {
    color: var(--boja-osnovna-tamna);
    }

/* === HEADER === */
.site-header {
    background: linear-gradient(-45deg, var(--boja-osnovna), var(--boja-sekundarna), var(--boja-osnovna));
    background-size: 400% 400%;
    animation: animiraj-gradijent 6s ease infinite;
    position: relative;
    text-align: center;
    color: #fff;
}

/* Animacija */
@keyframes animiraj-gradijent {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

.site-header a {
    color: #fff;
    text-decoration: none;
}

.logo-centered .logo {
    font-size: 2rem;
    font-weight: bold;
    color: var(--boja-osnovna);
    text-decoration: none;
}

.logo {
    display: flex;
    justify-content: center;
    align-items: center;
}

.logo-svg {
    width: 150px;
    height: auto;
    display: block;
}



/* === FOOTER === */
.site-footer {
    background: var(--boja-osnovna-svetla);
    text-align: center;
}

.footer-nav {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.footer-meni {
    list-style: none;
    display: flex;
    gap: 2rem;
    padding: 0;
    margin: 0;
}

.footer-meni li {
    margin: 0;
}

.footer-meni a {
    color: #fff;
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.2s ease;
}

.footer-meni a:hover {
    color: var(--boja-sekundarna);
}

/* === SHOP STRANICA === */
.shop-page {
    padding-top: 3rem;
}

.shop-page .custom-shop-title {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 1rem;
    color: var(--tekst-glavni);
}

.shop-page .shop-intro {
    text-align: center;
    max-width: 600px;
    margin: 0 auto 2rem auto;
    font-size: 1rem;
    color: var(--tekst-bledukast);
}

.woocommerce-main-categories {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0.5rem;
    list-style: none;
    padding: 0;
    margin: 2rem 0;
}

.woocommerce-main-categories li a {
    display: inline-block;
    background-color: var(--boja-osnovna);
    color: #fff;
    padding: 0.6rem 1.2rem;
    border-radius: 5px;
    text-decoration: none;
    font-weight: bold;
    transition: background-color 0.3s;
}

.woocommerce-main-categories li a:hover {
    background-color: var(--boja-osnovna-tamna);
}

.woocommerce-main-categories li.current-cat a {
    background-color: var(--boja-sekundarna-tamna);
    color: #fff;
}

/* === PROIZVODI NA SHOP STRANICI === */
.woocommerce ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 2rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.woocommerce ul.products li.product {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 0.5rem;
    text-align: center;
}

.woocommerce ul.products li.product:hover {
    transform: translateY(-3px);
    transition: all 0.3s ease-out;
}

.woocommerce ul.products li.product img {
    width: 100%;
    max-width: 300px;
    height: auto;
    border-radius: 6px;
}

.woocommerce-loop-product__title {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--tekst-glavni);
}

.woocommerce ul.products li.product .price {
    font-size: 1rem;
    font-weight: bold;
    color: var(--boja-cena);
    margin-bottom: 1rem;
}

.product-subcategories {
    font-size: 0.9rem;
    color: var(--tekst-bledukast);
    display: inline-block;
    width: 100%;
}

.product-subcategory { margin:.25rem 0 .5rem; font-size:.95rem; opacity:.9; }
.product-cat-short-desc { margin:.75rem 0 1rem; color: var(--boja-osnovna-tamna); line-height: 1.2; }
.product-cat-title { margin:0 0 .5rem; font-size:1rem; font-weight:600; }

/* Bedž: POSLEDNJI KOMAD */
.babl-last-piece-badge, .onsale{
    position: absolute;
    top: 0;
    left: 10px;
    transform: translate(0, -50%); /* centriranje po X i Y */
    z-index: 5;
    background: var(--boja-ciklama, #E31787);
    color: var(--tekst-glavni, #fff);
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
    padding: 12px 18px;
    border-radius: 9999px; /* full pill shape */
    box-shadow: 0 4px 10px rgba(0,0,0,0.2);
    letter-spacing: .3px;
    text-align: center;
    white-space: nowrap;
}

/* osiguraj da parent thumbnail ima position */
.woocommerce ul.products li.product,
.woocommerce ul.products li.product .woocommerce-loop-product__link,
.single-product .product .images,
.single-product .product .woocommerce-product-gallery {
    position: relative;
}



/* AKCIJSKA CENA  - LISTA PROIZVODA (loop) */

.woocommerce .price {
     color: var(--boja-cena);
    text-decoration: none;
    font-weight: 700;
    font-weight: bold;
    font-size: 1.2rem;
    display: inline-block;
    margin-bottom: 1rem;
}


.woocommerce ul.products li.product .price del {
    color: var(--tekst-bledukast, #a8adde) !important;
    opacity: .7;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: currentColor;
    margin-right: .35em;
    font-weight: 400;
}

.woocommerce ul.products li.product .price ins {
    color: var(--boja-cena);
    text-decoration: none;
    font-weight: 700;
    font-weight: bold;
    font-size: 1.2rem;
    display: inline-block;
    margin-bottom: 1rem;
}

/* AKCIJSKA CENA  - SINGLE PRODUCT STRANA */
.single-product .price del {
    color: var(--tekst-bledukast, #a8adde);
    opacity: .7;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    text-decoration-color: currentColor;
    margin-right: .5em;
    font-weight: 400;
}

.single-product .price ins {
     color: var(--boja-cena);
    text-decoration: none;
    font-weight: 700;
    font-weight: bold;
    font-size: 1.2rem;
    display: inline-block;
    margin-bottom: 1rem;
}

/* (opciono) malo smanji staru cenu da vizuelno “uglasi” */
.woocommerce .price del .amount { font-size: .95em; }

/* (opciono) Product Price block u FSE/Blocks temama */
.wc-block-components-product-price del {
    color: var(--tekst-bledukast, #a8adde);
    opacity: .7;
    text-decoration: line-through;
    text-decoration-thickness: 2px;
    margin-right: .35em;
}
.wc-block-components-product-price ins {
     color: var(--boja-cena);
    text-decoration: none;
    font-weight: 700;
    font-weight: bold;
    font-size: 1.2rem;
    display: inline-block;
    margin-bottom: 1rem;
}

.woocommerce-pagination {
  display: flex;
  justify-content: center;
  margin: 40px 0;
}

.woocommerce-pagination ul {
  display: flex;
  gap: 10px;
  list-style: none;
  padding: 0;
}

.woocommerce-pagination li a,
.woocommerce-pagination li span {
  display: inline-block;
  padding: 8px 14px;
  border: 1px solid #ddd;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.2s ease;
}

.woocommerce-pagination li a:hover,
.woocommerce-pagination li span.current {
  background-color: var(--boja-ciklama);
  color: #fff;
  border-color: var(--boja-ciklama);
}




/* Dugmad */

.wc-block-cart__submit-container a:hover {
    background-color: var(--boja-sekundarna-tamna);
    color: #fff;
    border:1px solid var(--boja-pozadine-blaga);
}

.wc-block-cart__submit-container a {
    
    background-color: var(--boja-pozadine-blaga);
    border:1px solid var(--boja-sekundarna-tamna);
}
.woocommerce ul.products li.product .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    
	display: inline-block;
	background-color: var(--boja-osnovna);
	color: #fff;
	padding: 1.2rem 3.6rem;
	font-size: 1.1rem;
	border: none;
	border-radius: 4px;
	text-transform: uppercase;
	transition: background-color 0.3s;
	text-decoration: none;
	cursor: pointer;
    margin-bottom: 1rem;

}

.woocommerce ul.products li.product .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
    background-color: var(--boja-cena);
}

/* === SINGLE PRODUCT === */

/* Vizuelni hint da se može zoom-ovati */
.woocommerce div.product div.images .woocommerce-product-gallery__image img {
    cursor: zoom-in;
}

/* Za tamne teme – skrivanje ivice lens-a, ako se pojavljuje */
.pswp__zoom-wrap img { 
    image-rendering: auto;
}

/* Ako ne želiš hover-zoom na mobilnim uređajima */
@media (max-width: 768px) {
  .woocommerce div.product div.images .woocommerce-product-gallery__image img {
    cursor: auto;
  }
}


.product_title {
    line-height: 1.2;
}



.woocommerce-breadcrumb .container {
    padding-bottom: 0;
}

.single-product-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    margin-bottom: 3rem;
}

.product-gallery {
    flex: 1 1 50%;
    margin-top: -1.5rem;
}

.product-gallery img {
    border-radius: 10px;
}

.kategorija-naziv {
    color: var(--tekst-bledukast);
    font-size:1.2rem;
}

.product-summary {
    flex: 1 1 40%;
	background-color: var(--boja-pozadine-blaga);
	padding: 20px;
	border-radius: 10px;

}

.product-subcategory {
    font-size: 1rem;
    color: var(--boja-osnovna-tamna);
    margin-bottom: 1rem;
    font-weight: 500;
    text-transform: uppercase;
}

.opis-naslov {
    margin-top: 1.5rem;
    font-size: 1.1rem;
    font-weight: bold;
    color: var(--tekst-glavni);
}

.opis_proizvoda {
margin-bottom: 1rem;
border-bottom: 1px solid var(--boja-bela-transp-10);
padding-bottom: 0.5rem;
}

.saveti-link {
    display: inline-block;
    margin-top: 1rem;
}

.opis-kategorije ~ ul {
    padding-left: 1rem;
}

/* ===== Single product gallery – responsive ===== */
.woocommerce-product-gallery {
  width: 100%;
}

.woocommerce-product-gallery__wrapper {
  /*display: grid;
  gap: 12px; */
}

/* Glavna slika zauzima punu širinu, bez deformacije */
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* Thumbnail list (Flexslider thumbs) kao uredna mreža na desktopu */
.woocommerce-product-gallery .flex-control-nav {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(72px, 1fr));
  gap: 8px;
  margin-top: 6px;
}

.woocommerce-product-gallery .flex-control-nav li {
  list-style: none;
}

.woocommerce-product-gallery .flex-control-nav img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  opacity: .9;
  transition: opacity .15s ease, transform .15s ease;
}
.woocommerce-product-gallery .flex-control-nav img:hover {
  opacity: 1;
  transform: translateY(-1px);
}

/* Na mobilu: horizontalni scroll za thumb-ove + snap */
@media (max-width: 640px){
  .woocommerce-product-gallery__wrapper {
    gap: 10px;
  }
  .woocommerce-product-gallery .flex-control-nav {
    display: flex !important;
    overflow-x: auto;
    gap: 10px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  .woocommerce-product-gallery .flex-control-nav li {
    flex: 0 0 76px;
    scroll-snap-align: start;
  }
}






/* === Variations (dropdowns) === */

.variations {
    margin-bottom: 1rem;
}

.variations select {
    
    padding: 0.6rem 1rem;
    border: 1px solid var(--boja-osnovna-svetla);
    border-radius: 6px;
    
    font-size: 1rem;
    
    transition: border-color 0.3s ease;
    
}

.variations select:focus {
    border-color: var(--boja-osnovna);
    outline: none;
    box-shadow: 0 0 0 2px rgba(136, 142, 198, 0.2);
}

.variations .label::after {
    content: ": ";
    margin-right: 10px;
}

.variations .reset_variations {
    margin-left: 10px;
    background-color: var(--boja-osnovna);
    color: #fff;
    padding: 0.6rem 1rem;
    border-radius: 6px; 
}

.variations .reset_variations::before {
    content: "X "
}

/* === Quantity input === */

.woocommerce .quantity input::-webkit-inner-spin-button,
.woocommerce .quantity input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Optional: Add styling for +/- buttons if added later */
/* === Quantity with +/- buttons === */

/* WebKit (Chrome/Edge/Safari/Opera) */
.quantity .qty::-webkit-outer-spin-button,
.quantity .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox (noviji i stariji) */
.quantity .qty {
  appearance: textfield;        /* noviji FF */
  -moz-appearance: textfield;   /* stariji FF */
}

/* Eksplicitno sakrij FF spin delove */
.quantity .qty::-moz-number-spin-box,
.quantity .qty::-moz-number-spin-up,
.quantity .qty::-moz-number-spin-down {
  display: none;
}


.woocommerce .quantity::before {
    content: "Količina:";
    font-weight: 600;
    margin-right: 0.5rem;
}

.woocommerce .quantity {
	display: inline-block;
	align-items: center;
	overflow: hidden;
	/* max-width: 130px; */
	margin-bottom: 1rem;
	width: 100%;
}

.woocommerce .quantity input.qty {
    border: 1px solid var(--boja-osnovna-svetla);
    border-radius: 6px;
    text-align: center;
    width: 50px;
    font-size: 1rem;
    padding: 0.5rem;
    outline: none;
    appearance: none;
}

.quantity-button {
    background-color: var(--boja-osnovna);
    color: #fff;
    border: none;
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
    cursor: pointer;
    transition: background-color 0.3s;
}

.quantity-button:hover {
    background-color: var(--boja-osnovna-tamna);
}



.related-products-wrapper {
    margin-top: 4rem;
}

.related-title {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    text-align: center;
}

/* === WooCommerce Global Notices (tamna tema, tvoje boje) === */

.woocommerce-notices-wrapper {
    margin:auto;
    max-width: 1200px;
    padding-top: 1rem;
    
}

/* SUCCESS – proizvod dodat u korpu */
.woocommerce-message {
    background-color: var(--boja-bela-transp-10);
    border: 2px solid #60BEE0;
    color: var(--tekst-glavni);
    padding: 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1.5rem;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 4px 12px rgba(0,0,0,.25);
}
.woocommerce-message::before {
    content: "✔";
    color: var(--boja-osnovna-svetla);
    font-weight: bold;
    margin-right: .75rem;
}
.woocommerce-message a {
    background: var(--boja-osnovna);
    color: #fff !important;
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    transition: background-color .2s ease;
}
.woocommerce-message a:hover {
    background: var(--boja-osnovna-tamna);
}

/* INFO – obaveštenja (npr. “You must be logged in…”) */
.woocommerce-info {
    background-color: var(--boja-bela-transp-10);
    border: 2px solid var(--boja-sekundarna);
    color: var(--tekst-glavni);
    padding: 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1.5rem;
    font-size: 1rem;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,.25);
}
.woocommerce-info::before {
    content: "ℹ";
    color: var(--boja-sekundarna);
    font-weight: bold;
    margin-right: .75rem;
}
.woocommerce-info a {
    color: var(--boja-sekundarna-tamna);
    font-weight: 600;
    text-decoration: underline;
}

/* ERROR – greške (npr. kupon, checkout) */
.woocommerce-error {
    background-color: var(--boja-bela-transp-10);
    border: 2px solid var(--boja-greske);
    color: var(--boja-greske);
    padding: 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1.5rem;
    font-size: 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    box-shadow: 0 4px 12px rgba(0,0,0,.25);
}
.woocommerce-error::before {
    content: "⚠";
    color: var(--boja-greske);
    font-weight: bold;
    margin-right: .75rem;
}
.woocommerce-error a {
    color: var(--boja-greske);
    font-weight: 600;
    text-decoration: underline;
}



/* === SLIČNI PROIZVODI === */
.related.products {
    background-color: var(--boja-pozadine-blaga);
    padding: 4rem 2rem;
    margin-top: 3rem;
    text-align: center;
}

.related.products h2 {
    font-size: 2rem;
    margin-bottom: 2rem;
    color: var(--tekst-glavni);
}

.related.products ul.products {
    display: flex !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 2rem;
    padding: 0;
    margin: 0 auto;
    list-style: none;
}

.related.products ul.products li.product {
    max-width: 300px;
    width: 100%;
    flex: 1 1 300px;
    float: none !important;
    margin: 0 !important;
}







/* === KORPA & CHECKOUT === */
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout .col2-set {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}

.woocommerce form .form-row {
    margin-bottom: 1rem;
}

.wc-block-components-sidebar {
	border-left: 1px solid var(--boja-bela-transp-10);
}

.wc-block-grid__products .wc-block-grid__product-image img {
	
	border-radius: 10px;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
	color: var(--boja-cena);
}

.wc-block-components-title.wc-block-components-title {
	
	color: var(--boja-osnovna);
}

.wc-block-components-validation-error {
    color: #ff9c91 !important;
}

.postarina-napomena {
    padding: 1rem;
    color: var(--boja-osnovna);
}
/* === RESPONSIVE === */
@media (max-width: 600px) {
    .woocommerce ul.products {
        grid-template-columns: 1fr !important;
    }

    .woocommerce-loop-product__title {
        font-size: 1rem;
    }

    .shop-page .custom-shop-title {
        font-size: 1.5rem;
    }
}

/* === LOGO ANIMACIJA === */
.logo svg {
    width: 150px;
    height: auto;
    transition: transform 0.5s ease;
    animation: pulse-shadow 3s infinite ease-in-out;
}

@keyframes pulse-shadow {
    0% {
        filter: drop-shadow(0 0 0px var(--boja-sekundarna));
    }
    50% {
        filter: drop-shadow(0 0 24px var(--boja-sekundarna));
    }
    100% {
        filter: drop-shadow(0 0 0px var(--boja-sekundarna));
    }
}


.header-social-links {
    position: absolute;
  left: 20px;
  
}

.header-cart {
    position: absolute;
    right:20px;
}

.header-social-links a,
.header-cart a {
  display: inline-block;
  background-color: var(--boja-osnovna-tamna);
  padding: 10px;
  line-height: 0;
  border-radius: 20px;
  position: relative;
  z-index: 0;
  border: none;
  transition: transform 0.2s ease;
  text-decoration: none;
  margin-right: 5px;
}

.header-social-links a::before,
.header-cart a::before {
  content: '';
  position: absolute;
  inset: -2px;
  border-radius: 22px;
  background: var(--boja-osnovna-svetla);
  z-index: -1;
  transition: background 0.4s ease;
}

.header-social-links a:hover::before,
.header-cart a:hover::before {
  background: linear-gradient(var(--angle), #00e5ff, #ff00c8, #00e5ff);
  animation: rotiraj-border 3s linear infinite;
}

.header-social-links a::after,
.header-cart a::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 20px;
  background-color: var(--boja-osnovna-tamna);
  z-index: -1;
}

.header-social-links a svg,
.header-cart a svg {
  display: block;
  position: relative;
  z-index: 1;
  color: var(--boja-osnovna);
  transition: color 0.35s ease;
}

.header-social-links a:hover svg,
.header-cart a:hover svg {
  color: white;
}

.cart-count {
  position: relative;
  z-index: 2;
}

@property --angle {
  syntax: '<angle>';
  inherits: false;
  initial-value: 0deg;
}

@keyframes rotiraj-border {
  to { --angle: 360deg; }
}

.header-cart .cart-icon {
    display: block;
    width: 36px;
    height: 36px;
}

.header-cart .cart-count {
    position: absolute;
    top: -0px;
    right: -8px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--boja-ciklama);
    color: #fff;
    font-size: 12px;
    line-height: 18px;
    text-align: center;
    font-weight: 600;
}

.header-cart a.has-items::before {
  background: linear-gradient(var(--angle), #00e5ff, #ff00c8, #00e5ff);
  animation: rotiraj-border 3s linear infinite;

}

label {
	color:var(--boja-osnovna) !important;
}