AEScripts.com – Wide Dark Enhancement [Ath]

Dark theme for AEScripts.com with enhancements: expanded product info, combined tabs, wide page layout for product lists etc. Configurable with options.

Bu betiği kurabilmeniz için Tampermonkey, Greasemonkey ya da Violentmonkey gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

You will need to install an extension such as Tampermonkey to install this script.

Bu betiği kurabilmeniz için Tampermonkey ya da Violentmonkey gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

Bu betiği kurabilmeniz için Tampermonkey ya da Userscripts gibi bir kullanıcı betiği eklentisini kurmanız gerekmektedir.

You will need to install an extension such as Tampermonkey to install this script.

Bu komut dosyasını yüklemek için bir kullanıcı komut dosyası yöneticisi uzantısı yüklemeniz gerekecek.

(Zaten bir kullanıcı komut dosyası yöneticim var, kurmama izin verin!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(Zateb bir user-style yöneticim var, yükleyeyim!)

/* ==UserStyle==
@name           AEScripts.com – Wide Dark Enhancement [Ath]
@namespace      athari
@version        1.0.0
@description    Dark theme for AEScripts.com with enhancements: expanded product info, combined tabs, wide page layout for product lists etc. Configurable with options.
@author         Athari (https://github.com/Athari)
@homepageURL    https://github.com/Athari/AthariUserCSS
@supportURL     https://github.com/Athari/AthariUserCSS/issues
@license        MIT
@preprocessor   default

@var            checkbox ath-show-top-banner      "Show top bar"               0
@var            checkbox ath-show-social          "Show social share buttons"  0
@var            checkbox ath-expand-slideshow     "Expand product slideshow"   1
@var            checkbox ath-combine-tabs         "Combine info tabs"          1
@var            checkbox ath-override-light-font  "Override light font weight" 1
@var            text     ath-font                 "Font"                      "Segoe UI, Arial, sans-serif"
==/UserStyle== */

@-moz-document domain("aescripts.com") {
  :root {
    color-scheme: dark;
    --ath-base-layout-width: 980px;
  }
  @container style(--ath-show-social: 0) {
    #product-sharing {
      display: none;
    }
  }
  body {
    background: #000;
    color: #eee;
    font-family: var(--ath-font);
    overflow: hidden scroll;
    nav {
      background: #000;
      border-color: #333;

      /* menu */
      .level-top.pages a {
        background: #333 !important;
      }
      .level-top, .level0, .level1, .level2, .level3, .level4 {
        background: #333 !important;
        a {
          text-decoration: none !important;
          span {
            width: calc(100% - 50px) !important;
          }
        }
      }
      .level-top {
        ul {
          border: solid 1px #222 !important;
        }
        li:has(> ul) > a {
          display: grid !important;
          grid-template-areas: "a";
          grid-template-columns: 1fr;
          grid-template-rows: auto;
          align-items: center;
          span {
            grid-area: a;
          }
          &::after {
            grid-area: a;
            content: "►";
            margin: 0 15px 0 auto;
            color: #777;
            transform: scaleY(2.4) scaleX(0.7);
          }
        }
        li:has(> ul > li > ul) > a::after {
          content: "►►";
        }
        li:has(> ul > li > ul > li > ul) > a::after {
          content: "►►►";
        }
        li:has(> ul > li > ul > li > ul > li > ul) > a::after {
          content: "►►►►";
        }
      }
      a:not(#nav-category-click):hover {
        background: #555 !important;
        color: #222 !important;
        span {
          background: inherit !important;
        }
      }
      span {
        border-color: #555 !important;
      }
    }
    .main-container {
      background: #111;
      #top-search {
        background: #222;
      }
      .main {
        background: #111;
      }
    }
  }

  .fieldset {
    background: #222 !important;
    border-color: #333 !important;
  }
  .box,
  .box-title,
  .box-head {
    border-color: #333 !important;
  }
  :is(.box-head, .fieldset) h2 {
    background: #333 !important;
    border-color: #444 !important;
  }
  input, select, textarea {
    background: revert !important;
    color: revert !important;
    border-color: revert !important;
    &::placeholder {
      color: revert !important;
    }
  }
  [role="combobox"] {
    background: Field !important;
    border-color: ButtonBorder !important;
    * {
      color: FieldText !important;
    }
  }
  .select2-dropdown {
    background: Field !important;
    [aria-selected="true"] {
      background: SelectedItem !important;
      color: SelectedItemText !important;
    }
  }
  .pluginsio-relate-index li.control div {
    background: #333 !important;
    color: #ccc !important;
    border-color: #444 !important;
    box-shadow: none;
  }

  /* posts & news */
  .postWrapper {
    .postTitle,
    img.post-thumb,
    h1, h2, h3 {
      border-color: #444 !important;
    }
    .media_embed {
      background: #222 !important;
      border-color: #333 !important;
    }
  }

  /* hide crap */
  @container style(--ath-show-top-banner: 0) {
    #home-banner,
    .top-header {
      display: none !important;
    }
  }

  /* disable stupid fonts */
  .form-search label,
  .product-tabs li a,
  .container, .container h2, .container h3 {
    font-family: inherit !important;
  }
  .price {
    font-family: inherit !important;
    font-weight: bold !important;
  }

  /* wide layout */
  .main {
    --ath-wide-layout-actual: 0;
    display: flex;
    flex-flow: row;
    .col-left {
      order: 1;
    }
    .col-main {
      order: 2;
      flex: 1;
    }
    &:has(.block-layered-nav) /*has sidebar*/ {
      --ath-wide-layout-actual: 1;
      width: auto;
      .col-main {
        width: auto;
        float: none;
      }
    }
  }
  @container style(--ath-wide-layout-actual: 0) {
    .col-main:only-child:has(.category-products) {
      margin-inline: calc(var(--ath-base-layout-width) / 2 - 50vw + 20px) !important;
      --ath-wide-layout-actual: 1;
    }
    .products-grid {
      margin-inline: calc(var(--ath-base-layout-width) / 2 - 50vw + 20px) !important;
      --ath-wide-layout-actual: 1;
    }
  }

  /* sidebar */
  .col-left.sidebar {
    width: 240px !important;
    padding: 0 0 0 20px !important;
    .block-layered-nav {
      .block-content {
        padding: 0 !important;
        line-height: 1.4 !important;
      }
      ol {
        background: #ffffff08 !important;
        margin: 0 !important;
        li {
          margin: 0 0 0 6px !important;
        }
      }
      a {
        display: block !important;
        padding: 1px 0 1px 6px !important;
        &:hover {
          color: #eee !important;
          background: #444 !important;
        }
        span {
          color: #999 !important;
        }
      }
    }
  }
  .col-main {
    border-color: #333 !important;
  }

  #browse-main-categories {
    display: flow-root;
    background: #222 !important;
    border-color: #333 !important;
    .wrapper {
      width: auto !important;
      margin: 10px;
      ul {
        display: flex;
        flex-flow: row wrap;
        gap: 10px;
        margin: 0;
        a {
          margin: 0;
          padding: 3px 6px;
          background: #444;
        }
      }
    }
  }
  footer {
    border-color: #333 !important;
  }

  /* autocomplete */
  .sbs_autocomplete_inner {
    background: #333 !important;
    border-color: #111 !important;
    .suggested-item {
      span {
        color: #bbb !important;
      }      
      &:hover {
        background: #444 !important;
        span {
          color: #bbb !important;
        }
      }
      strong {
        color: #eee !important;
      }
    }
    .sbs_search_autocomplete_box_bottom {
      background: #444 !important;
      border-color: #111 !important;
    }
    .suggest_divider {
      border-color: #333 !important;
    }
  }

  /* disable hiding of product info */
  .products-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, 280px);
    justify-content: center;
    gap: 20px;
    li.item {
      display: flex !important;
      flex-flow: column !important;
      width: auto !important;
      height: auto !important;
      margin: 0 !important;
      background: #333;
    }
    .product-info-wrapper {
      display: contents !important;
    }
    .product-name a {
      color: #f66000 !important;
      font-weight: bold !important;
    }
    .product-link {
      display: none !important;
    }
    .product-image {
      width: 100%;
      img {
        width: 100%;
      }
    }
    .product-info-hover {
      flex: 1;
      position: static !important;
      display: flex;
      flex-flow: column;
      height: auto !important;
      background: #222;
      > .row {
        margin: 0 !important;
      }
      h2 {
        order: -1;
      }
      .desc {
        flex: 1;
        position: relative !important;
        height: auto !important;
        max-height: calc(12lh + 6px);
        padding: 3px 6px !important;
        color: #ccc;
        &::after {
          content: "";
          position: absolute;
          inset: calc(10lh + 12px) 0 0 0;
          height: 2lh;
          background: linear-gradient(to bottom, #2220, #222f);
        }
      }
      .actions {
        position: static !important;
        height: auto !important;
        button {
          height: 26px !important;
        }
        form,
        .more-info,
        .list-more-info {
          display: none !important;
        }
        .actions-links {
          a {
            height: 26px !important;
            font-size: 13px !important;
            line-height: 28px !important;
          }
        }
      }
    }
    .compatibility li {
      transition-duration: 0s !important;
    }
  }

  /* expand slideshow */
  @container style(--ath-expand-slideshow: 1) {
    #slideshow {
      display: inline-block !important;
      width: auto !important;
      padding: 0 !important;
      border: none !important;
      background: #222 !important;
    }
    #slider-dots,
    #slider-thumbs {
      display: none !important;
    }
    .scroller {
      width: auto !important;
      height: auto !important;
    }
    .scroller .content {
      width: auto !important;
    }
    .scroller .content .section {
      width: 80px !important;
      height: auto !important;
    }
    .scroller .content .section:hover {
      width: auto !important;
    }
    .category-title {
      float: none !important;
      width: auto !important;
    }
  }

  /* product page */
  .product-view {
    .product-options,
    .product-options-bottom,
    .box-tags,
    .short-description,
    .quick-add-to-wrapper,
    .quick-add-to-box {
      background: #222 !important;
      border-color: #444 !important;
    }
    .short-description {
      padding: 10px 12px;
    }
    .box-tags a {
      color: #ccc;
    }
  }

  .data-table :is(td, th) {
    background: #111 !important;
    border-color: #333 !important;
    &.label {
      background: #222 !important;
    }
  }

  .downloadplus-product-history-entry {
    margin: 20px 0 !important;
    padding: 10px 14px !important;
    background: #111 !important;
    border-color: #282828 !important;
    color: #ccc !important;
  }

  /* always display tabs */
  @container style(--ath-combine-tabs: 1) {
    .product-collateral {
      display: flex !important;
      flex-direction: column;
      > * {
        order: 10 !important;
      }
      > .product-tabs-content {
        padding: 0 !important;
      }
      > .clearer {
        order: 1 !important;
      }
      > #product-tabs {
        order: 2 !important;
      }
      &:has(#product_tabs_description.active) {
        #product_tabs_compatibility_contents {
          display: block !important;
          order: 3 !important;
          .data-table {
            margin: 0 !important;
          }
        }
        #product_tabs_compatibility_contents {
          display: block !important;
          order: 3 !important;
        }
        #product_tabs_description_contents {
          display: block !important;
          order: 4 !important;
        }
        #product_tabs_version_history_contents {
          display: block !important;
          order: 5 !important;
        }
        #product_tabs_description_contents::before {
          content: "Description";
        }
        #product_tabs_compatibility_contents::before {
          content: "Compatibility";
        }
        #product_tabs_version_history_contents::before {
          content: "Version history";
        }
      }
      .product-tabs-content::before {
        display: block !important;
        font-weight: bold !important;
        font-size: 1.2rem !important;
        color: #fff !important;
        padding: 15px 0 5px !important;
      }
    }
    .downloadplus-product-history-links {
      margin: 0 !important;
    }
    .downloadplus-product-history h4 {
      margin: 3px !important;
    }
    #product_tabs_compatibility,
    #product_tabs_version_history {
      display: none !important;
    }
  }

  @font-face { font-family: "Segoe UI"; src: local("Segoe UI"); font-weight: 100 400; }
  @font-face { font-family: "Segoe UI"; src: local("Segoe UI Semibold"); font-weight: 600; }
  @font-face { font-family: "Segoe UI"; src: local("Segoe UI Bold"); font-weight: 700; }
  @font-face { font-family: "Segoe UI"; src: local("Segoe UI Black"); font-weight: 900; }
  @container (--ath-override-light-font: 1) {
    #product_tabs_description_contents:not(#\0) {
      font-family: "Segoe UI", var(--ath-font) !important;
    }
    #product_tabs_description_contents :not(#\0) {
      font-family: inherit !important;
    }
  }

  .toolbar.pager {
    display: flex !important;
    flex-flow: row !important;
    height: auto !important;
    padding: 16px;
    .pages {
      position: static !important;
      display: flex !important;
      flex-flow: row !important;
      align-items: baseline !important;
      margin: 0 auto !important;
      ol, li {
        margin: 0 !important;
      }
      strong {
        display: none;
      }
      a, li.current {
        padding: 8px 16px !important;
        background: #222 !important;
        font-size: 1.1rem;
      }
    }
  }

  /* comments */
  .MessageForm {
    background: #333 !important;
    border-color: #555 !important;
  }
  .MessageList {
    .Item {
      color: #ccc !important;
      border-color: #555 !important;
      &.AuthorComment:not(#\0) {
        color: #cdc !important;
        background: #121 !important;
      }
      .Meta {
        border-color: #333 !important;
      }
      .Message {
        blockquote,
        .Quote {
          background: #3338 !important;
          font-size: inherit !important;
        }
      }
    }
  }
  
  /* forum */
  body:is([id^=vanilla], [id^=dashboard]) {
    #Head {
      background: #000 !important;
    }
    #Body {
      background: #111 !important;
    }
    .MessageForm, .Tabs, .Headings {
      background: #222 !important;
      border-color: #333 !important;
    }
    .Tag,
    .DataList .Meta a.Category {
      background: #444 !important;
    }
    .MenuTitle {
      background: #333 !important;
      color: #ccc !important;
      border-color: #444 !important;
    }
    .TabLink {
      background: #444 !important;
    }
    a.Bookmark, a.Bookmarked, a.Bookmarking {
      filter: invert(1) hue-rotate(180deg);
    }
    #DiscussionForm form {
      background: #333 !important;
      border-color: #444 !important;
    }
    ul.token-input-list {
      background: #444 !important;
      border-color: #555 !important;
    }
  }

  [style*="color"]:not([style*="background"]),
  [style*="color"]:not([style*="background"]) [style*="color"]:not([style*="background"]) [style*="color"]:not([style*="background"]) {
    filter: invert(1);
    -webkit-text-stroke: currentcolor 0.4px;
  }
  [style*="color"]:not([style*="background"]) [style*="color"]:not([style*="background"]) {
    filter: none;
  }
}