.egsts-wrap{
  --egsts-text-primary:#17231b;
  --egsts-text-secondary:#425148;
  --egsts-text-muted:#68766d;
  --egsts-surface:#f4f6f2;
  --egsts-surface-elevated:#ffffff;
  --egsts-option-surface:#ffffff;
  --egsts-option-text:#17231b;
  --egsts-selected-surface:#e7f2ea;
  --egsts-selected-text:#173a25;
  --egsts-input-surface:#ffffff;
  --egsts-input-text:#142218;
  --egsts-placeholder:#7a877f;
  --egsts-border:#d6dfd7;
  --egsts-border-strong:#b9c8bd;
  --egsts-focus:#3b7b55;
  --egsts-result-surface:#ffffff;
  --egsts-result-primary:#17231b;
  --egsts-result-secondary:#56645b;
  --egsts-accent:#2d6b46;
  --egsts-accent-strong:#1f5034;
  --egsts-accent-soft:#eaf4ed;
  --egsts-gold:#e7bd57;
  --egsts-success:#23633e;
  --egsts-success-soft:#f0faf3;
  --egsts-warning:#8a590f;
  --egsts-warning-soft:#fff9ec;
  --egsts-error:#9c3535;
  --egsts-error-soft:#fff4f4;
  --egsts-neutral:#58645c;
  --egsts-hero-text:#ffffff;
  --egsts-hero-muted:#e8eee9;
  max-width:1180px;
  margin:42px auto;
  padding:0 10px;
  color:var(--egsts-text-primary);
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.egsts-wrap *{box-sizing:border-box}
.egsts-shell{
  overflow:hidden;
  border:1px solid var(--egsts-border);
  border-radius:30px;
  background:var(--egsts-surface);
  box-shadow:0 32px 86px rgba(24,48,31,.18),0 10px 28px rgba(24,48,31,.08);
}

/* Unified photographic hero */
.egsts-hero{
  position:relative;
  min-height:540px;
  overflow:hidden;
  isolation:isolate;
  background:#132018;
}
.egsts-hero-photo{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:40% 46%;
  transform:scale(1.01);
}
.egsts-hero-scrim{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(8,18,11,.03) 0%,rgba(8,18,11,.08) 28%,rgba(8,18,11,.42) 52%,rgba(8,18,11,.86) 74%,rgba(8,18,11,.96) 100%),
    linear-gradient(0deg,rgba(6,14,9,.86) 0%,rgba(6,14,9,.42) 34%,rgba(6,14,9,.05) 72%);
}
.egsts-hero-badges{
  position:absolute;
  z-index:3;
  top:24px;
  left:24px;
  right:24px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  pointer-events:none;
}
.egsts-hero-badge{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:7px 11px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:999px;
  background:rgba(14,28,18,.68);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  color:#fff;
  font-size:11px;
  font-weight:850;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-shadow:0 1px 2px rgba(0,0,0,.55);
}
.egsts-hero-badge-check::before,
.egsts-hero-badge-id::before{
  content:"";
  width:8px;
  height:8px;
  margin-right:7px;
  border-radius:50%;
  background:var(--egsts-gold);
  box-shadow:0 0 0 4px rgba(231,189,87,.15);
}
.egsts-hero-badge-id::before{background:#83c79a;box-shadow:0 0 0 4px rgba(131,199,154,.15)}
.egsts-hero-content{
  position:relative;
  z-index:2;
  width:min(61%,680px);
  margin-left:auto;
  padding:180px 42px 42px 20px;
  align-self:end;
  color:var(--egsts-hero-text);
}
.egsts-eyebrow{
  display:block;
  margin:0 0 10px;
  color:#f5d989;
  font-size:12px;
  font-weight:850;
  letter-spacing:.11em;
  text-transform:uppercase;
  text-shadow:0 2px 9px rgba(0,0,0,.55);
}
.egsts-hero h2{
  max-width:640px;
  margin:0 0 14px!important;
  color:#fff!important;
  font-size:clamp(42px,5.4vw,72px)!important;
  font-weight:900!important;
  line-height:.96!important;
  letter-spacing:-.045em!important;
  text-shadow:0 4px 20px rgba(0,0,0,.42);
}
.egsts-hero p{
  max-width:620px;
  margin:0;
  color:var(--egsts-hero-muted);
  font-size:17px;
  line-height:1.58;
  font-weight:560;
  text-shadow:0 2px 8px rgba(0,0,0,.52);
}
.egsts-hero-chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:18px;
}
.egsts-hero-chips span{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.11);
  backdrop-filter:blur(8px);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.01em;
  text-shadow:0 1px 3px rgba(0,0,0,.5);
}
.egsts-hero-chips span::before{
  content:"";
  width:6px;
  height:6px;
  margin-right:7px;
  border-radius:50%;
  background:#f5d989;
}

