:root{
/* Mandatory brand tokens (from brief — do not change) */
--pb-gold:#C99A2E;
--pb-gold-deep:#A97816;
--pb-charcoal:#171717;
--pb-white:#FFFFFF;
--pb-ivory:#F7F5F0;
--pb-text-primary:#262626;
--pb-text-secondary:#626262;
--pb-border:#E5E5E5;
/* Derived support shades (tints/shades of the brand palette only) */
--pb-gold-ink:#7D5A10;      /* gold text on light surfaces — 6.3:1 on white */
--pb-gold-50:#FBF6EA;
--pb-gold-100:#F3E7C8;
--pb-ivory-200:#EFEBE2;
--pb-neutral-50:#FAFAFA;
--pb-neutral-100:#F4F4F4;
--pb-neutral-400:#9A9A9A;
--pb-charcoal-800:#222222;
--pb-charcoal-700:#2E2E2E;
/* Functional status colours — states only, never decoration */
--pb-success:#2F6F4A;--pb-success-bg:#EEF5F0;
--pb-warning:#8A5A00;--pb-warning-bg:#FBF3E2;
--pb-error:#B42318;--pb-error-bg:#FDF0EE;
--pb-info:#2D5577;--pb-info-bg:#EEF3F7;

/* Semantic aliases */
--surface-page:var(--pb-white);
--surface-alt:var(--pb-ivory);
--surface-card:var(--pb-white);
--surface-sunken:var(--pb-neutral-50);
--surface-inverse:var(--pb-charcoal);
--surface-accent-subtle:var(--pb-gold-50);
--text-heading:var(--pb-charcoal);
--text-body:var(--pb-text-primary);
--text-muted:var(--pb-text-secondary);
--text-disabled:var(--pb-neutral-400);
--text-inverse:var(--pb-white);
--text-accent:var(--pb-gold-ink);
--text-accent-on-dark:var(--pb-gold);
--text-on-gold:var(--pb-charcoal);
--border-default:var(--pb-border);
--border-strong:#D4D4D4;
--border-accent:var(--pb-gold);
--action-primary:var(--pb-gold);
--action-primary-hover:var(--pb-gold-deep);
--action-secondary:var(--pb-charcoal);
--action-secondary-hover:var(--pb-charcoal-700);
--focus-ring:var(--pb-gold-deep);
}
