/* ============================================================
   wp-armor.css — neutralizacija WordPress i WooCommerce defaulta
   ------------------------------------------------------------
   Verzija 2, pisana prema STVARNOM ispisu s cee.foqa.hr
   (css/00-global-styles-inline.css, 2. 8. 2026.), ne prema pretpostavci.

   Učitava se između `cee-fonts` i `cee` — vidi inc/enqueue.php.

   NAČELO: `!important` samo tamo gdje core koristi `!important`
   ili gdje ga specifičnost čini neizbježnim. Sve ostalo se rješava
   redoslijedom, jer je redoslijed sada ispravan.
   ============================================================ */


/* ============================================================
   1. BLOCK GAP — riješen na izvoru, ovdje samo mreža za pad
   ------------------------------------------------------------
   `theme.json` → settings.spacing.blockGap: null. Time WordPress
   više NE ispisuje ove tri rečenice, koje su bile korijen problema:

     :root :where(.is-layout-flow) > *        { margin-block-start:24px; margin-block-end:0 }
     :root :where(.is-layout-constrained) > * { margin-block-start:24px; margin-block-end:0 }
     :where(.wp-site-blocks) > *              { margin-block-start:24px; margin-block-end:0 }

   Specifičnost prve dvije je (0,1,0) — jača od `h2{margin-bottom:24px}`
   u cee.css, pa se protiv njih nije moglo boriti običnim pravilom.
   Zato se gase, a ne nadjačavaju.

   Posljedica: gube se i default gapovi na flex/grid layoutima.
   Vraćamo ih na NULTOJ specifičnosti, da ih cee.css i inline stilovi
   nadjačaju bez otpora.
   ============================================================ */
:where(.is-layout-flex){ gap: 24px; }
:where(.is-layout-grid){ gap: 24px; }

/* Sigurnosna mreža: ako netko vrati blockGap u theme.json,
   ova pravila i dalje drže vertikalu na nuli. Ista specifičnost
   kao core (0,1,0), a učitavaju se poslije. */
:root :where(.is-layout-flow) > *,
:root :where(.is-layout-constrained) > *{ margin-block-start: 0; }
:where(.wp-site-blocks) > *{ margin-block-start: 0; }


/* ============================================================
   2. ŠIRINE
   ------------------------------------------------------------
   contentSize 820px steže sve što nije `alignwide`/`alignfull`.
   To je namjerno za tekstualne stranice, ali sekcije dizajna
   moraju biti pune širine.
   ============================================================ */
.wp-site-blocks > .alignfull{ margin-inline: 0; }

/* Traka je puna širine, `.cee-wrap` iznutra radi ograničenje. */
.cee-section,
.cee-band,
.cee-band-panel,
.cee-band-green{ max-width: none; width: 100%; }


/* ============================================================
   3. RADIUSI I SJENE
   ------------------------------------------------------------
   Na ovom sajtu radius je 0. Sjena postoji točno jedna
   (--cee-shadow-card, pod karticom kalkulatora).
   ============================================================ */
.wp-block-button__link,
.wp-block-search__button,
.wp-element-button,
.wp-block-image img,
input, select, textarea, button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-error,
.woocommerce ul.products li.product a img,
.woocommerce span.onsale,
.wc-block-components-button,
.wc-block-components-text-input input,
.formlayer-field input,
.formlayer-field select,
.formlayer-field textarea{
  border-radius: 0 !important;
  box-shadow: none !important;
}


/* ============================================================
   4. TIPOGRAFIJA
   ------------------------------------------------------------
   WooCommerce i pluginovi forsiraju vlastite obitelji i veličine.
   Sve nasljeđuje od tijela dokumenta.
   ============================================================ */
.woocommerce, .woocommerce *,
.wc-block-components-button,
.formlayer-form, .formlayer-form *,
input, select, textarea, button{
  font-family: inherit;
}
button, input, select, textarea{ font-size: inherit; line-height: inherit; }

/* Core `fluid typography` je isključen u theme.json (typography.fluid:false),
   pa clamp() vrijednosti prolaze nedirnute. Ovdje samo osiguravamo da
   Woo ne prepiše veličine naslova na arhivama. */
.woocommerce h1, .woocommerce h2, .woocommerce h3,
.wc-block-components-title{ font-size: inherit; }


/* ============================================================
   5. GUMBI
   ------------------------------------------------------------
   Sve što je gumb dobiva oblik `.cee-btn`. Ovdje se gasi naslijeđeno;
   boja i hover dolaze iz cee.css.
   ============================================================ */
