/*
Theme Name: Kadence Child — Gigo Bulajić
Description: Child tema za fotografski portfolio. Tamna paleta, korekcije Kadence komponenti za tamnu pozadinu, block patterns i lokalno hostovani fontovi.
Author: Nadja Žarić
Version: 1.0.0
Template: kadence
Text Domain: kadence-gigo
*/

/* ==========================================================================
   1. TOKENI
   Kadence izlaže paletu kao --global-palette1 do --global-palette9.
   Ovdje im dajem čitljiva imena da ne pamtiš brojeve.
   ========================================================================== */

:root {
	--gigo-accent:      var(--global-palette1); /* #7ba7c7 */
	--gigo-accent-deep: var(--global-palette2); /* #5d8aa8 */
	--gigo-text-hi:     var(--global-palette3); /* #f2f2f0 */
	--gigo-text:        var(--global-palette4); /* #c9c9c6 */
	--gigo-text-mute:   var(--global-palette5); /* #8a8a88 */
	--gigo-line:        var(--global-palette6); /* #2a2a30 */
	--gigo-bg:          var(--global-palette7); /* #0d0d0f */
	--gigo-bg-raised:   var(--global-palette8); /* #16161a */
	--gigo-bg-subtle:   var(--global-palette9); /* #1f1f24 */

	--gigo-ease: cubic-bezier(0.22, 0.61, 0.36, 1);
}

/* ==========================================================================
   2. KOREKCIJE ZA TAMNU POZADINU
   Kadence komponente su izvedene iz svijetle logike i na tamnoj
   pozadini ispadaju pogrešno. Ovo su te ispravke.
   ========================================================================== */

/* Polja formi — default su bijela kutija na crnoj pozadini */
input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="password"],
textarea,
select {
	background-color: var(--gigo-bg-raised);
	border: 1px solid var(--gigo-line);
	color: var(--gigo-text);
	border-radius: 0;
	transition: border-color 0.2s var(--gigo-ease);
}

input:focus,
textarea:focus,
select:focus {
	border-color: var(--gigo-accent);
	outline: 2px solid transparent;
	outline-offset: 2px;
}

::placeholder {
	color: var(--gigo-text-mute);
	opacity: 1;
}

/* Razdjelnici i ivice */
hr,
.wp-block-separator,
.entry-content hr {
	border-color: var(--gigo-line);
	opacity: 1;
}

/* Tabele */
table th,
table td {
	border-color: var(--gigo-line);
}

/* Citati */
.wp-block-quote {
	border-left: 2px solid var(--gigo-accent);
	color: var(--gigo-text);
}

/* Kod */
code, pre {
	background-color: var(--gigo-bg-subtle);
	color: var(--gigo-text);
}

/* Odabir teksta */
::selection {
	background: var(--gigo-accent);
	color: var(--gigo-bg);
}

/* ==========================================================================
   3. DUGMAD
   Ravna, bez zaobljenja, tanka ivica. Bez sjenke.
   ========================================================================== */

.wp-block-button__link,
.kb-button,
button,
input[type="submit"] {
	border-radius: 0;
	box-shadow: none;
	font-family: var(--global-heading-font-family, inherit);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	padding: 1rem 2.25rem;
	transition: background-color 0.25s var(--gigo-ease),
	            color 0.25s var(--gigo-ease),
	            border-color 0.25s var(--gigo-ease);
}

/* Primarno — ispunjeno akcentom, tamni tekst zbog kontrasta */
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background-color: var(--gigo-accent);
	color: var(--gigo-bg);
	border: 1px solid var(--gigo-accent);
}

.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:focus-visible {
	background-color: var(--gigo-text-hi);
	border-color: var(--gigo-text-hi);
	color: var(--gigo-bg);
}

/* Sekundarno — samo ivica */
.wp-block-button.is-style-outline .wp-block-button__link {
	background-color: transparent;
	border: 1px solid var(--gigo-line);
	color: var(--gigo-text-hi);
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
	border-color: var(--gigo-accent);
	color: var(--gigo-accent);
}

/* ==========================================================================
   4. LINKOVI U SADRŽAJU
   ========================================================================== */

.entry-content a:not(.wp-block-button__link):not(.wp-element-button) {
	color: var(--gigo-text-hi);
	text-decoration: none;
	background-image: linear-gradient(var(--gigo-accent), var(--gigo-accent));
	background-repeat: no-repeat;
	background-position: 0 100%;
	background-size: 100% 1px;
	transition: background-size 0.3s var(--gigo-ease), color 0.3s var(--gigo-ease);
}

.entry-content a:not(.wp-block-button__link):hover {
	color: var(--gigo-accent);
	background-size: 100% 2px;
}

/* ==========================================================================
   5. HERO — puna slika s tekstom preko
   ========================================================================== */

.gigo-hero {
	position: relative;
	min-height: 92vh;
	display: flex;
	align-items: flex-end;
}

