:root {
    --ej-navy: #283979; --ej-teal: #21b2b8; --ej-orange: #f9ad1c; --ej-paper: #f7f5f0;
    --ej-surface: #fff; --ej-text: #283979; --ej-muted: #626b87; --ej-line: rgba(40,57,121,.13); --ej-teal-soft: #def3f4;
    --ej-font: 'Alexandria', Tahoma, Arial, sans-serif;
    --makeen-navy: var(--ej-navy); --makeen-teal: var(--ej-teal); --makeen-slate: var(--ej-navy); --makeen-gold: var(--ej-orange);
}
html.dark { --ej-paper: #131c39; --ej-surface: #1c2949; --ej-text: #f3f5fc; --ej-muted: #b7c3de; --ej-line: rgba(210,223,255,.16); --ej-teal-soft: #24454f; }
body.fi-body { background: var(--ej-paper); font-family: var(--ej-font) !important; font-weight: 500; line-height: 1.7; }
body.fi-body input, body.fi-body button, body.fi-body select, body.fi-body textarea { font-family: inherit; }
.fi-header-heading, .fi-section-header-heading, .ej-browser h2, .ej-browser h3 { font-family: var(--ej-font); font-weight: 700; color: var(--ej-text); line-height: 1.35; letter-spacing: 0; }
.fi-header-heading { font-size: clamp(1.6rem, 2.5vw, 2rem); }
.fi-sidebar, .fi-topbar { border-color: var(--ej-line) !important; }
.fi-sidebar-item-active a, .fi-sidebar-item-active button { background: var(--ej-teal-soft) !important; border-inline-start: 3px solid var(--ej-teal); border-radius: 10px; }
.fi-sidebar-item-active .fi-sidebar-item-label { color: var(--ej-text); }
.fi-section, .fi-ta-ctn, .fi-wi-stats-overview-stat { border: 1px solid var(--ej-line); border-radius: 16px; box-shadow: 0 4px 18px rgba(40,57,121,.035); }
.fi-section-header { border-top: 0; }
.fi-btn { border-radius: 10px; }
.fi-btn.fi-color-primary { box-shadow: 0 3px 10px rgba(40,57,121,.12); }
.fi-badge { border-radius: 7px; }
.ej-browser { display: grid; gap: 28px; color: var(--ej-text); }
.ej-browser *, .ej-browser *::before, .ej-browser *::after { box-sizing: border-box; }
.ej-steps { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; font-size: 12px; color: var(--ej-muted); }
.ej-steps > * { display: inline-flex; align-items: center; gap: 9px; text-decoration: none; }
.ej-steps b { display: grid; place-items: center; width: 27px; height: 27px; border-radius: 50%; border: 1px solid var(--ej-line); font-size: 11px; font-weight: 500; }
.ej-steps .is-current { color: var(--ej-text); font-weight: 700; }
.ej-steps .is-current b { background: var(--ej-navy); border-color: var(--ej-navy); color: #fff; }
.ej-steps a:hover { color: var(--ej-text); text-decoration: underline; }
.ej-hero { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 42px; background: var(--ej-navy); border-radius: 20px; color: #fff; overflow: hidden; }
.ej-hero::after { content: ''; position: absolute; inset-inline-start: 0; top: 35px; width: 4px; height: 34px; background: var(--ej-orange); border-radius: 4px; }
.ej-eyebrow { font-size: 11px; font-weight: 500; margin: 0 0 12px; line-height: 1.7; }
.ej-hero .ej-eyebrow { color: #bde9eb; }
.ej-eyebrow span { opacity: .45; margin: 0 10px; }
.ej-hero h2 { color: #fff; font-size: clamp(1.8rem, 3.2vw, 2.8rem); margin: 0 0 16px; }
.ej-hero-copy { color: #e0e6f6; max-width: 610px; font-size: 13px; line-height: 1.9; margin: 0; }
.ej-hero-mark { flex: 0 0 110px; display: grid; gap: 18px; opacity: .32; }
.ej-hero-mark i { display: block; height: 17px; background: var(--ej-teal); border-radius: 30px; }
.ej-hero-mark i:nth-child(2) { width: 80%; background: #fff; }
.ej-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.ej-section-title { margin: 0 0 4px; font-size: 20px; }
.ej-muted { color: var(--ej-muted); font-size: 12px; margin: 0; }
.ej-search { display: flex; align-items: center; gap: 10px; width: min(100%, 370px); border: 1px solid var(--ej-line); background: var(--ej-surface); border-radius: 12px; padding: 12px 16px; }
.ej-search > svg { width: 19px; height: 19px; color: var(--ej-muted); flex-shrink: 0; }
.ej-search input { width: 100%; min-width: 0; border: 0; outline: none; background: transparent; color: var(--ej-text); font: inherit; font-size: 12px; padding: 0; box-shadow: none; }
.ej-search:focus-within { border-color: var(--ej-teal); outline: 3px solid rgba(33,178,184,.15); }
.ej-search input::placeholder { color: var(--ej-muted); }
.ej-org-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; transition: opacity .15s; }
.ej-is-loading { opacity: .55; }
.ej-org-card { display: flex; flex-direction: column; padding: 24px; background: var(--ej-surface); border: 1px solid var(--ej-line); border-radius: 16px; text-decoration: none; color: inherit; transition: border-color .18s, box-shadow .18s, transform .18s; }
.ej-org-card:hover { border-color: var(--ej-teal); box-shadow: 0 10px 24px rgba(40,57,121,.07); transform: translateY(-3px); }
.ej-org-card:focus-visible, .ej-steps a:focus-visible { outline: 3px solid var(--ej-teal); outline-offset: 4px; }
.ej-org-card-top { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; gap: 12px; }
.ej-org-icon { display: grid; place-items: center; width: 48px; height: 48px; background: var(--ej-teal-soft); border-radius: 13px; color: var(--ej-text); flex-shrink: 0; }
.ej-org-icon svg { width: 24px; height: 24px; }
.ej-org-type { font-size: 10px; color: var(--ej-muted); border: 1px solid var(--ej-line); padding: 4px 10px; border-radius: 20px; }
.ej-org-card h3 { font-size: 18px; margin: 0 0 9px; overflow-wrap: anywhere; }
.ej-org-city { display: flex; align-items: center; gap: 5px; font-size: 11px; color: var(--ej-muted); margin: 0 0 24px; }
.ej-org-city svg { width: 15px; height: 15px; flex-shrink: 0; }
.ej-org-stats { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; border-top: 1px solid var(--ej-line); padding-top: 18px; margin-top: auto; }
.ej-org-stats > div { display: flex; flex-direction: column; gap: 5px; }
.ej-org-stats > div + div { border-inline-start: 1px solid var(--ej-line); padding-inline-start: 12px; }
.ej-org-stats strong { font-size: 23px; line-height: 1.2; font-weight: 700; font-family: var(--ej-font); }
.ej-org-stats span { color: var(--ej-muted); font-size: 10px; line-height: 1.7; }
.ej-org-card-footer { display: flex; align-items: center; justify-content: space-between; padding-top: 20px; margin-top: 20px; border-top: 1px solid var(--ej-line); font-size: 12px; font-weight: 600; }
.ej-org-card-footer svg { width: 23px; height: 23px; color: var(--ej-teal); }
[dir=ltr] .ej-org-card-footer svg { transform: rotate(180deg); }
.ej-empty { grid-column: 1/-1; display: grid; justify-items: center; gap: 16px; padding: 60px 24px; background: var(--ej-surface); border: 1px dashed var(--ej-line); border-radius: 16px; text-align: center; }
.ej-empty > svg { width: 36px; height: 36px; color: var(--ej-muted); }
.ej-empty h3 { margin: 0; font-size: 20px; }
.ej-empty p { margin: 0; font-size: 13px; color: var(--ej-muted); }
.ej-org-banner { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 28px; border: 1px solid var(--ej-line); border-radius: 16px; background: var(--ej-surface); }
.ej-org-banner-identity { display: flex; align-items: center; gap: 16px; min-width: 0; }
.ej-org-banner h2 { font-size: 23px; margin: 0 0 6px; overflow-wrap: anywhere; }
.ej-org-banner .ej-eyebrow { margin-bottom: 6px; color: var(--ej-muted); }
.ej-org-banner .ej-org-stats { border-top: 0; padding-top: 0; margin: 0; min-width: 320px; }
.ej-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
@media (max-width: 1100px) { .ej-org-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .ej-org-banner { align-items: flex-start; flex-direction: column; } .ej-org-banner .ej-org-stats { width: 100%; min-width: 0; } }
@media (max-width: 640px) { .ej-browser { gap: 22px; } .ej-org-grid { grid-template-columns: minmax(0,1fr); } .ej-hero { padding: 30px 24px; } .ej-hero-mark { display: none; } .ej-toolbar { flex-direction: column; align-items: stretch; } .ej-search { width: 100%; } .ej-steps { gap: 12px; font-size: 10px; } .ej-steps b { width: 23px; height: 23px; } .ej-org-banner { padding: 22px; } }
@media (prefers-reduced-motion: reduce) { .ej-org-card, .ej-org-grid { transition: none; } .ej-org-card:hover { transform: none; } }