.wp-block-button__link,
.wp-element-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce input.button,
.woocommerce #respond input#submit,
.wc-block-components-button{
  background-image: none;
  border: 1px solid transparent;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 700;
  font-size: 13px;
  line-height: 1;
  padding: 15px 26px;
  transition: background .2s ease, border-color .2s ease, color .2s ease;
}

/* Core računa padding gumba kroz em, pa se visina mijenja s veličinom
   fonta. Fiksiramo na vrijednost iz dizajn sustava. */
:root :where(.wp-element-button, .wp-block-button__link){
  padding: 15px 26px;
}


/* ============================================================
   6. FORME
   ------------------------------------------------------------
   `select.orderby` je na webshopu dolazio s crnim tekstom i sivim
   obrubom preglednika (provjera.mjs: rgb(0,0,0), rgb(118,118,118)).
   ============================================================ */
input[type="text"], input[type="email"], input[type="tel"],
input[type="number"], input[type="search"], input[type="url"],
select, textarea,
.woocommerce select.orderby,
.woocommerce-ordering select{
  color: var(--cee-ink);
  background-color: var(--cee-base);
  border: 1px solid var(--cee-hairline-strong);
  padding: 12px 14px;
  appearance: none;
}
::placeholder{ color: var(--cee-ink-muted); opacity: 1; }


/* ============================================================
   7. WOOCOMMERCE — obavijesti, oznake, cijene
   ============================================================ */
.woocommerce .woocommerce-error,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message{
  border-top-color: var(--cee-green);
  background: var(--cee-panel);
  color: var(--cee-ink);
}
.woocommerce span.onsale{
  background: var(--cee-gradient);
  color: var(--cee-on-green);
  min-width: 0; min-height: 0; line-height: 1;
  padding: 6px 10px; font-weight: 700; letter-spacing: .06em;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price{ color: var(--cee-ink); font-weight: 600; }
.woocommerce .star-rating span::before{ color: var(--cee-green-light); }
.woocommerce .quantity input.qty{ text-align: center; }


/* ============================================================
   8. COOKIEADMIN (banner kolačića)
   ------------------------------------------------------------
   provjera.mjs ga prijavljuje na SVAKOJ stranici: crni tekst,
   plavi gumb rgb(24,99,220), radius 4px, vlastita sjena.
   Plugin nije dio teme, ali je vidljiv korisniku i mora biti u sustavu.
   Njegov CSS je jak, pa je ovdje `!important` opravdan.
   ============================================================ */
.cookieadmin_consent_inside,
.cookieadmin_notice_con,
.cookieadmin_notice_con p,
.cookieadmin_notice_con b{
  color: var(--cee-ink) !important;
  font-family: inherit !important;
}
.cookieadmin_consent_inside{
  background: var(--cee-base) !important;
  border: 1px solid var(--cee-hairline-strong) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.cookieadmin_btn{
  border-radius: 0 !important;
  font-family: inherit !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  padding: 13px 22px !important;
  border: 1px solid transparent !important;
  transition: background .2s ease, border-color .2s ease, color .2s ease !important;
}
.cookieadmin_accept_btn{
  background: var(--cee-gradient) !important;
  color: var(--cee-on-green) !important;
}
.cookieadmin_accept_btn:hover{ background: var(--cee-gradient-hover) !important; }
.cookieadmin_reject_btn,
.cookieadmin_customize_btn{
  background: transparent !important;
  border-color: var(--cee-hairline-strong) !important;
  color: var(--cee-ink) !important;
}
.cookieadmin_reject_btn:hover,
.cookieadmin_customize_btn:hover{ border-color: var(--cee-green) !important; }


/* ============================================================
   9. SLIKE
   ============================================================ */
img, video{ max-width: 100%; height: auto; }
figure{ margin: 0; }
.wp-block-image img{ vertical-align: top; }


/* ============================================================
   10. FOKUS — vidljiv, jednobojan, bez plavog prstena preglednika
   ============================================================ */
:focus-visible{ outline: 2px solid var(--cee-green); outline-offset: 2px; }
.cee-section--green :focus-visible,
.cee-band-green :focus-visible{ outline-color: #FFFFFF; }


/* ============================================================
   11. ADMIN BAR — sticky header se lomi kad je prisutan
   ============================================================ */
body.admin-bar .cee-header{ top: 32px; }
@media screen and (max-width: 782px){ body.admin-bar .cee-header{ top: 46px; } }


/* ============================================================
   12. EMOJI — skripta je ugašena u enqueue.php, ovo je ostatak
   ============================================================ */
img.wp-smiley, img.emoji{ display: none; }
