/* ListeningMind App Design System · tokens v1.0.0
   Source of truth for brand values: listeningmind-design skill (measured from www.listeningmind.com).
   This file adds the app-family layer on top. Do not invent new values in apps; add them here. */
:root{
  /* ---------- Color: violet-tinted neutrals ---------- */
  --lm-ink:#3D3A46;          /* headings, body */
  --lm-ink-2:#5D596A;        /* nav, lead copy, card titles */
  --lm-ink-3:#7F7A8D;        /* secondary text, footer */
  --lm-muted:#9691A2;        /* placeholder, caption, inactive icon */
  --lm-line-strong:#C6C2CE;  /* outline button border */
  --lm-line:#DAD7E0;         /* default 1px border, GNB bottom, inputs */
  --lm-line-soft:#EAE8EE;    /* dividers, table rows, chart grid */
  --lm-surface:#FBFAFB;      /* card header zone, footer, inset */
  --lm-white:#FFFFFF;
  --lm-band:rgba(234,232,238,.8); /* lavender band */
  --lm-charcoal:#232128;     /* dark band, max 1 per page */

  /* ---------- Color: layer rule ----------
     Speaking layer (hero, eyebrow, highlight word, tool link) = red.
     Operating layer (submit, focus, selected, tabs, toggles) = violet.
     Data layer (charts) = 5 categorical + one coral emphasis series. */
  --lm-coral:#FF5B60;
  --lm-red-deep:#C81414;
  --lm-maroon:#961E1E;
  --lm-grad-cta:linear-gradient(90deg,#FF5B60 0%,#C81414 100%);
  --lm-grad-tile:linear-gradient(180deg,#C81414 0%,#FF5B60 100%);
  --lm-grad-rule:linear-gradient(90deg,#C81414 0%,rgba(200,20,20,0) 100%);
  --lm-violet:#786EBE;
  --lm-violet-hover:#6C63AB;
  --lm-violet-soft:#EFEDF8;  /* [ext] selected background tint */
  --lm-coral-soft:#FFEEEF;   /* [ext] highlight chip background */
  /* logo only, never in UI: #FF0209 #FF325F */

  /* data palette (fixed order) */
  --lm-d1:#95B3C7; /* steel */
  --lm-d2:#8CBD57; /* green */
  --lm-d3:#9397FD; /* periwinkle */
  --lm-d4:#BFA055; /* gold */
  --lm-d5:#DA8968; /* terracotta */
  --lm-d-emph:#FF5B60; /* our brand / key series, one per chart */
  --lm-pos:#8CBD57; --lm-neg:#C81414; --lm-neutral:#9691A2;

  /* ---------- Typography ---------- */
  --lm-font:"Noto Sans","Noto Sans KR","Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --lm-font-ko:"Noto Sans KR","Noto Sans",sans-serif;
  --lm-font-ja:"Noto Sans JP","Noto Sans",sans-serif;
  --lm-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; /* ports, IDs, code, logs only */
  /* size / line-height / weight */
  --lm-t-display:900 48px/62.4px var(--lm-font);   /* catalog (8100) home hero only */
  --lm-t-h1:700 32px/44.8px var(--lm-font);        /* app hero head copy */
  --lm-t-h1-m:700 26px/36px var(--lm-font);        /* [ext] <600px */
  --lm-t-h2:700 24px/33.6px var(--lm-font);        /* section title */
  --lm-t-h3:700 20px/28px var(--lm-font);          /* card title */
  --lm-t-eyebrow:700 16px/24px var(--lm-font);     /* hero and section eyebrow */
  --lm-t-lead:400 16px/26px var(--lm-font);        /* hero body copy */
  --lm-t-body:400 16px/24px var(--lm-font);
  --lm-t-small:400 14px/21px var(--lm-font);
  --lm-t-label:700 14px/21px var(--lm-font);       /* form label, table head, button */
  --lm-t-nav:500 14px/21px var(--lm-font);
  --lm-t-caption:400 12px/16.8px var(--lm-font);
  --lm-t-chip:700 12px/16px var(--lm-font);
  --lm-t-micro:400 10px/13px var(--lm-font);
  --lm-tracking-head:-0.0075em; /* only large headings; never widen letter-spacing */

  /* ---------- Lines ---------- */
  --lm-bw:1px;            /* every border, divider, grid line */
  --lm-bw-strong:1.5px;   /* selected option card, current step */
  --lm-bw-accent:2px;     /* GNB current underline, focus ring */
  --lm-bw-icon:1.75px;    /* line icons and app glyphs (24 grid) */
  --lm-bw-series:2px;     /* chart series line */
  --lm-bw-series-emph:2.5px;
  --lm-dash:4 4;          /* forecast and projection lines only */

  /* ---------- Radius ---------- */
  --lm-r-sm:6px;   /* inputs, chips, version badge */
  --lm-r:10px;     /* cards, large buttons, app tile 40 */
  --lm-r-lg:12px;  /* large panels */
  --lm-r-pill:30px;/* pill buttons, language menu */

  /* ---------- Elevation: exactly one shadow ---------- */
  --lm-shadow:0 4px 14px 0 rgba(162,162,186,.26);

  /* ---------- Space & layout ---------- */
  --lm-s1:4px; --lm-s2:8px; --lm-s3:10px; --lm-s4:12px; --lm-s5:16px; --lm-s6:20px; --lm-s7:24px; --lm-s8:32px; --lm-s9:40px;
  --lm-section:80px; --lm-section-m:48px;
  --lm-container:1200px; --lm-gutter:20px; --lm-text-col:650px;
  --lm-gnb-h:56px; --lm-rail-w:48px;

  /* ---------- Motion ---------- */
  --lm-ease:cubic-bezier(.4,0,.2,1);
  --lm-ease-out:cubic-bezier(.23,1,.32,1);
  --lm-dur-color:.2s; --lm-dur-btn:.25s;
}