.egsts-toolbar{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
  padding:18px 28px 0;
}
.egsts-toolbar-label{margin-right:auto;color:var(--egsts-text-muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.egsts-toolbar button,
.egsts-actions button,
.egsts-local button{
  min-height:42px;
  border:1px solid var(--egsts-border);
  border-radius:12px;
  background:var(--egsts-option-surface);
  color:var(--egsts-option-text);
  padding:9px 13px;
  font:inherit;
  font-size:13px;
  font-weight:800;
  cursor:pointer;
  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,color .18s ease,transform .18s ease;
}
.egsts-toolbar button:hover,
.egsts-actions button:hover,
.egsts-local button:hover{border-color:var(--egsts-border-strong);transform:translateY(-1px)}
.egsts-toolbar button:focus-visible,
.egsts-actions button:focus-visible,
.egsts-local button:focus-visible,
.egsts-primary:focus-visible,
.egsts-field select:focus-visible,
.egsts-local input:focus-visible,
.egsts-candidate input:focus-visible,
.egsts-candidate select:focus-visible{outline:3px solid color-mix(in srgb,var(--egsts-focus) 24%,transparent);outline-offset:2px}
.egsts-toolbar button[aria-pressed="true"]{
  border-color:var(--egsts-accent);
  background:var(--egsts-selected-surface);
  color:var(--egsts-selected-text);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--egsts-accent) 12%,transparent);
}

