/* Hallmark · theme: studied-DNA (source: Signal Grid accepted boards)
 * Golos headings + Plex body; olive neutrals, lime selection, blue links.
 * Shared by ActiveAdmin, Sidekiq and static error documents. */
:root {
  color-scheme: light;
  --sg-bg: oklch(97.72059% 0.009229 106.56909);
  --sg-surface: oklch(100% 0 0);
  --sg-raised: oklch(95.11324% 0.0121124 116.81085);
  --sg-input: oklch(100% 0 0);
  --sg-text: oklch(20.899% 0.0118983 122.42325);
  --sg-muted: oklch(44.42376% 0.0191697 130.68067);
  --sg-border: oklch(58.47101% 0.0270505 127.84474);
  --sg-rule: oklch(85.4208% 0.0168834 121.81189);
  --sg-accent: oklch(94.55551% 0.2031073 119.0529);
  --sg-accent-text: oklch(20.899% 0.0118983 122.42325);
  --sg-link: oklch(45.31618% 0.0979913 249.38452);
  --sg-focus: oklch(48.1747% 0.1180545 122.8975);
  --sg-danger: oklch(48.09034% 0.1702149 26.4713);
  --sg-danger-bg: oklch(96.66694% 0.0163169 22.07982);
  --sg-success: oklch(42.58778% 0.084182 155.28705);
  --sg-success-bg: oklch(94.79349% 0.0198827 154.89532);
  --sg-warning: oklch(42.83979% 0.0936075 68.64467);
  --sg-warning-bg: oklch(95.74878% 0.0519127 89.03964);
  --sg-info: oklch(41.69738% 0.0824491 248.95417);
  --sg-info-bg: oklch(94.54032% 0.0137893 247.97306);
  --sg-nav: oklch(20.899% 0.0118983 122.42325);
  /* Navigation stays dark in both schemes, including touch-sticky hover. */
  --sg-nav-hover: oklch(30.08559% 0.0188816 129.18324);
  --sg-nav-text: oklch(96.31573% 0.012075 116.80727);
  --sg-font: "Signal Plex", Arial, sans-serif;
  --sg-heading: "Signal Golos", "Signal Plex", Arial, sans-serif;
  --sg-gutter: clamp(12px, 2vw, 32px);
  --sg-space-2xs: 4px;
  --sg-space-xs: 8px;
  --sg-space-sm: 12px;
  --sg-space-md: 16px;
  --sg-space-lg: 24px;
  --sg-space-xl: 32px;
  --sg-space-2xl: 48px;
  --sg-space-3xl: 64px;
  --sg-text-xs: 12px;
  --sg-text-sm: 13px;
  --sg-text-base: 14px;
  --sg-text-section: 16px;
  --sg-text-title: clamp(24px, 2vw, 32px);
  --sg-leading-tight: 1.2;
  --sg-leading-body: 1.5;
  --sg-radius-none: 0;
  --sg-radius-control: 2px;
  --sg-control-height: 40px;
  --sg-data-link-size: 32px;
  --sg-field-label-gap: 8px;
  --sg-field-help-gap: 4px;
  --sg-field-row-gap: 16px;
  --sg-choice-size: 18px;
  --sg-choice-gap: 8px;
  --sg-rule-width: 1px;
  --sg-shadow-dialog: 0 12px 40px oklch(0% 0 0 / 33.333333%);
  --sg-overlay: oklch(0% 0 0);
  --sg-dur-micro: 120ms;
  --sg-dur-short: 220ms;
  --sg-dur-long: 420ms;
  --sg-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --sg-ease-in: cubic-bezier(0.7, 0, 0.84, 0);
  --sg-ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
}
:root[data-signal-theme="dark"] {
  color-scheme: dark;
  --sg-bg: oklch(20.08615% 0.0083896 128.93488);
  --sg-surface: oklch(23.81703% 0.0120409 129.03779);
  --sg-raised: oklch(30.08559% 0.0188816 129.18324);
  --sg-input: oklch(28.09627% 0.0175816 131.24873);
  --sg-text: oklch(95.18176% 0.0164399 121.77149);
  --sg-muted: oklch(78.93903% 0.0268459 128.84509);
  --sg-border: oklch(60.04171% 0.0354594 130.84219);
  --sg-rule: oklch(41.87814% 0.0292485 128.15048);
  --sg-link: oklch(82.76943% 0.0569173 246.07244);
  --sg-focus: oklch(94.55551% 0.2031073 119.0529);
  --sg-danger: oklch(79.96491% 0.1148023 19.91265);
  --sg-danger-bg: oklch(30.20778% 0.0442552 19.97921);
  --sg-success: oklch(84.70788% 0.065359 154.46355);
  --sg-success-bg: oklch(32.58824% 0.0431321 156.07174);
  --sg-warning: oklch(87.41976% 0.095017 84.34009);
  --sg-warning-bg: oklch(33.19165% 0.0402009 82.80648);
  --sg-info: oklch(85.56539% 0.0447248 247.30113);
  --sg-info-bg: oklch(31.58663% 0.0344172 252.21828);
  --sg-nav: oklch(17.83509% 0.0086327 129.01245);
}
@media (prefers-color-scheme: dark) {
  :root:not([data-signal-theme]) {
    color-scheme: dark;
    --sg-bg: oklch(20.08615% 0.0083896 128.93488);
    --sg-surface: oklch(23.81703% 0.0120409 129.03779);
    --sg-raised: oklch(30.08559% 0.0188816 129.18324);
    --sg-input: oklch(28.09627% 0.0175816 131.24873);
    --sg-text: oklch(95.18176% 0.0164399 121.77149);
    --sg-muted: oklch(78.93903% 0.0268459 128.84509);
    --sg-border: oklch(60.04171% 0.0354594 130.84219);
    --sg-rule: oklch(41.87814% 0.0292485 128.15048);
    --sg-link: oklch(82.76943% 0.0569173 246.07244);
    --sg-focus: oklch(94.55551% 0.2031073 119.0529);
    --sg-danger: oklch(79.96491% 0.1148023 19.91265);
    --sg-danger-bg: oklch(30.20778% 0.0442552 19.97921);
    --sg-success: oklch(84.70788% 0.065359 154.46355);
    --sg-success-bg: oklch(32.58824% 0.0431321 156.07174);
    --sg-warning: oklch(87.41976% 0.095017 84.34009);
    --sg-warning-bg: oklch(33.19165% 0.0402009 82.80648);
    --sg-info: oklch(85.56539% 0.0447248 247.30113);
    --sg-info-bg: oklch(31.58663% 0.0344172 252.21828);
    --sg-nav: oklch(17.83509% 0.0086327 129.01245);
  }
}
@media (max-width: 900px), (pointer: coarse) {
  :root {
    --sg-control-height: 44px;
    --sg-data-link-size: 44px;
  }
}
@media print {
  :root,
  :root:not([data-signal-theme]),
  :root[data-signal-theme="dark"] {
    color-scheme: light;
    --sg-bg: oklch(100% 0 0);
    --sg-surface: oklch(100% 0 0);
    --sg-raised: oklch(94.91193% 0 0);
    --sg-input: oklch(100% 0 0);
    --sg-text: oklch(17.76378% 0 0);
    --sg-muted: oklch(32.10925% 0 0);
    --sg-border: oklch(44.95332% 0 0);
    --sg-rule: oklch(79.20743% 0 0);
    --sg-link: oklch(17.76378% 0 0);
    --sg-danger: oklch(45.01534% 0.1552101 26.0795);
    --sg-success: oklch(40.46864% 0.0793361 152.13278);
    --sg-warning: oklch(41.75942% 0.0675673 64.06315);
  }
}
