/* ==========================================================================
   palette.css — Northline Studio palette (project recolor).
   GENERATED by tools/generate_palette.py from `styles-color-palette-colors.json`:
   token names verbatim; values = brand bases below with the builder's own
   -l-/-d-/-t- scale formulas re-applied. Edit tools/generate_palette.py BASES
   and re-run to recolor; do not hand-edit scales.

   Light mode is the default (variables.json styleManager.defaultMode = light);
   the dark block mirrors the tokens that carry a stored `dark` value in the
   export. Single-mode tokens (muted/info/success/warning/danger + derivatives,
   white) never flip — same as in Bricks.
   ========================================================================== */

/* Northline Studio bases: vermilion signal on warm paper; deep forest as the
   secondary. All other palettes values below are derived, not hand-picked. */

:root {
  /* primary */
  --primary: #9a3412;
  --primary-d-1: #8b2f10;
  --primary-d-2: #7b2a0e;
  --primary-d-3: #6c240d;
  --primary-d-4: #5c1f0b;
  --primary-d-5: #4d1a09;
  --primary-d-6: #3e1507;
  --primary-d-7: #2e1005;
  --primary-d-8: #1f0a04;
  --primary-d-9: #0f0502;
  --primary-l-1: #a4482a;
  --primary-l-2: #ae5d41;
  --primary-l-3: #b87159;
  --primary-l-4: #c28571;
  --primary-l-5: #cc9a88;
  --primary-l-6: #d7aea0;
  --primary-l-7: #e1c2b8;
  --primary-l-8: #ebd6d0;
  --primary-l-9: #f5ebe7;
  --primary-t-1: hsl(15 79.069767% 33.72549% / 0.1);
  --primary-t-2: hsl(15 79.069767% 33.72549% / 0.2);
  --primary-t-3: hsl(15 79.069767% 33.72549% / 0.3);
  --primary-t-4: hsl(15 79.069767% 33.72549% / 0.4);
  --primary-t-5: hsl(15 79.069767% 33.72549% / 0.5);
  --primary-t-6: hsl(15 79.069767% 33.72549% / 0.6);
  --primary-t-7: hsl(15 79.069767% 33.72549% / 0.7);
  --primary-t-8: hsl(15 79.069767% 33.72549% / 0.8);
  --primary-t-9: hsl(15 79.069767% 33.72549% / 0.9);
  /* secondary */
  --secondary: #1e3a34;
  --secondary-d-1: #1b342f;
  --secondary-d-2: #182e2a;
  --secondary-d-3: #152924;
  --secondary-d-4: #12231f;
  --secondary-d-5: #0f1d1a;
  --secondary-d-6: #0c1715;
  --secondary-d-7: #091110;
  --secondary-d-8: #060c0a;
  --secondary-d-9: #030605;
  --secondary-l-1: #344e48;
  --secondary-l-2: #4b615d;
  --secondary-l-3: #627571;
  --secondary-l-4: #788985;
  --secondary-l-5: #8e9c9a;
  --secondary-l-6: #a5b0ae;
  --secondary-l-7: #bcc4c2;
  --secondary-l-8: #d2d8d6;
  --secondary-l-9: #e8ebeb;
  --secondary-t-1: hsl(167.142857 31.818182% 17.254902% / 0.1);
  --secondary-t-2: hsl(167.142857 31.818182% 17.254902% / 0.2);
  --secondary-t-3: hsl(167.142857 31.818182% 17.254902% / 0.3);
  --secondary-t-4: hsl(167.142857 31.818182% 17.254902% / 0.4);
  --secondary-t-5: hsl(167.142857 31.818182% 17.254902% / 0.5);
  --secondary-t-6: hsl(167.142857 31.818182% 17.254902% / 0.6);
  --secondary-t-7: hsl(167.142857 31.818182% 17.254902% / 0.7);
  --secondary-t-8: hsl(167.142857 31.818182% 17.254902% / 0.8);
  --secondary-t-9: hsl(167.142857 31.818182% 17.254902% / 0.9);
  /* light */
  --light: #faf7f2;
  --light-d-1: #e1deda;
  --light-d-2: #c8c6c2;
  --light-d-3: #afada9;
  --light-d-4: #969491;
  --light-d-5: #7d7c79;
  --light-d-6: #646361;
  --light-d-7: #4b4a49;
  --light-d-8: #323130;
  --light-d-9: #191918;
  --light-l-1: #faf8f3;
  --light-l-2: #fbf9f5;
  --light-l-3: #fcf9f6;
  --light-l-4: #fcfaf7;
  --light-l-5: #fcfbf8;
  --light-l-6: #fdfcfa;
  --light-l-7: #fefdfb;
  --light-l-8: #fefdfc;
  --light-l-9: #fefefe;
  --light-t-1: hsl(37.5 44.444444% 96.470588% / 0.1);
  --light-t-2: hsl(37.5 44.444444% 96.470588% / 0.2);
  --light-t-3: hsl(37.5 44.444444% 96.470588% / 0.3);
  --light-t-4: hsl(37.5 44.444444% 96.470588% / 0.4);
  --light-t-5: hsl(37.5 44.444444% 96.470588% / 0.5);
  --light-t-6: hsl(37.5 44.444444% 96.470588% / 0.6);
  --light-t-7: hsl(37.5 44.444444% 96.470588% / 0.7);
  --light-t-8: hsl(37.5 44.444444% 96.470588% / 0.8);
  --light-t-9: hsl(37.5 44.444444% 96.470588% / 0.9);
  /* dark */
  --dark: #141412;
  --dark-d-1: #121210;
  --dark-d-2: #10100e;
  --dark-d-3: #0e0e0d;
  --dark-d-4: #0c0c0b;
  --dark-d-5: #0a0a09;
  --dark-d-6: #080807;
  --dark-d-7: #060605;
  --dark-d-8: #040404;
  --dark-d-9: #020202;
  --dark-l-1: #2c2c2a;
  --dark-l-2: #434341;
  --dark-l-3: #5a5a59;
  --dark-l-4: #727271;
  --dark-l-5: #8a8a88;
  --dark-l-6: #a1a1a0;
  --dark-l-7: #b8b8b8;
  --dark-l-8: #d0d0d0;
  --dark-l-9: #e8e8e7;
  --dark-t-1: hsl(60 5.263158% 7.45098% / 0.1);
  --dark-t-2: hsl(60 5.263158% 7.45098% / 0.2);
  --dark-t-3: hsl(60 5.263158% 7.45098% / 0.3);
  --dark-t-4: hsl(60 5.263158% 7.45098% / 0.4);
  --dark-t-5: hsl(60 5.263158% 7.45098% / 0.5);
  --dark-t-6: hsl(60 5.263158% 7.45098% / 0.6);
  --dark-t-7: hsl(60 5.263158% 7.45098% / 0.7);
  --dark-t-8: hsl(60 5.263158% 7.45098% / 0.8);
  --dark-t-9: hsl(60 5.263158% 7.45098% / 0.9);
  /* muted */
  --muted: #5c5a52;
  --muted-d-1: #53514a;
  --muted-d-2: #4a4842;
  --muted-d-3: #403f39;
  --muted-d-4: #373631;
  --muted-d-5: #2e2d29;
  --muted-d-6: #252421;
  --muted-d-7: #1c1b19;
  --muted-d-8: #121210;
  --muted-d-9: #090908;
  --muted-l-1: #6c6a63;
  --muted-l-2: #7d7b75;
  --muted-l-3: #8d8c86;
  --muted-l-4: #9d9c97;
  --muted-l-5: #aeaca8;
  --muted-l-6: #bebdba;
  --muted-l-7: #cececb;
  --muted-l-8: #dededc;
  --muted-l-9: #efeeee;
  --muted-t-1: hsl(48 5.747126% 34.117647% / 0.1);
  --muted-t-2: hsl(48 5.747126% 34.117647% / 0.2);
  --muted-t-3: hsl(48 5.747126% 34.117647% / 0.3);
  --muted-t-4: hsl(48 5.747126% 34.117647% / 0.4);
  --muted-t-5: hsl(48 5.747126% 34.117647% / 0.5);
  --muted-t-6: hsl(48 5.747126% 34.117647% / 0.6);
  --muted-t-7: hsl(48 5.747126% 34.117647% / 0.7);
  --muted-t-8: hsl(48 5.747126% 34.117647% / 0.8);
  --muted-t-9: hsl(48 5.747126% 34.117647% / 0.9);
  /* info */
  --info: #2f6f6a;
  --info-d-1: #2a645f;
  --info-d-2: #265955;
  --info-d-3: #214e4a;
  --info-d-4: #1c4340;
  --info-d-5: #183835;
  --info-d-6: #132c2a;
  --info-d-7: #0e2120;
  --info-d-8: #091615;
  --info-d-9: #050b0b;
  --info-l-1: #447d79;
  --info-l-2: #598c88;
  --info-l-3: #6d9a97;
  --info-l-4: #82a9a6;
  --info-l-5: #97b7b4;
  --info-l-6: #acc5c3;
  --info-l-7: #c1d4d2;
  --info-l-8: #d5e2e1;
  --info-l-9: #eaf1f0;
  --info-t-1: hsl(175.3125 40.506329% 30.980392% / 0.1);
  --info-t-2: hsl(175.3125 40.506329% 30.980392% / 0.2);
  --info-t-3: hsl(175.3125 40.506329% 30.980392% / 0.3);
  --info-t-4: hsl(175.3125 40.506329% 30.980392% / 0.4);
  --info-t-5: hsl(175.3125 40.506329% 30.980392% / 0.5);
  --info-t-6: hsl(175.3125 40.506329% 30.980392% / 0.6);
  --info-t-7: hsl(175.3125 40.506329% 30.980392% / 0.7);
  --info-t-8: hsl(175.3125 40.506329% 30.980392% / 0.8);
  --info-t-9: hsl(175.3125 40.506329% 30.980392% / 0.9);
  /* success */
  --success: #3f7d4e;
  --success-d-1: #397046;
  --success-d-2: #32643e;
  --success-d-3: #2c5837;
  --success-d-4: #264b2f;
  --success-d-5: #203e27;
  --success-d-6: #19321f;
  --success-d-7: #132617;
  --success-d-8: #0d1910;
  --success-d-9: #060c08;
  --success-l-1: #528a60;
  --success-l-2: #659771;
  --success-l-3: #79a483;
  --success-l-4: #8cb195;
  --success-l-5: #9fbea6;
  --success-l-6: #b2cbb8;
  --success-l-7: #c5d8ca;
  --success-l-8: #d9e5dc;
  --success-l-9: #ecf2ed;
  --success-t-1: hsl(134.516129 32.978723% 36.862745% / 0.1);
  --success-t-2: hsl(134.516129 32.978723% 36.862745% / 0.2);
  --success-t-3: hsl(134.516129 32.978723% 36.862745% / 0.3);
  --success-t-4: hsl(134.516129 32.978723% 36.862745% / 0.4);
  --success-t-5: hsl(134.516129 32.978723% 36.862745% / 0.5);
  --success-t-6: hsl(134.516129 32.978723% 36.862745% / 0.6);
  --success-t-7: hsl(134.516129 32.978723% 36.862745% / 0.7);
  --success-t-8: hsl(134.516129 32.978723% 36.862745% / 0.8);
  --success-t-9: hsl(134.516129 32.978723% 36.862745% / 0.9);
  /* warning */
  --warning: #b3801f;
  --warning-d-1: #a1731c;
  --warning-d-2: #8f6619;
  --warning-d-3: #7d5a16;
  --warning-d-4: #6b4d13;
  --warning-d-5: #5a4010;
  --warning-d-6: #48330c;
  --warning-d-7: #362609;
  --warning-d-8: #241a06;
  --warning-d-9: #120d03;
  --warning-l-1: #bb8d35;
  --warning-l-2: #c2994c;
  --warning-l-3: #caa662;
  --warning-l-4: #d1b379;
  --warning-l-5: #d9c08f;
  --warning-l-6: #e1cca5;
  --warning-l-7: #e8d9bc;
  --warning-l-8: #f0e6d2;
  --warning-l-9: #f7f2e9;
  --warning-t-1: hsl(39.324324 70.47619% 41.176471% / 0.1);
  --warning-t-2: hsl(39.324324 70.47619% 41.176471% / 0.2);
  --warning-t-3: hsl(39.324324 70.47619% 41.176471% / 0.3);
  --warning-t-4: hsl(39.324324 70.47619% 41.176471% / 0.4);
  --warning-t-5: hsl(39.324324 70.47619% 41.176471% / 0.5);
  --warning-t-6: hsl(39.324324 70.47619% 41.176471% / 0.6);
  --warning-t-7: hsl(39.324324 70.47619% 41.176471% / 0.7);
  --warning-t-8: hsl(39.324324 70.47619% 41.176471% / 0.8);
  --warning-t-9: hsl(39.324324 70.47619% 41.176471% / 0.9);
  /* danger */
  --danger: #b3402e;
  --danger-d-1: #a13a29;
  --danger-d-2: #8f3325;
  --danger-d-3: #7d2d20;
  --danger-d-4: #6b261c;
  --danger-d-5: #5a2017;
  --danger-d-6: #481a12;
  --danger-d-7: #36130e;
  --danger-d-8: #240d09;
  --danger-d-9: #120605;
  --danger-l-1: #bb5343;
  --danger-l-2: #c26658;
  --danger-l-3: #ca796d;
  --danger-l-4: #d18c82;
  --danger-l-5: #d9a096;
  --danger-l-6: #e1b3ab;
  --danger-l-7: #e8c6c0;
  --danger-l-8: #f0d9d5;
  --danger-l-9: #f7ecea;
  --danger-t-1: hsl(8.120301 59.111111% 44.117647% / 0.1);
  --danger-t-2: hsl(8.120301 59.111111% 44.117647% / 0.2);
  --danger-t-3: hsl(8.120301 59.111111% 44.117647% / 0.3);
  --danger-t-4: hsl(8.120301 59.111111% 44.117647% / 0.4);
  --danger-t-5: hsl(8.120301 59.111111% 44.117647% / 0.5);
  --danger-t-6: hsl(8.120301 59.111111% 44.117647% / 0.6);
  --danger-t-7: hsl(8.120301 59.111111% 44.117647% / 0.7);
  --danger-t-8: hsl(8.120301 59.111111% 44.117647% / 0.8);
  --danger-t-9: hsl(8.120301 59.111111% 44.117647% / 0.9);
  /* white */
  --white: #ffffff;
  /* black */
  --black: #141412;
  --black-t-1: hsl(60 5.263158% 7.45098% / 0.1);
  --black-t-2: hsl(60 5.263158% 7.45098% / 0.2);
  --black-t-3: hsl(60 5.263158% 7.45098% / 0.3);
  --black-t-4: hsl(60 5.263158% 7.45098% / 0.4);
  --black-t-5: hsl(60 5.263158% 7.45098% / 0.5);
  --black-t-6: hsl(60 5.263158% 7.45098% / 0.6);
  --black-t-7: hsl(60 5.263158% 7.45098% / 0.7);
  --black-t-8: hsl(60 5.263158% 7.45098% / 0.8);
  --black-t-9: hsl(60 5.263158% 7.45098% / 0.9);
}

