
:root{
    --hsbi:#102F59;
    --hsbi-dark:#061F3D;
    --hsbi-gold:#C6A15B;
    --hsbi-teal:#148E92;
    --hsbi-bg:#F7F9FC;
    --hsbi-line:#E2E8F0;
    --hsbi-text:#526176;
    --hsbi-green:#2A9A68;
    --hsbi-red:#D95858;
    --hsbi-orange:#E7A139;
}

*{box-sizing:border-box}

.hsbi-auth-page,.hsbi-application-page,.hsbi-app-shell{
    font-family:Inter,Arial,sans-serif;
    color:#203047;
}

.hsbi-auth-page{
    max-width:1180px;
    margin:55px auto;
    display:grid;
    grid-template-columns:44% 56%;
    background:#fff;
    border:1px solid var(--hsbi-line);
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 20px 60px rgba(16,47,89,.10);
}

.hsbi-auth-visual{
    min-height:570px;
    padding:55px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    color:#fff;
    background:
        radial-gradient(circle at 20% 20%,rgba(198,161,91,.13),transparent 30%),
        linear-gradient(150deg,#051C36,#103968);
}

.hsbi-auth-logo{
    margin-bottom:52px;
    color:var(--hsbi-gold);
    font:700 34px Playfair Display,serif;
}

.hsbi-auth-visual h1{
    margin:0 0 18px;
    font:700 40px/1.14 Playfair Display,serif;
}

.hsbi-auth-visual p{
    color:rgba(255,255,255,.72);
    font-size:14px;
    line-height:1.8;
}

.hsbi-auth-form{padding:58px}

.hsbi-auth-form h2{
    margin:5px 0 28px;
    color:var(--hsbi);
    font:700 35px Playfair Display,serif;
}

.hsbi-kicker{
    color:var(--hsbi-gold);
    font-size:10px;
    font-weight:700;
    letter-spacing:1.2px;
}

.hsbi-auth-form form,.hsbi-simple-form{
    display:grid;
    gap:15px;
}

.hsbi-auth-form label,.hsbi-simple-form label,.hsbi-pro-form label{
    display:grid;
    gap:7px;
    color:var(--hsbi);
    font-size:11px;
    font-weight:600;
}

.hsbi-auth-form input,
.hsbi-simple-form input,
.hsbi-simple-form select,
.hsbi-simple-form textarea,
.hsbi-pro-form input,
.hsbi-pro-form select{
    width:100%;
    padding:12px 13px;
    border:1px solid #DCE3EA;
    border-radius:6px;
    outline:none;
    background:#fff;
    color:#2A3A4F;
    font:400 12px Inter,Arial,sans-serif;
}

.hsbi-auth-form input:focus,
.hsbi-simple-form input:focus,
.hsbi-simple-form select:focus,
.hsbi-simple-form textarea:focus,
.hsbi-pro-form input:focus,
.hsbi-pro-form select:focus{
    border-color:var(--hsbi-gold);
    box-shadow:0 0 0 3px rgba(198,161,91,.10);
}

.hsbi-auth-form button,
.hsbi-simple-form button,
.hsbi-pro-form>button,
.hsbi-main-btn{
    border:0;
    border-radius:5px;
    padding:13px 18px;
    background:var(--hsbi);
    color:#fff!important;
    text-decoration:none;
    font:600 11px Inter,Arial,sans-serif;
    cursor:pointer;
}

.hsbi-auth-form button:hover,
.hsbi-simple-form button:hover,
.hsbi-main-btn:hover{
    background:var(--hsbi-gold);
}

.hsbi-grid2{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
}

.hsbi-check{
    display:flex!important;
    grid-template-columns:auto 1fr!important;
    align-items:center!important;
}

.hsbi-check input{width:auto}

.hsbi-login-help{
    margin-top:20px;
    text-align:center;
    color:#748094;
    font-size:11px;
}

.hsbi-login-help a{
    color:var(--hsbi);
    font-weight:700;
}

.hsbi-alert-error{
    margin-bottom:16px;
    padding:11px 13px;
    border-radius:6px;
    background:#FFF0F0;
    color:#A33B3B;
    font-size:10px;
}

.hsbi-access-card,.hsbi-empty{
    max-width:850px;
    margin:40px auto;
    padding:38px;
    border:1px solid var(--hsbi-line);
    border-radius:10px;
    background:#fff;
    text-align:center;
}

.hsbi-access-card a,.hsbi-empty a{
    display:inline-block;
    margin-top:10px;
    padding:11px 16px;
    border-radius:5px;
    background:var(--hsbi);
    color:#fff;
    text-decoration:none;
    font-size:10px;
    font-weight:700;
}

.hsbi-application-page{
    max-width:1080px;
    margin:45px auto;
    padding:0 18px;
}

.hsbi-page-title{
    margin-bottom:28px;
    text-align:center;
}

.hsbi-page-title span,.hsbi-page-heading>div>span{
    color:var(--hsbi-teal);
    font-size:10px;
    font-weight:700;
    letter-spacing:1px;
}

.hsbi-page-title h1,.hsbi-page-heading h1{
    margin:5px 0 7px;
    color:var(--hsbi);
    font:700 34px Playfair Display,serif;
}

.hsbi-page-title p,.hsbi-page-heading p{
    margin:0;
    color:#748095;
    font-size:12px;
}

.hsbi-account-summary{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px;
    margin-bottom:18px;
}

.hsbi-account-summary>div{
    padding:15px;
    border:1px solid var(--hsbi-line);
    border-radius:7px;
    background:#fff;
}

.hsbi-account-summary small{
    display:block;
    margin-bottom:5px;
    color:#8792A1;
    font-size:9px;
}

.hsbi-account-summary strong{
    color:var(--hsbi);
    font-size:11px;
}

.hsbi-green{color:var(--hsbi-green)!important}

.hsbi-pro-form{
    display:grid;
    gap:15px;
}

.hsbi-pro-form section{
    display:grid;
    grid-template-columns:70px 1fr;
    overflow:hidden;
    border:1px solid var(--hsbi-line);
    border-radius:8px;
    background:#fff;
}

.hsbi-pro-form section>b{
    padding:26px 18px;
    background:#F2F5F9;
    color:var(--hsbi-gold);
    font:700 20px Playfair Display,serif;
}

.hsbi-pro-form section>div{padding:26px}

.hsbi-pro-form h3{
    margin:0 0 18px;
    color:var(--hsbi);
    font:700 17px Playfair Display,serif;
}

/* APPLICATION SHELL */
.hsbi-app-shell{
    width:min(1500px,100%);
    min-height:100vh;
    margin:0 auto;
    display:grid;
    grid-template-columns:240px 1fr;
    background:#fff;
}

.hsbi-app-sidebar{
    position:sticky;
    top:0;
    height:100vh;
    padding:30px 16px 18px;
    display:flex;
    flex-direction:column;
    color:#fff;
    background:linear-gradient(180deg,#062548,#073968);
}

.hsbi-side-logo{
    padding:0 12px 30px;
}

.hsbi-side-logo span{
    display:block;
    font:700 28px Playfair Display,serif;
}

.hsbi-side-logo small{
    color:var(--hsbi-gold);
    font-size:8px;
    font-weight:600;
    letter-spacing:1.2px;
}

.hsbi-side-label{
    padding:0 12px 12px;
    color:rgba(255,255,255,.52);
    font-size:9px;
}

.hsbi-app-sidebar nav{
    display:flex;
    flex-direction:column;
    gap:4px;
}

.hsbi-app-sidebar nav a{
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px;
    border-radius:6px;
    color:rgba(255,255,255,.86)!important;
    text-decoration:none;
    font-size:11px;
    font-weight:500;
}

.hsbi-app-sidebar nav a i{
    width:15px;
    height:15px;
    flex:none;
    border:1.5px solid rgba(255,255,255,.82);
    border-radius:4px;
}

.hsbi-app-sidebar nav a:hover,
.hsbi-app-sidebar nav a.active{
    background:linear-gradient(90deg,#0A5974,#07828A);
    color:#fff!important;
}

.hsbi-side-help{
    margin-top:auto;
    padding:18px 14px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:8px;
}

.hsbi-side-help strong{
    font:700 18px Playfair Display,serif;
}

.hsbi-side-help p{
    color:rgba(255,255,255,.65);
    font-size:10px;
    line-height:1.6;
}

.hsbi-side-foot{
    padding-top:18px;
    text-align:center;
    color:rgba(255,255,255,.50);
    font-size:9px;
}

.hsbi-app-body{
    min-width:0;
    background:#fff;
}

.hsbi-app-topbar{
    height:74px;
    padding:0 28px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-bottom:1px solid var(--hsbi-line);
    background:#fff;
}

.hsbi-search{
    display:flex;
    align-items:center;
    gap:18px;
}

.hsbi-search span{
    color:var(--hsbi);
    font-size:22px;
}

.hsbi-search input{
    width:420px;
    padding:12px 14px;
    border:1px solid #DCE4ED;
    border-radius:6px;
    outline:0;
    font:400 11px Inter,Arial,sans-serif;
}

.hsbi-userbox{
    display:flex;
    align-items:center;
    gap:10px;
}

.hsbi-bell{
    color:var(--hsbi);
    font-size:22px;
}

.hsbi-user-avatar{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#EAF0F6;
    color:var(--hsbi);
    font-weight:700;
}

.hsbi-userbox strong{
    display:block;
    color:var(--hsbi);
    font-size:11px;
}

.hsbi-userbox small{
    display:block;
    color:#8995A5;
    font-size:9px;
}

.hsbi-app-content{
    min-height:calc(100vh - 74px);
    padding:30px;
    background:#FBFCFE;
}

.hsbi-page-heading{
    margin-bottom:22px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
}

.hsbi-page-heading h1{
    font-size:29px;
}

.hsbi-date-chip{
    padding:11px 14px;
    border:1px solid var(--hsbi-line);
    border-radius:6px;
    background:#fff;
    color:var(--hsbi);
    font-size:10px;
}

.hsbi-card{
    min-width:0;
    padding:20px;
    border:1px solid var(--hsbi-line);
    border-radius:8px;
    background:#fff;
    box-shadow:0 4px 14px rgba(16,47,89,.025);
}

.hsbi-card h3{
    margin:0 0 16px;
    color:var(--hsbi);
    font:700 15px Playfair Display,serif;
}

.hsbi-card-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.hsbi-card-head a{
    color:var(--hsbi);
    text-decoration:none;
    font-size:9px;
    font-weight:700;
}

.hsbi-account-card{
    margin-bottom:18px;
}

.hsbi-badge-success{
    padding:6px 10px;
    border-radius:999px;
    background:#E9F8F1;
    color:#27815A;
    font-size:9px;
    font-weight:700;
}

.hsbi-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 22px;
    margin:10px 0 20px;
}

.hsbi-info-grid>div{
    padding:12px 0;
    border-bottom:1px solid #EEF2F5;
}

.hsbi-info-grid small{
    display:block;
    margin-bottom:5px;
    color:#8994A3;
    font-size:9px;
}

.hsbi-info-grid strong{
    color:#3F5066;
    font-size:11px;
}

.hsbi-summary-cards{
    display:grid;
    grid-template-columns:2fr 1.2fr 1fr;
    gap:14px;
    margin-bottom:18px;
}

.hsbi-summary-cards>div{
    padding:18px;
    border:1px solid var(--hsbi-line);
    border-radius:8px;
    background:#fff;
}

.hsbi-summary-cards small{
    display:block;
    margin-bottom:8px;
    color:#667488;
    font-size:10px;
}

.hsbi-summary-cards strong{
    color:var(--hsbi);
    font-size:12px;
}

.gold{color:var(--hsbi-gold)!important}

.hsbi-admin-kpis{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px;
    margin-bottom:18px;
}

.hsbi-admin-kpis>div{
    padding:18px;
    border:1px solid var(--hsbi-line);
    border-radius:8px;
    background:#fff;
    box-shadow:0 4px 14px rgba(16,47,89,.03);
}

.hsbi-admin-kpis small{
    display:block;
    margin-bottom:8px;
    color:#687588;
    font-size:10px;
}

.hsbi-admin-kpis strong{
    color:var(--hsbi);
    font-size:27px;
}

.hsbi-admin-kpis em{
    display:block;
    margin-top:6px;
    color:var(--hsbi-green);
    font-size:9px;
    font-style:normal;
}

.hsbi-two-col{
    display:grid;
    grid-template-columns:1.15fr 1fr;
    gap:16px;
}

.hsbi-three-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:16px;
    margin-bottom:16px;
}

.hsbi-candidate-layout{
    display:grid;
    grid-template-columns:1fr 1fr .85fr;
    gap:16px;
}

.hsbi-settings-layout{
    display:grid;
    grid-template-columns:1.7fr .8fr;
    gap:16px;
}

.hsbi-message-layout{
    display:grid;
    grid-template-columns:1fr 1.15fr;
    gap:16px;
}

/* Tables */
.hsbi-table{
    display:grid;
    width:100%;
}

.hsbi-table .head,
.hsbi-table .line{
    display:grid;
    grid-template-columns:1.15fr 1.2fr 1.4fr .9fr .6fr;
    gap:10px;
    align-items:center;
    padding:11px 10px;
}

.hsbi-table .head{
    background:#F3F6FA;
    color:#627087;
    font-size:9px;
    font-weight:700;
}

.hsbi-table .line{
    border-bottom:1px solid #EEF2F6;
    color:#4E5D70;
    font-size:10px;
}

.hsbi-table .line a{
    color:var(--hsbi);
    text-decoration:none;
    font-weight:700;
}

.hsbi-table .line small{
    display:block;
    margin-top:4px;
    color:#8995A4;
    font-size:8px;
}

.hsbi-table .actions{
    display:flex;
    align-items:center;
    gap:7px;
    flex-wrap:wrap;
}

.hsbi-table .actions form{
    display:flex;
    align-items:center;
    gap:6px;
}

.hsbi-table input[type=file]{
    max-width:150px;
    font-size:8px;
}

.hsbi-table button,
.hsbi-doc-admin button{
    padding:7px 9px;
    border:0;
    border-radius:4px;
    background:var(--hsbi);
    color:#fff;
    font-size:8px;
}

/* Status/progression */
.hsbi-pill{
    display:inline-flex;
    padding:7px 10px;
    border-radius:4px;
    background:#FFF2D9;
    color:#956413;
    font-size:9px;
    font-weight:700;
}

.hsbi-progressline{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    padding:20px 0;
}

.hsbi-progressline>div{
    position:relative;
    text-align:center;
}

.hsbi-progressline>div:before{
    content:"";
    position:absolute;
    left:-50%;
    top:7px;
    width:100%;
    height:2px;
    background:#DFE6EE;
}

.hsbi-progressline>div:first-child:before{display:none}

.hsbi-progressline span{
    position:relative;
    z-index:2;
    width:15px;
    height:15px;
    display:block;
    margin:0 auto 8px;
    border:2px solid #CED7E3;
    border-radius:50%;
    background:#fff;
}

.hsbi-progressline .done span{
    border-color:var(--hsbi-gold);
    background:var(--hsbi-gold);
}

.hsbi-progressline small{
    color:#7C8796;
    font-size:8px;
}

.hsbi-row{
    display:flex;
    justify-content:space-between;
    gap:12px;
    padding:10px 0;
    border-bottom:1px solid #EEF2F5;
    font-size:10px;
}

.hsbi-row em{font-style:normal}
.s-approved{color:var(--hsbi-green)}
.s-rejected{color:var(--hsbi-red)}
.s-pending{color:var(--hsbi-orange)}
.muted{color:#8894A4;font-size:11px}

.hsbi-fake-bars{
    height:170px;
    padding:20px 10px 0;
    display:flex;
    align-items:flex-end;
    justify-content:space-around;
    gap:12px;
}

.hsbi-fake-bars i{
    width:22px;
    display:block;
    border-radius:4px 4px 0 0;
    background:linear-gradient(180deg,#107196,#0A315F);
}

.hsbi-donut{
    width:150px;
    height:150px;
    margin:10px auto;
    border-radius:50%;
    background:conic-gradient(
        #102F59 0 35%,
        #148E92 35% 60%,
        #F0AB2E 60% 80%,
        #DB5C78 80%
    );
}

.hsbi-donut:after{
    content:"";
    position:relative;
    top:32px;
    left:32px;
    width:86px;
    height:86px;
    display:block;
    border-radius:50%;
    background:#fff;
}

.hsbi-legend{
    display:flex;
    justify-content:center;
    gap:12px;
    color:#687589;
    font-size:9px;
}

.hsbi-formation-big{
    display:grid;
    grid-template-columns:44% 56%;
    overflow:hidden;
    border:1px solid var(--hsbi-line);
    border-radius:8px;
    background:#fff;
}

.hsbi-formation-big img{
    width:100%;
    height:100%;
    min-height:330px;
    object-fit:cover;
}

.hsbi-formation-big .copy{padding:35px}
.hsbi-formation-big .copy>span{color:var(--hsbi-gold);font-size:9px;font-weight:700}
.hsbi-formation-big h2{margin:8px 0 14px;color:var(--hsbi);font:700 28px Playfair Display,serif}
.hsbi-formation-big p{color:#657286;font-size:11px;line-height:1.7}
.hsbi-formation-big a{color:var(--hsbi);font-size:10px;font-weight:700;text-decoration:none}

.hsbi-doc-admin{
    display:grid;
    grid-template-columns:1fr auto auto;
    align-items:center;
    gap:8px;
    padding:10px 0;
    border-bottom:1px solid #EEF2F5;
}

.hsbi-doc-admin small{
    display:block;
    margin-top:3px;
    color:#8C97A5;
    font-size:8px;
}

.hsbi-doc-admin a{
    color:var(--hsbi);
    font-size:9px;
    font-weight:700;
}

.hsbi-doc-admin form{
    display:flex;
    gap:5px;
}

.hsbi-message-preview{
    padding:12px 0;
    border-bottom:1px solid #EEF2F5;
}

.hsbi-message-preview strong{
    display:block;
    color:var(--hsbi);
    font-size:10px;
}

.hsbi-message-preview span{
    display:block;
    margin-top:3px;
    color:#4F5E72;
    font-size:10px;
}

.hsbi-message-preview p{
    margin:4px 0 0;
    color:#8B96A5;
    font-size:9px;
}

.hsbi-status-list>div{
    display:flex;
    justify-content:space-between;
    padding:11px 0;
    border-bottom:1px solid #EEF2F5;
    font-size:10px;
}

.ok{color:var(--hsbi-green)}
.warn{color:var(--hsbi-orange)}

.hsbi-success{
    margin-bottom:15px;
    padding:12px;
    border-radius:6px;
    background:#EAF9F1;
    color:#28734F;
}

/* Responsive */
@media(max-width:1100px){
    .hsbi-app-shell{grid-template-columns:200px 1fr}
    .hsbi-search input{width:280px}
    .hsbi-admin-kpis{grid-template-columns:repeat(2,1fr)}
    .hsbi-three-grid,.hsbi-candidate-layout,.hsbi-settings-layout{grid-template-columns:1fr 1fr}
    .hsbi-table{overflow:auto}
    .hsbi-table .head,.hsbi-table .line{min-width:760px}
}

@media(max-width:820px){
    .hsbi-auth-page{grid-template-columns:1fr;margin:20px}
    .hsbi-auth-visual{min-height:auto;padding:35px}
    .hsbi-auth-form{padding:35px}
    .hsbi-account-summary{grid-template-columns:repeat(2,1fr)}
    .hsbi-app-shell{grid-template-columns:1fr}
    .hsbi-app-sidebar{position:relative;height:auto}
    .hsbi-app-sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}
    .hsbi-side-help,.hsbi-side-foot{display:none}
    .hsbi-search input{display:none}
    .hsbi-userbox>div:last-child{display:none}
    .hsbi-two-col,.hsbi-three-grid,.hsbi-candidate-layout,.hsbi-settings-layout,.hsbi-message-layout,.hsbi-formation-big{grid-template-columns:1fr}
    .hsbi-summary-cards{grid-template-columns:1fr}
}

@media(max-width:560px){
    .hsbi-grid2,.hsbi-info-grid,.hsbi-account-summary{grid-template-columns:1fr}
    .hsbi-auth-form{padding:26px 20px}
    .hsbi-app-content{padding:18px 12px}
    .hsbi-app-topbar{padding:0 15px}
    .hsbi-admin-kpis{grid-template-columns:1fr}
    .hsbi-page-heading{flex-direction:column;gap:10px}
    .hsbi-pro-form section{grid-template-columns:1fr}
    .hsbi-pro-form section>b{padding:12px}
    .hsbi-app-sidebar nav{grid-template-columns:1fr}
}
\n\n/* V3.1 - progression dynamique */\n.hsbi-progress-status{margin-top:14px;padding:10px 12px;border-radius:6px;background:#F4F7FA;color:#667488;font-size:10px}\n.hsbi-progress-status strong{color:var(--hsbi)}\n.hsbi-progress-accepted{background:#EAF8F1;color:#277A55}.hsbi-progress-accepted strong{color:#277A55}\n.hsbi-progress-rejected{background:#FFF0F0;color:#A33B3B}.hsbi-progress-rejected strong{color:#A33B3B}\n.hsbi-progress-missing_documents{background:#FFF6E6;color:#9A6A20}.hsbi-progress-missing_documents strong{color:#9A6A20}\n.hsbi-progress-enrolled{background:#EAF3FF;color:#245E9B}.hsbi-progress-enrolled strong{color:#245E9B}\n

/* =========================================================
   V3.2 - Gestion frontend HSBI Formations
   ========================================================= */
.hsbi-primary-action,
.hsbi-secondary-action{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:40px;
    padding:10px 15px;
    border-radius:6px;
    text-decoration:none!important;
    font-size:10px;
    font-weight:700;
}
.hsbi-primary-action{
    background:var(--hsbi);
    color:#fff!important;
}
.hsbi-primary-action:hover{
    background:var(--hsbi-gold);
}
.hsbi-secondary-action{
    border:1px solid var(--hsbi-line);
    background:#fff;
    color:var(--hsbi)!important;
}
.hsbi-admin-subtext{
    margin:-8px 0 15px;
    color:#8390A1;
    font-size:9px;
}
.hsbi-formation-list-title{
    display:flex;
    align-items:center;
    gap:9px;
}
.hsbi-formation-list-title img{
    width:42px;
    height:42px;
    flex:none;
    border-radius:6px;
    object-fit:cover;
}
.hsbi-formation-list-title strong{
    display:block;
    color:var(--hsbi);
    font-size:10px;
}
.hsbi-formation-list-title small{
    display:block;
    margin-top:3px;
    color:#8B96A5;
    font-size:8px;
}
.hsbi-formation-actions{
    display:flex;
    align-items:center;
    gap:9px;
}
.hsbi-formation-status{
    display:inline-flex;
    padding:6px 8px;
    border-radius:999px;
    background:#F1F4F8;
    color:#627087;
    font-size:8px;
    font-weight:700;
}
.hsbi-formation-status-open{
    background:#E9F8F1;
    color:#287A56;
}
.hsbi-formation-status-limited{
    background:#FFF4DE;
    color:#94661D;
}
.hsbi-formation-status-full,
.hsbi-formation-status-closed{
    background:#FFF0F0;
    color:#A13C3C;
}
.hsbi-empty-row{
    padding:28px;
    text-align:center;
    color:#8290A1;
    font-size:10px;
}
.hsbi-formation-admin-form{
    display:grid;
    gap:16px;
}
.hsbi-formation-form-section{
    padding:0;
    overflow:hidden;
}
.hsbi-section-heading{
    display:flex;
    align-items:center;
    gap:14px;
    padding:18px 20px;
    border-bottom:1px solid var(--hsbi-line);
    background:#FBFCFE;
}
.hsbi-section-heading>span{
    width:34px;
    height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:none;
    border-radius:50%;
    background:#F1E6D0;
    color:#9A702C;
    font:700 11px Inter,Arial,sans-serif;
}
.hsbi-section-heading h3{
    margin:0 0 3px!important;
}
.hsbi-section-heading p{
    margin:0;
    color:#8190A2;
    font-size:9px;
}
.hsbi-admin-form-grid,
.hsbi-detail-editor-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px;
    padding:20px;
}
.hsbi-admin-field{
    display:grid;
    gap:7px;
    color:var(--hsbi);
    font-size:9px;
    font-weight:600;
}
.hsbi-admin-field-full{
    grid-column:1 / -1;
}
.hsbi-admin-field input,
.hsbi-admin-field select,
.hsbi-admin-field textarea{
    width:100%;
    border:1px solid #DCE3EA;
    border-radius:6px;
    padding:11px 12px;
    background:#fff;
    color:#33455C;
    font:400 11px Inter,Arial,sans-serif;
    outline:0;
}
.hsbi-admin-field textarea{
    resize:vertical;
    line-height:1.65;
}
.hsbi-admin-field input:focus,
.hsbi-admin-field select:focus,
.hsbi-admin-field textarea:focus{
    border-color:var(--hsbi-gold);
    box-shadow:0 0 0 3px rgba(198,161,91,.09);
}
.hsbi-admin-check{
    display:flex;
    align-items:center;
    gap:8px;
    padding:13px;
    border:1px solid #E4E9EF;
    border-radius:6px;
    background:#FAFCFE;
    color:var(--hsbi);
    font-size:10px;
    font-weight:600;
}
.hsbi-admin-check input{
    width:auto;
}
.hsbi-featured-upload{
    padding:20px;
}
.hsbi-current-featured{
    display:flex;
    align-items:center;
    gap:15px;
    margin-bottom:16px;
    padding:12px;
    border:1px solid var(--hsbi-line);
    border-radius:7px;
    background:#FAFCFE;
}
.hsbi-current-featured img{
    width:120px;
    height:78px;
    border-radius:6px;
    object-fit:cover;
}
.hsbi-current-featured strong{
    display:block;
    color:var(--hsbi);
    font-size:10px;
}
.hsbi-current-featured small{
    display:block;
    margin-top:5px;
    color:#8390A0;
    font-size:8px;
}
.hsbi-formation-publish-box{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}
.hsbi-formation-publish-box h3{
    margin:0 0 4px;
}
.hsbi-formation-publish-box p{
    margin:0;
    color:#7E8B9B;
    font-size:9px;
}
.hsbi-publish-actions{
    display:flex;
    align-items:center;
    gap:10px;
}
.hsbi-publish-actions select{
    min-width:115px;
    border:1px solid #DCE3EA;
    border-radius:5px;
    padding:10px;
    background:#fff;
    font-size:9px;
}
.hsbi-save-formation{
    border:0;
    border-radius:5px;
    padding:12px 16px;
    background:var(--hsbi);
    color:#fff;
    font-size:9px;
    font-weight:700;
    cursor:pointer;
}
.hsbi-save-formation:hover{
    background:var(--hsbi-gold);
}
@media(max-width:760px){
    .hsbi-admin-form-grid,
    .hsbi-detail-editor-grid{
        grid-template-columns:1fr;
    }
    .hsbi-admin-field-full{
        grid-column:auto;
    }
    .hsbi-formation-publish-box{
        align-items:stretch;
        flex-direction:column;
    }
    .hsbi-publish-actions{
        flex-direction:column;
        align-items:stretch;
    }
}
