[data-theme="light"],
:root:not([data-theme="dark"]) {
  color-scheme: light;

  /* ==================================================
     BASE
     ================================================== */

  --pico-background-color: var(--ghostwhite);
  --pico-color: var(--raven);

  --pico-text-selection-color: rgba(1, 170, 255, 0.1875);
  --pico-muted-color: var(--orange-500);
  --pico-muted-border-color: var(--majorelle-500);


  /* ==================================================
     PRIMARY
     ================================================== */

  --pico-primary: var(--majorelle-500);
  --pico-primary-background: var(--majorelle-500);
  --pico-primary-border: var(--pico-primary-background);
  --pico-primary-underline: var(--majorelle-500);

  --pico-primary-hover: var(--orange-500);
  --pico-primary-hover-background: var(--orange-500);
  --pico-primary-hover-border: var(--pico-primary-hover-background);
  --pico-primary-hover-underline: var(--pico-primary-hover);

  --pico-primary-focus: var(--orange-500);
  --pico-primary-inverse: var(--ghostwhite);


  /* ==================================================
     SECONDARY
     ================================================== */

  --pico-secondary: var(--orange-500);
  --pico-secondary-background: var(--orange-500);
  --pico-secondary-border: var(--pico-secondary-background);
  --pico-secondary-underline: var(--orange-500);

  --pico-secondary-hover: var(--orange-500);
  --pico-secondary-hover-background: var(--orange-700);
  --pico-secondary-hover-border: var(--pico-secondary-hover-background);
  --pico-secondary-hover-underline: var(--pico-secondary-hover);

  --pico-secondary-focus: var(--orange-500);
  --pico-secondary-inverse: var(--raven);


  /* ==================================================
     CONTRAST
     ================================================== */

  --pico-contrast: var(--ghostwhite);
  --pico-contrast-background: var(--ghostwhite);
  --pico-contrast-border: var(--pico-contrast-background);
  --pico-contrast-underline: rgba(245, 247, 237, 0.5);

  --pico-contrast-hover: #fff;
  --pico-contrast-hover-background: #fff;
  --pico-contrast-hover-border: var(--pico-contrast-hover-background);
  --pico-contrast-hover-underline: var(--pico-contrast-hover);

  --pico-contrast-focus: rgba(207, 213, 226, 0.25);
  --pico-contrast-inverse: #000;


  /* ==================================================
     ELEVATION
     ================================================== */

  --pico-box-shadow:
    0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),
    0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),
    0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),
    0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),
    0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),
    0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),
    0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);


  /* ==================================================
     HEADINGS
     ================================================== */

  --pico-h1-color: var(--pico-color);
  --pico-h2-color: var(--pico-color);
  --pico-h3-color: var(--pico-color);
  --pico-h4-color: var(--pico-color);
  --pico-h5-color: var(--pico-color);
  --pico-h6-color: var(--pico-color);


  /* ==================================================
     CONTENT
     ================================================== */

  --pico-mark-background-color: #014063;
  --pico-mark-color: #fff;

  --pico-ins-color: #62af9a;
  --pico-del-color: rgb(205.5, 126, 123);

  --pico-blockquote-border-color: var(--pico-muted-border-color);
  --pico-blockquote-footer-color: var(--pico-muted-color);


  /* ==================================================
     BUTTONS
     ================================================== */

  --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);


  /* ==================================================
     TABLES / CODE
     ================================================== */

  --pico-table-border-color: var(--pico-muted-border-color);
  --pico-table-row-stripped-background-color: rgba(111, 120, 135, 0.0375);

  --pico-code-background-color: rgb(26, 30.5, 40.25);
  --pico-code-color: #8891a4;

  --pico-code-kbd-background-color: var(--pico-color);
  --pico-code-kbd-color: var(--pico-background-color);


  /* ==================================================
     FORMS
     ================================================== */

  --pico-form-element-background-color: rgb(28, 33, 43.5);
  --pico-form-element-selected-background-color: #2a3140;
  --pico-form-element-border-color: #2a3140;
  --pico-form-element-color: #e0e3e7;
  --pico-form-element-placeholder-color: #8891a4;

  --pico-form-element-active-background-color: rgb(26, 30.5, 40.25);
  --pico-form-element-active-border-color: var(--pico-primary-border);
  --pico-form-element-focus-color: var(--pico-primary-border);

  --pico-form-element-disabled-opacity: 0.5;

  --pico-form-element-invalid-border-color: rgb(149.5, 74, 80);
  --pico-form-element-invalid-active-border-color: rgb(183.25, 63.5, 59);
  --pico-form-element-invalid-focus-color:
    var(--pico-form-element-invalid-active-border-color);

  --pico-form-element-valid-border-color: #2a7b6f;
  --pico-form-element-valid-active-border-color: rgb(22, 137, 105.5);
  --pico-form-element-valid-focus-color:
    var(--pico-form-element-valid-active-border-color);


  /* ==================================================
     SWITCH
     ================================================== */

  --pico-switch-background-color: #333c4e;
  --pico-switch-checked-background-color: var(--pico-primary-background);
  --pico-switch-color: #fff;
  --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);


  /* ==================================================
     RANGE
     ================================================== */

  --pico-range-border-color: #202632;
  --pico-range-active-border-color: #2a3140;
  --pico-range-thumb-border-color: var(--pico-background-color);
  --pico-range-thumb-color: var(--pico-secondary-background);
  --pico-range-thumb-active-color: var(--pico-primary-background);


  /* ==================================================
     ACCORDION
     ================================================== */

  --pico-accordion-border-color: var(--pico-muted-border-color);
  --pico-accordion-active-summary-color: var(--pico-primary-hover);
  --pico-accordion-close-summary-color: var(--pico-color);
  --pico-accordion-open-summary-color: var(--pico-muted-color);


  /* ==================================================
     CARD
     ================================================== */

  --pico-card-background-color: #181c25;
  --pico-card-border-color: var(--pico-card-background-color);
  --pico-card-box-shadow: var(--pico-box-shadow);
  --pico-card-sectioning-background-color: rgb(26, 30.5, 40.25);


  /* ==================================================
     DROPDOWN
     ================================================== */

  --pico-dropdown-background-color: #181c25;
  --pico-dropdown-border-color: #202632;
  --pico-dropdown-box-shadow: var(--pico-box-shadow);
  --pico-dropdown-color: var(--pico-color);
  --pico-dropdown-hover-background-color: #202632;


  /* ==================================================
     OTHER COMPONENTS
     ================================================== */

  --pico-loading-spinner-opacity: 0.5;

  --pico-modal-overlay-background-color: rgba(7.5, 8.5, 10, 0.75);

  --pico-progress-background-color: #202632;
  --pico-progress-color: var(--pico-primary-background);

  --pico-tooltip-background-color: var(--pico-contrast-background);
  --pico-tooltip-color: var(--pico-contrast-inverse);


  /* ==================================================
     FORM ICONS
     ================================================== */

  --pico-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");

  --pico-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(149.5, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
}


