/* lifted verbatim from DFO-DGMIND-Flight-Ops-v1_0_3_DEV060.html — style block 2 pg-mgl-tokens — do not edit */
/* DEV058 F12 — palette tokens (theme-invariant; values equal the literals they replace) */
  :root {
    --font: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
    --font-mono: "JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, monospace;
    --pal-amber-02: #fafaf8;
    --pal-amber-08: #faeeda;
    --pal-amber-08-2: #fef3d6;
    --pal-amber-11: #fbeecb;
    --pal-amber-56: #e08e00;
    --pal-amber-73: #8a5a00;
    --pal-amber-85: #4a3200;
    --pal-blue-03: #f6f8fa;
    --pal-blue-04: #f3f5f8;
    --pal-blue-04-2: #eeedfe;
    --pal-blue-05: #eef2f6;
    --pal-blue-06: #e6eef7;
    --pal-blue-06-2: #e8f0f7;
    --pal-blue-07: #e8eef4;
    --pal-blue-07-2: #e3edf9;
    --pal-blue-09: #e2e8f0;
    --pal-blue-09-2: #dfeaf3;
    --pal-blue-16: #cbd5e1;
    --pal-blue-18: #c7d3dc;
    --pal-blue-23: #b9c4d0;
    --pal-blue-28: #9db4d0;
    --pal-blue-29: #8fb3d9;
    --pal-blue-46: #5b8fb9;
    --pal-blue-65: #4c5a67;
    --pal-blue-67: #1e3a8a;
    --pal-blue-74: #37414c;
    --pal-blue-82: #22303c;
    --pal-blue-84: #16213e;
    --pal-blue-85: #1b2430;
    --pal-blue-88: #141b2a;
    --pal-blue-89: #0d1b2a;
    --pal-blue-91: #101820;
    --pal-blue-91-2: #0e1720;
    --pal-blue-94: #0b0f14;
    --pal-blue-94-2: #0a0f14;
    --pal-coral-06: #faece7;
    --pal-coral-08: #fde7d6;
    --pal-coral-58: #b7791f;
    --pal-green-04: #eaffea;
    --pal-green-06: #eef4ea;
    --pal-green-07: #eaf1ea;
    --pal-green-08: #e3f3ea;
    --pal-green-08-2: #e1f5ee;
    --pal-green-08-3: #e3f2e3;
    --pal-green-09: #eaf3de;
    --pal-green-10: #dfeae2;
    --pal-green-13: #c8f5c8;
    --pal-green-33: #9fe870;
    --pal-green-70: #1d7a4d;
    --pal-green-70-2: #2e6b2e;
    --pal-grey-07: #eeeeee;
    --pal-grey-13: #dddddd;
    --pal-grey-37: #9999aa;
    --pal-grey-40: #999999;
    --pal-grey-43: #888899;
    --pal-grey-46: #7d8b96;
    --pal-grey-54: #6b7280;
    --pal-grey-60: #666666;
    --pal-grey-80: #333333;
    --pal-purple-46: #8a5cb7;
    --pal-red-02: #fff5f5;
    --pal-red-02-2: #fff3f3;
    --pal-red-03: #fff0f0;
    --pal-red-03-2: #fff2f2;
    --pal-red-05: #fcebeb;
    --pal-red-07: #fbe0e0;
    --pal-red-35: #ff5a4a;
    --pal-red-54: #c0392b;
    --pal-red-58: #c8102e;
    --pal-red-59: #b3261e;
    --pal-red-73: #8b0000;
    --pal-white: #ffffff;
    --pal-erp-icon: #c8102e;
  }
  /* PG-MGL-001 theme palettes — v1.0.1 (proposed correction of Appendix A: every claimed text pair meets its stated ratio; JB ruling 01-OCT-2026) */
  html[data-pg-theme="midnight"] { --pg-bg: #040D1A; --pg-panel: #071525; --pg-panelAlt: #0A1E35; --pg-panelBorder: #0D2640; --pg-text: #DCE8F5; --pg-textDim: #8AA4C0; --pg-muted: #6889AA; --pg-dim: #1E3650; --pg-blue: #0EA5E9; --pg-amber: #F59E0B; --pg-green: #10B981; --pg-red: #F14646; --pg-purple: #9469FF; }
  html[data-pg-theme="carbon"] { --pg-bg: #0A0A0C; --pg-panel: #121216; --pg-panelAlt: #1A1A1F; --pg-panelBorder: #1F1F26; --pg-text: #E8E8EC; --pg-textDim: #9A9AA3; --pg-muted: #82828D; --pg-dim: #2A2A32; --pg-blue: #3B82F6; --pg-amber: #F59E0B; --pg-green: #10B981; --pg-red: #EF4444; --pg-purple: #A78BFA; }
  html[data-pg-theme="slate"] { --pg-bg: #0F172A; --pg-panel: #1E293B; --pg-panelAlt: #334155; --pg-panelBorder: #334155; --pg-text: #F1F5F9; --pg-textDim: #CBD5E1; --pg-muted: #9CAEC6; --pg-dim: #475569; --pg-blue: #38BDF8; --pg-amber: #FBBF24; --pg-green: #34D399; --pg-red: #FF8A88; --pg-purple: #B59EFF; }
  html[data-pg-theme="forest"] { --pg-bg: #0A1410; --pg-panel: #10201A; --pg-panelAlt: #1A2E25; --pg-panelBorder: #1E3528; --pg-text: #E0F0E8; --pg-textDim: #9ABFAE; --pg-muted: #6F9A89; --pg-dim: #2A4A3C; --pg-blue: #14B8A6; --pg-amber: #EAB308; --pg-green: #22C55E; --pg-red: #FE5754; --pg-purple: #A78BFA; }
  html[data-pg-theme="plum"] { --pg-bg: #14080F; --pg-panel: #1F0F1A; --pg-panelAlt: #2E1A28; --pg-panelBorder: #3A1E30; --pg-text: #F4E8EE; --pg-textDim: #C9A8BC; --pg-muted: #A97A95; --pg-dim: #4A2A3E; --pg-blue: #E879F9; --pg-amber: #F59E0B; --pg-green: #10B981; --pg-red: #F44948; --pg-purple: #C084FC; }
  html[data-pg-theme="paper"] { --pg-bg: #FFFFFF; --pg-panel: #F8FAFC; --pg-panelAlt: #F1F5F9; --pg-panelBorder: #E2E8F0; --pg-text: #0F172A; --pg-textDim: #475569; --pg-muted: #627084; --pg-dim: #CBD5E1; --pg-blue: #0475B1; --pg-amber: #A95B01; --pg-green: #017F58; --pg-red: #D92223; --pg-purple: #7C3AED; }
  html[data-pg-theme="cream"] { --pg-bg: #FAF7F2; --pg-panel: #F5EFE4; --pg-panelAlt: #EBE3D4; --pg-panelBorder: #D9CEB8; --pg-text: #2A241A; --pg-textDim: #5E5343; --pg-muted: #73634C; --pg-dim: #B5A88F; --pg-blue: #046E88; --pg-amber: #A54B04; --pg-green: #065F46; --pg-red: #B91C1C; --pg-purple: #6D28D9; }
  html[data-pg-theme="arctic"] { --pg-bg: #F0F9FF; --pg-panel: #E0F2FE; --pg-panelAlt: #BAE6FD; --pg-panelBorder: #7DD3FC; --pg-text: #0C4A6E; --pg-textDim: #05679E; --pg-muted: #02689E; --pg-dim: #38BDF8; --pg-blue: #05679E; --pg-amber: #A14802; --pg-green: #007051; --pg-red: #B91C1C; --pg-purple: #6D28D9; }
  html[data-pg-theme="sand"] { --pg-bg: #FDFAF4; --pg-panel: #F7F0E0; --pg-panelAlt: #EDE0C4; --pg-panelBorder: #D4C096; --pg-text: #3A2F1A; --pg-textDim: #6B5A35; --pg-muted: #776032; --pg-dim: #C4AE78; --pg-blue: #A34900; --pg-amber: #92400E; --pg-green: #166534; --pg-red: #991B1B; --pg-purple: #6B21A8; }
  :root { --pgsw-midnight-bg: #040D1A; --pgsw-midnight-panel: #071525; --pgsw-midnight-blue: #0EA5E9; --pgsw-carbon-bg: #0A0A0C; --pgsw-carbon-panel: #121216; --pgsw-carbon-blue: #3B82F6; --pgsw-slate-bg: #0F172A; --pgsw-slate-panel: #1E293B; --pgsw-slate-blue: #38BDF8; --pgsw-forest-bg: #0A1410; --pgsw-forest-panel: #10201A; --pgsw-forest-blue: #14B8A6; --pgsw-plum-bg: #14080F; --pgsw-plum-panel: #1F0F1A; --pgsw-plum-blue: #E879F9; --pgsw-paper-bg: #FFFFFF; --pgsw-paper-panel: #F8FAFC; --pgsw-paper-blue: #0475B1; --pgsw-cream-bg: #FAF7F2; --pgsw-cream-panel: #F5EFE4; --pgsw-cream-blue: #046E88; --pgsw-arctic-bg: #F0F9FF; --pgsw-arctic-panel: #E0F2FE; --pgsw-arctic-blue: #05679E; --pgsw-sand-bg: #FDFAF4; --pgsw-sand-panel: #F7F0E0; --pgsw-sand-blue: #A34900; }  /* picker swatches */
  /* PG-MGL-001 token roles -> App tokens (DFO-MGL §24.0). Applies to every PG theme, Custom included. */
  html[data-pg-theme] {
    --th-bg: var(--pg-bg); --th-rowE: var(--pg-bg); --th-input: var(--pg-bg);
    --th-bg2: var(--pg-panel); --th-card: var(--pg-panel); --th-header: var(--pg-panel);
    --th-bg3: var(--pg-panelAlt); --th-block: var(--pg-panelAlt); --th-hover: var(--pg-panelAlt);
    --th-rowO: color-mix(in srgb, var(--pg-panelAlt) 50%, var(--pg-bg));
    --th-border: var(--pg-panelBorder); --th-inputB: var(--pg-panelBorder); --th-borders: var(--pg-dim);
    --th-text: var(--pg-text); --th-text2: var(--pg-textDim); --th-textm: var(--pg-muted);
    --th-accent: var(--pg-blue);
    /* PDR-MGL-COL09: semantic colours follow the theme */
    --cl-blue: var(--pg-blue); --cl-amber: var(--pg-amber); --cl-green: var(--pg-green); --cl-red: var(--pg-red); --cl-purple: var(--pg-purple);
  }
  /* surfaces that DFO hard-coded per mode follow the active theme (values equal to the old DFO surface tokens) */
  html[data-pg-theme][data-theme="dark"] { --pal-blue-46: var(--th-accent); --pal-blue-84: var(--th-bg2); }
  html[data-pg-theme][data-theme="light"] { --pal-grey-80: var(--th-text); --pal-grey-60: var(--th-text2); --pal-grey-40: var(--th-textm);
    --pal-grey-07: var(--th-border); --pal-grey-13: var(--th-borders); --pal-amber-02: var(--th-bg3); }
  /* Dark themes: PG accents are bright, so accent fills take the theme background as text (white falls below 3:1) */
  html[data-pg-theme][data-theme="dark"] .dfo-pill.on, html[data-pg-theme][data-theme="dark"] .dfo-mode button.on { color: var(--th-bg); }
  /* Dark themes: semantic colours follow the theme (COL09), so badges carrying semantic text take the PG badge pattern
     (COMP01.03/.04: colour at ~10 % as background, 33 % as border, full colour as text) instead of DFO's fixed light pill */
  html[data-pg-theme][data-theme="dark"] .badge[style*="color:var(--cl-"] { background: color-mix(in srgb, currentColor 12%, transparent) !important;
    border: 1px solid color-mix(in srgb, currentColor 33%, transparent) !important; }
  html[data-pg-theme][data-theme="dark"] .dfo-erp-flag { color: var(--th-bg); }
  html[data-pg-theme][data-theme="dark"] .dfo-kpi.dfo-kpi-erp { background: color-mix(in srgb, var(--cl-red) 14%, var(--th-card)) !important; }
  html[data-pg-theme][data-theme="dark"] .dfo-kpi.dfo-kpi-erp .l { color: var(--cl-red) !important; }
  /* theme picker and Custom editor */
  .pg-thpick .grp { font-size: 9px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--th-textm); padding: 8px 6px 2px; font-family: var(--font-mono); }
  .pg-thpick .r .sw { display: inline-flex; width: 26px; height: 14px; border-radius: 3px; overflow: hidden; border: 1px solid var(--th-borders); }
  .pg-thpick .r .sw i { flex: 1; }
  .pg-cust { display: none; padding: 6px; border-top: 1px solid var(--th-border); margin-top: 6px; }
  .pg-cust.on { display: block; }
  .pg-cust .g { display: grid; grid-template-columns: 1fr 1fr; gap: 4px 10px; }
  .pg-cust label { display: flex; align-items: center; justify-content: space-between; gap: 6px; font-family: var(--font-mono); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; color: var(--th-text2); }
  .pg-cust input[type=color] { width: 28px; height: 18px; padding: 0; border: 1px solid var(--th-borders); border-radius: 3px; background: none; }
  .pg-cust .row2 { display: flex; gap: 8px; align-items: center; margin: 6px 0; font-size: 11px; }
  .pg-cust .warn { margin-top: 6px; font-size: 10px; color: var(--pg-red, var(--cl-red)); }
  .pg-cust .ok { margin-top: 6px; font-size: 10px; color: var(--pg-green, var(--cl-green)); }
  body, button, input, select, textarea { font-family: var(--font); }
  /* PG-MGL-001: JetBrains Mono for IDs, codes, version strings, badges, form labels, metadata */
  .badge, .rp-pill, .dfo-erp-flag, .dgm-count, .kb-n, .cal-n, .dfo-kpi-badge,
  .dfo-cardk .id, .dfo-cardk .m, .kbc-id, .hp-title, .cal-chip, .dfo-bar,
  #sbAppVer, .sb-meta, .lbl, .field > .lbl, .dfo-set > .l, .kpi-t-label,
  table.dgm tbody td:nth-child(3) > span > span:last-child { font-family: var(--font-mono); }
  /* PG-MGL-001 §4 sidebar 220–240 px */
  .pmm-sidebar { width: 220px; }
  /* Theme picker */
  .pg-thpick{position:fixed;z-index:400;min-width:240px;background:var(--th-bg);color:var(--th-text);border:1px solid var(--th-border);border-radius:8px;box-shadow:0 8px 24px var(--pal-black-a20, rgba(0,0,0,.2));padding:8px;font-size:12px}
  .pg-thpick .h{font-size:10px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--th-textm);padding:4px 6px 6px}
  .pg-thpick .r{display:flex;align-items:center;gap:8px;padding:6px;border-radius:6px;cursor:pointer}
  .pg-thpick .r:hover{background:var(--th-hover)}
  .pg-thpick .r.on{background:var(--cl-navy);color:var(--pal-white)}
  .pg-thpick .sw{width:14px;height:14px;border-radius:50%;border:1px solid var(--th-borders)}
  .pg-thpick .note{font-size:10px;color:var(--th-textm);padding:6px}
  .pg-thpick .cust{display:flex;gap:6px;align-items:center;padding:4px 6px}
  /* F04 — record windows: read-only state and head status chip */
  .scrim.dfo-rw-view .modal-body input:disabled, .scrim.dfo-rw-view .modal-body select:disabled,
  .scrim.dfo-rw-view .modal-body textarea:disabled, .scrim.dfo-rw-ro .modal-body input:disabled,
  .scrim.dfo-rw-ro .modal-body select:disabled, .scrim.dfo-rw-ro .modal-body textarea:disabled
    { background: var(--th-bg3); color: var(--th-text); opacity: 1; cursor: default; }
  .modal-head .dfo-winpill { margin-left: 10px; }
  .modal-foot .win-editbtn.on { background: var(--cl-navy); border-color: var(--cl-navy); color: var(--pal-white); }
  .modal-foot .dfo-ro-note { margin-right: auto; font-size: 10px; color: var(--th-textm); }
