/* Original web adaptations of established palettes. See docs/palette-sources.md. */

/* Rose Pine Main and Dawn: ink, softened rose, pine, and warm paper. */
:root[data-palette="rose-pine"] {
  --bg: #191724;
  --surface: #1f1d2e;
  --surface-raised: #26233a;
  --input: #16141f;
  --ink: #e0def4;
  --muted: #d3cfe5;
  --subtle: #bbb5d0;
  --line: #595169;
  --accent: #ebbcba;
  --accent-ink: #291c28;
  --accent-tint: #3d293d;
  --blue: #9ccfd8;
  --amber: #f6c177;
  --heading-surface: #2c263a;
  --form-surface: #211e30;
  --output-surface: #16141f;
  --hero-surface: #302534;
  --tile-word: #32283d;
  --tile-subnet: #21343d;
  --tile-key: #382d2b;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #16141fcc;
}
:root[data-palette="rose-pine"][data-theme="light"] {
  --bg: #faf4ed;
  --surface: #fffaf3;
  --surface-raised: #f2e9e1;
  --input: #fffcf7;
  --ink: #464261;
  --muted: #58516a;
  --subtle: #635971;
  --line: #cecacd;
  --accent: #8a4762;
  --accent-ink: #fffaf3;
  --accent-tint: #ebd9e2;
  --blue: #286078;
  --amber: #805720;
  --heading-surface: #f2e9e1;
  --form-surface: #fffaf3;
  --output-surface: #f3eeed;
  --hero-surface: #ece3eb;
  --tile-word: #f0e3ec;
  --tile-subnet: #e2edef;
  --tile-key: #f3e7d6;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #30283e99;
}
.swatch-rose-pine {
  background: linear-gradient(
    135deg,
    #ebbcba 0 38%,
    #191724 38% 72%,
    #9ccfd8 72%
  );
}

/* Everforest hard-dark foundations and medium-light parchment, with moss and aqua. */
:root[data-palette="everforest"] {
  --bg: #1e2326;
  --surface: #272e33;
  --surface-raised: #343f44;
  --input: #1e2527;
  --ink: #d3c6aa;
  --muted: #cdc5b2;
  --subtle: #b9c3b6;
  --line: #56635f;
  --accent: #a7c080;
  --accent-ink: #202c1e;
  --accent-tint: #34442d;
  --blue: #7fbbb3;
  --amber: #dbbc7f;
  --heading-surface: #303b33;
  --form-surface: #2e383c;
  --output-surface: #222b2b;
  --hero-surface: #343b2e;
  --tile-word: #354033;
  --tile-subnet: #293d3d;
  --tile-key: #3b382e;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #151c1ccc;
}
:root[data-palette="everforest"][data-theme="light"] {
  --bg: #efebd4;
  --surface: #fdf6e3;
  --surface-raised: #f4f0d9;
  --input: #fffbed;
  --ink: #384b43;
  --muted: #4c5b4f;
  --subtle: #58614d;
  --line: #bdc3af;
  --accent: #49620b;
  --accent-ink: #fffbed;
  --accent-tint: #e3ecc8;
  --blue: #245e60;
  --amber: #7b5620;
  --heading-surface: #e6e2cc;
  --form-surface: #fdf6e3;
  --output-surface: #eaf0de;
  --hero-surface: #e9edd7;
  --tile-word: #eaf0d7;
  --tile-subnet: #e2ece5;
  --tile-key: #f4e9d2;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #293a2d99;
}
.swatch-everforest {
  background: linear-gradient(
    135deg,
    #a7c080 0 38%,
    #272e33 38% 72%,
    #dbbc7f 72%
  );
}

/* Ayu Dark and Light foundations: amber, sky blue, and botanical green. */
:root[data-palette="ayu"] {
  --bg: #0d1017;
  --surface: #141821;
  --surface-raised: #1c2430;
  --input: #0b0f16;
  --ink: #e6e1d8;
  --muted: #ccc9be;
  --subtle: #b3bbca;
  --line: #465268;
  --accent: #e6b450;
  --accent-ink: #2c210b;
  --accent-tint: #3b301b;
  --blue: #59c2ff;
  --amber: #aad94c;
  --heading-surface: #242c35;
  --form-surface: #161e2a;
  --output-surface: #10141c;
  --hero-surface: #282b26;
  --tile-word: #2d2c22;
  --tile-subnet: #182f3b;
  --tile-key: #243122;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #080b10cc;
}
:root[data-palette="ayu"][data-theme="light"] {
  --bg: #f8f9fa;
  --surface: #fcfcfc;
  --surface-raised: #ebeef0;
  --input: #ffffff;
  --ink: #3e4852;
  --muted: #505b68;
  --subtle: #5d6570;
  --line: #c2cad3;
  --accent: #875407;
  --accent-ink: #ffffff;
  --accent-tint: #f7e8c7;
  --blue: #09648c;
  --amber: #45640b;
  --heading-surface: #eceff1;
  --form-surface: #fcfcfc;
  --output-surface: #f0f4f7;
  --hero-surface: #f4eee1;
  --tile-word: #f7eedb;
  --tile-subnet: #e3f0f6;
  --tile-key: #eaf0dc;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #27354799;
}
.swatch-ayu {
  background: linear-gradient(
    135deg,
    #e6b450 0 38%,
    #0d1017 38% 72%,
    #59c2ff 72%
  );
}