/* ==================================================
   DARK MODE FORM FOCUS
   ================================================== */

[data-theme="dark"] input:is(
  [type="submit"],
  [type="button"],
  [type="reset"],
  [type="checkbox"],
  [type="radio"],
  [type="file"]
) {
  --pico-form-element-focus-color: var(--pico-primary-focus);
}


/* ==================================================
   DARK MODE CONTRAST ICONS
   ================================================== */

[data-theme="dark"] details summary[role="button"].contrast:not(.outline)::after {
  filter: brightness(0);
}

[data-theme="dark"] [aria-busy="true"]:not(input, select, textarea).contrast:is(
  button,
  [type="submit"],
  [type="button"],
  [type="reset"],
  [role="button"]
):not(.outline)::before {
  filter: brightness(0);
}


/* ==================================================
   ACCENT COLOR
   ================================================== */

progress,
[type="checkbox"],
[type="radio"],
[type="range"] {
  accent-color: var(--pico-primary);
}



[data-theme="dark"] {
  color-scheme: dark;

  /* ==================================================
     BASE
     ================================================== */

  --pico-background-color: var(--galactic);
  --pico-color: var(--ghostwhite);

  --pico-text-selection-color: rgba(1, 170, 255, 0.1875);
  --pico-muted-color: var(--orange-500);
  --pico-muted-border-color: var(--orange-500);


  /* ==================================================
     PRIMARY
     ================================================== */

  --pico-primary: var(--lavender);
  --pico-primary-background: var(--lavender);
  --pico-primary-border: var(--pico-primary-background);
  --pico-primary-underline: var(--lavender);

  --pico-primary-hover: var(--orange-500);
  --pico-primary-hover-background: var(--orange-500);
  --pico-primary-hover-border: var(--pico-primary-hover-background);
  --pico-primary-hover-underline: var(--pico-primary-hover);

  --pico-primary-focus: var(--orange-500);
  --pico-primary-inverse: var(--raven);


  /* ==================================================
     SECONDARY
     ================================================== */

  --pico-secondary: var(--orange-500);
  --pico-secondary-background: var(--orange-500);
  --pico-secondary-border: var(--pico-secondary-background);
  --pico-secondary-underline: var(--orange-500);

  --pico-secondary-hover: var(--orange-700);
  --pico-secondary-hover-background: var(--orange-700);
  --pico-secondary-hover-border: var(--pico-secondary-hover-background);
  --pico-secondary-hover-underline: var(--pico-secondary-hover);

  --pico-secondary-focus: var(--orange-500);
  --pico-secondary-inverse: var(--raven);


  /* ==================================================
     CONTRAST
     ================================================== */

  --pico-contrast: var(--ghostwhite);
  --pico-contrast-background: var(--ghostwhite);
  --pico-contrast-border: var(--pico-contrast-background);
  --pico-contrast-underline: rgba(245, 247, 237, 0.5);

  --pico-contrast-hover: #fff;
  --pico-contrast-hover-background: #fff;
  --pico-contrast-hover-border: var(--pico-contrast-hover-background);
  --pico-contrast-hover-underline: var(--pico-contrast-hover);

  --pico-contrast-focus: rgba(207, 213, 226, 0.25);
  --pico-contrast-inverse: #000;


  /* ==================================================
     ELEVATION
     ================================================== */

  --pico-box-shadow:
    0.0145rem 0.029rem 0.174rem rgba(7, 8.5, 12, 0.01698),
    0.0335rem 0.067rem 0.402rem rgba(7, 8.5, 12, 0.024),
    0.0625rem 0.125rem 0.75rem rgba(7, 8.5, 12, 0.03),
    0.1125rem 0.225rem 1.35rem rgba(7, 8.5, 12, 0.036),
    0.2085rem 0.417rem 2.502rem rgba(7, 8.5, 12, 0.04302),
    0.5rem 1rem 6rem rgba(7, 8.5, 12, 0.06),
    0 0 0 0.0625rem rgba(7, 8.5, 12, 0.015);


  /* ==================================================
     HEADINGS
     ================================================== */

  --pico-h1-color: var(--pico-color);
  --pico-h2-color: var(--pico-color);
  --pico-h3-color: var(--pico-color);
  --pico-h4-color: var(--pico-color);
  --pico-h5-color: var(--pico-color);
  --pico-h6-color: var(--pico-color);


  /* ==================================================
     CONTENT
     ================================================== */

  --pico-mark-background-color: #014063;
  --pico-mark-color: #fff;

  --pico-ins-color: #62af9a;
  --pico-del-color: rgb(205.5, 126, 123);

  --pico-blockquote-border-color: var(--pico-muted-border-color);
  --pico-blockquote-footer-color: var(--pico-muted-color);


  /* ==================================================
     BUTTONS
     ================================================== */

  --pico-button-box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  --pico-button-hover-box-shadow: 0 0 0 rgba(0, 0, 0, 0);


  /* ==================================================
     TABLES / CODE
     ================================================== */

  --pico-table-border-color: var(--pico-muted-border-color);
  --pico-table-row-stripped-background-color: rgba(111, 120, 135, 0.0375);

  --pico-code-background-color: rgb(26, 30.5, 40.25);
  --pico-code-color: #8891a4;

  --pico-code-kbd-background-color: var(--pico-color);
  --pico-code-kbd-color: var(--pico-background-color);


  /* ==================================================
     FORMS
     ================================================== */

  --pico-form-element-background-color: rgb(28, 33, 43.5);
  --pico-form-element-selected-background-color: #2a3140;
  --pico-form-element-border-color: #2a3140;
  --pico-form-element-color: #e0e3e7;
  --pico-form-element-placeholder-color: #8891a4;

  --pico-form-element-active-background-color: rgb(26, 30.5, 40.25);
  --pico-form-element-active-border-color: var(--pico-primary-border);
  --pico-form-element-focus-color: var(--pico-primary-border);

  --pico-form-element-disabled-opacity: 0.5;

  --pico-form-element-invalid-border-color: rgb(149.5, 74, 80);
  --pico-form-element-invalid-active-border-color: rgb(183.25, 63.5, 59);
  --pico-form-element-invalid-focus-color:
    var(--pico-form-element-invalid-active-border-color);

  --pico-form-element-valid-border-color: #2a7b6f;
  --pico-form-element-valid-active-border-color: rgb(22, 137, 105.5);
  --pico-form-element-valid-focus-color:
    var(--pico-form-element-valid-active-border-color);


  /* ==================================================
     SWITCH
     ================================================== */

  --pico-switch-background-color: #333c4e;
  --pico-switch-checked-background-color: var(--pico-primary-background);
  --pico-switch-color: #fff;
  --pico-switch-thumb-box-shadow: 0 0 0 rgba(0, 0, 0, 0);


  /* ==================================================
     RANGE
     ================================================== */

  --pico-range-border-color: #202632;
  --pico-range-active-border-color: #2a3140;
  --pico-range-thumb-border-color: var(--pico-background-color);
  --pico-range-thumb-color: var(--pico-secondary-background);
  --pico-range-thumb-active-color: var(--pico-primary-background);


  /* ==================================================
     ACCORDION
     ================================================== */

  --pico-accordion-border-color: var(--pico-muted-border-color);
  --pico-accordion-active-summary-color: var(--pico-primary-hover);
  --pico-accordion-close-summary-color: var(--pico-color);
  --pico-accordion-open-summary-color: var(--pico-muted-color);


  /* ==================================================
     CARD
     ================================================== */

  --pico-card-background-color: #181c25;
  --pico-card-border-color: var(--pico-card-background-color);
  --pico-card-box-shadow: var(--pico-box-shadow);
  --pico-card-sectioning-background-color: rgb(26, 30.5, 40.25);


  /* ==================================================
     DROPDOWN
     ================================================== */

  --pico-dropdown-background-color: #181c25;
  --pico-dropdown-border-color: #202632;
  --pico-dropdown-box-shadow: var(--pico-box-shadow);
  --pico-dropdown-color: var(--pico-color);
  --pico-dropdown-hover-background-color: #202632;


  /* ==================================================
     OTHER COMPONENTS
     ================================================== */

  --pico-loading-spinner-opacity: 0.5;

  --pico-modal-overlay-background-color: rgba(7.5, 8.5, 10, 0.75);

  --pico-progress-background-color: #202632;
  --pico-progress-color: var(--pico-primary-background);

  --pico-tooltip-background-color: var(--pico-contrast-background);
  --pico-tooltip-color: var(--pico-contrast-inverse);


  /* ==================================================
     FORM ICONS
     ================================================== */

  --pico-icon-valid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(42, 123, 111)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");

  --pico-icon-invalid: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(149.5, 74, 80)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cline x1='12' y1='8' x2='12' y2='12'%3E%3C/line%3E%3Cline x1='12' y1='16' x2='12.01' y2='16'%3E%3C/line%3E%3C/svg%3E");
}


/* ==================================================
   DARK MODE FORM FOCUS
   ================================================== */

[data-theme="dark"] input:is(
  [type="submit"],
  [type="button"],
  [type="reset"],
  [type="checkbox"],
  [type="radio"],
  [type="file"]
) {
  --pico-form-element-focus-color: var(--pico-primary-focus);
}


/* ==================================================
   DARK MODE CONTRAST ICONS
   ================================================== */

[data-theme="dark"] details summary[role="button"].contrast:not(.outline)::after {
  filter: brightness(0);
}

[data-theme="dark"] [aria-busy="true"]:not(input, select, textarea).contrast:is(
  button,
  [type="submit"],
  [type="button"],
  [type="reset"],
  [role="button"]
):not(.outline)::before {
  filter: brightness(0);
}


/* ==================================================
   ACCENT COLOR
   ================================================== */

progress,
[type="checkbox"],
[type="radio"],
[type="range"] {
  accent-color: var(--pico-primary);
}