.ibe-dashboard,.ibe-job-form,.ibe-import-box,.ibe-access-card,.ibe-dashboard *,.ibe-job-form *,.ibe-import-box *,.ibe-access-card *{box-sizing:border-box}.ibe-dashboard,.ibe-job-form,.ibe-import-box{--ibe-orange:#d65a19;--ibe-orange-dark:#b74710;--ibe-black:#171717;--ibe-gray:#666;--ibe-light:#f7f8f9;--ibe-border:#dfe3e7;font-family:Arial,Helvetica,sans-serif;color:var(--ibe-black)}.ibe-dashboard{width:min(1180px,calc(100% - 32px));margin:30px auto}.ibe-job-form,.ibe-import-box{width:min(1050px,calc(100% - 30px));margin:30px auto}.ibe-dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px}.ibe-dashboard-header h1,.ibe-form-header h1{margin:0 0 8px;font-size:clamp(34px,5vw,50px);line-height:1.05;font-weight:900;letter-spacing:-1.2px}.ibe-dashboard-header p,.ibe-form-header p,.ibe-form-section>p,.ibe-import-box p{margin:0;color:var(--ibe-gray);line-height:1.6}.ibe-btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 22px;border:0;border-radius:8px;text-decoration:none!important;font-size:14px;font-weight:800;cursor:pointer}.ibe-btn-primary{background:var(--ibe-orange,#d65a19);color:#fff!important}.ibe-btn-primary:hover{background:var(--ibe-orange-dark,#b74710);color:#fff!important}.ibe-btn-secondary{background:#eee;color:#222!important}.ibe-btn-disabled{background:#eee;color:#777;cursor:not-allowed}.ibe-notice{margin:0 0 24px;padding:16px 19px;border:1px solid #c9e3ce;border-radius:8px;background:#edf7ef;color:#2e6437;font-weight:700}.ibe-notice-warning{background:#fff1ed;border-color:#f0c7b8;color:#8b3d1e}.ibe-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:34px}.ibe-stat{padding:27px;border:1px solid var(--ibe-border);border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.035)}.ibe-stat span{display:block;margin-bottom:10px;color:#787878;font-size:12px;font-weight:800;letter-spacing:.8px;text-transform:uppercase}.ibe-stat strong{font-size:42px;line-height:1;font-weight:900}.ibe-stat-accent strong{color:var(--ibe-orange)}.ibe-jobs-panel{background:#fff;border:1px solid var(--ibe-border);border-radius:17px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.04)}.ibe-panel-header{padding:25px 28px;border-bottom:1px solid var(--ibe-border)}.ibe-panel-header h2{margin:0;font-size:25px}.ibe-job-row{display:grid;grid-template-columns:minmax(230px,1.6fr) minmax(100px,.6fr) minmax(320px,1.6fr);gap:20px;align-items:center;padding:23px 28px;border-bottom:1px solid var(--ibe-border)}.ibe-job-row:last-child{border-bottom:0}.ibe-job-row h3{margin:0 0 7px;font-size:18px}.ibe-job-row h3 a{color:#171717;text-decoration:none}.ibe-job-row small{color:#888}.ibe-status{display:inline-flex;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:800}.ibe-status-active{background:#eaf6ec;color:#277438}.ibe-status-paused{background:#f2f2f2;color:#626262}.ibe-status-filled{background:#e8eef7;color:#315884}.ibe-status-pending{background:#fff3db;color:#8a5b00}.ibe-status-expired{background:#f7e8e8;color:#8a3232}.ibe-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px}.ibe-action{display:inline-flex;min-height:34px;padding:8px 11px;align-items:center;border:1px solid #d8dade;border-radius:6px;background:#fff;color:#333!important;text-decoration:none!important;font-size:12px;font-weight:750}.ibe-action-primary{border-color:#d65a19;background:#d65a19;color:#fff!important}.ibe-action-danger{color:#a02b2b!important}.ibe-empty{padding:60px 30px;text-align:center}.ibe-empty h3{margin:0 0 10px;font-size:25px}.ibe-empty p{max-width:580px;margin:0 auto 25px;color:#666;line-height:1.6}.ibe-access-card{max-width:760px;margin:35px auto;padding:45px;border:1px solid #e1e4e8;border-radius:16px;background:#fff;text-align:center;font-family:Arial,Helvetica,sans-serif}.ibe-form-header{margin-bottom:30px}.ibe-form-section{margin-bottom:24px;padding:34px;background:#fff;border:1px solid var(--ibe-border);border-radius:16px;box-shadow:0 8px 25px rgba(0,0,0,.035)}.ibe-form-section h2{margin:0 0 7px;font-size:26px}.ibe-form-section>p{margin-bottom:25px}.ibe-grid-2,.ibe-grid-3{display:grid;gap:21px}.ibe-grid-2{grid-template-columns:1fr 1fr}.ibe-grid-3{grid-template-columns:repeat(3,1fr)}.ibe-field{margin-bottom:21px}.ibe-field:last-child{margin-bottom:0}.ibe-field label{display:block;margin-bottom:8px;font-size:14px;font-weight:800}.ibe-field label b{color:#d65a19}.ibe-field input[type=text],.ibe-field input[type=email],.ibe-field input[type=url],.ibe-field select,.ibe-field textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #cfd4da;border-radius:7px;background:#fff;color:#222;font:inherit}.ibe-field textarea{min-height:155px;resize:vertical;line-height:1.55}.ibe-field input:focus,.ibe-field select:focus,.ibe-field textarea:focus{outline:0;border-color:#d65a19;box-shadow:0 0 0 2px rgba(214,90,25,.12)}.ibe-checkbox-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ibe-checkbox{display:flex;align-items:center;gap:8px;padding:11px 12px;background:#f7f8f9;border:1px solid #dfe3e7;border-radius:7px;font-size:13px;font-weight:700}.ibe-application-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:25px}.ibe-application-card{display:block;padding:20px;background:#f7f8f9;border:1px solid #dfe3e7;border-radius:10px;cursor:pointer}.ibe-application-card span{display:block;font-weight:800}.ibe-application-card small{display:block;margin:8px 0 0 25px;color:#666;line-height:1.5}.ibe-form-actions{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:28px}.ibe-import-box{padding:30px;border:1px solid #dfe3e7;border-radius:16px;background:#f8f9fa}.ibe-import-box h2{margin:0 0 8px;font-size:25px}.ibe-import-upload{display:flex;gap:12px;align-items:center}.ibe-import-upload input[type=file]{flex:1;min-width:250px;padding:11px;background:#fff;border:1px solid #ccd2d8;border-radius:7px}.ibe-import-box small{display:block;margin-top:10px;color:#777}.ibe-import-box .ibe-notice{margin-top:18px}.ibe-import-box form{margin-top:20px}@media(max-width:900px){.ibe-dashboard-header{align-items:flex-start;flex-direction:column}.ibe-job-row{grid-template-columns:1fr}.ibe-actions{justify-content:flex-start}}@media(max-width:800px){.ibe-grid-2,.ibe-grid-3,.ibe-application-grid{grid-template-columns:1fr}.ibe-checkbox-grid{grid-template-columns:1fr 1fr}.ibe-stat-grid{grid-template-columns:1fr}}@media(max-width:520px){.ibe-dashboard,.ibe-job-form,.ibe-import-box{width:calc(100% - 18px)}.ibe-form-section{padding:24px 18px}.ibe-checkbox-grid{grid-template-columns:1fr}.ibe-form-actions{flex-direction:column;align-items:stretch}.ibe-form-actions>div{display:grid;gap:8px}.ibe-import-upload{display:block}.ibe-import-upload input[type=file],.ibe-import-upload .ibe-btn{width:100%}.ibe-import-upload .ibe-btn{margin-top:12px}}

/* v0.3.0 Candidate Applications */
.single-job_listing.ibe-recruiting-custom-application .job_application{display:none!important}.ibe-stat-grid-4{grid-template-columns:repeat(4,1fr)}.ibe-kicker{display:inline-block;margin-bottom:8px;color:#b74710;font-size:12px;font-weight:900;letter-spacing:1px;text-transform:uppercase}.ibe-public-apply{--ibe-orange:#d65a19;--ibe-orange-dark:#b74710;--ibe-border:#dfe3e7;--ibe-gray:#666;margin:42px 0 18px;padding:34px;border:1px solid var(--ibe-border);border-radius:16px;background:#fff;box-shadow:0 10px 28px rgba(0,0,0,.04);font-family:Arial,Helvetica,sans-serif}.ibe-public-apply-head h2{margin:0 0 10px;font-size:clamp(28px,4vw,38px);line-height:1.1}.ibe-public-apply-head p{margin:0 0 24px;color:var(--ibe-gray);line-height:1.6}.ibe-candidate-form .ibe-field small{display:block;margin-top:6px;color:#777}.ibe-candidate-form .ibe-field input[type=file]{width:100%;padding:12px;border:1px solid #cfd4da;border-radius:7px;background:#fff}.ibe-consent{display:flex;gap:10px;align-items:flex-start;margin:5px 0 22px;padding:15px 16px;border:1px solid #dfe3e7;border-radius:8px;background:#f7f8f9;font-size:14px;line-height:1.45}.ibe-consent input{margin-top:3px}.ibe-apply-large{min-height:54px;padding:14px 26px;font-size:15px}.ibe-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.ibe-apply-message{margin:0 0 24px;padding:16px 18px;border-radius:8px;font-weight:700}.ibe-apply-message-success{border:1px solid #c9e3ce;background:#edf7ef;color:#2e6437}.ibe-apply-message-error{border:1px solid #f0c7b8;background:#fff1ed;color:#8b3d1e}.ibe-public-apply-company{text-align:left}.ibe-applicant-list{display:grid;gap:20px}.ibe-applicant-card{padding:28px;border:1px solid #dfe3e7;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(0,0,0,.035)}.ibe-applicant-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:22px}.ibe-applicant-top h2{margin:8px 0 5px;font-size:25px}.ibe-applicant-top p{margin:0;color:#666}.ibe-applicant-date{color:#777;font-size:13px;white-space:nowrap}.ibe-applicant-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.ibe-applicant-grid>div{padding:14px;border:1px solid #e4e6e8;border-radius:9px;background:#f8f9fa;min-width:0}.ibe-applicant-grid strong{display:block;margin-bottom:6px;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#777}.ibe-applicant-grid a,.ibe-applicant-grid span{overflow-wrap:anywhere}.ibe-applicant-link{overflow-wrap:anywhere}.ibe-applicant-message{margin:18px 0;padding:18px;border-left:4px solid #d65a19;background:#fff7f2;border-radius:0 8px 8px 0}.ibe-applicant-message p{margin:7px 0 0;line-height:1.6}.ibe-status-form{display:flex;align-items:end;gap:12px;padding-top:18px;border-top:1px solid #e5e7e9}.ibe-status-form label{font-weight:800;font-size:13px}.ibe-status-form select{display:block;min-width:190px;margin-top:7px;padding:10px 12px;border:1px solid #ccd2d8;border-radius:7px;background:#fff}.ibe-status-new{background:#fff3db;color:#8a5b00}.ibe-status-reviewed{background:#e8eef7;color:#315884}.ibe-status-contacted{background:#e9f4f7;color:#23657a}.ibe-status-interviewing{background:#f0eafa;color:#62418b}.ibe-status-hired{background:#eaf6ec;color:#277438}.ibe-status-not_selected{background:#f3f3f3;color:#666}
@media(max-width:1000px){.ibe-stat-grid-4{grid-template-columns:repeat(2,1fr)}.ibe-applicant-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.ibe-public-apply{padding:24px 18px}.ibe-applicant-top{flex-direction:column}.ibe-applicant-date{white-space:normal}.ibe-applicant-grid{grid-template-columns:1fr}.ibe-status-form{align-items:stretch;flex-direction:column}.ibe-status-form label,.ibe-status-form select,.ibe-status-form .ibe-btn{width:100%}}


/* ============================================================
   v0.3.8 — Recruiting pages: full width and distraction free
   ============================================================ */
.ibe-recruiting-fullwidth #secondary,
.ibe-recruiting-fullwidth .sidebar,
.ibe-recruiting-fullwidth .site-sidebar,
.ibe-recruiting-fullwidth .widget-area,
.ibe-recruiting-fullwidth aside.sidebar,
.ibe-recruiting-fullwidth aside.widget-area,
.ibe-recruiting-fullwidth .content-sidebar,
.ibe-recruiting-fullwidth .right-sidebar,
.ibe-recruiting-fullwidth .left-sidebar {
    display:none!important;
}

.ibe-recruiting-fullwidth #primary,
.ibe-recruiting-fullwidth .content-area,
.ibe-recruiting-fullwidth .site-content .content-area,
.ibe-recruiting-fullwidth main.site-main {
    width:100%!important;
    max-width:100%!important;
    float:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

.ibe-recruiting-fullwidth .site-content,
.ibe-recruiting-fullwidth .content-wrapper,
.ibe-recruiting-fullwidth .container {
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
}

.ibe-inline-apply-cta {
    max-width:1180px;
    margin:28px auto 10px;
    padding:0 18px;
    text-align:left;
    clear:both;
}

.ibe-inline-apply-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:52px;
    padding:14px 30px;
    border-radius:8px;
    background:#d65a19;
    color:#fff!important;
    text-decoration:none!important;
    font-weight:800;
    font-size:17px;
    line-height:1;
    box-shadow:none;
    transition:background .15s ease;
}

.ibe-inline-apply-button:hover,
.ibe-inline-apply-button:focus {
    background:#b74710;
    color:#fff!important;
    text-decoration:none!important;
}

#ibe-job-application {
    scroll-margin-top:110px;
}

.ibe-recruiting-fullwidth #ibe-job-application.ibe-production-application-wrap {
    max-width:1180px!important;
    margin:12px auto 40px!important;
}

@media(max-width:700px){
    .ibe-inline-apply-cta {
        padding:0 12px;
    }
    .ibe-inline-apply-button {
        width:100%;
    }
}


/* ============================================================
   v0.3.9 — Single job posts: no sidebar, no Apply Now bridge
   ============================================================ */
.ibe-inline-apply-cta {
    display:none!important;
}

body.single-job_listing #secondary,
body.single-job_listing #sidebar,
body.single-job_listing #right-sidebar,
body.single-job_listing #left-sidebar,
body.single-job_listing [role="complementary"],
body.single-job_listing aside.sidebar,
body.single-job_listing aside.widget-area,
body.single-job_listing .sidebar,
body.single-job_listing .sidebar-wrapper,
body.single-job_listing .sidebar-container,
body.single-job_listing .site-sidebar,
body.single-job_listing .main-sidebar,
body.single-job_listing .right-sidebar,
body.single-job_listing .left-sidebar,
body.single-job_listing .widget-area,
body.single-job_listing .widgets-area,
body.single-job_listing .content-sidebar,
body.single-job_listing .secondary,
body.single-job_listing .secondary-content,
body.single-job_listing .elementor-widget-sidebar,
body.single-job_listing .wp-block-widget-area,
body.single-job_listing [id*="sidebar"],
body.single-job_listing [class*="sidebar"] {
    display:none!important;
    width:0!important;
    max-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
}

body.single-job_listing #primary,
body.single-job_listing .content-area,
body.single-job_listing main.site-main,
body.single-job_listing .site-main,
body.single-job_listing .single_job_listing,
body.single-job_listing article.type-job_listing {
    width:100%!important;
    max-width:1180px!important;
    float:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

body.single-job_listing #ibe-job-application {
    max-width:1180px!important;
    margin:30px auto 45px!important;
    clear:both!important;
}




/* ============================================================
   v0.3.13 — Clean centered single-job layout
   ============================================================ */

html,
body.single-job_listing {
    overflow-x:hidden!important;
}

