:root { --ef-ink: #064e3b; }

.ef-fields label { display: block; color: var(--text-secondary); font-size: .72rem; font-weight: 700; line-height: 1.3; }
.ef-fields label > span { display: block; min-height: 2.25em; margin-top: .18rem; color: var(--text-muted); font-size: .62rem; font-weight: 500; line-height: 1.25; }
.ef-fields select, .ef-money { width: 100%; min-height: 2.65rem; margin-top: .38rem; border: 1px solid var(--border-main); border-radius: .8rem; background: var(--bg-secondary); color: var(--text-primary); font-family: inherit; font-size: .78rem; font-weight: 700; }
.ef-fields select { padding: .55rem .65rem; }
.ef-money { display: flex; align-items: center; padding: 0 .7rem; gap: .25rem; }
.ef-money span { color: var(--text-muted); font-size: .78rem; font-weight: 600; }
.ef-money input { width: 100%; min-width: 0; padding: .55rem 0; border: 0; outline: 0; background: transparent; color: var(--text-primary); font: inherit; text-align: right; }
.ef-fields select:focus, .ef-money:focus-within { border-color: var(--accent-emerald); box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent-emerald) 22%, transparent); }
.ef-fields input[type=number]::-webkit-inner-spin-button, .ef-fields input[type=number]::-webkit-outer-spin-button { -webkit-appearance:none; margin:0; }
.ef-fields input[type=number] { -moz-appearance:textfield; }
.ef-note { display: flex; gap: .6rem; padding: .75rem; border-radius: .9rem; background: var(--accent-emerald-light); color: var(--accent-emerald); font-size: .68rem; line-height: 1.45; }
.ef-note i { flex: 0 0 auto; width: 1rem; margin-top: .05rem; }
.ef-hero-card { background: linear-gradient(125deg, #047857, #059669 55%, #0f766e); box-shadow: 0 20px 35px -20px rgba(5, 150, 105, .55); }
.ef-live-results--pinned { z-index: 30; }
.ef-pill { padding: .38rem .65rem; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; background: rgba(255,255,255,.12); color: #ecfdf5; font-size: .68rem; font-weight: 700; }
.ef-kicker { display: block; color: var(--text-muted); font-size: .61rem; font-weight: 800; letter-spacing: .08em; line-height: 1.25; text-transform: uppercase; }
.ef-metric { display: block; margin-top: .28rem; color: var(--text-primary); font-size: 1.28rem; line-height: 1.2; white-space: nowrap; }
.ef-sub { display: block; margin-top: .35rem; color: var(--text-secondary); font-size: .63rem; line-height: 1.3; }
.ef-progress { height: .6rem; margin-top: .55rem; overflow: hidden; border-radius: 999px; background: var(--bg-secondary); }
.ef-progress span { display: block; height: 100%; min-width: .5rem; border-radius: inherit; background: #94a3b8; transition: width .25s ease; }
.ef-progress--primary span { background: var(--accent-emerald); }
.ef-list { display: grid; gap: .65rem; margin-top: 1rem; color: var(--text-secondary); font-size: .72rem; line-height: 1.45; }
.ef-list li { position: relative; padding-left: 1.1rem; }
.ef-list li::before { position: absolute; left: 0; top: .4rem; width: .42rem; height: .42rem; border-radius: 50%; background: var(--accent-emerald); content: ""; }

@media (max-width: 420px) { .ef-metric { font-size: 1.05rem; } }
