/* Erzeugt von build-routen.mjs aus 7 Dateien des
   Design-System-Pakets lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f.
   Nicht von Hand aendern, Aenderungen gehoeren in das Paket. */

/* tokens/fonts.css */
/* LSPC brand webfonts — Univers family (licensed; supplied by client) */
@font-face{font-family:"Univers";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversLight.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversLight.ttf") format("truetype");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Univers";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversRegular.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversRegular.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Univers";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversBold.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversBold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Univers";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversBlack.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversBlack.ttf") format("truetype");font-weight:900;font-style:normal;font-display:swap}
/* Univers Condensed — used for the LSPC lettermark and tight display settings */
@font-face{font-family:"Univers Condensed";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversCondensed.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversCondensed.ttf") format("truetype");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Univers Condensed";src:url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversCondensedBold.woff2") format("woff2"),url("/_ds/lspc-design-system-cae105a2-607a-4df4-bc9f-532c9fd01a9f/assets/fonts/UniversCondensedBold.ttf") format("truetype");font-weight:700;font-style:normal;font-display:swap}

/* tokens/colors.css */
/* LSPC color system
   Brand comes from the logo: teal #2a8784 and logo-gray #d8d9da.
   Teal + neutral scales derived harmonically (oklch) around those two anchors. */
:root{
  /* ---- Brand teal scale ---- */
  --teal-50:#eef6f5;
  --teal-100:#d3e8e6;
  --teal-200:#a7d1cd;
  --teal-300:#72b5b0;
  --teal-400:#469a95;
  --teal-500:#2a8784;   /* brand primary — from logo */
  --teal-600:#226e6b;
  --teal-700:#1c5754;
  --teal-800:#184744;
  --teal-900:#123230;

  /* ---- Neutral / gray scale ---- */
  --gray-0:#ffffff;
  --gray-50:#f7f8f8;
  --gray-100:#eceded;
  --gray-200:#d8d9da;   /* logo gray */
  --gray-300:#bcbfc0;
  --gray-400:#9a9ea0;
  --gray-500:#767b7d;
  --gray-600:#585d5f;
  --gray-700:#3f4446;
  --gray-800:#2a2e2f;
  --gray-900:#181b1c;

  /* ---- Semantic status ---- */
  --amber-500:#c98a1a;
  --amber-100:#f6e9cf;
  --red-500:#c0453a;
  --red-100:#f5d9d5;
  --green-500:#3f8f5b;
  --green-100:#d8ecdf;

  /* ---- Semantic aliases ---- */
  --brand:var(--teal-500);
  --brand-hover:var(--teal-600);
  --brand-active:var(--teal-700);
  --brand-contrast:#ffffff;

  --text-strong:var(--gray-900);
  --text-body:var(--gray-800);
  --text-muted:var(--gray-500);
  --text-onbrand:#ffffff;
  --text-link:var(--teal-600);
  --text-link-hover:var(--teal-700);

  --surface-page:var(--gray-0);
  --surface-subtle:var(--gray-50);
  --surface-card:#ffffff;
  --surface-sunken:var(--gray-100);
  --surface-brand:var(--teal-500);
  --surface-brand-subtle:var(--teal-50);

  --border-subtle:var(--gray-200);
  --border-default:var(--gray-300);
  --border-strong:var(--gray-400);
  --border-brand:var(--teal-500);

  --status-warning:var(--amber-500);
  --status-warning-bg:var(--amber-100);
  --status-danger:var(--red-500);
  --status-danger-bg:var(--red-100);
  --status-success:var(--green-500);
  --status-success-bg:var(--green-100);
}

/* tokens/typography.css */
/* LSPC typography — Univers (grotesque). Condensed cut for display/lettermark. */
:root{
  --font-sans:"Univers","Helvetica Neue",Arial,system-ui,sans-serif;
  --font-condensed:"Univers Condensed","Univers","Helvetica Neue Condensed",Arial,sans-serif;

  --weight-light:300;
  --weight-regular:400;
  --weight-bold:700;
  --weight-black:900;

  /* Type scale (px) — 1.25 major-third-ish, tuned */
  --fs-display:56px;
  --fs-h1:40px;
  --fs-h2:30px;
  --fs-h3:23px;
  --fs-h4:19px;
  --fs-body-lg:18px;
  --fs-body:16px;
  --fs-body-sm:14px;
  --fs-caption:12.5px;
  --fs-overline:12px;

  --lh-tight:1.1; /* @kind other */
  --lh-snug:1.25; /* @kind other */
  --lh-normal:1.5; /* @kind other */
  --lh-relaxed:1.65; /* @kind other */

  --tracking-tight:-0.01em;
  --tracking-normal:0;
  --tracking-wide:0.04em;
  --tracking-overline:0.14em;  /* uppercase labels — a recurring brand device */

  /* Semantic type roles */
  --type-display:var(--weight-bold) var(--fs-display)/var(--lh-tight) var(--font-condensed);
  --type-h1:var(--weight-bold) var(--fs-h1)/var(--lh-tight) var(--font-sans);
  --type-h2:var(--weight-bold) var(--fs-h2)/var(--lh-snug) var(--font-sans);
  --type-h3:var(--weight-bold) var(--fs-h3)/var(--lh-snug) var(--font-sans);
  --type-body:var(--weight-regular) var(--fs-body)/var(--lh-normal) var(--font-sans);
  --type-body-light:var(--weight-light) var(--fs-body)/var(--lh-normal) var(--font-sans);
}

/* tokens/spacing.css */
/* LSPC spacing — 4px base grid */
:root{
  --space-0:0;
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:20px;
  --space-6:24px;
  --space-8:32px;
  --space-10:40px;
  --space-12:48px;
  --space-16:64px;
  --space-20:80px;
  --space-24:96px;

  --container-sm:640px;
  --container-md:840px;
  --container-lg:1080px;
  --container-xl:1280px;
  --gutter:24px;
}

/* tokens/effects.css */
/* LSPC effects — radii, borders, shadows, motion.
   The brand is engineering-precise: modest radii, crisp borders, restrained shadows. */
:root{
  /* Corner radii — the logo parallelogram reads as sharp; keep radii small */
  --radius-none:0;
  --radius-sm:3px;
  --radius-md:6px;
  --radius-lg:10px;
  --radius-pill:999px;

  /* Border widths */
  --border-width:1px;
  --border-width-thick:2px;
  /* Signature left-accent used on callouts/section markers */
  --accent-bar:4px;

  /* Shadows — soft, cool-neutral, never heavy */
  --shadow-xs:0 1px 2px rgba(24,27,28,.06);
  --shadow-sm:0 1px 3px rgba(24,27,28,.08),0 1px 2px rgba(24,27,28,.04);
  --shadow-md:0 4px 12px rgba(24,27,28,.09);
  --shadow-lg:0 12px 32px rgba(24,27,28,.12);
  --shadow-focus:0 0 0 3px rgba(42,135,132,.35);

  /* Motion */
  --ease-standard:cubic-bezier(.2,.6,.2,1); /* @kind other */
  --ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
  --dur-fast:120ms; /* @kind other */
  --dur-base:200ms; /* @kind other */
  --dur-slow:320ms; /* @kind other */

  /* The signature skew angle of the LSPC lettermark parallelogram (~15deg) */
  --skew-angle:-12deg; /* @kind other */
}

/* tokens/base.css */
/* LSPC base element defaults */
*,*::before,*::after{box-sizing:border-box}
body{font-family:var(--font-sans);font-weight:var(--weight-regular);font-size:var(--fs-body);line-height:var(--lh-normal);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{color:var(--text-strong);margin:0;text-wrap:balance}
p{text-wrap:pretty}
a{color:var(--text-link);text-decoration:none}
a:hover{color:var(--text-link-hover);text-decoration:underline}
::selection{background:var(--teal-100);color:var(--teal-900)}
.lspc-overline{font-size:var(--fs-overline);font-weight:var(--weight-bold);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--brand)}

/* styles.css */
/* LSPC Design System — global entry point.
   Consumers link THIS file only. Import order = cascade order. */
@import "./tokens/fonts.css";
@import "./tokens/colors.css";
@import "./tokens/typography.css";
@import "./tokens/spacing.css";
@import "./tokens/effects.css";
@import "./tokens/base.css";