@media (prefers-color-scheme: dark) {
  :root {
    /* primary */
    --primary: #f0774a;
    --primary-d-1: #f2855c;
    --primary-d-2: #f3926e;
    --primary-d-3: #f4a080;
    --primary-d-4: #f6ad92;
    --primary-d-5: #f8bba4;
    --primary-d-6: #f9c9b7;
    --primary-d-7: #fad6c9;
    --primary-d-8: #fce4db;
    --primary-d-9: #fef1ed;
    --primary-l-1: #d86b43;
    --primary-l-2: #c05f3b;
    --primary-l-3: #a85334;
    --primary-l-4: #90472c;
    --primary-l-5: #783c25;
    --primary-l-6: #60301e;
    --primary-l-7: #482416;
    --primary-l-8: #30180f;
    --primary-l-9: #180c07;
    --primary-t-1: hsl(16.26506 84.693878% 61.568627% / 0.1);
    --primary-t-2: hsl(16.26506 84.693878% 61.568627% / 0.2);
    --primary-t-3: hsl(16.26506 84.693878% 61.568627% / 0.3);
    --primary-t-4: hsl(16.26506 84.693878% 61.568627% / 0.4);
    --primary-t-5: hsl(16.26506 84.693878% 61.568627% / 0.5);
    --primary-t-6: hsl(16.26506 84.693878% 61.568627% / 0.6);
    --primary-t-7: hsl(16.26506 84.693878% 61.568627% / 0.7);
    --primary-t-8: hsl(16.26506 84.693878% 61.568627% / 0.8);
    --primary-t-9: hsl(16.26506 84.693878% 61.568627% / 0.9);
    /* secondary */
    --secondary: #8fbcad;
    --secondary-d-1: #9ac3b5;
    --secondary-d-2: #a5c9bd;
    --secondary-d-3: #b1d0c6;
    --secondary-d-4: #bcd7ce;
    --secondary-d-5: #c7ded6;
    --secondary-d-6: #d2e4de;
    --secondary-d-7: #ddebe6;
    --secondary-d-8: #e9f2ef;
    --secondary-d-9: #f4f8f7;
    --secondary-l-1: #81a99c;
    --secondary-l-2: #72968a;
    --secondary-l-3: #648479;
    --secondary-l-4: #567168;
    --secondary-l-5: #485e56;
    --secondary-l-6: #394b45;
    --secondary-l-7: #2b3834;
    --secondary-l-8: #1d2623;
    --secondary-l-9: #0e1311;
    --secondary-t-1: hsl(160 25.139665% 64.901961% / 0.1);
    --secondary-t-2: hsl(160 25.139665% 64.901961% / 0.2);
    --secondary-t-3: hsl(160 25.139665% 64.901961% / 0.3);
    --secondary-t-4: hsl(160 25.139665% 64.901961% / 0.4);
    --secondary-t-5: hsl(160 25.139665% 64.901961% / 0.5);
    --secondary-t-6: hsl(160 25.139665% 64.901961% / 0.6);
    --secondary-t-7: hsl(160 25.139665% 64.901961% / 0.7);
    --secondary-t-8: hsl(160 25.139665% 64.901961% / 0.8);
    --secondary-t-9: hsl(160 25.139665% 64.901961% / 0.9);
    /* light */
    --light: #141210;
    --light-d-1: #2c2a28;
    --light-d-2: #434140;
    --light-d-3: #5a5958;
    --light-d-4: #727170;
    --light-d-5: #8a8888;
    --light-d-6: #a1a09f;
    --light-d-7: #b8b8b7;
    --light-d-8: #d0d0cf;
    --light-d-9: #e8e7e7;
    --light-l-1: #12100e;
    --light-l-2: #100e0d;
    --light-l-3: #0e0d0b;
    --light-l-4: #0c0b0a;
    --light-l-5: #0a0908;
    --light-l-6: #080706;
    --light-l-7: #060505;
    --light-l-8: #040403;
    --light-l-9: #020202;
    --light-t-1: hsl(30 11.111111% 7.058824% / 0.1);
    --light-t-2: hsl(30 11.111111% 7.058824% / 0.2);
    --light-t-3: hsl(30 11.111111% 7.058824% / 0.3);
    --light-t-4: hsl(30 11.111111% 7.058824% / 0.4);
    --light-t-5: hsl(30 11.111111% 7.058824% / 0.5);
    --light-t-6: hsl(30 11.111111% 7.058824% / 0.6);
    --light-t-7: hsl(30 11.111111% 7.058824% / 0.7);
    --light-t-8: hsl(30 11.111111% 7.058824% / 0.8);
    --light-t-9: hsl(30 11.111111% 7.058824% / 0.9);
    /* dark */
    --dark: #f5f1ea;
    --dark-d-1: #f6f2ec;
    --dark-d-2: #f7f4ee;
    --dark-d-3: #f8f5f0;
    --dark-d-4: #f9f7f2;
    --dark-d-5: #faf8f4;
    --dark-d-6: #fbf9f7;
    --dark-d-7: #fcfbf9;
    --dark-d-8: #fdfcfb;
    --dark-d-9: #fefefd;
    --dark-l-1: #dcd9d3;
    --dark-l-2: #c4c1bb;
    --dark-l-3: #aca9a4;
    --dark-l-4: #93918c;
    --dark-l-5: #7a7875;
    --dark-l-6: #62605e;
    --dark-l-7: #4a4846;
    --dark-l-8: #31302f;
    --dark-l-9: #181817;
    --dark-t-1: hsl(38.181818 35.483871% 93.921569% / 0.1);
    --dark-t-2: hsl(38.181818 35.483871% 93.921569% / 0.2);
    --dark-t-3: hsl(38.181818 35.483871% 93.921569% / 0.3);
    --dark-t-4: hsl(38.181818 35.483871% 93.921569% / 0.4);
    --dark-t-5: hsl(38.181818 35.483871% 93.921569% / 0.5);
    --dark-t-6: hsl(38.181818 35.483871% 93.921569% / 0.6);
    --dark-t-7: hsl(38.181818 35.483871% 93.921569% / 0.7);
    --dark-t-8: hsl(38.181818 35.483871% 93.921569% / 0.8);
    --dark-t-9: hsl(38.181818 35.483871% 93.921569% / 0.9);
    /* black */
    --black: #141412;
    --black-t-1: hsl(60 5.263158% 7.45098% / 0.1);
    --black-t-2: hsl(60 5.263158% 7.45098% / 0.2);
    --black-t-3: hsl(60 5.263158% 7.45098% / 0.3);
    --black-t-4: hsl(60 5.263158% 7.45098% / 0.4);
    --black-t-5: hsl(60 5.263158% 7.45098% / 0.5);
    --black-t-6: hsl(60 5.263158% 7.45098% / 0.6);
    --black-t-7: hsl(60 5.263158% 7.45098% / 0.7);
    --black-t-8: hsl(60 5.263158% 7.45098% / 0.8);
    --black-t-9: hsl(60 5.263158% 7.45098% / 0.9);
  }
}
