
/* ESLCAMP Recruitment 0.1.2 — Institute onboarding */
.ec-institute-onboarding-page{padding:58px 0 80px}
.ec-institute-onboarding{
  max-width:820px;background:#fff;border:1px solid #e4e7ef;border-radius:24px;
  padding:30px;box-shadow:0 18px 45px rgba(24,31,67,.07)
}
.ec-institute-onboarding h1{margin:7px 0 8px;color:#171159;font-size:32px}
.ec-institute-onboarding>p{color:#667085;line-height:1.9}
.ec-onboarding-error{
  margin:15px 0;padding:11px 13px;border-radius:11px;
  background:#fff0f0;border:1px solid #efcccc;color:#942f2f
}
.ec-responsible-role-picker{border:0;padding:0;margin:22px 0}
.ec-responsible-role-picker legend{font-weight:800;margin-bottom:10px}
.ec-responsible-role-picker{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px
}
.ec-responsible-role-picker legend{grid-column:1/-1}
.ec-responsible-role-picker label{display:block;cursor:pointer}
.ec-responsible-role-picker input{position:absolute;opacity:0;pointer-events:none}
.ec-responsible-role-picker span{
  display:block;padding:16px 14px;border:1px solid #dfe3ec;border-radius:14px;
  background:#fafbfe;text-align:center;font-weight:750
}
.ec-responsible-role-picker input:checked+span{
  border-color:#171159;background:#f0f1ff;color:#171159;
  box-shadow:0 0 0 2px rgba(23,17,89,.07)
}
.ec-institute-onboarding-form .ec-btn{margin-top:18px}
@media(max-width:700px){
  .ec-institute-onboarding{border-radius:18px;padding:20px}
  .ec-responsible-role-picker{grid-template-columns:1fr}
}

/* Recruitment 0.2.0 — moderated job publishing + service pricing */
.ec-institute-service-pricing{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}
.ec-institute-service-pricing>div{background:#f8fafc;border:1px solid #e1e6ef;border-radius:15px;padding:13px}
.ec-institute-service-pricing>div>strong{display:block;color:#171159;margin-bottom:7px}
.ec-own-jobs a em{display:block;font-style:normal;font-size:10px;line-height:1.7;color:#a44739;margin-top:4px}
@media(max-width:650px){.ec-institute-service-pricing{grid-template-columns:1fr}}

.ec-job-edit-panel{border-color:#e7c8bd!important;background:linear-gradient(180deg,#fffaf8,#fff)!important}
.ec-job-review-message{background:#fff1ed;border:1px solid #efcec5;border-radius:14px;padding:13px 15px;margin:12px 0 18px}.ec-job-review-message strong{color:#8e382b}.ec-job-review-message p{margin:4px 0 0;line-height:1.9;color:#72574f}
.ec-own-job-row{border-bottom:1px solid #edf0f4;padding:9px 0}.ec-own-job-row:last-child{border-bottom:0}.ec-own-job-row>a:first-child{display:block!important}
.ec-own-job-edit{display:inline-block!important;margin-top:6px!important;color:#245be8!important;font-size:10px!important;font-weight:900!important;text-decoration:none!important}


/* ============================================================
   Recruitment 0.2.1 — institute dashboard progressive disclosure
   ============================================================ */
.ec-institute-nav-wrap{margin-top:22px!important;margin-bottom:18px!important}
.ec-institute-dashboard-nav{
  display:flex;gap:7px;align-items:center;overflow-x:auto;padding:7px;
  border:1px solid #e1e6ef;border-radius:18px;background:#fff;
  box-shadow:0 8px 26px rgba(31,45,84,.04);scrollbar-width:none
}
.ec-institute-dashboard-nav::-webkit-scrollbar{display:none}
.ec-institute-dashboard-nav a{
  flex:0 0 auto;text-decoration:none;color:#5b6377;font-size:11px;font-weight:850;
  padding:10px 13px;border-radius:12px;white-space:nowrap
}
.ec-institute-dashboard-nav a:hover{background:#f4f7fb;color:#171159}
.ec-institute-dashboard-nav a.is-active{background:#171159;color:#fff}

/* Main institute landing page = operational dashboard only. */
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-institute-workspace,
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-institute-analytics-panel,
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-institute-applicants-panel{display:none!important}

/* Jobs workspace: job wizard/edit/list only; basic organization fields stay elsewhere. */
.ec-institute-hub[data-dashboard-section="jobs"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-institute-analytics-panel,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-institute-applicants-panel,
.ec-institute-hub[data-dashboard-section="jobs"] .ec-institute-settings-panel{display:none!important}

/* Applicants */
.ec-institute-hub[data-dashboard-section="applicants"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="applicants"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="applicants"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="applicants"] .ec-institute-workspace,
.ec-institute-hub[data-dashboard-section="applicants"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="applicants"] .ec-institute-analytics-panel{display:none!important}

/* Saved teachers */
.ec-institute-hub[data-dashboard-section="saved"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="saved"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="saved"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="saved"] .ec-institute-workspace,
.ec-institute-hub[data-dashboard-section="saved"] .ec-institute-analytics-panel,
.ec-institute-hub[data-dashboard-section="saved"] .ec-institute-applicants-panel{display:none!important}

/* Analytics */
.ec-institute-hub[data-dashboard-section="analytics"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="analytics"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="analytics"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="analytics"] .ec-institute-workspace,
.ec-institute-hub[data-dashboard-section="analytics"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="analytics"] .ec-institute-applicants-panel{display:none!important}

/* Account/organization settings: only the lightweight account info card. */
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="settings"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="settings"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-analytics-panel,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-applicants-panel,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-workspace .ec-job-edit-panel,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-workspace .ec-job-wizard-card,
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-side{display:none!important}
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-grid{grid-template-columns:1fr!important}
.ec-institute-hub[data-dashboard-section="settings"] .ec-institute-main{max-width:900px;margin-inline:auto;width:100%}

/* Compact dashboard cards */
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-business-summary{margin-top:14px!important}
.ec-institute-hub[data-dashboard-section="dashboard"] .ec-business-quick-actions{margin-top:12px!important;margin-bottom:36px!important}

@media(max-width:640px){
  .ec-institute-dashboard-nav{margin-inline:-2px}
}

/* Recruitment 0.3.0 — mobile-first institute onboarding */
.ec-onboarding-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:0 0 24px;position:relative}
.ec-onboarding-progress:before{content:"";position:absolute;top:17px;right:9%;left:9%;height:2px;background:#e5e8f0;z-index:0}
.ec-onboarding-progress>div{position:relative;z-index:1;text-align:center;color:#8a91a2;font-size:11px;font-weight:800}
.ec-onboarding-progress i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;margin:0 auto 7px;background:#f1f3f7;border:2px solid #fff;box-shadow:0 0 0 1px #dfe4ed;font-style:normal}
.ec-onboarding-progress .is-current{color:#171159}.ec-onboarding-progress .is-current i{background:#171159;color:#fff;box-shadow:0 0 0 3px rgba(23,17,89,.12)}
.ec-onboarding-progress .is-done{color:#277a50}.ec-onboarding-progress .is-done i{background:#e5f7ed;color:#227549;box-shadow:0 0 0 1px #b9dfc9}
.ec-onboarding-verified{display:inline-flex;align-items:center;gap:8px;margin:12px 0 3px;padding:9px 12px;border-radius:999px;background:#eaf8ef;color:#216b43;font-size:12px;font-weight:800}
.ec-onboarding-full{grid-column:1/-1}.ec-institute-onboarding-form input,.ec-institute-onboarding-form select,.ec-institute-onboarding-form textarea{width:100%}
.ec-onboarding-sticky-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:14px;border-top:1px solid #edf0f5;background:#fff}
.ec-onboarding-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}
.ec-onboarding-media-grid>label{display:flex;flex-direction:column;gap:10px;padding:16px;border:1px dashed #ccd3df;border-radius:17px;background:#fafbfd;min-height:170px}
.ec-onboarding-media-grid img{max-width:100%;height:120px;object-fit:cover;border-radius:12px}.ec-onboarding-gallery{grid-column:1/-1;min-height:auto!important}
.ec-onboarding-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.ec-onboarding-summary>div{padding:14px;border:1px solid #e4e8ef;border-radius:14px;background:#fafbfd}.ec-onboarding-summary span{display:block;color:#7c8495;font-size:11px;margin-bottom:4px}.ec-onboarding-summary strong{color:#171159}
@media(max-width:700px){
  .ec-institute-onboarding-page{padding-bottom:90px}.ec-onboarding-progress span{font-size:9px}.ec-onboarding-progress:before{right:11%;left:11%}
  .ec-onboarding-media-grid,.ec-onboarding-summary{grid-template-columns:1fr}.ec-onboarding-gallery{grid-column:auto}.ec-onboarding-full{grid-column:auto}
  .ec-onboarding-sticky-actions{position:fixed;z-index:999;bottom:0;left:0;right:0;margin:0;padding:10px 14px;background:rgba(255,255,255,.96);border-top:1px solid #dfe4ec;box-shadow:0 -10px 28px rgba(26,34,65,.10)}
  .ec-onboarding-sticky-actions .ec-btn{flex:1;text-align:center;margin:0!important}.ec-institute-onboarding{padding-bottom:22px}
}

/* 0.3.1-beta — mobile Institute onboarding progression */
.ec-onboarding-private-note{margin:10px 0 14px;padding:10px 12px;border-radius:12px;background:#f7f8fc;color:#667085;font-size:11px;line-height:1.8}
@media(max-width:767px){
  .ec-institute-onboarding-page{padding:18px 0 28px!important}
  .ec-institute-onboarding{padding:16px!important;border-radius:18px!important}
  .ec-institute-onboarding h1{font-size:27px!important;line-height:1.45!important}
  .ec-institute-onboarding>p{font-size:12px!important;line-height:1.85!important}
  .ec-onboarding-progress{margin-bottom:17px!important}.ec-onboarding-progress i{width:29px!important;height:29px!important}.ec-onboarding-progress:before{top:14px!important}
  .ec-responsible-role-picker{margin:14px 0!important;gap:8px!important}.ec-responsible-role-picker span{padding:10px 12px!important;font-size:12px!important}
  .ec-institute-onboarding-form label>span{font-size:11px!important;margin-bottom:5px!important}.ec-institute-onboarding-form input,.ec-institute-onboarding-form select,.ec-institute-onboarding-form textarea{min-height:44px!important;font-size:16px!important;border-radius:11px!important}
  .ec-onboarding-sticky-actions{position:static!important;z-index:auto!important;bottom:auto!important;left:auto!important;right:auto!important;margin:16px 0 0!important;padding:12px 0 0!important;background:transparent!important;border-top:1px solid #edf0f5!important;box-shadow:none!important}
  .ec-onboarding-sticky-actions .ec-btn{min-height:44px!important;font-size:12px!important}
}


.ec-institute-membership-summary,.ec-direct-recruitment{background:#fff;border:1px solid #e0e7f2;padding:20px;border-radius:20px;margin-top:18px}.ec-institute-membership-summary h2{margin:0 0 9px}.ec-institute-membership-summary h2 small{font-size:13px;margin-inline-start:10px;color:#7783a3}.ec-institute-plan-list{display:flex;flex-wrap:wrap;gap:9px;margin-top:14px}.ec-institute-plan-list span{display:inline-flex;gap:8px;align-items:center;padding:9px 12px;border-radius:12px;border:1px solid #e2e6f1}.ec-institute-plan-list a{color:#245be9}.ec-institute-membership-badge{display:inline-block;border-radius:999px;border:1px solid var(--ec-tier-color);color:var(--ec-tier-color);padding:2px 8px;font-weight:900}.ec-direct-recruitment{margin-bottom:12px}.ec-recruit-direct-form{display:grid;gap:11px}.ec-recruit-direct-form label{display:grid;gap:6px}.ec-recruit-direct-form select,.ec-recruit-direct-form textarea{width:100%;padding:10px;border-radius:12px;border:1px solid #cdd5e4}.ec-institute-media-details{margin-top:22px}.ec-institute-media-details summary{font-weight:800;color:#151a50;cursor:pointer}
.ec-job-institute-logo{width:65px;height:65px;object-fit:contain;background:#fff;border:1px solid #dbe2ee;border-radius:12px;padding:5px}.ec-job-employer-id{display:block;color:#737d9a;font-size:11px;margin:3px 0}

/* 1.11.2: Subscription information is in its own top-level Institute tab. */
.ec-institute-hub[data-dashboard-section="membership"] .ec-institute-recent-notifications,
.ec-institute-hub[data-dashboard-section="membership"] .ec-business-summary,
.ec-institute-hub[data-dashboard-section="membership"] .ec-business-quick-actions,
.ec-institute-hub[data-dashboard-section="membership"] .ec-institute-workspace,
.ec-institute-hub[data-dashboard-section="membership"] .ec-institute-saved-panel,
.ec-institute-hub[data-dashboard-section="membership"] .ec-institute-analytics-panel,
.ec-institute-hub[data-dashboard-section="membership"] .ec-institute-applicants-panel{display:none!important}
.ec-institute-membership-summary{padding:clamp(16px,3vw,28px);max-width:1060px}
.ec-membership-current{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px;border-radius:16px;background:#f4f7fe;margin:17px 0;color:#222b54}
.ec-membership-current h3{margin:5px 0;font-size:23px}
.ec-membership-current>div:last-child{text-align:center;min-width:100px}
.ec-membership-current>div:last-child strong{display:block;font-size:30px}
.ec-membership-usage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ec-membership-usage>div{border:1px solid #e4eaf3;border-radius:14px;padding:15px;display:flex;flex-direction:column;gap:6px}
.ec-membership-usage progress{width:100%;height:9px;accent-color:#245be9}
.ec-membership-list-title{font-size:18px;margin:26px 0 12px}
.ec-institute-plan-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}
.ec-institute-plan-list .ec-membership-plan-card{display:block;padding:18px;background:#fff;border:1px solid #e3e9f4;border-radius:15px;min-width:0}
.ec-membership-plan-card.is-current{background:#f7f9ff;border-color:#869def}
.ec-membership-plan-card h4{font-size:18px;margin:0 0 12px}
.ec-membership-plan-price{font-size:18px;font-weight:850}
.ec-membership-plan-card a{display:inline-block;padding:9px 15px;border-radius:10px;color:#fff;background:#245be9;text-decoration:none;font-weight:750}
.ec-membership-current-label{font-weight:800;color:#1e4bc1}
@media(max-width:640px){.ec-membership-current{align-items:flex-start}.ec-membership-usage{grid-template-columns:1fr}}
