/*! Copyright (c) 2026 IOTC (Indus Overseas Trading Corporation). All rights reserved. GrievIQ: proprietary and confidential. Unauthorised copying, use or distribution is prohibited. See LICENSE.txt. */
/* GrievIQ light/dark display for citizens and representatives (Oct 2026).
   GENERATED by helpers/build-theme-css.py from helpers/theme-dark.css -- edit those, not this.
   Light is each page's own colours. Dark: dark grey (not black), softer colours,
   WCAG 2.2 AA contrast (4.5:1 text, 3:1 controls). Photos and maps unchanged. */
:root { color-scheme: light; --giq-b: #40903c; --giq-r: 1e13f1965c; }
:root[data-theme="dark"] { color-scheme: dark; }
@media print { :root[data-theme="dark"] { color-scheme: light; } }
@media screen and (prefers-color-scheme: dark) { :root:not([data-theme="light"]) { color-scheme: dark; } }
/* Rules for both light and dark (copied as they are into theme.css). */
/* WCAG 2.2 1.4.11: a text box's edge must stand out 3:1 from the page. */
:root { --field-line: #8C8578; }
:root :is(input:not([type]), input[type=text], input[type=email], input[type=tel], input[type=search], input[type=number], input[type=url], input[type=password], input[type=date], input[type=time], input[type=datetime-local], input[type=month], textarea, select):not(:focus):not([aria-invalid="true"]) { border-color: var(--field-line); }
/* Time limits page note: 4.5:1 on its tinted box. */
:root .tl-note { color: #5F594F; }
/* Light mode: the soft grey text is a touch darker so it passes 4.5:1 on the
   tinted boxes too (it was 4.2-4.3:1 there). Dark mode sets its own. */
:root:root { --ink-soft: #69635A; }
:root .report-tag.open { color: #A5301F; }

/* Dark is for screens only: printing always uses the light colours. */
@media screen {
:root[data-theme="dark"] { --paper: #131518; --card: #1C1F23; --ink: #ECEAE4; --ink-soft: #ABA89F; --teal: #3A6DBB; --teal-dark: #A9C6F2; --teal-tint: #1A2A42; --brick: #F08A7E; --brick-dim: #3A2220; --grey-line: #3A3F45; --grey-fill: #24282D; --border: #2F343A; --shadow: 0 1px 2px rgba(0,0,0,0.4), 0 8px 24px rgba(0,0,0,0.35); --green: #6FCB9A; }
:root[data-theme="dark"] { --line: #343A42; --steel: #C3CAD3; --steel-2: #A4AEBC; --red: #F08A7E; --red-tint: #3A2220; --green-tint: #16301F; --gold: #E0B860; --gold-tint: #33291A; --brand: #8DB4F0; --brand-tint: #1A2A42; }
:root[data-theme="dark"] body { background: var(--paper); color: var(--ink); }
:root[data-theme="dark"] .trust-strip,
:root[data-theme="dark"] .top-strip { background: #0B0C0E; color: #C7C2B8; }
:root[data-theme="dark"] button.primary:hover,
:root[data-theme="dark"] .match-yes:hover,
:root[data-theme="dark"] button.submit:hover { background: #2C5596; }
:root[data-theme="dark"] .task-card.primary-task:hover,
:root[data-theme="dark"] .task-card.primary-task:focus-visible { background: #2C5596; border-color: #2C5596; }
:root[data-theme="dark"] { --field-line: #6B727C; }
:root[data-theme="dark"] .tl-note { color: var(--ink-soft); }
:root[data-theme="dark"] .notice-box { background: var(--grey-fill); }
:root[data-theme="dark"] .primary-task .task-sub { color: #FFFFFF; }
:root[data-theme="dark"] .how-n { color: var(--teal-dark); }
:root[data-theme="dark"] .photo-notes li.far { color: #E0B860; }
:root[data-theme="dark"] .similar-note { background: var(--teal-tint); border-color: #2F4A70; }
:root[data-theme="dark"] .auth-role,
:root[data-theme="dark"] .export-pdf-btn,
:root[data-theme="dark"] .rn-btn { background: #2F62B0; border-color: #2F62B0; color: #FFFFFF; }
:root[data-theme="dark"] .apply-btn { background: #3A4552; color: #FFFFFF; }
:root[data-theme="dark"] .resolve-btn:hover { background: #3A4552; color: #FFFFFF; }
:root[data-theme="dark"] .rn-badge,
:root[data-theme="dark"] .tab-count.late,
:root[data-theme="dark"] .au-r-critical { background: #C23B2C; color: #FFFFFF; }
:root[data-theme="dark"] .ladder-dot.current { background: #ECEEF1; }
:root[data-theme="dark"] .report-tag.open { color: var(--red); }
}
@media screen and (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { --paper: #131518; --card: #1C1F23; --ink: #ECEAE4; --ink-soft: #ABA89F; --teal: #3A6DBB; --teal-dark: #A9C6F2; --teal-tint: #1A2A42; --brick: #F08A7E; --brick-dim: #3A2220; --grey-line: #3A3F45; --grey-fill: #24282D; --border: #2F343A; --shadow: 0 1px 2px rgba(0,0,0,0.4), 0 8px 24px rgba(0,0,0,0.35); --green: #6FCB9A; }
  :root:not([data-theme="light"]) { --line: #343A42; --steel: #C3CAD3; --steel-2: #A4AEBC; --red: #F08A7E; --red-tint: #3A2220; --green-tint: #16301F; --gold: #E0B860; --gold-tint: #33291A; --brand: #8DB4F0; --brand-tint: #1A2A42; }
  :root:not([data-theme="light"]) body { background: var(--paper); color: var(--ink); }
  :root:not([data-theme="light"]) .trust-strip,
  :root:not([data-theme="light"]) .top-strip { background: #0B0C0E; color: #C7C2B8; }
  :root:not([data-theme="light"]) button.primary:hover,
  :root:not([data-theme="light"]) .match-yes:hover,
  :root:not([data-theme="light"]) button.submit:hover { background: #2C5596; }
  :root:not([data-theme="light"]) .task-card.primary-task:hover,
  :root:not([data-theme="light"]) .task-card.primary-task:focus-visible { background: #2C5596; border-color: #2C5596; }
  :root:not([data-theme="light"]) { --field-line: #6B727C; }
  :root:not([data-theme="light"]) .tl-note { color: var(--ink-soft); }
  :root:not([data-theme="light"]) .notice-box { background: var(--grey-fill); }
  :root:not([data-theme="light"]) .primary-task .task-sub { color: #FFFFFF; }
  :root:not([data-theme="light"]) .how-n { color: var(--teal-dark); }
  :root:not([data-theme="light"]) .photo-notes li.far { color: #E0B860; }
  :root:not([data-theme="light"]) .similar-note { background: var(--teal-tint); border-color: #2F4A70; }
  :root:not([data-theme="light"]) .auth-role,
  :root:not([data-theme="light"]) .export-pdf-btn,
  :root:not([data-theme="light"]) .rn-btn { background: #2F62B0; border-color: #2F62B0; color: #FFFFFF; }
  :root:not([data-theme="light"]) .apply-btn { background: #3A4552; color: #FFFFFF; }
  :root:not([data-theme="light"]) .resolve-btn:hover { background: #3A4552; color: #FFFFFF; }
  :root:not([data-theme="light"]) .rn-badge,
  :root:not([data-theme="light"]) .tab-count.late,
  :root:not([data-theme="light"]) .au-r-critical { background: #C23B2C; color: #FFFFFF; }
  :root:not([data-theme="light"]) .ladder-dot.current { background: #ECEEF1; }
  :root:not([data-theme="light"]) .report-tag.open { color: var(--red); }
}
