:root{
  --fehu-bg:#f6f7f9;
  --fehu-panel:#ffffff;
  --fehu-ink:#0c1733;
  --fehu-muted:#667085;
  --fehu-line:#d9e1ec;
  --fehu-green:#008a55;
  --fehu-green-dark:#006b43;
  --fehu-green-soft:#e7f6ee;
  --fehu-blue:#2457c5;
  --fehu-blue-soft:#eaf1ff;
  --fehu-amber:#a55f00;
  --fehu-amber-soft:#fff5df;
  --fehu-red:#c83232;
  --fehu-red-soft:#fff0f0;
  --fehu-shadow:0 14px 30px rgba(12,23,51,.08);
  --fehu-radius:8px;
}

body{
  background:var(--fehu-bg);
}

.fehu-app{
  color:var(--fehu-ink);
  font-family:"Rubik", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  min-height:100vh;
  padding:0 0 44px;
}

.fehu-app h1,
.fehu-app h2,
.fehu-app h3,
.fehu-app strong{
  font-family:"Plus Jakarta Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}

.fehu-app [hidden]{
  display:none !important;
}

.fehu-public-topbar{
  height:64px;
  border-bottom:1px solid var(--fehu-line);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 32px;
  position:sticky;
  top:0;
  z-index:10;
}

.fehu-public-topbar__context{
  display:flex;
  align-items:center;
  gap:18px;
  min-width:0;
}

.fehu-public-logo{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}

.fehu-public-logo img{
  height:42px;
  width:auto;
  display:block;
}

.fehu-public-divider{
  width:1px;
  height:34px;
  background:#d8d4e3;
  display:block;
  flex:0 0 auto;
}

.fehu-public-title{
  display:flex;
  align-items:baseline;
  gap:10px;
  min-width:0;
}

.fehu-public-title h1{
  margin:0;
  color:#181326;
  font-size:25px;
  font-weight:800;
  white-space:nowrap;
}

.fehu-public-title p{
  margin:0;
  color:#5a5568;
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
}

.fehu-public-about{
  min-height:38px;
  border:1px solid var(--fehu-line);
  border-radius:8px;
  background:#fff;
  color:#1d293f;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 12px;
  font-weight:800;
}

.fehu-public-about:hover{
  border-color:#b9dcca;
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
}

.fehu-login-view{
  display:grid;
  grid-template-columns:minmax(0, .95fr) minmax(340px, .55fr);
  gap:24px;
  max-width:1180px;
  margin:24px auto 0;
  padding:0 clamp(14px, 2.4vw, 36px);
  align-items:stretch;
}

.fehu-login-card,
.fehu-login-side__hero,
.fehu-login-side__note,
.fehu-program-view{
  background:var(--fehu-panel);
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-login-card{
  padding:28px;
}

.fehu-login-card__brand{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:28px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  text-align:left;
  cursor:pointer;
}

.fehu-login-card__brand img{
  width:54px;
  height:54px;
  object-fit:cover;
  border-radius:50%;
  background:transparent;
  border:0;
}

.fehu-login-card__brand span,
.fehu-login-card__brand strong{
  display:block;
}

.fehu-login-card__brand span{
  color:var(--fehu-green-dark);
  font-weight:900;
  font-size:1.05rem;
}

.fehu-login-card__brand strong{
  color:#22314d;
  font-size:.86rem;
  line-height:1.2;
}

.fehu-login-card__brand:hover span,
.fehu-brand:hover strong{
  color:var(--fehu-green);
}

.fehu-login-card h1,
.fehu-program-head h1{
  font-size:clamp(2rem, 3vw, 2.9rem);
  line-height:1.05;
  margin:0 0 10px;
  letter-spacing:0;
}

.fehu-login-card p,
.fehu-program-head p{
  max-width:760px;
  color:var(--fehu-muted);
  line-height:1.55;
  margin:0;
}

.fehu-login-tabs{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin:24px 0 18px;
  padding:6px;
  background:#eef2f7;
  border-radius:var(--fehu-radius);
}

.fehu-login-tabs button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  border:0;
  border-radius:var(--fehu-radius);
  background:transparent;
  color:#52647f;
  font-weight:800;
}

.fehu-login-tabs button:disabled{
  cursor:not-allowed;
  opacity:.55;
}

.fehu-login-tabs button.is-active{
  color:var(--fehu-green-dark);
  background:#fff;
  box-shadow:0 8px 18px rgba(12,23,51,.08);
}

.fehu-login-form{
  display:grid;
  gap:16px;
}

.fehu-login-method{
  display:none;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:16px;
}

.fehu-login-method.is-active{
  display:grid;
}

.fehu-login-submit{
  justify-self:start;
  margin-top:2px;
}

.fehu-login-message{
  min-height:24px;
  color:var(--fehu-green-dark);
  font-weight:800;
  font-size:.88rem;
}

.fehu-login-message.is-error{
  color:var(--fehu-red);
}

.fehu-login-side{
  display:grid;
  grid-template-rows:1fr auto auto;
  gap:16px;
}

.fehu-login-side__hero,
.fehu-login-side__note{
  padding:22px;
}

.fehu-login-side__hero{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.fehu-login-side__hero h2{
  font-size:1.25rem;
  margin:14px 0 14px;
}

.fehu-login-side__hero ul{
  display:grid;
  gap:12px;
  padding:0;
  margin:0;
  list-style:none;
}

.fehu-login-side__hero li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#42536d;
  line-height:1.45;
}

.fehu-login-side__hero li i{
  color:var(--fehu-green);
  margin-top:2px;
}

.fehu-login-side__note{
  display:grid;
  gap:6px;
  background:#fffaf0;
  border-color:#f0d9aa;
}

.fehu-login-side__note strong{
  color:#6f4700;
}

.fehu-login-side__note span{
  color:#7b633c;
  line-height:1.45;
}

.fehu-login-mocks{
  background:#fff;
  border:1px solid var(--fehu-line);
  border-radius:8px;
  box-shadow:var(--fehu-shadow);
  padding:14px;
}

.fehu-login-mocks summary{
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
  color:#16243d;
  font-weight:900;
}

.fehu-login-mocks summary::marker{
  content:'';
}

.fehu-login-mocks div{
  display:grid;
  gap:8px;
  margin-top:12px;
}

.fehu-login-mocks p{
  display:grid;
  gap:2px;
  margin:0;
  padding:8px;
  border-radius:8px;
  background:#f7faf9;
  color:#34445d;
  font-size:12px;
}

.fehu-login-mocks p strong{
  color:var(--fehu-green-dark);
}

.fehu-login-mocks p span{
  color:#667085;
}

.fehu-program-view{
  max-width:1280px;
  margin:24px auto 0;
  padding:26px;
}

.fehu-program-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}

.fehu-program-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:16px;
}

.fehu-program-card{
  position:relative;
  display:grid;
  gap:10px;
  min-height:250px;
  padding:18px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  cursor:pointer;
  transition:border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.fehu-program-card:hover{
  transform:translateY(-1px);
  border-color:#9fd5ba;
}

.fehu-program-card.is-disabled{
  cursor:not-allowed;
  background:#f7f9fb;
  opacity:.78;
}

.fehu-program-card.is-disabled:hover{
  transform:none;
  border-color:var(--fehu-line);
  box-shadow:none;
}

.fehu-program-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.fehu-program-card.is-selected{
  border-color:var(--fehu-green);
  box-shadow:0 12px 24px rgba(0,138,85,.13);
}

.fehu-program-card__check{
  position:absolute;
  top:14px;
  right:14px;
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#9aa6b8;
  background:#eef2f7;
}

.fehu-program-card.is-selected .fehu-program-card__check{
  color:#fff;
  background:var(--fehu-green);
}

.fehu-program-card__tag{
  justify-self:start;
  display:inline-flex;
  padding:4px 8px;
  border-radius:999px;
  color:var(--fehu-blue);
  background:var(--fehu-blue-soft);
  font-weight:900;
  font-size:.78rem;
}

.fehu-program-card strong{
  padding-right:34px;
  font-size:1.06rem;
  line-height:1.25;
}

.fehu-program-card small{
  color:var(--fehu-muted);
  line-height:1.35;
}

.fehu-program-card__status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  align-self:start;
  padding:7px 9px;
  border-radius:8px;
  font-size:.78rem;
  font-weight:900;
  line-height:1.25;
}

.fehu-program-card__status.is-enabled{
  color:#006b43;
  background:#e4f8ec;
}

