/* colours */
@-moz-document url-prefix("about:newtab"),
url-prefix("about:home"),
url-prefix("about:firefoxview") {
  :root:not([lwt-newtab], [lwt-newtab-brighttext]) {
    --newtab-background-color: #F7F7F7 !important;
    --newtab-background-color-secondary: #fff !important;
    --newtab-text-primary-color: #252525 !important;
    --newtab-primary-action-background: #0078D4 !important;
    --newtab-text-secondary-color: color-mix(in srgb, var(--newtab-text-primary-color) 80%, transparent) !important;
    --newtab-element-hover-color: color-mix(in srgb, var(--newtab-background-color) 95%, #000) !important;
    --newtab-element-active-color: color-mix(in srgb, var(--newtab-background-color) 90%, #000) !important;
    --newtab-element-secondary-color: color-mix(in srgb, currentColor 5%, transparent) !important;
    --newtab-element-secondary-hover-color: color-mix(in srgb, currentColor 12%, transparent) !important;
    --newtab-element-secondary-active-color: color-mix(in srgb, currentColor 25%, transparent) !important;
    --newtab-primary-element-hover-color: color-mix(in srgb, var(--newtab-primary-action-background) 90%, #000) !important;
    --newtab-primary-element-active-color: color-mix(in srgb, var(--newtab-primary-action-background) 80%, #000) !important;
    --newtab-primary-element-text-color: #fff !important;
    --newtab-primary-action-background-dimmed: color-mix(in srgb, var(--newtab-primary-action-background) 25%, transparent) !important;
    --newtab-border-color: color-mix(in srgb, var(--newtab-background-color) 75%, #000) !important;
    --newtab-wordmark-color: #737373 !important;
    --newtab-status-success: #50B080 !important;
    --newtab-status-error: #FF848A !important;
    --newtab-inner-box-shadow-color: rgb(0 0 0 / .1) !important;
    --newtab-overlay-color: color-mix(in srgb, var(--newtab-background-color) 85%, transparent) !important;
    --newtab-text-emphasis-background: #FFED32 !important;
    --newtab-text-emphasis-text-color: #000 !important;
    --newtab-textbox-focus-color: var(--newtab-primary-action-background) !important;
    --newtab-textbox-focus-boxshadow: 0 0 0 1px var(--newtab-primary-action-background), 0 0 0 4px rgba(var(--newtab-primary-action-background), 0.3) !important;
    --newtab-button-secondary-color: inherit !important;
  }

  :root:not([style*="color"])[lwt-newtab-brighttext] {
    --newtab-background-color: #252525 !important;
    --newtab-background-color-secondary: #4A4A4A !important;
    --newtab-text-primary-color: #fff !important;
    --newtab-primary-action-background: #75B6E8 !important;
    --newtab-element-hover-color: color-mix(in srgb, var(--newtab-background-color) 95%, #FFF) !important;
    --newtab-element-active-color: color-mix(in srgb, var(--newtab-background-color) 90%, #FFF) !important;
    --newtab-element-secondary-color: color-mix(in srgb, currentColor 10%, transparent) !important;
    --newtab-element-secondary-hover-color: color-mix(in srgb, currentColor 17%, transparent) !important;
    --newtab-element-secondary-active-color: color-mix(in srgb, currentColor 30%, transparent) !important;
    --newtab-border-color: color-mix(in srgb, var(--newtab-background-color) 75%, #FFF) !important;
    --newtab-primary-element-text-color: #252525 !important;
    --newtab-wordmark-color: #fff !important;
    --newtab-status-success: #50B080 !important;
  }
}

@-moz-document url-prefix("about:newtab"),
url-prefix("about:home") {
  /* hide pin */
  .icon.icon-pin-small {
    display: none !important;
  }

  /* unpinned sites have lower opacity title */
  .top-site-button .title:not(.pinned) {
    opacity: 0.7 !important;
  }

  /* search bar */
  .search-wrapper .search-inner-wrapper {
    min-height: 44px !important;
  }

  .search-handoff-button {
    border-radius: 99px !important;
    background-position: 12px !important;
    padding-inline-start: 48px !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    --elevation: 4;
    box-shadow: 0 0 calc((var(--elevation) * 0.225px) + 2px) rgb(0 0 0 / .11), 0 calc(var(--elevation) * 0.4px) calc((var(--elevation) * 0.9px)) rgb(0 0 0 / .13) !important;
  }

  .search-handoff-button:hover {
    --elevation: 6;
  }

  .search-wrapper.fake-focus:not(.search.disabled) .search-handoff-button {
    border-color: transparent !important;
    outline: 1px solid #0078D4 !important;
    outline-offset: -1px !important;
  }

  .search-handoff-button .fake-caret {
    inset-inline-start: 48px !important;
    top: 13px !important;
  }

  .search-disabled .search-handoff-button {
    opacity: 0 !important;
  }

  /* top sites */
  .top-site-outer .tile {
    border-radius: 16px !important;
    height: 72px !important;
    width: 72px !important;
    box-shadow: none !important;
  }


  /* card */
  .card-outer,
  .card-outer .card,
  .ds-card-grid.ds-card-grid-border .ds-card:not(.placeholder) {
    border-radius: 6px !important;
  }

  .card-outer .card,
  .ds-card-grid.ds-card-grid-border .ds-card:not(.placeholder) {
    box-shadow: 0 1px 4px rgb(0 0 0 / .3) !important;
  }

  .card-outer .card-preview-image-outer,
  .ds-card-grid.ds-card-grid-border .ds-card:not(.placeholder) .img-wrapper .img img {
    border-radius: 6px 6px 0 0 !important
  }

  .fake-textbox {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  .outer-wrapper.only-search {
    display: flex !important;
    padding: 30px !important;
  }

  .top-sites-list:not(.dnd-active) .top-site-outer:is(.active, :focus, :hover){
    background-color: #3c3c47 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.25);
}

}

/* Private browsing new tab */
@-moz-document url-prefix(about:privatebrowsing) {
  :root {
    --fp-wordmark-color: light-dark(#737373, #fff);
    --fp-background-color-secondary: light-dark(#fff, #4a4a4a);

    @media (-moz-bool-pref: "browser.theme.dark-private-windows") {
      color-scheme: dark !important;
    }
  }

  .search-inner-wrapper {
    height: 44px !important;
  }

  .search-handoff-button,
  .search-handoff-button:active,
  .search-handoff-button:enabled:hover:active {
    background-color: var(--fp-background-color-secondary) !important;
    background-size: 24px;
    border: 0 !important;
    border-radius: 99px !important;
    padding-inline-start: 48px !important;
    --elevation: 4;
    box-shadow: 0 0 calc((var(--elevation) * 0.225px) + 2px) rgb(0 0 0 / .11), 0 calc(var(--elevation) * 0.4px) calc((var(--elevation) * 0.9px)) rgb(0 0 0 / .13) !important;
  }

  .search-handoff-button:hover {
    --elevation: 6;
  }

  .search-handoff-button.focused:not(.disabled) {
    box-shadow: none !important;
    outline: 2px solid var(--in-content-focus-outline-color) !important;
    outline-offset: -1px !important;
  }

  .search-handoff-button.disabled {
    opacity: 0 !important;
  }

  .fake-textbox {
    color: var(--in-content-page-color) !important;
  }

  .wordmark {
    fill: var(--fp-wordmark-color) !important;
  }

  .info {
    background-color: var(--fp-background-color-secondary) !important;
    background-image: none !important;
    position: relative !important;
  }

  .info::before {
    content: "";
    position: absolute;
    left: 32px;
    top: 20px;
    height: 32px;
    aspect-ratio: 1 / 1;
    background: center / contain url("../icons/account-private.svg");
    border-radius: 99px;
  }
}
