/*
  W07 — Official Platforms Code v1.0 icon primitive.
  Glyph source: @platformscode/icons@0.0.11 (official @platformscode/core 0.0.52 /
  platformscode-new-react 0.1.45). Variant: stroke (official dga-icon default).
  Sizes/colors: Excel 6.1–6.3 + official iconography page + portal CSS
  https://design.dga.gov.sa/assets/index-PDaQ7SHU.css
  Do not recolor SVG artwork; color is currentColor via W01 tokens.
*/

.dga-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  vertical-align: middle;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
}

.dga-icon--2xs { width: 14px; height: 14px; }
.dga-icon--sm { width: 16px; height: 16px; }
.dga-icon--md { width: 20px; height: 20px; }
.dga-icon--lg { width: 24px; height: 24px; }

.dga-icon--general {
  color: var(--colors-gray-600);
}

.dga-icon--primary {
  color: var(--colors-primary-sa-flag-600-primary);
}

.dga-icon--oncolor,
.dga-header .dga-icon,
.dga-footer .dga-icon,
.dga-gov-banner .dga-icon {
  color: var(--icon-oncolor);
}

.dga-icon--status-success { color: var(--colors-success-600); }
.dga-icon--status-error { color: var(--colors-error-600); }
.dga-icon--status-warning { color: var(--colors-warning-600); }
.dga-icon--status-info { color: var(--colors-info-600); }

html[dir="rtl"] .dga-icon--flip-rtl {
  transform: scaleX(-1);
}

.dga-icon--link-square-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/link-square-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/link-square-01-stroke.svg"); }
.dga-icon--search-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/search-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/search-01-stroke.svg"); }
.dga-icon--calendar-03 { -webkit-mask-image: url("../icons/dga-pc10/stroke/calendar-03-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/calendar-03-stroke.svg"); }
.dga-icon--user { -webkit-mask-image: url("../icons/dga-pc10/stroke/user-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/user-stroke.svg"); }
.dga-icon--mail-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/mail-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/mail-01-stroke.svg"); }
.dga-icon--call-02 { -webkit-mask-image: url("../icons/dga-pc10/stroke/call-02-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/call-02-stroke.svg"); }
.dga-icon--location-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/location-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/location-01-stroke.svg"); }
.dga-icon--pencil-edit-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/pencil-edit-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/pencil-edit-01-stroke.svg"); }
.dga-icon--delete-02 { -webkit-mask-image: url("../icons/dga-pc10/stroke/delete-02-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/delete-02-stroke.svg"); }
.dga-icon--globe-02 { -webkit-mask-image: url("../icons/dga-pc10/stroke/globe-02-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/globe-02-stroke.svg"); }
.dga-icon--view { -webkit-mask-image: url("../icons/dga-pc10/stroke/view-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/view-stroke.svg"); }
.dga-icon--logout-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/logout-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/logout-01-stroke.svg"); }
.dga-icon--cancel-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/cancel-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/cancel-01-stroke.svg"); }
.dga-icon--menu-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/menu-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/menu-01-stroke.svg"); }
.dga-icon--arrow-left-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/arrow-left-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/arrow-left-01-stroke.svg"); }
.dga-icon--arrow-right-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/arrow-right-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/arrow-right-01-stroke.svg"); }
.dga-icon--arrow-down-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/arrow-down-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/arrow-down-01-stroke.svg"); }
.dga-icon--layers-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/layers-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/layers-01-stroke.svg"); }
.dga-icon--reload { -webkit-mask-image: url("../icons/dga-pc10/stroke/reload-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/reload-stroke.svg"); }
.dga-icon--add-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/add-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/add-01-stroke.svg"); }
.dga-icon--printer { -webkit-mask-image: url("../icons/dga-pc10/stroke/printer-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/printer-stroke.svg"); }
.dga-icon--facebook-02 { -webkit-mask-image: url("../icons/dga-pc10/stroke/facebook-02-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/facebook-02-stroke.svg"); }
.dga-icon--instagram { -webkit-mask-image: url("../icons/dga-pc10/stroke/instagram-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/instagram-stroke.svg"); }
.dga-icon--youtube { -webkit-mask-image: url("../icons/dga-pc10/stroke/youtube-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/youtube-stroke.svg"); }
.dga-icon--snapchat { -webkit-mask-image: url("../icons/dga-pc10/stroke/snapchat-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/snapchat-stroke.svg"); }
.dga-icon--new-twitter { -webkit-mask-image: url("../icons/dga-pc10/stroke/new-twitter-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/new-twitter-stroke.svg"); }
.dga-icon--linkedin-01 { -webkit-mask-image: url("../icons/dga-pc10/stroke/linkedin-01-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/linkedin-01-stroke.svg"); }
.dga-icon--whatsapp { -webkit-mask-image: url("../icons/dga-pc10/stroke/whatsapp-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/whatsapp-stroke.svg"); }
.dga-icon--zoom-in-area { -webkit-mask-image: url("../icons/dga-pc10/stroke/zoom-in-area-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/zoom-in-area-stroke.svg"); }
.dga-icon--zoom-out-area { -webkit-mask-image: url("../icons/dga-pc10/stroke/zoom-out-area-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/zoom-out-area-stroke.svg"); }
.dga-icon--information-circle { -webkit-mask-image: url("../icons/dga-pc10/stroke/information-circle-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/information-circle-stroke.svg"); }
.dga-icon--alert-circle { -webkit-mask-image: url("../icons/dga-pc10/stroke/alert-circle-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/alert-circle-stroke.svg"); }
.dga-icon--checkmark-circle-02 { -webkit-mask-image: url("../icons/dga-pc10/stroke/checkmark-circle-02-stroke.svg"); mask-image: url("../icons/dga-pc10/stroke/checkmark-circle-02-stroke.svg"); }