.fehu-program-card__status.is-disabled{
  color:#7c4a03;
  background:#fff4db;
}

.fehu-program-card dl{
  display:grid;
  gap:8px;
  margin:8px 0 0;
}

.fehu-program-card dl div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-top:8px;
  border-top:1px solid #edf1f6;
}

.fehu-program-card dt{
  color:#52647f;
  font-weight:500;
  font-size:.82rem;
}

.fehu-program-card dd{
  margin:0;
  color:#22314d;
  font-weight:800;
  font-size:.82rem;
  text-align:right;
}

.fehu-program-actions{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--fehu-line);
}

.fehu-experience{
  max-width:1580px;
  margin:0 auto;
}

.fehu-shell{
  display:grid;
  grid-template-columns:minmax(220px, 250px) minmax(0, 1fr);
  gap:24px;
  max-width:100%;
  margin:0;
  align-items:start;
}

.fehu-local-nav{
  position:sticky;
  top:calc(var(--topbar-h) + var(--subbar-h) + 18px);
  display:flex;
  flex-direction:column;
  gap:18px;
}

.fehu-brand{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  padding:12px;
  background:var(--fehu-panel);
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  color:var(--fehu-ink);
  font:inherit;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
  box-shadow:var(--fehu-shadow);
}

.fehu-brand img{
  width:48px;
  height:48px;
  object-fit:contain;
  border-radius:var(--fehu-radius);
  background:#f8fafc;
}

.fehu-brand strong{
  display:block;
  font-size:1rem;
  line-height:1.05;
}

.fehu-brand small{
  display:block;
  color:var(--fehu-muted);
  font-size:.78rem;
}

.fehu-local-nav nav{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:8px;
  background:var(--fehu-panel);
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-local-nav nav a{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:42px;
  padding:8px 10px;
  border-radius:var(--fehu-radius);
  color:#263653;
  text-decoration:none;
  font-weight:700;
  font-size:.88rem;
}

.fehu-local-nav nav a i{
  width:22px;
  text-align:center;
  color:#607089;
}

.fehu-local-nav nav a:hover,
.fehu-local-nav nav a.is-active{
  background:var(--fehu-green-soft);
  color:var(--fehu-green-dark);
}

.fehu-local-nav nav a:hover i,
.fehu-local-nav nav a.is-active i{
  color:var(--fehu-green);
}

.fehu-side-context{
  display:grid;
  gap:8px;
  padding:14px;
  background:#fff;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-side-context__label{
  color:var(--fehu-green-dark);
  font-weight:900;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.fehu-side-context strong{
  color:#15233d;
  font-size:.98rem;
  line-height:1.25;
}

.fehu-side-context small{
  color:var(--fehu-muted);
  line-height:1.35;
}

.fehu-side-context__meta{
  display:grid;
  gap:2px;
  padding-top:8px;
  border-top:1px solid #edf1f6;
}

.fehu-side-context__meta span{
  color:#6b778c;
  font-size:.76rem;
}

.fehu-side-context__meta b{
  color:#263653;
  font-size:.82rem;
  line-height:1.25;
}

.fehu-side-action{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:38px;
  margin-top:4px;
  border:1px solid #bfe5d1;
  border-radius:var(--fehu-radius);
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
  font-weight:800;
}

.fehu-side-action:hover{
  border-color:var(--fehu-green);
  background:#fff;
}

.fehu-help-card,
.fehu-panel,
.fehu-form-panel{
  background:var(--fehu-panel);
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-help-card{
  padding:18px;
  text-align:center;
}

.fehu-help-card__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  margin:0 auto 12px;
  border-radius:50%;
  color:var(--fehu-green);
  background:var(--fehu-green-soft);
  font-size:1.35rem;
}

.fehu-help-card h2{
  font-size:1rem;
  margin:0 0 8px;
}

.fehu-help-card p{
  color:var(--fehu-muted);
  font-size:.86rem;
  margin:0 0 14px;
  line-height:1.45;
}

.fehu-main{
  min-width:0;
}

.fehu-request__top{
  display:flex;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}

.fehu-breadcrumb{
  color:#52647f;
  font-size:.85rem;
  margin-bottom:16px;
}

.fehu-breadcrumb strong{
  color:var(--fehu-green);
}

.fehu-request h1{
  font-size:clamp(2rem, 3vw, 3rem);
  margin:0 0 8px;
  letter-spacing:0;
}

.fehu-request p{
  color:var(--fehu-muted);
  margin:0;
}

.fehu-alert{
  display:inline-flex;
  align-items:flex-start;
  gap:8px;
  max-width:780px;
  margin-top:12px;
  padding:10px 12px;
  color:#744a00;
  background:var(--fehu-amber-soft);
  border:1px solid #f2d7a2;
  border-radius:var(--fehu-radius);
  font-size:.9rem;
}

.fehu-alert i{
  color:var(--fehu-amber);
}

.fehu-user-card{
  display:flex;
  align-items:flex-start;
  align-self:flex-start;
  gap:10px;
  min-width:210px;
  padding:10px 12px;
  background:var(--fehu-panel);
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-user-card__avatar{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--fehu-blue-soft);
  color:var(--fehu-blue);
  font-weight:800;
}

.fehu-user-card strong,
.fehu-user-card small{
  display:block;
}

.fehu-user-card__body{
  display:grid;
  gap:2px;
  min-width:0;
}

.fehu-user-card strong{
  font-size:.9rem;
}

.fehu-user-card small{
  color:var(--fehu-muted);
  font-size:.78rem;
}

.fehu-user-card button{
  justify-self:start;
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  margin-top:3px;
  padding:0;
  border:0;
  background:transparent;
  color:#6b778c;
  font-size:.78rem;
  font-weight:800;
  cursor:pointer;
}

.fehu-user-card button:hover{
  color:var(--fehu-red);
}

.fehu-workspace{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(310px, 360px);
  gap:22px;
  align-items:start;
}

.fehu-form-panel{
  overflow:hidden;
}

.fehu-stepper{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:10px;
  padding:20px 22px 8px;
  border-bottom:1px solid var(--fehu-line);
}

.fehu-step{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  min-height:72px;
  border:0;
  background:transparent;
  color:#5f6f88;
  cursor:pointer;
  font-weight:800;
}

.fehu-step:not(:last-child)::after{
  content:"";
  position:absolute;
  top:16px;
  left:calc(50% + 28px);
  width:calc(100% - 46px);
  height:1px;
  background:var(--fehu-line);
}

.fehu-step span{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eef2f7;
  color:#6b778c;
  border:1px solid var(--fehu-line);
  z-index:1;
}

.fehu-step strong{
  max-width:112px;
  text-align:center;
  font-size:.78rem;
  line-height:1.25;
}

.fehu-step.is-active,
.fehu-step.is-complete{
  color:var(--fehu-green-dark);
}

.fehu-step.is-active span,
.fehu-step.is-complete span{
  background:var(--fehu-green);
  border-color:var(--fehu-green);
  color:#fff;
}

.fehu-form{
  min-width:0;
}

.fehu-step-panel{
  display:none;
  padding:24px 24px 22px;
}

.fehu-step-panel.is-active{
  display:block;
}

.fehu-section-head{
  margin-bottom:20px;
}

.fehu-section-head h2{
  font-size:1.35rem;
  margin:0 0 6px;
}

.fehu-section-head p{
  margin:0;
  color:var(--fehu-muted);
  font-size:.92rem;
}

.fehu-grid{
  display:grid;
  gap:16px;
}

.fehu-grid--2{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.fehu-field--wide{
  grid-column:1 / -1;
}

.fehu-field{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.fehu-field span{
  color:#25344d;
  font-weight:800;
  font-size:.86rem;
}

.fehu-field b{
  color:var(--fehu-red);
}

.fehu-field input,
.fehu-field select{
  width:100%;
  min-height:42px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  padding:8px 12px;
  color:#17233b;
  background:#fff;
  outline:none;
}

.fehu-field input:focus,
.fehu-field select:focus{
  border-color:var(--fehu-green);
  box-shadow:0 0 0 3px rgba(0,138,85,.12);
}

.fehu-field input[readonly]{
  background:#f8fafc;
  color:#53627a;
}

.fehu-entity-field{
  position:relative;
}

.fehu-entity-combobox{
  position:relative;
}

.fehu-entity-input-row{
  display:flex;
  align-items:center;
  min-height:44px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  overflow:hidden;
}

.fehu-entity-input-row i{
  width:42px;
  text-align:center;
  color:#7d8aa0;
  flex:0 0 auto;
}

.fehu-entity-input-row input{
  min-height:42px;
  border:0;
  border-radius:0;
  padding-left:0;
  box-shadow:none;
}

.fehu-entity-input-row:focus-within{
  border-color:var(--fehu-green);
  box-shadow:0 0 0 3px rgba(0,138,85,.12);
}

.fehu-entity-input-row:focus-within input{
  box-shadow:none;
}

.fehu-entity-results,
.fehu-entity-empty{
  position:absolute;
  top:calc(100% + 6px);
  left:0;
  right:0;
  z-index:40;
  max-height:286px;
  overflow:auto;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  box-shadow:0 18px 36px rgba(12,23,51,.16);
}

.fehu-entity-option{
  display:grid;
  gap:4px;
  width:100%;
  padding:11px 13px;
  border:0;
  border-bottom:1px solid #edf1f6;
  background:#fff;
  color:#22314d;
  text-align:left;
  cursor:pointer;
}

.fehu-entity-option:last-child{
  border-bottom:0;
}

.fehu-entity-option strong{
  font-size:.9rem;
  line-height:1.25;
}

.fehu-entity-option span{
  color:#607089;
  font-size:.78rem;
  font-weight:600;
}

.fehu-entity-option:hover,
.fehu-entity-option.is-active{
  background:var(--fehu-green-soft);
}

.fehu-entity-empty{
  display:grid;
  gap:3px;
  padding:13px;
  color:#52647f;
}

.fehu-entity-empty strong{
  color:#24344f;
  font-size:.9rem;
}

.fehu-entity-empty span{
  font-size:.82rem;
}

.fehu-entity-hint{
  color:#7d8aa0;
  font-size:.8rem;
  line-height:1.35;
}

.fehu-entity-selected{
  display:grid;
  grid-template-columns:38px minmax(0, 1fr) auto;
  align-items:center;
  gap:10px;
  padding:11px;
  border:1px solid #a9dac2;
  border-radius:var(--fehu-radius);
  background:#fbfffd;
}

.fehu-entity-selected i{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  color:var(--fehu-green);
  background:var(--fehu-green-soft);
}

.fehu-entity-selected strong,
.fehu-entity-selected span{
  display:block;
}

.fehu-entity-selected strong{
  color:#16243d;
  font-size:.92rem;
  line-height:1.25;
}

.fehu-entity-selected span{
  color:#607089;
  font-size:.78rem;
  line-height:1.3;
}

.fehu-entity-selected button,
.fehu-entity-manual-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:34px;
  padding:6px 10px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  color:#42536d;
  font-weight:800;
  font-size:.82rem;
  cursor:pointer;
}

.fehu-entity-selected button:hover,
.fehu-entity-manual-toggle:hover{
  border-color:var(--fehu-green);
  color:var(--fehu-green-dark);
}

.fehu-entity-manual-toggle{
  align-self:flex-start;
}

.fehu-entity-manual{
  display:grid;
  gap:14px;
  padding:14px;
  border:1px dashed #9fb0c7;
  border-radius:var(--fehu-radius);
  background:#f8fafc;
}

.fehu-declarations{
  display:grid;
  gap:10px;
  margin-top:22px;
}

.fehu-declarations label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#344054;
  font-size:.9rem;
}

.fehu-declarations strong{
  color:var(--fehu-red);
  font-size:.82rem;
}

.fehu-declarations input,
.fehu-family-box input[type="checkbox"]{
  width:20px;
  height:20px;
  accent-color:var(--fehu-green);
}

.fehu-beneficiary-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.fehu-choice{
  display:grid;
  grid-template-rows:auto auto 1fr;
  gap:8px;
  min-height:154px;
  padding:16px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  cursor:pointer;
}

.fehu-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.fehu-choice__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  color:var(--fehu-blue);
  background:var(--fehu-blue-soft);
  font-size:1.2rem;
}

.fehu-choice strong{
  font-size:.95rem;
}

.fehu-choice small{
  color:var(--fehu-muted);
  line-height:1.4;
}

.fehu-choice.is-selected{
  border-color:var(--fehu-green);
  background:var(--fehu-green-soft);
}

.fehu-choice.is-selected .fehu-choice__icon{
  color:var(--fehu-green);
  background:#fff;
}

.fehu-family-box{
  display:none;
  margin-top:18px;
  padding:16px;
  border:1px solid #bfe5d1;
  border-radius:var(--fehu-radius);
  background:#f4fbf7;
}

.fehu-family-box.is-visible{
  display:grid;
  gap:14px;
}

.fehu-family-box p{
  color:#52647f;
  margin:4px 0 0;
  font-size:.9rem;
}

.fehu-inline-note{
  display:flex;
  gap:9px;
  margin-top:18px;
  padding:12px;
  color:#325071;
  background:var(--fehu-blue-soft);
  border:1px solid #c9d8f7;
  border-radius:var(--fehu-radius);
  font-size:.9rem;
}

.fehu-doc-list{
  display:grid;
  gap:12px;
}

.fehu-doc-empty{
  min-height:150px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:28px;
  border:1px dashed #cfd9e7;
  border-radius:var(--fehu-radius);
  color:#52647f;
  background:#fbfdff;
  text-align:center;
}

.fehu-doc-empty i{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  background:var(--fehu-green-soft);
  color:var(--fehu-green);
  font-size:1.2rem;
}

.fehu-doc-empty strong{
  color:#17213a;
}

.fehu-doc-empty span{
  max-width:560px;
  font-size:.9rem;
}

.fehu-doc-empty.is-loading i{
  animation:fehuSpin .8s linear infinite;
}

@keyframes fehuSpin{
  to{ transform:rotate(360deg); }
}

.fehu-doc-item{
  display:grid;
  grid-template-columns:46px minmax(0, 1fr) auto;
  gap:14px;
  align-items:center;
  padding:14px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
}

.fehu-doc-item.is-uploaded{
  border-color:#a9dac2;
  background:#fbfffd;
}

.fehu-doc-item.has-error{
  border-color:#f1b5b5;
  background:var(--fehu-red-soft);
}

.fehu-doc-item__icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  background:var(--fehu-blue-soft);
  color:var(--fehu-blue);
  font-size:1.2rem;
}

