/* ready4future · Design «Zukunft» – gemeinsame Basis (Tokens, Schriften)
   ---------------------------------------------------------------------------
   Gemeinsame Grundlage für die öffentliche Seite und das Tool /work. Werte aus
   absofort.ch (dort auf WCAG AA geprüft), Marke modernhosting/Power Panel.
   - Dunkel ist :root, Tageslicht ist :root[data-theme="light"] (setzt zukunft-theme-init.js).
   - Diese Datei nur gemeinsam ändern; Eigenes gehört in zukunft-site.css bzw. zukunft-app.css.
   - Nicht laden auf den IPA-Seiten (bleiben im alten Aussehen) und nicht in Druckansichten verändern.
   Schriften lokal, SIL OFL (../fonts/OFL-*.txt). */

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url('../fonts/inter-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Rajdhani';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/rajdhani-600-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Rajdhani';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('../fonts/rajdhani-600-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Rajdhani';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/rajdhani-700-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Rajdhani';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('../fonts/rajdhani-700-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('../fonts/jetbrains-mono-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'JetBrains Mono';
  font-style: normal;
  font-weight: 100 800;
  font-display: swap;
  src: url('../fonts/jetbrains-mono-latin-ext.woff2') format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@property --zk-angle { syntax: '<angle>'; initial-value: 0deg; inherits: false; }
/* inherits: true, damit ::before den Wert erbt, den das Skript an der Karte setzt. */
@property --zk-edge { syntax: '<angle>'; initial-value: 220deg; inherits: true; }

:root {
  color-scheme: dark;

  /* Markenfarben modernhosting */
  --zk-violet: #a492ff;
  --zk-indigo: #6550db;
  --zk-cyan: #69e1f5;
  --zk-mint: #9af5d4;
  --zk-grad: linear-gradient(105deg, var(--zk-violet), var(--zk-cyan) 65%, var(--zk-mint));
  --zk-grad-text: var(--zk-grad);
  --zk-grad-btn: var(--zk-grad);
  --zk-btn-ink: #04070e;
  --zk-hairline-grad: linear-gradient(90deg, transparent, var(--zk-violet) 22%, var(--zk-cyan) 55%, var(--zk-mint) 78%, transparent);

  /* Flächen */
  --zk-bg-deep: #04070e;
  --zk-surface: #0d1322;
  --zk-surface-2: #121b2d;
  --zk-glass: rgba(13, 19, 34, .72);
  --zk-glass-strong: rgba(12, 18, 32, .9);
  --zk-glass-soft: rgba(105, 225, 245, .045);
  --zk-line: rgba(255, 255, 255, .09);
  --zk-line-strong: rgba(255, 255, 255, .18);
  --zk-chip-bg: rgba(13, 19, 34, .62);

  /* Text */
  --zk-text: #eef3ff;
  --zk-lead: #c3cde0;
  --zk-muted: #a6b2ca;
  --zk-faint: #7d8ba7;
  --zk-cyan-text: #69e1f5;
  --zk-violet-text: #a492ff;
  --zk-mint-text: #9af5d4;

  /* Formulare und Fokus: Feldrand 3.99:1 gegen die Karte (WCAG 1.4.11) */
  --zk-field: rgba(4, 7, 14, .55);
  --zk-field-border: #6b7a99;
  --zk-field-hover: #8391ad;
  --zk-focus: #69e1f5;
  --zk-focus-ring: rgba(105, 225, 245, .18);

  /* Glanz und Schatten */
  --zk-glow-cyan: rgba(105, 225, 245, .16);
  --zk-glow-violet: rgba(113, 82, 218, .30);
  --zk-card-shadow: 0 18px 50px rgba(0, 0, 0, .42);

  /* Himmel (CSS-Rückfall ohne JavaScript + Farben fürs Canvas) */
  --zk-sky-base: #070a13;
  --zk-nebula-a: rgba(52, 44, 130, .55);
  --zk-nebula-b: rgba(71, 206, 235, .10);
  --zk-star-css: rgba(214, 226, 255, .55);
  --zk-star-css-2: rgba(105, 225, 245, .45);
  --zk-scan: rgba(7, 10, 19, .55);
  --zk-c-star: #ffffff;
  --zk-c-a: #69e1f5;
  --zk-c-b: #a492ff;
  --zk-c-line: #69e1f5;
  --zk-c-strength: 1;

  /* Rakete */
  --zk-hull-dark: #526584;
  --zk-hull-mid: #b6c8dc;
  --zk-hull-light: #eff8ff;
  --zk-window: #102d4d;
  --zk-planet-rim: rgba(154, 245, 212, .55);
  --zk-planet-core: #04070e;

  /* Schriften */
  --zk-font: 'Inter', system-ui, -apple-system, sans-serif;
  --zk-title: 'Rajdhani', 'Inter', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif;
  --zk-mono: 'JetBrains Mono', ui-monospace, 'SFMono-Regular', Menlo, Consolas, monospace;
}

/* Tageslicht: eigene helle Variante, Text mindestens 4.8:1 */
:root[data-theme="light"] {
  color-scheme: light;

  --zk-grad-text: linear-gradient(105deg, #4a2ac8, #006a88 58%, #0f7a50);
  --zk-grad-btn: linear-gradient(105deg, #4a2ad0, #08698f 58%, #0c6e47);
  --zk-btn-ink: #ffffff;
  --zk-hairline-grad: linear-gradient(90deg, transparent, #4a2ad0 22%, #08698f 55%, #0c6e47 78%, transparent);

  --zk-bg-deep: #dde4f7;
  --zk-surface: #ffffff;
  --zk-surface-2: #eef1fc;
  --zk-glass: rgba(255, 255, 255, .78);
  --zk-glass-strong: rgba(255, 255, 255, .94);
  --zk-glass-soft: rgba(85, 64, 173, .07);
  --zk-line: rgba(30, 36, 90, .22);
  --zk-line-strong: rgba(30, 36, 90, .40);
  --zk-chip-bg: rgba(255, 255, 255, .72);

  --zk-text: #0d1330;
  --zk-lead: #1b2544;
  --zk-muted: #303c5a;
  --zk-faint: #39445f;
  --zk-cyan-text: #004f63;
  --zk-violet-text: #43279f;
  --zk-mint-text: #0b5133;

  --zk-field: #ffffff;
  --zk-field-border: #6a7a98;
  --zk-field-hover: #5d6b84;
  --zk-focus: #00758b;
  --zk-focus-ring: rgba(0, 117, 139, .18);

  --zk-glow-cyan: rgba(0, 117, 139, .14);
  --zk-glow-violet: rgba(85, 64, 173, .16);
  --zk-card-shadow: 0 16px 40px rgba(50, 40, 140, .16);

  --zk-sky-base: #dfe5fb;
  --zk-nebula-a: rgba(110, 80, 240, .40);
  --zk-nebula-b: rgba(0, 170, 200, .32);
  --zk-star-css: rgba(36, 51, 107, .55);
  --zk-star-css-2: rgba(0, 96, 122, .5);
  --zk-scan: rgba(231, 237, 249, .5);
  --zk-c-star: #24336b;
  --zk-c-a: #00607a;
  --zk-c-b: #4527b8;
  --zk-c-line: #2f48a0;
  --zk-c-strength: 1.25;

  --zk-planet-rim: rgba(0, 117, 139, .45);
  --zk-planet-core: #dfe6f4;
}
