/* ============================================================
   Mjerna oprema i umjeravanje — plan 080, paket I2

   Proširuje qms.css i qms-osposobljenost.css.

   OZNAKA STANJA JE ZAJEDNIČKA S OSPOSOBLJENOŠĆU. `.qms-osp-znak` iz
   qms-osposobljenost.css znači „stanje roka“ i tu znači isto — vrijedi, uskoro
   ističe, isteklo. Oprema ima dva stanja više (nikad umjereno, bez roka), pa se
   ona dopisuju ovdje. Vlastita obitelj razreda dala bi dvije različite zelene i
   dvije različite crvene u istoj aplikaciji.

   NALJEPNICA JE ODSELILA u `qms-tag.css` (M18-1, plan 234). Razredi
   `.qms-tag-*` i `.qms-qr-*` imenovani su generički, a od plana 234 ih koriste
   TRI modula: oprema, uređaji nadzora stranih tijela i registar lomljivog.
   Pravilo koje drugi modul posudi iz ove datoteke nestalo bi s njezinim
   čišćenjem — a razred bez pravila ne pada na ekranu nego se samo raspadne.
   ============================================================ */

/* ============================================================
   1. OZNAKE STANJA — dopuna zajedničke obitelji
   ============================================================ */

/* Nikad umjereno: mjerilo u pogonu bez ijednog dokaza o točnosti. Nije „nema
   podatka" nego rupa u registru, pa nosi punu crvenu kao i istekli rok. */
.qms-osp-znak.is-never {
    background: var(--bad-soft);
    border-color: var(--bad);
    color: var(--bad-text);
}

/* Bez roka: interval nije upisan, pa se rok ne može izračunati. Mjerilo bez
   intervala nitko nikad ne umjeri — zato žuta, ne siva. */
.qms-osp-znak.is-norule {
    background: var(--warn-soft);
    border-color: var(--warn);
    color: var(--warn-text);
}

/* ============================================================
   2. REGISTAR
   ============================================================ */

.qms-opr-table td,
.qms-opr-table th { vertical-align: middle; }

.qms-opr-oznaka {
    color: var(--ink);
    font-weight: 600;
    font-variant-numeric: tabular-nums;
    text-decoration: none;
    white-space: nowrap;
}

.qms-opr-oznaka:hover { color: var(--accent-text); text-decoration: underline; }

.qms-opr-naziv { color: var(--ink-2); }

/* CCP oznaka. Mjerilo koje nadzire kritičnu kontrolnu točku nije isti rizik kao
   vaga za palete — i to se mora vidjeti bez otvaranja zapisa. */
.qms-opr-ccp {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 1px 7px;
    border: 1px solid var(--bad);
    border-radius: 999px;
    color: var(--bad-text);
    font-size: 10.5px;
    font-weight: 600;
    letter-spacing: .03em;
    white-space: nowrap;
}

.qms-opr-rok {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.qms-opr-prazno { color: var(--ink-3); font-style: italic; }

.qms-opr-vrsta {
    display: inline-block;
    padding: 2px 8px;
    border: 1px solid var(--line-strong);
    border-radius: 999px;
    color: var(--ink-2);
    font-size: 11.5px;
    white-space: nowrap;
}

/* Oprema izvan upotrebe: cijeli redak prigušen. Ona ne javlja rokove i ne smije
   se čitati kao problem. */
.qms-opr-table tr.is-izvan td { color: var(--ink-3); }
.qms-opr-table tr.is-izvan .qms-opr-oznaka { font-weight: 400; color: var(--ink-3); }

/* ============================================================
   3. DETALJ
   ============================================================ */

.qms-opr-podaci {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 1rem;
    padding: 18px;
}

/* Traka roka na vrhu detalja — prvo što se pročita. */
.qms-opr-traka {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px 16px;
    padding: 13px 16px;
    border-left: 3px solid var(--line-strong);
}

.qms-opr-traka.is-ok { border-left-color: var(--good); }
.qms-opr-traka.is-soon { border-left-color: var(--warn); }
.qms-opr-traka.is-expired,
.qms-opr-traka.is-never { border-left-color: var(--bad); }
.qms-opr-traka.is-norule { border-left-color: var(--warn); }

.qms-opr-traka-glavno {
    color: var(--ink-strong);
    font-size: 15px;
    font-weight: 600;
}

.qms-opr-traka-uz {
    color: var(--ink-2);
    font-size: 12.5px;
}

/* ---- povijest umjeravanja ---- */
.qms-opr-cal-table td { vertical-align: middle; }

.qms-opr-cal-svjedodzba {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.qms-opr-cal-odstupanje {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* Nalaz koji traži ocjenu prethodnih mjerenja, a nesukladnost nije otvorena.
   Ovo je jedini redak u modulu koji nosi nedovršen postupak po t. 7.1.5.2. */
.qms-opr-cal-table tr.is-ceka td {
    background: var(--bad-soft);
}

.qms-opr-cal-ceka {
    color: var(--bad-text);
    font-size: 11.5px;
    white-space: nowrap;
}

/* ---- poziv na nesukladnost (O5) ---- */
.qms-opr-un {
    display: flex;
    flex-direction: column;
    gap: 11px;
    padding: 15px 16px;
    border-left: 3px solid var(--bad);
}

.qms-opr-un--pitanje { border-left-color: var(--warn); }
.qms-opr-un--pitanje .qms-opr-un-head i { color: var(--warn-text); }

.qms-opr-un-head {
    display: flex;
    align-items: center;
    gap: 9px;
    color: var(--ink-strong);
    font-size: 14px;
    font-weight: 600;
}

.qms-opr-un-text {
    color: var(--ink-2);
    font-size: 12.5px;
    line-height: 1.6;
}

/* ============================================================
   4. ČEKA UMJERAVANJE
   ============================================================ */

.qms-opr-ceka-dana {
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.qms-opr-ceka-dana.is-bad { color: var(--bad-text); }
.qms-opr-ceka-dana.is-warn { color: var(--warn-text); }

/* Uputa o tome ko vodi umjeravanje. Stoji na ekranu jer je odgovor na to
   pitanje postavka, a ne pravilo sustava — i korisnik mora znati koja vrijedi. */
.qms-opr-vodi {
    display: flex;
    align-items: baseline;
    gap: 8px;
    padding: 11px 14px;
    color: var(--ink-2);
    font-size: 12.5px;
}

.qms-opr-vodi i { color: var(--ink-3); }

/* ------------------------------------------------------------
   Zastavica CCP-a koju nijedna kontrolna točka ne potkrepljuje (plan 113)

   Crvena oznaka tvrdi „ovo mjerilo nadzire CCP". Kad u studiji nema nijedne
   točke vrste CCP koja ga koristi, ta tvrdnja **nije potvrđena** — a dosad je
   izgledala isto kao potvrđena. Nije kvar nego pitanje, pa ton nije crven nego
   upozorenje, i oznaka nosi upitnik umjesto štita.

   Zastavica nije kozmetička: po njoj podsjetnik za promašen rok ide upravi
   umjesto nadležnome, a neuspjelo umjeravanje traži ocjenu prethodnih mjerenja.
   ------------------------------------------------------------ */

.qms-opr-ccp.is-bez-tocke {
    border-color: var(--warn);
    color: var(--warn-text);
}

/* Podnaslov kartice „U pogonu" kad takvih mjerila ima. Tema je specifičnija od
   razreda, pa boja ide istim oblikom — inače pravilo ne prolazi (CLAUDE.md). */
body[class*="qms-theme"] .qms-opr-ccp-bez-tocke { color: var(--warn-text); }