.fehu-doc-item.is-uploaded .fehu-doc-item__icon{
  background:var(--fehu-green-soft);
  color:var(--fehu-green);
}

.fehu-doc-item__title{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
}

.fehu-doc-item p{
  color:var(--fehu-muted);
  margin:4px 0 6px;
  font-size:.88rem;
}

.fehu-doc-meta{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0 0 8px;
}

.fehu-doc-meta span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:24px;
  padding:3px 7px;
  border:1px solid #dbe4ef;
  border-radius:999px;
  color:#52647f;
  background:#f8fafc;
  font-size:.76rem;
  font-weight:800;
}

.fehu-doc-file{
  display:inline-flex;
  color:#52647f;
  font-size:.82rem;
}

.fehu-doc-error{
  display:none;
  margin-top:5px;
  color:var(--fehu-red);
  font-size:.8rem;
  font-weight:800;
}

.fehu-doc-item.has-error .fehu-doc-error{
  display:block;
}

.fehu-upload-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  padding:8px 12px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  color:#21314d;
  background:#fff;
  cursor:pointer;
  font-weight:800;
  white-space:nowrap;
}

.fehu-upload-btn input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
}

.fehu-upload-btn:hover{
  border-color:var(--fehu-green);
  color:var(--fehu-green-dark);
}

.fehu-review-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:14px;
}

.fehu-summary-block{
  display:grid;
  gap:5px;
  align-content:start;
  padding:14px;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fbfcfe;
}

.fehu-summary-block span,
.fehu-summary-block small{
  color:var(--fehu-muted);
}

.fehu-summary-block strong{
  font-size:1rem;
}

.fehu-summary-block--status{
  gap:10px;
}

.fehu-summary-status-head{
  display:flex;
  align-items:center;
  gap:10px;
}

.fehu-summary-status-head i{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:8px;
  color:var(--fehu-green);
  background:var(--fehu-green-soft);
  font-size:1rem;
}

.fehu-review-doc-list{
  display:grid;
  gap:6px;
  margin-top:6px;
}

.fehu-review-doc-list small{
  display:flex;
  align-items:flex-start;
  gap:6px;
  color:var(--fehu-muted);
}

.fehu-review-doc-list i{
  color:var(--fehu-green);
  line-height:1.4;
}

