.iefa-v52 {
    --v52-ink: #09271f;
    --v52-muted: #61716b;
    --v52-green-950: #022f25;
    --v52-green-900: #064333;
    --v52-green-700: #0d7659;
    --v52-green-500: #1aaa7e;
    --v52-mint: #73e6bb;
    --v52-mint-soft: #eaf9f3;
    --v52-gold: #c4a35a;
    --v52-blue: #3e8ca3;
    --v52-line: rgba(8, 73, 55, 0.12);
    --v52-shadow: 0 24px 70px rgba(4, 54, 41, 0.11);
    display: grid;
    gap: 1rem;
    min-width: 0;
    color: var(--v52-ink);
}

.iefa-v52 *,
.iefa-v52 *::before,
.iefa-v52 *::after {
    box-sizing: border-box;
}

.iefa-v52 [x-cloak] {
    display: none !important;
}

.iefa-v52 button,
.iefa-v52 a,
.iefa-v52 input,
.iefa-v52 select,
.iefa-v52 textarea {
    font: inherit;
}

.iefa-v52 button,
.iefa-v52 a {
    -webkit-tap-highlight-color: transparent;
}

.iefa-v52-hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(22rem, 0.82fr);
    min-height: 31rem;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 2rem;
    background:
        radial-gradient(circle at 8% 10%, rgba(115, 230, 187, 0.2), transparent 24rem),
        radial-gradient(circle at 94% 82%, rgba(196, 163, 90, 0.22), transparent 20rem),
        linear-gradient(132deg, #022b22 0%, #07513e 50%, #0c7457 100%);
    box-shadow: 0 30px 80px rgba(3, 56, 42, 0.2);
    isolation: isolate;
}

.iefa-v52-hero::before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background-image:
        linear-gradient(rgba(255,255,255,.028) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
    background-size: 3rem 3rem;
    content: '';
    mask-image: linear-gradient(to right, #000, transparent 80%);
}

.iefa-v52-hero::after {
    position: absolute;
    top: -40%;
    left: -30%;
    width: 38%;
    height: 180%;
    transform: rotate(22deg);
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
    content: '';
    animation: v52-sheen 8s ease-in-out infinite;
}

.iefa-v52-hero__copy,
.iefa-v52-hero__visual {
    position: relative;
    z-index: 2;
}

.iefa-v52-hero__copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: clamp(2rem, 5vw, 4.25rem);
    color: #fff;
    animation: v52-rise .72s cubic-bezier(.2,.8,.2,1) both;
}

.iefa-v52-brandline {
    display: flex;
    align-items: center;
    gap: .85rem;
    margin-bottom: 2.3rem;
}

.iefa-v52-brandmark {
    display: grid;
    width: 4.35rem;
    height: 4.35rem;
    place-items: center;
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 1.35rem;
    background: linear-gradient(145deg, rgba(255,255,255,.98), rgba(235,249,243,.88));
    box-shadow: 0 18px 38px rgba(0,0,0,.2), inset 0 1px rgba(255,255,255,.8);
    animation: v52-brand-float 5s ease-in-out infinite;
}

.iefa-v52-brandmark img {
    width: 3rem;
    height: 3rem;
    object-fit: contain;
}

.iefa-v52-brandline > span:last-child {
    display: grid;
    gap: .08rem;
}

.iefa-v52-brandline strong {
    font-size: .9rem;
    font-weight: 900;
    letter-spacing: .15em;
}

.iefa-v52-brandline small {
    color: rgba(255,255,255,.62);
    font-size: .65rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.iefa-v52-eyebrow {
    display: flex;
    align-items: center;
    gap: .5rem;
    margin-bottom: .85rem;
    color: #bfead9;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}

.iefa-v52-eyebrow i,
.iefa-v52-command__status i,
.iefa-v52-footer > span i {
    width: .52rem;
    height: .52rem;
    border-radius: 50%;
    background: var(--v52-mint);
    box-shadow: 0 0 0 .28rem rgba(115,230,187,.14), 0 0 18px rgba(115,230,187,.65);
    animation: v52-pulse 2.3s ease-in-out infinite;
}

.iefa-v52-hero h2 {
    max-width: 44rem;
    margin: 0;
    font-size: clamp(2.7rem, 6vw, 5.55rem);
    font-weight: 900;
    letter-spacing: -.065em;
    line-height: .92;
}

.iefa-v52-hero h2 em {
    color: var(--v52-mint);
    font-style: normal;
}

.iefa-v52-hero__copy > p {
    max-width: 39rem;
    margin: 1.35rem 0 0;
    color: rgba(255,255,255,.76);
    font-size: clamp(.92rem, 1.5vw, 1.12rem);
    line-height: 1.65;
}

.iefa-v52-hero__pills {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    margin-top: 1.7rem;
}

.iefa-v52-hero__pills span {
    padding: .48rem .75rem;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 999px;
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.86);
    font-size: .64rem;
    font-weight: 750;
    backdrop-filter: blur(12px);
}

.iefa-v52-hero__visual {
    display: grid;
    align-content: center;
    padding: 2.5rem 3rem 2.5rem 0;
    animation: v52-rise .85s .12s cubic-bezier(.2,.8,.2,1) both;
}

.iefa-v52-glass-card {
    border: 1px solid rgba(255,255,255,.18);
    background: linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.07));
    box-shadow: 0 28px 70px rgba(0,25,18,.3), inset 0 1px rgba(255,255,255,.14);
    backdrop-filter: blur(22px);
}