/* Sidebar removal remains intentionally scoped to single jobs. */
body.single-job_listing #secondary,
body.single-job_listing #sidebar,
body.single-job_listing #right-sidebar,
body.single-job_listing #left-sidebar,
body.single-job_listing [role="complementary"],
body.single-job_listing aside.sidebar,
body.single-job_listing aside.widget-area,
body.single-job_listing .sidebar,
body.single-job_listing .sidebar-wrapper,
body.single-job_listing .sidebar-container,
body.single-job_listing .site-sidebar,
body.single-job_listing .main-sidebar,
body.single-job_listing .right-sidebar,
body.single-job_listing .left-sidebar,
body.single-job_listing .widget-area,
body.single-job_listing .widgets-area,
body.single-job_listing .content-sidebar,
body.single-job_listing .secondary-content,
body.single-job_listing .elementor-widget-sidebar,
body.single-job_listing .wp-block-widget-area {
    display:none!important;
}

/* Only wrappers explicitly marked by our JS are expanded. Header is untouched. */
body.single-job_listing .ibe-job-width-wrapper {
    width:100%!important;
    max-width:100%!important;
    flex:0 0 100%!important;
    float:none!important;
    margin-left:0!important;
    margin-right:0!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
}

/* Center just the real job content. */
body.single-job_listing .ibe-job-centered-content {
    display:block!important;
    width:calc(100% - 48px)!important;
    max-width:1280px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    float:none!important;
    position:relative!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
    box-sizing:border-box!important;
}

/* Application stays aligned with the job. */
body.single-job_listing #ibe-job-application,
body.single-job_listing #ibe-job-application .ibe-public-apply {
    width:100%!important;
    max-width:1280px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
}

body.single-job_listing img,
body.single-job_listing iframe,
body.single-job_listing video,
body.single-job_listing table,
body.single-job_listing input,
body.single-job_listing select,
body.single-job_listing textarea {
    max-width:100%;
    box-sizing:border-box;
}

@media(max-width:700px){
    body.single-job_listing .ibe-job-centered-content {
        width:calc(100% - 24px)!important;
    }
}


/* ============================================================
   v0.4.0 — Candidate Profiles
   ============================================================ */
