/* Direction: Trade Public — warm paper canvas, deep forest green, a lime highlight for trade moments, a chunky grotesque display */
/* Completed by the platform from the short form: both modes, every
   palette token, each text-on-ground pair at its floor. To restyle, write the
   short form again (the decisions in one :root) and it is completed again. */

:root {
  --canvas: #f6f3ec;
  --surface: #ffffff;
  --surface-2: #ece8de;
  --border: #ddd7c8;
  --border-strong: #adafa9;
  --ink: #14171a;
  --muted: #5a645e;
  --accent: #1c6b50;
  --accent-hover: #185b44;
  --accent-ink: #ffffff;
  --accent-text: #16553f;
  --accent-strong: #1c6b50;
  --accent-soft: #dcede4;
  --accent-border: #94b6a6;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #dbe5d7;
  --success-strong: #116d34;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #eee0d1;
  --warning-strong: #994607;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #efd9d3;
  --danger-strong: #b91c1c;
  --chart-1: #1c6b50;
  --chart-2: #1881a2;
  --chart-3: #493e8f;
  --chart-4: #a34c80;
  --chart-5: #7f3200;
  --chart-6: #7c7616;

  --font-display: "Bricolage Grotesque", "Arial Black", system-ui, sans-serif;
  --font-body: "DM Sans", system-ui, sans-serif;
  --display-weight: 800;
  --display-tracking: -0.03em;
  --radius-card: 18px;
  --radius-btn: 999px;
  --radius-input: 14px;
  --x-lime: #d8f46a;
  --x-lime-ink: #1b2a05;
  --x-band: #10261e;
  --x-on-photo: #ffffff;
  --x-on-soft: rgba(255, 255, 255, 0.78);
  --x-line: rgba(255, 255, 255, 0.2);
  --x-heart: #c2255c;
  --x-gold: #d99a00;
  --font-mono: "JetBrains Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  --font-sans: "DM Sans", system-ui, sans-serif;
  --eyebrow-tracking: 0.08em;
}

html[data-theme="dark"] {
  --canvas: #040f0b;
  --surface: #1d2723;
  --surface-2: #111b17;
  --border: #27312d;
  --border-strong: #4f5754;
  --ink: #f6f3ec;
  --muted: #959892;
  --accent: #1c6b50;
  --accent-hover: #3e816a;
  --accent-ink: #ffffff;
  --accent-text: #699d8c;
  --accent-strong: #5c9582;
  --accent-soft: #09231a;
  --accent-border: #0f382a;
  --success: #15803d;
  --success-ink: #ffffff;
  --success-soft: #082816;
  --success-strong: #499c68;
  --warning: #b45309;
  --warning-ink: #ffffff;
  --warning-soft: #2b1e0b;
  --warning-strong: #c57a40;
  --danger: #b91c1c;
  --danger-ink: #ffffff;
  --danger-soft: #2c120f;
  --danger-strong: #d16969;
  --chart-1: #317d61;
  --chart-2: #2394ba;
  --chart-3: #7a73ca;
  --chart-4: #b75e92;
  --chart-5: #be6436;
  --chart-6: #8f8804;
}

/* Trade Public — small extras */
html, body { overflow-x: clip; max-width: 100%; }
main, footer, header { max-width: 100vw; overflow-x: clip; }
[data-thread] { scroll-behavior: smooth; }
.htmx-indicator { opacity: 0; transition: opacity 0.2s; }
.htmx-request .htmx-indicator, .htmx-request.htmx-indicator { opacity: 1; }
article:has([data-heart]) .media img { will-change: transform; }
summary { list-style: none; }
summary::-webkit-details-marker { display: none; }
@keyframes tp-pop { 0% { transform: scale(1); } 40% { transform: scale(1.3); } 100% { transform: scale(1); } }
.tp-pop { animation: tp-pop 0.35s ease-out; }
html.reduced-motion .tp-pop { animation: none; }