.gigo-hero .wp-block-cover__background,
.gigo-hero .has-background-dim::before {
	background: linear-gradient(
		to bottom,
		rgba(13, 13, 15, 0.35) 0%,
		rgba(13, 13, 15, 0.15) 40%,
		rgba(13, 13, 15, 0.92) 100%
	);
}

.gigo-hero .wp-block-cover__inner-container {
	padding-bottom: clamp(3rem, 8vw, 7rem);
}

.gigo-hero h1 {
	max-width: 18ch;
	line-height: 1.05;
}

.gigo-hero__kicker {
	color: var(--gigo-accent);
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	margin-bottom: 1.25rem;
}

.gigo-hero__lede {
	max-width: 46ch;
	color: var(--gigo-text);
}

@media (max-width: 767px) {
	.gigo-hero { min-height: 80vh; }
}

/* ==========================================================================
   6. LISTA EKSPEDICIJA
   Numerisana jer sadržaj jeste redoslijed — hronologija tura.
   ========================================================================== */

.gigo-expeditions {
	border-top: 1px solid var(--gigo-line);
}

.gigo-expedition {
	display: grid;
	grid-template-columns: 5rem 1fr auto;
	gap: 1.5rem;
	align-items: baseline;
	padding: clamp(1.5rem, 3vw, 2.5rem) 0;
	border-bottom: 1px solid var(--gigo-line);
	transition: padding-left 0.35s var(--gigo-ease);
}

.gigo-expedition:hover {
	padding-left: 1.25rem;
}

.gigo-expedition__num {
	font-family: var(--global-heading-font-family, inherit);
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: var(--gigo-text-mute);
	transition: color 0.35s var(--gigo-ease);
}

.gigo-expedition:hover .gigo-expedition__num {
	color: var(--gigo-accent);
}

.gigo-expedition__title {
	margin: 0;
	font-size: clamp(1.5rem, 3.5vw, 2.25rem);
	line-height: 1.15;
	color: var(--gigo-text-hi);
}

.gigo-expedition__meta {
	margin: 0.5rem 0 0;
	font-size: 0.9375rem;
	color: var(--gigo-text-mute);
}

.gigo-expedition__tag {
	font-size: 0.75rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--gigo-text-mute);
	white-space: nowrap;
}

@media (max-width: 767px) {
	.gigo-expedition {
		grid-template-columns: 3rem 1fr;
	}
	.gigo-expedition__tag {
		grid-column: 2;
	}
	.gigo-expedition:hover {
		padding-left: 0;
	}
}

/* ==========================================================================
   7. MARQUEE TRAKA
   Jedini pokret na stranici koji korisnik ne pokreće — zato je sam.
   ========================================================================== */

.gigo-marquee {
	overflow: hidden;
	border-top: 1px solid var(--gigo-line);
	border-bottom: 1px solid var(--gigo-line);
	padding: clamp(1.5rem, 4vw, 3rem) 0;
	background-color: var(--gigo-bg);
}

.gigo-marquee__track {
	display: flex;
	width: max-content;
	animation: gigo-scroll 32s linear infinite;
}

.gigo-marquee:hover .gigo-marquee__track {
	animation-play-state: paused;
}

.gigo-marquee__item {
	font-family: var(--global-heading-font-family, inherit);
	font-size: clamp(1.75rem, 5vw, 3.5rem);
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--gigo-text-hi);
	padding-right: 3rem;
	white-space: nowrap;
	text-decoration: none;
	display: inline-block;
}

.gigo-marquee__item:nth-child(even) {
	color: transparent;
	-webkit-text-stroke: 1px var(--gigo-line);
}

@keyframes gigo-scroll {
	from { transform: translateX(0); }
	to   { transform: translateX(-50%); }
}

/* ==========================================================================
   8. GALERIJA
   ========================================================================== */

.kb-gallery-wrap .kadence-blocks-gallery-item img {
	transition: opacity 0.4s var(--gigo-ease), transform 0.6s var(--gigo-ease);
}

.kb-gallery-wrap:hover .kadence-blocks-gallery-item img {
	opacity: 0.45;
}

.kb-gallery-wrap .kadence-blocks-gallery-item:hover img {
	opacity: 1;
}

/* ==========================================================================
   9. BLOG
   ========================================================================== */

.loop-entry {
	background: transparent;
	border: none;
	box-shadow: none;
	border-bottom: 1px solid var(--gigo-line);
	border-radius: 0;
}

.loop-entry .entry-content-wrap {
	padding-left: 0;
	padding-right: 0;
}

.entry-meta,
.entry-taxonomies {
	font-size: 0.75rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--gigo-text-mute);
}

/* ==========================================================================
   10. PRISTUPAČNOST
   ========================================================================== */

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
.wp-block-button__link:focus-visible {
	outline: 2px solid var(--gigo-accent);
	outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
	.gigo-marquee__track {
		animation: none;
		width: 100%;
		justify-content: center;
		flex-wrap: wrap;
	}
	.gigo-expedition,
	.gigo-expedition__num,
	.kb-gallery-wrap .kadence-blocks-gallery-item img,
	.entry-content a {
		transition: none;
	}
	.gigo-expedition:hover {
		padding-left: 0;
	}
}
