/* ============================================================
   KamiQR 3.0 — Color tokens · Light mode (Solar palette)
   ============================================================ */

:root {

  /* ── Surfaces ──────────────────────────────────────────── */
  --bg:          #f7f6f1;  /* page background — warm bone          */
  --surface:     #ffffff;  /* cards, panels, popovers              */
  --surface-2:   #f4f2eb;  /* sidebar, table headers, secondary bg */
  --border:      #e6e3d8;  /* default hairline border              */
  --border-str:  #d2cdba;  /* strong border — focus, dividers      */

  /* ── Ink ───────────────────────────────────────────────── */
  --text:        #1d1d1b;  /* primary text — warm near-black       */
  --text-mute:   #5e5e58;  /* secondary, descriptions              */
  --text-faint:  #6b6b63;  /* hints, captions, placeholders        */
  --ink:         #1d1d1b;  /* primary button fill (= text in light) */

  /* ── Brand & Accent ────────────────────────────────────── */
  /* Yellow = brand / org identity (CTAs, logo tiles, promo tags).
     Purple = product accent — active state, location scope only.
     Use one per screen; never mix as co-equal colors.          */
  --yellow:       #ffd84d;
  --yellow-soft:  #fff3b8;
  --purple:       #ad89f9;
  --purple-soft:  #efe7ff;
  --purple-ink:   #3a2670;  /* fg on purple-soft backgrounds        */

  /* ── Status ────────────────────────────────────────────── */
  /* Each is a (foreground, background) pair for pills / alerts. */
  --ok:           #2f7d4f;  --ok-bg:      #dff3e6;
  --warn:         #925b0f;  --warn-bg:    #fff3b8;
  --danger:       #ba3028;  --danger-bg:  #fbe7e2;

  /* ── Shadows ────────────────────────────────────────────── */
  --shadow-card:  0 1px 0 rgba(29,29,27,0.04);
  --shadow-pop:   0 6px 18px rgba(29,29,27,0.10);

  /* ── Consumer accent (Surface A) — orange, not part of KamiQR brand ── */
  --accent-consumer:      #be3d1b;
  --accent-consumer-soft: #fde7df;

  /* ── Surface C (super-admin) extras — design hexes with no base token ── */
  --border-faint:   #f0eee7;  /* inner table-row hairline (lighter than --border) */
  --surface-3:      #faf9f4;  /* panel-footer / cat-head / order-totals bg         */
  --danger-bg-2:    #fbe4e0;  /* danger pill bg (≠ --danger-bg)                    */
  --survey-olive:   #5e8a3a;  /* survey "Скорее нет" bar/number                    */
  --info-note-fg:   #7a5400;  /* menu-editor yellow note text                      */
  --info-note-bd:   #f0e3a0;  /* menu-editor yellow note border                    */
  --empty-icon:     #c3bda8;  /* empty-state placeholder icon                      */

  /* ── Surface A (consumer app) — design surfaces, tints, shadow ── */
  --bg-consumer:            #efece4;  /* warm bone page bg (Surface A)             */
  --surface-sunken:         #e2dfd6;  /* empty-state icon disc bg                  */
  --btn-disabled-bg:        #e0ddd2;  /* disabled CTA fill                         */
  --accent-consumer-shadow: 0 8px 22px rgba(232, 85, 42, 0.30); /* CTA drop shadow */
  --media-restaurant:       #fbe3d9;  /* feed/detail restaurant tint              */
  --media-spa:              var(--purple-soft);  /* #efe7ff                        */
  --media-beauty:           var(--yellow-soft);  /* #fff3b8                        */
  --media-icon-spa:         #7c5cc4;  /* spa category icon stroke                  */

  /* ── Surface B (venue cabinet) — dark-tile tints + status-row border ──
     Surface B is the base light palette (bg #f7f6f1 / white cards / near-black
     text); near-black (--ink) is used only for the balance tile + dark CTAs and
     yellow (--yellow) only for the main CTA + balance number. These are the
     few values that only exist inside the venue cabinet. */
  --vb-balance-glow:   rgba(255, 216, 77, 0.14);  /* balance-tile corner glow      */
  --vb-on-dark-strong: rgba(255, 255, 255, 0.70);  /* link text on the dark tile    */
  --vb-on-dark-mute:   rgba(255, 255, 255, 0.55);  /* caption on the dark tile       */
  --ok-bd:             #bfe6cd;  /* paid status-row border (lighter than --ok-bg) */
}
