/* PPWR Readiness Check - stilovi. Sve je ograničeno na .ppwr-rc kako ne bi utjecalo na temu.
   Boje se mogu nadjačati CSS varijablama na .ppwr-rc (npr. --ppwr-accent). */
.ppwr-rc {
  --ppwr-bg: #ffffff;
  --ppwr-fg: #1b1f23;
  --ppwr-muted: #5a6470;
  --ppwr-border: #d5dae0;
  --ppwr-accent: #0b5cad;
  --ppwr-accent-fg: #ffffff;
  --ppwr-ok: #1e7a3c;
  --ppwr-warn: #9a5b00;
  --ppwr-bad: #a32020;
  --ppwr-soft: #f4f6f8;
  color: var(--ppwr-fg);
  background: var(--ppwr-bg);
  border: 1px solid var(--ppwr-border);
  border-radius: 8px;
  max-width: 760px;
  margin: 1.5rem auto;
  font: inherit;
  line-height: 1.55;
}
@media (prefers-color-scheme: dark) {
  .ppwr-rc.ppwr-rc--auto-dark {
    --ppwr-bg: #14181c; --ppwr-fg: #e8ecef; --ppwr-muted: #9aa5b1; --ppwr-border: #2c343c;
    --ppwr-accent: #5aa7f0; --ppwr-accent-fg: #0b0f12; --ppwr-soft: #1c2229;
    --ppwr-ok: #5fcf85; --ppwr-warn: #f0b255; --ppwr-bad: #f08080;
  }
}
.ppwr-rc *, .ppwr-rc *::before, .ppwr-rc *::after { box-sizing: border-box; }
.ppwr-rc__panel { padding: 1.25rem 1rem; }
@media (min-width: 640px) { .ppwr-rc__panel { padding: 1.75rem 2rem; } }
.ppwr-rc__title { margin: 0 0 .75rem; font-size: 1.4rem; line-height: 1.25; }
.ppwr-rc h3 { margin: 1.5rem 0 .5rem; font-size: 1.1rem; }
.ppwr-rc__muted { color: var(--ppwr-muted); font-size: .92em; }
.ppwr-rc__error { color: var(--ppwr-bad); min-height: 1.4em; margin: .5rem 0; font-weight: 600; }
.ppwr-rc__success { color: var(--ppwr-ok); font-weight: 600; }
.ppwr-rc__fieldset { border: 0; padding: 0; margin: 1rem 0 0; min-width: 0; }
.ppwr-rc__question { font-size: 1.15rem; font-weight: 600; padding: 0; margin-bottom: .75rem; }
.ppwr-rc__option { display: flex; align-items: flex-start; gap: .6rem; padding: .6rem .75rem; margin: .35rem 0; border: 1px solid var(--ppwr-border); border-radius: 6px; background: var(--ppwr-bg); }
.ppwr-rc__option:focus-within { outline: 2px solid var(--ppwr-accent); outline-offset: 1px; }
.ppwr-rc__option input { margin-top: .3rem; flex: 0 0 auto; width: 1.1rem; height: 1.1rem; }
.ppwr-rc__option label { flex: 1 1 auto; cursor: pointer; }
.ppwr-rc__actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.25rem; }
.ppwr-rc__btn { appearance: none; border: 1px solid var(--ppwr-border); background: var(--ppwr-bg); color: var(--ppwr-fg); padding: .65rem 1.1rem; border-radius: 6px; font: inherit; font-weight: 600; cursor: pointer; min-height: 44px; }
.ppwr-rc__btn:hover { border-color: var(--ppwr-accent); }
.ppwr-rc__btn:focus-visible, .ppwr-rc input:focus-visible, .ppwr-rc a:focus-visible { outline: 2px solid var(--ppwr-accent); outline-offset: 2px; }
.ppwr-rc__btn--primary { background: var(--ppwr-accent); color: var(--ppwr-accent-fg); border-color: var(--ppwr-accent); }
.ppwr-rc__btn[disabled] { opacity: .6; cursor: progress; }
.ppwr-rc__progress { height: 6px; background: var(--ppwr-soft); border-radius: 3px; overflow: hidden; }
.ppwr-rc__progress span { display: block; height: 100%; background: var(--ppwr-accent); }
.ppwr-rc__progress-text { margin: 0 0 .4rem; color: var(--ppwr-muted); font-size: .9em; }
.ppwr-rc__band { padding: .85rem 1rem; border-radius: 6px; border: 1px solid var(--ppwr-border); background: var(--ppwr-soft); }
.ppwr-rc__band p { margin: .25rem 0 0; }
.ppwr-rc__band--low { border-left: 6px solid var(--ppwr-ok); }
.ppwr-rc__band--moderate { border-left: 6px solid var(--ppwr-warn); }
.ppwr-rc__band--high { border-left: 6px solid var(--ppwr-bad); }
.ppwr-rc__list { padding-left: 1.2rem; margin: .5rem 0; }
.ppwr-rc__item { margin: 0 0 1rem; padding-left: .25rem; }
.ppwr-rc__item-head { display: flex; flex-wrap: wrap; gap: .4rem .6rem; align-items: center; }
.ppwr-rc__item p { margin: .35rem 0; }
.ppwr-rc__actions-list { margin: .35rem 0; padding-left: 1.1rem; }
.ppwr-rc__badge { display: inline-block; padding: .1rem .55rem; border-radius: 999px; font-size: .78rem; font-weight: 700; border: 1px solid var(--ppwr-border); background: var(--ppwr-soft); white-space: nowrap; }
.ppwr-rc__badge--in_application { color: var(--ppwr-ok); border-color: var(--ppwr-ok); }
.ppwr-rc__badge--upcoming { color: var(--ppwr-warn); border-color: var(--ppwr-warn); }
.ppwr-rc__badge--dependent_on_implementing_act { color: var(--ppwr-muted); }
.ppwr-rc__badge--p-high { color: var(--ppwr-bad); border-color: var(--ppwr-bad); }
.ppwr-rc__badge--p-medium { color: var(--ppwr-warn); border-color: var(--ppwr-warn); }
.ppwr-rc__timeline { list-style: none; padding: 0; margin: .5rem 0; }
.ppwr-rc__timeline li { padding: .4rem 0; border-bottom: 1px solid var(--ppwr-border); }
.ppwr-rc__caveat { margin: .5rem 0; padding: .6rem .8rem; border: 1px dashed var(--ppwr-warn); border-radius: 6px; background: var(--ppwr-soft); font-size: .92em; }
.ppwr-rc details { margin: .35rem 0; }
.ppwr-rc summary { cursor: pointer; color: var(--ppwr-accent); }
.ppwr-rc__gate { margin-top: 1.75rem; padding: 1rem; border: 1px solid var(--ppwr-border); border-radius: 6px; background: var(--ppwr-soft); }
.ppwr-rc__field { margin: .75rem 0; }
.ppwr-rc__field label { display: block; font-weight: 600; margin-bottom: .25rem; }
.ppwr-rc__field input { width: 100%; padding: .6rem .7rem; border: 1px solid var(--ppwr-border); border-radius: 6px; font: inherit; background: var(--ppwr-bg); color: var(--ppwr-fg); min-height: 44px; }
.ppwr-rc__hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
@media (prefers-reduced-motion: no-preference) { .ppwr-rc__progress span { transition: width .2s ease; } }
@media print {
  .ppwr-rc { border: 0; max-width: none; }
  .ppwr-rc__noprint, .ppwr-rc__gate { display: none !important; }
  .ppwr-rc details { display: block; }
  .ppwr-rc details > * { display: block; }
}