.ibe-candidate-profile,
.ibe-candidate-profile *{box-sizing:border-box}
.ibe-candidate-profile{--ibe-orange:#d65a19;--ibe-orange-dark:#b74710;--ibe-text:#171717;--ibe-muted:#686868;--ibe-border:#dfe3e7;--ibe-soft:#f7f8f9;width:min(1180px,calc(100% - 30px));margin:32px auto 55px;font-family:Arial,Helvetica,sans-serif;color:var(--ibe-text)}
.ibe-candidate-hero{margin-bottom:28px}
.ibe-candidate-hero .ibe-kicker{display:inline-block;margin-bottom:7px;color:var(--ibe-orange);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ibe-candidate-hero h1{margin:0 0 10px;font-size:clamp(36px,5vw,54px);line-height:1.05;font-weight:900;letter-spacing:-1.4px}
.ibe-candidate-hero p{max-width:850px;margin:0;color:var(--ibe-muted);font-size:17px;line-height:1.6}
.ibe-candidate-section{margin:0 0 24px;padding:32px;border:1px solid var(--ibe-border);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.035)}
.ibe-candidate-section h2{margin:0 0 7px;font-size:27px;line-height:1.15;font-weight:900}
.ibe-candidate-section .ibe-section-intro{margin:0 0 22px;color:var(--ibe-muted);line-height:1.55}
.ibe-candidate-profile .ibe-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.ibe-candidate-profile .ibe-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ibe-candidate-profile .ibe-field{margin-bottom:20px}
.ibe-candidate-profile .ibe-field:last-child{margin-bottom:0}
.ibe-candidate-profile .ibe-field>label{display:block;margin-bottom:8px;font-size:14px;font-weight:800}
.ibe-candidate-profile .ibe-field input[type="text"],
.ibe-candidate-profile .ibe-field input[type="email"],
.ibe-candidate-profile .ibe-field input[type="url"],
.ibe-candidate-profile .ibe-field input[type="file"],
.ibe-candidate-profile .ibe-field select,
.ibe-candidate-profile .ibe-field textarea{width:100%;min-height:48px;padding:11px 13px;border:1px solid #cfd4da;border-radius:7px;background:#fff;color:#222;font:inherit}
.ibe-candidate-profile .ibe-field textarea{min-height:130px;resize:vertical;line-height:1.55}
.ibe-candidate-profile .ibe-field input:focus,
.ibe-candidate-profile .ibe-field select:focus,
.ibe-candidate-profile .ibe-field textarea:focus{outline:none;border-color:var(--ibe-orange);box-shadow:0 0 0 2px rgba(214,90,25,.12)}
.ibe-candidate-profile .ibe-field-help{display:block;margin-top:6px;color:#7b7b7b;font-size:12px;line-height:1.45}
.ibe-candidate-profile .ibe-field-check{display:flex;flex-direction:column;justify-content:center;padding:15px 16px;border:1px solid var(--ibe-border);border-radius:9px;background:var(--ibe-soft)}
.ibe-candidate-profile .ibe-field-check>label{display:flex;align-items:center;gap:9px;margin:0;font-weight:800}
.ibe-candidate-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ibe-candidate-check{display:flex!important;align-items:center;gap:8px;margin:0!important;padding:11px 12px;border:1px solid var(--ibe-border);border-radius:8px;background:var(--ibe-soft);font-size:13px!important;font-weight:700!important;cursor:pointer}
.ibe-candidate-check input{margin:0}
.ibe-current-resume{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;padding:18px;border:1px solid #cfe2d3;border-radius:10px;background:#f1f8f2}
.ibe-current-resume strong,.ibe-current-resume span{display:block}
.ibe-current-resume span{margin-top:4px;color:#555;font-size:13px}
.ibe-candidate-radio-stack{display:grid;gap:10px}
.ibe-candidate-radio-stack>label{display:flex;align-items:flex-start;gap:11px;margin:0!important;padding:16px 18px;border:1px solid var(--ibe-border);border-radius:10px;background:#fff;cursor:pointer}
.ibe-candidate-radio-stack input{margin-top:3px}
.ibe-candidate-radio-stack span{display:block}
.ibe-candidate-radio-stack strong{display:block;margin-bottom:3px;font-size:14px}
.ibe-candidate-radio-stack small{display:block;color:#666;font-size:12px;line-height:1.45}
.ibe-privacy-section{border-top:4px solid var(--ibe-orange)}
.ibe-candidate-save-bar{position:sticky;bottom:15px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:28px;padding:18px 20px;border:1px solid #d8dde1;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 34px rgba(0,0,0,.12);backdrop-filter:blur(8px)}
.ibe-candidate-save-bar strong,.ibe-candidate-save-bar span{display:block}
.ibe-candidate-save-bar span{margin-top:3px;color:#666;font-size:12px}
.ibe-candidate-save{min-width:210px}
.ibe-candidate-login{padding:44px;border:1px solid var(--ibe-border);border-radius:16px;background:#fff;text-align:center}
.ibe-candidate-login h1{margin:0 0 12px;font-size:40px}
.ibe-candidate-login p{max-width:650px;margin:0 auto 22px;color:#666;font-size:16px;line-height:1.6}
.ibe-candidate-login .ibe-candidate-login-note{margin-top:16px;margin-bottom:0;font-size:12px}

@media(max-width:850px){
  .ibe-candidate-profile .ibe-grid-2,
  .ibe-candidate-profile .ibe-grid-3{grid-template-columns:1fr}
  .ibe-candidate-check-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .ibe-candidate-profile{width:calc(100% - 18px);margin-top:20px}
  .ibe-candidate-section{padding:23px 17px}
  .ibe-candidate-check-grid{grid-template-columns:1fr}
  .ibe-current-resume{align-items:stretch;flex-direction:column}
  .ibe-candidate-save-bar{position:static;align-items:stretch;flex-direction:column}
  .ibe-candidate-save{width:100%}
}


/* ============================================================
   v0.4.1 — Employer Talent Network Search
   ============================================================ */
.ibe-dashboard-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.ibe-talent-network,.ibe-talent-network *{box-sizing:border-box}
.ibe-talent-network{--ibe-orange:#d65a19;--ibe-orange-dark:#b74710;--ibe-text:#171717;--ibe-muted:#686868;--ibe-border:#dfe3e7;--ibe-soft:#f7f8f9;width:min(1220px,calc(100% - 30px));margin:32px auto 60px;color:var(--ibe-text)}
.ibe-talent-hero{margin-bottom:28px}
.ibe-talent-hero .ibe-kicker{display:inline-block;margin-bottom:7px;color:var(--ibe-orange);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.ibe-talent-hero h1{margin:0 0 10px;font-size:clamp(38px,5vw,56px);line-height:1.03;font-weight:900;letter-spacing:-1.5px}
.ibe-talent-hero p{max-width:900px;margin:0;color:var(--ibe-muted);font-size:17px;line-height:1.6}
.ibe-talent-search{margin-bottom:28px;padding:26px;border:1px solid var(--ibe-border);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.035)}
.ibe-talent-search-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.ibe-talent-search .ibe-field{margin:0}
.ibe-talent-search .ibe-field label{display:block;margin-bottom:7px;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em;color:#555}
.ibe-talent-search input,.ibe-talent-search select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #cfd4da;border-radius:7px;background:#fff;color:#222;font:inherit}
.ibe-talent-search input:focus,.ibe-talent-search select:focus{outline:none;border-color:var(--ibe-orange);box-shadow:0 0 0 2px rgba(214,90,25,.12)}
.ibe-talent-search-actions{display:flex;gap:10px;margin-top:20px}
.ibe-talent-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:30px 0 16px}
.ibe-talent-results-head>div{display:flex;align-items:center;gap:12px}
.ibe-talent-results-head h2{margin:0;font-size:27px}
.ibe-talent-results-head p{margin:0;color:#747474;font-size:13px}
.ibe-talent-count{display:inline-flex;align-items:center;justify-content:center;min-width:46px;height:46px;padding:0 11px;border-radius:11px;background:#fff1e8;color:var(--ibe-orange);font-size:22px;font-weight:900}
.ibe-talent-results{display:grid;gap:20px}
.ibe-talent-card{padding:28px;border:1px solid var(--ibe-border);border-radius:15px;background:#fff;box-shadow:0 8px 26px rgba(0,0,0,.04)}
.ibe-talent-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:25px;margin-bottom:17px}
.ibe-talent-status-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:9px}
.ibe-talent-status,.ibe-talent-confidential{display:inline-flex;align-items:center;min-height:27px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}
.ibe-talent-status{background:#eaf6ec;color:#28723a}
.ibe-talent-confidential{background:#fff2e8;color:#a94a13}
.ibe-talent-card h2{margin:0 0 6px;font-size:28px;line-height:1.15}
.ibe-talent-role{margin:0;color:#5e5e5e;font-size:15px}
.ibe-talent-visibility{padding:8px 10px;border-radius:7px;background:#f2f3f4;color:#656565;font-size:11px;font-weight:800;white-space:nowrap}
.ibe-talent-summary{max-width:950px;margin:0 0 20px;color:#414141;line-height:1.65}
.ibe-talent-facts{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:20px}
.ibe-talent-facts>div{padding:13px;border:1px solid #e3e6e9;border-radius:9px;background:var(--ibe-soft);min-width:0}
.ibe-talent-facts strong,.ibe-talent-preferences strong{display:block;margin-bottom:5px;color:#777;font-size:10px;font-weight:900;letter-spacing:.03em;text-transform:uppercase}
.ibe-talent-facts span,.ibe-talent-preferences span{display:block;font-size:13px;font-weight:700;overflow-wrap:anywhere}
.ibe-talent-detail{margin:18px 0}
.ibe-talent-detail>strong{display:block;margin-bottom:9px;font-size:12px;text-transform:uppercase;color:#606060;letter-spacing:.04em}
.ibe-talent-tags{display:flex;gap:7px;flex-wrap:wrap}
.ibe-talent-tags span{padding:7px 9px;border:1px solid #e1e4e7;border-radius:999px;background:#fff;font-size:11px;font-weight:700}
.ibe-talent-preferences{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:20px;padding-top:20px;border-top:1px solid #eceeef}
.ibe-talent-preferences>div{min-width:0}
.ibe-talent-card-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px;padding-top:18px;border-top:1px solid #eceeef}
.ibe-talent-privacy-note{max-width:760px;color:#686868;font-size:12px;line-height:1.55}
.ibe-talent-privacy-note span,.ibe-talent-privacy-note a{display:inline-block;margin-right:14px}
.ibe-talent-empty{padding:42px;border:1px dashed #cfd4da;border-radius:14px;background:#fafafa;text-align:center}
.ibe-talent-empty h3{margin:0 0 8px;font-size:24px}
.ibe-talent-empty p{max-width:700px;margin:0 auto;color:#707070;line-height:1.6}

@media(max-width:1050px){
  .ibe-talent-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ibe-talent-facts{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ibe-talent-preferences{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .ibe-dashboard-header-actions{width:100%;justify-content:stretch}
  .ibe-dashboard-header-actions .ibe-btn{flex:1;text-align:center}
  .ibe-talent-network{width:calc(100% - 18px);margin-top:20px}
  .ibe-talent-search{padding:20px 15px}
  .ibe-talent-search-grid{grid-template-columns:1fr}
  .ibe-talent-search-actions{flex-direction:column}
  .ibe-talent-search-actions .ibe-btn{width:100%;text-align:center}
  .ibe-talent-results-head,.ibe-talent-card-top,.ibe-talent-card-footer{align-items:stretch;flex-direction:column}
  .ibe-talent-facts,.ibe-talent-preferences{grid-template-columns:1fr 1fr}
  .ibe-talent-visibility{white-space:normal}
}
@media(max-width:480px){
  .ibe-talent-facts,.ibe-talent-preferences{grid-template-columns:1fr}
}


/* ============================================================
   v0.4.2 — Candidate Introduction Requests
   ============================================================ */
.ibe-intro-request-box{min-width:260px;max-width:440px;border:1px solid #d9dde1;border-radius:9px;background:#fff}
.ibe-intro-request-box summary{list-style:none;cursor:pointer;padding:12px 16px;color:#fff;background:#d65a19;border-radius:8px;font-size:13px;font-weight:900;text-align:center}
.ibe-intro-request-box summary::-webkit-details-marker{display:none}
.ibe-intro-request-box[open] summary{border-radius:8px 8px 0 0}
.ibe-intro-request-form{padding:16px}
.ibe-intro-request-form .ibe-field{margin-bottom:14px}
.ibe-intro-request-form .ibe-field label{display:block;margin-bottom:6px;font-size:12px;font-weight:900}
.ibe-intro-request-form select,.ibe-intro-request-form textarea{width:100%;padding:10px 11px;border:1px solid #cfd4da;border-radius:7px;background:#fff;font:inherit}
.ibe-intro-request-form textarea{resize:vertical;line-height:1.45}
.ibe-intro-request-form .ibe-field-help{display:block;margin-top:6px;color:#707070;font-size:11px;line-height:1.45}
.ibe-intro-status{min-width:250px;padding:12px 14px;border-radius:9px}
.ibe-intro-status strong,.ibe-intro-status span{display:block}
.ibe-intro-status strong{margin-bottom:3px;font-size:13px}
.ibe-intro-status span{font-size:11px;line-height:1.4}
.ibe-intro-status-pending{background:#fff7df;color:#7b5c00}
.ibe-intro-status-accepted{background:#eaf7ed;color:#256a35}
.ibe-intro-status-declined{background:#f6f6f6;color:#666}

.ibe-candidate-intros{margin:0 0 26px;padding:28px;border:1px solid #dfe3e7;border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.035)}
.ibe-candidate-intros-head,.ibe-employer-intros-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.ibe-candidate-intros-head .ibe-kicker,.ibe-employer-intros-head .ibe-kicker{display:block;margin-bottom:5px;color:#d65a19;font-size:11px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.ibe-candidate-intros-head h2,.ibe-employer-intros-head h2{margin:0;font-size:27px}
.ibe-intro-pending-count{padding:7px 10px;border-radius:999px;background:#fff0e7;color:#aa4811;font-size:11px;font-weight:900}
.ibe-candidate-intro-list{display:grid;gap:14px}
.ibe-candidate-intro-card{padding:20px;border:1px solid #e0e3e6;border-radius:11px;background:#fbfbfb}
.ibe-candidate-intro-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.ibe-candidate-intro-top h3{margin:8px 0 4px;font-size:20px}
.ibe-candidate-intro-top p{margin:0;color:#666}
.ibe-intro-date{color:#7a7a7a;font-size:11px;white-space:nowrap}
.ibe-intro-status-chip{display:inline-flex;padding:5px 8px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase}
.ibe-intro-chip-pending{background:#fff0cf;color:#7b5b00}
.ibe-intro-chip-accepted{background:#e3f5e8;color:#216a32}
.ibe-intro-chip-declined{background:#eceeef;color:#666}
.ibe-intro-message{margin-top:16px;padding:14px 15px;border-left:3px solid #d65a19;background:#fff7f1}
.ibe-intro-message strong{display:block;margin-bottom:6px;font-size:12px}
.ibe-intro-message p{margin:0;line-height:1.55}
.ibe-intro-response-actions{display:flex;gap:10px;margin-top:16px}
.ibe-intro-response-actions form{margin:0}
.ibe-intro-protection{margin:12px 0 0;color:#707070;font-size:11px;line-height:1.5}
.ibe-intro-connected{margin-top:15px;padding:13px 14px;border-radius:8px;background:#eaf7ed;color:#276c37}
.ibe-intro-connected strong,.ibe-intro-connected span{display:block}
.ibe-intro-connected span{margin-top:3px;font-size:12px}

.ibe-employer-intros{margin:0 0 26px;padding:24px;border:1px solid #dfe3e7;border-radius:14px;background:#fff}
.ibe-employer-intros-head>span{color:#777;font-size:12px;font-weight:800}
.ibe-employer-intro-list{display:grid;gap:9px}
.ibe-employer-intro-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:13px 14px;border:1px solid #e4e6e8;border-radius:9px;background:#fafafa}
.ibe-employer-intro-main{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.ibe-employer-intro-main>strong{font-size:13px}
.ibe-employer-intro-main>span:not(.ibe-intro-status-chip){color:#686868;font-size:12px}
.ibe-employer-intro-contact{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:12px}
.ibe-employer-intro-note{color:#757575;font-size:11px}

@media(max-width:760px){
  .ibe-candidate-intros-head,.ibe-employer-intros-head,.ibe-candidate-intro-top,.ibe-employer-intro-row{align-items:stretch;flex-direction:column}
  .ibe-intro-response-actions{flex-direction:column}
  .ibe-intro-response-actions form,.ibe-intro-response-actions .ibe-btn{width:100%}
  .ibe-intro-request-box{width:100%;max-width:none}
  .ibe-intro-status{width:100%;min-width:0}
}


/* ============================================================
   v0.4.3 — Connected Candidate Management
   ============================================================ */
.ibe-connected-candidates{border-top:4px solid #d65a19}
.ibe-employer-intros-head p{max-width:760px;margin:6px 0 0;color:#6f6f6f;font-size:12px;line-height:1.5}
.ibe-connected-grid{display:grid;gap:16px}
.ibe-connected-card{padding:22px;border:1px solid #dde2e6;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.035)}
.ibe-connected-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.ibe-connected-card-head h3{margin:8px 0 4px;font-size:24px}
.ibe-connected-card-head p{margin:0;color:#676767}
.ibe-connected-stage{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e9f0f7;color:#315b7d;font-size:10px;font-weight:900;text-transform:uppercase}
.ibe-connected-stage-contacted{background:#e7f3f6;color:#24677a}
.ibe-connected-stage-screening{background:#fff1d6;color:#805d00}
.ibe-connected-stage-interviewing{background:#efe8fa;color:#65418f}
.ibe-connected-stage-offer{background:#fff0e6;color:#9a4b19}
.ibe-connected-stage-hired{background:#e4f6e8;color:#28723a}
.ibe-connected-stage-closed{background:#eee;color:#666}
.ibe-connected-job{min-width:220px;padding:12px 14px;border-radius:8px;background:#f6f7f8}
.ibe-connected-job strong,.ibe-connected-job span{display:block}
.ibe-connected-job strong{margin-bottom:4px;color:#777;font-size:10px;text-transform:uppercase}
.ibe-connected-job span{font-size:12px;font-weight:800}
.ibe-connected-contact-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0;padding:16px 0;border-top:1px solid #eceeef;border-bottom:1px solid #eceeef}
.ibe-connected-contact-grid>div{min-width:0}
.ibe-connected-contact-grid strong{display:block;margin-bottom:4px;color:#777;font-size:10px;text-transform:uppercase}
.ibe-connected-contact-grid span,.ibe-connected-contact-grid a{display:block;font-size:12px;font-weight:700;overflow-wrap:anywhere}
.ibe-connected-manage-form{padding:17px;border-radius:9px;background:#fafafa}
.ibe-connected-manage-grid{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:16px}
.ibe-connected-manage-form .ibe-field{margin:0 0 14px}
.ibe-connected-manage-form label{display:block;margin-bottom:6px;font-size:12px;font-weight:900}
.ibe-connected-manage-form select,.ibe-connected-manage-form textarea{width:100%;padding:10px 11px;border:1px solid #cfd4da;border-radius:7px;background:#fff;font:inherit}
.ibe-connected-manage-form textarea{resize:vertical;line-height:1.45}
.ibe-connected-manage-form .ibe-field-help{display:block;margin-top:5px;color:#777;font-size:10px}
.ibe-connected-empty{padding:22px;border:1px dashed #ccd2d7;border-radius:9px;background:#fafafa;color:#707070;text-align:center}

@media(max-width:900px){
  .ibe-connected-contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
  .ibe-connected-card-head{flex-direction:column}
  .ibe-connected-job{width:100%;min-width:0}
  .ibe-connected-manage-grid{grid-template-columns:1fr}
  .ibe-connected-contact-grid{grid-template-columns:1fr}
}


/* ============================================================
   v0.4.4 — Saved Candidates
   ============================================================ */
.ibe-talent-card-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.ibe-save-candidate-form{margin:0}
.ibe-save-candidate-btn{padding:11px 14px;border:1px solid #d7dce0;border-radius:8px;background:#fff;color:#202020;font-size:12px;font-weight:900;cursor:pointer}
.ibe-save-candidate-btn:hover{background:#f7f7f7}
.ibe-save-candidate-btn.is-saved{border-color:#efc18f;background:#fff7ee;color:#a84a14}
.ibe-saved-candidates{border-top:4px solid #e7a15c}
.ibe-saved-candidate-list{display:grid;gap:8px}
.ibe-saved-candidate-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #e3e6e8;border-radius:9px;background:#fafafa}
.ibe-saved-candidate-row>div:first-child{min-width:0}
.ibe-saved-candidate-row strong,.ibe-saved-candidate-row span{display:block}
.ibe-saved-candidate-row strong{font-size:13px}
.ibe-saved-candidate-row span{margin-top:3px;color:#6d6d6d;font-size:11px}
@media(max-width:700px){
  .ibe-talent-card-actions,.ibe-saved-candidate-row{align-items:stretch;flex-direction:column}
  .ibe-save-candidate-btn{width:100%}
}


/* ============================================================
   v0.4.5 — Lightweight ATS applicant management
   ============================================================ */
.ibe-applicant-management{margin-top:18px;padding:18px;border:1px solid #e2e5e8;border-radius:10px;background:#fafafa}
.ibe-applicant-management-grid{display:grid;grid-template-columns:minmax(190px,.34fr) minmax(0,1fr);gap:16px;margin-bottom:14px}
.ibe-applicant-management label{display:block;font-size:12px;font-weight:900}
.ibe-applicant-management select,.ibe-applicant-management textarea{width:100%;margin-top:7px;padding:10px 11px;border:1px solid #cfd4da;border-radius:7px;background:#fff;font:inherit}
.ibe-applicant-management textarea{resize:vertical;line-height:1.45}
.ibe-applicant-management .ibe-field-help{display:block;margin-top:5px;color:#777;font-size:10px;font-weight:400;line-height:1.4}
@media(max-width:700px){
  .ibe-applicant-management-grid{grid-template-columns:1fr}
}


/* ============================================================
   v0.4.6 — Contact width + follow-up tracking
   ============================================================ */

/* Give contact information room to breathe. */
.ibe-connected-contact-grid {
    grid-template-columns:minmax(260px,2fr) repeat(4,minmax(110px,1fr))!important;
}
.ibe-connected-contact-grid>div:first-child {
    min-width:260px;
}
.ibe-connected-contact-grid>div:first-child a {
    white-space:nowrap;
    overflow-wrap:normal;
    word-break:normal;
}

/* Stack stage and follow-up cleanly beside the wider notes area. */
.ibe-connected-manage-grid {
    grid-template-columns:minmax(220px,.38fr) minmax(0,1fr)!important;
}
.ibe-connected-controls,
.ibe-applicant-controls {
    display:grid;
    gap:14px;
}
.ibe-connected-manage-form input[type="date"],
.ibe-applicant-management input[type="date"] {
    width:100%;
    margin-top:7px;
    padding:10px 11px;
    border:1px solid #cfd4da;
    border-radius:7px;
    background:#fff;
    font:inherit;
}

/* Applicant contact grid also gives email the largest share. */
.ibe-applicant-grid {
    grid-template-columns:minmax(260px,1.7fr) minmax(150px,1fr) minmax(120px,.8fr) minmax(150px,1fr)!important;
}
.ibe-applicant-grid>div:first-child a {
    white-space:nowrap;
    overflow-wrap:normal;
    word-break:normal;
}

@media(max-width:1000px){
    .ibe-connected-contact-grid {
        grid-template-columns:minmax(250px,1.5fr) repeat(2,minmax(120px,1fr))!important;
    }
}
@media(max-width:760px){
    .ibe-connected-contact-grid,
    .ibe-applicant-grid,
    .ibe-connected-manage-grid {
        grid-template-columns:1fr!important;
    }
    .ibe-connected-contact-grid>div:first-child {
        min-width:0;
    }
    .ibe-connected-contact-grid>div:first-child a,
    .ibe-applicant-grid>div:first-child a {
        white-space:normal;
        overflow-wrap:anywhere;
    }
}


/* ============================================================
   v0.4.7 — Candidate-to-Job Matching
   ============================================================ */
.ibe-action-match{border-color:#e8b184!important;background:#fff7f0!important;color:#a84712!important}
.ibe-match-page{max-width:1180px;margin:0 auto}
.ibe-match-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px}
.ibe-match-head h1{margin:4px 0 8px;font-size:42px;line-height:1.05}
.ibe-match-head p{max-width:760px;margin:0;color:#666;line-height:1.55}
.ibe-match-summary{display:flex;align-items:baseline;gap:10px;margin-bottom:18px;padding:15px 18px;border:1px solid #e1e4e7;border-radius:10px;background:#fafafa}
.ibe-match-summary strong{font-size:28px}
.ibe-match-summary span{color:#666}
.ibe-match-list{display:grid;gap:15px}
.ibe-match-card{display:grid;grid-template-columns:56px minmax(0,1fr);gap:0;border:1px solid #dce1e5;border-radius:12px;background:#fff;overflow:hidden}
.ibe-match-rank{display:flex;align-items:flex-start;justify-content:center;padding-top:25px;background:#fff4ea;color:#d85816;font-size:22px;font-weight:900}
.ibe-match-body{padding:22px}
.ibe-match-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.ibe-match-title-row h2{margin:6px 0 4px;font-size:24px}
.ibe-match-title-row p{margin:0;color:#666}
.ibe-match-privacy{display:inline-flex;padding:5px 8px;border-radius:999px;background:#f1f2f3;color:#555;font-size:10px;font-weight:900;text-transform:uppercase}
.ibe-match-score{min-width:100px;text-align:right}
.ibe-match-score strong,.ibe-match-score span{display:block}
.ibe-match-score strong{font-size:30px;line-height:1;color:#d85816}
.ibe-match-score span{margin-top:4px;color:#777;font-size:10px;font-weight:800;text-transform:uppercase}
.ibe-match-meter{height:7px;margin:17px 0;border-radius:999px;background:#eceeef;overflow:hidden}
.ibe-match-meter span{display:block;height:100%;border-radius:999px;background:#d85816}
.ibe-match-facts{display:flex;gap:8px;flex-wrap:wrap}
.ibe-match-facts span{padding:7px 9px;border:1px solid #e1e4e7;border-radius:999px;background:#fafafa;font-size:11px}
.ibe-match-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}
@media(max-width:700px){
  .ibe-match-head,.ibe-match-title-row{flex-direction:column}
  .ibe-match-card{grid-template-columns:42px minmax(0,1fr)}
  .ibe-match-body{padding:16px}
  .ibe-match-score{text-align:left}
  .ibe-match-head h1{font-size:32px}
}


/* ============================================================
   v0.4.8 — Recruiting action hierarchy
   ============================================================ */
.ibe-action-match{
    background:#f3a56f!important;
    border-color:#e58b4c!important;
    color:#542000!important;
    font-weight:800!important;
}
.ibe-action-match:hover{
    background:#ec9659!important;
    border-color:#dd7e3b!important;
}
a.ibe-action[href*="ibe_view=applicants"]{
    background:#fff3e8;
    border-color:#edc09f;
    color:#7c330d;
    font-weight:700;
}
.ibe-match-actions .ibe-btn,
.ibe-match-actions button{
    font-weight:800;
}

/* v0.5.0 structured role matching */
.ibe-field-help + .ibe-checkbox-grid,
.ibe-field-help + .ibe-checkbox-set{margin-top:12px;}


/* ============================================================
   v0.5.1 — Candidate Dashboard
   ============================================================ */
.ibe-candidate-dashboard{max-width:1180px;margin:32px auto 60px;padding:0 18px}
.ibe-candidate-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}
.ibe-candidate-dashboard-head h1{margin:4px 0 8px;font-size:48px;line-height:1.05}
.ibe-candidate-dashboard-head p{max-width:820px;margin:0;color:#666;line-height:1.55}
.ibe-candidate-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:26px}
.ibe-candidate-stats>div{padding:20px;border:1px solid #dde2e6;border-radius:12px;background:#fff}
.ibe-candidate-stats span,.ibe-candidate-stats strong{display:block}
.ibe-candidate-stats span{color:#777;font-size:11px;font-weight:900;text-transform:uppercase}
.ibe-candidate-stats strong{margin-top:8px;font-size:30px}
.ibe-candidate-dash-section{margin-bottom:24px;padding:24px;border:1px solid #dde2e6;border-radius:14px;background:#fff}
.ibe-candidate-dash-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}
.ibe-candidate-dash-section-head h2{margin:3px 0 0;font-size:28px}
.ibe-candidate-dash-section-head p{margin:0;color:#777;font-size:12px}
.ibe-candidate-job-matches{display:grid;gap:14px}
.ibe-candidate-job-match{padding:20px;border:1px solid #e1e4e7;border-radius:11px;background:#fafafa}
.ibe-candidate-job-match-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.ibe-candidate-job-match h3{margin:8px 0 4px;font-size:23px}
.ibe-candidate-job-match p{margin:0;color:#666}
.ibe-candidate-match-score{display:inline-flex;padding:6px 9px;border-radius:999px;background:#fff0e5;color:#b94d0e;font-size:11px;font-weight:900}
.ibe-candidate-history-list{display:grid;gap:8px}
.ibe-candidate-history-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border:1px solid #e4e6e8;border-radius:9px;background:#fafafa}
.ibe-candidate-history-list article>div strong,.ibe-candidate-history-list article>div span{display:block}
.ibe-candidate-history-list article>div span{margin-top:3px;color:#707070;font-size:11px}
.ibe-candidate-history-status{padding:6px 9px;border-radius:999px;background:#edf0f2;color:#555;font-size:10px;font-weight:900;text-transform:uppercase}
.ibe-candidate-history-accepted{background:#e5f5e9;color:#27713a}
.ibe-candidate-history-pending{background:#fff0cf;color:#7c5b00}
.ibe-candidate-history-declined{background:#eeeeee;color:#666}
.ibe-candidate-dashboard-link{display:flex;justify-content:flex-end;margin:0 0 18px}
@media(max-width:800px){
  .ibe-candidate-stats{grid-template-columns:1fr 1fr}
  .ibe-candidate-dashboard-head,.ibe-candidate-dash-section-head,.ibe-candidate-job-match-top{flex-direction:column}
}
@media(max-width:520px){
  .ibe-candidate-stats{grid-template-columns:1fr}
  .ibe-candidate-history-list article{align-items:flex-start;flex-direction:column}
}

/* v0.5.2 applicant archive/delete management */
.ibe-applicant-header-actions,.ibe-applicant-record-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ibe-applicant-record-actions{margin-top:14px;padding-top:14px;border-top:1px solid #eceff1}
.ibe-applicant-record-actions form{margin:0}
.ibe-btn-danger{background:#fff;border:1px solid #d7a3a3;color:#a51f1f}
.ibe-btn-danger:hover{background:#fff5f5;border-color:#b84a4a;color:#861616}
@media(max-width:700px){.ibe-applicant-header-actions{align-items:stretch;flex-direction:column}}


/* ============================================================
   v0.5.3 — Candidate match application actions
   ============================================================ */
.ibe-candidate-job-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:9px;
    flex-wrap:wrap;
}
.ibe-btn-applied{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#e7f5ea;
    border:1px solid #b8dfc0;
    color:#256c36;
    cursor:default;
    font-weight:900;
}
@media(max-width:700px){
    .ibe-candidate-job-actions{
        width:100%;
        justify-content:flex-start;
    }
}

/* v0.5.4 */
.ibe-candidate-application-summary{display:flex;flex-direction:column;gap:4px}


/* ============================================================
   v0.5.5 — Candidate application status colors
   ============================================================ */
.ibe-application-status-received{
    background:#eaf3fb;
    border:1px solid #bfd7ea;
    color:#245d86;
}
.ibe-application-status-review{
    background:#fff2d9;
    border:1px solid #efd19b;
    color:#7a5700;
}
.ibe-application-status-interview{
    background:#f1e9fb;
    border:1px solid #d5c1ee;
    color:#67408c;
}
.ibe-application-status-offer{
    background:#fff0e6;
    border:1px solid #efc09f;
    color:#9b4b18;
}
.ibe-application-status-hired{
    background:#e6f5e9;
    border:1px solid #baddc1;
    color:#276d38;
}
.ibe-application-status-not-selected{
    background:#eeeeee;
    border:1px solid #d5d5d5;
    color:#646464;
}


/* ============================================================
   v0.5.6 — Employer action hierarchy
   ============================================================ */
.ibe-applicant-management .ibe-btn-secondary[type="submit"]{
    background:#f3a56f;
    border-color:#e58b4c;
    color:#542000;
    font-weight:900;
}
.ibe-applicant-management .ibe-btn-secondary[type="submit"]:hover{
    background:#ec9659;
    border-color:#dd7e3b;
    color:#542000;
}

/* ============================================================
   v0.5.7 — Recruiting follow-ups dashboard
   ============================================================ */
.ibe-followups-panel{margin:0 0 24px;padding:22px;border:1px solid #dfe3e6;border-radius:14px;background:#fff}
.ibe-followups-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}
.ibe-followups-head h2{margin:3px 0 0;font-size:28px}
.ibe-followups-head>span{color:#777;font-size:12px;font-weight:800}
.ibe-followups-list{display:grid;gap:8px}
.ibe-followup-row{display:grid;grid-template-columns:110px minmax(0,1fr) 150px;align-items:center;gap:16px;padding:13px 14px;border:1px solid #e4e7e9;border-radius:9px;background:#fafafa;text-decoration:none!important;color:inherit!important}
.ibe-followup-row:hover{background:#f6f6f6}
.ibe-followup-date strong,.ibe-followup-date span,.ibe-followup-main strong,.ibe-followup-main span{display:block}
.ibe-followup-date strong{font-size:13px}
.ibe-followup-date span,.ibe-followup-main span{margin-top:3px;color:#727272;font-size:11px}
.ibe-followup-main strong{font-size:14px}
.ibe-followup-status{justify-self:end;padding:6px 9px;border-radius:999px;background:#edf0f2;color:#555;font-size:10px;font-weight:900;text-transform:uppercase}
.ibe-followup-overdue{border-left:4px solid #b42318}
.ibe-followup-overdue .ibe-followup-date strong{color:#a51f1f}
.ibe-followup-today{border-left:4px solid #d85816}
.ibe-followup-today .ibe-followup-date strong{color:#b84b0f}
.ibe-followup-future{border-left:4px solid #c8ccd0}
@media(max-width:700px){
  .ibe-followup-row{grid-template-columns:1fr}
  .ibe-followup-status{justify-self:start}
  .ibe-followups-head{flex-direction:column}
}


/* ============================================================
   v0.5.8 — Recruiting pipeline summary
   ============================================================ */
.ibe-pipeline-panel{
    margin:0 0 24px;
    padding:22px;
    border:1px solid #dfe3e6;
    border-radius:14px;
    background:#fff;
}
.ibe-pipeline-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:16px;
}
.ibe-pipeline-head h2{
    margin:3px 0 0;
    font-size:28px;
}
.ibe-pipeline-head>span{
    color:#777;
    font-size:12px;
    font-weight:800;
}
.ibe-pipeline-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:10px;
}
.ibe-pipeline-stage{
    min-height:94px;
    padding:15px;
    border:1px solid #e2e5e8;
    border-radius:10px;
    background:#fafafa;
}
.ibe-pipeline-stage span,
.ibe-pipeline-stage strong{
    display:block;
}
.ibe-pipeline-stage span{
    min-height:30px;
    color:#666;
    font-size:10px;
    font-weight:900;
    line-height:1.35;
    text-transform:uppercase;
}
.ibe-pipeline-stage strong{
    margin-top:7px;
    font-size:28px;
    line-height:1;
}
.ibe-pipeline-new{border-top:4px solid #83a9c7}
.ibe-pipeline-screening{border-top:4px solid #d9a33c}
.ibe-pipeline-interviewing{border-top:4px solid #9d7ac4}
.ibe-pipeline-offer{border-top:4px solid #df7b35}
.ibe-pipeline-hired{border-top:4px solid #5d9a69}
.ibe-pipeline-not-selected{border-top:4px solid #9b9b9b}
@media(max-width:1000px){
    .ibe-pipeline-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:600px){
    .ibe-pipeline-grid{grid-template-columns:1fr 1fr}
    .ibe-pipeline-head{flex-direction:column}
}

/* ============================================================
   v0.5.9 — Clickable pipeline navigation
   ============================================================ */
a.ibe-pipeline-stage{
    display:block;
    color:inherit!important;
    text-decoration:none!important;
    transition:box-shadow .15s ease,border-color .15s ease;
}
a.ibe-pipeline-stage:hover{
    box-shadow:0 5px 16px rgba(0,0,0,.07);
    border-color:#cfd4d8;
}
.ibe-pipeline-detail-page{max-width:1180px;margin:0 auto}
.ibe-pipeline-detail-list{display:grid;gap:10px}
.ibe-pipeline-detail-row{
    display:grid;
    grid-template-columns:140px minmax(180px,1.1fr) minmax(220px,1.4fr) 130px;
    align-items:center;
    gap:16px;
    padding:16px 18px;
    border:1px solid #e0e4e7;
    border-radius:10px;
    background:#fff;
    color:inherit!important;
    text-decoration:none!important;
}
.ibe-pipeline-detail-row:hover{background:#fafafa}
.ibe-pipeline-detail-source{
    color:#d85816;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
}
.ibe-pipeline-detail-person strong,
.ibe-pipeline-detail-person span,
.ibe-pipeline-detail-job strong,
.ibe-pipeline-detail-job span{
    display:block;
}
.ibe-pipeline-detail-person span,
.ibe-pipeline-detail-job span{
    margin-top:4px;
    color:#737373;
    font-size:11px;
}
.ibe-pipeline-detail-status{
    justify-self:end;
    padding:6px 9px;
    border-radius:999px;
    background:#f0ebf8;
    color:#65428b;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
}
@media(max-width:760px){
    .ibe-pipeline-detail-row{grid-template-columns:1fr}
    .ibe-pipeline-detail-status{justify-self:start}
}

/* ============================================================
   v0.6.0 — Recruiting activity timeline
   ============================================================ */
.ibe-recruiting-history{margin-top:18px;padding:18px;border:1px solid #e3e6e8;border-radius:10px;background:#fff}
.ibe-recruiting-history-head h3{margin:3px 0 14px;font-size:20px}
.ibe-recruiting-timeline{display:grid;gap:0}
.ibe-recruiting-timeline-event{position:relative;display:grid;grid-template-columns:18px 1fr;gap:10px;padding:0 0 16px}
.ibe-recruiting-timeline-event:last-child{padding-bottom:0}
.ibe-recruiting-timeline-event:before{content:"";position:absolute;left:6px;top:12px;bottom:-2px;width:2px;background:#e1e4e6}
.ibe-recruiting-timeline-event:last-child:before{display:none}
.ibe-recruiting-timeline-dot{position:relative;z-index:1;width:14px;height:14px;margin-top:2px;border:3px solid #fff;border-radius:50%;background:#d85816;box-shadow:0 0 0 1px #e4a57d}
.ibe-recruiting-timeline-event strong,.ibe-recruiting-timeline-event span{display:block}
.ibe-recruiting-timeline-event strong{font-size:13px}
.ibe-recruiting-timeline-event span{margin-top:3px;color:#777;font-size:11px}


/* ============================================================
   v0.6.1 — Direct connected-candidate navigation
   ============================================================ */
.ibe-connected-anchor{
    scroll-margin-top:110px;
}
.ibe-connected-anchor:target{
    box-shadow:0 0 0 2px rgba(216,88,22,.22),0 8px 24px rgba(0,0,0,.06);
}

/* ============================================================
   v0.6.2 — Due-today and overdue recruiting follow-ups
   ============================================================ */
.ibe-followup-overdue{
    background:#fff8f7;
    border-color:#efc1bc;
}
.ibe-followup-overdue .ibe-followup-date strong{
    color:#a51f1f;
    font-weight:900;
}
.ibe-followup-today{
    background:#fff9f2;
    border-color:#efc7a8;
}
.ibe-followup-today .ibe-followup-date strong{
    color:#b84b0f;
    font-weight:900;
}


/* ============================================================
   v0.6.3 — Connected Candidates dashboard return
   ============================================================ */
.ibe-connected-head-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    flex-wrap:wrap;
}
.ibe-connected-head-actions>span{
    color:#666;
    font-size:12px;
    font-weight:800;
}
@media(max-width:700px){
    .ibe-connected-head-actions{
        justify-content:flex-start;
    }
}


/* ============================================================
   v0.6.5 — Recruiting follow-up urgency colors
   Green = future, Orange = tomorrow/today, Red = overdue
   ============================================================ */
.ibe-followup-future{
    background:#f5fbf6;
    border-color:#c6dfcb;
    border-left-color:#5d9a69;
}
.ibe-followup-future .ibe-followup-date strong{
    color:#2e6f3c;
    font-weight:900;
}

.ibe-followup-tomorrow{
    background:#fff9f2;
    border-color:#efc7a8;
    border-left:4px solid #d85816;
}
.ibe-followup-tomorrow .ibe-followup-date strong{
    color:#b84b0f;
    font-weight:900;
}

.ibe-followup-today{
    background:#fff6eb;
    border-color:#e8b88e;
    border-left:4px solid #c94e0f;
}
.ibe-followup-today .ibe-followup-date strong{
    color:#a8410d;
    font-weight:900;
}

.ibe-followup-overdue{
    background:#fff8f7;
    border-color:#efc1bc;
    border-left:4px solid #b42318;
}
.ibe-followup-overdue .ibe-followup-date strong{
    color:#a51f1f;
    font-weight:900;
}


/* ============================================================
   v0.6.6 — Force visible follow-up urgency colors
   ============================================================ */
a.ibe-followup-row.ibe-followup-future{
    background:#eef8f0 !important;
    border-color:#b7d8be !important;
    border-left:5px solid #4f965e !important;
}
a.ibe-followup-row.ibe-followup-future .ibe-followup-date strong{
    color:#256b35 !important;
}

a.ibe-followup-row.ibe-followup-tomorrow{
    background:#fff3e6 !important;
    border-color:#edc29f !important;
    border-left:5px solid #d85816 !important;
}
a.ibe-followup-row.ibe-followup-tomorrow .ibe-followup-date strong{
    color:#ad430d !important;
}

a.ibe-followup-row.ibe-followup-today{
    background:#ffead8 !important;
    border-color:#e7ad80 !important;
    border-left:5px solid #c94e0f !important;
}
a.ibe-followup-row.ibe-followup-today .ibe-followup-date strong{
    color:#94390b !important;
}

a.ibe-followup-row.ibe-followup-overdue{
    background:#fdeaea !important;
    border-color:#e6b2ad !important;
    border-left:5px solid #b42318 !important;
}
a.ibe-followup-row.ibe-followup-overdue .ibe-followup-date strong{
    color:#941d16 !important;
}

a.ibe-followup-row.ibe-followup-future:hover{background:#e7f4ea !important;}
a.ibe-followup-row.ibe-followup-tomorrow:hover{background:#ffecd9 !important;}
a.ibe-followup-row.ibe-followup-today:hover{background:#ffe3cc !important;}
a.ibe-followup-row.ibe-followup-overdue:hover{background:#f9dddd !important;}

/* ============================================================
   v0.6.7 — Attention Needed daily recruiting worklist
   ============================================================ */
.ibe-attention-panel{margin:28px 0 24px;padding:22px;border:1px solid #dde2e6;border-radius:14px;background:#fff}
.ibe-attention-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:18px}
.ibe-attention-head h2{margin:4px 0 0;font-size:28px}
.ibe-attention-head>span{color:#707070;font-size:12px;font-weight:800}
.ibe-attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
a.ibe-attention-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:82px;padding:16px 18px;border:1px solid #dde2e6;border-left:5px solid #a7adb2;border-radius:10px;background:#fafafa;color:#111;text-decoration:none!important}
a.ibe-attention-card span{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}
a.ibe-attention-card strong{font-size:30px;line-height:1}
a.ibe-attention-overdue{background:#fdeaea;border-color:#e6b2ad;border-left-color:#b42318}
a.ibe-attention-overdue strong{color:#a51f1f}
a.ibe-attention-today{background:#fff3e6;border-color:#edc29f;border-left-color:#d85816}
a.ibe-attention-today strong{color:#b84b0f}
a.ibe-attention-new{background:#f3f7fb;border-color:#c8d7e5;border-left-color:#76a0c5}
a.ibe-attention-new strong{color:#315f86}
#ibe-recruiting-followups{scroll-margin-top:110px}
@media(max-width:760px){.ibe-attention-grid{grid-template-columns:1fr}.ibe-attention-head{display:block}.ibe-attention-head>span{display:block;margin-top:6px}}


/* ============================================================
   v0.6.8 — Attention Needed refinement
   ============================================================ */
.ibe-attention-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
}
a.ibe-attention-pending{
    background:#f7f1fb;
    border-color:#d9c7e6;
    border-left-color:#9a75bc;
}
a.ibe-attention-pending strong{
    color:#6d438d;
}
#ibe-open-introduction-requests{
    scroll-margin-top:110px;
}
.ibe-attention-detail-page{
    max-width:1180px;
    margin:0 auto;
}
.ibe-attention-detail-list{
    display:grid;
    gap:10px;
}
.ibe-attention-detail-row{
    display:grid;
    grid-template-columns:minmax(200px,1fr) minmax(260px,1.3fr) 90px;
    align-items:center;
    gap:18px;
    padding:16px 18px;
    border:1px solid #e0e4e7;
    border-radius:10px;
    background:#fff;
    color:inherit!important;
    text-decoration:none!important;
}
.ibe-attention-detail-row:hover{
    background:#fafafa;
}
.ibe-attention-detail-row strong,
.ibe-attention-detail-row span{
    display:block;
}
.ibe-attention-detail-row div>span{
    margin-top:4px;
    color:#737373;
    font-size:11px;
}
.ibe-attention-detail-chip{
    justify-self:end;
    padding:6px 9px;
    border-radius:999px;
    background:#eaf3fb;
    color:#245d86;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
}
@media(max-width:1000px){
    .ibe-attention-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
    .ibe-attention-grid{grid-template-columns:1fr}
    .ibe-attention-detail-row{grid-template-columns:1fr}
    .ibe-attention-detail-chip{justify-self:start}
}


/* ============================================================
   v0.6.9 — Stalled candidate aging
   ============================================================ */
.ibe-attention-grid{
    grid-template-columns:repeat(5,minmax(0,1fr));
}
a.ibe-attention-stalled{
    background:#fff8e8;
    border-color:#e8d3a0;
    border-left-color:#b88117;
}
a.ibe-attention-stalled strong{
    color:#8a5f0b;
}
.ibe-stalled-list{
    display:grid;
    gap:10px;
}
.ibe-stalled-row{
    display:grid;
    grid-template-columns:130px minmax(180px,1fr) minmax(220px,1.3fr) 100px;
    align-items:center;
    gap:16px;
    padding:16px 18px;
    border:1px solid #e0e4e7;
    border-radius:10px;
    background:#fff;
    color:inherit!important;
    text-decoration:none!important;
}
.ibe-stalled-row:hover{
    background:#fffaf0;
}
.ibe-stalled-source{
    color:#b88117;
    font-size:10px;
    font-weight:900;
    text-transform:uppercase;
}
.ibe-stalled-row strong,
.ibe-stalled-row span{
    display:block;
}
.ibe-stalled-row div>span{
    margin-top:4px;
    color:#737373;
    font-size:11px;
}
.ibe-stalled-days{
    justify-self:end;
    padding:7px 10px;
    border-radius:999px;
    background:#fff0c9;
    color:#80570a;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}
@media(max-width:1100px){
    .ibe-attention-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
    .ibe-attention-grid{grid-template-columns:1fr}
    .ibe-stalled-row{grid-template-columns:1fr}
    .ibe-stalled-days{justify-self:start}
}


/* ============================================================
   v0.7.0 — Private connected-candidate messaging
   ============================================================ */
.ibe-recruiting-messages{
    margin-top:18px;
    padding:18px;
    border:1px solid #e1e5e8;
    border-radius:11px;
    background:#fff;
    scroll-margin-top:110px;
}
.ibe-recruiting-messages-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    margin-bottom:14px;
}
.ibe-recruiting-messages-head h3{
    margin:3px 0 0;
    font-size:20px;
}
.ibe-recruiting-messages-head>span{
    color:#777;
    font-size:10px;
    font-weight:800;
    text-transform:uppercase;
}
.ibe-message-thread{
    display:grid;
    gap:9px;
    margin-bottom:14px;
}
.ibe-message-bubble{
    max-width:82%;
    padding:11px 13px;
    border:1px solid #e2e5e7;
    border-radius:10px;
    background:#f7f7f7;
}
.ibe-message-mine{
    justify-self:end;
    background:#fff1e8;
    border-color:#efc7aa;
}
.ibe-message-theirs{
    justify-self:start;
}
.ibe-message-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:5px;
}
.ibe-message-meta strong{
    font-size:11px;
}
.ibe-message-meta span{
    color:#858585;
    font-size:9px;
}
.ibe-message-bubble p{
    margin:0;
    font-size:13px;
    line-height:1.5;
}
.ibe-message-empty{
    margin-bottom:14px;
    padding:12px;
    border:1px dashed #d9dde0;
    border-radius:8px;
    color:#777;
    font-size:12px;
}
.ibe-message-form label,
.ibe-message-form label>span{
    display:block;
}
.ibe-message-form label>span{
    margin-bottom:6px;
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}
.ibe-message-form textarea{
    width:100%;
    box-sizing:border-box;
    margin-bottom:10px;
}
.ibe-message-sent{
    margin-bottom:12px;
    padding:9px 11px;
    border:1px solid #baddc1;
    border-radius:8px;
    background:#eaf6ec;
    color:#276d38;
    font-size:12px;
    font-weight:800;
}
.ibe-candidate-history-list article.ibe-candidate-intro-summary{
    display:block;
}
.ibe-candidate-intro-summary-top{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
@media(max-width:700px){
    .ibe-message-bubble{max-width:100%}
    .ibe-recruiting-messages-head,.ibe-candidate-intro-summary-top{flex-direction:column}
}


/* ============================================================
   v0.7.1 — unread recruiting message alerts
   ============================================================ */
.ibe-message-theirs{
    background:#eaf4fb !important;
    border-color:#bfd9ea !important;
}
.ibe-message-theirs .ibe-message-meta strong{
    color:#245d86;
}
.ibe-message-new{
    display:inline-block;
    margin-left:7px;
    padding:2px 5px;
    border-radius:999px;
    background:#d85816;
    color:#fff;
    font-size:8px;
    font-style:normal;
    font-weight:900;
    vertical-align:middle;
}
a.ibe-attention-messages{
    background:#eef7ff;
    border-color:#bdd8eb;
    border-left-color:#4386b4;
}
a.ibe-attention-messages strong{
    color:#245d86;
}
.ibe-attention-grid{
    grid-template-columns:repeat(6,minmax(0,1fr));
}
#ibe-connected-candidates,
#ibe-candidate-connections{
    scroll-margin-top:110px;
}
.ibe-candidate-stats{
    grid-template-columns:repeat(5,minmax(0,1fr));
}
.ibe-candidate-message-stat{
    background:#eef7ff !important;
    border-color:#bdd8eb !important;
}
.ibe-candidate-message-stat strong{
    color:#245d86;
}
.ibe-candidate-message-alert{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin:0 0 24px;
    padding:15px 18px;
    border:1px solid #9fc9e4;
    border-left:5px solid #4386b4;
    border-radius:10px;
    background:#eaf4fb;
    color:#174e73 !important;
    text-decoration:none !important;
}
.ibe-candidate-message-alert strong{
    font-size:15px;
}
.ibe-candidate-message-alert span{
    font-size:12px;
}
@media(max-width:1180px){
    .ibe-attention-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:950px){
    .ibe-candidate-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
    .ibe-attention-grid,.ibe-candidate-stats{grid-template-columns:1fr}
    .ibe-candidate-message-alert{align-items:flex-start;flex-direction:column}
}


/* ============================================================
   v0.8.0 — Candidate Activity Center
   ============================================================ */
.ibe-candidate-activity-center{
    margin:0 0 24px;
    padding:20px;
    border:1px solid #dfe4e8;
    border-radius:14px;
    background:#fff;
}
.ibe-candidate-activity-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:15px;
}
.ibe-candidate-activity-head h2{
    margin:3px 0 0;
    font-size:26px;
}
.ibe-candidate-activity-head>span{
    color:#777;
    font-size:11px;
    font-weight:800;
}
.ibe-candidate-activity-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.ibe-candidate-activity-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    min-height:72px;
    padding:14px 16px;
    border:1px solid #dfe4e8;
    border-left:5px solid #8da7ba;
    border-radius:9px;
    background:#fafafa;
    color:#111!important;
    text-decoration:none!important;
}
.ibe-candidate-activity-card span{
    font-size:11px;
    font-weight:900;
    text-transform:uppercase;
}
.ibe-candidate-activity-card strong{
    font-size:28px;
    line-height:1;
}
.ibe-candidate-activity-message{
    background:#eef7ff;
    border-color:#bdd8eb;
    border-left-color:#4386b4;
}
.ibe-candidate-activity-message strong{color:#245d86}
.ibe-candidate-activity-intro{
    background:#f7f1fb;
    border-color:#d9c7e6;
    border-left-color:#9a75bc;
}
.ibe-candidate-activity-intro strong{color:#6d438d}
.ibe-candidate-activity-application{
    background:#fff6ea;
    border-color:#edcfaa;
    border-left-color:#d98b27;
}
.ibe-candidate-activity-application strong{color:#a9630e}
.ibe-candidate-recent-activity{
    display:grid;
    gap:7px;
    margin-top:13px;
}
.ibe-candidate-recent-activity a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:10px 12px;
    border:1px solid #e5e8ea;
    border-radius:8px;
    background:#fbfbfb;
    color:inherit!important;
    text-decoration:none!important;
}
.ibe-candidate-recent-activity strong,
.ibe-candidate-recent-activity span{
    display:block;
}
.ibe-candidate-recent-activity span{
    margin-top:3px;
    color:#737373;
    font-size:11px;
}
.ibe-candidate-recent-activity time{
    color:#858585;
    font-size:10px;
    white-space:nowrap;
}
#ibe-candidate-applications{
    scroll-margin-top:110px;
}
@media(max-width:760px){
    .ibe-candidate-activity-grid{grid-template-columns:1fr}
    .ibe-candidate-activity-head,
    .ibe-candidate-recent-activity a{align-items:flex-start;flex-direction:column}
}


/* ============================================================
   v0.8.1 — Step 15 Candidate Next Steps
   ============================================================ */
.ibe-candidate-next-steps{
    margin:0 0 24px;
    padding:20px;
    border:1px solid #dfe4e8;
    border-radius:14px;
    background:#fff;
}
.ibe-candidate-next-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:15px;
}
.ibe-candidate-next-head h2{
    margin:3px 0 0;
    font-size:26px;
}
.ibe-candidate-next-head>span{
    color:#777;
    font-size:11px;
    font-weight:800;
}
.ibe-candidate-next-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.ibe-candidate-next-card{
    display:flex;
    min-height:135px;
    padding:17px;
    flex-direction:column;
    border:1px solid #dfe4e8;
    border-top:4px solid #d85816;
    border-radius:10px;
    background:#fafafa;
    color:#111!important;
    text-decoration:none!important;
}
.ibe-candidate-next-card strong{
    font-size:15px;
}
.ibe-candidate-next-card span{
    margin-top:8px;
    color:#666;
    font-size:12px;
    line-height:1.45;
}
.ibe-candidate-next-card em{
    margin-top:auto;
    padding-top:15px;
    color:#c94d0f;
    font-size:11px;
    font-style:normal;
    font-weight:900;
}
.ibe-candidate-next-card:hover{
    border-color:#efb28f;
    background:#fffaf7;
}
.ibe-candidate-next-card.ibe-next-priority{
    background:#eef7ff;
    border-color:#bdd8eb;
    border-top-color:#4386b4;
}
.ibe-candidate-next-card.ibe-next-priority em{
    color:#245d86;
}
#ibe-best-job-matches{
    scroll-margin-top:110px;
}
@media(max-width:760px){
    .ibe-candidate-next-grid{grid-template-columns:1fr}
    .ibe-candidate-next-head{align-items:flex-start;flex-direction:column}
}

/* v0.9.0 — Employer Recruiting Next Steps */
.ibe-employer-next-steps{margin-bottom:24px;padding:20px!important}
.ibe-employer-next-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:15px}
.ibe-employer-next-head h2{margin:3px 0 0;font-size:28px}
.ibe-employer-next-head>span{color:#777;font-size:11px;font-weight:800}
.ibe-employer-next-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.ibe-employer-next-card{display:flex;min-height:135px;padding:17px;flex-direction:column;border:1px solid #dfe4e8;border-top:4px solid #d85816;border-radius:10px;background:#fafafa;color:#111!important;text-decoration:none!important}
.ibe-employer-next-card strong{font-size:15px}.ibe-employer-next-card span{margin-top:8px;color:#666;font-size:12px;line-height:1.45}
.ibe-employer-next-card em{margin-top:auto;padding-top:15px;color:#c94d0f;font-size:11px;font-style:normal;font-weight:900}
.ibe-employer-next-card:hover{border-color:#efb28f;background:#fffaf7}
.ibe-employer-next-card.ibe-employer-next-priority{background:#fff0ef;border-color:#efb7b2;border-top-color:#c92a22}
.ibe-employer-next-card.ibe-employer-next-priority em{color:#a91d17}
#ibe-job-listings{scroll-margin-top:110px}
@media(max-width:760px){.ibe-employer-next-grid{grid-template-columns:1fr}.ibe-employer-next-head{align-items:flex-start;flex-direction:column}}


/* ============================================================
   v1.0.0-rc1 — launch hardening
   ============================================================ */
.ibe-security-note{
    padding:10px 12px;
    border:1px solid #d7e3d9;
    border-radius:8px;
    background:#f4faf5;
    color:#315f39;
    font-size:11px;
}


/* ============================================================
   v1.0.0-rc2 — dashboard navigation + return paths
   ============================================================ */
a.ibe-stat,
.ibe-candidate-stats>a{
    color:inherit!important;
    text-decoration:none!important;
}
a.ibe-stat-link,
.ibe-candidate-stats>a{
    cursor:pointer;
}
a.ibe-stat-link:hover,
.ibe-candidate-stats>a:hover{
    border-color:#e7ae8b;
    background:#fffaf7;
}
.ibe-candidate-stats>a{
    display:block;
    padding:22px;
    border:1px solid #dfe4e8;
    border-radius:12px;
    background:#fff;
}
.ibe-candidate-stats>a span,
.ibe-candidate-stats>a strong{
    display:block;
}
.ibe-candidate-stats>a strong{
    margin-top:12px;
    font-size:32px;
}
.ibe-candidate-stats>a.ibe-candidate-message-stat{
    background:#eef7ff!important;
    border-color:#bdd8eb!important;
}
.ibe-candidate-hero-with-action,
.ibe-talent-hero-with-action,
.ibe-form-header-with-action{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
}
.ibe-candidate-hero-with-action>div,
.ibe-talent-hero-with-action>div,
.ibe-form-header-with-action>div{
    min-width:0;
}
#ibe-candidate-introduction-requests,
#ibe-job-listings{
    scroll-margin-top:110px;
}
.ibe-all-applicants-list{
    display:grid;
    gap:10px;
}
.ibe-all-applicants-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:18px;
    border:1px solid #dfe4e8;
    border-radius:10px;
    background:#fff;
    color:inherit!important;
    text-decoration:none!important;
}
.ibe-all-applicants-row:hover{
    border-color:#efb28f;
    background:#fffaf7;
}
.ibe-all-applicants-row span{
    display:block;
    margin-top:4px;
    color:#777;
    font-size:11px;
}
.ibe-all-applicants-count{
    text-align:right;
}
.ibe-all-applicants-count strong{
    display:block;
    font-size:28px;
}
@media(max-width:760px){
    .ibe-candidate-hero-with-action,
    .ibe-talent-hero-with-action,
    .ibe-form-header-with-action,
    .ibe-all-applicants-row{
        align-items:flex-start;
        flex-direction:column;
    }
    .ibe-all-applicants-count{
        text-align:left;
    }
}

/* v1.0.0 production release checkpoint */

/* v1.2.0 — Candidate membership access */
.ibe-candidate-membership-card{max-width:760px;margin:30px auto;text-align:center}
.ibe-candidate-membership-card .ibe-btn{margin:8px 5px 0}
.ibe-candidate-apply-gate .ibe-access-card{margin:20px 0 0;box-shadow:none}
.ibe-candidate-profile-gate{text-align:center}


/* ============================================================
   v1.3.0 — Public Electrical Construction Jobs Browser
   ============================================================ */
.ibe-jobs-browser{max-width:1240px;margin:0 auto;padding:28px 20px 70px;color:#111}
.ibe-jobs-hero{text-align:center;padding:48px 20px 38px}
.ibe-jobs-hero h1{margin:6px auto 14px;font-size:clamp(38px,5vw,62px);line-height:1.04;letter-spacing:-.035em}
.ibe-jobs-hero p{max-width:860px;margin:0 auto 24px;color:#666;font-size:18px;line-height:1.6}
.ibe-jobs-hero-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
.ibe-jobs-search-panel{margin-bottom:30px;padding:22px;border:1px solid #dde3e9;border-radius:16px;background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.04)}
.ibe-jobs-search-main{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:14px}
.ibe-jobs-filter-row{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:12px;align-items:end}
.ibe-job-filter label{display:block;margin-bottom:7px;font-size:11px;font-weight:800;color:#555;text-transform:uppercase;letter-spacing:.04em}
.ibe-job-filter input,.ibe-job-filter select{width:100%;min-height:48px;padding:10px 12px;border:1px solid #cfd6dd;border-radius:8px;background:#fff;font:inherit;color:#111}
.ibe-jobs-filter-actions{display:flex;align-items:center;gap:10px;min-height:48px}
.ibe-jobs-clear{font-size:12px;font-weight:800;color:#b9470b!important;text-decoration:none!important}
.ibe-jobs-results-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 0 18px}
.ibe-jobs-results-head h2{margin:3px 0 0;font-size:30px}
.ibe-jobs-sort-note{color:#777;font-size:12px;font-weight:700}
.ibe-jobs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ibe-public-job-card{display:flex;flex-direction:column;min-height:330px;padding:24px;border:1px solid #dde3e9;border-radius:14px;background:#fff}
.ibe-public-job-card:hover{border-color:#efb28f;box-shadow:0 10px 28px rgba(0,0,0,.05)}
.ibe-public-job-card-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.ibe-public-job-card h3{margin:10px 0 5px;font-size:24px;line-height:1.15}
.ibe-public-job-card h3 a{color:#111!important;text-decoration:none!important}
.ibe-job-category-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#fff1e8;color:#c44a0c;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.ibe-job-company{color:#555;font-size:13px;font-weight:700}
.ibe-job-posted{white-space:nowrap;color:#888;font-size:10px;font-weight:700}
.ibe-job-meta-row{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 10px}
.ibe-job-meta-row span{padding:6px 9px;border-radius:7px;background:#f4f6f8;color:#555;font-size:11px;font-weight:700}
.ibe-job-salary{margin-bottom:10px;color:#2e7b45;font-size:14px;font-weight:900}
.ibe-job-excerpt{margin:0 0 20px;color:#666;font-size:13px;line-height:1.55}
.ibe-job-card-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:auto}
.ibe-jobs-pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin:30px 0 0}
.ibe-jobs-pagination a{font-weight:800;color:#c44a0c!important;text-decoration:none!important}
.ibe-jobs-pagination span{color:#666;font-size:12px;font-weight:700}
.ibe-jobs-empty{padding:48px 25px;border:1px solid #dde3e9;border-radius:14px;background:#fff;text-align:center}
.ibe-jobs-candidate-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:40px;padding:34px;border-radius:16px;background:linear-gradient(135deg,#fff4ec,#f0f7fc);border:1px solid #e7ded8}
.ibe-jobs-candidate-cta h2{margin:4px 0 10px;font-size:30px}
.ibe-jobs-candidate-cta p{max-width:760px;margin:0;color:#666;line-height:1.55}
@media(max-width:900px){
 .ibe-jobs-search-main,.ibe-jobs-filter-row,.ibe-jobs-grid{grid-template-columns:1fr}
 .ibe-jobs-filter-actions{align-items:flex-start}
 .ibe-jobs-candidate-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:600px){
 .ibe-jobs-browser{padding-left:14px;padding-right:14px}
 .ibe-jobs-hero{padding:32px 5px}
 .ibe-jobs-results-head{align-items:flex-start;flex-direction:column}
 .ibe-public-job-card{padding:20px}
 .ibe-public-job-card-top{flex-direction:column}
 .ibe-job-card-actions .ibe-btn{width:100%;text-align:center}
}


/* ============================================================
   v1.3.1 — Browse Jobs search field alignment fix
   ============================================================ */
.ibe-jobs-browser .ibe-jobs-search-main {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(300px, 1fr);
    gap: 14px;
    margin-bottom: 14px;
}

.ibe-jobs-browser .ibe-jobs-search-main .ibe-job-filter {
    min-width: 0;
}

.ibe-jobs-browser .ibe-jobs-search-main .ibe-job-filter input {
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

@media (max-width: 900px) {
    .ibe-jobs-browser .ibe-jobs-search-main {
        grid-template-columns: 1fr;
    }
}


/* ============================================================
   v1.3.2 — Candidate Dashboard Browse All Jobs action
   ============================================================ */
.ibe-candidate-match-head-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:14px;
    flex-wrap:wrap;
    text-align:right;
}
.ibe-candidate-match-head-actions p{
    margin:0;
}
@media(max-width:700px){
    .ibe-candidate-match-head-actions{
        width:100%;
        justify-content:flex-start;
        text-align:left;
    }
}


/* ============================================================
   v1.4.0 — Modern public single-job experience
   ============================================================ */

body.single-job_listing .ibe-single-job-enhancement{
    max-width:1180px;
    margin:0 auto;
}

body.single-job_listing .ibe-single-job-topbar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px;
    margin:18px 0 20px;
    padding:0 2px;
}

body.single-job_listing .ibe-single-job-topbar a{
    text-decoration:none!important;
    font-size:12px;
    font-weight:800;
}

body.single-job_listing .ibe-single-job-topbar > a:first-child{
    color:#666!important;
}

body.single-job_listing .ibe-single-job-top-apply{
    color:#c64b0d!important;
}

body.single-job_listing .ibe-single-job-overview{
    margin:0 0 28px;
    padding:30px;
    border:1px solid #dde3e9;
    border-radius:17px;
    background:linear-gradient(135deg,#fff8f3 0%,#fff 48%,#f2f8fc 100%);
    box-shadow:0 10px 32px rgba(0,0,0,.045);
}

body.single-job_listing .ibe-single-job-overview-head{
    max-width:820px;
}

body.single-job_listing .ibe-single-job-company{
    margin:3px 0 7px;
    color:#111;
    font-size:24px;
    font-weight:850;
    line-height:1.2;
}

body.single-job_listing .ibe-single-job-overview-head p{
    margin:0;
    color:#656c74;
    font-size:15px;
    line-height:1.6;
}

body.single-job_listing .ibe-single-job-meta-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:10px;
    margin-top:24px;
}

body.single-job_listing .ibe-single-job-meta-item{
    min-width:0;
    padding:15px 16px;
    border:1px solid #dde3e9;
    border-top-width:4px;
    border-radius:11px;
    background:#fff;
}

body.single-job_listing .ibe-single-job-meta-item span{
    display:block;
    margin-bottom:6px;
    color:#777;
    font-size:9px;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}

body.single-job_listing .ibe-single-job-meta-item strong{
    display:block;
    overflow-wrap:anywhere;
    color:#171b20;
    font-size:13px;
    line-height:1.35;
}

body.single-job_listing .ibe-job-meta-blue{border-top-color:#3d8fc6}
body.single-job_listing .ibe-job-meta-orange{border-top-color:#df5510}
body.single-job_listing .ibe-job-meta-purple{border-top-color:#9260c1}
body.single-job_listing .ibe-job-meta-green{border-top-color:#469a5c}
body.single-job_listing .ibe-job-meta-gold{border-top-color:#be8407}

body.single-job_listing .ibe-single-job-overview-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:24px;
}

body.single-job_listing .ibe-single-job-description{
    margin:0 0 30px;
    padding:34px 38px;
    border:1px solid #e1e5e9;
    border-radius:16px;
    background:#fff;
}

body.single-job_listing .ibe-single-job-description h2{
    position:relative;
    margin:34px 0 14px!important;
    padding:0 0 10px!important;
    border-bottom:1px solid #eceff2;
    color:#111!important;
    font-size:27px!important;
    line-height:1.15!important;
}

body.single-job_listing .ibe-single-job-description h2:first-child{
    margin-top:0!important;
}

body.single-job_listing .ibe-single-job-description h2:after{
    content:"";
    position:absolute;
    left:0;
    bottom:-1px;
    width:58px;
    height:3px;
    border-radius:2px;
    background:#df5510;
}

body.single-job_listing .ibe-single-job-description p,
body.single-job_listing .ibe-single-job-description li{
    color:#4e555d;
    font-size:16px!important;
    line-height:1.72!important;
}

body.single-job_listing .ibe-single-job-description ul,
body.single-job_listing .ibe-single-job-description ol{
    padding-left:24px;
}

/* Application area now visually belongs to the job experience. */
body.single-job_listing #ibe-job-application{
    max-width:1180px!important;
    margin:30px auto 45px!important;
    padding:0 18px!important;
}

body.single-job_listing #ibe-job-application .ibe-public-apply{
    padding:34px!important;
    border:1px solid #dde3e9!important;
    border-top:5px solid #df5510!important;
    border-radius:17px!important;
    background:#fff!important;
    box-shadow:0 10px 32px rgba(0,0,0,.045)!important;
}

body.single-job_listing #ibe-job-application .ibe-public-apply-head h2{
    margin-bottom:8px!important;
    font-size:30px!important;
}

body.single-job_listing #ibe-job-application .ibe-public-apply-head p{
    max-width:780px;
    color:#666;
    line-height:1.6;
}

@media(max-width:900px){
    body.single-job_listing .ibe-single-job-meta-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:600px){
    body.single-job_listing .ibe-single-job-topbar{
        align-items:flex-start;
        flex-direction:column;
    }

    body.single-job_listing .ibe-single-job-overview{
        padding:23px 20px;
    }

    body.single-job_listing .ibe-single-job-meta-grid{
        grid-template-columns:1fr;
    }

    body.single-job_listing .ibe-single-job-description{
        padding:25px 20px;
    }

    body.single-job_listing .ibe-single-job-overview-actions .ibe-btn{
        width:100%;
        text-align:center;
    }

    body.single-job_listing #ibe-job-application .ibe-public-apply{
        padding:25px 20px!important;
    }
}


/* ============================================================
   v1.4.1 — REAL single job template
   ============================================================ */

body.single-job_listing .ibe-job-v141-page,
body.single-job_listing .ibe-job-v141-page *{
    box-sizing:border-box;
}

body.single-job_listing .ibe-job-v141-page{
    width:100%;
    margin:0;
    padding:32px 22px 70px;
    background:#f8fafc;
    color:#10151c;
}

body.single-job_listing .ibe-job-v141-shell{
    width:100%;
    max-width:1240px;
    margin:0 auto;
}

body.single-job_listing .ibe-job-v141-nav{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:15px;
    margin:0 0 17px;
}

body.single-job_listing .ibe-job-v141-nav a{
    color:#5e6670!important;
    font-size:13px;
    font-weight:800;
    text-decoration:none!important;
}

body.single-job_listing .ibe-job-v141-nav .ibe-job-v141-nav-apply{
    color:#c84c0d!important;
}

/* Hero */
body.single-job_listing .ibe-job-v141-hero{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:35px;
    padding:42px;
    border:1px solid #dde3e9;
    border-radius:19px;
    background:linear-gradient(135deg,#fff5ed 0%,#fff 48%,#edf7fd 100%);
    box-shadow:0 12px 34px rgba(0,0,0,.045);
}

body.single-job_listing .ibe-job-v141-hero-main{
    min-width:0;
}

body.single-job_listing .ibe-job-v141-hero h1{
    max-width:850px;
    margin:5px 0 10px!important;
    color:#0b1119!important;
    font-size:clamp(38px,4.8vw,62px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
}

body.single-job_listing .ibe-job-v141-company{
    margin:0 0 7px;
    color:#252b32;
    font-size:22px;
    font-weight:800;
}

body.single-job_listing .ibe-job-v141-posted{
    color:#747b84;
    font-size:12px;
    font-weight:700;
}

body.single-job_listing .ibe-job-v141-hero-actions{
    display:flex;
    flex-direction:column;
    gap:10px;
    min-width:190px;
}

body.single-job_listing .ibe-job-v141-large-btn{
    width:100%;
    min-height:54px;
    text-align:center;
}

/* Facts */
body.single-job_listing .ibe-job-v141-facts{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:12px;
    margin:18px 0 28px;
}

body.single-job_listing .ibe-job-v141-meta{
    min-width:0;
    padding:19px 18px;
    border:1px solid #dfe4e9;
    border-top-width:5px;
    border-radius:13px;
    background:#fff;
}

body.single-job_listing .ibe-job-v141-meta span{
    display:block;
    margin-bottom:7px;
    color:#767d85;
    font-size:9px;
    font-weight:900;
    letter-spacing:.065em;
    text-transform:uppercase;
}

body.single-job_listing .ibe-job-v141-meta strong{
    display:block;
    overflow-wrap:anywhere;
    color:#111820;
    font-size:15px;
    line-height:1.35;
}

body.single-job_listing .ibe-v141-blue{border-top-color:#3d8fc6}
body.single-job_listing .ibe-v141-green{border-top-color:#469a5c}
body.single-job_listing .ibe-v141-purple{border-top-color:#9260c1}
body.single-job_listing .ibe-v141-gold{border-top-color:#be8407}
body.single-job_listing .ibe-v141-orange{border-top-color:#df5510}

/* Main detail layout */
body.single-job_listing .ibe-job-v141-layout{
    display:grid;
    grid-template-columns:minmax(0,2.15fr) minmax(280px,.85fr);
    gap:22px;
    align-items:start;
}

body.single-job_listing .ibe-job-v141-description{
    min-width:0;
    padding:40px 42px;
    border:1px solid #dde3e9;
    border-radius:17px;
    background:#fff;
}

body.single-job_listing .ibe-job-v141-section-label{
    margin-bottom:25px;
    color:#c64b0d;
    font-size:11px;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

body.single-job_listing .ibe-job-v141-description h2{
    position:relative;
    margin:38px 0 16px!important;
    padding:0 0 12px!important;
    border-bottom:1px solid #edf0f2!important;
    color:#10151c!important;
    font-size:30px!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
}

body.single-job_listing .ibe-job-v141-description h2:first-of-type{
    margin-top:0!important;
}

body.single-job_listing .ibe-job-v141-description h2:after{
    content:"";
    position:absolute;
    left:0;
    bottom:-1px;
    width:62px;
    height:4px;
    border-radius:3px;
    background:#df5510;
}

body.single-job_listing .ibe-job-v141-description p,
body.single-job_listing .ibe-job-v141-description li{
    color:#4f575f!important;
    font-size:17px!important;
    line-height:1.75!important;
}

body.single-job_listing .ibe-job-v141-description p{
    margin-bottom:18px!important;
}

body.single-job_listing .ibe-job-v141-description ul,
body.single-job_listing .ibe-job-v141-description ol{
    margin:0 0 22px!important;
    padding-left:25px!important;
}

/* Sidebar */
body.single-job_listing .ibe-job-v141-sidebar{
    display:flex;
    flex-direction:column;
    gap:16px;
    position:sticky;
    top:25px;
}

body.single-job_listing .ibe-job-v141-side-card{
    padding:27px;
    border:1px solid #dde3e9;
    border-radius:15px;
    background:#fff;
}

body.single-job_listing .ibe-job-v141-side-apply{
    border-top:5px solid #df5510;
    background:linear-gradient(180deg,#fff7f1,#fff);
}

body.single-job_listing .ibe-job-v141-side-card h2,
body.single-job_listing .ibe-job-v141-side-card h3{
    margin:3px 0 10px!important;
    color:#111820!important;
    line-height:1.15!important;
}

body.single-job_listing .ibe-job-v141-side-card h2{
    font-size:27px!important;
}

body.single-job_listing .ibe-job-v141-side-card h3{
    font-size:23px!important;
}

body.single-job_listing .ibe-job-v141-side-card p{
    margin-bottom:19px!important;
    color:#626a73!important;
    font-size:14px!important;
    line-height:1.6!important;
}

body.single-job_listing .ibe-job-v141-side-card .ibe-btn{
    width:100%;
}

body.single-job_listing .ibe-job-v141-text-link{
    display:block;
    margin-top:12px;
    color:#c84c0d!important;
    font-size:13px;
    font-weight:800;
    text-decoration:none!important;
}

/* Application becomes part of the template, not footer output */
body.single-job_listing .ibe-job-v141-shell #ibe-job-application{
    width:100%!important;
    max-width:none!important;
    margin:28px 0 0!important;
    padding:0!important;
}

body.single-job_listing .ibe-job-v141-shell #ibe-job-application .ibe-public-apply{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:38px!important;
    border:1px solid #dde3e9!important;
    border-top:6px solid #df5510!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 10px 30px rgba(0,0,0,.04)!important;
}

body.single-job_listing .ibe-job-v141-shell #ibe-job-application .ibe-public-apply-head h2{
    font-size:34px!important;
    line-height:1.12!important;
}

body.single-job_listing .ibe-job-v141-shell #ibe-job-application .ibe-access-card{
    max-width:820px!important;
}

/* Ensure theme wrappers cannot squeeze this template. */
body.single-job_listing main.ibe-job-v141-page{
    max-width:none!important;
    float:none!important;
    left:auto!important;
    right:auto!important;
    transform:none!important;
}

@media(max-width:980px){
    body.single-job_listing .ibe-job-v141-facts{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    body.single-job_listing .ibe-job-v141-layout{
        grid-template-columns:1fr;
    }

    body.single-job_listing .ibe-job-v141-sidebar{
        position:static;
        display:grid;
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:700px){
    body.single-job_listing .ibe-job-v141-page{
        padding:20px 13px 50px;
    }

    body.single-job_listing .ibe-job-v141-nav{
        align-items:flex-start;
        flex-direction:column;
    }

    body.single-job_listing .ibe-job-v141-hero{
        align-items:flex-start;
        flex-direction:column;
        padding:28px 22px;
    }

    body.single-job_listing .ibe-job-v141-hero-actions{
        width:100%;
    }

    body.single-job_listing .ibe-job-v141-facts{
        grid-template-columns:1fr;
    }

    body.single-job_listing .ibe-job-v141-description{
        padding:29px 22px;
    }

    body.single-job_listing .ibe-job-v141-description h2{
        font-size:26px!important;
    }

    body.single-job_listing .ibe-job-v141-description p,
    body.single-job_listing .ibe-job-v141-description li{
        font-size:16px!important;
    }

    body.single-job_listing .ibe-job-v141-sidebar{
        grid-template-columns:1fr;
    }

    body.single-job_listing .ibe-job-v141-shell #ibe-job-application .ibe-public-apply{
        padding:28px 21px!important;
    }
}


/* ============================================================
   v1.4.2 — Full-width public job description
   ============================================================ */

body.single-job_listing .ibe-job-v141-layout{
    display:flex!important;
    flex-direction:column!important;
    gap:20px!important;
    width:100%!important;
}

body.single-job_listing .ibe-job-v141-description{
    width:100%!important;
    max-width:none!important;
}

body.single-job_listing .ibe-job-v141-sidebar{
    position:static!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:16px!important;
    width:100%!important;
}

body.single-job_listing .ibe-job-v141-side-card{
    height:100%;
}

body.single-job_listing .ibe-job-v141-side-apply{
    display:flex;
    flex-direction:column;
}

body.single-job_listing .ibe-job-v141-side-apply .ibe-btn{
    margin-top:auto;
}

@media(max-width:700px){
    body.single-job_listing .ibe-job-v141-sidebar{
        grid-template-columns:1fr!important;
    }
}


/* ============================================================
   v1.5.0 — Saved Candidate résumé on job applications
   ============================================================ */

.ibe-saved-resume-choice{
    display:flex;
    align-items:center;
    gap:13px;
    margin:7px 0 15px;
    padding:15px 17px;
    border:1px solid #b7ddc1;
    border-radius:10px;
    background:#edf8f0;
}

.ibe-saved-resume-check{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#469a5c;
    color:#fff;
    font-size:18px;
    font-weight:900;
}

.ibe-saved-resume-choice strong{
    display:block;
    margin-bottom:3px;
    color:#1e5f31;
    font-size:14px;
}

.ibe-saved-resume-choice span{
    display:block;
    color:#52665a;
    font-size:12px;
    overflow-wrap:anywhere;
}

.ibe-resume-alternate{
    padding:15px 17px;
    border:1px solid #dde3e9;
    border-radius:10px;
    background:#fafbfc;
}

.ibe-resume-alternate > label{
    display:block;
    margin-bottom:9px;
    color:#555;
    font-size:12px;
    font-weight:800;
}

.ibe-resume-alternate small{
    display:block;
    margin-top:7px;
    color:#777;
    line-height:1.45;
}


/* ============================================================
   v1.6.0 — Universal iBidElectric NOW HIRING badge
   ============================================================ */

.ibe-now-hiring-badge{
    display:block;
    object-fit:contain;
    flex:0 0 auto;
}

body.single-job_listing .ibe-job-v160-hero-identity{
    display:flex;
    align-items:center;
    gap:26px;
}

body.single-job_listing .ibe-job-v160-hero-copy{
    min-width:0;
}

body.single-job_listing .ibe-now-hiring-badge-hero{
    width:118px;
    height:118px;
    filter:drop-shadow(0 8px 14px rgba(17,24,39,.10));
}

.ibe-public-job-identity{
    display:flex;
    align-items:center;
    gap:15px;
    min-width:0;
}

.ibe-now-hiring-badge-card{
    width:68px;
    height:68px;
    filter:drop-shadow(0 5px 9px rgba(17,24,39,.08));
}

/*
 * WP Job Manager's legacy company block may still appear inside stored
 * job content. Replace only its generic logo graphic with our universal
 * recruiting badge while leaving employer name/content intact.
 */
body.single-job_listing .ibe-job-v141-description .company_logo{
    width:64px!important;
    height:64px!important;
    object-fit:contain!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    opacity:0!important;
}

body.single-job_listing .ibe-job-v141-description .company{
    position:relative;
}

body.single-job_listing .ibe-job-v141-description .company:before{
    content:"";
    display:block;
    position:absolute;
    left:16px;
    top:50%;
    width:64px;
    height:64px;
    transform:translateY(-50%);
    background:url("../images/now-hiring-badge.png") center/contain no-repeat;
    filter:drop-shadow(0 4px 7px rgba(17,24,39,.08));
    pointer-events:none;
}

@media(max-width:700px){
    body.single-job_listing .ibe-job-v160-hero-identity{
        align-items:flex-start;
        gap:16px;
    }

    body.single-job_listing .ibe-now-hiring-badge-hero{
        width:82px;
        height:82px;
    }

    .ibe-now-hiring-badge-card{
        width:54px;
        height:54px;
    }
}


/* ============================================================
   v1.6.1 — Center employer name beside small NOW HIRING badge
   ============================================================ */

body.single-job_listing .ibe-job-v141-description .company{
    display:flex!important;
    align-items:center!important;
}

body.single-job_listing .ibe-job-v141-description .company .name,
body.single-job_listing .ibe-job-v141-description .company strong{
    margin-top:0!important;
    margin-bottom:0!important;
    align-self:center!important;
}


/* ============================================================
   v1.6.2 — True vertical centering of employer name
   ============================================================ */

body.single-job_listing .ibe-job-v141-description .company{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    min-height:108px!important;
    padding-left:92px!important;
}

body.single-job_listing .ibe-job-v141-description .company:before{
    left:16px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
}

body.single-job_listing .ibe-job-v141-description .company .name{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    min-height:64px!important;
    margin:0!important;
    padding:0!important;
    line-height:1.25!important;
}

body.single-job_listing .ibe-job-v141-description .company .name a,
body.single-job_listing .ibe-job-v141-description .company .name strong,
body.single-job_listing .ibe-job-v141-description .company strong{
    display:flex!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
    line-height:1.25!important;
}


/* ============================================================
   v1.7.0 — Premium All Jobs marketplace cards
   ============================================================ */

.ibe-jobs-browser .ibe-jobs-grid{
    grid-template-columns:1fr!important;
    gap:18px!important;
}

.ibe-jobs-browser .ibe-public-job-card-v170{
    display:block!important;
    min-height:0!important;
    padding:0!important;
    overflow:hidden;
    border:1px solid #dde3e9!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 9px 28px rgba(0,0,0,.035);
    transition:border-color .18s ease, box-shadow .18s ease;
}

.ibe-jobs-browser .ibe-public-job-card-v170:hover{
    border-color:#efb08b!important;
    box-shadow:0 13px 34px rgba(0,0,0,.055)!important;
}

.ibe-job-card-v170-main{
    display:grid;
    grid-template-columns:150px minmax(0,1fr);
    gap:26px;
    padding:28px 30px 24px;
}

.ibe-job-card-v170-badge-wrap{
    display:flex;
    align-items:flex-start;
    justify-content:center;
    padding-top:3px;
}

.ibe-now-hiring-badge-card-v170{
    width:118px;
    height:118px;
    object-fit:contain;
    filter:drop-shadow(0 7px 12px rgba(17,24,39,.09));
}

.ibe-job-card-v170-content{
    min-width:0;
}

.ibe-job-card-v170-topline{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-bottom:8px;
}

.ibe-job-card-v170-title{
    margin:0 0 7px!important;
    font-size:clamp(27px,3vw,37px)!important;
    line-height:1.08!important;
    letter-spacing:-.025em!important;
}

.ibe-job-card-v170-title a{
    color:#0d131b!important;
    text-decoration:none!important;
}

.ibe-job-company-v170{
    margin-bottom:19px!important;
    color:#343b43!important;
    font-size:17px!important;
    font-weight:800!important;
}

.ibe-job-card-v170-facts{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin-bottom:18px;
}

.ibe-job-card-v170-fact{
    min-width:0;
    padding:12px 13px;
    border:1px solid #e1e5e9;
    border-top-width:4px;
    border-radius:10px;
    background:#fafbfc;
}

.ibe-job-card-v170-fact span{
    display:block;
    margin-bottom:4px;
    color:#7a8087;
    font-size:8px;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}

.ibe-job-card-v170-fact strong{
    display:block;
    overflow-wrap:anywhere;
    color:#141a21;
    font-size:12px;
    line-height:1.35;
}

.ibe-job-card-v170-location{border-top-color:#3d8fc6}
.ibe-job-card-v170-employment{border-top-color:#469a5c}
.ibe-job-card-v170-workplace{border-top-color:#9260c1}
.ibe-job-card-v170-comp{border-top-color:#be8407}

.ibe-job-excerpt-v170{
    max-width:900px;
    margin:0!important;
    color:#646b73!important;
    font-size:14px!important;
    line-height:1.62!important;
}

.ibe-job-card-v170-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    padding:16px 30px;
    border-top:1px solid #edf0f2;
    background:linear-gradient(90deg,#fff 0%,#fafbfc 100%);
}

.ibe-job-card-v170-actions .ibe-btn{
    min-width:130px;
}

.ibe-jobs-browser .ibe-job-posted{
    color:#7b8188!important;
    font-size:10px!important;
    font-weight:800!important;
}

.ibe-jobs-browser .ibe-job-category-pill{
    padding:6px 10px!important;
    font-size:9px!important;
}

/* Make the results header visually stronger. */
.ibe-jobs-browser .ibe-jobs-results-head{
    margin-bottom:20px!important;
    padding:0 2px;
}

.ibe-jobs-browser .ibe-jobs-results-head h2{
    font-size:34px!important;
    letter-spacing:-.02em;
}

/* Public marketplace hero ties visually to the single job page. */
.ibe-jobs-browser .ibe-jobs-hero{
    margin-bottom:22px;
    padding:52px 32px 44px!important;
    border:1px solid #dde3e9;
    border-radius:19px;
    background:linear-gradient(135deg,#fff5ed 0%,#fff 48%,#edf7fd 100%);
    box-shadow:0 10px 30px rgba(0,0,0,.035);
}

.ibe-jobs-browser .ibe-jobs-hero h1{
    color:#0b1119;
}

@media(max-width:900px){
    .ibe-job-card-v170-main{
        grid-template-columns:110px minmax(0,1fr);
        gap:18px;
        padding:24px;
    }

    .ibe-now-hiring-badge-card-v170{
        width:90px;
        height:90px;
    }

    .ibe-job-card-v170-facts{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:620px){
    .ibe-job-card-v170-main{
        display:block;
        padding:22px 19px;
    }

    .ibe-job-card-v170-badge-wrap{
        justify-content:flex-start;
        margin-bottom:12px;
    }

    .ibe-now-hiring-badge-card-v170{
        width:76px;
        height:76px;
    }

    .ibe-job-card-v170-topline{
        align-items:flex-start;
        flex-direction:column;
    }

    .ibe-job-card-v170-title{
        font-size:28px!important;
    }

    .ibe-job-card-v170-facts{
        grid-template-columns:1fr;
    }

    .ibe-job-card-v170-actions{
        flex-direction:column;
        padding:15px 19px 19px;
    }

    .ibe-job-card-v170-actions .ibe-btn{
        width:100%;
        min-width:0;
    }

    .ibe-jobs-browser .ibe-jobs-hero{
        padding:35px 18px!important;
    }
}


/* ============================================================
   v1.9.0 — Dynamic SEO electrical job category landing pages
   ============================================================ */

.ibe-seo-jobs-page,
.ibe-seo-jobs-page *{
    box-sizing:border-box;
}

.ibe-seo-jobs-page{
    padding:30px 20px 70px;
    background:#f8fafc;
    color:#10151c;
}

.ibe-seo-jobs-shell{
    max-width:1240px;
    margin:0 auto;
}

.ibe-seo-jobs-hero{
    padding:55px 42px;
    border:1px solid #dde3e9;
    border-radius:20px;
    background:linear-gradient(135deg,#fff5ed 0%,#fff 48%,#edf7fd 100%);
    box-shadow:0 10px 30px rgba(0,0,0,.035);
    text-align:center;
}

.ibe-seo-jobs-hero h1{
    max-width:980px;
    margin:5px auto 16px;
    font-size:clamp(40px,5vw,64px);
    line-height:1.03;
    letter-spacing:-.035em;
}

.ibe-seo-jobs-hero p{
    max-width:860px;
    margin:0 auto 26px;
    color:#626a73;
    font-size:18px;
    line-height:1.65;
}

.ibe-seo-jobs-hero-actions{
    display:flex;
    justify-content:center;
    gap:10px;
    flex-wrap:wrap;
}

.ibe-seo-jobs-summary{
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:25px;
    margin:30px 0 18px;
    padding:0 4px;
}

.ibe-seo-jobs-summary h2{
    margin:3px 0 0;
    font-size:34px;
}

.ibe-seo-jobs-summary p{
    max-width:620px;
    margin:0;
    color:#727981;
    font-size:13px;
    line-height:1.55;
    text-align:right;
}

.ibe-seo-jobs-list{
    display:grid;
    gap:18px;
}

.ibe-seo-job-card{
    display:grid;
    grid-template-columns:145px minmax(0,1fr);
    gap:24px;
    padding:28px 30px;
    border:1px solid #dde3e9;
    border-radius:18px;
    background:#fff;
    box-shadow:0 9px 28px rgba(0,0,0,.035);
}

.ibe-seo-job-badge{
    display:flex;
    justify-content:center;
    align-items:flex-start;
}

.ibe-seo-job-badge img{
    width:112px;
    height:112px;
    object-fit:contain;
    filter:drop-shadow(0 7px 12px rgba(17,24,39,.09));
}

.ibe-seo-job-topline{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    color:#777e86;
    font-size:10px;
    font-weight:800;
}

.ibe-seo-job-card h3{
    margin:8px 0 6px;
    font-size:clamp(27px,3vw,36px);
    line-height:1.08;
    letter-spacing:-.025em;
}

.ibe-seo-job-card h3 a{
    color:#0d131b!important;
    text-decoration:none!important;
}

.ibe-seo-job-company{
    margin-bottom:18px;
    color:#343b43;
    font-size:17px;
    font-weight:800;
}

.ibe-seo-job-facts{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:9px;
    margin-bottom:17px;
}

.ibe-seo-job-facts span{
    padding:11px 12px;
    border:1px solid #e1e5e9;
    border-top:4px solid #3d8fc6;
    border-radius:9px;
    background:#fafbfc;
    color:#20262d;
    font-size:12px;
}

.ibe-seo-job-facts span:nth-child(2){border-top-color:#469a5c}
.ibe-seo-job-facts span:nth-child(3){border-top-color:#9260c1}
.ibe-seo-job-facts span:nth-child(4){border-top-color:#be8407}

.ibe-seo-job-facts b{
    display:block;
    margin-bottom:3px;
    color:#7b8188;
    font-size:8px;
    text-transform:uppercase;
    letter-spacing:.06em;
}

.ibe-seo-job-card p{
    max-width:920px;
    margin:0 0 18px;
    color:#626a73;
    font-size:14px;
    line-height:1.62;
}

.ibe-seo-job-actions{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
}

.ibe-seo-jobs-empty{
    padding:55px 30px;
    border:1px solid #dde3e9;
    border-radius:18px;
    background:#fff;
    text-align:center;
}

.ibe-seo-jobs-empty img{
    width:115px;
    height:115px;
    object-fit:contain;
}

.ibe-seo-jobs-empty h2{
    margin:10px 0 10px;
    font-size:32px;
}

.ibe-seo-jobs-empty p{
    max-width:700px;
    margin:0 auto 22px;
    color:#656d75;
    line-height:1.6;
}

.ibe-seo-related-jobs{
    margin-top:35px;
    padding:34px;
    border:1px solid #dde3e9;
    border-radius:18px;
    background:#fff;
}

.ibe-seo-related-head h2{
    margin:4px 0 20px;
    font-size:30px;
}

.ibe-seo-related-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}

.ibe-seo-related-grid a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    padding:14px 15px;
    border:1px solid #e2e6ea;
    border-radius:10px;
    background:#fafbfc;
    color:#171c22!important;
    text-decoration:none!important;
}

.ibe-seo-related-grid strong{
    font-size:13px;
}

.ibe-seo-related-grid span{
    white-space:nowrap;
    color:#7b8188;
    font-size:10px;
    font-weight:800;
}

.ibe-seo-candidate-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    margin-top:30px;
    padding:34px;
    border:1px solid #e6ddd7;
    border-radius:18px;
    background:linear-gradient(135deg,#fff4ec,#f0f7fc);
}

.ibe-seo-candidate-cta h2{
    margin:4px 0 8px;
    font-size:30px;
}

.ibe-seo-candidate-cta p{
    max-width:760px;
    margin:0;
    color:#666e76;
    line-height:1.58;
}

@media(max-width:900px){
    .ibe-seo-job-card{
        grid-template-columns:105px minmax(0,1fr);
        gap:18px;
        padding:24px;
    }

    .ibe-seo-job-badge img{
        width:86px;
        height:86px;
    }

    .ibe-seo-job-facts{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

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

@media(max-width:650px){
    .ibe-seo-jobs-page{
        padding-left:13px;
        padding-right:13px;
    }

    .ibe-seo-jobs-hero{
        padding:38px 19px;
    }

    .ibe-seo-jobs-summary{
        align-items:flex-start;
        flex-direction:column;
    }

    .ibe-seo-jobs-summary p{
        text-align:left;
    }

    .ibe-seo-job-card{
        display:block;
        padding:21px 18px;
    }

    .ibe-seo-job-badge{
        justify-content:flex-start;
        margin-bottom:12px;
    }

    .ibe-seo-job-badge img{
        width:74px;
        height:74px;
    }

    .ibe-seo-job-topline{
        align-items:flex-start;
        flex-direction:column;
    }

    .ibe-seo-job-facts{
        grid-template-columns:1fr;
    }

    .ibe-seo-job-actions .ibe-btn{
        width:100%;
    }

    .ibe-seo-related-grid{
        grid-template-columns:1fr;
    }

    .ibe-seo-candidate-cta{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* ============================================================
   v1.10.0 — SEO Landing Pages monitor
   ============================================================ */

.ibe-seo-monitor-panel{
    margin:26px 0;
    padding:28px;
    border:1px solid #dde3e9;
    border-radius:16px;
    background:#fff;
}

.ibe-seo-monitor-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:24px;
    margin-bottom:20px;
}

.ibe-seo-monitor-header h2{
    margin:3px 0 7px;
    font-size:29px;
}

.ibe-seo-monitor-header p{
    max-width:760px;
    margin:0;
    color:#687078;
    font-size:13px;
    line-height:1.55;
}

.ibe-seo-monitor-table-wrap{
    overflow-x:auto;
    border:1px solid #e2e6ea;
    border-radius:12px;
}

.ibe-seo-monitor-table{
    width:100%;
    min-width:760px;
    margin:0;
    border-collapse:collapse;
    background:#fff;
}

.ibe-seo-monitor-table th{
    padding:12px 14px;
    border-bottom:1px solid #dfe4e8;
    background:#f6f8fa;
    color:#626970;
    font-size:9px;
    font-weight:900;
    letter-spacing:.06em;
    text-align:left;
    text-transform:uppercase;
}

.ibe-seo-monitor-table td{
    padding:15px 14px;
    border-bottom:1px solid #edf0f2;
    vertical-align:middle;
}

.ibe-seo-monitor-table tbody tr:last-child td{
    border-bottom:0;
}

.ibe-seo-monitor-table td strong{
    display:block;
    color:#141a20;
    font-size:13px;
}

.ibe-seo-monitor-url{
    display:block;
    margin-top:4px;
    color:#899098;
    font-size:10px;
}

.ibe-seo-job-count{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    height:32px;
    padding:0 10px;
    border-radius:999px;
    background:#eef4f8;
    color:#2e6688;
    font-size:12px;
    font-weight:900;
}

.ibe-seo-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:84px;
    padding:7px 10px;
    border-radius:999px;
    font-size:9px;
    font-weight:900;
    letter-spacing:.05em;
}

.ibe-seo-status-index{
    background:#e9f7ed;
    color:#2b7440;
    border:1px solid #b9dfc4;
}

.ibe-seo-status-noindex{
    background:#f3f4f5;
    color:#71777d;
    border:1px solid #d9dde1;
}

.ibe-seo-monitor-note{
    margin-top:15px;
    padding:13px 15px;
    border-radius:9px;
    background:#fff7ef;
    color:#675b51;
    font-size:11px;
    line-height:1.5;
}

.ibe-seo-monitor-note code{
    padding:2px 5px;
    border-radius:4px;
    background:#fff;
    color:#b64a11;
}

@media(max-width:700px){
    .ibe-seo-monitor-panel{
        padding:21px 16px;
    }

    .ibe-seo-monitor-header{
        flex-direction:column;
    }

    .ibe-seo-monitor-header .ibe-btn{
        width:100%;
    }
}


/* ============================================================
   v1.11.0 — Geographic SEO state pages + monitor
   ============================================================ */

.ibe-seo-state-summary{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:8px 13px;
    border:1px solid #bfd9e9;
    border-radius:999px;
    background:#edf7fc;
    color:#2e6f98;
    font-size:11px;
    font-weight:900;
    white-space:nowrap;
}

.ibe-seo-state-details{
    margin-top:8px;
}

.ibe-seo-state-details > summary{
    display:inline-flex;
    align-items:center;
    min-height:40px;
    margin-bottom:13px;
    padding:8px 13px;
    border:1px solid #dce1e5;
    border-radius:8px;
    background:#f7f9fa;
    color:#4c545c;
    cursor:pointer;
    font-size:11px;
    font-weight:900;
}

.ibe-seo-state-details[open] > summary{
    background:#fff5ed;
    border-color:#f0c8b1;
    color:#a94614;
}

@media(max-width:700px){
    .ibe-seo-state-summary{
        align-self:flex-start;
    }
}


/* ============================================================
   v1.12.0 — External / Curated Jobs
   ============================================================ */

.ibe-external-job-section{
    border-top:5px solid #3d8fc6!important;
    background:linear-gradient(180deg,#f2f9fd,#fff)!important;
}

.ibe-external-job-pill{
    display:inline-flex;
    align-items:center;
    padding:6px 10px;
    border:1px solid #bdd8e9;
    border-radius:999px;
    background:#eaf5fc;
    color:#2e6f98;
    font-size:9px;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.ibe-job-card-v170-pills{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:wrap;
}

.ibe-external-job-disclosure{
    display:flex;
    align-items:center;
    gap:14px;
    margin:0 0 20px;
    padding:16px 18px;
    border:1px solid #bdd8e9;
    border-radius:12px;
    background:#eef8fd;
}

.ibe-external-job-disclosure strong{
    color:#235f86;
    font-size:12px;
    white-space:nowrap;
}

.ibe-external-job-disclosure span{
    flex:1;
    color:#55636d;
    font-size:12px;
    line-height:1.5;
}

.ibe-external-job-disclosure a{
    color:#c84c0d!important;
    font-size:11px;
    font-weight:800;
    text-decoration:none!important;
    white-space:nowrap;
}

.ibe-external-apply-panel{
    margin-top:28px;
    padding:38px;
    border:1px solid #dde3e9;
    border-top:6px solid #df5510;
    border-radius:18px;
    background:linear-gradient(135deg,#fff7f1,#fff);
    text-align:center;
}

.ibe-external-apply-panel h2{
    margin:4px 0 10px;
    font-size:34px;
}

.ibe-external-apply-panel p{
    max-width:760px;
    margin:0 auto 22px;
    color:#656d75;
    line-height:1.6;
}

@media(max-width:700px){
    .ibe-external-job-disclosure{
        align-items:flex-start;
        flex-direction:column;
    }

    .ibe-external-job-disclosure strong,
    .ibe-external-job-disclosure a{
        white-space:normal;
    }

    .ibe-external-apply-panel{
        padding:28px 20px;
    }
}


/* ============================================================
   v1.13.0 — Bulk External Job Importer
   ============================================================ */

.ibe-external-import-panel{
    margin:26px 0;
    padding:28px;
    border:1px solid #d9e2e8;
    border-top:5px solid #3d8fc6;
    border-radius:16px;
    background:linear-gradient(180deg,#f3f9fd,#fff 95px);
}

.ibe-external-import-header{
    margin-bottom:20px;
}

.ibe-external-import-header h2{
    margin:3px 0 7px;
    font-size:29px;
}

.ibe-external-import-header p{
    max-width:850px;
    margin:0;
    color:#667079;
    font-size:13px;
    line-height:1.55;
}

.ibe-external-import-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:18px;
    align-items:start;
}

.ibe-external-import-form textarea{
    width:100%;
    min-height:260px;
    resize:vertical;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
    font-size:11px;
    line-height:1.45;
}

.ibe-external-import-actions{
    display:flex;
    align-items:center;
    gap:14px;
    margin-top:16px;
}

.ibe-external-import-actions span{
    color:#6f777f;
    font-size:11px;
    font-weight:700;
}

.ibe-external-import-result{
    margin:0 0 18px;
    padding:14px 16px;
    border:1px solid #b8dfc3;
    border-radius:10px;
    background:#edf8f0;
    color:#285f38;
    font-size:12px;
}

.ibe-external-import-result.has-errors{
    border-color:#e7c79f;
    background:#fff7ea;
    color:#76522b;
}

.ibe-external-import-result ul{
    margin:9px 0 0 18px;
}

.ibe-external-import-result li{
    margin-bottom:4px;
}

.ibe-external-import-sample{
    margin-top:18px;
}

.ibe-external-import-sample summary{
    display:inline-flex;
    align-items:center;
    padding:8px 11px;
    border:1px solid #dbe0e4;
    border-radius:8px;
    background:#f7f9fa;
    color:#555e66;
    cursor:pointer;
    font-size:10px;
    font-weight:900;
}

.ibe-external-import-sample pre{
    max-height:380px;
    overflow:auto;
    margin-top:12px;
    padding:16px;
    border:1px solid #dfe3e7;
    border-radius:10px;
    background:#151b21;
    color:#eef3f6;
    font-size:10px;
    line-height:1.55;
    white-space:pre-wrap;
}

@media(max-width:800px){
    .ibe-external-import-grid{
        grid-template-columns:1fr;
    }

    .ibe-external-import-panel{
        padding:21px 16px;
    }

    .ibe-external-import-actions{
        align-items:flex-start;
        flex-direction:column;
    }
}


/* ============================================================
   v1.14.0 — Import external job from employer URL
   ============================================================ */

.ibe-url-import-card{
    margin:0 0 22px;
    padding:22px;
    border:1px solid #b8d9eb;
    border-radius:13px;
    background:linear-gradient(135deg,#edf8fd,#fff);
}

.ibe-url-import-card h3{
    margin:4px 0 7px;
    font-size:23px;
}

.ibe-url-import-card > p{
    max-width:820px;
    margin:0 0 15px;
    color:#606b74;
    font-size:12px;
    line-height:1.55;
}

.ibe-url-import-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
}

.ibe-url-import-row input[type="url"]{
    width:100%;
    min-height:50px;
    padding:10px 13px;
    border:1px solid #cfd7dd;
    border-radius:8px;
    background:#fff;
    font-size:14px;
}

.ibe-url-import-form small{
    display:block;
    margin-top:8px;
    color:#747c84;
    font-size:10px;
    line-height:1.5;
}

.ibe-import-divider{
    display:flex;
    align-items:center;
    gap:12px;
    margin:20px 0;
    color:#8a9299;
    font-size:9px;
    font-weight:900;
    letter-spacing:.08em;
}

.ibe-import-divider:before,
.ibe-import-divider:after{
    content:"";
    flex:1;
    height:1px;
    background:#dfe4e8;
}

.ibe-external-import-result p{
    margin:10px 0 0;
}

@media(max-width:700px){
    .ibe-url-import-row{
        grid-template-columns:1fr;
    }

    .ibe-url-import-row .ibe-btn{
        width:100%;
    }
}


/* v1.14.2 — URL importer re-import controls */
.ibe-url-import-actions{
    display:flex;
    gap:8px;
    align-items:stretch;
}
.ibe-url-import-actions .ibe-btn{
    white-space:nowrap;
}
@media(max-width:900px){
    .ibe-url-import-row{
        grid-template-columns:1fr;
    }
    .ibe-url-import-actions{
        width:100%;
    }
    .ibe-url-import-actions .ibe-btn{
        flex:1;
    }
}
@media(max-width:560px){
    .ibe-url-import-actions{
        flex-direction:column;
    }
}


/* ============================================================
   v1.15.6 — Simplified External Job Import UI
   ============================================================ */

.ibe-url-import-note{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin-top:14px;
    padding:12px 14px;
    border:1px solid #dfe5e9;
    border-radius:9px;
    background:#f8fafb;
    color:#68727a;
    font-size:10px;
    line-height:1.5;
}

.ibe-url-import-note strong{
    color:#38434c;
    white-space:nowrap;
}

@media(max-width:700px){
    .ibe-url-import-note{
        flex-direction:column;
        gap:3px;
    }

    .ibe-url-import-note strong{
        white-space:normal;
    }
}

/* =========================================================
   v1.17.5 — Follow-up Complete/Delete actions
   ========================================================= */
.ibe-followup-row{
  display:flex !important;
  align-items:center;
  gap:12px;
}
.ibe-followup-row-link{
  display:grid;
  grid-template-columns:110px minmax(0,1fr) 150px;
  align-items:center;
  gap:16px;
  flex:1 1 auto;
  min-width:0;
  color:inherit !important;
  text-decoration:none !important;
}
.ibe-followup-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
.ibe-followup-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px 11px;
  border:1px solid #d9dde1;
  border-radius:7px;
  background:#fff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  text-decoration:none !important;
}
.ibe-followup-complete{color:#26713a !important;border-color:#b9d9c2;background:#eef8f1;}
.ibe-followup-delete{color:#a51f1f !important;border-color:#e4b8b4;background:#fff2f1;}
.ibe-followup-complete:hover{background:#dff1e4;}
.ibe-followup-delete:hover{background:#fbe2e0;}
@media(max-width:900px){
  .ibe-followup-row{align-items:stretch;flex-direction:column;}
  .ibe-followup-row-link{grid-template-columns:1fr;width:100%;}
  .ibe-followup-status{justify-self:start;}
  .ibe-followup-actions{width:100%;}
  .ibe-followup-action{flex:1 1 50%;}
}