.fehu-send-box{
  display:flex;
  gap:16px;
  align-items:flex-start;
  padding:18px;
  border:1px solid #bfe5d1;
  border-radius:var(--fehu-radius);
  background:var(--fehu-green-soft);
}

.fehu-send-box__icon{
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  color:#fff;
  background:var(--fehu-green);
  font-size:1.35rem;
  flex:0 0 auto;
}

.fehu-send-box h3{
  font-size:1.05rem;
  margin:0 0 6px;
}

.fehu-send-box p{
  margin:0 0 6px;
}

.fehu-form-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 22px;
  border-top:1px solid var(--fehu-line);
  background:#fbfcfe;
}

.fehu-form-actions__right{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
}

.fehu-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:8px 14px;
  border-radius:var(--fehu-radius);
  border:1px solid transparent;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
  line-height:1.2;
}

.fehu-btn--primary{
  min-width:144px;
  color:#fff;
  background:var(--fehu-green);
  border-color:var(--fehu-green);
}

.fehu-btn--primary:hover{
  background:var(--fehu-green-dark);
  border-color:var(--fehu-green-dark);
}

.fehu-btn--outline{
  color:var(--fehu-green-dark);
  background:#fff;
  border-color:#91d3b5;
}

.fehu-btn--outline:hover{
  background:var(--fehu-green-soft);
}

.fehu-btn--ghost{
  color:#42536d;
  background:transparent;
  border-color:transparent;
}

.fehu-btn:disabled{
  opacity:.55;
  cursor:not-allowed;
}

.fehu-rail{
  display:grid;
  gap:16px;
}

.fehu-panel{
  padding:18px;
}

.fehu-panel__head,
.fehu-panel__title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.fehu-panel__title-row{
  justify-content:flex-start;
  align-items:center;
  margin-bottom:14px;
}

.fehu-panel h2{
  font-size:1.05rem;
  margin:0;
}

.fehu-panel h3{
  font-size:.92rem;
  margin:16px 0 8px;
}

.fehu-panel p{
  margin:4px 0 0;
  color:var(--fehu-muted);
  font-size:.86rem;
}

.fehu-pill{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  font-size:.76rem;
  font-weight:800;
  white-space:nowrap;
}

.fehu-pill--info{
  color:#1f5bba;
  background:var(--fehu-blue-soft);
}

.fehu-pill--required{
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
}

.fehu-pill--muted{
  color:#52647f;
  background:#eef2f7;
}

.fehu-progress{
  width:100%;
  height:8px;
  margin-top:14px;
  border-radius:999px;
  background:#e7ecf3;
  overflow:hidden;
}

.fehu-progress span{
  display:block;
  height:100%;
  border-radius:999px;
  background:var(--fehu-green);
  transition:width .22s ease;
}

.fehu-progress__meta{
  text-align:right;
  color:var(--fehu-muted);
  font-size:.78rem;
  margin-top:6px;
}

.fehu-divider{
  height:1px;
  background:var(--fehu-line);
  margin:14px 0;
}

.fehu-checklist,
.fehu-rule-list{
  display:grid;
  gap:8px;
  padding:0;
  margin:0;
  list-style:none;
}

.fehu-checklist li,
.fehu-rule-list li{
  display:flex;
  align-items:flex-start;
  gap:9px;
  color:#47566d;
  font-size:.88rem;
}

.fehu-checklist i,
.fehu-rule-list i{
  color:#a1adbf;
  margin-top:1px;
}

.fehu-checklist li.is-complete i,
.fehu-rule-list i{
  color:var(--fehu-green);
}

.fehu-icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:var(--fehu-radius);
  flex:0 0 auto;
}

.fehu-icon--calendar,
.fehu-icon--cohort{
  color:var(--fehu-green);
  background:var(--fehu-green-soft);
}

.fehu-icon--warning{
  color:var(--fehu-amber);
  background:var(--fehu-amber-soft);
}

.fehu-icon--docs{
  color:var(--fehu-blue);
  background:var(--fehu-blue-soft);
}

.fehu-date-list{
  display:grid;
  gap:8px;
  margin:0;
}

.fehu-date-list div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-bottom:8px;
  border-bottom:1px solid #edf1f6;
}

.fehu-date-list dt{
  color:#52647f;
  font-weight:500;
  font-size:.84rem;
}

.fehu-date-list dd{
  margin:0;
  color:var(--fehu-green-dark);
  font-weight:800;
  font-size:.84rem;
  text-align:right;
}

.fehu-rules-panel{
  background:#fffaf0;
  border-color:#f0d9aa;
}

.fehu-info-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.3fr) minmax(280px, .7fr);
  gap:18px;
  margin-top:20px;
}

.fehu-faq{
  display:grid;
  gap:10px;
}

.fehu-faq details{
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  padding:0;
  overflow:hidden;
  background:#fff;
}

.fehu-faq summary{
  cursor:pointer;
  padding:12px 14px;
  font-weight:800;
  color:#21314d;
}

.fehu-faq p{
  padding:0 14px 14px;
  margin:0;
  line-height:1.5;
}

.fehu-benefit-table{
  display:grid;
  gap:8px;
}

.fehu-benefit-table div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:38px;
  padding:8px 10px;
  border:1px solid #edf1f6;
  border-radius:var(--fehu-radius);
}

.fehu-benefit-table span{
  color:#52647f;
}

.fehu-benefit-table strong{
  color:var(--fehu-green-dark);
}

.fehu-toast{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:1080;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:var(--fehu-radius);
  color:#fff;
  background:#152033;
  box-shadow:0 18px 32px rgba(12,23,51,.22);
  transform:translateY(18px);
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
}

.fehu-toast.is-visible{
  opacity:1;
  transform:translateY(0);
}

.fehu-about-modal{
  position:fixed;
  inset:0;
  z-index:1090;
  display:grid;
  place-items:center;
  padding:18px;
}

.fehu-about-modal__backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(12,23,51,.48);
  backdrop-filter:blur(8px);
  cursor:pointer;
}

.fehu-about-modal__card{
  position:relative;
  z-index:1;
  width:min(620px, 100%);
  padding:26px;
  border:1px solid rgba(255,255,255,.6);
  border-radius:var(--fehu-radius);
  background:#fff;
  box-shadow:0 28px 70px rgba(12,23,51,.28);
}

.fehu-about-modal__close{
  position:absolute;
  top:14px;
  right:14px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#fff;
  color:#52647f;
}

.fehu-about-modal__mark{
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border:1px solid var(--fehu-line);
  border-radius:var(--fehu-radius);
  background:#f8fafc;
}

.fehu-about-modal__mark img{
  width:54px;
  height:54px;
  object-fit:contain;
}

.fehu-about-modal__kicker{
  margin:18px 0 6px;
  color:var(--fehu-green-dark);
  font-weight:900;
  font-size:.78rem;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.fehu-about-modal h2{
  margin:0 0 10px;
  font-size:2rem;
}

.fehu-about-modal p{
  color:#4a5a73;
  line-height:1.58;
  margin:0 0 12px;
}

.fehu-about-modal__points{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:16px;
}

.fehu-about-modal__points span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:7px 9px;
  border-radius:999px;
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
  font-weight:800;
  font-size:.82rem;
}

.fehu-login-error-modal .fehu-about-modal__card{
  width:min(500px, 100%);
}

.fehu-login-error-modal__icon{
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff2e8;
  color:#b45309;
  font-size:28px;
}

.fehu-login-error-modal__action{
  width:100%;
  justify-content:center;
  margin-top:8px;
}

/* ── Banner de subsanación ──────────────────────────────────── */
.fehu-subsanacion-notice{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:16px;
  padding:12px 16px;
  background:#fff7ed;
  border:1px solid #fed7aa;
  border-left:4px solid #f97316;
  border-radius:8px;
  font-size:.86rem;
  color:#7c2d12;
}
.fehu-subsanacion-notice>i{
  font-size:1.2rem;
  color:#f97316;
  flex-shrink:0;
  margin-top:1px;
}
.fehu-subsanacion-notice>div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.fehu-subsanacion-notice strong{
  color:#9a3412;
}

/* ── Subsanación doc state ──────────────────────────────────── */
.fehu-doc-item.has-subsanacion{
  border-color:#fca5a5;
  background:#fff8f8;
}

.fehu-doc-item.has-subsanacion .fehu-doc-item__icon{
  background:#fff2f2;
  color:#ef4444;
}

.fehu-doc-obs-msg{
  display:block;
  margin-top:8px;
  padding:7px 10px;
  border-radius:6px;
  background:#fef2f2;
  border-left:3px solid #ef4444;
  color:#b91c1c;
  font-size:.79rem;
  line-height:1.45;
}

