/* css/modules/ses.css: the .ses-* module — split out of css/app.css by #360's sibling stage (#362).
   Load order is core.css, then every modules/*.css alphabetically; rules here
   are in their original relative order, and no selector in this file appears in
   any other (asserted in tests/css-split-check.js). */

/* Sessions & attendance (LMS2-E, #235) — a toolbox talk, pre-start briefing or
   VOC, with its attendance roll. `ses-` verified unused in css/app.css,
   driver/driver.css and all three apps' JS before it was added, and deliberately
   NOT a bare single-word class: reusing one of .card/.chk/.act/.list/.detail
   silently inherits its layout, which is how a panel once ended up a flex row.
   Like the `lrn-*` family most of the screen borrows .card/.table/.btn/.cmp-pill;
   only the things below need real rules. */
.ses-note{ margin:0 0 14px; padding:11px 13px; border-radius:10px; background:#f4f7fd;
  border:1px solid var(--line); color:var(--ink); font-weight:700; font-size:12.5px; line-height:1.55 }
.ses-note--sm{ font-size:12px; margin:6px 0 12px }
.ses-err{ margin:8px 0 10px; padding:9px 11px; border-radius:9px; background:rgba(242,60,0,.08);
  border:1px solid rgba(242,60,0,.35); color:#a32900; font-weight:800; font-size:12.5px; line-height:1.5 }
/* THE attestation chip, and the third state is the one with a consequence.
   `--none` is HATCHED, exactly as .cmp-pill--indet is and for the same reason:
   "nobody has confirmed this person was in the room" is neither present nor
   absent, and a green tick there is a claim about attendance we cannot stand
   behind — on the record a client's HSE team and DEMIRS read. A signature and a
   presenter's mark are also kept apart, because they are different evidence. */
.ses-att{ display:inline-block; font-size:11px; font-weight:800; padding:2px 8px; border-radius:20px;
  white-space:nowrap; background:#eef2fb; color:var(--blue) }
.ses-att--sig{ background:rgba(31,157,85,.13); color:#146c3a }
.ses-att--mark{ background:#eef2fb; color:var(--blue) }
.ses-att--none{ background:repeating-linear-gradient(135deg,#f4f2ea,#f4f2ea 5px,#eae6d8 5px,#eae6d8 10px);
  color:#7a6520; border:1px dashed #c9b877 }
/* An outcome is three facts, not two: "not yet competent" is a recorded
   assessment that did not pass, which is a different phone call from nobody
   having assessed them at all — so it is amber, never the same grey as blank. */
.ses-out{ display:inline-block; font-size:11px; font-weight:800; padding:2px 8px; border-radius:20px;
  white-space:nowrap; color:var(--muted) }
.ses-out--competent{ background:rgba(31,157,85,.13); color:#146c3a }
.ses-out--not-yet-competent{ background:rgba(245,138,42,.15); color:#8a4a06 }
.ses-out--attended{ background:#eef2fb; color:var(--blue) }
.ses-form{ padding:16px; margin-bottom:14px }
.ses-form__t{ display:block; font-size:14.5px; margin-bottom:10px }
.ses-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:10px 14px; margin-bottom:12px }
.ses-fld{ display:block; margin-bottom:10px }
.ses-fld > span{ display:block; font-weight:800; font-size:12px; color:var(--muted); margin-bottom:4px }
.ses-fld > span i{ font-style:normal; font-weight:700; color:var(--muted-2) }
.ses-fld input, .ses-fld select, .ses-fld textarea{ width:100%; box-sizing:border-box; padding:8px 10px;
  border:1px solid var(--line); border-radius:9px; font-family:var(--font); font-size:14px; font-weight:700;
  background:#fff; color:var(--ink) }
.ses-roll{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:0 14px;
  max-height:220px; overflow:auto; padding:8px 10px; border:1px solid var(--line); border-radius:10px }
.ses-hd{ padding:15px; margin-bottom:12px }
.ses-hd__t{ display:flex; flex-wrap:wrap; align-items:center; gap:9px }
.ses-hd__t b{ font-size:16px }
.ses-hd__m{ margin:7px 0 0; color:var(--muted); font-weight:700; font-size:12.5px }
.ses-hd__n{ margin:8px 0 0; font-weight:700; font-size:12.5px; line-height:1.55 }
.ses-todo{ padding:15px; margin-bottom:12px }
.ses-todo__t{ display:block; font-size:14px; margin-bottom:7px }
.ses-todo__l{ margin:0 0 11px; padding-left:20px; font-weight:700; font-size:12.5px; line-height:1.6 }
.ses-off{ padding:15px; margin-bottom:12px; border-left:4px solid #1f9d55 }
.ses-off p{ margin:6px 0 0; font-weight:700; font-size:12.5px; line-height:1.55 }
.ses-cred{ margin-top:7px; padding:7px 10px; border-radius:8px; background:#f4f7fd;
  font-weight:700; font-size:12.5px }
.ses-add{ padding:14px; margin-top:12px; display:flex; gap:10px; align-items:flex-end; flex-wrap:wrap }
.ses-add .ses-fld{ margin:0; min-width:220px }
.ses-vers{ padding:15px; margin-top:12px }
.ses-vers p{ margin:5px 0 9px; color:var(--muted); font-weight:700; font-size:12px; line-height:1.55 }
.ses-vers__r{ padding:6px 0; border-top:1px solid var(--line); font-weight:700; font-size:12.5px }
/* A signature captured with no signal is HELD, never dropped — and the row says
   so, because "saved" and "saved on this phone" are different claims. */
.ses-inline{ margin-top:3px; color:#8a4a06; font-weight:700; font-size:11px }
.ses-empty{ padding:30px; text-align:center }
.ses-empty__t{ display:block; font-size:15px; margin-bottom:7px }
.ses-empty p{ margin:5px 0 0; color:var(--muted); font-weight:700; font-size:12.5px; line-height:1.55 }
/* ==========================================================================
   #236 REPORT 8 — THE ATTENDANCE REGISTER. `ses-ar` verified unused in
   css/app.css, driver/driver.css and all three apps' JS before it was added.
   Behaviour hooks and a date field; the attestation chips are the register's
   own .ses-att--sig / --mark / --none, reused deliberately so the report and
   the session record cannot draw the same attestation two different ways —
   including the hatched "Not confirmed", which is neither present nor absent.
   ========================================================================== */
.ses-ar-fld{display:flex;flex-direction:column;gap:4px}
.ses-ar-fld span{font-weight:800;font-size:11px;color:var(--muted);
  text-transform:uppercase;letter-spacing:.4px}
.ses-ar-fld input{padding:7px 9px;border:1px solid var(--line);border-radius:8px;
  font:inherit;font-weight:700;font-size:12.5px;background:#fff}
.ses-ar-sub{margin-top:2px;color:var(--muted);font-weight:600;font-size:11.5px}
.ses-ar-dim{color:var(--muted);font-weight:700}
/* Same claim .ses-inline makes on the record: a signature on a device is
   recorded, not yet on file, and the register must not print it as filed. */
.ses-ar-inline{display:block;margin-top:3px;color:#8a4a06;font-weight:700;font-size:10.5px}