.egsts-form,.egsts-local{
  margin:18px 28px 24px;
  padding:24px;
  border:1px solid var(--egsts-border);
  border-radius:22px;
  background:var(--egsts-surface-elevated);
  box-shadow:0 12px 30px rgba(28,51,35,.05);
}
.egsts-section-head{margin-bottom:18px}
.egsts-section-kicker{display:block;margin-bottom:5px;color:var(--egsts-accent);font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.egsts-section-head h3,.egsts-local h3{margin:0 0 6px!important;color:var(--egsts-text-primary)!important;font-size:25px!important;line-height:1.2!important}
.egsts-section-head p{margin:0;color:var(--egsts-text-secondary);font-size:14px;line-height:1.6}
.egsts-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.egsts-field{display:block;padding:14px;border:1px solid var(--egsts-border);border-radius:15px;background:color-mix(in srgb,var(--egsts-surface-elevated) 86%,var(--egsts-surface) 14%)}
.egsts-field span{display:block;margin-bottom:7px;color:var(--egsts-text-primary);font-size:14px;font-weight:820;line-height:1.35}
.egsts-field select,
.egsts-local input,
.egsts-candidate input,
.egsts-candidate select{
  width:100%;
  min-height:48px;
  border:1px solid var(--egsts-border-strong);
  border-radius:11px;
  background:var(--egsts-input-surface)!important;
  color:var(--egsts-input-text)!important;
  -webkit-text-fill-color:var(--egsts-input-text);
  padding:10px 12px;
  font:inherit;
  font-size:14px;
}
.egsts-field select option,
.egsts-candidate select option{background:var(--egsts-input-surface)!important;color:var(--egsts-input-text)!important;-webkit-text-fill-color:var(--egsts-input-text)}
.egsts-local input::placeholder,.egsts-candidate input::placeholder{color:var(--egsts-placeholder);opacity:1}
.egsts-primary{
  width:100%;
  min-height:54px;
  margin-top:18px;
  border:0;
  border-radius:14px;
  background:linear-gradient(135deg,var(--egsts-accent-strong),var(--egsts-accent));
  color:#fff;
  box-shadow:0 14px 26px rgba(38,91,59,.22);
  font:inherit;
  font-size:15px;
  font-weight:900;
  cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.egsts-primary:hover{transform:translateY(-1px);box-shadow:0 17px 30px rgba(38,91,59,.27);filter:saturate(1.05)}

.egsts-results{padding:0 28px}
.egsts-card{
  width:100%;
  margin:0 0 16px;
  padding:22px;
  border:1px solid var(--egsts-border);
  border-radius:18px;
  background:var(--egsts-result-surface);
  color:var(--egsts-result-primary);
  box-shadow:0 10px 26px rgba(25,45,31,.055);
}
.egsts-card h3{margin:0 0 10px!important;color:var(--egsts-result-primary)!important;font-size:24px!important;line-height:1.25!important}
.egsts-card p,.egsts-card li{color:var(--egsts-result-secondary);font-size:15px;line-height:1.7}
.egsts-card ul{margin:8px 0 0;padding-left:22px}
.egsts-card.bad{border-color:#e4b8b8;background:var(--egsts-error-soft)}
.egsts-card.warn{border-color:#e6d0a3;background:var(--egsts-warning-soft)}
.egsts-card.good{border-color:#b6d7c0;background:var(--egsts-success-soft)}
.egsts-card.bad h3{color:var(--egsts-error)!important}.egsts-card.warn h3{color:var(--egsts-warning)!important}.egsts-card.good h3{color:var(--egsts-success)!important}
.egsts-status{display:inline-flex;align-items:center;gap:7px;margin-bottom:10px;padding:6px 10px;border:1px solid var(--egsts-border);border-radius:999px;background:var(--egsts-accent-soft);color:var(--egsts-accent-strong);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.egsts-status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}

.egsts-local-row{display:grid;grid-template-columns:1fr auto auto;gap:10px}
.egsts-candidates{margin-top:20px;padding-top:18px;border-top:1px solid var(--egsts-border)}
.egsts-candidates h4{margin:0 0 10px;color:var(--egsts-text-primary);font-size:16px}
.egsts-candidate{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;margin:8px 0}
.egsts-actions{display:flex;gap:8px;flex-wrap:wrap;padding:0 28px 30px}
#egsts-report{background:var(--egsts-accent);color:#fff;border-color:var(--egsts-accent)}

/* Explicit dark mode */
.egsts-wrap[data-theme="dark"]{
  --egsts-text-primary:#f3f7f4;
  --egsts-text-secondary:#d2dcd4;
  --egsts-text-muted:#aebbb1;
  --egsts-surface:#111713;
  --egsts-surface-elevated:#1b241e;
  --egsts-option-surface:#182019;
  --egsts-option-text:#eef5f0;
  --egsts-selected-surface:#244331;
  --egsts-selected-text:#f5fff7;
  --egsts-input-surface:#0e1410;
  --egsts-input-text:#f2f7f3;
  --egsts-placeholder:#93a196;
  --egsts-border:#344238;
  --egsts-border-strong:#4b5d50;
  --egsts-focus:#7bc592;
  --egsts-result-surface:#1b241e;
  --egsts-result-primary:#f5f8f5;
  --egsts-result-secondary:#cad5cc;
  --egsts-accent:#72bd8b;
  --egsts-accent-strong:#54a971;
  --egsts-accent-soft:#1d3a28;
  --egsts-success:#8bd3a3;
  --egsts-success-soft:#173124;
  --egsts-warning:#efc978;
  --egsts-warning-soft:#302714;
  --egsts-error:#f1a3a3;
  --egsts-error-soft:#351c1c;
  --egsts-neutral:#b6c1b8;
}
@media(prefers-color-scheme:dark){
  .egsts-wrap:not([data-theme]){
    --egsts-text-primary:#f3f7f4;--egsts-text-secondary:#d2dcd4;--egsts-text-muted:#aebbb1;--egsts-surface:#111713;--egsts-surface-elevated:#1b241e;--egsts-option-surface:#182019;--egsts-option-text:#eef5f0;--egsts-selected-surface:#244331;--egsts-selected-text:#f5fff7;--egsts-input-surface:#0e1410;--egsts-input-text:#f2f7f3;--egsts-placeholder:#93a196;--egsts-border:#344238;--egsts-border-strong:#4b5d50;--egsts-focus:#7bc592;--egsts-result-surface:#1b241e;--egsts-result-primary:#f5f8f5;--egsts-result-secondary:#cad5cc;--egsts-accent:#72bd8b;--egsts-accent-strong:#54a971;--egsts-accent-soft:#1d3a28;--egsts-success:#8bd3a3;--egsts-success-soft:#173124;--egsts-warning:#efc978;--egsts-warning-soft:#302714;--egsts-error:#f1a3a3;--egsts-error-soft:#351c1c;--egsts-neutral:#b6c1b8;
  }
}

@media(max-width:860px){
  .egsts-wrap{padding:0 6px}
  .egsts-hero{min-height:500px}
  .egsts-hero-photo{object-position:34% 48%}
  .egsts-hero-scrim{background:linear-gradient(90deg,rgba(6,14,9,.04) 0%,rgba(6,14,9,.12) 24%,rgba(6,14,9,.58) 48%,rgba(6,14,9,.93) 72%,rgba(6,14,9,.98) 100%),linear-gradient(0deg,rgba(6,14,9,.9) 0%,rgba(6,14,9,.4) 40%,rgba(6,14,9,.04) 72%)}
  .egsts-hero-content{width:min(66%,580px);padding:160px 28px 34px 18px}
  .egsts-hero h2{font-size:clamp(38px,6.6vw,58px)!important}
  .egsts-hero p{font-size:15px}
  .egsts-grid{grid-template-columns:1fr}
  .egsts-candidate{grid-template-columns:1fr}
}

@media(max-width:620px){
  .egsts-wrap{margin:24px auto;padding:0 4px}
  .egsts-shell{border-radius:22px}
  .egsts-hero{min-height:470px}
  .egsts-hero-photo{object-position:33% center}
  .egsts-hero-scrim{background:linear-gradient(0deg,rgba(7,15,10,.97) 0%,rgba(7,15,10,.84) 44%,rgba(7,15,10,.26) 72%,rgba(7,15,10,.08) 100%)}
  .egsts-hero-badges{top:16px;left:16px;right:16px;justify-content:flex-start;flex-wrap:wrap}
  .egsts-hero-badge{font-size:9.5px;min-height:30px;padding:6px 9px}
  .egsts-hero-content{width:100%;margin:0;padding:190px 18px 24px}
  .egsts-eyebrow{font-size:10px}
  .egsts-hero h2{max-width:520px;font-size:clamp(36px,11vw,48px)!important;line-height:.98!important}
  .egsts-hero p{max-width:520px;font-size:14px;line-height:1.5}
  .egsts-hero-chips{gap:6px;margin-top:14px}
  .egsts-hero-chips span{font-size:10px;padding:5px 8px}
  .egsts-toolbar{padding:14px 16px 0}.egsts-toolbar-label{width:100%;margin-bottom:2px}
  .egsts-form,.egsts-local{margin:14px 14px 20px;padding:18px}
  .egsts-results{padding:0 14px}
  .egsts-local-row{grid-template-columns:1fr}
  .egsts-actions{padding:0 14px 24px}
  .egsts-actions button{flex:1 1 100%}
  .egsts-section-head h3,.egsts-local h3{font-size:22px!important}
}