@media (max-width:1199.98px){
  .fehu-login-view,
  .fehu-program-grid{
    grid-template-columns:1fr;
  }

  .fehu-shell{
    grid-template-columns:1fr;
  }

  .fehu-local-nav{
    position:static;
  }

  .fehu-local-nav nav{
    flex-direction:row;
    overflow:auto;
  }

  .fehu-local-nav nav a{
    flex:0 0 auto;
  }

  .fehu-help-card{
    max-width:420px;
  }
}

@media (max-width:991.98px){
  .fehu-program-head{
    flex-direction:column;
  }

  .fehu-workspace,
  .fehu-info-grid{
    grid-template-columns:1fr;
  }

  .fehu-rail{
    order:-1;
  }

  .fehu-request__top{
    flex-direction:column;
  }

  .fehu-user-card{
    align-self:stretch;
  }
}

@media (max-width:767.98px){
  .fehu-app{
    padding:18px 12px 34px;
  }

  .fehu-login-card,
  .fehu-login-side__hero,
  .fehu-login-side__note,
  .fehu-program-view{
    padding:18px;
  }

  .fehu-login-method,
  .fehu-login-tabs{
    grid-template-columns:1fr;
  }

  .fehu-program-actions{
    flex-direction:column;
  }

  .fehu-program-actions .fehu-btn{
    width:100%;
  }

  .fehu-entity-selected{
    grid-template-columns:36px minmax(0, 1fr);
  }

  .fehu-entity-selected button{
    grid-column:1 / -1;
    width:100%;
  }

  .fehu-stepper{
    grid-template-columns:1fr;
    gap:4px;
  }

  .fehu-step{
    min-height:42px;
    flex-direction:row;
    justify-content:flex-start;
  }

  .fehu-step:not(:last-child)::after{
    display:none;
  }

  .fehu-step strong{
    max-width:none;
    text-align:left;
  }

  .fehu-grid--2,
  .fehu-beneficiary-grid,
  .fehu-review-grid{
    grid-template-columns:1fr;
  }

  .fehu-doc-item{
    grid-template-columns:42px minmax(0, 1fr);
  }

  .fehu-upload-btn{
    grid-column:1 / -1;
  }

  .fehu-form-actions{
    flex-direction:column;
    align-items:stretch;
  }

  .fehu-form-actions__right{
    width:100%;
    margin-left:0;
  }

  .fehu-form-actions__right .fehu-btn{
    flex:1;
  }
}

/* Berkana-aligned skin: keeps POS green as the primary accent. */
:root{
  --fehu-bg:#f7f7fb;
  --fehu-panel:#ffffff;
  --fehu-ink:#211b35;
  --fehu-muted:#706b80;
  --fehu-line:#e6e4ee;
  --fehu-green:#008a55;
  --fehu-green-dark:#005f3d;
  --fehu-green-soft:#e7f8ed;
  --fehu-blue:#2f63d8;
  --fehu-blue-soft:#eaf0ff;
  --fehu-amber:#d99000;
  --fehu-amber-soft:#fff4d8;
  --fehu-red:#df263d;
  --fehu-red-soft:#ffe8eb;
  --fehu-shadow:0 10px 28px rgba(34,26,64,.08);
  --fehu-radius:8px;
}

.fehu-app{
  font-size:14px;
  padding:28px 36px 46px;
}

.fehu-app h1,
.fehu-request h1,
.fehu-login-card h1,
.fehu-program-head h1{
  color:#181326;
  font-weight:800;
  letter-spacing:0;
}

.fehu-login-card h1,
.fehu-program-head h1,
.fehu-request h1{
  font-size:clamp(2rem, 2.7vw, 2.75rem);
}

.fehu-login-card,
.fehu-login-side__hero,
.fehu-login-side__note,
.fehu-program-view,
.fehu-form-panel,
.fehu-panel,
.fehu-help-card,
.fehu-side-context,
.fehu-user-card,
.fehu-program-card,
.fehu-choice,
.fehu-doc-item,
.fehu-summary-block,
.fehu-send-box{
  border-color:var(--fehu-line);
  border-radius:var(--fehu-radius);
  box-shadow:var(--fehu-shadow);
}

.fehu-login-card,
.fehu-program-view,
.fehu-form-panel,
.fehu-panel{
  padding:22px;
}

.fehu-login-card__brand img,
.fehu-brand img{
  border-radius:50%;
  background:rgba(0,0,0,.14);
  border:1px solid rgba(255,255,255,.24);
}

.fehu-login-tabs{
  background:#f0eef6;
  border:1px solid var(--fehu-line);
  padding:4px;
}

.fehu-login-tabs button,
.fehu-btn,
.fehu-side-action,
.fehu-upload-btn,
.fehu-entity-change,
.fehu-about-modal__close{
  min-height:42px;
  border-radius:8px;
  font-weight:800;
}

.fehu-btn--primary{
  background:var(--fehu-green);
  border-color:var(--fehu-green);
  box-shadow:0 8px 18px rgba(0,138,85,.18);
}

.fehu-btn--primary:hover{
  background:var(--fehu-green-dark);
  border-color:var(--fehu-green-dark);
}

.fehu-btn--outline,
.fehu-btn--ghost{
  background:#fff;
  border-color:var(--fehu-line);
  color:#343044;
}

.fehu-btn--outline:hover,
.fehu-btn--ghost:hover{
  border-color:#b9e8ca;
  background:#f7fff9;
  color:var(--fehu-green-dark);
}

.fehu-shell{
  grid-template-columns:232px minmax(0, 1fr);
  gap:28px;
}

.fehu-local-nav{
  gap:8px;
  padding:18px 12px;
  border-radius:8px;
  background:linear-gradient(180deg,#0b6a45 0%,#06442e 100%);
  color:#fff;
  box-shadow:0 18px 40px rgba(6,68,46,.16);
}

.fehu-brand,
.fehu-local-nav nav,
.fehu-side-context,
.fehu-help-card{
  border:0;
  box-shadow:none;
  background:transparent;
}

.fehu-brand{
  justify-content:center;
  padding:4px 8px 20px;
}

.fehu-brand span{
  display:none;
}

.fehu-brand img{
  width:56px;
  height:56px;
}

.fehu-local-nav nav{
  padding:0;
  gap:8px;
}

.fehu-local-nav nav a{
  min-height:46px;
  padding:0 14px;
  color:#eefcf5;
  border-radius:8px;
  font-size:14px;
}

.fehu-local-nav nav a i{
  color:#ccefe0;
  font-size:21px;
}

.fehu-local-nav nav a:hover,
.fehu-local-nav nav a.is-active{
  background:rgba(255,255,255,.13);
  color:#fff;
}

.fehu-local-nav nav a:hover i,
.fehu-local-nav nav a.is-active i{
  color:#fff;
}

.fehu-side-context{
  margin-top:10px;
  padding:16px 10px 0;
  border-top:1px solid rgba(255,255,255,.14);
}

.fehu-side-context__label,
.fehu-side-context strong,
.fehu-side-context small,
.fehu-side-context__meta span,
.fehu-side-context__meta b{
  color:#fff;
}

.fehu-side-context small,
.fehu-side-context__meta span{
  opacity:.78;
}

.fehu-side-context__meta{
  border-top-color:rgba(255,255,255,.14);
}

.fehu-side-action{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.1);
  color:#fff;
}

.fehu-side-action:hover{
  background:rgba(255,255,255,.18);
  border-color:rgba(255,255,255,.28);
}

.fehu-help-card{
  margin-top:auto;
  padding:14px 8px 0;
  border-top:1px solid rgba(255,255,255,.14);
  color:#fff;
}

.fehu-help-card h2,
.fehu-help-card p{
  color:#fff;
}

.fehu-help-card p{
  opacity:.78;
}

.fehu-help-card__icon{
  border-radius:8px;
  background:rgba(255,255,255,.12);
  color:#fff;
}

.fehu-workspace,
.fehu-info-grid{
  gap:18px;
}

.fehu-stepper{
  border-bottom:1px solid var(--fehu-line);
  padding-bottom:16px;
}

.fehu-step span,
.fehu-doc-item__icon,
.fehu-icon,
.fehu-help-card__icon{
  border-radius:8px;
}

.fehu-step.is-active span,
.fehu-step.is-complete span{
  background:var(--fehu-green);
  color:#fff;
}

.fehu-field input,
.fehu-field select,
.fehu-field textarea,
.fehu-entity-input-row{
  border-color:var(--fehu-line);
  border-radius:8px;
}