/* Atom One Dark and One Light: graphite, blue, violet, and warm syntax accents. */
:root[data-palette="one-dark"] {
  --bg: #21252b;
  --surface: #282c34;
  --surface-raised: #323842;
  --input: #1e2229;
  --ink: #e1e5ec;
  --muted: #c4cbd6;
  --subtle: #b7c0cf;
  --line: #526074;
  --accent: #61afef;
  --accent-ink: #122c41;
  --accent-tint: #253d55;
  --blue: #c6a0e8;
  --amber: #e5c07b;
  --heading-surface: #303540;
  --form-surface: #282e39;
  --output-surface: #21252b;
  --hero-surface: #30333e;
  --tile-word: #393143;
  --tile-subnet: #263c43;
  --tile-key: #3b352c;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #151820cc;
}
:root[data-palette="one-dark"][data-theme="light"] {
  --bg: #fafafa;
  --surface: #ffffff;
  --surface-raised: #eceef3;
  --input: #ffffff;
  --ink: #383a42;
  --muted: #515869;
  --subtle: #5e6270;
  --line: #c7cbd4;
  --accent: #245eb9;
  --accent-ink: #ffffff;
  --accent-tint: #dee8f7;
  --blue: #89308e;
  --amber: #805b04;
  --heading-surface: #e9edf2;
  --form-surface: #fafbfc;
  --output-surface: #f0f2f6;
  --hero-surface: #e9eaf1;
  --tile-word: #f0e4f1;
  --tile-subnet: #e3edf4;
  --tile-key: #f3ecdb;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #252c3e99;
}
.swatch-one-dark {
  background: linear-gradient(
    135deg,
    #61afef 0 38%,
    #282c34 38% 72%,
    #c678dd 72%
  );
}

/* Kanagawa Wave and Lotus: sumi ink, blue waves, violet, and gold paper. */
:root[data-palette="kanagawa"] {
  --bg: #16161d;
  --surface: #1f1f28;
  --surface-raised: #2a2a37;
  --input: #181820;
  --ink: #dcd7ba;
  --muted: #d0cbb1;
  --subtle: #b9b8c8;
  --line: #54546d;
  --accent: #9cabca;
  --accent-ink: #202637;
  --accent-tint: #30354b;
  --blue: #7fb4ca;
  --amber: #e6c384;
  --heading-surface: #29283b;
  --form-surface: #242633;
  --output-surface: #181820;
  --hero-surface: #2c2d37;
  --tile-word: #302a3d;
  --tile-subnet: #223249;
  --tile-key: #353128;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #101016cc;
}
:root[data-palette="kanagawa"][data-theme="light"] {
  --bg: #f2ecbc;
  --surface: #faf6db;
  --surface-raised: #e7e2bd;
  --input: #fffbe5;
  --ink: #43436c;
  --muted: #51526a;
  --subtle: #5c5b58;
  --line: #b5b1a0;
  --accent: #3e5685;
  --accent-ink: #fffbe5;
  --accent-tint: #d8dece;
  --blue: #365f68;
  --amber: #755327;
  --heading-surface: #e5ddb0;
  --form-surface: #faf6db;
  --output-surface: #e6ead8;
  --hero-surface: #e4e1c7;
  --tile-word: #e6dece;
  --tile-subnet: #d9e6df;
  --tile-key: #eddfb5;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #35384699;
}
.swatch-kanagawa {
  background: linear-gradient(
    135deg,
    #9cabca 0 38%,
    #1f1f28 38% 72%,
    #e6c384 72%
  );
}

/* Classic Monokai charcoal and vivid syntax hues; light mode is a local paper adaptation. */
:root[data-palette="monokai"] {
  --bg: #1e1f1c;
  --surface: #272822;
  --surface-raised: #34352f;
  --input: #1b1c19;
  --ink: #f8f8f2;
  --muted: #ddded4;
  --subtle: #c7c9b6;
  --line: #636655;
  --accent: #a6e22e;
  --accent-ink: #1d290a;
  --accent-tint: #33412a;
  --blue: #66d9ef;
  --amber: #e6db74;
  --heading-surface: #32362a;
  --form-surface: #2c2e27;
  --output-surface: #1e1f1c;
  --hero-surface: #343329;
  --tile-word: #37302f;
  --tile-subnet: #26383b;
  --tile-key: #3b372a;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #141610cc;
}
:root[data-palette="monokai"][data-theme="light"] {
  --bg: #f8f8f2;
  --surface: #fffff8;
  --surface-raised: #eeefe4;
  --input: #fffffb;
  --ink: #272822;
  --muted: #4c5143;
  --subtle: #60614d;
  --line: #c6c9b5;
  --accent: #466714;
  --accent-ink: #fffff8;
  --accent-tint: #deebbf;
  --blue: #176676;
  --amber: #786211;
  --heading-surface: #e9ecda;
  --form-surface: #fffff8;
  --output-surface: #f0f2e8;
  --hero-surface: #e9eedb;
  --tile-word: #f5e4eb;
  --tile-subnet: #e0edf0;
  --tile-key: #f4eed2;
  --purple: var(--accent);
  --orange: var(--amber);
  --scrim: #2c352699;
}
.swatch-monokai {
  background: linear-gradient(
    135deg,
    #a6e22e 0 38%,
    #272822 38% 72%,
    #f92672 72%
  );
}