.iefa-v52-glass-card--main {
    position: relative;
    z-index: 2;
    padding: 1.3rem;
    border-radius: 1.45rem;
    color: #fff;
    transform: perspective(900px) rotateY(-5deg) rotateX(2deg);
    transition: transform .55s cubic-bezier(.2,.8,.2,1), box-shadow .55s ease;
}

.iefa-v52-glass-card--main:hover {
    transform: perspective(900px) rotateY(0) rotateX(0) translateY(-.3rem);
    box-shadow: 0 34px 90px rgba(0,25,18,.36), inset 0 1px rgba(255,255,255,.18);
}

.iefa-v52-glass-card__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.iefa-v52-glass-card__head span {
    color: rgba(255,255,255,.65);
    font-size: .64rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.iefa-v52-glass-card__head i {
    padding: .28rem .48rem;
    border-radius: 999px;
    background: rgba(115,230,187,.15);
    color: #baf2dc;
    font-size: .55rem;
    font-style: normal;
    font-weight: 800;
}

.iefa-v52-score {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 1rem;
    margin-top: 1.25rem;
}

.iefa-v52-score__ring {
    display: grid;
    width: 6.4rem;
    height: 6.4rem;
    place-content: center;
    border-radius: 50%;
    background: radial-gradient(circle at center, #0a5b45 56%, transparent 57%), conic-gradient(var(--v52-mint) 0 92%, rgba(255,255,255,.13) 92% 100%);
    box-shadow: 0 0 35px rgba(115,230,187,.15);
}

.iefa-v52-score__ring strong {
    font-size: 1.72rem;
    letter-spacing: -.06em;
    line-height: 1;
}

.iefa-v52-score__ring small {
    color: rgba(255,255,255,.56);
    font-size: .55rem;
    text-align: center;
}

.iefa-v52-score > div:last-child {
    display: grid;
    gap: .25rem;
}

.iefa-v52-score > div:last-child strong { font-size: .92rem; }
.iefa-v52-score > div:last-child span { color: rgba(255,255,255,.58); font-size: .62rem; line-height: 1.45; }

.iefa-v52-sparkline {
    width: 100%;
    height: 5.4rem;
    margin-top: 1.2rem;
    overflow: visible;
}

.iefa-v52-sparkline__area { fill: url(#v52Spark); }
.iefa-v52-sparkline__line { fill: none; stroke: var(--v52-mint); stroke-width: 2.5; stroke-linecap: round; filter: drop-shadow(0 0 6px rgba(115,230,187,.5)); stroke-dasharray: 430; animation: v52-draw 1.8s .35s ease both; }
.iefa-v52-sparkline circle { fill: #fff; stroke: var(--v52-mint); stroke-width: 3; animation: v52-pulse-dot 2s infinite; }

.iefa-v52-float {
    position: absolute;
    z-index: 3;
    display: grid;
    min-width: 7.1rem;
    gap: .05rem;
    padding: .8rem 1rem;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 1rem;
    background: rgba(255,255,255,.92);
    box-shadow: 0 18px 45px rgba(2,41,31,.24);
    backdrop-filter: blur(16px);
}

.iefa-v52-float span { color: var(--v52-green-900); font-size: 1.15rem; font-weight: 900; letter-spacing: -.04em; }
.iefa-v52-float small { color: var(--v52-muted); font-size: .58rem; }
.iefa-v52-float--one { top: 13%; right: 1rem; animation: v52-float-one 5.4s ease-in-out infinite; }
.iefa-v52-float--two { right: 2.4rem; bottom: 12%; animation: v52-float-two 6.2s ease-in-out infinite; }

.iefa-v52-orbit {
    position: absolute;
    z-index: 0;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 50%;
}

.iefa-v52-orbit::after {
    position: absolute;
    top: 50%;
    left: -3px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--v52-mint);
    box-shadow: 0 0 14px var(--v52-mint);
    content: '';
}

.iefa-v52-orbit--one { top: -12rem; right: -10rem; width: 34rem; height: 34rem; animation: v52-spin 26s linear infinite; }
.iefa-v52-orbit--two { right: 8rem; bottom: -16rem; width: 28rem; height: 28rem; animation: v52-spin 34s linear reverse infinite; }

.iefa-v52-command {
    position: sticky;
    top: .75rem;
    z-index: 20;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.2rem;
    padding: .72rem .9rem;
    border: 1px solid rgba(8,73,55,.1);
    border-radius: 1.15rem;
    background: rgba(255,255,255,.82);
    box-shadow: 0 16px 45px rgba(5,54,41,.08);
    backdrop-filter: blur(18px);
}

.iefa-v52-command__logo { display: flex; align-items: center; gap: .5rem; }
.iefa-v52-command__logo img { width: 1.65rem; height: 1.65rem; object-fit: contain; }
.iefa-v52-command__logo span { font-size: .62rem; font-weight: 900; letter-spacing: .08em; }
.iefa-v52-command > div:nth-child(2) { display: flex; align-items: center; justify-content: center; gap: .25rem; }
.iefa-v52-command a { padding: .52rem .68rem; border-radius: .65rem; color: var(--v52-muted); font-size: .64rem; font-weight: 750; text-decoration: none; transition: color .2s ease, background .2s ease, transform .2s ease; }
.iefa-v52-command a:hover, .iefa-v52-command a:focus-visible { background: var(--v52-mint-soft); color: var(--v52-green-900); transform: translateY(-1px); }
.iefa-v52-command__status { display: flex; align-items: center; gap: .45rem; color: var(--v52-green-700); font-size: .58rem; font-weight: 800; white-space: nowrap; }
.iefa-v52-command__status i { width: .42rem; height: .42rem; }

.iefa-v52-section {
    min-width: 0;
    padding: clamp(1.25rem, 2.8vw, 2.1rem);
    border: 1px solid var(--v52-line);
    border-radius: 1.65rem;
    background:
        radial-gradient(circle at 100% 0, rgba(115,230,187,.08), transparent 20rem),
        #fff;
    box-shadow: var(--v52-shadow);
}

.iefa-v52-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}

.iefa-v52-heading > div:first-child { display: grid; gap: .2rem; }
.iefa-v52-heading > div:first-child > span, .iefa-v52-card-heading span { color: var(--v52-green-700); font-size: .62rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.iefa-v52-heading h3 { margin: 0; font-size: clamp(1.45rem, 3vw, 2.25rem); font-weight: 900; letter-spacing: -.045em; line-height: 1.08; }
.iefa-v52-heading > small { color: var(--v52-muted); font-size: .65rem; }

.iefa-v52-view-switch {
    display: flex;
    gap: .2rem;
    padding: .25rem;
    border: 1px solid var(--v52-line);
    border-radius: .85rem;
    background: #f4f9f6;
}

.iefa-v52-view-switch button,
.iefa-v52-alert-filters button {
    padding: .55rem .75rem;
    border-radius: .62rem;
    color: var(--v52-muted);
    font-size: .62rem;
    font-weight: 780;
    transition: color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.iefa-v52-view-switch button.is-active,
.iefa-v52-view-switch button:hover,
.iefa-v52-alert-filters button.is-active,
.iefa-v52-alert-filters button:hover {
    background: #fff;
    color: var(--v52-green-900);
    box-shadow: 0 8px 18px rgba(5,54,41,.08);
    transform: translateY(-1px);
}

.iefa-v52-periods {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: .7rem;
    margin-top: 1.35rem;
}

.iefa-v52-periods button {
    position: relative;
    display: grid;
    min-width: 0;
    gap: .25rem;
    overflow: hidden;
    padding: 1rem;
    border: 1px solid var(--v52-line);
    border-radius: 1rem;
    background: linear-gradient(145deg, #fff, #f7fbf9);
    text-align: left;
    transition: border .25s ease, transform .25s ease, box-shadow .25s ease, background .25s ease;
}

.iefa-v52-periods button::after {
    position: absolute;
    right: -.8rem;
    bottom: -.8rem;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background: rgba(26,170,126,.1);
    content: '';
    transform: scale(0);
    transition: transform .35s ease;
}

.iefa-v52-periods button:hover,
.iefa-v52-periods button:focus-visible,
.iefa-v52-periods button.is-active {
    border-color: rgba(13,118,89,.38);
    background: linear-gradient(145deg, #fff, #edf9f4);
    box-shadow: 0 16px 32px rgba(5,54,41,.09);
    transform: translateY(-3px);
}

.iefa-v52-periods button.is-active::after { transform: scale(1); }
.iefa-v52-periods button > span { color: var(--v52-green-500); font-size: .55rem; font-weight: 900; letter-spacing: .12em; }
.iefa-v52-periods strong { font-size: .78rem; }
.iefa-v52-periods small { overflow: hidden; color: var(--v52-muted); font-size: .58rem; text-overflow: ellipsis; white-space: nowrap; }

.iefa-v52-kpis {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: .75rem;
    margin-top: .8rem;
}

.iefa-v52-kpi {
    position: relative;
    display: grid;
    min-width: 0;
    gap: .25rem;
    overflow: hidden;
    padding: 1.05rem;
    border: 1px solid var(--v52-line);
    border-radius: 1rem;
    background: #fff;
    transition: transform .25s ease, box-shadow .25s ease;
}

.iefa-v52-kpi:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(5,54,41,.09); }
.iefa-v52-kpi > span { color: var(--v52-muted); font-size: .6rem; }
.iefa-v52-kpi > strong { min-height: 1.8rem; color: var(--v52-green-900); font-size: clamp(1.15rem,2.5vw,1.7rem); font-weight: 900; letter-spacing: -.045em; }
.iefa-v52-kpi > small { overflow: hidden; color: var(--v52-muted); font-size: .58rem; text-overflow: ellipsis; white-space: nowrap; }
.iefa-v52-kpi > i { width: 100%; height: .25rem; margin-top: .45rem; overflow: hidden; border-radius: 999px; background: #edf3f0; }
.iefa-v52-kpi > i::after { display: block; width: var(--progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v52-green-700),var(--v52-mint)); content: ''; animation: v52-grow .9s .2s ease both; }
.iefa-v52-kpi--safe { background: linear-gradient(145deg,var(--v52-green-950),var(--v52-green-700)); }
.iefa-v52-kpi--safe > span, .iefa-v52-kpi--safe > small { color: rgba(255,255,255,.62); }
.iefa-v52-kpi--safe > strong { color: #fff; font-size: clamp(1rem,2.2vw,1.45rem); }
.iefa-v52-kpi--safe > i { background: rgba(255,255,255,.12); }

.iefa-v52-intelligence {
    display: grid;
    grid-template-columns: minmax(0,1.55fr) minmax(17rem,.45fr);
    gap: .8rem;
    margin-top: .8rem;
}

.iefa-v52-chart-card,
.iefa-v52-radar-card {
    min-width: 0;
    padding: 1.2rem;
    border: 1px solid var(--v52-line);
    border-radius: 1.15rem;
    background: linear-gradient(150deg,#fff,#f7fbf9);
}

.iefa-v52-card-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; }
.iefa-v52-card-heading > div { display: grid; gap: .15rem; }
.iefa-v52-card-heading h4 { margin: 0; font-size: 1rem; font-weight: 900; }
.iefa-v52-card-heading > small { color: var(--v52-muted); font-size: .58rem; }

.iefa-v52-area-chart { position: relative; height: 14rem; margin-top: 1rem; overflow: hidden; border-radius: .9rem; background: linear-gradient(180deg,rgba(234,249,243,.35),rgba(255,255,255,.2)); }
.iefa-v52-chart-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(8,73,55,.065) 1px,transparent 1px),linear-gradient(90deg,rgba(8,73,55,.045) 1px,transparent 1px); background-size: 100% 25%,12.5% 100%; }
.iefa-v52-area-chart svg { position: relative; z-index: 2; width: 100%; height: 100%; overflow: visible; }
.iefa-v52-area-chart .area { fill: url(#v52Area); }
.iefa-v52-area-chart .line { fill: none; stroke: var(--v52-green-500); stroke-width: 3; stroke-linecap: round; vector-effect: non-scaling-stroke; filter: drop-shadow(0 5px 6px rgba(13,118,89,.2)); stroke-dasharray: 980; animation: v52-draw 2s .25s ease both; }
.iefa-v52-chart-pulse { position: absolute; z-index: 3; top: 10%; right: 0; width: .65rem; height: .65rem; border: 2px solid #fff; border-radius: 50%; background: var(--v52-green-500); box-shadow: 0 0 0 .4rem rgba(26,170,126,.12); animation: v52-pulse-dot 2s infinite; }
.iefa-v52-chart-legend { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: .7rem; }
.iefa-v52-chart-legend span { display: flex; align-items: center; gap: .35rem; color: var(--v52-muted); font-size: .58rem; }
.iefa-v52-chart-legend i { width: .7rem; height: .18rem; border-radius: 99px; background: var(--v52-green-500); }
.iefa-v52-chart-legend span:last-child i { background: #b8c8c1; }

.iefa-v52-radar-card { display: flex; flex-direction: column; }
.iefa-v52-radar { position: relative; display: grid; flex: 1; min-height: 12rem; place-items: center; margin-top: .4rem; }
.iefa-v52-radar__rings { position: absolute; width: 10rem; height: 10rem; border-radius: 50%; background: repeating-radial-gradient(circle,transparent 0 22%,rgba(13,118,89,.12) 23% 24%); }
.iefa-v52-radar__rings::before,.iefa-v52-radar__rings::after { position: absolute; inset: 50% 0 auto; height: 1px; background: rgba(13,118,89,.12); content: ''; }
.iefa-v52-radar__rings::after { transform: rotate(90deg); }
.iefa-v52-radar__rings > span { position: absolute; inset: 6%; border-radius: 50%; background: conic-gradient(from 0deg,rgba(26,170,126,.35),transparent 28%); animation: v52-spin 5s linear infinite; }
.iefa-v52-radar__rings > i { position: absolute; z-index: 2; width: .45rem; height: .45rem; border-radius: 50%; background: var(--v52-green-500); box-shadow: 0 0 12px rgba(26,170,126,.6); }
.iefa-v52-radar__rings > i:nth-child(1) { top: 22%; left: 66%; }
.iefa-v52-radar__rings > i:nth-child(2) { top: 61%; left: 28%; animation: v52-pulse-dot 2.4s infinite; }
.iefa-v52-radar__rings > i:nth-child(3) { top: 73%; left: 70%; animation: v52-pulse-dot 2.8s infinite; }
.iefa-v52-radar__copy { position: relative; z-index: 3; display: grid; gap: .1rem; text-align: center; }
.iefa-v52-radar__copy strong { font-size: .8rem; }
.iefa-v52-radar__copy small { max-width: 7rem; color: var(--v52-muted); font-size: .52rem; line-height: 1.4; }
.iefa-v52-signals { display: grid; gap: .45rem; margin: .4rem 0 0; padding: 0; list-style: none; }
.iefa-v52-signals li { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .5rem; padding: .55rem 0; border-top: 1px solid var(--v52-line); }
.iefa-v52-signals li > i { width: .45rem; height: .45rem; border-radius: 50%; }
.iefa-v52-signals .is-green { background: var(--v52-green-500); box-shadow: 0 0 10px rgba(26,170,126,.35); }
.iefa-v52-signals .is-gold { background: var(--v52-gold); }
.iefa-v52-signals .is-blue { background: var(--v52-blue); }
.iefa-v52-signals span { color: var(--v52-muted); font-size: .57rem; }
.iefa-v52-signals strong { font-size: .58rem; }

.iefa-v52-module-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: .75rem;
    margin-top: 1.25rem;
}

.iefa-v52-module {
    position: relative;
    display: grid;
    min-width: 0;
    gap: .45rem;
    overflow: hidden;
    padding: 1rem;
    border: 1px solid var(--v52-line);
    border-radius: 1.05rem;
    background: linear-gradient(150deg,#fff,#f8fbfa);
    color: var(--v52-ink);
    text-align: left;
    transition: transform .3s cubic-bezier(.2,.8,.2,1), border .3s ease, box-shadow .3s ease, background .3s ease;
}

.iefa-v52-module::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: .2rem;
    background: linear-gradient(var(--v52-mint),var(--v52-green-700));
    content: '';
    transform: scaleY(0);
    transform-origin: bottom;
    transition: transform .3s ease;
}

.iefa-v52-module:hover,
.iefa-v52-module:focus-visible,
.iefa-v52-module.is-selected {
    border-color: rgba(13,118,89,.38);
    background: linear-gradient(145deg,#fff,#edf9f4);
    box-shadow: 0 20px 42px rgba(5,54,41,.11);
    transform: translateY(-5px);
}

.iefa-v52-module.is-selected::before { transform: scaleY(1); }
.iefa-v52-module__top { display: flex; align-items: center; justify-content: space-between; gap: .5rem; }
.iefa-v52-module__top > i { display: grid; width: 2.4rem; height: 2.4rem; place-items: center; border-radius: .8rem; background: linear-gradient(145deg,var(--v52-green-900),var(--v52-green-500)); color: #fff; box-shadow: 0 10px 22px rgba(13,118,89,.18); font-size: .62rem; font-style: normal; font-weight: 900; }
.iefa-v52-module__top em { padding: .25rem .45rem; border-radius: 999px; background: #f6f0e2; color: #735e2f; font-size: .5rem; font-style: normal; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.iefa-v52-module > strong { margin-top: .2rem; font-size: .82rem; }
.iefa-v52-module > small { min-height: 2.2rem; color: var(--v52-muted); font-size: .58rem; line-height: 1.45; }
.iefa-v52-module__metric { display: grid; grid-template-columns: 2.2rem 1fr; align-items: center; gap: .55rem; margin-top: .3rem; }
.iefa-v52-module__metric > b { color: var(--v52-green-900); font-size: 1.05rem; font-weight: 900; }
.iefa-v52-module__metric > span { height: .36rem; overflow: hidden; border-radius: 99px; background: #e7f0ec; }
.iefa-v52-module__metric > span i { display: block; width: var(--v52-width); height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--v52-green-700),var(--v52-mint)); transition: width .45s ease; }
.iefa-v52-module__action { display: flex; align-items: center; justify-content: space-between; margin-top: .4rem; padding-top: .55rem; border-top: 1px solid var(--v52-line); color: var(--v52-green-700); font-size: .56rem; font-weight: 850; }
.iefa-v52-module__action i { font-size: .9rem; font-style: normal; transition: transform .25s ease; }
.iefa-v52-module:hover .iefa-v52-module__action i { transform: translate(.18rem,-.18rem); }

.iefa-v52-module-detail {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 1rem;
    min-height: 9rem;
    margin-top: .8rem;
    overflow: hidden;
    padding: 1.35rem;
    border-radius: 1.15rem;
    background:
        radial-gradient(circle at 85% 20%,rgba(115,230,187,.22),transparent 13rem),
        linear-gradient(135deg,var(--v52-green-950),var(--v52-green-700));
    color: #fff;
}

.iefa-v52-module-detail::after { position: absolute; right: -4rem; bottom: -6rem; width: 15rem; height: 15rem; border: 1px solid rgba(255,255,255,.1); border-radius: 50%; content: ''; }
.iefa-v52-module-detail__brand { position: relative; z-index: 2; display: grid; justify-items: center; gap: .25rem; }
.iefa-v52-module-detail__brand img { width: 3.1rem; height: 3.1rem; padding: .5rem; border-radius: .9rem; background: #fff; object-fit: contain; }
.iefa-v52-module-detail__brand span { color: rgba(255,255,255,.55); font-size: .5rem; text-transform: uppercase; }
.iefa-v52-module-detail article { position: relative; z-index: 2; min-width: 0; }
.iefa-v52-module-detail article > span { color: #b9ead8; font-size: .56rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.iefa-v52-module-detail h4 { margin: .2rem 0 0; font-size: 1.35rem; font-weight: 900; }
.iefa-v52-module-detail p { max-width: 44rem; margin: .25rem 0 0; color: rgba(255,255,255,.68); font-size: .62rem; line-height: 1.45; }
.iefa-v52-module-detail article > div { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: .65rem; }
.iefa-v52-module-detail article > div small { padding: .38rem .52rem; border: 1px solid rgba(255,255,255,.12); border-radius: .6rem; background: rgba(255,255,255,.07); color: rgba(255,255,255,.68); font-size: .54rem; }
.iefa-v52-module-detail article > div strong { display: block; margin-top: .05rem; color: #fff; font-size: .68rem; }

.iefa-v52-profile {
    display: grid;
    grid-template-columns: minmax(15rem,.5fr) minmax(0,1.5fr);
    gap: .8rem;
    margin-top: 1.2rem;
}

.iefa-v52-profile__identity {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 24rem;
    overflow: hidden;
    padding: 1.5rem;
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 50% 34%,rgba(115,230,187,.2),transparent 8rem),
        linear-gradient(155deg,#052f26,#0b644c);
    color: #fff;
    text-align: center;
}

.iefa-v52-profile__identity::before { position: absolute; width: 18rem; height: 18rem; border: 1px solid rgba(255,255,255,.08); border-radius: 50%; content: ''; animation: v52-spin 34s linear infinite; }
.iefa-v52-profile__halo { position: relative; z-index: 2; display: grid; width: 7rem; height: 7rem; place-items: center; margin-bottom: 1rem; border: 1px solid rgba(255,255,255,.15); border-radius: 50%; background: rgba(255,255,255,.08); box-shadow: 0 0 0 1rem rgba(255,255,255,.025),0 0 0 2rem rgba(255,255,255,.018); backdrop-filter: blur(12px); }
.iefa-v52-profile__halo img { width: 4.2rem; height: 4.2rem; padding: .55rem; border-radius: 1rem; background: #fff; object-fit: contain; }
.iefa-v52-profile__identity > span { position: relative; z-index: 2; color: #b8e8d6; font-size: .56rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.iefa-v52-profile__identity > strong { position: relative; z-index: 2; margin-top: .28rem; font-size: 1.15rem; }
.iefa-v52-profile__identity > small { position: relative; z-index: 2; max-width: 12rem; margin-top: .35rem; color: rgba(255,255,255,.58); font-size: .58rem; line-height: 1.45; }
.iefa-v52-profile__identity > div:last-child { position: relative; z-index: 2; display: flex; align-items: center; gap: .4rem; margin-top: 1rem; padding: .42rem .6rem; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; background: rgba(255,255,255,.06); font-size: .54rem; }
.iefa-v52-profile__identity > div:last-child i { width: .4rem; height: .4rem; border-radius: 50%; background: var(--v52-mint); box-shadow: 0 0 10px var(--v52-mint); }

.iefa-v52-profile__content { min-width: 0; padding: 1rem; border: 1px solid var(--v52-line); border-radius: 1.25rem; background: linear-gradient(145deg,#fff,#f7fbf9); }
.iefa-v52-profile-tabs { display: flex; gap: .25rem; overflow-x: auto; padding-bottom: .2rem; scrollbar-width: thin; }
.iefa-v52-profile-tabs button { flex: 0 0 auto; padding: .58rem .75rem; border-radius: .7rem; color: var(--v52-muted); font-size: .61rem; font-weight: 780; transition: color .2s ease,background .2s ease,box-shadow .2s ease; }
.iefa-v52-profile-tabs button.is-active,.iefa-v52-profile-tabs button:hover { background: var(--v52-green-900); color: #fff; box-shadow: 0 10px 24px rgba(6,67,51,.16); }
.iefa-v52-profile-panel { min-height: 9rem; margin-top: .8rem; padding: 1.2rem; border-radius: 1rem; background: linear-gradient(135deg,var(--v52-mint-soft),#fff); }
.iefa-v52-profile-panel article > span { color: var(--v52-green-700); font-size: .56rem; font-weight: 850; text-transform: uppercase; }
.iefa-v52-profile-panel h4 { margin: .25rem 0 0; font-size: 1.25rem; font-weight: 900; letter-spacing: -.03em; }
.iefa-v52-profile-panel p { max-width: 38rem; margin: .4rem 0 0; color: var(--v52-muted); font-size: .65rem; line-height: 1.55; }
.iefa-v52-timeline { display: grid; gap: .35rem; margin-top: .75rem; }
.iefa-v52-timeline > span { display: grid; grid-template-columns: auto auto minmax(8rem,.35fr) 1fr; align-items: center; gap: .55rem; padding: .65rem .75rem; border: 1px solid var(--v52-line); border-radius: .75rem; background: #fff; transition: transform .2s ease,border .2s ease; }
.iefa-v52-timeline > span:hover { border-color: rgba(13,118,89,.3); transform: translateX(.2rem); }
.iefa-v52-timeline > span > i { width: .45rem; height: .45rem; border-radius: 50%; background: var(--v52-green-500); box-shadow: 0 0 0 .25rem rgba(26,170,126,.08); }
.iefa-v52-timeline > span > small { color: var(--v52-green-500); font-size: .52rem; font-weight: 900; }
.iefa-v52-timeline strong { font-size: .62rem; }
.iefa-v52-timeline em { color: var(--v52-muted); font-size: .56rem; font-style: normal; }

.iefa-v52-alert-filters { display: flex; flex-wrap: wrap; gap: .25rem; margin-top: 1rem; padding: .25rem; border: 1px solid var(--v52-line); border-radius: .85rem; background: #f4f9f6; width: fit-content; }
.iefa-v52-alerts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .75rem; margin-top: .8rem; }
.iefa-v52-alert { position: relative; display: grid; gap: .4rem; overflow: hidden; padding: 1rem; border: 1px solid var(--v52-line); border-radius: 1rem; background: #fff; transition: transform .25s ease,box-shadow .25s ease; }
.iefa-v52-alert:hover { transform: translateY(-4px); box-shadow: 0 18px 38px rgba(5,54,41,.09); }
.iefa-v52-alert::after { position: absolute; top: -.8rem; right: -.8rem; width: 3rem; height: 3rem; border-radius: 50%; background: rgba(26,170,126,.1); content: ''; }
.iefa-v52-alert > span { display: flex; align-items: center; gap: .35rem; color: var(--v52-muted); font-size: .54rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.iefa-v52-alert > span i { width: .46rem; height: .46rem; border-radius: 50%; background: var(--v52-green-500); }
.iefa-v52-alert--attention > span i { background: #c98b3c; }
.iefa-v52-alert--positive > span i { background: var(--v52-green-500); }
.iefa-v52-alert--protected > span i { background: var(--v52-blue); }
.iefa-v52-alert > strong { font-size: .8rem; }
.iefa-v52-alert > p { margin: 0; color: var(--v52-muted); font-size: .59rem; line-height: 1.5; }
.iefa-v52-alert > small { margin-top: .25rem; color: var(--v52-green-700); font-size: .54rem; font-weight: 850; }

.iefa-v52-flow-rail { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .65rem; margin-top: 1.1rem; }
.iefa-v52-flow-rail a { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .6rem; min-width: 0; padding: .85rem; border: 1px solid var(--v52-line); border-radius: .9rem; background: linear-gradient(145deg,#fff,#f7fbf9); color: var(--v52-ink); text-decoration: none; transition: transform .25s ease,border .25s ease,box-shadow .25s ease; }
.iefa-v52-flow-rail a:hover { border-color: rgba(13,118,89,.35); box-shadow: 0 14px 30px rgba(5,54,41,.09); transform: translateY(-3px); }
.iefa-v52-flow-rail a > span { color: var(--v52-green-500); font-size: .52rem; font-weight: 900; }
.iefa-v52-flow-rail a > strong { min-width: 0; font-size: .7rem; }
.iefa-v52-flow-rail a > small { display: none; color: var(--v52-muted); font-size: .5rem; }
.iefa-v52-flow-rail a > i { color: var(--v52-green-700); font-size: .9rem; font-style: normal; transition: transform .25s ease; }
.iefa-v52-flow-rail a:hover > i { transform: translateX(.2rem); }

.iefa-v52-flow-previews { display: grid; gap: .5rem; margin-top: .8rem; }
.iefa-v52-flow-previews details { overflow: hidden; border: 1px solid var(--v52-line); border-radius: .9rem; background: #fff; }
.iefa-v52-flow-previews summary { display: grid; grid-template-columns: 5rem 1fr auto; align-items: center; gap: .6rem; padding: .85rem 1rem; cursor: pointer; font-size: .68rem; font-weight: 800; list-style: none; transition: background .2s ease,color .2s ease; }
.iefa-v52-flow-previews summary::-webkit-details-marker { display: none; }
.iefa-v52-flow-previews summary:hover,.iefa-v52-flow-previews details[open] summary { background: var(--v52-mint-soft); color: var(--v52-green-900); }
.iefa-v52-flow-previews summary span { color: var(--v52-green-700); font-size: .56rem; font-weight: 900; text-transform: uppercase; }
.iefa-v52-flow-previews summary i { font-size: .95rem; font-style: normal; transition: transform .25s ease; }
.iefa-v52-flow-previews details[open] summary i { transform: rotate(45deg); }
.iefa-v52-mock-form,.iefa-v52-read-preview,.iefa-v52-danger-preview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .7rem; padding: 1rem; border-top: 1px solid var(--v52-line); background: #fbfdfc; }
.iefa-v52-mock-form label { display: grid; gap: .3rem; color: var(--v52-muted); font-size: .55rem; font-weight: 750; }
.iefa-v52-mock-form input,.iefa-v52-mock-form select,.iefa-v52-mock-form textarea { width: 100%; min-width: 0; padding: .65rem .72rem; border: 1px solid var(--v52-line); border-radius: .65rem; background: #fff; color: var(--v52-ink); font-size: .62rem; outline: none; transition: border .2s ease,box-shadow .2s ease; }
.iefa-v52-mock-form input:focus,.iefa-v52-mock-form select:focus,.iefa-v52-mock-form textarea:focus { border-color: rgba(13,118,89,.45); box-shadow: 0 0 0 .2rem rgba(26,170,126,.09); }
.iefa-v52-mock-form textarea { min-height: 4rem; resize: vertical; }
.iefa-v52-mock-form button,.iefa-v52-danger-preview button { align-self: end; padding: .68rem .8rem; border-radius: .65rem; background: #dce6e1; color: #7b8983; font-size: .58rem; font-weight: 850; cursor: not-allowed; }
.iefa-v52-read-preview { grid-template-columns: auto 1fr; align-items: center; }
.iefa-v52-read-preview img { width: 3.2rem; height: 3.2rem; padding: .45rem; border: 1px solid var(--v52-line); border-radius: .85rem; background: #fff; object-fit: contain; }
.iefa-v52-read-preview > div { display: grid; gap: .15rem; }
.iefa-v52-read-preview span { color: var(--v52-green-700); font-size: .52rem; font-weight: 850; text-transform: uppercase; }
.iefa-v52-read-preview strong { font-size: .75rem; }
.iefa-v52-read-preview p,.iefa-v52-danger-preview p { margin: 0; color: var(--v52-muted); font-size: .58rem; }
.iefa-v52-danger-preview { grid-template-columns: 1fr auto; align-items: center; }
.iefa-v52-danger-preview strong { color: #9c3f42; font-size: .72rem; }

.iefa-v52-footer { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.2rem; border: 1px solid var(--v52-line); border-radius: 1.2rem; background: linear-gradient(135deg,var(--v52-green-950),var(--v52-green-900)); color: #fff; }
.iefa-v52-footer > div { display: flex; align-items: center; gap: .7rem; }
.iefa-v52-footer img { width: 2.5rem; height: 2.5rem; padding: .35rem; border-radius: .7rem; background: #fff; object-fit: contain; }
.iefa-v52-footer > div span { display: grid; gap: .05rem; }
.iefa-v52-footer strong { font-size: .68rem; letter-spacing: .07em; }
.iefa-v52-footer small { color: rgba(255,255,255,.58); font-size: .54rem; }
.iefa-v52-footer > span { display: flex; align-items: center; gap: .5rem; color: rgba(255,255,255,.68); font-size: .56rem; }
.iefa-v52-footer > span i { width: .4rem; height: .4rem; }

@keyframes v52-rise { from { opacity: 0; transform: translateY(1.2rem); } to { opacity: 1; transform: translateY(0); } }
@keyframes v52-grow { from { width: 0; } to { width: var(--progress); } }
@keyframes v52-draw { from { stroke-dashoffset: 980; } to { stroke-dashoffset: 0; } }
@keyframes v52-spin { to { transform: rotate(360deg); } }
@keyframes v52-pulse { 0%,100% { opacity: .6; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.08); } }
@keyframes v52-pulse-dot { 0%,100% { opacity: .75; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.22); } }
@keyframes v52-brand-float { 0%,100% { transform: translateY(0) rotate(-1deg); } 50% { transform: translateY(-.45rem) rotate(1deg); } }
@keyframes v52-float-one { 0%,100% { transform: translateY(0) rotate(2deg); } 50% { transform: translateY(-.7rem) rotate(-1deg); } }
@keyframes v52-float-two { 0%,100% { transform: translateY(0) rotate(-2deg); } 50% { transform: translateY(.6rem) rotate(1deg); } }
@keyframes v52-sheen { 0%,20% { transform: translateX(-140%) rotate(22deg); } 52%,100% { transform: translateX(520%) rotate(22deg); } }

@media (max-width: 1100px) {
    .iefa-v52-hero { grid-template-columns: minmax(0,1.05fr) minmax(18rem,.95fr); }
    .iefa-v52-hero__copy { padding: 2.6rem; }
    .iefa-v52-hero__visual { padding-right: 2rem; }
    .iefa-v52-kpis,.iefa-v52-module-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .iefa-v52-flow-rail { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 860px) {
    .iefa-v52-hero { grid-template-columns: 1fr; }
    .iefa-v52-hero__visual { min-height: 23rem; padding: 0 2.5rem 3rem; }
    .iefa-v52-glass-card--main { transform: none; }
    .iefa-v52-float--one { top: 6%; right: 1.1rem; }
    .iefa-v52-command { grid-template-columns: auto 1fr; }
    .iefa-v52-command > div:nth-child(2) { justify-content: flex-start; overflow-x: auto; }
    .iefa-v52-command__status { display: none; }
    .iefa-v52-intelligence,.iefa-v52-profile { grid-template-columns: 1fr; }
    .iefa-v52-profile__identity { min-height: 18rem; }
}

@media (max-width: 760px) {
    .iefa-v52 { gap: .75rem; }
    .iefa-v52-hero { min-height: auto; border-radius: 1.45rem; }
    .iefa-v52-hero__copy { padding: 1.5rem; }
    .iefa-v52-brandline { margin-bottom: 1.5rem; }
    .iefa-v52-brandmark { width: 3.6rem; height: 3.6rem; border-radius: 1.05rem; }
    .iefa-v52-brandmark img { width: 2.5rem; height: 2.5rem; }
    .iefa-v52-hero h2 { font-size: clamp(2.35rem,12vw,3.55rem); }
    .iefa-v52-hero__visual { min-height: 21rem; padding: 0 1.1rem 2rem; }
    .iefa-v52-float { min-width: 6rem; padding: .65rem .75rem; }
    .iefa-v52-float--one { top: 1.5rem; right: .3rem; }
    .iefa-v52-float--two { right: .8rem; bottom: 1rem; }
    .iefa-v52-command { top: .4rem; padding: .55rem .6rem; border-radius: .9rem; }
    .iefa-v52-command__logo span { display: none; }
    .iefa-v52-command a { padding: .48rem .55rem; white-space: nowrap; }
    .iefa-v52-section { padding: 1rem; border-radius: 1.25rem; }
    .iefa-v52-heading { align-items: start; flex-direction: column; }
    .iefa-v52-view-switch { width: 100%; }
    .iefa-v52-view-switch button { flex: 1; }
    .iefa-v52-periods { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
    .iefa-v52-kpis { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
    .iefa-v52-area-chart { height: 11rem; }
    .iefa-v52-module-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .55rem; }
    .iefa-v52-module { padding: .8rem; }
    .iefa-v52-module-detail { grid-template-columns: 1fr; }
    .iefa-v52-module-detail__brand { justify-items: start; }
    .iefa-v52-module-detail__brand span { display: none; }
    .iefa-v52-alerts { grid-template-columns: 1fr; }
    .iefa-v52-flow-rail { grid-template-columns: 1fr 1fr; }
    .iefa-v52-mock-form { grid-template-columns: 1fr; }
    .iefa-v52-danger-preview { grid-template-columns: 1fr; }
    .iefa-v52-timeline > span { grid-template-columns: auto auto 1fr; }
    .iefa-v52-timeline em { grid-column: 3; }
    .iefa-v52-footer { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 480px) {
    .iefa-v52-hero__pills span:nth-child(2) { display: none; }
    .iefa-v52-glass-card--main { padding: 1rem; }
    .iefa-v52-score__ring { width: 5.4rem; height: 5.4rem; }
    .iefa-v52-periods,.iefa-v52-kpis,.iefa-v52-module-grid,.iefa-v52-flow-rail { grid-template-columns: 1fr; }
    .iefa-v52-kpi > small,.iefa-v52-periods small { white-space: normal; }
    .iefa-v52-module > small { min-height: 0; }
    .iefa-v52-profile__content { padding: .7rem; }
    .iefa-v52-flow-previews summary { grid-template-columns: 4.2rem 1fr auto; }
}

@media (prefers-reduced-motion: reduce) {
    .iefa-v52 *,
    .iefa-v52 *::before,
    .iefa-v52 *::after {
        scroll-behavior: auto !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .01ms !important;
    }
}