/* Official Featured Icon (portal CSS + @platformscode/core dga-featured-icon). Do not alter sizes/colors. */
.dga-featured-icon {
    display: inline-flex;
    min-width: 56px;
    width: 56px;
    height: 56px;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-sm);
    box-sizing: border-box;
    color: var(--colors-brand-600) !important;
}

.dga-featured-icon--circle {
  border-radius: var(--radius-full);
}

.dga-featured-icon--xl { width: 56px; min-width: 56px; height: 56px; }
.dga-featured-icon--lg { width: 48px; min-width: 48px; height: 48px; }
.dga-featured-icon--md { width: 40px; min-width: 40px; height: 40px; }
.dga-featured-icon--sm { width: 32px; min-width: 32px; height: 32px; }

.dga-featured-icon--xl .dga-icon { width: 28px; height: 28px; }
.dga-featured-icon--lg .dga-icon { width: 24px; height: 24px; }
.dga-featured-icon--md .dga-icon { width: 20px; height: 20px; }
.dga-featured-icon--sm .dga-icon { width: 16px; height: 16px; }

.dga-featured-icon--dark-brand,
.dga-featured-icon--hard-brand { color: var(--colors-base-white); background-color: var(--colors-brand-600); }
.dga-featured-icon--dark-gray { color: var(--colors-base-white); background-color: var(--colors-gray-500); }
.dga-featured-icon--dark-error { color: var(--colors-base-white); background-color: var(--colors-error-600); }
.dga-featured-icon--dark-warning { color: var(--colors-base-white); background-color: var(--colors-warning-600); }
.dga-featured-icon--dark-success { color: var(--colors-base-white); background-color: var(--colors-brand-600); }
.dga-featured-icon--dark-info { color: var(--colors-base-white); background-color: var(--colors-info-600); }

.dga-featured-icon--light-brand { color: var(--colors-brand-600); background-color: var(--colors-brand-50); }
.dga-featured-icon--light-gray { color: var(--colors-gray-500); background-color: var(--colors-gray-100); }
.dga-featured-icon--light-error { color: var(--colors-error-600); background-color: var(--colors-error-25); }
.dga-featured-icon--light-warning { color: var(--colors-warning-600); background-color: var(--colors-gray-50); }
.dga-featured-icon--light-success { color: var(--colors-brand-600); background-color: var(--colors-brand-50); }
.dga-featured-icon--light-info { color: var(--colors-info-600); background-color: var(--colors-gray-50); }

.dga-featured-icon--outlined-brand { border: 1px solid var(--colors-primary-sa-flag-200); color: var(--colors-brand-600); background-color: transparent; }
.dga-featured-icon--outlined-gray { border: 1px solid var(--colors-gray-200); color: var(--colors-gray-500); background-color: transparent; }
.dga-featured-icon--outlined-error { border: 1px solid var(--colors-error-600); color: var(--colors-error-600); background-color: transparent; }
.dga-featured-icon--outlined-warning { border: 1px solid var(--colors-warning-600); color: var(--colors-warning-600); background-color: transparent; }
.dga-featured-icon--outlined-success { border: 1px solid var(--colors-primary-sa-flag-200); color: var(--colors-brand-600); background-color: transparent; }
.dga-featured-icon--outlined-info { border: 1px solid var(--colors-info-600); color: var(--colors-info-600); background-color: transparent; }

.dga-featured-icon .dga-icon,
.dga-featured-icon svg {
  color: inherit;
  fill: currentColor;
}

.dga-featured-icon {
  overflow: hidden;
}

/* Win over Porto .reports-itm svg { width:70px / 60px !important } without redesigning W05/W06. */
.dga-featured-icon > svg {
  width: 28px !important;
  height: 28px !important;
  max-width: 28px !important;
  max-height: 28px !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  display: block;
}

.dga-featured-icon--lg > svg { width: 24px !important; height: 24px !important; max-width: 24px !important; max-height: 24px !important; }
.dga-featured-icon--md > svg { width: 20px !important; height: 20px !important; max-width: 20px !important; max-height: 20px !important; }
.dga-featured-icon--sm > svg { width: 16px !important; height: 16px !important; max-width: 16px !important; max-height: 16px !important; }

.dga-featured-icon svg path {
  fill: currentColor !important;
}

/* 14.3 Link Square — do not restyle the host link beyond inline alignment */
.dga-external-icon {
  margin-inline-start: 4px;
}

.dga-captcha .dga-icon--reload,
#refreshCaptch.dga-icon {
  cursor: pointer;
  color: var(--colors-primary-sa-flag-600-primary);
}

.owl-nav button.owl-prev,
.owl-nav button.owl-next {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: center;
  overflow: visible;
  padding: 0;
  line-height: 0;
}

.owl-nav button .dga-icon {
  color: inherit;
  flex-shrink: 0;
}

.carousel-control-prev .dga-icon,
.carousel-control-next .dga-icon {
  color: var(--colors-primary-sa-flag-600-primary);
}

/* Retained custom fax glyph: keep Featured chrome/tokens; do not inherit On Color white from reports overlay. */
.dga-featured-icon.dga-icon-custom-fax {
  color: var(--colors-brand-600);
}
