/* Robotext Platform — дизайн-токены.
   Material Design 3 даёт тональные поверхности, состояния и радиусы.
   Apple HIG даёт сдержанность, воздух, тонкие разделители и полупрозрачную шапку.
   Обе темы задаются только переопределением токенов — компоненты о теме не знают.
   Фирменный цвет: #0d6efd. */

:root {
  color-scheme: light;

  /* поверхности: тональная иерархия вместо теней */
  --surface:                    #FCFCFF;
  --surface-lowest:             #FFFFFF;
  --surface-low:                #F6F7FB;
  --surface-container:          #F0F2F7;
  --surface-high:               #E9ECF3;
  --surface-highest:            #E2E6EE;

  --on-surface:                 #1A1C1E;
  --on-surface-variant:         #43474E;
  --on-surface-muted:           #6B7280;

  --outline:                    #C4C8D0;
  --outline-variant:            #E2E5EC;

  /* основной */
  --primary:                    #0B57C9;
  --primary-hover:              #0A4EB4;
  --on-primary:                 #FFFFFF;
  --primary-container:          #D8E2FF;
  --on-primary-container:       #00184A;
  --primary-soft:               #EEF3FF;

  /* семантика статусов — отдельно от акцента */
  --success:                    #146C2E;
  --success-container:          #D6F2DC;
  --warning:                    #8A5300;
  --warning-container:          #FFE7C4;
  --danger:                     #B3261E;
  --danger-container:           #FFDAD6;

  /* слои состояний M3 */
  --state-hover:                rgba(11, 87, 201, .07);
  --state-press:                rgba(11, 87, 201, .12);
  --state-neutral-hover:        rgba(26, 28, 30, .05);

  --scrim:                      rgba(16, 20, 28, .38);
  --topbar-bg:                  rgba(252, 252, 255, .78);
  --shadow-1:                   0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .04);
  --shadow-2:                   0 4px 12px rgba(16, 24, 40, .08), 0 2px 4px rgba(16, 24, 40, .04);
  --shadow-3:                   0 12px 32px rgba(16, 24, 40, .14), 0 4px 8px rgba(16, 24, 40, .06);

  /* типографика */
  --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  --text-display:  600 2.5rem/1.1  var(--font-sans);
  --text-headline: 600 1.75rem/1.2 var(--font-sans);
  --text-title-l:  600 1.25rem/1.3 var(--font-sans);
  --text-title:    600 1rem/1.4    var(--font-sans);
  --text-body-l:   400 .9375rem/1.55 var(--font-sans);
  --text-body:     400 .875rem/1.5 var(--font-sans);
  --text-label:    500 .78125rem/1.4 var(--font-sans);

  /* шаг 4px */
  --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
  --sp-5: 20px; --sp-6: 24px; --sp-8: 32px; --sp-10: 40px; --sp-12: 48px;

  --radius-sm: 8px;
  --radius:    12px;
  --radius-lg: 16px;
  --radius-xl: 22px;
  --radius-full: 999px;

  --assistant-w: 400px;

  --dur-fast: 140ms;
  --dur:      220ms;
  --ease:     cubic-bezier(.2, 0, 0, 1);

  --rail-w: 264px;
  --topbar-h: 60px;
  --content-max: 1240px;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;

    --surface:                  #101318;
    --surface-lowest:           #0B0E12;
    --surface-low:              #161A20;
    --surface-container:        #1B1F26;
    --surface-high:             #242932;
    --surface-highest:          #2E333C;

    --on-surface:               #E3E5EA;
    --on-surface-variant:       #C0C5CF;
    --on-surface-muted:         #8B93A1;

    --outline:                  #414751;
    --outline-variant:          #2A2F38;

    --primary:                  #AEC7FF;
    --primary-hover:            #C4D7FF;
    --on-primary:               #00306E;
    --primary-container:        #00458F;
    --on-primary-container:     #D8E2FF;
    --primary-soft:             #17243A;

    --success:                  #7FDC96;
    --success-container:        #0E4A20;
    --warning:                  #F3BE64;
    --warning-container:        #5C3900;
    --danger:                   #FFB4AB;
    --danger-container:         #8C1D18;

    --state-hover:              rgba(174, 199, 255, .10);
    --state-press:              rgba(174, 199, 255, .16);
    --state-neutral-hover:      rgba(227, 229, 234, .06);

    --scrim:                    rgba(0, 0, 0, .55);
    --topbar-bg:                rgba(16, 19, 24, .78);
    --shadow-1:                 0 1px 2px rgba(0, 0, 0, .35);
    --shadow-2:                 0 4px 12px rgba(0, 0, 0, .40);
    --shadow-3:                 0 12px 32px rgba(0, 0, 0, .50);
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;

  --surface:                    #101318;
  --surface-lowest:             #0B0E12;
  --surface-low:                #161A20;
  --surface-container:          #1B1F26;
  --surface-high:               #242932;
  --surface-highest:            #2E333C;

  --on-surface:                 #E3E5EA;
  --on-surface-variant:         #C0C5CF;
  --on-surface-muted:           #8B93A1;

  --outline:                    #414751;
  --outline-variant:            #2A2F38;

  --primary:                    #AEC7FF;
  --primary-hover:              #C4D7FF;
  --on-primary:                 #00306E;
  --primary-container:          #00458F;
  --on-primary-container:       #D8E2FF;
  --primary-soft:               #17243A;

  --success:                    #7FDC96;
  --success-container:          #0E4A20;
  --warning:                    #F3BE64;
  --warning-container:          #5C3900;
  --danger:                     #FFB4AB;
  --danger-container:           #8C1D18;

  --state-hover:                rgba(174, 199, 255, .10);
  --state-press:                rgba(174, 199, 255, .16);
  --state-neutral-hover:        rgba(227, 229, 234, .06);

  --scrim:                      rgba(0, 0, 0, .55);
  --topbar-bg:                  rgba(16, 19, 24, .78);
  --shadow-1:                   0 1px 2px rgba(0, 0, 0, .35);
  --shadow-2:                   0 4px 12px rgba(0, 0, 0, .40);
  --shadow-3:                   0 12px 32px rgba(0, 0, 0, .50);
}
