/* ==========================================================================
   Asist Akademi — "Akademik Şerit" Design Tokens (tokens.css)
   Generator: Google Antigravity (Isolated Output)
   Architecture: Vanilla CSS Custom Properties · Zero External Dependencies
   WCAG 2.2 AA Verified Contrast Pairs
   ========================================================================== */

:root {
  color-scheme: light;

  /* 1. Brand Core Palette — Akademik Şerit */
  --ak-paper: #F4F4F4;
  --ak-surface: #FFFFFF;
  --ak-surface-subtle: #EDF1F7;
  --ak-surface-muted: #E2E8F0;
  --ak-navy: #0B1324;
  --ak-navy-elevated: #13203B;
  --ak-blue: #1F6BFF;
  --ak-blue-strong: #1452CC;
  --ak-blue-hover: #1857D6;
  --ak-blue-soft: #EBF2FF;
  --ak-ink: #171717;
  --ak-slate: #475569;
  --ak-dark-helper: #8FB4FF;

  /* 2. Semantic Text & Surface Pairs (All >= 4.5:1 Contrast) */
  --ak-text-primary: var(--ak-ink);               /* #171717 on #F4F4F4 = 16.30:1 */
  --ak-text-secondary: var(--ak-slate);           /* #475569 on #FFFFFF = 7.58:1, on #F4F4F4 = 6.89:1 */
  --ak-text-link: var(--ak-blue-strong);          /* #1452CC on #F4F4F4 = 5.86:1, on #FFFFFF = 6.45:1 */
  --ak-text-on-navy: var(--ak-paper);             /* #F4F4F4 on #0B1324 = 16.85:1 */
  --ak-text-helper-on-navy: var(--ak-dark-helper);/* #8FB4FF on #0B1324 = 8.95:1 */
  --ak-text-on-blue: #FFFFFF;                     /* #FFFFFF on #1F6BFF = 4.56:1 */

  /* 3. Borders & Dividers */
  --ak-border-subtle: #D5DFEC;
  --ak-border-default: #CBD5E1;
  --ak-border-strong: #94A3B8;
  --ak-border-navy: #243556;
  --ak-focus-ring: #1F6BFF;
  --ak-focus-offset: 3px;

  /* 4. Semantic Status Tokens (Text + Icon + Surface + Border) */
  /* Passed / Present / Active / Ready */
  --ak-status-passed-bg: #ECFDF3;
  --ak-status-passed-border: #86EFAC;
  --ak-status-passed-text: #14532D;               /* 11.4:1 on #ECFDF3 */
  --ak-status-passed-dot: #15803D;

  /* Pending / Trial / Neutral Info */
  --ak-status-pending-bg: #EFF6FF;
  --ak-status-pending-border: #93C5FD;
  --ak-status-pending-text: #1E3A8A;              /* 10.6:1 on #EFF6FF */
  --ak-status-pending-dot: #1D4ED8;

  /* Warning / Verification Pending / Consequence / Notice */
  --ak-status-warning-bg: #FFFBEB;
  --ak-status-warning-border: #F59E0B;
  --ak-status-warning-text: #78350F;              /* 10.8:1 on #FFFBEB */
  --ak-status-warning-dot: #B45309;

  /* Failed / Absent / Expired / Suspended / Error */
  --ak-status-failed-bg: #FEF2F2;
  --ak-status-failed-border: #FCA5A5;
  --ak-status-failed-text: #7F1D1D;               /* 10.9:1 on #FEF2F2 */
  --ak-status-failed-dot: #B91C1C;

  /* 5. Typography — System-Only Stack (Zero Network Fonts) */
  --ak-font-sans: "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  --ak-font-mono: "Cascadia Mono", Consolas, "Liberation Mono", ui-monospace, monospace;

  --ak-text-xs: 0.8125rem;   /* 13px — secondary metadata/badges with bold weight */
  --ak-text-sm: 0.875rem;    /* 14px — helper copy, table headers, captions */
  --ak-text-base: 1rem;      /* 16px — mandatory minimum body text */
  --ak-text-lg: 1.125rem;    /* 18px — section subheadings, card titles */
  --ak-text-xl: 1.375rem;    /* 22px — dialog headings, panel titles */
  --ak-text-2xl: clamp(1.5rem, 2.5vw, 1.875rem); /* 24px–30px — course selector / workspace title */
  --ak-text-hero: clamp(1.875rem, 4.5vw, 2.75rem); /* 30px–44px — landing/student h1 */

  --ak-leading-tight: 1.2;
  --ak-leading-snug: 1.35;
  --ak-leading-normal: 1.5;
  --ak-leading-relaxed: 1.65;

  /* 6. Spacing & Layout Scale */
  --ak-space-1: 0.25rem;     /* 4px */
  --ak-space-2: 0.5rem;      /* 8px */
  --ak-space-3: 0.75rem;     /* 12px */
  --ak-space-4: 1rem;        /* 16px */
  --ak-space-5: 1.25rem;     /* 20px */
  --ak-space-6: 1.5rem;      /* 24px */
  --ak-space-8: 2rem;        /* 32px */
  --ak-space-10: 2.5rem;     /* 40px */
  --ak-space-12: 3rem;       /* 48px */

  /* 7. Sizing, Touch Targets & Containers */
  --ak-touch-min: 44px;      /* WCAG / Brief mandatory minimum 44x44px */
  --ak-max-width: 1280px;
  --ak-reading-width: 68ch;
  --ak-qr-panel-width: 312px;

  /* 8. Border Radius & Elevation (Calm Academic Geometry, No Glass/Neon) */
  --ak-radius-sm: 6px;
  --ak-radius-md: 10px;
  --ak-radius-lg: 14px;
  --ak-radius-xl: 18px;
  --ak-radius-pill: 9999px;

  --ak-shadow-xs: 0 1px 2px rgba(11, 19, 36, 0.05);
  --ak-shadow-sm: 0 2px 6px rgba(11, 19, 36, 0.07);
  --ak-shadow-dialog: 0 20px 60px rgba(11, 19, 36, 0.24);
}

/* Dark Band / Header / Footer Contextual Scope */
[data-surface="navy"],
.ak-surface-navy {
  background-color: var(--ak-navy);
  color: var(--ak-text-on-navy);
  border-color: var(--ak-border-navy);
}

[data-surface="navy"] .muted,
[data-surface="navy"] .small,
.ak-surface-navy .muted,
.ak-surface-navy .small {
  color: var(--ak-text-helper-on-navy);
}

/* Reduced Motion Enforcement */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