.fehu-field input:focus,
.fehu-field select:focus,
.fehu-field textarea:focus,
.fehu-entity-input-row:focus-within{
  border-color:var(--fehu-green);
  box-shadow:0 0 0 3px rgba(0,138,85,.12);
}

.fehu-pill,
.fehu-program-card__tag,
.fehu-doc-meta span,
.fehu-about-modal__points span{
  border-radius:7px;
}

.fehu-table-like,
.fehu-doc-item,
.fehu-choice,
.fehu-summary-block,
.fehu-send-box{
  background:#fff;
}

.fehu-about-modal__card{
  border-color:var(--fehu-line);
  border-radius:8px;
  box-shadow:0 24px 70px rgba(20,12,42,.24);
}

@media (max-width:1199.98px){
  .fehu-app{
    padding:24px 20px 42px;
  }

  .fehu-shell{
    grid-template-columns:1fr;
  }

  .fehu-local-nav{
    position:static;
  }

  .fehu-brand{
    justify-content:flex-start;
    padding:4px 4px 8px;
  }

  .fehu-brand span{
    display:block;
  }

  .fehu-local-nav nav{
    display:flex;
    overflow:auto;
  }

  .fehu-side-context,
  .fehu-help-card{
    display:none;
  }
}

@media (max-width:767.98px){
  .fehu-app{
    padding:18px 12px 34px;
  }
}

/* Applicant login shell aligned with Fehu admin. Kept last to override legacy skin blocks. */
body{
  padding-top:0 !important;
}

.fehu-app{
  min-height:100vh;
  padding:0 0 44px;
}

.fehu-public-topbar{
  height:64px;
  border-bottom:1px solid var(--fehu-line);
  background:#fff;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 32px;
  position:sticky;
  top:0;
  z-index:10;
}

.fehu-login-view,
.fehu-program-view,
.fehu-experience{
  margin-top:24px;
}

.fehu-experience{
  padding:0 clamp(14px, 2.4vw, 36px);
}

.fehu-local-nav{
  top:82px;
}

.fehu-login-card__brand img,
.fehu-brand img{
  border:0;
  background:transparent;
  object-fit:cover;
}

@media (max-width:767.98px){
  .fehu-app{
    padding:0 0 34px;
  }

  .fehu-public-topbar{
    height:auto;
    min-height:64px;
    align-items:flex-start;
    flex-direction:column;
    padding:12px 16px;
  }

  .fehu-public-title{
    display:block;
  }

  .fehu-public-title p{
    margin-top:2px;
    white-space:normal;
  }

.fehu-public-about{
    width:100%;
    justify-content:center;
  }
}

/* Modern login polish. */
body{
  background:#eef3f0 !important;
}

.fehu-public-topbar{
  border-bottom-color:#e4e8ef;
  box-shadow:0 10px 26px rgba(12,23,51,.04);
}

.fehu-login-view{
  width:min(1180px, calc(100vw - 48px));
  min-height:calc(100vh - 64px);
  grid-template-columns:minmax(520px, 1fr) minmax(360px, 420px);
  align-items:start;
  gap:24px;
  margin-top:0;
  padding:34px 0 48px;
}

.fehu-login-card,
.fehu-login-side__hero,
.fehu-login-side__note,
.fehu-login-mocks{
  border:1px solid #e0e6ee;
  border-radius:8px;
  box-shadow:0 22px 55px rgba(12,23,51,.10);
}

.fehu-login-card{
  position:relative;
  overflow:hidden;
  padding:0;
  background:#eaf4ef;
}

.fehu-login-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:var(--fehu-green);
}

.fehu-login-card__brand{
  margin:0;
  padding:26px 30px 0;
}

.fehu-login-card__brand img{
  width:48px;
  height:48px;
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}

.fehu-login-card h1{
  max-width:680px;
  margin-bottom:12px;
  font-size:clamp(2.15rem, 3vw, 3.05rem);
  line-height:1;
}

.fehu-login-intro{
  padding:24px 34px 22px;
}

.fehu-login-intro p{
  max-width:720px;
  color:#5f6678;
  font-size:15px;
  margin:0;
}

.fehu-login-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:20px 0 0;
}

.fehu-login-highlights span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:30px;
  padding:0 10px;
  border-radius:7px;
  background:#ffffff;
  color:#07593a;
  font-size:12px;
  font-weight:900;
}

.fehu-login-highlights i{
  color:var(--fehu-green);
  font-size:15px;
}

.fehu-login-form-card{
  margin:0 22px 22px;
  padding:18px;
  border:1px solid #dbe5ee;
  border-radius:8px;
  background:#fff;
  box-shadow:0 16px 38px rgba(12,23,51,.08);
}

.fehu-login-tabs{
  margin:0 0 16px;
  padding:4px;
  border:1px solid #e4e8ef;
  background:#f6f8fb;
}

.fehu-login-tabs button{
  min-height:46px;
  color:#58657a;
}

.fehu-login-tabs button.is-active{
  color:#062d20;
  box-shadow:0 10px 22px rgba(12,23,51,.08);
}

.fehu-login-method{
  gap:14px;
}

.fehu-login-form{
  gap:14px;
}

.fehu-field span{
  color:#17223a;
  font-size:12px;
  letter-spacing:0;
}

.fehu-field input,
.fehu-field select{
  min-height:48px;
  border-radius:8px;
  background:#fbfcfe;
  border-color:#dce4ee;
}

.fehu-field input[readonly]{
  cursor:not-allowed;
  background:#f3f6fa;
  color:#65728a;
  border-color:#dce4ee;
}

.fehu-field--editable > span:first-child{
  color:#0a6c49;
}

.fehu-editable-input{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:48px;
  border:1px solid rgba(0,138,85,.32);
  border-radius:8px;
  padding:0 12px;
  background:#f7fffb;
  box-shadow:inset 3px 0 0 var(--fehu-green);
}

.fehu-editable-input i{
  color:var(--fehu-green);
  font-size:16px;
  flex:0 0 auto;
}

.fehu-field .fehu-editable-input input{
  min-height:46px;
  border:0;
  border-radius:0;
  padding:8px 0;
  background:transparent;
  box-shadow:none;
}

.fehu-editable-input:focus-within{
  border-color:var(--fehu-green);
  box-shadow:inset 3px 0 0 var(--fehu-green), 0 0 0 3px rgba(0,138,85,.12);
}

.fehu-login-submit{
  width:100%;
  justify-content:center;
  margin-top:4px;
}

.fehu-login-message{
  display:flex;
  align-items:center;
  min-height:22px;
}

.fehu-login-side{
  grid-template-rows:auto auto auto;
}

.fehu-login-side__hero{
  padding:24px;
  background:#ffffff;
}

.fehu-login-side__hero .fehu-icon{
  width:48px;
  height:48px;
  border-radius:8px;
}

.fehu-login-side__hero h2{
  margin:16px 0;
  color:#181326;
  font-size:1.35rem;
}

.fehu-login-route{
  display:grid;
  gap:10px;
}

.fehu-login-route div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  column-gap:10px;
  row-gap:2px;
  align-items:start;
  padding:12px;
  border:1px solid #e6ebf2;
  border-radius:8px;
  background:#fbfcfd;
}

.fehu-login-route span{
  grid-row:1 / span 2;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#e7f8ed;
  color:#006b43;
  font-weight:900;
}

.fehu-login-route strong{
  color:#18243d;
  font-size:14px;
}

.fehu-login-route small{
  color:#687386;
  line-height:1.35;
}

.fehu-login-side__note{
  border-color:#d9eadf;
  background:#f6fbf8;
}

.fehu-login-mocks{
  background:#fff;
}

.fehu-login-mocks[open]{
  box-shadow:0 22px 55px rgba(12,23,51,.10);
}

@media (max-width:991.98px){
  .fehu-login-view{
    width:min(760px, calc(100vw - 32px));
    min-height:auto;
    grid-template-columns:1fr;
    align-items:start;
    margin-top:18px;
  }
}

@media (max-width:767.98px){
  body{
    background:#f7f7fb !important;
  }

  .fehu-login-view{
    width:calc(100vw - 24px);
  }

  .fehu-login-card{
    padding:0;
  }

  .fehu-login-card__brand{
    padding:22px 22px 0;
  }

  .fehu-login-intro{
    padding:20px 22px 18px;
  }

  .fehu-login-form-card{
    margin:0 14px 14px;
    padding:14px;
  }

  .fehu-login-card h1{
    font-size:2rem;
  }

  .fehu-login-method{
    grid-template-columns:1fr;
  }
}

