/**
 * WC Service Booking — Global Design Tokens
 * Single source of truth for all plugin colours, spacing, type, and radii.
 * Imported by both the public and admin stylesheets.
 *
 * Palette: Pure black & white with single mid-grey for hierarchy.
 */

:root {
    /* ── Colour ── */
    --wcsb-black:        #0a0a0a;
    --wcsb-white:        #ffffff;
    --wcsb-grey-100:     #f5f5f5;   /* lightest bg tint */
    --wcsb-grey-200:     #ebebeb;   /* dividers, borders */
    --wcsb-grey-400:     #b0b0b0;   /* disabled/muted text */
    --wcsb-grey-600:     #6b6b6b;   /* secondary text */
    --wcsb-grey-800:     #2a2a2a;   /* near-black text */

    /* Semantic aliases */
    --wcsb-bg:           var(--wcsb-white);
    --wcsb-surface:      var(--wcsb-grey-100);
    --wcsb-border:       var(--wcsb-grey-200);
    --wcsb-text:         var(--wcsb-black);
    --wcsb-text-muted:   var(--wcsb-grey-600);
    --wcsb-accent:       var(--wcsb-black);
    --wcsb-accent-fg:    var(--wcsb-white);

    /* Status colours (kept monochrome-adjacent) */
    --wcsb-status-pending:    #f0e6c8;
    --wcsb-status-pending-fg: #6b4c00;
    --wcsb-status-confirmed:  #d3eaf5;
    --wcsb-status-confirmed-fg: #004d70;
    --wcsb-status-completed:  #d4edda;
    --wcsb-status-completed-fg: #155724;
    --wcsb-status-cancelled:  #f5d5d5;
    --wcsb-status-cancelled-fg: #7a1010;

    /* ── Typography ── */
    --wcsb-font-sans:    'DM Sans', 'Helvetica Neue', Arial, sans-serif;
    --wcsb-font-mono:    'DM Mono', 'Courier New', monospace;

    --wcsb-size-xs:      0.72rem;   /* 11.5px */
    --wcsb-size-sm:      0.82rem;   /* 13px */
    --wcsb-size-base:    0.9375rem; /* 15px */
    --wcsb-size-md:      1.0625rem; /* 17px */
    --wcsb-size-lg:      1.25rem;   /* 20px */
    --wcsb-size-xl:      1.625rem;  /* 26px */
    --wcsb-size-2xl:     2rem;      /* 32px */

    --wcsb-weight-normal: 400;
    --wcsb-weight-medium: 500;
    --wcsb-weight-semi:   600;
    --wcsb-weight-bold:   700;

    --wcsb-leading-tight: 1.25;
    --wcsb-leading-base:  1.55;

    /* ── Spacing ── */
    --wcsb-space-1:  4px;
    --wcsb-space-2:  8px;
    --wcsb-space-3:  12px;
    --wcsb-space-4:  16px;
    --wcsb-space-5:  20px;
    --wcsb-space-6:  24px;
    --wcsb-space-8:  32px;
    --wcsb-space-10: 40px;
    --wcsb-space-12: 48px;
    --wcsb-space-16: 64px;

    /* ── Radius — all zero per design spec ── */
    --wcsb-radius-sm:  0px;
    --wcsb-radius:     0px;
    --wcsb-radius-md:  0px;
    --wcsb-radius-lg:  0px;
    --wcsb-radius-xl:  0px;
    --wcsb-radius-full: 0px;

    /* ── Shadows ── */
    --wcsb-shadow-sm: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    --wcsb-shadow:    0 4px 16px rgba(0,0,0,0.08);
    --wcsb-shadow-lg: 0 8px 32px rgba(0,0,0,0.12);

    /* ── Transitions ── */
    --wcsb-ease:      cubic-bezier(0.4, 0, 0.2, 1);
    --wcsb-duration:  160ms;
}
