@font-face {
  font-family: "SmartGift Cairo Arabic";
  src: url("fonts/cairo/Cairo-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 200 900;
  font-display: swap;
  unicode-range:
    U+0600-06FF,
    U+0750-077F,
    U+0870-089F,
    U+08A0-08FF,
    U+FB50-FDFF,
    U+FE70-FEFF;
}

:root {
  --bg: #090d0b;
  --surface: #141b17;
  --surface-2: #1a251f;
  --surface-3: #202c25;
  --primary: #26d980;
  --primary-strong: #12aa60;
  --primary-soft: rgba(38, 217, 128, 0.12);
  --text: #f2f8f4;
  --muted: #a0afa6;
  --border: #2a3931;
  --danger: #ff6b6b;
  --max-width: 1180px;
  --help-text-size: .875rem;
  --help-text-leading: 1.8;
  --shadow: 0 28px 80px rgba(0, 0, 0, 0.34);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "SmartGift Cairo Arabic", "Segoe UI", Tahoma, Arial, sans-serif;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
/* Shared size for unstyled field hints; component metadata keeps its own sizes. */
small { font-size: var(--help-text-size); }
form small { line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.copy-feedback { display: block; flex: 1 0 100%; grid-column: 1 / -1; font-size: var(--help-text-size); line-height: var(--help-text-leading); color: var(--muted); overflow-wrap: anywhere; }
.copy-feedback[hidden] { display: none !important; }
.clipboard-copy-buffer { position: fixed; top: 0; left: 0; width: 1px; height: 1px; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.support-field-error { display: block; flex-basis: 100%; width: 100%; margin-top: 4px; color: var(--danger); }
.support-reply-form .support-compact-file { flex-wrap: wrap; gap: 4px; max-width: 100%; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
a { color: inherit; text-decoration: none; }
button { cursor: pointer; }
img, svg { display: block; }

.shell { width: min(calc(100% - 40px), var(--max-width)); margin-inline: auto; }
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(9, 13, 11, 0.86);
  border-bottom: 1px solid rgba(42, 57, 49, 0.72);
  backdrop-filter: blur(18px);
}
.header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 11px; flex-shrink: 0; }
.brand-mark {
  width: 43px;
  height: 43px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: linear-gradient(145deg, var(--primary), #70f2ad);
  box-shadow: 0 0 32px rgba(38, 217, 128, 0.22);
}
.brand-mark svg { width: 27px; fill: none; stroke: #071109; stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }
.brand-copy { display: flex; align-items: baseline; gap: 4px; direction: ltr; font-size: 18px; letter-spacing: -0.03em; }
.brand-copy strong { font-weight: 750; }
.brand-copy span { color: var(--primary); font-weight: 750; }
.desktop-nav { display: flex; align-items: center; gap: clamp(20px, 3vw, 34px); color: var(--muted); font-size: 14px; }
.desktop-nav a { transition: color 180ms ease; }
.desktop-nav a:hover { color: var(--text); }
.header-actions { display: flex; align-items: center; gap: 10px; }
.language-switch {
  min-height: 42px;
  padding: 0 13px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: transparent;
  color: var(--text);
}
.language-switch:hover { background: var(--surface); }
.language-icon { color: var(--primary); font-size: 18px; }
.button {
  min-height: 44px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  font-weight: 700;
  transition: transform 180ms ease, background-color 180ms ease, border-color 180ms ease;
}
.button:hover { transform: translateY(-1px); }
.button-primary { background: var(--primary); color: #061009; box-shadow: 0 12px 30px rgba(38, 217, 128, 0.15); }
.button-primary:hover { background: #45e494; }
.button-ghost { background: transparent; border-color: var(--border); color: var(--text); }
.button-ghost:hover { background: var(--surface); }
.button-secondary { background: var(--surface); border-color: var(--border); color: var(--text); }
.button-secondary:hover { border-color: #496253; }
.button-large { min-height: 54px; padding-inline: 24px; border-radius: 12px; }
.button-block { width: 100%; min-height: 52px; }
.button-dark { background: #09100c; color: var(--text); }
.arrow { font-size: 21px; line-height: 1; }
[dir="ltr"] .arrow { transform: scaleX(-1); }
.menu-button { display: none; width: 44px; height: 44px; padding: 11px; border: 1px solid var(--border); border-radius: 10px; background: transparent; }
.menu-button span { height: 2px; margin: 4px 0; display: block; background: var(--text); border-radius: 2px; }
.mobile-nav { padding: 8px 20px 20px; background: var(--bg); border-top: 1px solid var(--border); }
.mobile-nav a { display: block; padding: 12px 0; color: var(--muted); }
.mobile-nav .button { width: 100%; margin-top: 8px; }

.hero { position: relative; overflow: hidden; padding: 86px 0 78px; }
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0.16;
  background-image: linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, black, transparent 80%);
}
.hero-glow { position: absolute; border-radius: 50%; filter: blur(2px); pointer-events: none; }
.hero-glow-one { width: 540px; height: 540px; inset-inline-start: -330px; top: -210px; background: radial-gradient(circle, rgba(38,217,128,.16), transparent 68%); }
.hero-glow-two { width: 680px; height: 680px; inset-inline-end: -300px; bottom: -410px; background: radial-gradient(circle, rgba(18,170,96,.13), transparent 68%); }
.hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(390px, .83fr); align-items: center; gap: clamp(52px, 7vw, 94px); }
.eyebrow, .section-kicker { color: var(--primary); font-size: 13px; font-weight: 750; letter-spacing: .02em; }
.eyebrow { width: fit-content; padding: 7px 11px; display: flex; align-items: center; gap: 8px; border: 1px solid rgba(38,217,128,.22); border-radius: 999px; background: var(--primary-soft); }
.live-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--primary); box-shadow: 0 0 0 5px rgba(38,217,128,.1); }
.hero h1 { max-width: 720px; margin: 21px 0 20px; font-size: clamp(42px, 5.6vw, 72px); line-height: 1.11; letter-spacing: -.055em; }
.hero h1 em { display: block; color: var(--primary); font-style: normal; }
.hero-description { max-width: 620px; margin: 0; color: var(--muted); font-size: clamp(17px, 2vw, 20px); }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 18px; margin-top: 27px; color: var(--muted); font-size: 13px; }
.trust-row span { display: inline-flex; align-items: center; gap: 7px; }
.trust-row i { width: 19px; height: 19px; display: grid; place-items: center; border-radius: 50%; background: var(--primary-soft); color: var(--primary); font-style: normal; }
.trust-row b { font-weight: 600; }

.calculator-wrap { position: relative; }
.calculator-card { position: relative; z-index: 2; padding: 24px; border: 1px solid var(--border); border-radius: 20px; background: linear-gradient(145deg, rgba(26,37,31,.98), rgba(16,23,19,.98)); box-shadow: var(--shadow); }
.calculator-card::before { content: ""; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; background: linear-gradient(135deg, rgba(255,255,255,.055), transparent 34%); }
.card-head { position: relative; display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; margin-bottom: 22px; }
.card-head h2 { margin: 3px 0 0; font-size: 25px; line-height: 1.3; }
.rate-badge { padding: 6px 9px; border-radius: 999px; background: rgba(255,255,255,.055); color: var(--muted); font-size: 11px; white-space: nowrap; }
.field-label { display: block; margin: 14px 0 7px; color: var(--muted); font-size: 12px; font-weight: 650; }
input, select { width: 100%; min-height: 50px; padding: 0 13px; border: 1px solid var(--border); border-radius: 10px; outline: none; background: #0d1410; color: var(--text); }
input:focus, select:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(38,217,128,.1); }
select { appearance: none; padding-inline: 13px 36px; }
.select-wrap { position: relative; }
.select-wrap .field-symbol { position: absolute; z-index: 1; inset-inline-start: 11px; top: 9px; width: 32px; height: 32px; display: grid; place-items: center; border-radius: 8px; background: var(--surface-3); color: var(--primary); font-weight: 800; }
.select-wrap select { padding-inline-start: 54px; }
.select-wrap::after { content: "⌄"; position: absolute; inset-inline-end: 14px; top: 12px; color: var(--muted); pointer-events: none; }
.split-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.money-input { position: relative; }
.money-input span { position: absolute; inset-inline-start: 13px; top: 12px; color: var(--primary); font-weight: 800; }
.money-input input { padding-inline-start: 31px; direction: ltr; text-align: start; }
.estimate-result { margin: 19px 0 14px; padding: 15px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border: 1px solid rgba(38,217,128,.2); border-radius: 12px; background: var(--primary-soft); }
.estimate-result span { display: block; color: var(--muted); font-size: 12px; }
.estimate-result small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; }
.estimate-result strong { color: var(--primary); font-size: 25px; direction: ltr; }
.form-note { margin: 10px 0 0; text-align: center; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.floating-status { position: absolute; z-index: 3; padding: 11px 13px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--border); border-radius: 12px; background: rgba(20,27,23,.96); box-shadow: 0 15px 40px rgba(0,0,0,.3); backdrop-filter: blur(12px); }
.floating-status-top { inset-inline-start: -42px; top: -34px; }
.floating-status-bottom { inset-inline-start: -54px; bottom: 30px; }
.status-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; background: var(--primary-soft); color: var(--primary); font-weight: 800; }
.status-icon.clock { color: #ffd166; background: rgba(255,209,102,.1); }
.floating-status b, .floating-status small { display: block; }
.floating-status b { font-size: 12px; }
.floating-status small { margin-top: 1px; color: var(--muted); font-size: 10px; }

.brand-strip { padding: 28px 0 34px; border-block: 1px solid var(--border); background: #0b100d; }
.brand-strip p { margin: 0 0 17px; color: var(--muted); text-align: center; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.brands-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px; }
.brand-chip { min-height: 62px; padding: 11px; display: flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid transparent; border-radius: 12px; background: var(--surface); color: #c7d2cb; }
.brand-chip span { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: var(--surface-3); color: var(--text); font-size: 11px; }
.brand-chip b { font-size: 13px; font-weight: 650; }

.section { padding: 95px 0; }
.section-heading h2, .withdrawal-copy h2 { margin: 7px 0 12px; font-size: clamp(31px, 4.3vw, 48px); line-height: 1.18; letter-spacing: -.04em; }
.section-heading p, .withdrawal-copy > p { max-width: 600px; margin: 0; color: var(--muted); }
.section-heading.centered { text-align: center; }
.section-heading.centered p { margin-inline: auto; }
.steps-grid { margin-top: 48px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.step-card { position: relative; min-height: 255px; padding: 25px; overflow: hidden; border: 1px solid var(--border); border-radius: 16px; background: var(--surface); }
.step-card.featured { border-color: rgba(38,217,128,.34); background: linear-gradient(145deg, rgba(38,217,128,.11), var(--surface) 56%); }
.step-number { position: absolute; inset-inline-end: 20px; top: 15px; color: rgba(255,255,255,.07); font-size: 54px; font-weight: 800; line-height: 1; }
.step-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 13px; background: var(--primary-soft); color: var(--primary); font-size: 22px; font-weight: 800; }
.step-card h3 { margin: 47px 0 8px; font-size: 19px; }
.step-card p { margin: 0; color: var(--muted); font-size: 14px; }

.withdrawal-section { border-block: 1px solid var(--border); background: #0b100d; }
.withdrawal-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(45px, 8vw, 100px); }
.feature-list { list-style: none; padding: 0; margin: 28px 0 0; display: grid; gap: 13px; }
.feature-list li { display: flex; align-items: center; gap: 10px; }
.feature-list li span { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 7px; background: var(--primary-soft); color: var(--primary); font-size: 12px; }
.feature-list li b { font-size: 14px; font-weight: 600; }
.methods-panel { padding: 10px; border: 1px solid var(--border); border-radius: 20px; background: var(--surface); box-shadow: var(--shadow); }
.methods-panel article { min-height: 72px; padding: 11px 13px; display: grid; grid-template-columns: 44px 1fr auto; align-items: center; gap: 12px; border-radius: 12px; }
.methods-panel article + article { border-top: 1px solid var(--border); border-radius: 0; }
.methods-panel article:hover { background: var(--surface-2); }
.method-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; background: var(--primary-soft); color: var(--primary); font-weight: 800; }
.methods-panel b, .methods-panel small { display: block; }
.methods-panel b { font-size: 14px; }
.methods-panel small { color: var(--muted); font-size: 11px; }
.methods-panel i { color: var(--primary); font-style: normal; }
[dir="ltr"] .methods-panel i { transform: scaleX(-1); }

.faq-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 7vw, 86px); }
.accordion { display: grid; gap: 10px; }
.faq-item { border: 1px solid var(--border); border-radius: 13px; background: var(--surface); overflow: hidden; }
.faq-item.open { border-color: rgba(38,217,128,.3); }
.faq-item button { width: 100%; min-height: 64px; padding: 15px 18px; display: flex; justify-content: space-between; align-items: center; gap: 15px; border: 0; background: transparent; color: var(--text); text-align: start; font-weight: 700; }
.faq-item button i { color: var(--primary); font-size: 20px; font-style: normal; }
.faq-answer { padding: 0 18px 17px; }
.faq-answer p { margin: 0; color: var(--muted); font-size: 14px; }

.cta-section { padding: 0 0 95px; }
.cta-card { min-height: 175px; padding: 34px 40px; display: flex; align-items: center; justify-content: space-between; gap: 30px; border-radius: 20px; background: linear-gradient(120deg, var(--primary-strong), var(--primary)); color: #071009; overflow: hidden; position: relative; }
.cta-card::after { content: "$"; position: absolute; inset-inline-end: 24%; top: -58px; color: rgba(7,16,9,.08); font-size: 210px; font-weight: 900; line-height: 1; }
.cta-card .section-kicker { color: rgba(7,16,9,.66); }
.cta-card h2 { position: relative; z-index: 1; max-width: 700px; margin: 5px 0 0; font-size: clamp(27px, 4vw, 42px); line-height: 1.2; letter-spacing: -.035em; }
.cta-card .button { position: relative; z-index: 1; flex-shrink: 0; }

.site-footer { padding: 52px 0 22px; border-top: 1px solid var(--border); background: #070a08; }
.footer-grid { display: grid; grid-template-columns: 1.7fr 1fr 1fr; gap: 40px; }
.footer-grid > div > p { max-width: 350px; margin: 17px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.footer-links { display: grid; align-content: start; gap: 11px; color: var(--muted); font-size: 13px; }
.footer-links a:hover { color: var(--primary); }
.footer-bottom { margin-top: 42px; padding-top: 20px; display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid var(--border); color: #77847c; font-size: 12px; }

.auth-page { min-height: 100vh; background: radial-gradient(circle at 14% 18%, rgba(38,217,128,.12), transparent 28%), radial-gradient(circle at 86% 82%, rgba(18,170,96,.08), transparent 30%), var(--bg); }
.auth-page::before { content: ""; position: fixed; inset: 0; z-index: 0; pointer-events: none; opacity: .15; background-image: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(135deg, black, transparent 72%); }
.auth-page-header { position: relative; z-index: 20; border-bottom: 1px solid rgba(42,57,49,.72); background: rgba(9,13,11,.72); backdrop-filter: blur(18px); }
.auth-page-bar { width: min(calc(100% - 48px), 1240px); min-height: 78px; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.auth-page-actions { display: flex; align-items: center; gap: 10px; }
.back-home > span:first-child { color: var(--primary); font-size: 19px; line-height: 1; }
[dir="ltr"] .back-home > span:first-child { transform: scaleX(-1); }
.auth-page-layout { position: relative; z-index: 1; width: min(calc(100% - 48px), 1240px); min-height: calc(100vh - 79px); margin-inline: auto; padding: 32px 0; display: grid; grid-template-columns: minmax(300px, .78fr) minmax(560px, 1.22fr); align-items: center; gap: clamp(48px, 7vw, 100px); }
.auth-intro { max-width: 470px; }
.auth-intro-kicker { color: var(--primary); font-size: 14px; font-weight: 750; }
.auth-intro h1 { margin: 14px 0 18px; font-size: clamp(39px, 4.8vw, 62px); line-height: 1.12; letter-spacing: -.05em; }
.auth-intro > p { margin: 0; color: var(--muted); font-size: 17px; }
.auth-intro-points { margin-top: 30px; display: grid; gap: 13px; }
.auth-intro-points span { display: flex; align-items: center; gap: 10px; color: #cfdbd3; }
.auth-intro-points i { width: 25px; height: 25px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 8px; background: var(--primary-soft); color: var(--primary); font-size: 12px; font-style: normal; }
.auth-intro-points b { font-size: 14px; font-weight: 600; }
.auth-surface { width: 100%; padding: 28px 32px 26px; border: 1px solid var(--border); border-radius: 22px; background: linear-gradient(145deg, rgba(24,33,28,.98), rgba(16,22,18,.98)); box-shadow: 0 34px 100px rgba(0,0,0,.42); }
.auth-heading { padding: 0; }
.auth-mark { width: 42px; height: 42px; margin-bottom: 15px; }
.auth-heading h2 { margin: 0; font-size: 25px; line-height: 1.3; }
.auth-heading p { margin: 6px 0 0; color: var(--muted); font-size: 14px; }
.auth-tabs { margin: 22px 0 5px; padding: 4px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px; border-radius: 11px; background: #0c120e; }
.auth-tabs button { min-height: 42px; border: 0; border-radius: 8px; background: transparent; color: var(--muted); font-weight: 700; }
.auth-tabs button.active { background: var(--surface-3); color: var(--text); box-shadow: inset 0 -2px 0 var(--primary); }
.auth-panel form { padding-top: 5px; }
.auth-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.auth-page .field-label { font-size: 14px; }
.label-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
.label-row .field-label { margin-top: 0; }
.text-button { padding: 0; border: 0; background: transparent; color: var(--primary); font-size: 13px; }
.check-row { margin: 15px 0; display: flex; align-items: flex-start; gap: 9px; color: var(--muted); font-size: 13px; cursor: pointer; }
.check-row input { width: 17px; min-height: 17px; margin: 2px 0 0; accent-color: var(--primary); }
.country-picker { position: relative; }
.country-trigger { width: 100%; min-height: 50px; padding: 0 13px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; border: 1px solid var(--border); border-radius: 10px; background: #0d1410; color: var(--text); text-align: start; }
.country-trigger:hover, .country-trigger[aria-expanded="true"] { border-color: var(--primary); }
.country-flag { width: 27px; height: 20px; display: block; object-fit: contain; border-radius: 3px; background: transparent; }
.country-chevron { color: var(--muted); }
.country-menu { position: absolute; z-index: 8; inset-inline: 0; top: calc(100% + 7px); padding: 8px; border: 1px solid var(--border); border-radius: 12px; background: #101813; box-shadow: 0 22px 55px rgba(0,0,0,.48); }
.country-menu[hidden] { display: none; }
.country-search { min-height: 44px; }
.country-results { max-height: 220px; margin-top: 7px; overflow-y: auto; overscroll-behavior: contain; }
.country-option { width: 100%; min-height: 43px; padding: 7px 9px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 10px; border: 0; border-radius: 8px; background: transparent; color: var(--text); text-align: start; }
.country-option[hidden] { display: none !important; }
.country-option:hover, .country-option.selected { background: var(--surface-3); }
.country-option .dial-code { direction: ltr; color: var(--primary); font-size: 13px; }
.country-empty { padding: 18px 10px; color: var(--muted); text-align: center; font-size: 13px; }
.phone-fields { display: grid; grid-template-columns: 108px 1fr; gap: 10px; direction: ltr; }
.phone-fields select, .phone-fields input { direction: ltr; }
.calling-code { color: var(--primary); font-weight: 750; text-align: center; }
.auth-passwords { gap: 10px; }
.password-rules { display: block; margin-top: 6px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.terms-check { line-height: 1.45; }
.verification-note { margin: 13px 0 0; display: flex; align-items: flex-start; gap: 8px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.verification-note > span:first-child { color: var(--primary); }

.dashboard-page { min-height: 100vh; background: #0b100d; }
.dashboard-shell { min-height: 100vh; display: grid; grid-template-columns: 260px minmax(0, 1fr); }
.dashboard-sidebar { position: sticky; top: 0; z-index: 70; height: 100vh; padding: 24px 18px 18px; display: flex; flex-direction: column; border-inline-end: 1px solid var(--border); background: #090d0b; }
.dashboard-brand-row { padding: 0 6px 26px; border-bottom: 1px solid var(--border); }
.dashboard-brand-row .brand { width: 100%; justify-content: center; }
.dashboard-badge { margin-top: 11px; display: block; color: var(--muted); font-size: 12px; }
.dashboard-nav-label { margin: 25px 11px 8px; color: #68776e; font-size: 12px; font-weight: 700; }
.dashboard-nav-label.secondary { margin-top: 23px; }
.dashboard-nav { display: grid; gap: 5px; }
.dashboard-nav a { min-height: 46px; padding: 8px 10px; display: flex; align-items: center; gap: 11px; border: 1px solid transparent; border-radius: 11px; color: var(--muted); font-size: 14px; font-weight: 650; transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease; }
.dashboard-nav a:hover { color: var(--text); background: var(--surface); }
.dashboard-nav a.active { border-color: rgba(38,217,128,.18); background: var(--primary-soft); color: var(--text); }
.dashboard-nav-icon { width: 29px; height: 29px; display: grid; place-items: center; border-radius: 8px; background: rgba(255,255,255,.04); color: #87958c; font-size: 15px; }
.dashboard-nav a.active .dashboard-nav-icon { background: rgba(38,217,128,.15); color: var(--primary); }
.dashboard-user-card { margin-top: auto; padding: 13px 10px; display: flex; align-items: center; gap: 10px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface); }
.dashboard-user-card > div { min-width: 0; }
.dashboard-user-card b, .dashboard-user-card small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-user-card b { font-size: 13px; }
.dashboard-user-card small { margin-top: 1px; color: var(--muted); font-size: 12px; direction: ltr; text-align: start; }
.dashboard-avatar { width: 36px; height: 36px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; background: linear-gradient(145deg, var(--primary), #70f2ad); color: #061009; font-size: 12px; font-weight: 850; }
.dashboard-logout { min-height: 42px; margin-top: 8px; padding: 7px 11px; display: flex; align-items: center; gap: 10px; border-radius: 10px; color: #d38c8c; font-size: 13px; font-weight: 650; }
.dashboard-logout:hover { background: rgba(255,107,107,.08); color: #ff9a9a; }
.dashboard-content { min-width: 0; }
.dashboard-topbar { position: sticky; top: 0; z-index: 40; min-height: 79px; padding: 12px clamp(22px, 3vw, 42px); display: flex; align-items: center; justify-content: space-between; gap: 20px; border-bottom: 1px solid rgba(42,57,49,.78); background: rgba(11,16,13,.88); backdrop-filter: blur(18px); }
.dashboard-topbar-title { display: flex; align-items: center; gap: 13px; }
.dashboard-topbar-title h1 { margin: 0; font-size: 18px; line-height: 1.3; }
.dashboard-topbar-title p { margin: 2px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.dashboard-menu-button { width: 44px; height: 44px; flex: 0 0 44px; padding: 11px; display: none; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); }
.dashboard-menu-button span { height: 2px; margin: 4px 0; display: block; border-radius: 2px; background: var(--text); }
.dashboard-topbar-actions { display: flex; align-items: center; gap: 9px; }
.dashboard-icon-button { position: relative; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: 10px; background: var(--surface); color: var(--text); font-size: 19px; }
.dashboard-icon-button i { position: absolute; inset-inline-end: 8px; top: 8px; width: 6px; height: 6px; border: 1px solid #0b100d; border-radius: 50%; background: var(--primary); }
.topbar-avatar { width: 42px; height: 42px; }
.dashboard-main { width: min(100%, 1320px); margin-inline: auto; padding: 30px clamp(22px, 3vw, 42px) 48px; }
.dashboard-page-heading { margin-bottom: 22px; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }
.dashboard-page-heading h2 { margin: 3px 0 0; font-size: clamp(28px, 3vw, 38px); line-height: 1.2; letter-spacing: -.035em; }
.dashboard-metrics { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 14px; }
.dashboard-metric { min-height: 160px; padding: 20px; border: 1px solid var(--border); border-radius: 17px; background: linear-gradient(145deg, #172019, #111713); box-shadow: 0 18px 48px rgba(0,0,0,.16); }
.dashboard-metric.balance-metric { border-color: rgba(38,217,128,.28); background: linear-gradient(135deg, rgba(38,217,128,.16), #132019 64%); }
.metric-head { display: flex; align-items: center; justify-content: space-between; gap: 15px; color: var(--muted); font-size: 14px; }
.metric-head i { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: var(--primary-soft); color: var(--primary); font-style: normal; font-weight: 800; }
.metric-head i.amber { color: #ffd166; background: rgba(255,209,102,.1); }
.dashboard-metric strong { margin-top: 17px; display: block; color: var(--text); font-size: 30px; line-height: 1; direction: ltr; text-align: start; }
.dashboard-metric small { margin-top: 15px; display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12px; }
.metric-dot { width: 7px; height: 7px; border-radius: 50%; }
.metric-dot.green { background: var(--primary); box-shadow: 0 0 0 4px rgba(38,217,128,.1); }
.dashboard-grid { margin-top: 14px; display: grid; grid-template-columns: 1.2fr .8fr; gap: 14px; }
.dashboard-panel { padding: 20px; border: 1px solid var(--border); border-radius: 17px; background: #111713; box-shadow: 0 18px 48px rgba(0,0,0,.12); }
.dashboard-panel-head { margin-bottom: 15px; display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; }
.dashboard-panel-head h3 { margin: 0; font-size: 17px; }
.dashboard-panel-head p { margin: 3px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.dashboard-quick-actions { display: grid; gap: 9px; }
.quick-action { width: 100%; min-height: 76px; padding: 11px 13px; display: grid; grid-template-columns: 43px 1fr auto; align-items: center; gap: 12px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); color: var(--text); text-align: start; }
.quick-action:hover { border-color: rgba(38,217,128,.35); background: var(--surface-2); }
.quick-action-icon { width: 40px; height: 40px; display: grid; place-items: center; border-radius: 11px; background: var(--primary-soft); color: var(--primary); font-size: 19px; font-weight: 800; }
.quick-action b, .quick-action small { display: block; }
.quick-action b { font-size: 14px; }
.quick-action small { margin-top: 2px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.quick-action > i { color: var(--primary); font-size: 19px; font-style: normal; }
[dir="ltr"] .quick-action > i { transform: scaleX(-1); }
.dashboard-rates { display: grid; gap: 2px; }
.dashboard-rates > div { min-height: 53px; padding: 8px 4px; display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 10px; border-bottom: 1px solid var(--border); }
.dashboard-rates > div:last-child { border-bottom: 0; }
.rate-brand { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; background: var(--surface-3); font-size: 12px; }
.rate-brand.amazon { color: #ffb347; }
.rate-brand.apple { color: #eef3f0; }
.rate-brand.google { color: #5ecb8c; }
.dashboard-rates b { font-size: 13px; }
.dashboard-rates strong { color: var(--primary); font-size: 14px; direction: ltr; }
.activity-panel { margin-top: 14px; }
.dashboard-empty-state { min-height: 145px; padding: 22px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 16px; border: 1px dashed #34453b; border-radius: 14px; background: rgba(255,255,255,.015); }
.empty-state-icon { width: 48px; height: 48px; display: grid; place-items: center; border-radius: 13px; background: var(--primary-soft); color: var(--primary); font-size: 22px; }
.dashboard-empty-state h4 { margin: 0; font-size: 15px; }
.dashboard-empty-state p { max-width: 560px; margin: 4px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.dashboard-backdrop[hidden] { display: none; }

.toast { position: fixed; z-index: 100; inset-inline-end: 22px; bottom: 22px; max-width: 390px; padding: 14px 16px; display: flex; align-items: flex-start; gap: 11px; border: 1px solid rgba(38,217,128,.35); border-radius: 13px; background: #142119; box-shadow: var(--shadow); }
.toast[hidden] { display: none; }
.toast > span { width: 27px; height: 27px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 8px; background: var(--primary); color: #061009; font-weight: 800; }
.toast p { margin: 2px 0 0; font-size: 13px; }

:focus-visible { outline: 3px solid rgba(38,217,128,.55); outline-offset: 3px; }

@media (max-width: 980px) {
  .desktop-nav, .desktop-only { display: none; }
  .menu-button { display: block; }
  .hero { padding-top: 62px; }
  .hero-grid { grid-template-columns: 1fr; }
  .hero-copy { max-width: 760px; }
  .calculator-wrap { width: min(100%, 590px); margin-inline: auto; }
  .brands-grid { grid-template-columns: repeat(3, 1fr); }
  .auth-page-layout { width: min(calc(100% - 40px), 720px); grid-template-columns: 1fr; }
  .auth-intro { display: none; }
  .dashboard-shell { display: block; }
  .dashboard-sidebar { position: fixed; inset-block: 0; inset-inline-start: 0; width: 270px; height: 100vh; transform: translateX(110%); transition: transform 200ms ease; box-shadow: 0 0 70px rgba(0,0,0,.5); }
  [dir="ltr"] .dashboard-sidebar { transform: translateX(-110%); }
  .dashboard-sidebar.open { transform: translateX(0); }
  .dashboard-menu-button { display: block; }
  .dashboard-backdrop { position: fixed; z-index: 60; inset: 0; border: 0; background: rgba(2,6,4,.7); backdrop-filter: blur(5px); }
  body.dashboard-menu-open { overflow: hidden; }
}

@media (max-width: 760px) {
  .shell { width: min(calc(100% - 28px), var(--max-width)); }
  .section { padding: 72px 0; }
  .hero h1 { font-size: clamp(39px, 12vw, 58px); }
  .steps-grid, .withdrawal-grid, .faq-grid, .footer-grid { grid-template-columns: 1fr; }
  .steps-grid { margin-top: 34px; }
  .step-card { min-height: 220px; }
  .cta-card { padding: 30px 24px; align-items: flex-start; flex-direction: column; }
  .cta-card .button { width: 100%; }
  .footer-grid { gap: 30px; }
  .auth-page-bar { width: min(calc(100% - 32px), 720px); }
  .auth-page-layout { width: min(calc(100% - 32px), 720px); padding: 24px 0 36px; }
  .dashboard-metrics { grid-template-columns: 1fr 1fr; }
  .balance-metric { grid-column: 1 / -1; }
  .dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 520px) {
  .header-inner { min-height: 68px; }
  .brand-mark { width: 38px; height: 38px; }
  .brand-copy { font-size: 16px; }
  .language-switch { min-height: 40px; padding-inline: 10px; }
  .hero { padding: 48px 0 60px; }
  .hero-actions .button { width: 100%; }
  .trust-row { display: grid; gap: 10px; }
  .calculator-card { padding: 18px; border-radius: 16px; }
  .floating-status { display: none; }
  .split-fields { grid-template-columns: 1fr; gap: 0; }
  .brands-grid { grid-template-columns: repeat(2, 1fr); }
  .brand-chip { justify-content: flex-start; }
  .footer-bottom { flex-direction: column; gap: 5px; }
  .toast { inset-inline: 14px; bottom: 14px; max-width: none; }
  .auth-page-bar { min-height: 68px; }
  .back-home { padding-inline: 12px; }
  .back-home span:last-child { display: none; }
  .auth-page-layout { min-height: calc(100vh - 69px); width: min(calc(100% - 24px), 720px); padding: 14px 0 26px; }
  .auth-surface { padding: 22px 17px; border-radius: 18px; }
  .auth-field-grid, .auth-passwords { grid-template-columns: 1fr; gap: 0; }
  .dashboard-topbar { min-height: 68px; padding-inline: 14px; }
  .dashboard-topbar-title p, .topbar-avatar { display: none; }
  .dashboard-topbar-title h1 { font-size: 16px; }
  .dashboard-topbar-actions { gap: 6px; }
  .dashboard-main { padding: 22px 14px 36px; }
  .dashboard-page-heading { align-items: stretch; flex-direction: column; }
  .dashboard-page-heading .button { width: 100%; }
  .dashboard-metrics { grid-template-columns: 1fr; }
  .balance-metric { grid-column: auto; }
  .dashboard-metric { min-height: 145px; }
  .dashboard-panel { padding: 16px; }
  .dashboard-empty-state { grid-template-columns: auto 1fr; padding: 18px 14px; }
  .dashboard-empty-state .button { grid-column: 1 / -1; width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}

textarea {
  width: 100%;
  padding: 12px 13px;
  resize: vertical;
  border: 1px solid var(--border);
  border-radius: 10px;
  outline: 0;
  background: #0d1410;
  color: var(--text);
  font: inherit;
}
textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 3px rgba(38,217,128,.1); }
.button-reset { width: 100%; border: 0; background: transparent; }
.button-danger { border-color: rgba(255,107,107,.3); background: rgba(255,107,107,.1); color: #ff9292; }
.button-danger:hover { background: rgba(255,107,107,.17); }
.stack-form { margin-top: 18px; display: grid; gap: 14px; }
.form-between { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.form-between .check-row { margin: 0; }
.text-link, .auth-footer-note a { color: var(--primary); font-weight: 700; }
.text-link:hover, .auth-footer-note a:hover { text-decoration: underline; }
.auth-footer-note { margin: 18px 0 0; color: var(--muted); text-align: center; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.verification-card { margin: 20px 0 6px; padding: 15px; border: 1px solid var(--border); border-radius: 11px; background: #0d1410; direction: ltr; text-align: center; }
.inline-center { margin-top: 16px; text-align: center; }
.alert { margin-bottom: 18px; padding: 13px 15px; display: flex; align-items: flex-start; gap: 9px; border: 1px solid; border-radius: 12px; font-size: 14px; }
.alert ul { margin: 5px 0 0; padding-inline-start: 20px; }
.alert-success { border-color: rgba(38,217,128,.35); background: rgba(38,217,128,.09); color: #bdf5d6; }
.alert-danger { border-color: rgba(255,107,107,.32); background: rgba(255,107,107,.08); color: #ffc0c0; }
.alert-warning { margin-top: 14px; border-color: rgba(255,209,102,.3); background: rgba(255,209,102,.08); color: #ffe6a6; }
.public-hero-grid { grid-template-columns: minmax(0, 1.08fr) minmax(340px, .7fr); }
.hero-trust-intro { display: flex; align-items: center; gap: 18px; max-width: 100%; }
.hero-trust-intro .eyebrow { min-width: 0; }
.hero-trust-intro .live-dot { flex-shrink: 0; }
.hero-trust-symbol { display: grid; place-items: center; flex: 0 0 96px; width: 96px; height: 96px; border: 1px solid rgba(110, 220, 21, .35); border-radius: 50%; background: var(--primary-soft); color: var(--primary); }
.hero-trust-symbol .ui-icon { width: 64px; height: 64px; }
@media (max-width: 520px) {
  .hero-trust-intro { gap: 14px; }
  .hero-trust-symbol { flex-basis: 72px; width: 72px; height: 72px; }
  .hero-trust-symbol .ui-icon { width: 48px; height: 48px; }
}
.public-summary { min-height: 355px; display: flex; flex-direction: column; justify-content: center; }
.mini-flow { display: grid; gap: 12px; }
.mini-flow div { min-height: 65px; padding: 12px 14px; display: flex; align-items: center; gap: 13px; border: 1px solid var(--border); border-radius: 12px; background: rgba(255,255,255,.025); }
.mini-flow span { width: 35px; height: 35px; display: grid; place-items: center; border-radius: 10px; background: var(--primary-soft); color: var(--primary); font-weight: 800; }
.button-primary .arrow { transform: none; }
.dashboard-sidebar { overflow-y: auto; }
.dashboard-sidebar .dashboard-nav { margin-top: 22px; }
.table-wrap { width: 100%; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 720px; }
th, td { padding: 13px 12px; border-bottom: 1px solid var(--border); text-align: start; vertical-align: middle; font-size: 13px; }
th { color: var(--muted); font-size: 12px; font-weight: 700; white-space: nowrap; }
tbody tr:hover { background: rgba(255,255,255,.018); }
.table-empty { padding: 34px; color: var(--muted); text-align: center; }
.cell-sub { margin-top: 2px; display: block; color: var(--muted); font-size: 11px; direction: ltr; text-align: start; }
.status-badge { width: fit-content; padding: 5px 9px; display: inline-flex; align-items: center; border-radius: 999px; font-size: 11px; font-weight: 750; white-space: nowrap; }
.status-pending, .status-processing { background: rgba(255,209,102,.11); color: #ffd978; }
.status-accepted, .status-completed, .status-credit { background: rgba(38,217,128,.12); color: #57e89d; }
.status-rejected, .status-debit { background: rgba(255,107,107,.1); color: #ff9292; }
.status-suspended, .status-deleted { background: rgba(255,107,107,.1); color: #ff9292; }
.money { direction: ltr; white-space: nowrap; }
.money.credit { color: var(--primary); }
.money.debit { color: #ff9292; }
.activity-row { min-height: 59px; display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 11px; border-bottom: 1px solid var(--border); }
.activity-row:last-child { border-bottom: 0; }
.activity-copy { min-width: 0; }
.activity-copy b, .activity-copy small { display: block; }
.activity-copy b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; }
.activity-copy small { color: var(--muted); font-size: 10px; }
.empty-copy { color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.form-panel { max-width: 860px; }
.code-input, .secret-code { direction: ltr; text-align: left; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .05em; }
.secret-code { margin-top: 15px; padding: 18px; overflow-wrap: anywhere; border: 1px solid rgba(38,217,128,.25); border-radius: 12px; background: #0a100c; color: #83f3b7; font-size: clamp(17px, 2.4vw, 24px); }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.detail-list { margin: 0; display: grid; gap: 0; }
.detail-list > div { padding: 12px 0; display: grid; grid-template-columns: minmax(120px, .42fr) 1fr; gap: 20px; border-bottom: 1px solid var(--border); }
.detail-list > div:last-child { border-bottom: 0; }
.detail-list dt { color: var(--muted); font-size: 12px; }
.detail-list dd { margin: 0; font-size: 14px; font-weight: 650; overflow-wrap: anywhere; }
.method-summary { padding: 13px 15px; display: flex; justify-content: space-between; gap: 15px; border: 1px solid rgba(38,217,128,.22); border-radius: 11px; background: var(--primary-soft); color: var(--muted); font-size: 13px; }
.method-summary b { color: var(--primary); }
.destination-fields { margin: 0; padding: 15px; display: grid; gap: 12px; border: 1px solid var(--border); border-radius: 12px; }
.destination-fields[hidden] { display: none; }
.destination-fields legend { padding-inline: 8px; font-size: 13px; font-weight: 750; }
.compact-metrics { max-width: 420px; margin-bottom: 14px; grid-template-columns: 1fr; }
.compact-metrics .dashboard-metric { min-height: 130px; }
.filter-bar { margin-bottom: 14px; display: grid; grid-template-columns: minmax(220px, 1fr) minmax(170px, .35fr) auto; gap: 10px; }
.decision-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.admin-metrics { grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.admin-dashboard-grid { grid-template-columns: 1.45fr .55fr; }
.admin-dashboard-grid.single-panel { grid-template-columns: 1fr; }
.admin-list { display: grid; }
.admin-list a { padding: 12px 4px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--border); }
.admin-list a:last-child { border-bottom: 0; }
.admin-list b, .admin-list small { display: block; }
.admin-list b { font-size: 12px; }
.admin-list small { color: var(--muted); font-size: 11px; }
.admin-list strong { color: var(--primary); direction: ltr; }
.admin-editor summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; font-size: 16px; font-weight: 750; }
.admin-editor[open] summary { margin-bottom: 20px; padding-bottom: 14px; border-bottom: 1px solid var(--border); }
.currency-delete-form { margin-top: 16px; padding-top: 14px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid var(--border); }
.currency-delete-form .setting-help { max-width: 720px; margin: 0; }
.currency-delete-form .button { flex: 0 0 auto; }
.admin-form-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: end; gap: 12px; }
.admin-form-grid .full-span { grid-column: 1 / -1; }
.toggle-label { min-height: 50px; display: flex; align-items: center; gap: 8px; color: var(--muted); font-size: 13px; }
.toggle-label input, .mini-toggle input { width: 17px; min-height: 17px; accent-color: var(--primary); }
.catalog-stack { margin-top: 14px; display: grid; gap: 14px; }
.catalog-card > .admin-form-grid { padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.denomination-list { margin-top: 18px; }
.denomination-list h3, .method-fields h3 { margin: 0 0 10px; font-size: 14px; }
.denomination-row { padding: 10px 0; display: grid; grid-template-columns: .6fr 1fr .8fr .8fr auto auto; align-items: end; gap: 8px; border-bottom: 1px solid var(--border); }
.denomination-row label > span { margin-bottom: 4px; display: block; color: var(--muted); font-size: 10px; }
.denomination-row input { min-height: 42px; }
.mini-toggle { min-height: 42px; display: flex; align-items: center; gap: 5px; color: var(--muted); font-size: 11px; white-space: nowrap; }
.inline-editor { margin-top: 14px; padding: 12px; border: 1px dashed var(--border); border-radius: 11px; }
.inline-editor summary { cursor: pointer; color: var(--primary); font-size: 13px; font-weight: 700; }
.inline-editor[open] summary { margin-bottom: 10px; }
.method-fields { padding: 13px; border: 1px solid var(--border); border-radius: 12px; }
.method-field-row { margin-bottom: 8px; display: grid; grid-template-columns: .8fr 1fr 1fr .6fr auto; gap: 8px; }
.method-field-row input, .method-field-row select { min-height: 43px; }
.remove-field { width: 43px; height: 43px; border: 1px solid rgba(255,107,107,.28); border-radius: 9px; background: rgba(255,107,107,.08); color: #ff9292; font-size: 20px; }
.row-editor { min-width: 520px; display: grid; grid-template-columns: repeat(3, 1fr) auto; gap: 7px; }
.row-editor select { min-height: 42px; }
.user-row-editor { min-width: 650px; grid-template-columns: repeat(4, 1fr) auto; }
.page-heading-actions, .entity-tabs, .table-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.button-small { min-height: 36px; padding: 8px 12px; font-size: 11px; }
.table-actions form { margin: 0; }
.verification-stack { display: grid; gap: 4px; white-space: nowrap; font-size: 11px; }
.verification-stack .verified { color: var(--primary); }
.verification-stack .unverified { color: var(--muted); }
.account-form { max-width: 1080px; }
.account-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.form-section-heading { margin-bottom: 18px; padding-bottom: 14px; display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--border); }
.form-section-heading h3 { margin: 0; font-size: 17px; }
.form-section-heading p { margin: 4px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.form-actions { margin-top: 18px; display: flex; justify-content: flex-end; gap: 10px; }
.account-balance-box, .locked-field { min-height: 74px; padding: 12px 14px; display: flex; flex-direction: column; justify-content: center; border: 1px solid var(--border); border-radius: 11px; background: #0d1410; }
.account-balance-box span, .locked-field span { color: var(--muted); font-size: 11px; }
.account-balance-box strong { margin-top: 3px; color: var(--primary); direction: ltr; font-size: 20px; }
.locked-field strong { margin-top: 4px; font-size: 13px; }
.account-secondary-panel, .danger-zone { max-width: 1080px; margin-top: 14px; }
.admin-customer-security-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.admin-customer-security-card { min-width: 0; padding: 16px; display: grid; align-content: start; gap: 13px; border: 1px solid var(--border); border-radius: 13px; background: #0d1410; }
.admin-customer-security-heading { display: flex; align-items: center; gap: 11px; }
.admin-customer-security-heading > div { min-width: 0; display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.admin-customer-security-heading h4 { margin: 0; font-size: 14px; }
.admin-customer-security-icon { width: 38px; height: 38px; display: grid; place-items: center; flex: 0 0 38px; border-radius: 11px; background: rgba(158, 241, 37, .1); color: var(--brand-lime); }
.admin-customer-security-icon .ui-icon { width: 19px; height: 19px; }
.admin-customer-security-card p { margin: 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.admin-customer-security-card form { margin-top: auto; }
.admin-customer-security-card .button { width: 100%; }
.admin-customer-security-card .button:disabled { opacity: .46; cursor: not-allowed; filter: saturate(.35); }
.security-control-status { padding: 3px 7px; border-radius: 999px; font-size: 9px; font-weight: 800; }
.security-control-status.enabled { background: rgba(158, 241, 37, .12); color: var(--brand-lime); }
.security-control-status.disabled { background: rgba(157, 167, 160, .1); color: var(--muted); }
.wallet-adjustment-form { display: grid; grid-template-columns: .7fr .7fr 1.5fr auto; align-items: end; gap: 10px; }
.wallet-adjustment-form .field-label { margin-top: 0; }
.danger-zone { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-color: rgba(255,107,107,.25); }
.danger-zone h3 { margin: 0; color: #ff9292; font-size: 16px; }
.danger-zone p { max-width: 680px; margin: 5px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.permissions-section { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--border); }
.permissions-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.permission-card { min-height: 76px; padding: 13px; display: flex; align-items: flex-start; gap: 11px; border: 1px solid var(--border); border-radius: 11px; background: #0d1410; cursor: pointer; }
.permission-card:hover { border-color: rgba(38,217,128,.35); }
.permission-card input { width: 18px; min-height: 18px; margin-top: 2px; flex: 0 0 auto; accent-color: var(--primary); }
.permission-card strong, .permission-card small { display: block; }
.permission-card strong { font-size: 13px; }
.permission-card small { margin-top: 4px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.role-badge, .permission-summary, .protected-account-note { width: fit-content; padding: 5px 9px; display: inline-flex; border-radius: 999px; background: rgba(255,255,255,.05); color: var(--muted); font-size: 11px; font-weight: 700; white-space: nowrap; }
.role-badge.protected { background: rgba(38,217,128,.12); color: var(--primary); }
.protected-account-note { color: var(--primary); }
.all-permissions-note { padding: 14px; border: 1px solid rgba(38,217,128,.25); border-radius: 11px; background: var(--primary-soft); color: var(--primary); font-weight: 750; }
.access-summary { grid-column: 1 / -1; }
.access-summary h3 { margin-top: 0; }
.access-summary p { margin-bottom: 0; color: var(--muted); }
.wallet-adjustment { margin-top: 8px; }
.wallet-adjustment summary { width: fit-content; cursor: pointer; color: var(--primary); font-size: 11px; font-weight: 700; }
.wallet-adjustment form { margin-top: 8px; display: grid; grid-template-columns: .7fr .7fr 1.4fr auto; gap: 7px; }
.wallet-adjustment input, .wallet-adjustment select { min-height: 40px; }
nav[role="navigation"] { margin-top: 18px; }
nav[role="navigation"] > div { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
nav[role="navigation"] a, nav[role="navigation"] span { color: var(--muted); }
nav[role="navigation"] a { color: var(--primary); }
nav[role="navigation"] svg { width: 18px; }
.wallet-cards { margin-bottom: 14px; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.wallet-card { min-height: 142px; padding: 20px; display: flex; flex-direction: column; justify-content: space-between; border: 1px solid var(--border); border-radius: var(--radius); background: linear-gradient(145deg, #111a15, #0c120f); box-shadow: var(--shadow); }
.wallet-card.primary-wallet { border-color: rgba(38,217,128,.32); background: linear-gradient(145deg, rgba(38,217,128,.13), #0d1510 72%); }
.wallet-card > span, .wallet-card small { color: var(--muted); font-size: 12px; }
.wallet-card > strong { margin: 9px 0; color: var(--text); direction: ltr; font-size: clamp(24px, 3vw, 34px); }
.compact-wallets { grid-template-columns: repeat(auto-fit, minmax(190px, 280px)); }
.compact-wallets .wallet-card { min-height: 112px; }
.wallet-chip-list { display: flex; flex-wrap: wrap; gap: 5px; }
.wallet-chip { padding: 5px 8px; border: 1px solid var(--border); border-radius: 999px; background: #0d1410; color: var(--muted); direction: ltr; font-size: 11px; white-space: nowrap; }
.wallet-chip b { color: var(--primary); }
.wallet-balance-line { display: block; margin-top: 3px; color: var(--primary); font-size: 13px; }
.crypto-destination { padding: 16px; display: grid; gap: 11px; border: 1px solid rgba(38,217,128,.28); border-radius: 12px; background: var(--primary-soft); }
.crypto-destination[hidden] { display: none; }
.crypto-destination > div { display: grid; gap: 5px; }
.crypto-destination span, .crypto-destination small { color: var(--muted); font-size: 11px; }
.crypto-destination code, .break-code { color: var(--primary); font-family: ui-monospace, SFMono-Regular, Consolas, monospace; overflow-wrap: anywhere; user-select: all; }
.nested-admin-section { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--border); }
.nested-admin-section > h3 { margin: 0 0 12px; }
.network-editor { margin-bottom: 10px; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: #0d1410; }
.add-network-form { border-style: dashed; }
.network-rate-row { padding: 12px; border: 1px solid var(--border); border-radius: 12px; }
.network-rate-row > form + form { margin-top: 8px; }
.alert-info { border-color: rgba(38,217,128,.25); background: rgba(38,217,128,.07); color: var(--muted); }

@media (max-width: 1100px) {
  .admin-metrics { grid-template-columns: repeat(2, 1fr); }
  .admin-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .denomination-row { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 14px 0; }
  .method-field-row { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 760px) {
  .public-hero-grid, .detail-grid, .admin-dashboard-grid { grid-template-columns: 1fr; }
  .public-summary { min-height: auto; }
  .filter-bar { grid-template-columns: 1fr; }
  .admin-metrics { grid-template-columns: 1fr 1fr; }
  .page-heading-actions { align-items: stretch; flex-direction: column; }
  .entity-tabs .button { flex: 1; }
  .wallet-adjustment-form { grid-template-columns: 1fr 1fr; }
  .wallet-note { grid-column: 1 / -1; }
  .compact-wallets { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 520px) {
  .form-between, .method-summary { align-items: flex-start; flex-direction: column; }
  .detail-list > div { grid-template-columns: 1fr; gap: 4px; }
  .admin-metrics, .admin-form-grid, .denomination-row, .method-field-row { grid-template-columns: 1fr; }
  .decision-actions .button { width: 100%; }
  .account-form-grid, .permissions-grid, .wallet-adjustment-form { grid-template-columns: 1fr; }
  .wallet-note { grid-column: auto; }
  .danger-zone { align-items: stretch; flex-direction: column; }
  .currency-delete-form { align-items: stretch; flex-direction: column; }
  .currency-delete-form .button { width: 100%; }
  .danger-zone .button, .form-actions .button { width: 100%; }
  .compact-wallets { grid-template-columns: 1fr; }
}

/* --------------------------------------------------------------------------
   SmartGift Cash — light interface system
   -------------------------------------------------------------------------- */
:root {
  --bg: #f4f7f5;
  --surface: #ffffff;
  --surface-2: #f7faf8;
  --surface-3: #eaf2ed;
  --primary: #159a55;
  --primary-strong: #0d713d;
  --primary-soft: rgba(21, 154, 85, 0.09);
  --text: #111713;
  --muted: #667269;
  --border: #dce5df;
  --danger: #d53b43;
  --warning: #b7791f;
  --sidebar: #101713;
  --radius: 16px;
  --shadow: 0 16px 45px rgba(21, 39, 28, 0.08);
  --shadow-soft: 0 3px 16px rgba(21, 39, 28, 0.055);
}

body {
  background: var(--bg);
  color: var(--text);
  font-family: "SmartGift Cairo Arabic", Inter, "Segoe UI", Tahoma, Arial, sans-serif;
}
::selection { background: rgba(21, 154, 85, .18); color: #0a4f2b; }
.ui-icon { width: 20px; height: 20px; flex: 0 0 auto; }

/* Public pages */
.site-header {
  background: rgba(255, 255, 255, .9);
  border-bottom-color: rgba(217, 228, 221, .9);
  box-shadow: 0 1px 0 rgba(17, 23, 19, .02);
}
.header-inner { min-height: 80px; }
.brand-mark {
  background: linear-gradient(145deg, #20b967, #0f8a4b);
  box-shadow: 0 9px 24px rgba(21, 154, 85, .2);
}
.brand-mark svg { stroke: #fff; }
.brand-copy strong { color: #121914; }
.brand-copy span { color: var(--primary); }
.language-switch {
  border-color: var(--border);
  background: #fff;
  color: #253028;
  box-shadow: 0 1px 2px rgba(17, 23, 19, .025);
}
.language-switch:hover { border-color: #b7c9bd; background: #f8fbf9; }
.button { border-radius: 11px; font-weight: 720; }
.button-primary {
  background: linear-gradient(135deg, #159a55, #0d8146);
  color: #fff;
  box-shadow: 0 9px 22px rgba(21, 154, 85, .18);
}
.button-primary:hover { background: linear-gradient(135deg, #11894b, #0b713d); }
.button-secondary, .button-ghost { border-color: var(--border); background: #fff; color: #243028; }
.button-secondary:hover, .button-ghost:hover { border-color: #b9c9bf; background: #f7faf8; }
.button-dark { background: #121914; color: #fff; }
.button-danger { border-color: #f0c7ca; background: #fff5f5; color: #c73038; }
.button-danger:hover { background: #fee9ea; }

.hero {
  padding: 96px 0 88px;
  border-bottom: 1px solid #e2e9e4;
  background:
    radial-gradient(circle at 12% 15%, rgba(35, 185, 103, .12), transparent 29%),
    radial-gradient(circle at 88% 80%, rgba(21, 154, 85, .08), transparent 33%),
    linear-gradient(180deg, #fbfdfc, #f3f7f4);
}
.hero::before {
  opacity: .35;
  background-image: linear-gradient(rgba(17, 23, 19, .035) 1px, transparent 1px), linear-gradient(90deg, rgba(17, 23, 19, .035) 1px, transparent 1px);
}
.hero-glow-one { background: radial-gradient(circle, rgba(33, 185, 103, .12), transparent 68%); }
.hero-glow-two { background: radial-gradient(circle, rgba(13, 129, 70, .09), transparent 68%); }
.eyebrow { border-color: rgba(21, 154, 85, .2); background: #edf8f1; }
.hero h1 { color: #101713; font-size: clamp(44px, 5.6vw, 70px); }
.hero-description { color: #58665d; }
.trust-row { color: #526057; }
.trust-row i { background: #e5f6ec; color: #08763d; }
.calculator-card {
  border-color: #d9e4dd;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 28px 70px rgba(24, 53, 35, .12);
}
.calculator-card::before { background: linear-gradient(135deg, rgba(21, 154, 85, .045), transparent 40%); }
.rate-badge { background: #eff5f1; color: #506056; }
.mini-flow div { border-color: #e0e8e3; background: #f8fbf9; }
.mini-flow span { background: #e4f5eb; color: #0b7c42; }
.section { background: #fff; }
.section-heading p { color: #647168; }
.step-card {
  border-color: #e0e8e3;
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.step-card.featured { border-color: #bfe1cc; background: linear-gradient(145deg, #effaf3, #fff 64%); }
.step-number { color: rgba(18, 25, 20, .055); }
.step-icon { background: #e6f6ec; color: #0e8448; }
.step-card p { color: #69766e; }
.site-footer { border-top-color: #202d25; background: #101713; }
.site-footer .footer-bottom { margin-top: 0; border-top: 0; color: #aab8af; }
.platform-preview {
  position: relative;
  padding: 18px;
  overflow: hidden;
  border: 1px solid #26372c;
  border-radius: 26px;
  background: linear-gradient(145deg, #111a14, #0c130f);
  color: #fff;
  box-shadow: 0 32px 80px rgba(15, 31, 20, .18);
}
.platform-preview::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  inset-inline-end: -135px;
  top: -150px;
  border-radius: 50%;
  background: rgba(29, 180, 96, .14);
  filter: blur(4px);
}
.preview-header, .preview-header > div, .preview-status { position: relative; display: flex; align-items: center; }
.preview-header { justify-content: space-between; gap: 16px; padding: 3px 3px 16px; }
.preview-header > div { gap: 8px; }
.preview-header strong { font-size: 13px; }
.preview-logo-dot { width: 10px; height: 10px; border-radius: 4px; background: #2dcd75; box-shadow: 0 0 0 5px rgba(45, 205, 117, .1); }
.preview-status { gap: 6px; color: #98a99f; font-size: 10px; }
.preview-status i { width: 6px; height: 6px; border-radius: 50%; background: #31d17a; }
.preview-balance {
  position: relative;
  min-height: 155px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgba(87, 222, 147, .2);
  border-radius: 18px;
  background: linear-gradient(135deg, #178b50, #0b6939);
}
.preview-balance::after { content: "$"; position: absolute; inset-inline-end: 20px; top: -25px; color: rgba(255, 255, 255, .07); font-size: 155px; font-weight: 900; line-height: 1; }
.preview-balance span, .preview-balance small { position: relative; z-index: 1; color: #c8ecd8; font-size: 11px; }
.preview-balance strong { position: relative; z-index: 1; margin: 7px 0 9px; direction: ltr; text-align: start; font-size: clamp(30px, 4vw, 42px); line-height: 1; }
.preview-wallet-row { margin-top: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.preview-wallet-row > div { min-height: 68px; padding: 12px 13px; display: grid; gap: 3px; border: 1px solid #29382f; border-radius: 13px; background: #17211b; }
.preview-wallet-row span { color: #829087; font-size: 10px; }
.preview-wallet-row b { direction: ltr; text-align: start; font-size: 14px; }
.preview-services { margin-top: 10px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.preview-services > span { min-height: 50px; padding: 8px 10px; display: flex; align-items: center; gap: 8px; border-radius: 11px; background: rgba(255, 255, 255, .04); color: #b8c5bd; font-size: 10px; }
.preview-services i { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 8px; background: rgba(39, 196, 109, .11); color: #4bd58a; font-style: normal; }
.preview-services .ui-icon { width: 15px; height: 15px; }
.services-section { padding: 30px 0; border-bottom: 1px solid #e1e9e3; background: #f4f7f5; }
.services-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.service-card { min-height: 105px; padding: 17px; display: flex; align-items: flex-start; gap: 12px; border: 1px solid #dde6e0; border-radius: 15px; background: #fff; box-shadow: 0 3px 14px rgba(21, 39, 28, .04); }
.service-icon { width: 38px; height: 38px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 11px; background: #e8f6ed; color: #0c8044; }
.service-icon .ui-icon { width: 19px; height: 19px; }
.service-card h3 { margin: 1px 0 4px; font-size: 13px; }
.service-card p { margin: 0; color: #718077; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.how-section { background: #fff; }

/* Forms and feedback */
input, select, textarea {
  border-color: #d8e2db;
  background: #fff;
  color: #172019;
  box-shadow: inset 0 1px 1px rgba(17, 23, 19, .015);
}
input::placeholder, textarea::placeholder { color: #9aa59e; }
input:focus, select:focus, textarea:focus {
  border-color: #32a96b;
  box-shadow: 0 0 0 4px rgba(21, 154, 85, .09);
}
.password-field {
  position: relative;
  width: 100%;
  display: block;
}
.password-field > input { padding-inline-end: 54px; }
.password-field > input::-ms-reveal,
.password-field > input::-ms-clear { display: none; }
.password-visibility-toggle {
  position: absolute;
  z-index: 2;
  inset-inline-end: 8px;
  top: 50%;
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #000;
  opacity: 1;
  transform: translateY(-50%);
  transition: background-color 160ms ease, color 160ms ease, transform 160ms ease;
}
.password-visibility-toggle:hover { background: rgba(0, 0, 0, .065); }
.password-visibility-toggle:focus-visible { outline: 2px solid var(--brand-lime); outline-offset: 1px; }
.password-visibility-toggle:active { transform: translateY(-50%) scale(.94); }
.password-eye { width: 21px; height: 21px; display: block; }
.password-eye-hide { display: none; }
.password-visibility-toggle[aria-pressed="true"] .password-eye-show { display: none; }
.password-visibility-toggle[aria-pressed="true"] .password-eye-hide { display: block; }
.field-label { color: #526057; }
.select-wrap .field-symbol { background: #eaf5ee; color: #0c7e43; }
.estimate-result, .method-summary, .crypto-destination {
  border-color: #cbe5d5;
  background: #eff9f3;
}
.estimate-result strong, .method-summary b, .crypto-destination code, .break-code { color: #08773e; }
.verification-note { color: #657269; }
.alert { box-shadow: 0 2px 10px rgba(17, 23, 19, .025); }
.alert-success { border-color: #b9dfc7; background: #effaf3; color: #146438; }
.alert-danger { border-color: #efc7ca; background: #fff4f4; color: #aa2e35; }
.alert-warning { border-color: #ead6ab; background: #fff9eb; color: #805813; }
.alert-info { border-color: #bcded0; background: #eff8f4; color: #486057; }

/* Authentication */
.auth-page {
  background:
    radial-gradient(circle at 9% 14%, rgba(33, 185, 103, .09), transparent 24%),
    radial-gradient(circle at 91% 86%, rgba(15, 138, 75, .06), transparent 27%),
    #f5f8f6;
}
.auth-page::before {
  opacity: .36;
  background-image: linear-gradient(rgba(17, 23, 19, .025) 1px, transparent 1px), linear-gradient(90deg, rgba(17, 23, 19, .025) 1px, transparent 1px);
}
.auth-page-header { border-bottom-color: #dde6e0; background: rgba(255, 255, 255, .88); }
.auth-page-layout { grid-template-columns: minmax(330px, .82fr) minmax(540px, 1.18fr); gap: clamp(28px, 4vw, 58px); }
.auth-intro {
  position: relative;
  max-width: none;
  min-height: 555px;
  padding: clamp(34px, 4vw, 58px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  overflow: hidden;
  border: 1px solid #223128;
  border-radius: 26px;
  background: linear-gradient(145deg, #111a14, #0d1510);
  color: #fff;
  box-shadow: 0 28px 70px rgba(16, 30, 20, .14);
}
.auth-intro::after {
  content: "";
  position: absolute;
  width: 330px;
  height: 330px;
  inset-inline-end: -180px;
  bottom: -180px;
  border: 55px solid rgba(32, 185, 103, .1);
  border-radius: 50%;
}
.auth-intro-kicker { color: #55d78f; }
.auth-intro h1 { color: #fff; }
.auth-intro > p { color: #b5c3ba; }
.auth-intro-points span { color: #e4ebe6; }
.auth-intro-points i { background: rgba(46, 196, 113, .14); color: #56db92; }
.auth-surface {
  padding: 32px 36px 30px;
  border-color: #dce6df;
  background: #fff;
  box-shadow: 0 22px 65px rgba(21, 39, 28, .09);
}
.auth-heading h2 { color: #121914; }
.auth-tabs { background: #f0f4f1; }
.auth-tabs button.active { background: #fff; color: #151d17; box-shadow: 0 2px 8px rgba(17, 23, 19, .07), inset 0 -2px 0 var(--primary); }
.country-trigger { border-color: #d8e2db; background: #fff; color: #172019; }
.country-menu { border-color: #d6e1da; background: #fff; box-shadow: 0 18px 50px rgba(17, 35, 23, .14); }
.country-option { color: #1d2921; }
.country-option:hover, .country-option.selected { background: #edf7f1; }
.verification-card { border-color: #dce6df; background: #f7faf8; }

/* Dashboard shell */
.dashboard-page { background: var(--bg); }
.dashboard-shell { grid-template-columns: 282px minmax(0, 1fr); }
.dashboard-sidebar {
  padding: 22px 16px 16px;
  border-inline-end-color: #243128;
  background: var(--sidebar);
  color: #f4f8f5;
  box-shadow: 6px 0 30px rgba(17, 23, 19, .06);
}
[dir="rtl"] .dashboard-sidebar { box-shadow: -6px 0 30px rgba(17, 23, 19, .06); }
.dashboard-brand-row { padding: 0 8px 19px; border-bottom-color: #28352d; }
.dashboard-sidebar .brand-copy strong { color: #fff; }
.dashboard-sidebar .dashboard-badge {
  width: fit-content;
  margin-top: 11px;
  padding: 4px 9px;
  border: 1px solid rgba(68, 202, 128, .16);
  border-radius: 999px;
  background: rgba(33, 185, 103, .08);
  color: #74dba3;
  font-size: 10px;
  font-weight: 700;
}
.dashboard-sidebar .dashboard-badge.account-verification-badge {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 29px;
  margin: 11px auto 0;
  padding: 5px 10px;
  text-decoration: none;
  text-align: center;
  font-size: 11px;
  transition: border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.account-verification-icon {
  width: 16px;
  height: 16px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 16px;
}
.account-verification-icon .ui-icon { width: 16px; height: 16px; }
.dashboard-sidebar .dashboard-badge.account-verification-badge.is-unverified {
  border-color: rgba(114, 128, 120, .3);
  background: rgba(114, 128, 120, .09);
  color: #758079;
}
.dashboard-sidebar .dashboard-badge.account-verification-badge.is-verified {
  border-color: rgba(158, 241, 37, .55);
  background: rgba(158, 241, 37, .13);
  color: #5d9e1b;
  cursor: default;
  box-shadow: 0 0 16px rgba(126, 225, 28, .13);
}
.dashboard-sidebar .dashboard-badge.account-verification-badge.is-unverified:hover {
  border-color: rgba(114, 128, 120, .48);
  background: rgba(114, 128, 120, .13);
  color: #606c64;
}
.dashboard-sidebar .dashboard-nav { margin-top: 13px; gap: 3px; }
.dashboard-nav-section {
  margin: 16px 11px 6px;
  display: block;
  color: #718078;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .06em;
}
.dashboard-nav a {
  min-height: 44px;
  border-radius: 10px;
  color: #aebbb3;
  font-size: 13px;
}
.dashboard-nav a:hover { background: #18231c; color: #fff; }
.dashboard-nav a.active { border-color: transparent; background: linear-gradient(135deg, #159a55, #0d8146); color: #fff; box-shadow: 0 8px 22px rgba(5, 93, 48, .22); }
.dashboard-nav-icon { width: 30px; height: 30px; background: rgba(255, 255, 255, .045); color: #93a198; }
.dashboard-nav-icon .ui-icon { width: 18px; height: 18px; }
.dashboard-nav a.active .dashboard-nav-icon { background: rgba(255, 255, 255, .13); color: #fff; }
.dashboard-user-card { border-color: #29372e; background: #17211b; }
.dashboard-user-card b { color: #f6faf7; }
.dashboard-user-card small { color: #89988f; }
.dashboard-avatar { background: linear-gradient(145deg, #26b968, #0e8146); color: #fff; box-shadow: none; }
.dashboard-logout { color: #dba6a9; }
.dashboard-logout .ui-icon { width: 18px; height: 18px; }
.dashboard-logout:hover { background: rgba(213, 59, 67, .1); color: #ffbdc0; }

.dashboard-content { background: var(--bg); }
.dashboard-topbar {
  min-height: 82px;
  border-bottom-color: rgba(218, 227, 221, .95);
  background: rgba(255, 255, 255, .9);
  box-shadow: 0 1px 8px rgba(17, 23, 19, .025);
}
.dashboard-topbar-title h1 { color: #121914; font-size: 19px; }
.dashboard-menu-button { border-color: var(--border); background: #fff; }
.dashboard-menu-button span { background: #172019; }
.dashboard-topbar-actions .language-switch { min-height: 42px; }
.dashboard-topbar-actions .language-switch .ui-icon { width: 17px; height: 17px; color: #12894c; }
.topbar-user { min-height: 46px; padding: 4px 7px 4px 10px; display: flex; align-items: center; gap: 9px; border: 1px solid var(--border); border-radius: 13px; background: #fff; }
[dir="rtl"] .topbar-user { padding: 4px 10px 4px 7px; }
.topbar-user-copy { min-width: 0; display: grid; line-height: 1.25; }
.topbar-user-copy b { max-width: 155px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #1b251e; font-size: 12px; }
.topbar-user-copy small { margin-top: 3px; color: #7a867e; font-size: 10px; }
.dashboard-main { padding-top: 34px; }
.dashboard-page-heading { margin-bottom: 24px; align-items: center; }
.dashboard-page-heading h2 { color: #111713; font-size: clamp(27px, 3vw, 36px); }
.section-kicker { color: #128d4e; }

/* Dashboard content */
.dashboard-metrics { gap: 16px; }
.dashboard-metric {
  min-height: 150px;
  border-color: #dce5df;
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.dashboard-metric.balance-metric { border-color: #bcdcc8; background: linear-gradient(145deg, #eef9f2, #fff 68%); }
.dashboard-metric strong { color: #111713; }
.metric-head i { background: #eaf6ee; color: #0e8247; }
.metric-head i.amber { background: #fff6df; color: #b7791f; }
.dashboard-panel {
  border-color: #dce5df;
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.dashboard-panel-head h3 { color: #151d17; }
.quick-action { border-color: #e0e8e3; background: #fafcfb; color: #172019; }
.quick-action:hover { border-color: #b9dcc6; background: #f1f9f4; }
.quick-action-icon { background: #e5f5eb; color: #0c7d43; }
.quick-action-icon .ui-icon { width: 19px; height: 19px; }
.quick-action > .ui-icon { width: 17px; height: 17px; color: #159a55; }
[dir="rtl"] .quick-action > .ui-icon { transform: scaleX(-1); }
.metric-head i .ui-icon { width: 17px; height: 17px; }
.dashboard-empty-state { border-color: #cbd9d0; background: #f8fbf9; }
.toast { border-color: #b9dfc7; background: #fff; box-shadow: var(--shadow); }
.toast > span { color: #fff; }

.wallet-cards { gap: 16px; }
.wallet-card {
  position: relative;
  min-height: 144px;
  overflow: hidden;
  border-color: #dce5df;
  background: linear-gradient(145deg, #fff, #f7faf8);
  box-shadow: var(--shadow-soft);
}
.wallet-card::after {
  content: "";
  position: absolute;
  width: 100px;
  height: 100px;
  inset-inline-end: -45px;
  bottom: -48px;
  border: 19px solid rgba(21, 154, 85, .065);
  border-radius: 50%;
}
.wallet-card.primary-wallet {
  border-color: #1d2a22;
  background: linear-gradient(140deg, #152019, #0f1712);
  box-shadow: 0 15px 38px rgba(17, 30, 21, .14);
}
.wallet-card.primary-wallet::after { border-color: rgba(52, 202, 119, .12); }
.wallet-card > strong { position: relative; z-index: 1; color: #152019; }
.wallet-card.primary-wallet > strong { color: #fff; }
.wallet-card.primary-wallet > span, .wallet-card.primary-wallet small, .wallet-card.primary-wallet .metric-head { color: #a8b8ae; }
.wallet-chip { border-color: #dae4dd; background: #f5f9f6; color: #536158; }
.wallet-chip b, .wallet-balance-line { color: #08783f; }

.table-wrap { border: 1px solid #e2e9e4; border-radius: 12px; }
table { background: #fff; }
th, td { border-bottom-color: #e4ebe6; }
th { background: #f5f8f6; color: #68756c; }
tbody tr:hover { background: #f7faf8; }
tbody tr:last-child td { border-bottom: 0; }
.status-pending, .status-processing { background: #fff5d9; color: #8b620f; }
.status-accepted, .status-completed, .status-credit { background: #e8f7ed; color: #117441; }
.status-rejected, .status-debit, .status-suspended, .status-deleted { background: #fdebed; color: #b72f37; }
.money.credit { color: #08783f; }
.money.debit { color: #c5323a; }
.secret-code { border-color: #bcdfc9; background: #eff9f3; color: #086c39; }
.destination-fields { border-color: #dbe5de; background: #fbfdfc; }
.account-balance-box, .locked-field, .permission-card, .network-editor, .admin-customer-security-card {
  border-color: #dce5df;
  background: #f8faf9;
}
.permission-card:hover { border-color: #abd6bb; background: #f2f9f4; }
.role-badge, .permission-summary, .protected-account-note { background: #eff3f0; color: #58665d; }
.role-badge.protected { background: #e6f6ec; color: #0e7741; }
.all-permissions-note { border-color: #bde0ca; background: #eff9f3; color: #0d743f; }
.inline-editor { border-color: #cbd9d0; background: #fbfdfc; }
.remove-field { border-color: #efc8cb; background: #fff3f4; color: #bd3139; }
.danger-zone { border-color: #efc9cc; background: #fffafa; }
.danger-zone h3 { color: #b72f37; }
.account-balance-box strong, .wallet-adjustment summary, .inline-editor summary, .text-link, .auth-footer-note a { color: #087a40; }
.network-rate-row, .method-fields { border-color: #dbe5de; background: #fbfdfc; }
.crypto-destination code, .break-code { color: #086f3b; }

:focus-visible { outline-color: rgba(21, 154, 85, .48); }

@media (max-width: 980px) {
  .services-grid { grid-template-columns: 1fr 1fr; }
  .platform-preview { width: min(100%, 610px); margin-inline: auto; }
  .auth-page-layout { width: min(calc(100% - 40px), 720px); grid-template-columns: 1fr; }
  .auth-intro { display: none; }
  .dashboard-shell { display: block; }
  .dashboard-sidebar {
    position: fixed;
    inset-block: 0;
    inset-inline-start: 0;
    width: 282px;
    height: 100vh;
    transform: translateX(110%);
    box-shadow: 0 0 70px rgba(0, 0, 0, .26);
  }
  [dir="ltr"] .dashboard-sidebar { transform: translateX(-110%); }
  .dashboard-sidebar.open { transform: translateX(0); }
  .dashboard-menu-button { display: block; }
  .dashboard-backdrop { background: rgba(10, 18, 13, .5); }
  /* Keep the menu control above the drawer and leave room for wrapped header content. */
  body.dashboard-menu-open .dashboard-topbar { z-index: 80; }
  .dashboard-sidebar {
    inset-block-start: var(--dashboard-topbar-height, 82px);
    height: calc(100vh - var(--dashboard-topbar-height, 82px));
    height: calc(100dvh - var(--dashboard-topbar-height, 82px));
  }
  .dashboard-backdrop { inset-block-start: var(--dashboard-topbar-height, 82px); }
}

@media (max-width: 760px) {
  .hero { padding: 64px 0 70px; }
  .dashboard-main { padding: 26px 18px 42px; }
  .dashboard-topbar { padding-inline: 18px; }
  .dashboard-metrics, .admin-metrics { grid-template-columns: 1fr 1fr; }
  .dashboard-grid, .admin-dashboard-grid, .detail-grid { grid-template-columns: 1fr; }
  .filter-bar { grid-template-columns: 1fr; }
  .table-wrap { border-radius: 10px; }
}

@media (max-width: 520px) {
  .services-grid { grid-template-columns: 1fr; }
  .preview-wallet-row, .preview-services { grid-template-columns: 1fr; }
  .platform-preview { padding: 13px; border-radius: 20px; }
  .auth-surface { padding: 24px 18px; }
  .topbar-user-copy { display: none; }
  .topbar-user { padding: 3px; border: 0; background: transparent; }
  .dashboard-page-heading { align-items: stretch; flex-direction: column; }
  .dashboard-page-heading .button { width: 100%; }
  .dashboard-metrics, .admin-metrics { grid-template-columns: 1fr; }
  .dashboard-panel, .dashboard-metric, .wallet-card { border-radius: 14px; }
  .dashboard-panel { padding: 16px; }
  .account-form-grid, .permissions-grid, .admin-form-grid, .wallet-adjustment-form { grid-template-columns: 1fr; }
}

/* Theme control */
html, body { overflow-x: hidden; }
.theme-toggle {
  min-height: 42px;
  padding: 0 13px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  color: #253028;
  box-shadow: 0 1px 2px rgba(17, 23, 19, .025);
  font-size: 13px;
  font-weight: 700;
}
.theme-toggle:hover { border-color: #b7c9bd; background: #f8fbf9; }
.theme-icon { width: 17px; height: 17px; color: #13894c; }
.theme-icon-moon { display: none; }
[data-theme="dark"] .theme-icon-sun { display: none; }
[data-theme="dark"] .theme-icon-moon { display: block; }

/* Customer dashboard — rebuilt layout */
.dashboard-content { min-width: 0; overflow-x: hidden; }
.customer-overview {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr);
  gap: 16px;
}
.balance-hero {
  position: relative;
  min-height: 265px;
  padding: clamp(24px, 3vw, 34px);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  border: 1px solid #176a42;
  border-radius: 22px;
  background:
    radial-gradient(circle at 8% 12%, rgba(100, 234, 159, .22), transparent 30%),
    linear-gradient(135deg, #148c50, #0a5633 74%);
  color: #fff;
  box-shadow: 0 20px 50px rgba(13, 111, 61, .18);
}
.balance-hero::before, .balance-hero::after {
  content: "";
  position: absolute;
  border: 1px solid rgba(255, 255, 255, .09);
  border-radius: 50%;
}
.balance-hero::before { width: 310px; height: 310px; inset-inline-end: -145px; top: -175px; }
.balance-hero::after { width: 210px; height: 210px; inset-inline-end: -90px; top: -120px; }
.balance-hero-head, .balance-hero-footer { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.balance-hero-label { min-width: 0; display: flex; align-items: center; gap: 8px; color: #c7ead5; font-size: 11px; }
.balance-hero-label .metric-dot { flex-shrink: 0; }
.balance-hero-head small { color: #bce8ce; font-size: 11px; }
.balance-hero-head b { font-size: 15px; }
.balance-currency { padding: 6px 10px; border: 1px solid rgba(255, 255, 255, .16); border-radius: 999px; background: rgba(255, 255, 255, .1); font-size: 11px; font-weight: 800; }
.balance-hero-amount { position: relative; z-index: 1; margin: 24px 0; direction: ltr; text-align: start; font-size: clamp(36px, 5vw, 54px); line-height: 1; letter-spacing: -.035em; }
.balance-hero-footer { justify-content: flex-end; }
.balance-hero-footer > div { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.balance-hero-footer a { min-height: 38px; padding: 7px 11px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid rgba(255, 255, 255, .13); border-radius: 10px; background: rgba(255, 255, 255, .09); color: #fff; font-size: 11px; font-weight: 700; }
.balance-hero-footer a:hover { background: rgba(255, 255, 255, .16); }
.balance-hero-footer .ui-icon { width: 15px; height: 15px; }
.wallet-overview-panel {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.wallet-overview-panel > header { margin-bottom: 14px; padding-bottom: 13px; display: flex; align-items: center; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--border); }
.wallet-overview-panel h3, .customer-section-head h3 { margin: 2px 0 0; font-size: 17px; }
.wallet-count { width: 31px; height: 31px; display: grid; place-items: center; border-radius: 9px; background: #e8f6ed; color: #0b7c42; font-size: 12px; font-weight: 800; }
.wallet-overview-list { display: grid; gap: 14px; }
.wallet-overview-item { min-width: 0; min-height: 78px; padding: 10px 12px; display: grid; grid-template-columns: 38px minmax(0, 1fr) 68px; align-items: center; gap: 10px; border-radius: 11px; background: #f7faf8; }
.wallet-code { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid #d8e7dd; border-radius: 10px; background: #fff; color: #0c7d43; font-size: 10px; font-weight: 850; }
.wallet-overview-item > span:nth-child(2) { min-width: 0; }
.wallet-overview-item b, .wallet-overview-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.wallet-overview-item b { font-size: 12px; }
.wallet-overview-item small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.wallet-overview-item strong { direction: ltr; font-size: 12px; white-space: nowrap; }
.wallet-overview-balance { width: 100%; min-width: 0; display: grid; grid-column: auto; align-self: center; justify-self: center; place-items: center; gap: 0; line-height: 1; font-variant-numeric: tabular-nums; }
.wallet-overview-balance > span { max-width: 100%; overflow: hidden; font-size: 18px; text-overflow: ellipsis; }
.customer-stat-grid { margin-top: 16px; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.customer-stat-card { min-height: 96px; padding: 17px; display: flex; align-items: center; gap: 13px; border: 1px solid var(--border); border-radius: 16px; background: #fff; box-shadow: var(--shadow-soft); }
.customer-stat-icon { width: 44px; height: 44px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 13px; }
.customer-stat-icon .ui-icon { width: 20px; height: 20px; }
.customer-stat-icon.amber { background: #fff4d9; color: #a66b0b; }
.customer-stat-icon.green { background: #e5f6ec; color: #0c7d43; }
.customer-stat-icon.violet { background: #f0eafa; color: #7247af; }
.customer-stat-icon.blue { background: #e8f2ff; color: #2869a8; }
.customer-stat-icon.slate { background: #edf0ee; color: #5f6a63; }
.customer-stat-card > span:last-child { display: grid; gap: 5px; }
.customer-stat-card small { color: var(--muted); font-size: 11px; }
.customer-stat-card strong { color: var(--text); font-size: 24px; line-height: 1; }
.customer-section { margin-top: 24px; }
.customer-section-head { margin-bottom: 12px; display: flex; align-items: end; justify-content: space-between; }
.customer-movement-report .customer-stat-grid { margin-top: 0; }
.customer-action-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.customer-action-card { min-width: 0; min-height: 112px; padding: 16px; display: grid; grid-template-columns: 42px minmax(0, 1fr) auto; align-items: center; gap: 11px; border: 1px solid var(--border); border-radius: 16px; background: #fff; box-shadow: var(--shadow-soft); color: var(--text); }
.customer-action-card:hover { border-color: #abd7bb; transform: translateY(-2px); box-shadow: 0 12px 28px rgba(21, 85, 47, .08); }
.customer-action-icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: #e7f6ed; color: #0c7d43; }
.customer-action-icon .ui-icon { width: 19px; height: 19px; }
.customer-action-card > span:nth-child(2) { min-width: 0; }
.customer-action-card b, .customer-action-card small { display: block; }
.customer-action-card b { font-size: 12px; }
.customer-action-card small { margin-top: 4px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.customer-action-card > .ui-icon { width: 15px; height: 15px; color: #169454; }
[dir="rtl"] .customer-action-card > .ui-icon { transform: scaleX(-1); }
.customer-data-grid { margin-top: 24px; display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 16px; }
.customer-data-grid .dashboard-panel { min-width: 0; }

/* Complete dark appearance */
html[data-theme="dark"] {
  color-scheme: dark;
  --bg: #0b100d;
  --surface: #121914;
  --surface-2: #172019;
  --surface-3: #1d2921;
  --text: #edf4ef;
  --muted: #91a097;
  --border: #29372f;
  --primary: #37c879;
  --primary-strong: #1aa35c;
  --primary-soft: rgba(55, 200, 121, .11);
  --shadow: 0 18px 50px rgba(0, 0, 0, .22);
  --shadow-soft: 0 5px 20px rgba(0, 0, 0, .15);
}
[data-theme="dark"] body, [data-theme="dark"] .dashboard-page, [data-theme="dark"] .dashboard-content { background: var(--bg); color: var(--text); }
[data-theme="dark"] .site-header, [data-theme="dark"] .auth-page-header, [data-theme="dark"] .dashboard-topbar { border-color: #26342c; background: rgba(14, 20, 16, .91); box-shadow: 0 1px 0 rgba(255, 255, 255, .015); }
[data-theme="dark"] .brand-copy strong, [data-theme="dark"] .dashboard-topbar-title h1, [data-theme="dark"] .dashboard-page-heading h2, [data-theme="dark"] .auth-heading h2, [data-theme="dark"] .dashboard-panel-head h3, [data-theme="dark"] .customer-stat-card strong, [data-theme="dark"] .customer-action-card { color: var(--text); }
[data-theme="dark"] .language-switch, [data-theme="dark"] .theme-toggle, [data-theme="dark"] .button-secondary, [data-theme="dark"] .button-ghost { border-color: #2a3930; background: #141c17; color: #e4ece7; box-shadow: none; }
[data-theme="dark"] .language-switch:hover, [data-theme="dark"] .theme-toggle:hover, [data-theme="dark"] .button-secondary:hover, [data-theme="dark"] .button-ghost:hover { border-color: #3b5143; background: #19241d; }
[data-theme="dark"] .hero { border-bottom-color: #25332b; background: radial-gradient(circle at 12% 15%, rgba(37, 187, 104, .13), transparent 29%), radial-gradient(circle at 88% 80%, rgba(21, 154, 85, .08), transparent 33%), linear-gradient(180deg, #101713, #0b100d); }
[data-theme="dark"] .hero::before, [data-theme="dark"] .auth-page::before { opacity: .18; background-image: linear-gradient(rgba(255, 255, 255, .04) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .04) 1px, transparent 1px); }
[data-theme="dark"] .hero h1, [data-theme="dark"] .section-heading h2, [data-theme="dark"] .step-card h3, [data-theme="dark"] .service-card h3 { color: #f1f7f3; }
[data-theme="dark"] .hero-description, [data-theme="dark"] .trust-row, [data-theme="dark"] .section-heading p, [data-theme="dark"] .step-card p, [data-theme="dark"] .service-card p { color: #93a299; }
[data-theme="dark"] .eyebrow { border-color: rgba(55, 200, 121, .2); background: rgba(55, 200, 121, .09); }
[data-theme="dark"] .services-section, [data-theme="dark"] .section, [data-theme="dark"] .how-section { border-color: #25332b; background: #0d130f; }
[data-theme="dark"] .service-card, [data-theme="dark"] .step-card, [data-theme="dark"] .calculator-card { border-color: #29372f; background: #141c17; box-shadow: var(--shadow-soft); }
[data-theme="dark"] .step-card.featured { border-color: rgba(55, 200, 121, .28); background: linear-gradient(145deg, rgba(55, 200, 121, .1), #141c17 65%); }
[data-theme="dark"] .step-number { color: rgba(255, 255, 255, .055); }
[data-theme="dark"] .service-icon, [data-theme="dark"] .step-icon, [data-theme="dark"] .quick-action-icon, [data-theme="dark"] .metric-head i { background: rgba(55, 200, 121, .11); color: #55d891; }
[data-theme="dark"] .metric-head i.amber, [data-theme="dark"] .customer-stat-icon.amber { background: rgba(224, 167, 59, .12); color: #e5bd67; }
[data-theme="dark"] .customer-stat-icon.green { background: rgba(55, 200, 121, .11); color: #55d891; }
[data-theme="dark"] .customer-stat-icon.violet { background: rgba(147, 106, 211, .13); color: #b995eb; }
[data-theme="dark"] .customer-stat-icon.blue { background: rgba(90, 158, 226, .12); color: #87bdf1; }
[data-theme="dark"] .customer-stat-icon.slate { background: rgba(195, 205, 199, .1); color: #c7d0ca; }
[data-theme="dark"] input, [data-theme="dark"] select, [data-theme="dark"] textarea, [data-theme="dark"] .country-trigger { border-color: #2c3b32; background: #101712; color: #edf4ef; }
[data-theme="dark"] input::placeholder, [data-theme="dark"] textarea::placeholder { color: #65736a; }
[data-theme="dark"] .password-visibility-toggle { color: #fff; }
[data-theme="dark"] .password-visibility-toggle:hover { background: rgba(255, 255, 255, .09); }
[data-theme="dark"] .field-label { color: #a1aea6; }
[data-theme="dark"] .country-menu, [data-theme="dark"] .auth-surface { border-color: #29372f; background: #141c17; box-shadow: var(--shadow); }
[data-theme="dark"] .country-option { color: #e8efea; }
[data-theme="dark"] .country-option:hover, [data-theme="dark"] .country-option.selected, [data-theme="dark"] .auth-tabs { background: #1b2720; }
[data-theme="dark"] .auth-tabs button.active { background: #253229; color: #fff; box-shadow: inset 0 -2px 0 var(--primary); }
[data-theme="dark"] .auth-page { background: radial-gradient(circle at 9% 14%, rgba(33, 185, 103, .09), transparent 24%), #0b100d; }
[data-theme="dark"] .verification-card, [data-theme="dark"] .destination-fields, [data-theme="dark"] .network-rate-row, [data-theme="dark"] .method-fields { border-color: #2b3931; background: #101712; }
[data-theme="dark"] .dashboard-sidebar { border-color: #1d2921; background: #080d0a; }
[data-theme="dark"] .dashboard-menu-button, [data-theme="dark"] .topbar-user { border-color: #2a3930; background: #141c17; }
[data-theme="dark"] .dashboard-menu-button span { background: #e4ece7; }
[data-theme="dark"] .topbar-user-copy b { color: #edf4ef; }
[data-theme="dark"] .dashboard-panel, [data-theme="dark"] .dashboard-metric, [data-theme="dark"] .wallet-overview-panel, [data-theme="dark"] .customer-stat-card, [data-theme="dark"] .customer-action-card { border-color: #29372f; background: #121914; box-shadow: var(--shadow-soft); }
[data-theme="dark"] .dashboard-metric.balance-metric { border-color: #28533a; background: linear-gradient(145deg, rgba(55, 200, 121, .09), #121914 70%); }
[data-theme="dark"] .dashboard-metric strong, [data-theme="dark"] .wallet-card > strong { color: #eef5f0; }
[data-theme="dark"] .wallet-card { border-color: #29372f; background: linear-gradient(145deg, #141c17, #101712); box-shadow: var(--shadow-soft); }
[data-theme="dark"] .wallet-card.primary-wallet { border-color: #276341; background: linear-gradient(140deg, #11613b, #0b3f28); }
[data-theme="dark"] .wallet-overview-panel > header { border-color: #29372f; }
[data-theme="dark"] .wallet-overview-item { background: #172019; }
[data-theme="dark"] .wallet-code { border-color: #304037; background: #101712; color: #52d28c; }
[data-theme="dark"] .wallet-count, [data-theme="dark"] .customer-action-icon { background: rgba(55, 200, 121, .11); color: #52d28c; }
[data-theme="dark"] .customer-action-card:hover { border-color: #356c4b; background: #16211a; }
[data-theme="dark"] .quick-action, [data-theme="dark"] .dashboard-empty-state { border-color: #2b3931; background: #151e18; color: #e8efea; }
[data-theme="dark"] .quick-action:hover { border-color: #39614a; background: #19241d; }
[data-theme="dark"] .table-wrap { border-color: #29372f; }
[data-theme="dark"] table { background: #121914; }
[data-theme="dark"] th { border-color: #29372f; background: #172019; color: #9aa89f; }
[data-theme="dark"] td { border-color: #26342c; }
[data-theme="dark"] tbody tr:hover { background: #162019; }
[data-theme="dark"] .account-balance-box, [data-theme="dark"] .locked-field, [data-theme="dark"] .permission-card, [data-theme="dark"] .network-editor, [data-theme="dark"] .inline-editor, [data-theme="dark"] .admin-customer-security-card { border-color: #2b3931; background: #101712; }
[data-theme="dark"] .wallet-chip, [data-theme="dark"] .role-badge, [data-theme="dark"] .permission-summary, [data-theme="dark"] .protected-account-note { border-color: #2b3931; background: #1a241e; color: #9aa89f; }
[data-theme="dark"] .role-badge.protected { background: rgba(55, 200, 121, .11); color: #55d891; }
[data-theme="dark"] .button-danger, [data-theme="dark"] .remove-field { border-color: #60343a; background: #2a1518; color: #f1a9ae; }
[data-theme="dark"] .danger-zone { border-color: #603238; background: #1d1214; }
[data-theme="dark"] .alert-success { border-color: #285d3e; background: #10281b; color: #9ee6bc; }
[data-theme="dark"] .alert-danger { border-color: #65343a; background: #2a1518; color: #f1a9ae; }
[data-theme="dark"] .alert-warning { border-color: #5b4826; background: #251e11; color: #ebce8b; }
[data-theme="dark"] .alert-info, [data-theme="dark"] .estimate-result, [data-theme="dark"] .method-summary, [data-theme="dark"] .crypto-destination, [data-theme="dark"] .all-permissions-note { border-color: #28543b; background: #102419; color: #a7c7b4; }
[data-theme="dark"] .secret-code { border-color: #28543b; background: #0d1d14; color: #74dca1; }

@media (max-width: 1180px) {
  .customer-overview { grid-template-columns: minmax(0, 1fr); }
  .customer-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .customer-action-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
  .customer-overview, .customer-data-grid { grid-template-columns: minmax(0, 1fr); }
  .customer-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
  .customer-stat-card { padding: 12px; }
  .customer-stat-icon { width: 38px; height: 38px; }
  .customer-action-grid { grid-template-columns: minmax(0, 1fr); }
  .header-actions .theme-toggle span, .auth-page-actions .theme-toggle span { display: none; }
  .header-actions .theme-toggle, .auth-page-actions .theme-toggle { width: 42px; padding: 0; }
}

@media (max-width: 520px) {
  .header-actions .language-switch span { display: none; }
  .header-actions .language-switch { width: 40px; padding: 0; }
  .dashboard-topbar-actions .theme-toggle span, .dashboard-topbar-actions .language-switch span { display: none; }
  .dashboard-topbar-actions .theme-toggle, .dashboard-topbar-actions .language-switch { width: 40px; padding: 0; }
  .auth-page-actions .language-switch > span { display: none; }
  .auth-page-actions .language-switch { width: 40px; padding: 0; }
  .balance-hero { min-height: 290px; padding: 22px 18px; border-radius: 18px; }
  .balance-hero-footer { align-items: flex-start; flex-direction: column; }
  .balance-hero-footer > div { width: 100%; }
  .balance-hero-footer a { flex: 1; justify-content: center; }
  .customer-stat-grid { grid-template-columns: minmax(0, 1fr); }
  .customer-stat-card { min-height: 82px; }
  .wallet-overview-item { grid-template-columns: 38px minmax(0, 1fr) 64px; }
}

/* --------------------------------------------------------------------------
   Official SmartGift Cash identity — sampled from the approved logo
   -------------------------------------------------------------------------- */
:root {
  --brand-black: #050703;
  --brand-ink: #10150c;
  --brand-green-deep: #2c5910;
  --brand-green: #6edc15;
  --brand-lime: #9ef125;
  --brand-lime-soft: #b8df48;
  --brand-silver: #ededed;
  --primary: #4b9418;
  --primary-strong: #2c5910;
  --primary-soft: rgba(110, 220, 21, .11);
  --bg: #f6f8f2;
  --surface-2: #f8faf5;
  --surface-3: #edf3e7;
  --border: #dce4d5;
  --sidebar: #ffffff;
}

::selection { background: rgba(158, 241, 37, .34); color: #17220d; }

.brand-logo {
  width: 50px;
  height: 50px;
  flex: 0 0 auto;
  object-fit: cover;
  border: .5px solid rgba(195, 255, 77, .46);
  border-radius: 50%;
  background: var(--brand-black);
  box-shadow: 0 0 10px rgba(158, 241, 37, .16), 0 4px 14px rgba(0, 0, 0, .12);
}
.dashboard-sidebar .brand-logo { width: 54px; height: 54px; box-shadow: 0 0 12px rgba(158, 241, 37, .18); }
.auth-logo { width: 78px; height: 78px; margin-bottom: 17px; box-shadow: 0 0 14px rgba(158, 241, 37, .16); }
.auth-intro-logo { width: 118px; height: 118px; margin-bottom: 24px; box-shadow: 0 0 18px rgba(158, 241, 37, .18); }
.preview-logo { width: 32px; height: 32px; border-color: rgba(195, 255, 77, .42); box-shadow: 0 0 8px rgba(158, 241, 37, .14); }
.brand-copy span, .section-kicker, .eyebrow, .auth-intro-kicker { color: var(--primary); }
.language-icon, .theme-icon, .dashboard-topbar-actions .language-switch .ui-icon { color: var(--primary); }

.button-primary {
  border-color: #86d91c;
  background: linear-gradient(135deg, var(--brand-lime-soft), var(--brand-green));
  color: #081004;
  box-shadow: 0 10px 26px rgba(91, 159, 23, .24);
}
.button-primary:hover { background: linear-gradient(135deg, #c5ed58, #86e91b); }
.button-dark { background: var(--brand-black); color: #fff; }
input:focus, select:focus, textarea:focus {
  border-color: #73bd23;
  box-shadow: 0 0 0 4px rgba(158, 241, 37, .16);
}
:focus-visible { outline-color: rgba(91, 159, 23, .62); }
.text-button, .text-link, .auth-footer-note a,
.account-balance-box strong, .wallet-adjustment summary, .inline-editor summary,
.wallet-chip b, .wallet-balance-line, .money.credit { color: #467f19; }

.site-header, .auth-page-header {
  border-bottom-color: #dce5d3;
  background: rgba(255, 255, 255, .92);
}
.hero {
  border-bottom-color: #dfe7d7;
  background:
    radial-gradient(circle at 12% 15%, rgba(158, 241, 37, .18), transparent 30%),
    radial-gradient(circle at 88% 80%, rgba(110, 220, 21, .1), transparent 34%),
    linear-gradient(180deg, #fcfdf9, #f3f7ed);
}
.hero-glow-one { background: radial-gradient(circle, rgba(158, 241, 37, .17), transparent 68%); }
.hero-glow-two { background: radial-gradient(circle, rgba(110, 220, 21, .11), transparent 68%); }
.eyebrow { border-color: rgba(91, 159, 23, .24); background: rgba(158, 241, 37, .1); }
.live-dot, .preview-status i { background: var(--brand-lime); box-shadow: 0 0 0 5px rgba(158, 241, 37, .12); }
.hero h1 em { color: #4b9418; }
.trust-row i, .service-icon, .step-icon, .quick-action-icon, .metric-head i,
.customer-action-icon, .wallet-count {
  background: rgba(158, 241, 37, .14);
  color: #467f19;
}
.step-card.featured { border-color: rgba(91, 159, 23, .32); background: linear-gradient(145deg, rgba(158, 241, 37, .1), #fff 64%); }
.services-section { border-bottom-color: #dfe7d8; background: #f5f8f1; }
.service-card { border-color: #dce5d5; }

.platform-preview {
  border-color: #31431d;
  background: linear-gradient(145deg, #0c1008, var(--brand-black));
  box-shadow: 0 32px 80px rgba(16, 26, 8, .22), 0 0 0 1px rgba(158, 241, 37, .04) inset;
}
.platform-preview::before { background: rgba(158, 241, 37, .14); }
.preview-balance {
  border-color: rgba(158, 241, 37, .34);
  background:
    radial-gradient(circle at 85% 18%, rgba(158, 241, 37, .2), transparent 34%),
    linear-gradient(135deg, #173008, #050703 78%);
  box-shadow: inset 0 -1px 0 rgba(158, 241, 37, .12);
}
.preview-balance span, .preview-balance small { color: #cfe6b8; }
.preview-wallet-row > div { border-color: #29361e; background: #11170d; }
.preview-services > span { color: #c6d0be; }
.preview-services i { background: rgba(158, 241, 37, .1); color: var(--brand-lime); }

.auth-page {
  background:
    radial-gradient(circle at 9% 14%, rgba(158, 241, 37, .12), transparent 25%),
    radial-gradient(circle at 91% 86%, rgba(110, 220, 21, .07), transparent 28%),
    #f6f8f2;
}
.auth-intro {
  border-color: #31421f;
  background:
    radial-gradient(circle at 88% 14%, rgba(158, 241, 37, .13), transparent 31%),
    linear-gradient(145deg, #0d1209, #050703);
  box-shadow: 0 28px 70px rgba(16, 27, 8, .17);
}
.auth-intro::after { border-color: rgba(158, 241, 37, .1); }
.auth-intro-kicker, .auth-intro-points i { color: var(--brand-lime); }
.auth-intro-points i { background: rgba(158, 241, 37, .11); }
.country-option:hover, .country-option.selected { background: rgba(158, 241, 37, .1); }
.auth-tabs button.active { box-shadow: 0 2px 8px rgba(17, 23, 19, .07), inset 0 -2px 0 #6edc15; }

.dashboard-sidebar {
  border-inline-end-color: #d9e3d2;
  background:
    radial-gradient(circle at 50% 0, rgba(158, 241, 37, .11), transparent 26%),
    var(--sidebar);
  color: var(--text);
  box-shadow: 6px 0 30px rgba(32, 54, 18, .07);
}
.dashboard-brand-row { border-bottom-color: #dce5d5; }
.dashboard-sidebar .brand-copy strong { color: #10150c; }
.dashboard-sidebar .brand-copy span { color: #4b9418; }
.dashboard-sidebar .dashboard-badge {
  border-color: rgba(91, 159, 23, .27);
  background: rgba(158, 241, 37, .12);
  color: #467f19;
}
.dashboard-nav-section { color: #78856f; }
.dashboard-nav a { color: #465142; }
.dashboard-nav a:hover { background: #f0f5ea; color: #10150c; }
.dashboard-nav a.active {
  border-color: rgba(184, 223, 72, .6);
  background: linear-gradient(135deg, var(--brand-lime-soft), var(--brand-green));
  color: #071003;
  box-shadow: 0 8px 24px rgba(110, 220, 21, .18);
}
.dashboard-nav-icon { background: #edf3e7; color: #65735d; }
.dashboard-nav a.active .dashboard-nav-icon { background: rgba(5, 7, 3, .11); color: #071003; }
.dashboard-user-card { border-color: #dce5d5; background: #f7faf4; }
.dashboard-user-card b { color: #151b12; }
.dashboard-user-card small { color: #74806e; }
.dashboard-avatar {
  background: linear-gradient(145deg, var(--brand-lime-soft), var(--brand-green));
  color: #071003;
}

.dashboard-topbar { border-bottom-color: #dce5d3; }
.dashboard-metric.balance-metric {
  border-color: rgba(91, 159, 23, .35);
  background: linear-gradient(145deg, rgba(158, 241, 37, .11), #fff 68%);
}
.wallet-card::after { border-color: rgba(110, 220, 21, .08); }
.wallet-card.primary-wallet {
  border-color: #39531f;
  background:
    radial-gradient(circle at 85% 14%, rgba(158, 241, 37, .14), transparent 32%),
    linear-gradient(140deg, #111b0a, var(--brand-black));
}
.wallet-card.primary-wallet::after { border-color: rgba(158, 241, 37, .14); }
.wallet-code { border-color: #d9e5ce; color: #467f19; }
.customer-stat-icon.green { background: rgba(158, 241, 37, .14); color: #467f19; }
.customer-action-card:hover, .quick-action:hover { border-color: rgba(91, 159, 23, .4); }
.customer-action-card > .ui-icon, .quick-action > .ui-icon { color: #4b9418; }
.role-badge.protected, .status-accepted, .status-completed, .status-credit {
  background: rgba(158, 241, 37, .14);
  color: #3f7317;
}
.secret-code, .all-permissions-note, .estimate-result, .method-summary, .crypto-destination {
  border-color: rgba(91, 159, 23, .3);
  background: rgba(158, 241, 37, .09);
}
.secret-code,
.estimate-result strong,
.method-summary b,
.crypto-destination code,
.break-code,
.select-wrap .field-symbol { color: #467f19; }

.balance-hero {
  border-color: #4f721f;
  background:
    radial-gradient(circle at 8% 12%, rgba(158, 241, 37, .23), transparent 31%),
    linear-gradient(135deg, #182b0c, #050703 76%);
  box-shadow: 0 20px 50px rgba(30, 55, 11, .22), inset 0 -1px 0 rgba(158, 241, 37, .12);
}
.balance-hero-head small, .balance-hero-label { color: #c9dfaF; }
.balance-currency { border-color: rgba(158, 241, 37, .24); background: rgba(158, 241, 37, .09); color: var(--brand-lime-soft); }
.balance-hero-footer a { border-color: rgba(158, 241, 37, .18); background: rgba(158, 241, 37, .07); }
.balance-hero-footer a:hover { background: rgba(158, 241, 37, .14); }

html[data-theme="dark"] {
  --bg: #070905;
  --surface: #10150c;
  --surface-2: #151c10;
  --surface-3: #1b2514;
  --text: #f1f3ef;
  --muted: #9da995;
  --border: #2b3820;
  --primary: #9ef125;
  --primary-strong: #6edc15;
  --primary-soft: rgba(158, 241, 37, .1);
}
[data-theme="dark"] .site-header,
[data-theme="dark"] .auth-page-header,
[data-theme="dark"] .dashboard-topbar { border-color: #28351d; background: rgba(7, 9, 5, .92); }
[data-theme="dark"] .brand-copy span,
[data-theme="dark"] .section-kicker,
[data-theme="dark"] .eyebrow,
[data-theme="dark"] .auth-intro-kicker,
[data-theme="dark"] .theme-icon,
[data-theme="dark"] .language-icon,
[data-theme="dark"] .dashboard-topbar-actions .language-switch .ui-icon { color: var(--brand-lime); }
[data-theme="dark"] .hero {
  border-color: #27331d;
  background:
    radial-gradient(circle at 12% 15%, rgba(158, 241, 37, .13), transparent 30%),
    radial-gradient(circle at 88% 80%, rgba(110, 220, 21, .08), transparent 34%),
    linear-gradient(180deg, #0d1109, #070905);
}
[data-theme="dark"] .eyebrow { border-color: rgba(158, 241, 37, .22); background: rgba(158, 241, 37, .08); }
[data-theme="dark"] .service-icon,
[data-theme="dark"] .step-icon,
[data-theme="dark"] .quick-action-icon,
[data-theme="dark"] .metric-head i,
[data-theme="dark"] .customer-stat-icon.green,
[data-theme="dark"] .customer-action-icon,
[data-theme="dark"] .wallet-count {
  background: rgba(158, 241, 37, .1);
  color: var(--brand-lime);
}
[data-theme="dark"] .step-card.featured,
[data-theme="dark"] .dashboard-metric.balance-metric { border-color: rgba(158, 241, 37, .27); background: linear-gradient(145deg, rgba(158, 241, 37, .08), #10150c 67%); }
[data-theme="dark"] input:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus { border-color: #6edc15; box-shadow: 0 0 0 4px rgba(158, 241, 37, .12); }
[data-theme="dark"] .dashboard-sidebar {
  border-color: #26321b;
  background: radial-gradient(circle at 50% 0, rgba(158, 241, 37, .055), transparent 25%), #050703;
  color: var(--text);
}
[data-theme="dark"] .dashboard-brand-row { border-bottom-color: #26321c; }
[data-theme="dark"] .dashboard-sidebar .brand-copy strong { color: #fff; }
[data-theme="dark"] .dashboard-sidebar .brand-copy span { color: var(--brand-lime); }
[data-theme="dark"] .dashboard-sidebar .dashboard-badge {
  border-color: rgba(158, 241, 37, .25);
  background: rgba(158, 241, 37, .08);
  color: var(--brand-lime-soft);
}
[data-theme="dark"] .dashboard-sidebar .dashboard-badge.account-verification-badge.is-unverified {
  border-color: rgba(170, 184, 174, .25);
  background: rgba(170, 184, 174, .07);
  color: #aab8ae;
}
[data-theme="dark"] .dashboard-sidebar .dashboard-badge.account-verification-badge.is-unverified:hover {
  border-color: rgba(170, 184, 174, .4);
  background: rgba(170, 184, 174, .11);
  color: #c2ccc5;
}
[data-theme="dark"] .dashboard-sidebar .dashboard-badge.account-verification-badge.is-verified {
  border-color: rgba(158, 241, 37, .55);
  background: rgba(158, 241, 37, .12);
  color: var(--brand-lime);
  box-shadow: 0 0 17px rgba(158, 241, 37, .16);
}
[data-theme="dark"] .dashboard-nav-section { color: #829072; }
[data-theme="dark"] .dashboard-nav a { color: #b9c4b2; }
[data-theme="dark"] .dashboard-nav a:hover { background: #151d0f; color: #fff; }
[data-theme="dark"] .dashboard-nav-icon { background: rgba(237, 237, 237, .055); color: #9ca993; }
[data-theme="dark"] .dashboard-user-card { border-color: #2c391f; background: #11170d; }
[data-theme="dark"] .dashboard-user-card b { color: #f6faf7; }
[data-theme="dark"] .dashboard-user-card small { color: #89988f; }
[data-theme="dark"] .dashboard-nav a.active {
  border-color: rgba(184, 223, 72, .6);
  background: linear-gradient(135deg, var(--brand-lime-soft), var(--brand-green));
  color: #071003;
}
[data-theme="dark"] .dashboard-nav a.active .dashboard-nav-icon { background: rgba(5, 7, 3, .11); color: #071003; }
[data-theme="dark"] .dashboard-avatar { background: linear-gradient(145deg, var(--brand-lime-soft), var(--brand-green)); color: #071003; }
[data-theme="dark"] .wallet-card.primary-wallet {
  border-color: #405b22;
  background: radial-gradient(circle at 85% 14%, rgba(158, 241, 37, .14), transparent 32%), linear-gradient(140deg, #111b0a, #050703);
}
[data-theme="dark"] .wallet-code { border-color: #354524; color: var(--brand-lime); }
[data-theme="dark"] .role-badge.protected,
[data-theme="dark"] .status-accepted,
[data-theme="dark"] .status-completed,
[data-theme="dark"] .status-credit { background: rgba(158, 241, 37, .1); color: var(--brand-lime-soft); }
[data-theme="dark"] .secret-code,
[data-theme="dark"] .all-permissions-note,
[data-theme="dark"] .estimate-result,
[data-theme="dark"] .method-summary,
[data-theme="dark"] .crypto-destination { border-color: rgba(158, 241, 37, .22); background: rgba(158, 241, 37, .07); color: #cbd8bf; }
[data-theme="dark"] .secret-code,
[data-theme="dark"] .estimate-result strong,
[data-theme="dark"] .method-summary b,
[data-theme="dark"] .crypto-destination code,
[data-theme="dark"] .break-code,
[data-theme="dark"] .select-wrap .field-symbol { color: var(--brand-lime-soft); }

@media (max-width: 760px) {
  .brand-logo { width: 44px; height: 44px; }
  .dashboard-sidebar .brand-logo { width: 48px; height: 48px; }
  .auth-logo { width: 70px; height: 70px; }
  .preview-logo { width: 30px; height: 30px; }
}

/* Scrollbar-free interface — scrolling remains available */
html, body {
  max-width: 100%;
  overflow-x: clip;
}

*, *::before, *::after {
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
  scrollbar-gutter: auto !important;
  -ms-overflow-style: none !important;
}

::-webkit-scrollbar,
*::-webkit-scrollbar,
html::-webkit-scrollbar,
body::-webkit-scrollbar,
.dashboard-sidebar::-webkit-scrollbar,
.dashboard-content::-webkit-scrollbar,
.table-wrap::-webkit-scrollbar,
.country-results::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}

*::-webkit-scrollbar-track,
*::-webkit-scrollbar-thumb,
*::-webkit-scrollbar-corner,
*::-webkit-scrollbar-button {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}

.dashboard-shell,
.dashboard-content,
.dashboard-main {
  min-width: 0;
  max-width: 100%;
}

.table-wrap,
.dashboard-sidebar,
.country-results {
  overscroll-behavior: contain;
}

/* Configurable artwork inside the primary wallet */
.balance-hero::before, .balance-hero::after { z-index: 0; }
.balance-hero-head, .balance-hero-amount, .balance-hero-footer { z-index: 2; }
.balance-hero.has-wallet-art {
  border-color: rgba(158, 241, 37, .46);
  animation: wallet-frame-neon 4s ease-in-out infinite;
}
.balance-hero-art {
  position: absolute;
  z-index: 1;
  inset: 0;
  pointer-events: none;
}
.balance-hero-art::before {
  content: "";
  position: absolute;
  z-index: 2;
  inset: 0;
  border-radius: inherit;
  background:
    linear-gradient(90deg, rgba(5, 7, 3, .68), rgba(5, 7, 3, .34) 48%, rgba(5, 7, 3, .7)),
    linear-gradient(0deg, rgba(5, 7, 3, .45), transparent 55%, rgba(5, 7, 3, .2));
}
.balance-hero-art-frame {
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: inherit;
}
.balance-hero-art img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
  opacity: .68;
  transform: scale(1.01);
}
@keyframes wallet-frame-neon {
  0%, 100% { box-shadow: 0 0 10px rgba(158, 241, 37, .14), 0 20px 50px rgba(30, 55, 11, .22); }
  50% { box-shadow: 0 0 16px rgba(158, 241, 37, .25), 0 20px 50px rgba(30, 55, 11, .24); }
}

.wallet-image-setting {
  padding: 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 170px;
  align-items: center;
  gap: 18px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: var(--surface-2);
}
.wallet-image-control { min-width: 0; }
.wallet-image-control input[type="file"] { min-height: 50px; padding: 8px 10px; }
.setting-help { margin-top: 7px; display: block; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.wallet-image-remove { margin-top: 10px; }
.wallet-image-preview {
  position: relative;
  min-height: 120px;
  padding: 28px 13px 13px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(158, 241, 37, .42);
  border-radius: 18px;
  background: #050703;
  box-shadow: inset 0 0 25px rgba(158, 241, 37, .08);
  isolation: isolate;
}
.wallet-image-preview::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background: linear-gradient(90deg, rgba(5, 7, 3, .55), rgba(5, 7, 3, .16), rgba(5, 7, 3, .58));
}
.wallet-image-preview span { position: absolute; z-index: 2; inset-inline-start: 12px; top: 8px; color: #b8df48; font-size: 9px; }
.wallet-image-preview img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

@media (max-width: 760px) {
  .wallet-image-setting { grid-template-columns: minmax(0, 1fr); }
  .wallet-image-preview { width: min(100%, 190px); justify-self: center; }
}

@media (prefers-reduced-motion: reduce) {
  .balance-hero.has-wallet-art { animation: none; }
}

/* Primary-wallet controls use the official logo palette */
.balance-hero .balance-currency,
.balance-hero-footer a {
  border-color: rgba(184, 223, 72, .88);
  background: linear-gradient(135deg, var(--brand-lime-soft), var(--brand-green));
  color: var(--brand-black);
  box-shadow: 0 5px 16px rgba(110, 220, 21, .18);
}
.balance-hero .balance-currency { font-weight: 850; }
.balance-hero-footer a { transition: transform 180ms ease, filter 180ms ease, box-shadow 180ms ease; }
.balance-hero-footer a:hover {
  background: linear-gradient(135deg, var(--brand-lime), var(--brand-green));
  color: var(--brand-black);
  filter: brightness(1.03);
  transform: translateY(-1px);
  box-shadow: 0 7px 20px rgba(110, 220, 21, .25);
}
.balance-hero-footer a .ui-icon { color: currentColor; }

/* Wallet list and per-currency artwork */
.wallet-overview-item {
  grid-template-columns: 44px minmax(0, 1fr) 74px;
  border: 1px solid var(--brand-lime);
  box-shadow: inset 0 0 0 1px rgba(158, 241, 37, .06), 0 4px 14px rgba(66, 107, 20, .05);
}
.wallet-code {
  width: 44px;
  height: 44px;
  padding: 4px;
  overflow: hidden;
  border-color: rgba(158, 241, 37, .72);
  border-radius: 12px;
  background: #080c05;
  color: var(--brand-lime);
}
.wallet-code img { width: 100%; height: 100%; border-radius: 8px; object-fit: contain; }
.wallet-code .ui-icon { width: 22px; height: 22px; }

.currency-icon-editor {
  padding: 14px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 76px;
  align-items: center;
  gap: 16px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: var(--surface-2);
}
.currency-icon-editor > div { min-width: 0; }
.currency-icon-editor input[type="file"] { min-height: 48px; padding: 7px 9px; }
.currency-icon-remove { margin-top: 8px; }
.currency-icon-preview {
  width: 76px;
  height: 76px;
  padding: 7px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--brand-lime);
  border-radius: 17px;
  background: #080c05;
  color: var(--brand-lime);
  box-shadow: 0 0 14px rgba(158, 241, 37, .1);
}
.currency-icon-preview img { width: 100%; height: 100%; border-radius: 10px; object-fit: contain; }
.currency-icon-preview .ui-icon { width: 30px; height: 30px; }

@media (max-width: 520px) {
  .wallet-overview-item { grid-template-columns: 42px minmax(0, 1fr) 68px; }
  .wallet-code { width: 42px; height: 42px; }
  .currency-icon-editor { grid-template-columns: minmax(0, 1fr); }
  .currency-icon-preview { justify-self: center; }
}

/* Overview page: fine white frames with a soft lime neon */
.customer-overview-page {
  --overview-white-frame: rgba(255, 255, 255, .92);
  --overview-lime-neon: rgba(158, 241, 37, .32);
}
.customer-overview-page :is(
  .balance-hero,
  .wallet-overview-panel,
  .wallet-overview-item,
  .customer-stat-card,
  .customer-action-card
) {
  border: .5px solid var(--overview-white-frame);
  box-shadow:
    0 0 6px var(--overview-lime-neon),
    0 0 20px rgba(158, 241, 37, .22),
    0 8px 24px rgba(9, 16, 5, .08);
}
.customer-overview-page .wallet-overview-item {
  border-width: .35px;
  border-color: transparent;
  box-shadow:
    0 0 4px rgba(158, 241, 37, .28),
    0 0 14px rgba(158, 241, 37, .18),
    0 7px 20px rgba(9, 16, 5, .07);
}
.customer-overview-page :is(
  .balance-currency,
  .balance-hero-footer a,
  .wallet-code
) {
  border: .5px solid rgba(255, 255, 255, .88);
  box-shadow:
    0 0 5px rgba(158, 241, 37, .3),
    0 0 12px rgba(158, 241, 37, .2);
}
.customer-overview-page .wallet-overview-panel > header {
  border-bottom-width: .5px;
  border-bottom-color: rgba(255, 255, 255, .32);
}
.customer-overview-page .balance-hero.has-wallet-art {
  animation: none;
}
.customer-overview-page .customer-action-card:hover,
.customer-overview-page .balance-hero-footer a:hover {
  border-color: #fff;
  box-shadow:
    0 0 8px rgba(158, 241, 37, .42),
    0 0 24px rgba(158, 241, 37, .28),
    0 10px 26px rgba(9, 16, 5, .1);
}
.customer-overview-page .balance-hero-head small { font-size: 13px; }
.customer-overview-page .balance-hero-head b { font-size: 18px; }
.customer-overview-page .balance-currency { font-size: 13px; }
.customer-overview-page .balance-hero-label,
.customer-overview-page .balance-hero-footer a { font-size: 13px; }
.customer-overview-page .wallet-overview-panel h3,
.customer-overview-page .customer-section-head h3 { font-size: 20px; }
.customer-overview-page .customer-section-head .section-kicker { font-size: 13px; }
.customer-overview-page .wallet-count { font-size: 14px; }
.customer-overview-page .wallet-overview-item b { font-size: 14px; }
.customer-overview-page .wallet-overview-item small { font-size: 11px; }
.customer-overview-page .wallet-overview-item strong { font-size: 14px; }
.customer-overview-page .wallet-overview-balance > span { font-size: clamp(17px, 4vw, 20px); }
.customer-overview-page .customer-stat-card small { font-size: 14px; line-height: 1.45; }
.customer-overview-page .customer-stat-card strong { font-size: 28px; }
.customer-overview-page .customer-action-card b { font-size: 15px; }
.customer-overview-page .customer-action-card small { font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.customer-overview-footer {
  margin-top: 30px;
  padding: 18px 6px 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 18px;
  border-top: .5px solid rgba(158, 241, 37, .38);
  color: var(--muted);
  font-size: 14px;
  text-align: center;
}
.customer-overview-footer strong { color: var(--primary); font-size: 14px; letter-spacing: .02em; }
.customer-overview-footer a {
  color: var(--muted);
  text-decoration: underline;
  text-decoration-color: rgba(126, 197, 28, .62);
  text-underline-offset: 4px;
  transition: color .16s ease, text-decoration-color .16s ease;
}
.customer-overview-footer a:hover {
  color: var(--primary-strong);
  text-decoration-color: var(--primary);
}

/* Editable terms and privacy page */
.policy-page-heading,
.policy-page-card {
  width: min(100%, 980px);
  margin-inline: auto;
}
.policy-page-card {
  padding: clamp(22px, 4vw, 42px);
  border: .5px solid rgba(255, 255, 255, .82);
  box-shadow: 0 0 18px rgba(158, 241, 37, .14);
}
.policy-page-content {
  color: var(--text);
  font-size: clamp(15px, 1.6vw, 17px);
  line-height: 2;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
.policy-editor-heading {
  margin-top: 12px;
  padding-top: 22px;
  border-top: .5px solid var(--border);
}
.policy-editor-heading .button { flex: 0 0 auto; }

[data-theme="light"] .policy-page-card {
  border-color: rgba(38, 56, 43, .25);
  box-shadow: 0 0 16px rgba(110, 176, 28, .09);
}

@media (max-width: 620px) {
  .policy-page-heading { align-items: stretch; }
  .policy-page-heading .button { width: 100%; }
  .policy-page-card { padding: 20px 17px; }
  .policy-editor-heading { align-items: stretch; }
  .policy-editor-heading .button { width: 100%; }
}

/* Customer account settings */
.account-settings-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  align-items: start;
  gap: 16px;
}
.account-settings-grid .dashboard-panel { min-width: 0; }
.account-detail-list dd[dir="ltr"] { text-align: start; }
.account-password-form { display: grid; gap: 14px; }
.account-password-form label { display: grid; gap: 7px; }
.account-password-form .setting-help { margin-top: -3px; }
.account-password-form .form-actions { margin-top: 2px; }

@media (max-width: 900px) {
  .account-settings-grid { grid-template-columns: minmax(0, 1fr); }
}

/* Account settings: profile, security and identity verification */
.settings-tabs {
  margin-bottom: 18px;
  padding: 6px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
  border: 1px solid #dce5df;
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--shadow-soft);
}
.settings-tabs a {
  min-width: 0;
  min-height: 58px;
  padding: 9px 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid transparent;
  border-radius: 11px;
  color: #68756c;
  font-size: 13px;
  transition: border-color 180ms ease, background 180ms ease, color 180ms ease, transform 180ms ease;
}
.settings-tabs a:hover { border-color: #d6e5ce; background: #f8fbf4; color: #25351f; }
.settings-tabs a.active {
  border-color: #8fdb25;
  background: linear-gradient(135deg, rgba(184, 223, 72, .22), rgba(110, 220, 21, .14));
  color: #2d5911;
  box-shadow: inset 0 0 18px rgba(158, 241, 37, .08);
}
.settings-tabs a > span {
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border-radius: 9px;
  background: #eef6e8;
  color: #4b9418;
}
.settings-tabs a.active > span { background: var(--brand-lime); color: var(--brand-black); }
.settings-tabs .ui-icon { width: 18px; height: 18px; }
.settings-section-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, .38fr);
  align-items: start;
  gap: 16px;
}
.settings-main-panel { min-width: 0; }
.smart-account-number { color: #4b9418; letter-spacing: .055em; }
.settings-note-panel { text-align: center; }
.settings-note-panel h3 { margin: 15px 0 6px; font-size: 16px; }
.settings-note-panel p { margin: 0; color: var(--muted); font-size: var(--help-text-size); line-height: 1.8; overflow-wrap: anywhere; }
.settings-note-icon {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(110, 220, 21, .3);
  border-radius: 13px;
  background: rgba(158, 241, 37, .13);
  color: #4b9418;
}
.settings-note-panel .settings-note-icon { margin-inline: auto; }
.settings-note-icon .ui-icon { width: 22px; height: 22px; }
.security-settings-hub {
  padding: clamp(18px, 2.5vw, 28px);
  border: .5px solid rgba(158, 241, 37, .72);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 0 22px rgba(126, 232, 27, .14), var(--shadow-soft);
}
.security-hub-heading { margin-bottom: 20px; display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.security-hub-heading h3 { margin: 2px 0 4px; color: #172019; font-size: 21px; }
.security-hub-heading p { margin: 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.security-options-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.security-option-card {
  min-width: 0;
  min-height: 132px;
  padding: 17px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  grid-template-rows: 1fr auto;
  align-items: start;
  gap: 14px;
  border: .5px solid #d9e5d3;
  border-radius: 16px;
  background: linear-gradient(145deg, #fbfdf9, #f5f9f2);
  color: #192219;
  box-shadow: 0 7px 20px rgba(25, 52, 22, .045);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
.security-option-card:hover {
  border-color: var(--brand-lime);
  background: linear-gradient(145deg, #fff, rgba(158, 241, 37, .08));
  box-shadow: 0 0 20px rgba(126, 232, 27, .2), 0 12px 26px rgba(25, 52, 22, .07);
  transform: translateY(-2px);
}
.security-option-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(111, 183, 25, .22);
  border-radius: 14px;
  background: rgba(158, 241, 37, .14);
  color: #4b9418;
}
.security-option-icon .ui-icon { width: 23px; height: 23px; }
.security-option-copy { min-width: 0; display: grid; gap: 4px; }
.security-option-copy b { color: #182119; font-size: 14px; }
.security-option-copy small { color: #758078; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.security-option-meta { grid-column: 1 / -1; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.security-option-card > .security-option-arrow { grid-column: 1 / -1; justify-self: end; align-self: end; }
.security-option-arrow { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: rgba(158, 241, 37, .1); color: #58a91a; }
.security-option-arrow .ui-icon { width: 16px; height: 16px; }
[dir="rtl"] .security-option-arrow .ui-icon { transform: scaleX(-1); }
body.security-modal-open { overflow: hidden; }
.customer-security-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); max-width: 1000px; gap: 8px; margin: 0 0 16px; }
.customer-security-action { min-width: 0; display: flex; flex-direction: column; gap: 5px; }
.customer-security-action > .button { width: 100%; min-width: 0; min-height: 40px; padding: 8px; border-radius: 10px; font-size: 12px; white-space: normal; line-height: 1.5; }
.customer-security-action > small { font-size: var(--help-text-size); text-align: center; color: var(--muted); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
@media (max-width: 600px) { .customer-security-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.customer-security-action > .button:disabled { opacity: .45; cursor: not-allowed; }
.customer-security-action-errors { margin: 14px 0; padding: 12px 15px; border: 1px solid #ed9197; border-radius: 12px; background: #ffe7e9; color: #8b1d29; }
.customer-security-action-errors p { margin: 4px 0; }
.security-modal {
  width: min(780px, calc(100% - 28px));
  max-width: none;
  max-height: none;
  margin: auto;
  padding: 0;
  overflow: visible;
  border: 0;
  background: transparent;
  color: #172019;
  font-family: inherit;
}
.security-modal-wide { width: min(1040px, calc(100% - 28px)); }
.security-modal::backdrop { background: rgba(4, 8, 3, .72); -webkit-backdrop-filter: blur(7px); backdrop-filter: blur(7px); }
.security-modal[open] { animation: security-modal-in .24s cubic-bezier(.2, .76, .24, 1) both; }
.security-modal-shell {
  max-height: calc(100dvh - 36px);
  overflow: auto;
  scrollbar-width: none;
  border: .5px solid rgba(158, 241, 37, .82);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 0 30px rgba(126, 232, 27, .27), 0 34px 90px rgba(0, 0, 0, .36);
}
.security-modal-shell::-webkit-scrollbar { display: none; }
.security-modal-header {
  position: sticky;
  top: 0;
  z-index: 2;
  min-height: 112px;
  padding: 22px 24px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border-bottom: .5px solid #dce7d7;
  background: rgba(255, 255, 255, .96);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
.security-modal-header > div { min-width: 0; }
.security-modal-header span { color: #63ad1f; font-size: 10px; font-weight: 800; }
.security-modal-header h2 { margin: 1px 0 2px; color: #121a13; font-size: 21px; line-height: 1.4; }
.security-modal-header p { margin: 0; color: #758078; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.security-modal-icon {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(126, 205, 32, .3);
  border-radius: 14px;
  background: rgba(158, 241, 37, .15);
  color: #4f9d17;
  box-shadow: 0 0 18px rgba(126, 232, 27, .12);
}
.security-modal-icon .ui-icon { width: 24px; height: 24px; }
.security-modal-close {
  width: 39px;
  height: 39px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid #dbe5d7;
  border-radius: 12px;
  background: #f5f8f3;
  color: #697569;
  font-size: 25px;
  line-height: 1;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
.security-modal-close:hover { border-color: var(--brand-lime); background: rgba(158, 241, 37, .14); color: #438d12; transform: rotate(4deg); }
.security-modal-close:focus-visible, .security-option-card:focus-visible { outline: 3px solid rgba(158, 241, 37, .25); outline-offset: 3px; }
.security-modal-body { padding: clamp(20px, 3vw, 30px); }
.security-modal-status { margin-bottom: 16px; display: flex; justify-content: flex-end; }
.security-modal-body .security-form-grid { width: 100%; }

@keyframes security-modal-in {
  from { opacity: 0; transform: translateY(14px) scale(.975); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.security-settings-stack, .verification-settings-section { display: grid; gap: 16px; }
.security-setting-card { min-width: 0; }
.security-form-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: end;
  gap: 13px;
}
.security-form-grid label, .security-start-form label, .two-factor-confirm-form label, .verification-upload-form label { min-width: 0; display: grid; gap: 7px; }
.security-form-grid .full-span { grid-column: 1 / -1; }
.security-form-grid .form-actions { margin-top: 0; }
.security-start-form { max-width: 680px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; }
.security-danger-action { margin-top: 18px; padding-top: 14px; border-top: 1px solid var(--border); }
.security-danger-action summary { width: fit-content; color: #bd3139; cursor: pointer; font-size: 12px; font-weight: 750; }
.security-danger-action[open] summary { margin-bottom: 13px; }
.compact-security-form { grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto; }
.security-enabled-note, .verification-privacy-note {
  padding: 13px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(75, 148, 24, .2);
  border-radius: 11px;
  background: rgba(158, 241, 37, .09);
  color: #41661f;
  font-size: var(--help-text-size);
  line-height: var(--help-text-leading);
  overflow-wrap: anywhere;
}
.security-enabled-note .ui-icon, .verification-privacy-note .ui-icon { width: 19px; height: 19px; flex: 0 0 auto; color: #4b9418; }
.recovery-codes-card {
  margin-top: 16px;
  padding: 18px;
  display: grid;
  gap: 15px;
  border: .5px solid rgba(126, 197, 28, .82);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(158, 241, 37, .12), rgba(255, 255, 255, .96) 46%);
  box-shadow: 0 0 18px rgba(126, 232, 27, .16), inset 0 0 24px rgba(158, 241, 37, .035);
}
.recovery-codes-heading { display: flex; align-items: flex-start; gap: 12px; }
.recovery-codes-heading > div { min-width: 0; }
.recovery-codes-heading h3, .recovery-management-heading h3 { margin: 0 0 4px; color: #172019; font-size: 15px; }
.recovery-codes-heading p, .recovery-management-heading p { margin: 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.recovery-codes-icon,
.recovery-management-heading > span {
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border: 1px solid rgba(126, 197, 28, .32);
  border-radius: 12px;
  background: rgba(158, 241, 37, .16);
  color: #4b9418;
}
.recovery-codes-icon .ui-icon, .recovery-management-heading > span .ui-icon { width: 20px; height: 20px; }
.recovery-codes-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}
.recovery-codes-grid code {
  min-width: 0;
  padding: 11px 12px;
  border: .5px solid #cfddc9;
  border-radius: 10px;
  background: rgba(255, 255, 255, .82);
  color: #24470e;
  text-align: center;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .09em;
  user-select: all;
}
.recovery-codes-warning {
  padding: 11px 12px;
  display: flex;
  align-items: flex-start;
  gap: 9px;
  border: 1px solid rgba(217, 158, 29, .25);
  border-radius: 10px;
  background: rgba(255, 199, 61, .1);
  color: #76520b;
  font-size: 11px;
  line-height: 1.7;
}
.recovery-codes-warning .ui-icon { width: 18px; height: 18px; flex: 0 0 auto; margin-top: 1px; }
.recovery-codes-actions { display: flex; flex-wrap: wrap; gap: 9px; }
.recovery-codes-actions .button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
.recovery-codes-actions .ui-icon { width: 17px; height: 17px; }
.recovery-codes-management {
  margin-top: 16px;
  padding: 16px;
  display: grid;
  gap: 13px;
  border: 1px solid #dce6d7;
  border-radius: 14px;
  background: #fafcf8;
}
.recovery-management-heading {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 11px;
}
.recovery-management-heading > strong {
  padding: 7px 10px;
  border: 1px solid rgba(126, 197, 28, .26);
  border-radius: 999px;
  background: rgba(158, 241, 37, .12);
  color: #3d7417;
  font-size: 11px;
  white-space: nowrap;
}
.recovery-codes-empty { margin: 0; padding: 10px 12px; border-radius: 9px; background: rgba(255, 199, 61, .1); color: #76520b; font-size: 11px; line-height: 1.7; }
.recovery-code-regeneration { border-top: 1px solid #dfe8da; padding-top: 12px; }
.recovery-code-regeneration summary { width: fit-content; display: flex; align-items: center; gap: 7px; color: #4b9418; cursor: pointer; font-size: 12px; font-weight: 800; list-style: none; }
.recovery-code-regeneration summary::-webkit-details-marker { display: none; }
.recovery-code-regeneration summary .ui-icon { width: 17px; height: 17px; }
.recovery-code-regeneration[open] summary { margin-bottom: 10px; }
.recovery-regeneration-copy { margin-bottom: 12px; }
.recovery-regeneration-copy p { margin: 0 0 3px; color: #9d343c; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.recovery-regeneration-copy small { color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.two-factor-setup { display: grid; gap: 14px; }
.setup-steps { margin: 0; padding-inline-start: 24px; display: grid; gap: 7px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.setup-steps li::marker { color: #4b9418; font-weight: 800; }
.two-factor-enrollment {
  display: grid;
  grid-template-columns: minmax(230px, 290px) minmax(0, 1fr);
  align-items: stretch;
  gap: 14px;
}
.two-factor-qr-panel,
.two-factor-manual-panel {
  min-width: 0;
  padding: 18px;
  display: grid;
  align-content: start;
  gap: 13px;
  border: .5px solid #d5e2ce;
  border-radius: 16px;
  background: #fafcf8;
}
.two-factor-qr-panel { justify-items: center; text-align: center; }
.two-factor-qr-panel > strong,
.two-factor-manual-panel > strong { color: #1b271c; font-size: 13px; font-weight: 850; }
.two-factor-qr-panel > p { max-width: 260px; margin: 0; color: var(--muted); font-size: var(--help-text-size); line-height: 1.8; overflow-wrap: anywhere; }
.two-factor-qr-frame {
  position: relative;
  width: min(100%, 238px);
  aspect-ratio: 1;
  padding: 10px;
  display: grid;
  place-items: center;
  border: .5px solid rgba(158, 241, 37, .95);
  border-radius: 17px;
  background: #fff;
  box-shadow: 0 0 20px rgba(126, 232, 27, .24), inset 0 0 0 4px rgba(158, 241, 37, .035);
}
.two-factor-qr-frame::before,
.two-factor-qr-frame::after {
  content: "";
  position: absolute;
  width: 28px;
  height: 28px;
  pointer-events: none;
}
.two-factor-qr-frame::before {
  inset: 5px auto auto 5px;
  border-block-start: 2px solid var(--brand-lime);
  border-inline-start: 2px solid var(--brand-lime);
  border-start-start-radius: 8px;
}
.two-factor-qr-frame::after {
  inset: auto 5px 5px auto;
  border-block-end: 2px solid var(--brand-lime);
  border-inline-end: 2px solid var(--brand-lime);
  border-end-end-radius: 8px;
}
.two-factor-qr-frame img { width: 100%; height: 100%; display: block; border-radius: 9px; object-fit: contain; }
.two-factor-manual-panel { align-content: center; }
.two-factor-manual-panel .two-factor-secret { width: 100%; }
.two-factor-secret {
  padding: 13px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  border: 1px solid #d8e4d1;
  border-radius: 12px;
  background: #f7faf4;
}
.two-factor-secret > span { color: var(--muted); font-size: 11px; }
.two-factor-secret code { overflow-wrap: anywhere; color: #2d5911; font-size: 15px; font-weight: 800; letter-spacing: .08em; text-align: center; }
.authenticator-open-link { width: fit-content; }
.two-factor-confirm-form { max-width: 680px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 12px; }
.verification-settings-section { max-width: 1000px; }
.verification-detail-list { margin-bottom: 16px; }
.verification-images { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; }
.verification-images a {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #dce5d7;
  border-radius: 13px;
  background: #f7faf5;
}
.verification-images img { width: 100%; height: 190px; object-fit: cover; }
.verification-images span { padding: 9px 11px; display: block; color: #4b5a4f; font-size: 11px; font-weight: 700; }
.verification-rejection-note { margin-top: 14px; padding: 13px; border: 1px solid #efc8cb; border-radius: 11px; background: #fff3f4; color: #a72b33; }
.verification-rejection-note b { font-size: 12px; }
.verification-rejection-note p { margin: 4px 0 0; font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.verification-upload-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 14px; }
.verification-upload-form > label:first-child, .verification-upload-form .verification-privacy-note, .verification-upload-form .form-actions { grid-column: 1 / -1; }
.verification-file-field { align-content: start; padding: 12px; border: 1px solid #dce5d7; border-radius: 14px; background: #fafcf8; transition: border-color .18s ease, box-shadow .18s ease; }
.verification-file-field[hidden] { display: none; }
.verification-file-example { display: block; overflow: hidden; width: 100%; margin-bottom: 3px; border: 1px solid #d7e3d3; border-radius: 11px; background: #101914; aspect-ratio: 12 / 7; }
.verification-file-example img { display: block; width: 100%; height: 100%; object-fit: cover; }
.verification-file-field.has-file-preview { border-color: #88d92c; box-shadow: 0 0 0 3px rgba(126, 216, 32, .1); }
.verification-file-field input[type="file"] { min-height: 48px; padding: 7px 9px; }
.verification-file-field small { color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.one-time-code-input { direction: ltr; text-align: center; font-size: 20px; font-weight: 800; letter-spacing: .32em; }
.auth-security-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 15px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(110, 220, 21, .35);
  border-radius: 18px;
  background: rgba(158, 241, 37, .12);
  color: #4b9418;
}
.auth-security-icon .ui-icon { width: 30px; height: 30px; }

[data-theme="dark"] .settings-tabs { border-color: #29372f; background: #121914; }
[data-theme="dark"] .settings-tabs a { color: #9aa89f; }
[data-theme="dark"] .settings-tabs a:hover { border-color: #36483d; background: #172019; color: #edf4ef; }
[data-theme="dark"] .settings-tabs a.active { border-color: #79c51c; background: linear-gradient(135deg, rgba(158, 241, 37, .16), rgba(110, 220, 21, .08)); color: #b9ef61; }
[data-theme="dark"] .settings-tabs a > span { background: #1a251e; color: #8ed932; }
[data-theme="dark"] .settings-tabs a.active > span { background: var(--brand-lime); color: var(--brand-black); }
[data-theme="dark"] .smart-account-number { color: #a9ed49; }
[data-theme="dark"] .settings-note-panel h3, [data-theme="dark"] .security-setting-card h3, [data-theme="dark"] .verification-status-card h3, [data-theme="dark"] .verification-upload-card h3 { color: var(--text); }
[data-theme="dark"] .settings-note-icon { border-color: rgba(158, 241, 37, .24); background: rgba(158, 241, 37, .1); color: #a9ed49; }
[data-theme="dark"] .security-settings-hub { border-color: rgba(158, 241, 37, .62); background: #0f160f; box-shadow: 0 0 25px rgba(126, 232, 27, .2), var(--shadow-soft); }
[data-theme="dark"] .security-hub-heading h3 { color: #f1f6ee; }
[data-theme="dark"] .security-option-card { border-color: #2d3b2d; background: linear-gradient(145deg, #151d15, #101710); color: #eff5ec; box-shadow: 0 7px 22px rgba(0, 0, 0, .18); }
[data-theme="dark"] .security-option-card:hover { border-color: var(--brand-lime); background: linear-gradient(145deg, #182218, rgba(158, 241, 37, .07)); box-shadow: 0 0 22px rgba(126, 232, 27, .22), 0 14px 30px rgba(0, 0, 0, .24); }
[data-theme="dark"] .security-option-icon { border-color: rgba(158, 241, 37, .25); background: rgba(158, 241, 37, .1); color: #a7ef43; }
[data-theme="dark"] .security-option-copy b { color: #f2f7ef; }
[data-theme="dark"] .security-option-copy small { color: #9caa9a; }
[data-theme="dark"] .security-option-arrow { background: rgba(158, 241, 37, .08); color: #a2eb3d; }
[data-theme="dark"] .security-modal { color: #edf4e9; }
[data-theme="dark"] .security-modal-shell { background: #0e150e; box-shadow: 0 0 34px rgba(126, 232, 27, .3), 0 36px 95px rgba(0, 0, 0, .68); }
[data-theme="dark"] .security-modal-header { border-bottom-color: #2a382a; background: rgba(14, 21, 14, .96); }
[data-theme="dark"] .security-modal-header h2 { color: #f4f8f1; }
[data-theme="dark"] .security-modal-header p { color: #9eaa9c; }
[data-theme="dark"] .security-modal-icon { border-color: rgba(158, 241, 37, .26); background: rgba(158, 241, 37, .1); color: #a9ef49; }
[data-theme="dark"] .security-modal-close { border-color: #304030; background: #151e15; color: #a6b1a3; }
[data-theme="dark"] .security-modal-close:hover { border-color: var(--brand-lime); background: rgba(158, 241, 37, .1); color: #b3f45a; }
[data-theme="dark"] .security-enabled-note, [data-theme="dark"] .verification-privacy-note { border-color: #315025; background: rgba(158, 241, 37, .07); color: #b5c8a8; }
[data-theme="dark"] .recovery-codes-card { border-color: rgba(158, 241, 37, .72); background: linear-gradient(145deg, rgba(158, 241, 37, .1), #0d140c 48%); box-shadow: 0 0 24px rgba(126, 232, 27, .2), inset 0 0 24px rgba(158, 241, 37, .025); }
[data-theme="dark"] .recovery-codes-heading h3, [data-theme="dark"] .recovery-management-heading h3 { color: #f1f6ee; }
[data-theme="dark"] .recovery-codes-grid code { border-color: #35452f; background: #111a0e; color: #b6f65a; }
[data-theme="dark"] .recovery-codes-warning, [data-theme="dark"] .recovery-codes-empty { border-color: rgba(255, 199, 61, .22); background: rgba(255, 199, 61, .07); color: #e8c66d; }
[data-theme="dark"] .recovery-codes-management { border-color: #2b3931; background: #101712; }
[data-theme="dark"] .recovery-management-heading > strong { border-color: rgba(158, 241, 37, .24); background: rgba(158, 241, 37, .08); color: #b3f45a; }
[data-theme="dark"] .recovery-code-regeneration { border-top-color: #2b3931; }
[data-theme="dark"] .recovery-code-regeneration summary { color: #a9ed49; }
[data-theme="dark"] .recovery-regeneration-copy p { color: #f2a8ad; }
[data-theme="dark"] .two-factor-qr-panel, [data-theme="dark"] .two-factor-manual-panel { border-color: #2b3931; background: #101712; }
[data-theme="dark"] .two-factor-qr-panel > strong, [data-theme="dark"] .two-factor-manual-panel > strong { color: #eef5eb; }
[data-theme="dark"] .two-factor-qr-frame { box-shadow: 0 0 24px rgba(126, 232, 27, .29), inset 0 0 0 4px rgba(158, 241, 37, .04); }
[data-theme="dark"] .two-factor-secret, [data-theme="dark"] .verification-file-field, [data-theme="dark"] .verification-images a { border-color: #2b3931; background: #101712; }
[data-theme="dark"] .verification-file-example { border-color: #34483a; }
[data-theme="dark"] .two-factor-secret code { color: #b0ef55; }
[data-theme="dark"] .verification-images span { color: #b2beb6; }
[data-theme="dark"] .verification-rejection-note { border-color: #60343a; background: #2a1518; color: #f1a9ae; }

@media (max-width: 900px) {
  .settings-section-grid { grid-template-columns: minmax(0, 1fr); }
  .settings-note-panel { text-align: start; }
  .settings-note-panel .settings-note-icon { margin-inline: 0; }
  .security-options-grid { grid-template-columns: minmax(0, 1fr); }
  .security-option-card { min-height: 104px; }
  .security-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compact-security-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .compact-security-form .button { grid-column: 1 / -1; width: fit-content; }
  .two-factor-enrollment { grid-template-columns: minmax(220px, 280px) minmax(0, 1fr); }
}

@media (max-width: 620px) {
  .settings-tabs { grid-template-columns: minmax(0, 1fr); }
  .settings-tabs a { justify-content: flex-start; }
  .security-settings-hub { padding: 15px; border-radius: 17px; }
  .security-hub-heading { margin-bottom: 15px; }
  .security-option-card { min-height: 98px; padding: 14px; gap: 11px; }
  .security-option-icon { width: 43px; height: 43px; border-radius: 12px; }
  .security-modal { width: calc(100% - 18px); }
  .security-modal-shell { max-height: calc(100dvh - 18px); border-radius: 18px; }
  .security-modal-header { min-height: 96px; padding: 17px 15px; gap: 10px; }
  .security-modal-header h2 { font-size: 18px; }
  .security-modal-header p { font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
  .security-modal-icon { width: 42px; height: 42px; border-radius: 12px; }
  .security-modal-icon .ui-icon { width: 21px; height: 21px; }
  .security-modal-close { width: 36px; height: 36px; border-radius: 11px; }
  .security-modal-body { padding: 18px 15px 20px; }
  .security-form-grid, .security-start-form, .compact-security-form, .two-factor-confirm-form, .verification-upload-form { grid-template-columns: minmax(0, 1fr); }
  .security-form-grid .full-span, .verification-upload-form > label:first-child, .verification-upload-form .verification-privacy-note, .verification-upload-form .form-actions, .compact-security-form .button { grid-column: auto; }
  .security-start-form .button, .two-factor-confirm-form .button, .compact-security-form .button { width: 100%; }
  .two-factor-enrollment { grid-template-columns: minmax(0, 1fr); }
  .two-factor-qr-panel, .two-factor-manual-panel { padding: 15px; }
  .two-factor-secret { grid-template-columns: minmax(0, 1fr); text-align: center; }
  .two-factor-secret .button { width: 100%; }
  .authenticator-open-link { width: 100%; }
  .recovery-codes-grid { grid-template-columns: minmax(0, 1fr); }
  .recovery-codes-actions .button { width: 100%; }
  .recovery-management-heading { grid-template-columns: auto minmax(0, 1fr); align-items: start; }
  .recovery-management-heading > strong { grid-column: 1 / -1; width: fit-content; }
  .verification-images { grid-template-columns: minmax(0, 1fr); }
  .verification-images img { height: 170px; }
}

/* Four-digit PIN sign-in challenge */
.pin-challenge-form { margin-top: 28px; }
.challenge-method-switch { min-height: 38px; padding: 7px 10px; cursor: pointer; font: inherit; font-size: 12px; }
.recovery-code-challenge-form[hidden], [data-authenticator-challenge-panel][hidden] { display: none !important; }
.recovery-code-challenge-form { margin-top: 28px; }
.recovery-code-challenge-form label { display: grid; gap: 8px; }
.recovery-code-challenge-form label small { color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); text-align: center; overflow-wrap: anywhere; }
.recovery-code-input {
  min-height: 68px;
  border-color: #b8cab8;
  border-radius: 15px;
  background: #f8fbf8;
  color: #172019;
  caret-color: var(--brand-green);
  text-align: center;
  text-transform: uppercase;
  font-family: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  font-size: clamp(18px, 5vw, 25px);
  font-weight: 850;
  letter-spacing: .12em;
}
.recovery-code-input:focus { border-color: var(--brand-lime); background: #fff; box-shadow: 0 0 0 3px rgba(158, 241, 37, .14), 0 0 20px rgba(110, 220, 21, .17); }
[data-theme="dark"] .recovery-code-input { border-color: #34432f; background: #0f160d; color: #f5f9f3; }
[data-theme="dark"] .recovery-code-input:focus { border-color: var(--brand-lime); background: #111a0e; box-shadow: 0 0 0 3px rgba(158, 241, 37, .15), 0 0 20px rgba(110, 220, 21, .2); }

@media print {
  body.recovery-codes-printing { background: #fff !important; }
  body.recovery-codes-printing * { visibility: hidden !important; }
  body.recovery-codes-printing [data-recovery-codes-card],
  body.recovery-codes-printing [data-recovery-codes-card] * { visibility: visible !important; }
  body.recovery-codes-printing [data-recovery-codes-card] {
    position: fixed;
    inset: 12mm;
    margin: 0;
    padding: 12mm;
    border: 1px solid #7dbd24;
    background: #fff !important;
    color: #111 !important;
    box-shadow: none !important;
  }
  body.recovery-codes-printing .recovery-codes-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.recovery-codes-printing .recovery-codes-grid code { border-color: #ccd7c7; background: #fff; color: #173308; }
  body.recovery-codes-printing .recovery-codes-actions { display: none !important; }
}
.pin-code-fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.pin-code-fieldset legend { width: 100%; margin-bottom: 11px; color: #526057; font-size: 13px; font-weight: 750; text-align: center; }
.pin-code-fields {
  display: grid;
  grid-template-columns: repeat(4, 72px);
  justify-content: center;
  gap: 13px;
}
.two-factor-code-fields {
  width: 100%;
  max-width: 434px;
  margin-inline: auto;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px;
}
.two-factor-digit-input { width: 100%; height: 68px; min-height: 68px; }
.pin-digit-input {
  width: 72px;
  height: 72px;
  min-height: 72px;
  padding: 0;
  border: 1px solid #cbd8cf;
  border-radius: 16px;
  background: #f8fbf8;
  color: #172019;
  box-shadow: inset 0 1px 2px rgba(17, 32, 22, .035);
  caret-color: var(--brand-green);
  direction: ltr;
  text-align: center;
  font-family: ui-rounded, "Segoe UI", Arial, sans-serif;
  font-size: 30px;
  font-weight: 850;
  line-height: 1;
  transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease, transform 160ms ease;
}
.pin-digit-input:hover { border-color: #a9bea9; }
.pin-digit-input:focus {
  border-color: var(--brand-lime);
  background: #fff;
  box-shadow: 0 0 0 3px rgba(158, 241, 37, .13), 0 0 18px rgba(110, 220, 21, .13);
}
.pin-digit-input.has-value { border-color: #84c52e; background: rgba(158, 241, 37, .055); }
.pin-code-fields.is-verifying { pointer-events: none; }
.pin-code-fields.is-verifying .pin-digit-input { animation: pin-edge-sequence .5s ease-in-out both; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(1) { animation-delay: 0s; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(2) { animation-delay: .12s; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(3) { animation-delay: .24s; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(4) { animation-delay: .36s; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(5) { animation-delay: .48s; }
.pin-code-fields.is-verifying .pin-digit-input:nth-child(6) { animation-delay: .6s; }

@keyframes pin-edge-sequence {
  0% { border-color: #84c52e; box-shadow: 0 0 0 rgba(158, 241, 37, 0); transform: translateY(0) scale(1); }
  50% { border-color: #aaff35; box-shadow: 0 0 0 3px rgba(158, 241, 37, .18), 0 0 24px rgba(126, 232, 27, .62), inset 0 0 14px rgba(158, 241, 37, .12); transform: translateY(-2px) scale(1.025); }
  100% { border-color: #79c51c; box-shadow: 0 0 13px rgba(126, 232, 27, .28); transform: translateY(0) scale(1); }
}

[data-theme="dark"] .pin-code-fieldset legend { color: #a1aea6; }
[data-theme="dark"] .pin-digit-input {
  border-color: #34432f;
  background: #0f160d;
  color: #f5f9f3;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .3);
}
[data-theme="dark"] .pin-digit-input:hover { border-color: #51663e; }
[data-theme="dark"] .pin-digit-input:focus {
  border-color: var(--brand-lime);
  background: #111a0e;
  box-shadow: 0 0 0 3px rgba(158, 241, 37, .15), 0 0 20px rgba(110, 220, 21, .2);
}
[data-theme="dark"] .pin-digit-input.has-value { border-color: #76b925; background: rgba(158, 241, 37, .065); }

@media (max-width: 520px) {
  .pin-code-fields { grid-template-columns: repeat(4, minmax(48px, 62px)); gap: 9px; }
  .pin-digit-input { width: 100%; height: 62px; min-height: 62px; border-radius: 14px; font-size: 27px; }
  .two-factor-code-fields { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 6px; }
  .two-factor-digit-input { height: 58px; min-height: 58px; border-radius: 12px; font-size: 24px; }
}

@media (max-width: 390px) {
  .two-factor-code-fields { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 5px; }
  .two-factor-digit-input { height: 54px; min-height: 54px; font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
  .pin-code-fields.is-verifying .pin-digit-input { animation: none !important; border-color: var(--brand-lime); box-shadow: 0 0 12px rgba(126, 232, 27, .24); }
}

/* Brand-styled system notifications */
body.notification-open { overflow: hidden; }
.system-notification-overlay {
  position: fixed;
  inset: 0;
  z-index: 5000;
  display: grid;
  place-items: center;
  padding: 22px;
  background: rgba(4, 8, 3, .7);
  -webkit-backdrop-filter: blur(7px);
  backdrop-filter: blur(7px);
  animation: notification-overlay-in .2s ease both;
}
.system-notification {
  --notification-accent: #ef6f79;
  --notification-accent-rgb: 239, 111, 121;
  position: relative;
  width: min(100%, 490px);
  max-height: min(680px, calc(100dvh - 44px));
  overflow: auto;
  scrollbar-width: none;
  padding: 34px 32px 28px;
  display: grid;
  justify-items: center;
  gap: 19px;
  border: .5px solid rgba(158, 241, 37, .82);
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 0, rgba(158, 241, 37, .09), transparent 42%),
    #fbfdf9;
  color: #151b13;
  box-shadow:
    0 0 0 1px rgba(158, 241, 37, .06),
    0 0 28px rgba(126, 232, 27, .25),
    0 30px 80px rgba(0, 0, 0, .34);
  text-align: center;
  animation: notification-card-in .3s cubic-bezier(.2, .75, .25, 1) both;
}
.system-notification::-webkit-scrollbar { display: none; }
.system-notification-success {
  --notification-accent: #78cf20;
  --notification-accent-rgb: 120, 207, 32;
}
.system-notification-warning {
  --notification-accent: #e2ad32;
  --notification-accent-rgb: 226, 173, 50;
}
.system-notification-info {
  --notification-accent: #71aee8;
  --notification-accent-rgb: 113, 174, 232;
}
.system-notification::before {
  content: "";
  position: absolute;
  inset: 0 auto auto 50%;
  width: 38%;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--brand-lime), transparent);
  box-shadow: 0 0 18px rgba(158, 241, 37, .8);
  transform: translateX(-50%);
}
.system-notification-x {
  position: absolute;
  inset-block-start: 16px;
  inset-inline-end: 16px;
  width: 38px;
  height: 38px;
  padding: 0;
  display: grid;
  place-items: center;
  border: 1px solid rgba(105, 126, 103, .22);
  border-radius: 12px;
  background: rgba(238, 244, 235, .82);
  color: #60705f;
  cursor: pointer;
  transition: border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
.system-notification-x:hover {
  border-color: rgba(126, 210, 32, .62);
  background: rgba(158, 241, 37, .13);
  color: #397b0e;
  transform: rotate(4deg);
}
.system-notification-x:focus-visible,
.system-notification-action:focus-visible {
  outline: 3px solid rgba(158, 241, 37, .25);
  outline-offset: 3px;
}
.system-notification-x svg { width: 19px; height: 19px; }
.system-notification-icon {
  width: 72px;
  height: 72px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(var(--notification-accent-rgb), .42);
  border-radius: 22px;
  background: rgba(var(--notification-accent-rgb), .1);
  color: var(--notification-accent);
  box-shadow: 0 0 24px rgba(var(--notification-accent-rgb), .13);
}
.system-notification-icon svg { width: 35px; height: 35px; }
.system-notification-copy { width: 100%; display: grid; gap: 10px; }
.system-notification-copy h2 {
  margin: 0;
  color: #11170f;
  font-size: clamp(21px, 4vw, 27px);
  font-weight: 850;
  line-height: 1.35;
}
.system-notification-copy p,
.system-notification-copy ul {
  margin: 0;
  color: #566156;
  font-size: 14px;
  line-height: 1.9;
}
.system-notification-copy ul {
  padding: 0;
  display: grid;
  gap: 8px;
  list-style: none;
  text-align: start;
}
.system-notification-copy li {
  position: relative;
  padding: 10px 14px;
  padding-inline-start: 32px;
  border: 1px solid rgba(var(--notification-accent-rgb), .16);
  border-radius: 12px;
  background: rgba(var(--notification-accent-rgb), .055);
}
.system-notification-copy li::before {
  content: "";
  position: absolute;
  inset-block-start: 20px;
  inset-inline-start: 14px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--notification-accent);
  box-shadow: 0 0 9px rgba(var(--notification-accent-rgb), .46);
}
.system-notification-action {
  width: min(100%, 210px);
  min-height: 48px;
  justify-content: center;
  border-color: var(--brand-lime);
  background: linear-gradient(135deg, #b3f33c, #74db12);
  color: #0b1008;
  box-shadow: 0 10px 24px rgba(110, 220, 21, .2);
  font-weight: 850;
}
.system-notification-action:hover {
  border-color: #baff45;
  background: linear-gradient(135deg, #c0fb4e, #82e519);
  color: #080d06;
  transform: translateY(-1px);
}
[data-theme="dark"] .system-notification {
  background:
    radial-gradient(circle at 50% 0, rgba(158, 241, 37, .1), transparent 42%),
    #0d140c;
  color: #f3f7f0;
  box-shadow:
    0 0 0 1px rgba(158, 241, 37, .07),
    0 0 32px rgba(126, 232, 27, .3),
    0 32px 90px rgba(0, 0, 0, .62);
}
[data-theme="dark"] .system-notification-x {
  border-color: rgba(158, 241, 37, .16);
  background: rgba(158, 241, 37, .055);
  color: #9eac9b;
}
[data-theme="dark"] .system-notification-x:hover {
  border-color: rgba(158, 241, 37, .48);
  background: rgba(158, 241, 37, .11);
  color: #b9f464;
}
[data-theme="dark"] .system-notification-copy h2 { color: #f6faf3; }
[data-theme="dark"] .system-notification-copy p,
[data-theme="dark"] .system-notification-copy ul { color: #b4c0b1; }
[data-theme="dark"] .system-notification-copy li { background: rgba(var(--notification-accent-rgb), .07); }
.system-notification-overlay.is-closing { animation: notification-overlay-out .18s ease forwards; }
.system-notification-overlay.is-closing .system-notification { animation: notification-card-out .18s ease forwards; }

@keyframes notification-overlay-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes notification-overlay-out { from { opacity: 1; } to { opacity: 0; } }
@keyframes notification-card-in {
  from { opacity: 0; transform: translateY(15px) scale(.965); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes notification-card-out {
  from { opacity: 1; transform: translateY(0) scale(1); }
  to { opacity: 0; transform: translateY(8px) scale(.98); }
}

@media (max-width: 520px) {
  .system-notification-overlay { padding: 14px; }
  .system-notification { max-height: calc(100dvh - 28px); padding: 30px 20px 22px; border-radius: 20px; gap: 16px; }
  .system-notification-icon { width: 64px; height: 64px; border-radius: 19px; }
  .system-notification-icon svg { width: 31px; height: 31px; }
  .system-notification-x { inset-block-start: 12px; inset-inline-end: 12px; width: 35px; height: 35px; }
}

@media (prefers-reduced-motion: reduce) {
  .system-notification-overlay,
  .system-notification,
  .system-notification-overlay.is-closing,
  .system-notification-overlay.is-closing .system-notification { animation-duration: 1ms !important; }
  .security-modal[open] { animation-duration: 1ms !important; }
}

/* Neutral palette for destructive controls and error alerts. */
:root { --danger: #6f777e; }

.button-danger,
.remove-field,
.status-debit,
.status-suspended,
.status-deleted,
[data-theme="dark"] .button-danger,
[data-theme="dark"] .remove-field {
  border-color: #aeb4b9;
  background: #6f777e;
  color: #fff;
  box-shadow: 0 5px 14px rgba(67, 74, 80, .16);
}
/* Shared request badges in admin/customer histories and detail dialogs. */
.status-badge.status-pending {
  background: #9ef125;
  color: #17220d;
}
.status-badge.status-rejected {
  border-color: #f3a4a4;
  background: #ffc4c4;
  color: #7f1d1d;
  box-shadow: none;
}

.button-danger:hover,
.remove-field:hover,
[data-theme="dark"] .button-danger:hover,
[data-theme="dark"] .remove-field:hover {
  border-color: #92999f;
  background: #5f676f;
  color: #fff;
}

.alert-danger,
[data-theme="dark"] .alert-danger {
  border-color: #aeb4b9;
  background: #6f777e;
  color: #fff;
}

.dashboard-logout:hover,
[data-theme="dark"] .dashboard-logout:hover {
  background: rgba(150, 157, 163, .2);
  color: #fff;
}

.danger-zone,
[data-theme="dark"] .danger-zone {
  border-color: #aeb4b9;
  background: #6f777e;
  color: #fff;
}
.danger-zone h3,
.danger-zone p,
[data-theme="dark"] .danger-zone h3,
[data-theme="dark"] .danger-zone p { color: #fff; }
.danger-zone p { opacity: .88; }

.security-danger-action summary {
  padding: 10px 14px;
  border: 1px solid #aeb4b9;
  border-radius: 10px;
  background: #6f777e;
  color: #fff;
}
.security-danger-action summary:hover { background: #5f676f; color: #fff; }

.recovery-regeneration-copy {
  padding: 10px 12px;
  border: 1px solid #aeb4b9;
  border-radius: 10px;
  background: #6f777e;
}
.recovery-regeneration-copy p,
.recovery-regeneration-copy small,
[data-theme="dark"] .recovery-regeneration-copy p,
[data-theme="dark"] .recovery-regeneration-copy small { color: #fff; }
.recovery-regeneration-copy small { opacity: .86; }

.verification-rejection-note,
[data-theme="dark"] .verification-rejection-note {
  border-color: #aeb4b9;
  background: #6f777e;
  color: #fff;
}

.system-notification-error,
[data-theme="dark"] .system-notification.system-notification-error {
  --notification-accent: #fff;
  --notification-accent-rgb: 255, 255, 255;
  border-color: #aeb4b9;
  background: linear-gradient(145deg, #6f777e, #606870);
  color: #fff;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, .08),
    0 0 28px rgba(158, 241, 37, .18),
    0 30px 80px rgba(0, 0, 0, .4);
}
.system-notification-error .system-notification-copy h2,
.system-notification-error .system-notification-copy p,
.system-notification-error .system-notification-copy ul { color: #fff; }
.system-notification-error .system-notification-copy li,
[data-theme="dark"] .system-notification-error .system-notification-copy li {
  border-color: rgba(255, 255, 255, .22);
  background: rgba(255, 255, 255, .09);
}
.system-notification-error .system-notification-x,
[data-theme="dark"] .system-notification-error .system-notification-x {
  border-color: rgba(255, 255, 255, .28);
  background: rgba(255, 255, 255, .1);
  color: #fff;
}

/* Icon language selector, aligned with neighboring header controls. */
.language-picker {
  position: relative;
  z-index: 80;
  flex: 0 0 auto;
}
.language-picker[open] { z-index: 220; }
.language-picker-trigger {
  width: 42px;
  height: 42px;
  min-height: 42px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid var(--border);
  border-radius: 10px;
  background: #fff;
  color: #253028;
  box-shadow: 0 1px 2px rgba(17, 23, 19, .025);
  cursor: pointer;
  font-size: 12px;
  font-weight: 750;
  list-style: none;
  white-space: nowrap;
  transition: border-color .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}
.language-picker-trigger::-webkit-details-marker { display: none; }
.language-picker-trigger > .ui-icon { width: 20px; height: 20px; color: var(--primary); }
.language-picker[open] .language-picker-trigger {
  border-color: #8ed02d;
  background: #f8fbf4;
  box-shadow: 0 0 0 3px rgba(158, 241, 37, .11);
}
.language-picker-trigger:hover { border-color: #b7c9bd; background: #f8fbf9; }
.language-picker-trigger:focus-visible { outline: 3px solid rgba(158, 241, 37, .23); outline-offset: 3px; }
.language-picker-menu {
  position: absolute;
  inset-block-start: calc(100% + 8px);
  inset-inline-end: 0;
  width: max-content;
  min-width: 174px;
  padding: 6px;
  display: grid;
  gap: 4px;
  border: .5px solid #d4dfcf;
  border-radius: 13px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(17, 35, 23, .18), 0 0 18px rgba(126, 232, 27, .08);
}
.language-picker-option {
  min-height: 42px;
  padding: 8px 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  border: 1px solid transparent;
  border-radius: 9px;
  color: #39453d;
  font-size: 12px;
  font-weight: 700;
  transition: border-color .15s ease, background .15s ease, color .15s ease;
}
.language-picker-option small { color: #879087; font-family: "Segoe UI", Arial, sans-serif; font-size: 10px; font-weight: 800; letter-spacing: .05em; }
.language-picker-option:hover { border-color: #d9e7d2; background: #f6faf3; color: #1d2b1d; }
.language-picker-option.active { border-color: rgba(126, 197, 28, .42); background: rgba(158, 241, 37, .15); color: #396f13; }
.language-picker-option.active small { color: #4c861d; }

[data-theme="dark"] .language-picker-trigger {
  border-color: #2a3930;
  background: #141c17;
  color: #e4ece7;
  box-shadow: none;
}
[data-theme="dark"] .language-picker-trigger:hover,
[data-theme="dark"] .language-picker[open] .language-picker-trigger { border-color: #5f8d2f; background: #19241d; color: #f3f7f0; }
[data-theme="dark"] .language-picker-menu { border-color: #30402c; background: #101710; box-shadow: 0 20px 50px rgba(0, 0, 0, .55), 0 0 18px rgba(126, 232, 27, .11); }
[data-theme="dark"] .language-picker-option { color: #dfe8dc; }
[data-theme="dark"] .language-picker-option small { color: #869482; }
[data-theme="dark"] .language-picker-option:hover { border-color: #35472f; background: #172019; color: #fff; }
[data-theme="dark"] .language-picker-option.active { border-color: rgba(158, 241, 37, .34); background: rgba(158, 241, 37, .11); color: #b7f15f; }
[data-theme="dark"] .language-picker-option.active small { color: #a2d955; }

@media (max-width: 520px) {
  .dashboard-topbar-actions .language-picker-trigger { width: 40px; }
  .language-picker-menu { min-width: 158px; }
}

/* Centered branded authentication heading */
.auth-heading-branded {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.auth-logo-frame {
  width: 110px;
  height: 110px;
  margin: 0 auto 20px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  overflow: hidden;
  border: .5px solid rgba(195, 255, 77, .42);
  border-radius: 50%;
  background: #000;
  box-shadow: 0 0 14px rgba(158, 241, 37, .16), inset 0 0 8px rgba(158, 241, 37, .05);
}
.auth-heading-branded .auth-logo {
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
  flex: none;
  object-fit: cover;
  border: 0;
  border-radius: 50%;
  background: #000;
  box-shadow: none;
  filter: none;
}
.auth-heading-branded h2,
.auth-heading-branded p {
  width: 100%;
  margin-inline: auto;
  text-align: center;
}

@media (max-width: 520px) {
  .auth-logo-frame {
    width: 98px;
    height: 98px;
    margin-bottom: 17px;
  }
}

/* Internal support tickets */
.dashboard-nav-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-nav-count {
  min-width: 22px;
  height: 22px;
  margin-inline-start: auto;
  padding-inline: 6px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border: .5px solid rgba(158, 241, 37, .38);
  border-radius: 999px;
  background: rgba(158, 241, 37, .14);
  color: var(--brand-lime);
  font-size: 10px;
  font-weight: 800;
}
.status-new { background: rgba(158, 241, 37, .13); color: #bdf56c; }
.status-waiting_support { background: rgba(255, 209, 102, .12); color: #ffdc83; }
.status-waiting_customer { background: rgba(105, 175, 255, .12); color: #8bc2ff; }
.status-resolved { background: rgba(38, 217, 128, .12); color: #57e89d; }
.status-closed { background: rgba(174, 180, 185, .13); color: #d1d5d8; }
.support-priority {
  padding: 5px 9px;
  display: inline-flex;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 750;
  white-space: nowrap;
}
.priority-normal { background: rgba(174, 180, 185, .11); color: #c9d0cc; }
.priority-high { background: rgba(255, 209, 102, .12); color: #ffdc83; }
.priority-urgent { background: rgba(255, 171, 64, .15); color: #ffc16f; box-shadow: 0 0 12px rgba(255, 171, 64, .08); }
.support-metrics { margin-bottom: 16px; }
.support-metrics .dashboard-metric { min-height: 126px; }
.support-metrics .dashboard-metric strong { margin-top: 12px; }
.support-filter-bar { grid-template-columns: minmax(220px, 1.4fr) repeat(4, minmax(145px, .65fr)) auto; }
.support-admin-table { min-width: 1160px; }
.support-ticket-table { min-width: 840px; }
.support-ticket-table th { font-size: 13px; }
.support-ticket-table td { font-size: 14px; line-height: 1.55; }
.support-ticket-table .status-badge,
.support-ticket-table .support-priority { font-size: 12px; }
.support-row-unread { background: rgba(158, 241, 37, .035); }
.support-row-unread td:first-child { box-shadow: inset 3px 0 0 rgba(158, 241, 37, .65); }
[dir="rtl"] .support-row-unread td:first-child { box-shadow: inset -3px 0 0 rgba(158, 241, 37, .65); }
.support-unread-pill {
  width: fit-content;
  margin-top: 6px;
  padding: 3px 7px;
  display: block;
  border-radius: 999px;
  background: rgba(158, 241, 37, .14);
  color: var(--brand-lime);
  font-size: 9px;
  font-weight: 800;
  white-space: nowrap;
}
.support-status-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.support-reply-link {
  min-height: 29px;
  padding: 4px 11px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: .5px solid rgba(158, 241, 37, .48);
  border-radius: 999px;
  background: rgba(158, 241, 37, .11);
  color: var(--brand-lime);
  font-size: 11px;
  font-weight: 800;
}
.support-reply-link:hover { border-color: var(--brand-lime); background: rgba(158, 241, 37, .18); color: #d5ff94; }
.support-create-panel { max-width: 980px; }
.support-compose-form { display: grid; gap: 16px; }
.support-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.support-form-grid .full-span { grid-column: 1 / -1; }
.support-file-field input[type="file"] { min-height: 50px; padding: 11px; }
.support-ticket-heading { align-items: center; }
.support-ticket-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 340px);
  align-items: start;
  gap: 16px;
}
.admin-support-ticket-layout { grid-template-columns: minmax(0, 1fr) minmax(300px, 360px); }
.support-admin-sidebar { display: grid; gap: 16px; }
.support-conversation-panel { min-width: 0; padding: 0; overflow: hidden; }
.support-panel-head {
  padding: 18px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border-bottom: .5px solid var(--border);
}
.support-panel-head h3,
.support-ticket-details h3,
.support-control-panel h3 { margin: 0; font-size: 16px; }
.support-panel-head p { margin: 4px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.support-live-dot {
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: var(--brand-lime);
  box-shadow: 0 0 0 5px rgba(158, 241, 37, .08), 0 0 14px rgba(158, 241, 37, .4);
  animation: support-live-pulse 2s ease-in-out infinite;
}
@keyframes support-live-pulse { 50% { opacity: .55; box-shadow: 0 0 0 8px rgba(158, 241, 37, .02), 0 0 8px rgba(158, 241, 37, .25); } }
.support-thread {
  min-height: 320px;
  max-height: 620px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  overflow-y: auto;
  background: rgba(5, 10, 7, .32);
  scroll-behavior: smooth;
}
.support-message {
  width: min(82%, 680px);
  padding: 13px 15px;
  border: .5px solid var(--border);
  border-radius: 15px;
  background: #151e18;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .1);
}
.support-message.is-mine {
  align-self: flex-end;
  border-color: rgba(158, 241, 37, .26);
  background: linear-gradient(145deg, rgba(91, 145, 34, .2), #151e18 72%);
}
.support-message.is-other { align-self: flex-start; }
.support-message.is-customer:not(.is-internal) {
  border-color: rgba(158, 241, 37, .28);
  background: linear-gradient(145deg, rgba(91, 145, 34, .22), #151e18 74%);
}
.support-message.is-staff:not(.is-internal) {
  border-color: rgba(105, 175, 255, .38);
  background: linear-gradient(145deg, rgba(46, 108, 164, .28), #14202a 74%);
}
.support-message.is-internal {
  width: min(92%, 760px);
  align-self: center;
  border-style: dashed;
  border-color: rgba(174, 180, 185, .45);
  background: #343b38;
  color: #fff;
}
.support-message header { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.support-message header > span { display: flex; align-items: center; flex-wrap: wrap; gap: 7px; }
.support-message header strong { font-size: 12px; }
.support-message time { color: var(--muted); font-size: 10px; white-space: nowrap; }
.support-message p { margin: 9px 0 0; color: var(--text); font-size: 14px; line-height: 1.75; white-space: pre-wrap; overflow-wrap: anywhere; }
.support-message.is-internal p,
.support-message.is-internal time { color: #fff; }
.support-internal-badge { padding: 3px 7px; border-radius: 999px; background: rgba(255, 255, 255, .12); color: #fff; font-size: 9px; font-weight: 800; }
.support-attachment { margin-top: 12px; display: grid; gap: 7px; }
.support-attachment img { width: min(100%, 420px); max-height: 300px; object-fit: contain; border: .5px solid rgba(255, 255, 255, .22); border-radius: 11px; background: #080c09; }
.support-attachment span { display: flex; align-items: center; gap: 6px; color: var(--brand-lime); font-size: 11px; font-weight: 700; }
.support-attachment .ui-icon { width: 15px; height: 15px; }
.support-reply-form { padding: 18px 20px 20px; display: grid; gap: 12px; border-top: .5px solid var(--border); scroll-margin-top: 90px; }
.support-reply-form textarea { min-height: 110px; resize: vertical; }
.support-reply-fields { min-width: 0; margin: 0; padding: 0; border: 0; display: grid; gap: 12px; }
.support-close-form { margin: 0; }
[data-support-close-form][hidden],
[data-support-reply-form][hidden],
[data-support-closed-notice][hidden] { display: none !important; }
.support-reply-actions { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.support-compact-file { position: relative; min-height: 42px; padding: 9px 12px; display: inline-flex; align-items: center; border: .5px solid var(--border); border-radius: 9px; background: rgba(255, 255, 255, .025); color: var(--muted); cursor: pointer; overflow: hidden; }
.support-compact-file > span { display: flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 700; }
.support-compact-file .ui-icon { width: 16px; height: 16px; }
.support-compact-file input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.support-internal-toggle { padding: 11px 12px; display: flex; align-items: flex-start; gap: 10px; border: .5px solid rgba(174, 180, 185, .35); border-radius: 11px; background: rgba(174, 180, 185, .07); cursor: pointer; }
.support-internal-toggle input { width: 18px; min-height: 18px; margin-top: 2px; accent-color: var(--brand-lime); }
.support-internal-toggle strong,
.support-internal-toggle small { display: block; }
.support-internal-toggle strong { font-size: 12px; }
.support-internal-toggle small { margin-top: 3px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.support-closed-notice { margin: 18px 20px 20px; padding: 13px 15px; border: .5px solid #aeb4b9; border-radius: 11px; background: #6f777e; color: #fff; font-size: 13px; }
.support-ticket-details h3,
.support-control-panel h3 { margin-bottom: 16px; }
.support-ticket-details dl { margin: 0; display: grid; }
.support-ticket-details dl > div { padding: 10px 0; display: grid; grid-template-columns: minmax(100px, .85fr) minmax(0, 1.15fr); gap: 12px; border-bottom: .5px solid var(--border); }
.support-ticket-details dl > div:last-child { border-bottom: 0; }
.support-ticket-details dt { color: var(--muted); font-size: 12px; }
.support-ticket-details dd { min-width: 0; margin: 0; font-size: 14px; overflow-wrap: anywhere; }

[data-theme="light"] .support-thread { background: rgba(226, 235, 229, .35); }
[data-theme="light"] .support-message { background: #fff; box-shadow: 0 8px 22px rgba(35, 54, 42, .06); }
[data-theme="light"] .support-message.is-mine { background: linear-gradient(145deg, rgba(158, 241, 37, .13), #fff 74%); }
[data-theme="light"] .support-message.is-customer:not(.is-internal) { border-color: rgba(90, 145, 35, .28); background: #f3faef; }
[data-theme="light"] .support-message.is-staff:not(.is-internal) { border-color: rgba(50, 118, 180, .28); background: #eef6ff; }
[data-theme="light"] .support-message.is-internal { background: #6f777e; color: #fff; }
[data-theme="light"] .priority-normal { color: #505b55; }

@media (max-width: 1180px) {
  .support-filter-bar { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .support-filter-bar input[type="search"] { grid-column: span 2; }
}
@media (max-width: 900px) {
  .support-ticket-layout,
  .admin-support-ticket-layout { grid-template-columns: 1fr; }
  .support-admin-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .support-form-grid,
  .support-admin-sidebar,
  .support-filter-bar { grid-template-columns: 1fr; }
  .support-filter-bar input[type="search"] { grid-column: auto; }
  .support-message { width: 92%; }
  .support-message.is-internal { width: 100%; }
  .support-thread { padding: 14px 12px; }
  .support-reply-form { padding: 15px 12px; }
  .support-reply-actions { align-items: stretch; }
  .support-reply-actions > * { width: 100%; justify-content: center; }
  .support-ticket-heading { align-items: stretch; }
  .support-ticket-heading .page-heading-actions { align-items: stretch; }

  .support-ticket-table {
    width: 100%;
    min-width: 0;
    display: block;
    border-collapse: separate;
  }
  .support-ticket-table thead { display: none; }
  .support-ticket-table tbody {
    width: 100%;
    display: grid;
    gap: 14px;
  }
  .support-ticket-table tbody tr {
    width: 100%;
    display: block;
    overflow: hidden;
    border: .5px solid var(--border);
    border-radius: 14px;
    background: rgba(255, 255, 255, .018);
  }
  .support-ticket-table tbody td {
    width: 100%;
    padding: 12px 14px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    border-bottom: .5px solid var(--border);
    text-align: start;
    font-size: 15px;
    line-height: 1.65;
  }
  .support-ticket-table tbody td:last-child { border-bottom: 0; }
  .support-ticket-table tbody td::before {
    content: attr(data-label);
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
  }
  .support-ticket-table tbody td > time { width: fit-content; }
  .support-ticket-table .support-unread-pill { margin-top: 0; }
  .support-ticket-table .support-status-actions { gap: 10px; }
  .support-ticket-table .support-reply-link { min-height: 32px; padding-inline: 13px; font-size: 12px; }
  .support-ticket-table .support-empty-row td {
    padding: 34px 16px;
    display: block;
    border-bottom: 0;
    text-align: center;
  }
  .support-ticket-table .support-empty-row td::before { content: none; }
  .support-ticket-details dl > div {
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .support-live-dot { animation: none; }
}

/* Damascus market rates */
.market-rates-section { padding: 86px 0; border-block: .5px solid var(--border); background: #07100a; scroll-margin-top: 78px; }
.market-rates-board { width: min(100%, 920px); margin-inline: auto; padding: clamp(24px, 4vw, 46px) clamp(12px, 4vw, 38px) 22px; border: 0; border-radius: 24px; background: #08130c; box-shadow: 0 22px 70px rgba(0, 0, 0, .18); }
.market-rates-heading { margin: 0 0 34px; text-align: center; }
.market-rates-heading h2 { margin: 0; color: var(--brand-lime); font-size: clamp(34px, 5vw, 50px); font-weight: 850; letter-spacing: -.04em; text-shadow: 0 0 18px rgba(158, 241, 37, .16); }
.market-rates-updated { margin: 15px 0 0; color: var(--muted); font-size: 11px; }
.market-rates-updated b { color: var(--text); font-weight: 650; }
.market-rates-updated span { white-space: nowrap; }
.market-rates-description { margin: 48px 0 0; color: var(--muted); font-size: clamp(15px, 2.3vw, 19px); }
.market-rates-list { overflow: visible; border: 0; border-radius: 0; }
.market-rate-row { min-height: 72px; padding: 12px 6px; display: grid; grid-template-columns: minmax(220px, 1.8fr) minmax(120px, 1fr) minmax(120px, 1fr); align-items: center; gap: 16px; border-bottom: 1px solid rgba(208, 221, 213, .55); background: transparent; }
.market-rate-row[hidden] { display: none !important; }
.market-rate-row:not(.market-rate-header) { transition: background-color .18s ease, color .18s ease; }
.market-rate-row:not(.market-rate-header):hover { background: rgba(158, 241, 37, .035); }
.market-rate-header { min-height: 48px; padding-block: 8px; color: #c7d0ca; font-size: 13px; font-weight: 800; }
.market-rate-header span:not(:first-child), .market-rate-price { text-align: center; }
.market-rate-currency { min-width: 0; display: flex; align-items: center; gap: 11px; }
.market-rate-flag { width: 36px; height: 27px; display: block; flex: 0 0 36px; overflow: hidden; border: 0; border-radius: 6px; background: #111c15; object-fit: cover; }
.market-rate-flag-emoji { display: grid; place-items: center; font-size: 21px; line-height: 1; }
.market-rate-currency strong { overflow: hidden; color: #dce4df; text-overflow: ellipsis; white-space: nowrap; font-size: 15px; font-weight: 550; }
.market-rate-price { min-width: 0; }
.market-rate-price small { display: none; }
.market-rate-price strong { display: block; color: #dce4df; font-size: 16px; font-weight: 550; line-height: 1.3; }
.market-rates-toggle { margin: 20px auto 0; padding: 7px 14px; display: flex; align-items: center; justify-content: center; gap: 9px; color: var(--muted); font-size: 13px; cursor: pointer; }
.market-rates-toggle:hover { color: var(--brand-lime); }
.market-rates-toggle i { width: 8px; height: 8px; border-inline-end: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.market-rates-toggle[aria-expanded="true"] i { transform: translateY(2px) rotate(225deg); }
.market-rates-empty { margin: 0; padding: 34px 20px; border-block: 1px solid var(--border); color: var(--muted); text-align: center; }
.market-rates-page-actions { margin-top: 18px; display: flex; justify-content: center; }

[data-theme="light"] .market-rates-section { border-color: #dfe7d8; background: #f5f8f1; }
[data-theme="light"] .market-rates-board { background: #fff; box-shadow: 0 18px 54px rgba(35, 54, 42, .08); }
[data-theme="light"] .market-rate-row { border-color: #bdc9c1; }
[data-theme="light"] .market-rate-row:not(.market-rate-header):hover { background: #f6faf3; }
[data-theme="light"] .market-rate-header { color: #526159; }
[data-theme="light"] .market-rate-flag { background: #f0f4ef; }
[data-theme="light"] .market-rate-currency strong,
[data-theme="light"] .market-rate-price strong { color: #243028; }

@media (max-width: 680px) {
  .market-rates-section { padding: 52px 0; }
  .market-rates-board { padding: 30px 8px 18px; border-radius: 18px; }
  .market-rates-heading { margin-bottom: 25px; padding-inline: 8px; }
  .market-rates-heading h2 { font-size: clamp(29px, 10vw, 38px); }
  .market-rates-updated { font-size: 10px; }
  .market-rates-description { margin-top: 34px; font-size: 14px; }
  .market-rate-row { min-height: 62px; padding-inline: 4px; grid-template-columns: minmax(110px, 1.45fr) repeat(2, minmax(66px, 1fr)); gap: 7px; }
  .market-rate-header { min-height: 43px; font-size: 11px; }
  .market-rate-currency { gap: 7px; }
  .market-rate-flag { width: 29px; height: 22px; flex-basis: 29px; border-radius: 5px; font-size: 17px; }
  .market-rate-currency strong, .market-rate-price strong { font-size: 13px; }
}

/* Market-rate administration */
.market-admin-panel { margin-top: 22px; }
.market-source-status { flex: 0 0 auto; }
.market-admin-grid { display: grid; grid-template-columns: minmax(220px, .8fr) minmax(340px, 1.7fr) auto; align-items: end; gap: 18px; }
.market-admin-control { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 9px; }
.market-admin-control .field-label { margin-top: 0; }
.market-admin-source { min-height: 50px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: 13px; }
.market-admin-source span { min-width: 0; }
.market-admin-source small, .market-admin-source b, .market-admin-source a { display: block; overflow-wrap: anywhere; }
.market-admin-source small { color: var(--muted); font-size: 9px; }
.market-admin-source b, .market-admin-source a { margin-top: 3px; font-size: 11px; }
.market-admin-source a { color: var(--brand-lime); }
.market-admin-sync .ui-icon { width: 17px; height: 17px; }
.market-normalization-note { margin: 15px 0 0; }
.exchange-rate-editor { display: grid; gap: 10px; }
.exchange-rate-status-line { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.exchange-rate-status-line strong { font-size: 14px; }
.exchange-rate-status-line small { color: var(--muted); font-size: 10px; }
.rate-sync-warning { padding: 9px 11px; border: .5px solid rgba(174, 180, 185, .45); border-radius: 9px; background: #6f777e; color: #fff; font-size: 11px; }

[data-theme="light"] .rate-sync-warning { background: #7a8288; }

@media (max-width: 1050px) {
  .market-admin-grid { grid-template-columns: 1fr 1fr; }
  .market-admin-source { grid-column: 1 / -1; grid-row: 1; }
}
@media (max-width: 680px) {
  .market-admin-grid, .market-admin-control, .market-admin-source { grid-template-columns: 1fr; }
  .market-admin-source { grid-column: auto; grid-row: auto; }
  .market-admin-sync .button { width: 100%; }
}

/* Administrative identity-verification review */
.identity-review-tabs { margin-bottom: 14px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.identity-review-tabs a { min-height: 58px; padding: 11px 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface); color: var(--muted); font-size: 12px; font-weight: 750; }
.identity-review-tabs a:hover { border-color: rgba(124, 203, 42, .48); color: var(--text); }
.identity-review-tabs a.active { border-color: rgba(158, 241, 55, .62); background: rgba(158, 241, 55, .1); color: var(--text); box-shadow: 0 0 18px rgba(126, 222, 34, .08); }
.identity-review-tabs b { min-width: 28px; height: 28px; padding-inline: 7px; display: grid; place-items: center; border-radius: 9px; background: rgba(158, 241, 55, .12); color: var(--brand-lime); font-size: 11px; }
.identity-verification-filter { grid-template-columns: minmax(220px, 1fr) auto; }
.identity-request-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 14px; }
.identity-request-card { min-width: 0; margin: 0; display: grid; align-content: start; gap: 17px; }
.identity-request-card > header { min-width: 0; display: grid; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 11px; }
.identity-request-avatar { width: 44px; height: 44px; display: grid; place-items: center; border: 1px solid rgba(158, 241, 55, .28); border-radius: 13px; background: rgba(158, 241, 55, .1); color: var(--brand-lime); font-size: 12px; font-weight: 850; }
.identity-request-customer { min-width: 0; }
.identity-request-customer b, .identity-request-customer small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.identity-request-customer b { font-size: 13px; }
.identity-request-customer small { margin-top: 4px; color: var(--muted); font-size: 9px; }
.identity-request-card dl { margin: 0; display: grid; gap: 9px; }
.identity-request-card dl > div { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.identity-request-card dt { color: var(--muted); font-size: 10px; }
.identity-request-card dd { margin: 0; color: var(--text); font-size: 11px; font-weight: 750; text-align: end; }
.identity-verification-empty { grid-column: 1 / -1; min-height: 210px; margin: 0; display: flex; align-items: center; justify-content: center; gap: 16px; text-align: center; }
.identity-verification-empty > span { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 16px; background: rgba(158, 241, 55, .1); color: var(--brand-lime); }
.identity-verification-empty .ui-icon { width: 25px; height: 25px; }
.identity-verification-empty h3 { margin: 0; font-size: 15px; }
.identity-verification-empty p { margin: 5px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.identity-review-layout { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.identity-review-information { margin: 0; }
.admin-verification-documents, .identity-decision-panel, .identity-review-note { margin-top: 16px; }
.admin-verification-images { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 14px; }
.admin-verification-image { min-width: 0; overflow: hidden; border: 1px solid var(--border); border-radius: 14px; background: rgba(255, 255, 255, .02); color: var(--text); transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease; }
.admin-verification-image:hover { border-color: rgba(158, 241, 55, .58); transform: translateY(-2px); box-shadow: 0 14px 34px rgba(0, 0, 0, .12); }
.admin-verification-image img { width: 100%; height: 300px; display: block; background: #07100a; object-fit: contain; }
.admin-verification-image > span { padding: 11px 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.admin-verification-image b { font-size: 12px; }
.admin-verification-image small { color: var(--brand-lime); font-size: 9px; }
.identity-private-files-note { margin: 14px 0 0; padding: 11px 13px; display: flex; align-items: center; gap: 9px; border: 1px solid rgba(158, 241, 55, .22); border-radius: 11px; background: rgba(158, 241, 55, .07); color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.identity-private-files-note .ui-icon { width: 17px; height: 17px; flex: 0 0 auto; color: var(--brand-lime); }
.identity-decision-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 14px; }
.identity-approve-form, .identity-reject-form { min-width: 0; padding: 16px; display: grid; align-content: start; gap: 14px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255, 255, 255, .02); }
.identity-revoke-form { max-width: 680px; }
.identity-approve-form > div b { font-size: 13px; }
.identity-approve-form > div p { margin: 6px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.identity-reject-form label { display: grid; gap: 7px; }
.identity-reject-form small { color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.identity-review-note h3 { margin-top: 0; }
.identity-review-note p { margin-bottom: 0; color: var(--muted); line-height: 1.8; }
[data-theme="light"] .identity-review-tabs a, [data-theme="light"] .admin-verification-image, [data-theme="light"] .identity-approve-form, [data-theme="light"] .identity-reject-form { background: #fff; }
[data-theme="light"] .identity-review-tabs a.active { background: #f1f9e8; }

@media (max-width: 760px) {
  .identity-review-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .identity-verification-filter, .identity-review-layout, .identity-decision-grid { grid-template-columns: minmax(0, 1fr); }
  .identity-request-grid { grid-template-columns: minmax(0, 1fr); }
  .admin-verification-images { grid-template-columns: minmax(0, 1fr); }
  .admin-customer-security-grid { grid-template-columns: minmax(0, 1fr); }
  .admin-verification-image img { height: 240px; }
}

@media (max-width: 420px) {
  .identity-review-tabs a { min-height: 52px; padding: 9px 10px; font-size: 10px; }
  .identity-request-card > header { grid-template-columns: 40px minmax(0, 1fr); }
  .identity-request-avatar { width: 40px; height: 40px; }
  .identity-request-card > header .status-badge { grid-column: 1 / -1; }
  .identity-verification-empty { min-height: 180px; flex-direction: column; }
}

/* Customer dashboard section settings */
.customer-sections-panel { max-width: 1000px; }
.customer-section-switches { display: grid; gap: 12px; }
.customer-section-switch { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--border); border-radius: 14px; background: var(--surface-2); cursor: pointer; }
.customer-section-switch-icon { width: 38px; height: 38px; flex-shrink: 0; display: grid; place-items: center; border-radius: 11px; color: var(--primary); background: var(--primary-soft); }
.customer-section-switch-icon .ui-icon { width: 21px; height: 21px; }
.customer-section-switch-copy { flex: 1; min-width: 0; }
.customer-section-switch-copy b { display: block; font-size: 13px; }
.customer-section-switch-copy small { display: block; margin-top: 5px; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.customer-section-switch-input[type="checkbox"] { appearance: none; width: 44px; min-width: 44px; height: 26px; min-height: 26px; padding: 3px; margin: 0; border: 1px solid var(--border); border-radius: 20px; background: var(--surface-3); cursor: pointer; }
.customer-section-switch-input::before { content: ""; display: block; width: 18px; height: 18px; border-radius: 50%; background: var(--muted); }
.customer-section-switch-input:checked { background: var(--primary-strong); border-color: var(--primary-strong); }
.customer-section-switch-input:checked::before { background: #fff; transform: translateX(18px); }
[dir="rtl"] .customer-section-switch-input:checked::before { transform: translateX(-18px); }
.customer-section-switch-input:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.customer-section-switch-status { min-width: 58px; font-size: 11px; color: var(--muted); }
.customer-section-switch-status .when-enabled { display: none; }
.customer-section-switch-input:checked + .customer-section-switch-status .when-enabled { display: inline; color: var(--primary); }
.customer-section-switch-input:checked + .customer-section-switch-status .when-disabled { display: none; }
@media (max-width: 620px) {
  .customer-section-switch { flex-wrap: wrap; padding: 12px; gap: 10px; }
  .customer-section-switch-copy { flex-basis: calc(100% - 48px); }
}

/* Customer dashboard advertisements */
.customer-advertisement-slider {
  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0 auto 16px;
  overflow: hidden;
  border: .5px solid rgba(255, 255, 255, .9);
  border-radius: 16px;
  background: radial-gradient(circle at 82% 18%, rgba(158, 241, 37, .13), transparent 34%), #050703;
  box-shadow: 0 0 7px rgba(158, 241, 37, .32), 0 0 22px rgba(158, 241, 37, .18), 0 10px 28px rgba(9, 16, 5, .1);
  isolation: isolate;
  touch-action: pan-y;
}
.customer-advertisement-track { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); min-height: 78px; overflow: hidden; }
.customer-advertisement-slide {
  position: relative;
  grid-area: 1 / 1;
  min-width: 0;
  overflow: hidden;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  z-index: 0;
  transition: none;
}
.customer-advertisement-slide.is-active { visibility: visible; opacity: 1; pointer-events: auto; z-index: 1; }
.customer-advertisement-slide.is-leaving { visibility: visible; opacity: 1; pointer-events: none; z-index: 2; }
.customer-advertisement-slide.is-entering, .customer-advertisement-slide.is-leaving { will-change: transform; }
.customer-advertisement-slide.without-image {
  background:
    radial-gradient(circle at 84% 12%, rgba(158, 241, 37, .17), transparent 32%),
    linear-gradient(135deg, #020401, #0a1007 58%, #030503);
}
.customer-advertisement-slide::after {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(5, 7, 3, .92), rgba(5, 7, 3, .58) 55%, rgba(5, 7, 3, .3)),
    linear-gradient(0deg, rgba(5, 7, 3, .42), transparent 65%);
}
[dir="rtl"] .customer-advertisement-slide::after {
  background:
    linear-gradient(270deg, rgba(5, 7, 3, .92), rgba(5, 7, 3, .58) 55%, rgba(5, 7, 3, .3)),
    linear-gradient(0deg, rgba(5, 7, 3, .42), transparent 65%);
}
.customer-advertisement-slide.without-image::after { background: linear-gradient(135deg, rgba(0, 0, 0, .05), rgba(0, 0, 0, .42)); }
.customer-advertisement-slide > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.customer-advertisement-copy {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  min-height: 78px;
  padding: 12px 46px;
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #fff;
}
.customer-advertisement-copy p {
  min-width: 0;
  max-width: 650px;
  margin: 0;
  overflow: hidden;
  color: #fff;
  font-size: 16px;
  font-weight: 760;
  line-height: 1.35;
  overflow-wrap: anywhere;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.customer-advertisement-copy a { min-height: 27px; max-width: 45%; flex-shrink: 0; margin: 0; padding: 4px 10px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; overflow-wrap: anywhere; border: .5px solid rgba(255, 255, 255, .88); border-radius: 9px; background: linear-gradient(135deg, var(--brand-lime-soft), var(--brand-green)); color: #071003; font-size: 10px; font-weight: 850; box-shadow: 0 0 13px rgba(158, 241, 37, .2); }
.customer-advertisement-copy a:hover { filter: brightness(1.05); transform: translateY(-1px); }
.customer-advertisement-copy a .ui-icon { width: 13px; height: 13px; }
[dir="rtl"] .customer-advertisement-copy a .ui-icon { transform: scaleX(-1); }
.customer-advertisement-close {
  position: absolute;
  z-index: 7;
  inset-inline-end: 10px;
  top: 7px;
  width: 26px;
  height: 26px;
  padding: 0 0 2px;
  display: grid;
  place-items: center;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  color: #fff;
  font-size: 20px;
  line-height: 1;
  backdrop-filter: none;
}
.customer-advertisement-close:hover { color: var(--brand-lime); background: transparent; }
.customer-advertisement-close:focus-visible { outline: 2px solid var(--brand-lime); outline-offset: 2px; }
.customer-advertisement-control {
  position: absolute;
  z-index: 4;
  bottom: 5px;
  width: 26px;
  height: 26px;
  padding: 0;
  display: grid;
  place-items: center;
  border: .5px solid rgba(255, 255, 255, .58);
  border-radius: 50%;
  background: rgba(5, 7, 3, .52);
  color: #fff;
  font-size: 22px;
  line-height: 1;
  backdrop-filter: blur(7px);
}
.customer-advertisement-control:hover { border-color: var(--brand-lime); background: rgba(5, 7, 3, .78); color: var(--brand-lime); }
.customer-advertisement-control.previous { inset-inline-start: 12px; }
.customer-advertisement-control.next { inset-inline-end: 12px; }
.customer-advertisement-dots { position: absolute; z-index: 5; inset-inline: 0; bottom: 5px; display: flex; justify-content: center; gap: 6px; pointer-events: none; }
.customer-advertisement-dots button { width: 7px; height: 7px; padding: 0; border: 0; border-radius: 999px; background: rgba(255, 255, 255, .5); pointer-events: auto; transition: width .2s ease, background .2s ease; }
.customer-advertisement-dots button.is-active { width: 22px; background: var(--brand-lime); }
.customer-advertisement-progress { position: absolute; z-index: 5; inset-inline: 0; bottom: 0; height: 2px; overflow: hidden; background: rgba(158, 241, 37, .14); pointer-events: none; }
.customer-advertisement-progress.is-top { top: 0; bottom: auto; }
.customer-advertisement-progress[hidden] { display: none; }
.customer-advertisement-progress > span { display: block; width: 100%; height: 100%; background: var(--brand-lime); transform: scaleX(0); transform-origin: left center; }
[dir="rtl"] .customer-advertisement-progress > span { transform-origin: right center; }
.customer-advertisement-progress.is-top > span { transform-origin: right center; }
[dir="rtl"] .customer-advertisement-progress.is-top > span { transform-origin: left center; }
@keyframes advertisement-countdown { from { transform: scaleX(0); } to { transform: scaleX(1); } }

/* Compact the primary wallet to leave room for the advertisement strip. */
.customer-overview-page .balance-hero { min-height: 225px; padding: 20px 22px; }
.customer-overview-page .balance-hero-amount { margin: 14px 0; font-size: clamp(34px, 4.4vw, 48px); }

/* Keep balance actions in one row, following the page's reading direction. */
.customer-overview-page .balance-hero-footer > .balance-hero-actions {
  width: 100%;
  display: flex;
  flex-wrap: nowrap;
  gap: 7px;
}
.customer-overview-page .balance-hero-actions a {
  flex: 1 1 0;
  min-width: 0;
  min-height: 46px;
  padding: 6px;
  gap: 5px;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-size: 13px;
  line-height: 16px;
  white-space: normal;
  overflow-wrap: break-word;
}
.customer-overview-page .balance-hero-actions a > span { min-width: 0; }
.customer-overview-page .balance-hero-actions .ui-icon { flex-shrink: 0; }
@media (max-width: 480px) {
  .customer-overview-page .balance-hero-footer > .balance-hero-actions { gap: 5px; }
  .customer-overview-page .balance-hero-actions a { padding: 5px 4px; min-height: 44px; font-size: 12px; line-height: 15px; }
  .customer-overview-page .balance-hero-actions .ui-icon { display: none; }
}
@media (max-width: 380px) {
  .customer-overview-page .balance-hero-footer > .balance-hero-actions { gap: 4px; }
  .customer-overview-page .balance-hero-actions a { padding-inline: 3px; }
}

/* Advertisement administration */
.admin-advertisement-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.admin-advertisement-card { min-width: 0; margin: 0; padding: 0; overflow: hidden; }
.admin-advertisement-art { position: relative; height: 180px; overflow: hidden; background: #050703; }
.admin-advertisement-art.without-image { background: radial-gradient(circle at 80% 18%, rgba(158, 241, 37, .16), transparent 34%), linear-gradient(135deg, #020401, #0a1007); }
.admin-advertisement-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgba(5, 7, 3, .62), transparent 64%); pointer-events: none; }
.admin-advertisement-art img { width: 100%; height: 100%; display: block; object-fit: cover; }
.admin-advertisement-art .status-badge { position: absolute; z-index: 2; inset-inline-start: 13px; top: 13px; }
.admin-advertisement-copy { padding: 16px; }
.admin-advertisement-copy h3 { margin: 0; font-size: 16px; line-height: 1.65; }
.admin-advertisement-copy > p { margin: 6px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.admin-advertisement-copy dl { margin: 15px 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.admin-advertisement-copy dl > div { min-width: 0; padding: 9px 10px; border: 1px solid var(--border); border-radius: 9px; background: var(--surface-2); }
.admin-advertisement-copy dt { color: var(--muted); font-size: 9px; }
.admin-advertisement-copy dd { margin: 4px 0 0; overflow: hidden; color: var(--text); font-size: 10px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.advertisement-empty-state { grid-column: 1 / -1; min-height: 230px; display: flex; align-items: center; justify-content: center; gap: 15px; text-align: center; }
.advertisement-empty-state > span { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 16px; background: rgba(158, 241, 37, .1); color: var(--brand-lime); }
.advertisement-empty-state .ui-icon { width: 25px; height: 25px; }
.advertisement-empty-state h3 { margin: 0; }
.advertisement-empty-state p { margin: 5px 0 0; color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.advertisement-admin-form { max-width: 1080px; }
.advertisement-form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.advertisement-image-editor { padding: 14px; display: grid; grid-template-columns: minmax(0, 1fr) 280px; align-items: center; gap: 16px; border: 1px solid var(--border); border-radius: 13px; background: var(--surface-2); }
.advertisement-image-editor input[type="file"] { min-height: 48px; padding: 7px 9px; }
.advertisement-image-controls { min-width: 0; display: grid; gap: 11px; }
.advertisement-remove-image { width: fit-content; display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 10px; }
.advertisement-remove-image input { width: 17px; height: 17px; min-height: 0; accent-color: var(--brand-lime); }
.advertisement-admin-preview { height: 120px; overflow: hidden; border: .5px solid rgba(255, 255, 255, .75); border-radius: 13px; background: #050703; box-shadow: 0 0 13px rgba(158, 241, 37, .12); }
.advertisement-admin-preview.without-image { display: grid; place-items: center; background: radial-gradient(circle at 78% 18%, rgba(158, 241, 37, .15), transparent 34%), #050703; color: #d5e3cf; font-size: 10px; }
.advertisement-admin-preview img { width: 100%; height: 100%; display: block; object-fit: cover; }
.advertisement-schedule-note { min-height: 74px; padding: 12px 14px; display: flex; align-items: center; gap: 10px; border: 1px solid rgba(158, 241, 37, .22); border-radius: 11px; background: rgba(158, 241, 37, .07); color: var(--muted); font-size: var(--help-text-size); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.advertisement-schedule-note .ui-icon { width: 19px; height: 19px; flex: 0 0 auto; color: var(--brand-lime); }

@media (max-width: 820px) {
  .admin-advertisement-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 620px) {
  .customer-advertisement-track { min-height: 71px; }
  .customer-advertisement-copy { min-height: 71px; padding: 12px 42px; flex-direction: column; gap: 4px; }
  .customer-advertisement-copy p { font-size: 14px; line-height: 1.35; }
  .customer-advertisement-copy a { max-width: 100%; }
  .customer-advertisement-close { width: 24px; height: 24px; inset-inline-end: 8px; top: 7px; font-size: 18px; }
  .customer-advertisement-control { width: 24px; height: 24px; font-size: 19px; }
  .customer-advertisement-control.previous { inset-inline-start: 9px; }
  .customer-advertisement-control.next { inset-inline-end: 9px; }
  .customer-overview-page .balance-hero { min-height: 235px; padding: 18px; }
  .customer-overview-page .balance-hero-amount { margin: 12px 0; }
  .advertisement-form-grid, .advertisement-image-editor { grid-template-columns: minmax(0, 1fr); }
  .advertisement-admin-preview { width: min(100%, 320px); justify-self: center; }
}

@media (max-width: 420px) {
  .admin-advertisement-copy dl { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  .customer-advertisement-slide, .customer-advertisement-copy a, .customer-advertisement-dots button { transition: none; }
  .customer-advertisement-progress { display: none; }
}

/* Currency-first deposits: server-rendered steps also work without JavaScript. */
.deposit-flow { width: 100%; max-width: 1120px; margin-inline: auto; }
.deposit-progress { margin: 18px 0 26px; }
.deposit-progress ol { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); gap: 12px; padding: 0; margin: 12px 0 0; list-style: none; }
.deposit-progress li { min-width: 0; display: flex; align-items: center; gap: 10px; padding: 12px; border-bottom: 2px solid var(--border); color: var(--muted); }
.deposit-progress li > span { flex: 0 0 30px; width: 30px; height: 30px; display: grid; place-items: center; border: 1px solid var(--border); border-radius: 50%; font-size: 13px; }
.deposit-progress li b { font-size: 13px; }
.deposit-progress li.is-current { border-color: var(--primary); color: var(--text); }
.deposit-progress li.is-current > span { background: var(--primary); border-color: var(--primary); color: #101704; font-weight: 800; }
.deposit-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 18px 0; }
.deposit-option { min-width: 0; min-height: 146px; padding: 22px 18px; display: flex; align-items: center; gap: 14px; border: 1px solid var(--border); border-radius: 18px; color: var(--text); background: var(--surface); transition: border-color 180ms ease, box-shadow 180ms ease; }
.deposit-option:hover, .deposit-option:focus-visible { border-color: var(--primary); box-shadow: 0 0 0 2px rgba(158, 241, 37, .16); outline: none; }
.deposit-option > span:nth-child(2) { flex: 1; min-width: 0; }
.deposit-option b { display: block; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
.deposit-option small { display: block; margin-top: 6px; color: var(--muted); font-size: var(--help-text-size); line-height: 1.8; overflow-wrap: anywhere; }
.deposit-option > .ui-icon { flex: 0 0 18px; width: 18px; height: 18px; color: var(--primary); }
.deposit-option-icon { flex: 0 0 42px; width: 42px; height: 42px; display: inline-grid; place-items: center; background: rgba(158, 241, 37, .1); color: var(--primary); border: 1px solid rgba(158, 241, 37, .22); border-radius: 13px; }
.deposit-option-icon img { width: 30px; height: 30px; object-fit: contain; }
.deposit-option-icon .ui-icon { width: 24px; height: 24px; }
.deposit-selection { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; margin-bottom: 22px; border: 1px solid rgba(158, 241, 37, .3); border-radius: 14px; background: rgba(158, 241, 37, .06); }
.deposit-selection span { min-width: 0; overflow-wrap: anywhere; }
.deposit-details-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 20px; align-items: start; }
.deposit-details-grid > * { min-width: 0; }
.deposit-instructions > p, .deposit-flow form small { color: var(--muted); font-size: var(--help-text-size); line-height: 1.8; overflow-wrap: anywhere; }
.deposit-instructions-text { white-space: pre-wrap; overflow-wrap: anywhere; padding: 16px; margin: 16px 0; background: var(--surface-2); border: 1px solid var(--border); border-radius: 12px; line-height: 1.9; }
.deposit-instructions-disclosure { margin: 16px 0; }
.deposit-instructions-disclosure > summary { padding: 12px 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-2); color: var(--primary); font-size: 14px; line-height: 1.8; cursor: pointer; overflow-wrap: anywhere; }
.deposit-instructions-disclosure > summary:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
.deposit-instructions-disclosure .deposit-details-hide,
.deposit-instructions-disclosure[open] .deposit-details-show { display: none; }
.deposit-instructions-disclosure[open] .deposit-details-hide { display: inline; }
.deposit-preserve-lines { white-space: pre-wrap; overflow-wrap: anywhere; }
.deposit-instructions .detail-list { margin-top: 18px; }
.deposit-notice { padding: 14px 18px; border-inline-start: 3px solid var(--primary); border-radius: 8px; background: rgba(158, 241, 37, .07); font-size: var(--help-text-size); line-height: 1.9; overflow-wrap: anywhere; }
.deposit-summary dd { max-width: 70%; overflow-wrap: anywhere; }
.deposit-summary .deposit-net { padding: 20px 0; color: var(--primary); }
.deposit-summary .deposit-net dd { font-size: 24px; font-weight: 800; }
.deposit-actions { display: flex; align-items: end; flex-wrap: wrap; gap: 10px; }
.deposit-actions form { margin: 0; }
.deposit-tabs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.deposit-tabs a { padding: 11px 18px; border: 1px solid var(--border); border-radius: 12px; color: var(--muted); }
.deposit-tabs a.is-current { color: var(--text); border-color: var(--primary); background: rgba(158, 241, 37, .08); }
.deposit-admin-list { display: grid; gap: 12px; }
.deposit-admin-row { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; padding: 16px; background: var(--surface-2); border: 1px solid var(--border); border-radius: 14px; }
.deposit-admin-row > div:first-child { flex: 1; min-width: 160px; overflow-wrap: anywhere; }
.deposit-empty { grid-column: 1 / -1; text-align: center; padding: 32px; color: var(--muted); }
.deposit-group-fields[hidden] { display: none; }
.deposit-basic-fields { min-width: 0; }
.deposit-basic-fields > p { color: var(--muted); font-size: var(--help-text-size); line-height: 1.8; overflow-wrap: anywhere; }
.deposit-basic-field { min-width: 0; margin: 18px 0 0; padding: 18px; border: 1px solid var(--border); border-radius: 14px; }
.deposit-basic-field legend { max-width: 100%; padding: 0 8px; font-weight: 700; color: var(--primary); overflow-wrap: anywhere; }
.deposit-basic-field label { min-width: 0; }
.deposit-basic-field small { color: var(--muted); }
@media (max-width: 1000px) {
  .deposit-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .deposit-details-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 620px) {
  .deposit-options { grid-template-columns: minmax(0, 1fr); gap: 12px; }
  .deposit-option { min-height: 100px; padding: 16px; }
  .deposit-progress ol { gap: 6px; }
  .deposit-progress li { flex-direction: column; gap: 8px; padding: 10px 3px; text-align: center; }
  .deposit-progress li b { font-size: 11px; }
  .deposit-flow > .deposit-actions > .button { flex: 1 1 100%; }
  .deposit-admin-row > .deposit-actions { width: 100%; }
  .deposit-summary .detail-list > div { align-items: flex-start; }
  .deposit-summary dd { max-width: 62%; }
}
@media (prefers-reduced-motion: reduce) {
  .deposit-option { transition: none; }
}

/* Deposit receipt uploads and private request previews. */
.deposit-receipt-field { display: grid; gap: 10px; min-width: 0; }
.deposit-receipt-field > .field-label { margin-bottom: 0; }
.deposit-receipt-upload { position: relative; display: flex; align-items: center; gap: 12px; min-width: 0; min-height: 64px; padding: 9px 12px; border: 1px solid var(--border); border-radius: 12px; background: var(--glass-input, var(--surface)); }
.deposit-receipt-upload:hover { border-color: var(--primary); }
.deposit-receipt-upload:focus-within { border-color: var(--primary); outline: 2px solid var(--primary); outline-offset: 2px; }
.deposit-receipt-upload-icon { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 10px; color: var(--primary); background: var(--primary-soft); }
.deposit-receipt-upload-icon .ui-icon { width: 24px; height: 24px; }
.deposit-receipt-upload-name { min-width: 0; font-size: 14px; overflow-wrap: anywhere; }
.deposit-receipt-upload input[type="file"] { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; min-width: 0; min-height: 0; margin: 0; padding: 0; border: 0; opacity: 0; cursor: pointer; }
.deposit-receipt-card { margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--border); }
.deposit-receipt-image { display: block; width: 100%; max-height: 280px; object-fit: contain; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-2); }
.deposit-receipt-name { overflow-wrap: anywhere; font-size: 13px; color: var(--muted); }

/* Receiving addresses and their uncropped QR codes share one saved source. */
.deposit-receiving-settings { min-width: 0; padding: 18px; border: 1px solid var(--border); border-radius: 14px; }
.deposit-receiving-settings h3 { margin-top: 0; }
.deposit-receiving-settings > p { font-size: var(--help-text-size); color: var(--muted); line-height: var(--help-text-leading); overflow-wrap: anywhere; }
.deposit-receiving-address { display: grid; gap: 12px; min-width: 0; margin-top: 16px; }
.deposit-receiving-address .field-label { margin: 0; text-align: center; }
.deposit-receiving-network { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; font-size: 14px; }
.deposit-receiving-network b { padding: 3px 10px; border-radius: 8px; background: var(--primary-soft); }
.deposit-address-value { display: block; max-width: 100%; padding: 12px; border: 1px solid var(--border); border-radius: 10px; background: var(--surface-2); color: var(--text); font-size: 14px; overflow-wrap: anywhere; white-space: normal; text-align: left; user-select: all; }
.deposit-receiving-address > .deposit-address-value { text-align: center; }
.deposit-receiving-address > .button { justify-self: center; }
/* The SVG retains its scanning margin; avoid adding another white frame. */
.deposit-receiving-qr { width: min(100%, 280px); justify-self: center; padding: 0; border-radius: 10px; overflow: hidden; background: #fff; }
.deposit-receiving-qr img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; border-radius: 0; background: #fff; }
.deposit-receiving-address > small { color: var(--muted); line-height: 1.8; }

/* Dashboard balances keep their formatted precision with smaller decimal digits. */
.balance-number { white-space: nowrap; unicode-bidi: isolate; }
.balance-number .balance-fraction { font-size: .5em; line-height: 1; vertical-align: baseline; letter-spacing: normal; }

/* Show the original wallet balance above its estimate in the primary currency. */
.customer-overview-page .wallet-overview-item { grid-template-columns: 44px minmax(0, 1fr) minmax(92px, max-content); }
.customer-overview-page .wallet-overview-balance { gap: 6px; }
.customer-overview-page .wallet-overview-balance > .wallet-equivalent { max-width: 100%; margin: 0; padding: 0; border: 0; background: transparent; color: var(--brand-lime); font-size: 12px; font-weight: 600; line-height: 1.4; text-align: center; }
.customer-overview-page .wallet-overview-balance > .wallet-equivalent.is-unavailable { max-width: 110px; color: var(--muted); font-size: 10px; white-space: normal; }
@media (max-width: 520px) {
  .customer-overview-page .wallet-overview-item { grid-template-columns: 42px minmax(0, 1fr) minmax(88px, max-content); }
}

/* Approved SmartGiftEX S identity: transparent mark and adaptive wordmark. */
.brand, .preview-brand { direction: ltr; }
.brand-logo,
.dashboard-sidebar .brand-logo,
.auth-heading-branded .auth-logo {
  object-fit: contain;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  filter: none;
}
.auth-logo-frame {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.brand-wordmark {
  display: inline-flex;
  align-items: baseline;
  gap: 0;
  direction: ltr;
  unicode-bidi: isolate;
  white-space: nowrap;
  font-family: "Segoe UI", Arial, sans-serif;
  font-weight: 750;
  line-height: 1.15;
  letter-spacing: -.035em;
}
.brand-wordmark-main { color: #10150c; }
[data-theme="dark"] .brand-wordmark-main { color: #fff; }
.auth-intro .brand-wordmark-main,
.platform-preview .brand-wordmark-main { color: #fff; }
.brand-wordmark-accent { color: var(--brand-lime, #9ef125); }
.brand > .brand-wordmark { font-size: 20px; }
.preview-brand .brand-wordmark { font-size: 13px; }
@media (max-width: 520px) {
  .brand > .brand-wordmark { font-size: 18px; }
}

/* Separate exchange and card instructions in the public how-it-works section. */
.how-steps-group { margin-top: 38px; }
.how-steps-title { margin: 0; color: var(--text); font-size: 23px; font-weight: 750; line-height: 1.5; }
.how-steps-group .steps-grid { margin-top: 22px; }
.how-steps-group .step-card h4 { margin: 47px 0 8px; color: var(--text); font-size: 19px; line-height: 1.5; }
.how-steps-group + .how-steps-group { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--border); }
@media (max-width: 760px) {
  .how-steps-title { font-size: 21px; }
  .how-steps-group + .how-steps-group { margin-top: 32px; padding-top: 26px; }
}

/* Public currency and gift-card strip: full-circle images and continuous motion. */
.gift-brand-strip { padding: 27px 0 12px; border-block: 1px solid var(--border); background: linear-gradient(100deg, var(--primary-soft), transparent 45%, var(--primary-soft)); }
.gift-brand-heading { display: flex; align-items: center; justify-content: center; gap: 12px; }
.gift-brand-heading h2 { margin: 0; color: var(--text); font-size: clamp(18px, 2.2vw, 22px); font-weight: 750; line-height: 1.6; text-align: center; }
.gift-brand-motion { flex: none; width: 30px; height: 30px; display: grid; place-items: center; padding: 6px; border: 1px solid var(--border); border-radius: 50%; background: transparent; color: var(--muted); }
.gift-brand-motion[hidden] { display: none !important; }
.gift-brand-motion:hover, .gift-brand-motion:focus-visible { color: var(--text); border-color: var(--primary); }
.gift-brand-motion svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.gift-brand-motion .gift-brand-play, .gift-brand-motion[aria-pressed="true"] .gift-brand-pause { display: none; }
.gift-brand-motion[aria-pressed="true"] .gift-brand-play { display: block; }
/* Anchor the oversized track to the left in both Arabic and English layouts. */
.gift-brand-viewport { padding: 24px 0 5px; overflow: hidden; direction: ltr; }
.gift-brand-track { display: flex; justify-content: center; direction: ltr; }
.gift-brand-group { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: center; gap: 22px; width: 100%; margin: 0; padding: 0; list-style: none; }
.gift-brand-item { flex: 0 0 124px; width: 124px; display: flex; flex-direction: column; align-items: center; gap: 12px; border-radius: 18px; outline: none; }
.gift-brand-orb { position: relative; isolation: isolate; width: 92px; height: 92px; display: grid; place-items: center; flex: none; overflow: hidden; border: 1px solid rgba(158, 241, 37, .3); border-radius: 50%; background: linear-gradient(145deg, rgba(255,255,255,.13), transparent 58%), var(--glass-panel, var(--surface)); box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 7px 24px rgba(100,170,22,.1); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease; }
.gift-brand-orb img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 50%; }
.gift-brand-orb img[hidden] { display: none; }
.gift-brand-fallback { position: absolute; inset: 0; display: grid; place-items: center; visibility: hidden; color: var(--primary); }
.gift-brand-fallback b { max-width: 100%; padding: 6px; font-size: 22px; line-height: 1.1; overflow-wrap: anywhere; }
.gift-brand-fallback .ui-icon { width: 34px; height: 34px; }
.gift-brand-item.has-fallback .gift-brand-fallback { visibility: visible; }
.gift-brand-name { max-width: 100%; min-height: 42px; color: var(--text); font-size: 13px; font-weight: 650; line-height: 1.5; text-align: center; overflow-wrap: anywhere; transition: opacity .2s ease, transform .2s ease; }
.gift-brand-item:hover .gift-brand-orb, .gift-brand-item:focus .gift-brand-orb { transform: translateY(-3px) scale(1.07); border-color: var(--primary); box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 0 27px rgba(158,241,37,.2); }
.gift-brand-item:focus-visible .gift-brand-orb, .gift-brand-motion:focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; }
.gift-brand-strip.is-moving .gift-brand-viewport { -webkit-mask-image: linear-gradient(to right, transparent, #000 7%, #000 93%, transparent); mask-image: linear-gradient(to right, transparent, #000 7%, #000 93%, transparent); }
.gift-brand-strip.is-moving .gift-brand-track { width: max-content; justify-content: flex-start; will-change: transform; }
.gift-brand-strip.is-moving .gift-brand-group { flex: none; width: auto; flex-wrap: nowrap; justify-content: flex-start; padding-inline-end: 22px; }
.gift-brand-strip.is-moving .gift-brand-name { opacity: 0; transform: translateY(4px); }
.gift-brand-strip.is-moving .gift-brand-item:is(:hover, :focus, .has-fallback) .gift-brand-name { opacity: 1; transform: none; }
@media (hover: none) {
  .gift-brand-strip.is-moving .gift-brand-name { opacity: 1; transform: none; }
}
@media (max-width: 600px) {
  .gift-brand-strip { padding-top: 22px; }
  .gift-brand-item { flex-basis: 102px; width: 102px; }
  .gift-brand-orb { width: 80px; height: 80px; }
  .gift-brand-group { gap: 16px; }
  .gift-brand-strip.is-moving .gift-brand-group { padding-inline-end: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .gift-brand-orb, .gift-brand-name { transition: none; }
  .gift-brand-item:hover .gift-brand-orb, .gift-brand-item:focus .gift-brand-orb { transform: none; }
}

/* Read the public policy before agreeing on the registration form. */
.terms-check .terms-policy-link { color: var(--primary); font-weight: 650; text-decoration: underline; text-underline-offset: 4px; }
.terms-check .terms-policy-link:hover { color: var(--text); }
.terms-check .terms-policy-link:focus-visible { outline: 2px solid var(--primary); outline-offset: 4px; border-radius: 3px; }
.terms-check > input { flex-shrink: 0; }
.terms-check label { cursor: pointer; }
.public-policy-content { padding-block: 20px; border-block: 1px solid var(--border); overflow-wrap: anywhere; }

/* Light-red symbols and icon frames for warning and error messages. */
.system-notification-warning .system-notification-icon,
.system-notification-error .system-notification-icon {
  color: #ffc1c1;
  border-color: #ffc1c1;
}

/* Customer sidebar: separate section groups, without borders on menu items. */
.dashboard-nav[data-customer-nav] > .dashboard-nav-section {
  border-top: .5px solid #9ef125;
  padding-top: 12px;
  color: #000;
}
[data-theme="dark"] .dashboard-nav[data-customer-nav] > .dashboard-nav-section {
  color: #fff;
}