/* Berkana-style public login */
.fehu-app.is-login-active .fehu-public-topbar,
.fehu-app:has(.fehu-login-view:not([hidden])) .fehu-public-topbar{
  display:none;
}

.fehu-app.is-login-active,
.fehu-app:has(.fehu-login-view:not([hidden])){
  min-height:100vh;
  background:#eef4f1;
}

.fehu-login-view{
  width:min(1120px, calc(100vw - 56px));
  min-height:100vh;
  display:grid;
  grid-template-columns:1.05fr .82fr;
  gap:22px;
  align-items:center;
  margin:0 auto;
  padding:28px 0;
}

.fehu-login-brand-panel,
.fehu-login-card{
  border:1px solid #dfe7e2;
  border-radius:8px;
  box-shadow:0 24px 58px rgba(12,23,51,.12);
  overflow:hidden;
}

.fehu-login-brand-panel{
  min-height:640px;
  padding:34px;
  display:flex;
  flex-direction:column;
  color:#fff;
  background:linear-gradient(160deg, #063626 0%, #087145 58%, #1e3f32 100%);
}

.fehu-login-brand-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

.fehu-login-card__brand{
  min-width:0;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:14px;
  color:inherit;
  background:transparent;
  border:0;
  text-align:left;
  cursor:pointer;
}

.fehu-login-card__brand img{
  width:58px;
  height:58px;
  flex:0 0 auto;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.10);
  box-shadow:none;
  object-fit:cover;
}

.fehu-login-card__brand span,
.fehu-login-card__brand strong{
  display:block;
  color:#fff;
}

.fehu-login-card__brand span{
  font-size:24px;
  font-weight:900;
  line-height:1;
}

.fehu-login-card__brand strong{
  margin-top:5px;
  font-size:13px;
  font-weight:800;
  color:rgba(255,255,255,.78);
}

.fehu-login-direction-logo{
  width:170px;
  max-width:38%;
  height:auto;
  display:block;
  object-fit:contain;
}

.fehu-login-intro{
  margin:auto 0 28px;
  padding:0;
}

.fehu-login-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.26);
  border-radius:999px;
  background:rgba(255,255,255,.09);
  color:#fff;
  font-size:13px;
  font-weight:900;
}

.fehu-login-intro h1,
.fehu-login-card h1{
  max-width:620px;
  margin:22px 0 16px;
  color:#fff;
  font-size:44px;
  line-height:1.05;
  letter-spacing:0;
}

.fehu-login-intro p{
  max-width:560px;
  margin:0;
  color:#e7f4ed;
  font-size:16px;
  line-height:1.55;
}

.fehu-login-highlights{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}

.fehu-login-highlights span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:32px;
  padding:0 11px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-size:12px;
  font-weight:900;
}

.fehu-login-highlights i{
  color:#ffe07a;
}

.fehu-login-brand-panel .fehu-login-route{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin:0;
}

.fehu-login-brand-panel .fehu-login-route div{
  min-height:112px;
  display:grid;
  grid-template-columns:34px minmax(0, 1fr);
  column-gap:10px;
  row-gap:4px;
  align-items:start;
  padding:13px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:8px;
  background:rgba(255,255,255,.10);
}

.fehu-login-brand-panel .fehu-login-route span{
  grid-row:1 / span 2;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#ffe07a;
  color:#063626;
  font-weight:900;
}

.fehu-login-brand-panel .fehu-login-route strong{
  color:#fff;
  font-size:13px;
  line-height:1.2;
}

.fehu-login-brand-panel .fehu-login-route small{
  color:rgba(255,255,255,.78);
  line-height:1.35;
}

.fehu-login-card{
  align-self:center;
  padding:34px;
  background:#fff;
}

.fehu-login-card::before{
  display:none;
}

.fehu-login-card-head{
  display:flex;
  align-items:center;
  gap:16px;
  margin-bottom:26px;
}

.fehu-login-card-icon{
  width:58px;
  height:58px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#e5f7ec;
  color:#00895a;
  font-size:27px;
}

.fehu-login-card h2{
  margin:0;
  color:#181326;
  font-size:28px;
  line-height:1.1;
}

.fehu-login-card-head p{
  margin:6px 0 0;
  color:#5f6678;
  font-size:14px;
  line-height:1.4;
}

.fehu-login-form-card{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.fehu-login-tabs{
  margin:0 0 16px;
  padding:4px;
  border:1px solid #e0e6ee;
  border-radius:8px;
  background:#f7f9fb;
}

.fehu-login-tabs button{
  min-height:46px;
  border-radius:6px;
}

.fehu-login-tabs button.is-active{
  background:#fff;
  color:#062d20;
  box-shadow:0 10px 22px rgba(12,23,51,.08);
}

.fehu-login-method{
  grid-template-columns:1fr;
  gap:12px;
}

.fehu-login-submit{
  width:100%;
  justify-content:center;
  min-height:48px;
  margin-top:4px;
}

.fehu-login-side__note{
  margin-top:18px;
  padding:18px 20px;
  border:1px solid #d7eadf;
  border-radius:8px;
  background:#f7fbf8;
  box-shadow:none;
}

.fehu-login-mocks{
  margin-top:12px;
  border:1px solid #e0e6ee;
  border-radius:8px;
  background:#fff;
  box-shadow:none;
}

.fehu-login-mocks summary{
  min-height:48px;
  padding:0 18px;
}

@media (max-width:991.98px){
  .fehu-login-view{
    width:min(760px, calc(100vw - 32px));
    min-height:auto;
    grid-template-columns:1fr;
    align-items:start;
    padding:18px 0 34px;
  }

  .fehu-login-brand-panel{
    min-height:520px;
  }

  .fehu-login-card{
    align-self:stretch;
  }
}

@media (max-width:767.98px){
  .fehu-login-view{
    width:calc(100vw - 24px);
    padding:12px 0 28px;
  }

  .fehu-login-brand-panel,
  .fehu-login-card{
    padding:22px;
  }

  .fehu-login-brand-row{
    align-items:flex-start;
  }

  .fehu-login-card__brand img{
    width:48px;
    height:48px;
  }

  .fehu-login-card__brand span{
    font-size:21px;
  }

  .fehu-login-direction-logo{
    width:132px;
    max-width:42%;
  }

  .fehu-login-intro h1,
  .fehu-login-card h1{
    font-size:36px;
  }

  .fehu-login-brand-panel .fehu-login-route{
    grid-template-columns:1fr;
  }

  .fehu-login-brand-panel .fehu-login-route div{
    min-height:0;
  }

  .fehu-login-card-head{
    align-items:flex-start;
  }
}

.fehu-program-card.is-disabled{
  box-shadow:none;
}

/* Applicant workspace: admin-like sidebar and section views */
.fehu-experience{
  max-width:100%;
  margin:0;
}

.fehu-shell{
  grid-template-columns:232px minmax(0, 1fr);
  gap:24px;
  align-items:start;
}

.fehu-local-nav{
  position:sticky;
  top:82px;
  min-height:calc(100vh - 100px);
  padding:22px 16px;
  border-radius:0;
  background:linear-gradient(180deg, #0b6a45 0%, #06442e 100%);
  color:#fff;
  box-shadow:0 18px 40px rgba(6,68,46,.16);
}

.fehu-brand{
  justify-content:flex-start;
  padding:0 2px 18px;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.12);
  border-radius:0;
  background:transparent;
  color:#fff;
  box-shadow:none;
}

.fehu-brand img{
  width:54px;
  height:54px;
  border-radius:50%;
  border:0;
  background:transparent;
  object-fit:cover;
  clip-path:circle(46% at 50% 50%);
}

.fehu-brand small{
  color:rgba(255,255,255,.72);
}

.fehu-local-nav nav{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

.fehu-local-nav nav a{
  min-height:46px;
  padding:0 14px;
  border-radius:8px;
  color:#eefcf5;
  font-size:14px;
  font-weight:700;
}

.fehu-local-nav nav a i{
  width:24px;
  color:#ccefe0;
  font-size:21px;
}

.fehu-local-nav nav a:hover,
.fehu-local-nav nav a.is-active{
  background:rgba(255,255,255,.12);
  color:#fff;
}

.fehu-local-nav nav a:hover i,
.fehu-local-nav nav a.is-active i{
  color:#fff;
}

.fehu-local-nav nav a.is-complete:not(.is-active){
  color:#d9f6e8;
}

.fehu-side-context,
.fehu-help-card{
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.08);
  color:#fff;
  box-shadow:none;
}

.fehu-side-context__label,
.fehu-side-context strong,
.fehu-side-context__meta b,
.fehu-help-card h2{
  color:#fff;
}

.fehu-side-context small,
.fehu-side-context__meta span,
.fehu-help-card p{
  color:rgba(255,255,255,.74);
}

.fehu-side-context__meta{
  border-top-color:rgba(255,255,255,.12);
}

.fehu-side-action{
  border-color:rgba(255,255,255,.18);
  background:rgba(255,255,255,.12);
  color:#fff;
}

.fehu-side-action:hover{
  border-color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.18);
}

