@layer dasy.components {

  /* Turn off native bullets, add left space for our icon */
  .wp-block-list.is-style-dasy-resources {
    list-style: none !important;
    margin: 0;
    padding-left: 0 !important;
  }

  .wp-block-list.is-style-dasy-resources li {
    position: relative;
    padding-left: 1.75rem;
    /* space for the icon */
    margin: .5rem 0;
  }

  /* SVG link icon as the custom bullet */
  .wp-block-list.is-style-dasy-resources li::before {
    content: "";
    position: absolute;
    left: 0;
    top: .125em;
    width: 1.25rem;
    height: 1.25rem;
    background-color: var(--dasy-ink);
    /* icon color */
    /* Use the SVG as a mask so background-color controls the color */
    -webkit-mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48cGF0aCBkPSJNOSAxNWw2IC02IiAvPjxwYXRoIGQ9Ik0xMSA2bC40NjMgLS41MzZhNSA1IDAgMCAxIDcuMDcxIDcuMDcybC0uNTM0IC40NjQiIC8+PHBhdGggZD0iTTEzIDE4bC0uMzk3IC41MzRhNS4wNjggNS4wNjggMCAwIDEgLTcuMTI3IDBhNC45NzIgNC45NzIgMCAwIDEgMCAtNy4wNzFsLjUyNCAtLjQ2MyIgLz48L3N2Zz4=") no-repeat center / contain;
    mask: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48cGF0aCBzdHJva2U9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz48cGF0aCBkPSJNOSAxNWw2IC02IiAvPjxwYXRoIGQ9Ik0xMSA2bC40NjMgLS41MzZhNSA1IDAgMCAxIDcuMDcxIDcuMDcybC0uNTM0IC40NjQiIC8+PHBhdGggZD0iTTEzIDE4bC0uMzk3IC41MzRhNS4wNjggNS4wNjggMCAwIDEgLTcuMTI3IDBhNC45NzIgNC45NzIgMCAwIDEgMCAtNy4wNzFsLjUyNCAtLjQ2MyIgLz48L3N2Zz4=") no-repeat center / contain;
  }

  /* Link title + trailing description (unchanged) */
  .wp-block-list.is-style-dasy-resources li a {
    color: var(--dasy-link) !important;
    text-underline-offset: .12em;
    text-decoration: none;
    cursor: pointer;
  }

  .wp-block-list.is-style-dasy-resources li a:hover {
    color: var(--wp--preset--color--dasy-blue) !important;
  }

  .wp-block-list.is-style-dasy-resources .dasy-resource-desc {
    color: var(--dasy-ink);
    margin-left: .25rem;
  }

  a:where(:not(.wp-element-button)), .dasy-nav a:where(:not(.wp-element-button)) {
    color: var(--dasy-link);
    text-decoration: none;
    transition: all .325s ease-in;
    text-decoration-thickness: 2px !important;
    text-underline-offset: .15em;
    text-decoration-color: var(--dasy-color-primary);
    font-size: inherit !important;
  }

  a:where(:not(.wp-element-button)):hover {
    color: var(--dasy-color-primary);
    text-decoration: underline;
    text-decoration-color: var(--dasy-link);
    text-decoration-line: 2px;

  }

  /* Base nav link look (inherits your global style but wins on specificity) */
  .dasy-nav a:where(:not(.wp-element-button)) {
    text-decoration-color: var(--dasy-color-accent) !important;
  }

  /* Hover and focus-visible states */
  .dasy-nav a:where(:not(.wp-element-button)):hover,
  .dasy-nav a:where(:not(.wp-element-button)):focus-visible {
    color: var(--dasy-color-accent) !important;
    text-decoration: underline;
  }

  /* Current page link stays primary (WordPress adds these automatically) */
  .dasy-nav a[aria-current="page"],
  .dasy-nav .current-menu-item > a,
  .dasy-nav .current_page_item > a {
    color: var(--dasy-color-accent) !important;
    text-decoration: underline;
    text-decoration-color: var(--dasy-color-accent) !important;
  }

}