/*
 * Contona Design System tokens, from the Claude Design export
 * (_ds/contona-design-system-5b37b273-…/tokens/), concatenated in the order
 * the export's pages link them: fonts, colors, typography, spacing, effects,
 * base. Copied verbatim; the only edit is the @font-face URLs, which now
 * point at public/themes/contona-design/fonts/ (the export's assets/fonts).
 * The export's styles.css only @imports these same six files again.
 */
/* tokens/fonts.css */
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Thin.ttf') format('truetype');font-weight:100;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-ExtraLight.ttf') format('truetype');font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Medium.ttf') format('truetype');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-SemiBold.ttf') format('truetype');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-ExtraBold.ttf') format('truetype');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'Outfit';src:url('../fonts/Outfit-Black.ttf') format('truetype');font-weight:900;font-style:normal;font-display:swap}

/* tokens/colors.css */
:root{
/* Brand core */
--teal:#0addd7;
--blue:#3f7be0;
--violet:#9f1cf4;
--pink:#f345d0;
--navy-ink:#241c4e;
--black:#060608;
--near-black:#0b0b12;
--white:#ffffff;

/* Gradient stops — blue → violet → pink, the recognizable Contona line */
--gradient-brand:linear-gradient(115deg,var(--teal) 0%,var(--blue) 32%,var(--violet) 68%,var(--pink) 100%);
--gradient-brand-soft:linear-gradient(115deg,color-mix(in oklch,var(--teal) 60%,transparent) 0%,color-mix(in oklch,var(--blue) 60%,transparent) 32%,color-mix(in oklch,var(--violet) 60%,transparent) 68%,color-mix(in oklch,var(--pink) 60%,transparent) 100%);
--gradient-mark:linear-gradient(135deg,var(--teal),var(--violet));

/* Neutrals */
--gray-950:#0b0b12;
--gray-900:#121218;
--gray-800:#1c1c26;
--gray-700:#2b2b38;
--gray-500:#6b6b7c;
--gray-300:#a9a9b8;
--gray-100:#e6e6ec;
--gray-50:#f6f6f9;

/* Semantic surfaces */
--surface-page-light:var(--white);
--surface-page-dark:var(--near-black);
--surface-card-light:var(--white);
--surface-card-dark:var(--gray-900);
--surface-sunken:var(--gray-50);

/* Semantic text */
--text-primary-light:var(--navy-ink);
--text-secondary-light:var(--gray-500);
--text-primary-dark:var(--white);
--text-secondary-dark:var(--gray-300);
--text-brand:var(--violet);

/* Semantic feedback */
--success:#1fbf7a;
--warning:#f5a524;
--danger:#f04b4b;

/* Glass — light */
--glass-light-bg:rgba(255,255,255,0.65);
--glass-light-border:rgba(255,255,255,0.35);
--glass-light-highlight:rgba(255,255,255,0.35);

/* Glass — dark */
--glass-dark-bg:rgba(10,10,15,0.55);
--glass-dark-border:rgba(255,255,255,0.16);
--glass-dark-highlight:rgba(255,255,255,0.10);

--glass-blur:blur(28px) saturate(150%); /* @kind other */
--glass-shadow:0 12px 40px rgba(0,0,0,0.12);
}

/* tokens/typography.css */
:root{
--font-display:'Outfit',-apple-system,sans-serif;
--font-body:'Outfit',-apple-system,sans-serif;
--font-mono:'SF Mono',ui-monospace,Menlo,monospace;

/* Weights */
--weight-thin:100;
--weight-light:300;
--weight-regular:400;
--weight-medium:500;
--weight-semibold:600;
--weight-bold:700;
--weight-extrabold:800;
--weight-black:900;

/* Scale — editorial, oversized display sizes */
--text-display-xl:clamp(3rem,7vw,7.5rem);
--text-display-l:clamp(2.5rem,5.5vw,5.5rem);
--text-display-m:clamp(2rem,4vw,3.75rem);
--text-h1:clamp(1.75rem,3vw,2.75rem);
--text-h2:clamp(1.5rem,2.2vw,2rem);
--text-h3:1.5rem;
--text-body-l:1.25rem;
--text-body:1.0625rem;
--text-body-s:0.9375rem;
--text-caption:0.8125rem;
--text-label:0.75rem;

--leading-tight:1.02;
--leading-snug:1.15;
--leading-normal:1.5;
--leading-relaxed:1.65;

--tracking-tight:-0.02em;
--tracking-normal:0;
--tracking-wide:0.06em;
--tracking-label:0.14em;
}

/* tokens/spacing.css */
:root{
--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;
--space-32:128px;

--radius-s:12px;
--radius-m:20px;
--radius-l:28px;
--radius-xl:40px;
--radius-capsule:999px;

--container-max:1280px;
--container-pad:clamp(20px,5vw,64px);
}

/* tokens/effects.css */
:root{
--shadow-s:0 2px 8px rgba(6,6,8,0.06);
--shadow-m:0 8px 24px rgba(6,6,8,0.10);
--shadow-l:0 24px 64px rgba(6,6,8,0.16);
--shadow-glow-blue:0 0 80px rgba(63,123,224,0.35);
--shadow-glow-violet:0 0 80px rgba(159,28,244,0.30);
--shadow-glow-pink:0 0 80px rgba(243,69,208,0.25);

--ease-standard:cubic-bezier(.4,0,.2,1); /* @kind other */
--ease-out:cubic-bezier(.16,1,.3,1); /* @kind other */
--duration-fast:150ms; /* @kind other */
--duration-standard:280ms; /* @kind other */
--duration-slow:500ms; /* @kind other */
}

/* tokens/base.css */
*{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);color:var(--text-primary-light);background:var(--surface-page-light);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,p{margin:0}
a{color:var(--violet);text-decoration:none}
a:hover{color:var(--blue)}
img,svg{display:block;max-width:100%}