.fehu-help-card .fehu-btn{
  width:100%;
  border-color:rgba(255,255,255,.3);
  background:rgba(255,255,255,.1);
  color:#fff;
}

.fehu-main{
  width:100%;
  max-width:1280px;
  margin:0 auto;
}

.fehu-request__top,
.fehu-workspace,
.fehu-info-grid{
  width:100%;
}

.fehu-workspace{
  grid-template-columns:minmax(0, 1fr);
  align-items:stretch;
}

.fehu-form-panel{
  width:100%;
}

.fehu-stepper{
  display:none;
}

.fehu-step-panel{
  min-height:420px;
  padding:26px;
}

.fehu-rail{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:stretch;
  order:-1;
}

.fehu-rail .fehu-panel{
  height:100%;
}

.fehu-grid--2,
.fehu-review-grid{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

.fehu-beneficiary-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  align-items:stretch;
}

.fehu-choice,
.fehu-summary-block,
.fehu-doc-item,
.fehu-send-box{
  width:100%;
}

.fehu-info-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:22px;
  align-items:stretch;
}

.fehu-info-grid .fehu-panel{
  height:100%;
}

@media (max-width:1199.98px){
  .fehu-shell{
    grid-template-columns:1fr;
  }

  .fehu-local-nav{
    position:static;
    min-height:0;
    border-radius:0;
  }

  .fehu-local-nav nav{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }

  .fehu-local-nav nav a{
    justify-content:flex-start;
  }

  .fehu-rail,
  .fehu-info-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:767.98px){
  .fehu-local-nav{
    padding:16px 12px;
  }

  .fehu-local-nav nav{
    grid-template-columns:1fr;
  }

  .fehu-request__top{
    display:grid;
    grid-template-columns:1fr;
  }

  .fehu-step-panel{
    padding:18px;
  }

  .fehu-grid--2,
  .fehu-review-grid,
  .fehu-beneficiary-grid{
    grid-template-columns:1fr;
  }
}

.fehu-public-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
}

.fehu-top-user{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:4px 6px 4px 8px;
  border:1px solid var(--fehu-line);
  border-radius:8px;
  background:#fff;
}

.fehu-top-user strong,
.fehu-top-user small{
  display:block;
  line-height:1.2;
}

.fehu-top-user strong{
  color:#15233d;
  font-size:.86rem;
}

.fehu-top-user small{
  color:#667085;
  font-size:.74rem;
}

.fehu-top-user button{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:8px;
  background:#f6f8fb;
  color:#52647f;
  cursor:pointer;
}

.fehu-top-user button:hover{
  color:var(--fehu-red);
  background:var(--fehu-red-soft);
}

.fehu-sidebar-foot{
  display:grid;
  gap:8px;
  margin-top:auto;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.12);
}

.fehu-sidebar-collapse{
  width:38px;
  height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  justify-self:center;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:18px;
  cursor:pointer;
}

.fehu-sidebar-collapse:hover{
  background:rgba(255,255,255,.16);
}

.fehu-status-program{
  display:grid;
  gap:4px;
  margin-top:14px;
  padding:12px;
  border:1px solid #bfe5d1;
  border-radius:8px;
  background:#f4fbf7;
}

.fehu-status-program span{
  color:var(--fehu-green-dark);
  font-size:.76rem;
  font-weight:900;
  text-transform:uppercase;
}

.fehu-status-program strong{
  color:#15233d;
  line-height:1.25;
}

.fehu-status-program small{
  color:#607089;
  line-height:1.3;
}

.fehu-status-program div{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding-top:8px;
  border-top:1px solid #dceee4;
}

.fehu-status-program b,
.fehu-status-program em{
  font-size:.82rem;
  font-style:normal;
}

.fehu-contact-modal__icon{
  background:#e5f7ec;
  color:var(--fehu-green);
}

.fehu-contact-modal__list{
  display:grid;
  gap:10px;
  margin-top:16px;
}

.fehu-contact-modal__list a{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:10px 12px;
  border:1px solid var(--fehu-line);
  border-radius:8px;
  color:#20314f;
  background:#fbfcfe;
  text-decoration:none;
  font-weight:800;
}

.fehu-contact-modal__list a:hover{
  border-color:#91d3b5;
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
}

.fehu-send-test-modal__icon{
  color:var(--fehu-green);
  background:var(--fehu-green-soft);
}

.fehu-send-test-modal__field{
  margin-top:14px;
}

.fehu-send-test-modal__error{
  display:block;
  min-height:18px;
  margin-top:8px;
}

.fehu-send-test-modal__actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin-top:18px;
}

.fehu-app.sidebar-collapsed .fehu-shell{
  grid-template-columns:80px minmax(0, 1fr);
}

.fehu-app.sidebar-collapsed .fehu-local-nav{
  align-items:center;
  padding-left:12px;
  padding-right:12px;
}

.fehu-app.sidebar-collapsed .fehu-brand{
  justify-content:center;
  width:100%;
  padding-left:0;
  padding-right:0;
}

.fehu-app.sidebar-collapsed .fehu-brand span,
.fehu-app.sidebar-collapsed .fehu-local-nav nav a span,
.fehu-app.sidebar-collapsed .fehu-side-action span{
  position:absolute;
  width:1px;
  height:1px;
  overflow:hidden;
  clip:rect(0 0 0 0);
}

.fehu-app.sidebar-collapsed .fehu-local-nav nav,
.fehu-app.sidebar-collapsed .fehu-sidebar-foot{
  width:100%;
  align-items:center;
}

.fehu-app.sidebar-collapsed .fehu-local-nav nav a,
.fehu-app.sidebar-collapsed .fehu-side-action{
  width:46px;
  min-width:46px;
  justify-content:center;
  padding:0;
}

.fehu-app.sidebar-collapsed .fehu-local-nav nav a i,
.fehu-app.sidebar-collapsed .fehu-side-action i{
  width:auto;
}

@media (max-width:1199.98px){
  .fehu-app.sidebar-collapsed .fehu-shell{
    grid-template-columns:1fr;
  }

  .fehu-app.sidebar-collapsed .fehu-local-nav nav{
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }

  .fehu-app.sidebar-collapsed .fehu-local-nav nav a,
  .fehu-app.sidebar-collapsed .fehu-side-action{
    width:100%;
  }
}

@media (max-width:767.98px){
  .fehu-public-title p,
  .fehu-top-user span{
    display:none;
  }

  .fehu-public-actions{
    gap:8px;
  }

  .fehu-app.sidebar-collapsed .fehu-local-nav nav{
    grid-template-columns:1fr;
  }
}

.fehu-experience{
  padding-left:0;
  padding-right:0;
  margin-top:0;
}

.fehu-shell{
  gap:24px;
}

.fehu-local-nav{
  top:64px;
  min-height:calc(100vh - 64px);
}

.fehu-panel__actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}

.fehu-card-toggle{
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border:1px solid var(--fehu-line);
  border-radius:8px;
  background:#fff;
  color:#52647f;
  cursor:pointer;
}

.fehu-card-toggle:hover{
  border-color:#91d3b5;
  color:var(--fehu-green-dark);
  background:var(--fehu-green-soft);
}

.fehu-panel__title-row .fehu-card-toggle{
  margin-left:auto;
}

.fehu-collapsible-card{
  min-height:0;
}

.fehu-collapsible-card.is-collapsed > :not(.fehu-panel__head):not(.fehu-panel__title-row){
  display:none !important;
}

.fehu-collapsible-card.is-collapsed{
  height:auto;
}

.fehu-collapsible-card.is-collapsed .fehu-panel__title-row{
  margin-bottom:0;
}

.fehu-collapsible-card.is-collapsed .fehu-panel__head{
  margin-bottom:0;
}

.fehu-rail{
  align-items:start;
}

.fehu-rail .fehu-panel{
  height:auto;
}
