/*
 * Marta Barandiy — brand tokens ("Made to her own measure").
 * Single source of truth for the website, the tools and brand.martabarandiy.com.
 * Rule: components and tools use only these variables, never raw values.
 * Registers (data-register on any element) re-map the surface/accent roles:
 *   personal (default) · policy · poster (loud pink) · stage (dark) · ukraine
 * Class aliases (.mb-register--policy …) exist for WPBakery rows, which can take a class but not a data attribute.
 */
@layer marta.tokens {
  :root {
    /* Core */
    --mb-paper:   #FFF7F4;   /* blush-white paper, warmer and pinker than plain cream */
    --mb-cream:   #F8F1E8;   /* Unbound cream */
    --mb-plum:    #3A1230;   /* ink */
    --mb-plum-2:  #5A2141;
    --mb-muted:   #7B5A6C;
    --mb-thread:  #D0021B;   /* the red thread: one per view, it carries meaning */
    --mb-line:    rgba(58, 18, 48, .14);

    /* Pastels (inspired by Material 3's tonal pastels, re-tuned to plum) */
    --mb-blush:   #FBE3EC;
    --mb-pink:    #FFB8E0;   /* candy field: the poster pink of the moodboard */
    --mb-hot:     #FF4FB4;   /* magenta: the loudest pastel, used as a field or a headline, never as text on pink */
    --mb-orchid:  #E57BE0;
    --mb-lilac:   #E6D8FF;
    --mb-lavender:#C6A6FF;   /* Material-3-ish lavender, re-tuned warmer */
    --mb-violet:  #7B4DFF;   /* embroidery violet, from the vyshyvanka */
    --mb-sky:     #D3E6FF;
    --mb-butter:  #FFF1A6;
    --mb-acid:    #E8F25C;   /* the one sharp note: a sticker, a highlight, never a background */
    --mb-tangerine:#FF5A1F;
    --mb-mint:    #CDEFE4;

    /* Silk */
    --mb-gold:      #B88A3E;
    --mb-gold-soft: #EBD7AE;
    --mb-wine:      #8E0F2B;

    /* Roles (personal register) */
    --mb-bg:        var(--mb-paper);
    --mb-surface:   #FFFFFF;
    --mb-surface-2: var(--mb-blush);
    --mb-ink:       var(--mb-plum);
    --mb-ink-soft:  var(--mb-muted);
    --mb-accent:    var(--mb-thread);
    --mb-accent-2:  var(--mb-hot);
    --mb-on-accent: #FFFFFF;
    --mb-focus:     var(--mb-violet);

    /* Kept for v0.1 components */
    --mb-color-ink: var(--mb-ink);
    --mb-color-paper: var(--mb-bg);
    --mb-color-accent: var(--mb-accent);
    --mb-color-muted: var(--mb-ink-soft);

    /* Type: Fixel only (decisions/0004) */
    --mb-font-display: "Fixel Display", "Fixel Text", system-ui, sans-serif;
    --mb-font-text: "Fixel Text", system-ui, sans-serif;
    --mb-step--1: clamp(.82rem, .8rem + .1vw, .9rem);
    --mb-step-0:  clamp(1rem, .96rem + .2vw, 1.125rem);
    --mb-step-1:  clamp(1.2rem, 1.1rem + .5vw, 1.5rem);
    --mb-step-2:  clamp(1.5rem, 1.3rem + 1vw, 2.1rem);
    --mb-step-3:  clamp(2rem, 1.6rem + 2vw, 3.2rem);
    --mb-step-4:  clamp(2.6rem, 1.8rem + 4vw, 5.2rem);
    --mb-step-5:  clamp(3.2rem, 2rem + 7vw, 8.5rem);
    --mb-step-6:  clamp(4.2rem, 1.5rem + 13vw, 14rem);  /* poster type: crops, overlaps, bleeds */
    --mb-track-tight: -.045em;
    --mb-track-poster: -.06em;
    --mb-leading: 1.55;
    --mb-measure: 66ch;

    /* Space (4px base, golden-ish steps) */
    --mb-space-1: .25rem;
    --mb-space-2: .5rem;
    --mb-space-3: 1rem;
    --mb-space-4: 1.5rem;
    --mb-space-5: 2.5rem;
    --mb-space-6: 4rem;
    --mb-space-7: 6.5rem;
    --mb-gutter: clamp(1rem, 4vw, 3rem);

    /* Shape family: arch · hem · petal · pill · knot */
    --mb-radius: 20px;
    --mb-radius-lg: 32px;
    --mb-radius-pill: 999px;
    --mb-arch: 999px 999px var(--mb-radius) var(--mb-radius);
    --mb-petal: 48% 52% 50% 50% / 60% 60% 40% 40%;

    /* Motion: fabric moves, it does not bounce */
    --mb-ease-out: cubic-bezier(.2, 0, 0, 1);
    --mb-ease-in: cubic-bezier(.4, 0, 1, 1);
    --mb-ease-silk: cubic-bezier(.65, 0, .35, 1);
    --mb-ease-spring: cubic-bezier(.34, 1.4, .64, 1);
    --mb-dur-1: 140ms;
    --mb-dur-2: 260ms;
    --mb-dur-3: 520ms;
    --mb-dur-4: 900ms;

    --mb-shadow: 0 18px 50px -26px rgba(58, 18, 48, .5);
    --mb-shadow-lift: 0 30px 70px -30px rgba(58, 18, 48, .55);

    /* v0.1 aliases */
    --mb-space-1x: var(--mb-space-1);
    --mb-focus-ring: 3px solid var(--mb-focus);
  }

  [data-register="policy"], .mb-register--policy {
    --mb-bg: #FBF8FF;
    --mb-surface-2: var(--mb-lilac);
    --mb-accent-2: var(--mb-violet);
  }
  [data-register="stage"], .mb-register--stage {
    --mb-bg: #24081D;
    --mb-surface: #33102A;
    --mb-surface-2: #4A1A3C;
    --mb-ink: #FFF1F6;
    --mb-ink-soft: #E3BFD2;
    --mb-accent: #FF5A6E;
    --mb-accent-2: var(--mb-gold-soft);
    --mb-line: rgba(255, 241, 246, .18);
    --mb-focus: var(--mb-pink);
  }
  [data-register="poster"], .mb-register--poster {
    --mb-bg: var(--mb-pink);
    --mb-surface: #FFD6EE;
    --mb-surface-2: var(--mb-hot);
    --mb-accent-2: var(--mb-violet);
  }
  [data-register="ukraine"], .mb-register--ukraine {
    --mb-bg: #FFFDF2;
    --mb-surface-2: var(--mb-butter);
    --mb-accent-2: #2F6FE4;
  }

  @media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) [data-register="auto"] {
      --mb-bg: #24081D; --mb-surface: #33102A; --mb-ink: #FFF1F6; --mb-ink-soft: #E3BFD2;
    }
  }
}
