/* ════════════════════════════════════════════════════════════════════
   CLEANING OPERATIONS — SHARED THEME  ·  "Terminal Navy"
   One file. Every screen in both applications reads from it.

   Change a colour here and it changes on the home screen, the trolley
   app, the machinery app and the sign-in page at the same time. Nothing
   else needs touching, and if this file ever fails to load each app
   falls back to its own built-in colours — so a bad theme can never
   take the operation down mid-shift.

   WHY THESE CHOICES
   · Chrome is navy, work surfaces are white. Operatives use these at a
     rank in daylight and under hard indoor lighting; dark screens
     are unreadable outdoors and there is no battery argument on a phone
     that is out for twenty seconds.
   · One red, one amber, one green across BOTH apps. A red badge means
     the same thing on a trolley as on a scrubber-dryer. Split palettes
     are how people learn to ignore warnings.
   · Amber is reserved for "needs attention", never decoration.
   · Every colour pair below clears WCAG AA for body text.
   ════════════════════════════════════════════════════════════════════ */

:root{
  /* ---- identity ---- */
  --navy:#0B2A4A;          /* headers, primary surfaces        */
  --navy-deep:#071B32;     /* pressed states, gradients        */
  --steel:#3E5C76;         /* secondary chrome                 */
  --accent:#39C6E0;        /* highlight, live indicators       */
  --accent-deep:#1E9FBD;
  --accent-glow:0 0 18px rgba(57,198,224,.35);
  --blue:#2F6FE0;          /* the one interactive blue         */
  --blue-deep:#2459B8;

  /* ---- status. identical in both applications ---- */
  --ok:#2E9E6B;      --ok-bg:#E4F5EC;
  --amber:#F2A93B;   --amber-deep:#D9861E;  --amber-bg:#FFF6E8;
  --fault:#C4432B;   --fault-bg:#FCE6E1;

  /* ---- surfaces & text ---- */
  --paper:#F5F6F4;         /* page background                  */
  --card:#FFFFFF;
  --ink:#122033;           /* body text                        */
  --mute:#6C7A8C;          /* secondary text                   */
  --line:#E1E5E9;          /* hairlines, borders               */
  --radius:10px;

  /* ---- names the trolley app uses ---- */
  --brand:var(--navy);
  --brand-d:var(--navy-deep);
  --brand-l:#E8EEF5;
  --bad:var(--fault);      --bad-bg:var(--fault-bg);
  --warn:var(--amber-deep);--warn-bg:var(--amber-bg);
  --mut:var(--mute);
  --bg:var(--paper);
  --sh:0 1px 3px rgba(11,42,74,.08), 0 6px 20px rgba(11,42,74,.06);
}

/* The sign-in page is deliberately dark — it is a doorway, not a
   worksurface, and it reads as a controlled entry point. Dark surfaces
   need their OWN text and hairline tokens, or the light ones above
   bleed through and you get dark text on a dark card. */
body.t3-dark, .t3-dark{
  --panel:rgba(13,20,34,.90);
  --field:#0D1626;
  --paper:#070C16;
  --card:#0D1626;
  --ink:#E8EDF7;
  --mute:#8EA0BD;   --mut:#8EA0BD;
  --dim:#63748F;
  --line:#22304A;
  --bad:#FF6B6B;
  --ok:#39C07F;
  --amber:#F0B429;
}

/* ────────────────────────────────────────────────────────────────────
   ALTERNATIVE THEMES
   Swap the block above for one of these if the contract changes hands
   or the client asks for a different look. Nothing else needs editing.

   ── "Contractor Green" ──
   --navy:#0E4B3C; --navy-deep:#08301F; --steel:#3F6B5C;
   --accent:#4FD1A5; --accent-deep:#27A87F; --blue:#1F7A5C; --blue-deep:#145C46;

   ── "High Visibility" — for anyone struggling to read the screen ──
   --navy:#000000; --navy-deep:#000000; --ink:#000000; --mute:#3A3A3A;
   --line:#9A9A9A; --paper:#FFFFFF; --amber:#FFB000; --ok:#007A3D; --fault:#B00020;
   ──────────────────────────────────────────────────────────────────── */
