/* Base palette — literal values lifted from the Android source.
   Semantic aliases live here for the default (Black & White) light scheme;
   themes.css re-binds them per colour theme and per light/dark. */
:root{
  /* Brand — launcher background, store artwork */
  --brand-blue:#1C3F9A;            /* ic_launcher_background */
  --brand-blue-deep:#0F2154;       /* store gradient start */
  --brand-blue-bright:#1C3C99;     /* store gradient end */
  --brand-ink:#FFFFFC;             /* wordmark / mark knockout */
  --brand-gradient:linear-gradient(90deg,var(--brand-blue-deep) 0%,var(--brand-blue-bright) 100%);

  /* Default (monochrome) ramp */
  --mono-1a:#1A1A1A;--mono-42:#424242;--mono-61:#616161;--mono-9e:#9E9E9E;
  --mono-bd:#BDBDBD;--mono-e0:#E0E0E0;--mono-e6:#E6E6E6;--mono-e8:#E8E8E8;
  --mono-ec:#ECECEC;--mono-ee:#EEEEEE;--mono-f2:#F2F2F2;--mono-f5:#F5F5F5;
  --mono-f8:#F8F8F8;--mono-fa:#FAFAFA;--mono-white:#FFFFFF;--mono-black:#000000;
  --mono-0d:#0D0D0D;--mono-12:#121212;--mono-1e:#1E1E1E;--mono-25:#252525;
  --mono-2a:#2A2A2A;--mono-2e:#2E2E2E;--mono-3a:#3A3A3A;--mono-ca:#CACACA;

  /* Fixed semantic marks — identical in every theme and both schemes */
  --badge-verified:#2196F3;        /* curated / verified station */
  --badge-verified-alt:#1976D2;    /* curated playlist check */
  --badge-adfree:#388E3C;          /* commercial-free station */
  --badge-on:#FFFFFF;
  --status-error-light:#B00020;
  --status-error-dark:#CF6679;

  /* Station placeholder ramp — stable per-station hash colour */
  --placeholder-1:#1565C0;--placeholder-2:#2E7D32;--placeholder-3:#C62828;
  --placeholder-4:#6A1B9A;--placeholder-5:#00838F;--placeholder-6:#E65100;
  --placeholder-7:#4527A0;--placeholder-8:#00695C;--placeholder-9:#AD1457;
  --placeholder-10:#37474F;--placeholder-11:#558B2F;--placeholder-12:#5D4037;

  /* Semantic aliases — Default theme, light scheme */
  --primary:var(--mono-1a);--on-primary:var(--mono-white);
  --primary-container:var(--mono-e8);--on-primary-container:var(--mono-1a);
  --secondary:var(--mono-42);--on-secondary:var(--mono-white);
  --secondary-container:var(--mono-ee);--on-secondary-container:var(--mono-42);
  --tertiary:var(--mono-61);--on-tertiary:var(--mono-white);
  --tertiary-container:var(--mono-f5);--on-tertiary-container:var(--mono-61);
  --background:var(--mono-white);--on-background:#1C1B1F;
  --surface:var(--mono-fa);--on-surface:#1C1B1F;
  --surface-variant:var(--mono-f5);--on-surface-variant:#49454F;
  --surface-container-lowest:var(--mono-white);
  --surface-container-low:var(--mono-f8);
  --surface-container:var(--mono-f2);
  --surface-container-high:var(--mono-ec);
  --surface-container-highest:var(--mono-e6);
  --error:var(--status-error-light);--on-error:var(--mono-white);
  --outline:rgba(28,27,31,.22);
  --scrim:rgba(0,0,0,.32);

  /* Convenience text aliases */
  --text-body:var(--on-surface);
  --text-muted:var(--on-surface-variant);
  --text-link:var(--primary);
  --surface-card:var(--surface-container-lowest);
}
