*{box-sizing:border-box}
body{margin:0;background:#F6F1F1;color:#2A2946;font-family:"Host Grotesk","Helvetica Neue",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
html,body{height:100%;overflow:hidden}
a{color:#E8432D;text-decoration:none}
a:hover{color:#c4331e}
::selection{background:rgba(232,67,45,.16)}
:focus-visible{outline:2px solid #E8432D;outline-offset:2px}
input,textarea,select,button{font:inherit;color:inherit}
[data-view="demandes"] [data-tab="demandes"],[data-view="demande-detail"] [data-tab="demandes"],[data-view="devis"] [data-tab="demandes"],[data-view="candidats"] [data-tab="candidats"],[data-view="candidat-detail"] [data-tab="candidats"],[data-view="cvtheque"] [data-tab="cvtheque"],[data-view="offres"] [data-tab="offres"],[data-view="offre-edit"] [data-tab="offres"],[data-view="comptes"] [data-tab="comptes"],[data-view="compte-edit"] [data-tab="comptes"],[data-view="stats"] [data-tab="stats"]{background:#fff;color:#2A2946;box-shadow:0 1px 0 #ece5e6,0 10px 24px -18px rgba(42,41,70,.5)}
[data-view="cvtheque"] [data-side="cvtheque"],[data-view="offres"] [data-side="offres"],[data-view="offre-edit"] [data-side="offres"],[data-view="comptes"] [data-side="comptes"],[data-view="compte-edit"] [data-side="comptes"]{background:rgba(255,255,255,.1);color:#fff}
[data-view="demandes"] [data-side="demandes"],[data-view="demande-detail"] [data-side="demandes"],[data-view="devis"] [data-side="demandes"],[data-view="candidats"] [data-side="candidats"],[data-view="candidat-detail"] [data-side="candidats"],[data-view="stats"] [data-side="stats"]{background:rgba(255,255,255,.1);color:#fff}
[data-h]{display:none}
[data-view="demandes"] [data-h="demandes"],[data-view="candidats"] [data-h="candidats"],[data-view="cvtheque"] [data-h="cvtheque"],[data-view="offres"] [data-h="offres"],[data-view="comptes"] [data-h="comptes"],[data-view="stats"] [data-h="stats"],[data-view="demande-detail"] [data-h="demande-detail"],[data-view="candidat-detail"] [data-h="candidat-detail"],[data-view="mon-compte"] [data-h="mon-compte"],[data-view="offre-edit"] [data-h="offre-edit"],[data-view="devis"] [data-h="devis"],[data-view="compte-edit"] [data-h="compte-edit"]{display:block}
@keyframes gmoPulse{0%{box-shadow:0 0 0 0 rgba(47,158,107,.5)}70%{box-shadow:0 0 0 8px rgba(47,158,107,0)}100%{box-shadow:0 0 0 0 rgba(47,158,107,0)}}

[data-screen]{display:none}
[data-view="demandes"] [data-screen="demandes"],[data-view="candidats"] [data-screen="candidats"],[data-view="offres"] [data-screen="offres"],[data-view="cvtheque"] [data-screen="cvtheque"],[data-view="demande-detail"] [data-screen="demande-detail"],[data-view="candidat-detail"] [data-screen="candidat-detail"],[data-view="comptes"] [data-screen="comptes"],[data-view="stats"] [data-screen="stats"],[data-view="mon-compte"] [data-screen="mon-compte"],[data-view="offre-edit"] [data-screen="offre-edit"],[data-view="devis"] [data-screen="devis"],[data-view="compte-edit"] [data-screen="compte-edit"]{display:block}

/* pre-auth stage (login / forgot password / authenticated app) and role
   gating (Comptes is administrator-only) are driven entirely by
   backoffice-script.js setting inline `display` — several of the
   elements involved (the sidebar link, the pre-auth screens) already
   carry an inline `display` of their own, which would silently beat any
   attribute-selector rule added here, so the toggling lives in JS
   instead of CSS for those. */

.app-shell{height:100vh;min-height:0!important;overflow:hidden!important}
.app-sidebar{z-index:2}
.app-workspace{height:100vh;min-height:0;display:flex;flex-direction:column}
.app-header{flex:none;background:#F6F1F1;position:relative;z-index:1}
.app-content{flex:1;min-height:0;overflow-y:auto;overflow-x:auto;scrollbar-gutter:stable}

.app-sidebar{transition:width .2s ease,padding .2s ease}
.app-sidebar[data-collapsed="true"]{width:84px!important;padding:30px 16px!important}
.app-sidebar[data-collapsed="true"] #sidebar-logo-row{justify-content:center;padding:0 0 24px}
.app-sidebar[data-collapsed="true"] #sidebar-brand-text{display:none}
.app-sidebar[data-collapsed="true"] nav a{justify-content:center;padding:12px!important}
.app-sidebar[data-collapsed="true"] nav a>span:first-of-type{display:none}
.app-sidebar[data-collapsed="true"] nav a>span:last-of-type{display:none}
.app-sidebar[data-collapsed="true"]>div[style*="flex:1"]{display:none}
.app-sidebar[data-collapsed="true"]>div[style*="rgba(255,255,255,.06)"]{display:none}
.app-sidebar[data-collapsed="true"]>a[href="backoffice-mobile.html"] span,
.app-sidebar[data-collapsed="true"]>a[href="index.html"] span{display:none}
.app-sidebar[data-collapsed="true"]>a[href="backoffice-mobile.html"],
.app-sidebar[data-collapsed="true"]>a[href="index.html"]{justify-content:center}
#sidebar-toggle-icon{transition:transform .2s ease}
.app-sidebar[data-collapsed="true"] #sidebar-toggle-icon{transform:rotate(180deg)}
.app-sidebar[data-collapsed="true"] #sidebar-account-row{justify-content:center;padding-left:0;padding-right:0}
.app-sidebar[data-collapsed="true"] #sidebar-account-text,
.app-sidebar[data-collapsed="true"] #sidebar-account-row [data-action="logout"]{display:none}
.app-sidebar[data-collapsed="true"] #sidebar-account-row [data-user-btn]{flex:none}

.cvtheque-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;align-items:stretch}
.cvtheque-card{display:flex;flex-direction:column;height:100%}
.cvtheque-card-tags{max-height:76px;overflow-y:auto}
.cvtheque-card-footer{margin-top:auto;padding-top:18px}
@media (max-width:1500px){.cvtheque-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1100px){.cvtheque-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.cvtheque-grid{grid-template-columns:1fr}}

@media (max-width:900px){
	.app-sidebar{width:210px!important;padding:22px 14px!important}
	.app-content{padding-left:24px!important;padding-right:24px!important}
}

@media (max-width:700px){
	html,body{overflow:auto}
	.app-shell{height:auto;min-height:100vh!important;overflow:visible!important;display:block!important}
	.app-sidebar{width:100%!important;height:auto!important;position:relative!important;border-radius:0!important;padding:16px!important}
	.app-sidebar nav{flex-direction:row;overflow-x:auto;padding-bottom:2px}
	.app-sidebar nav a{flex:none;padding:10px!important}
	.app-sidebar nav a>span:first-of-type{display:none}
	.app-sidebar nav a>span:last-of-type{display:none}
	.app-sidebar>div[style*="flex:1"]{display:none}
	.app-sidebar>div[style*="rgba(255,255,255,.06)"]{display:none}
	.app-sidebar>a[href="index.html"]{display:none}
	.app-workspace{height:auto;min-height:calc(100vh - 88px)}
	.app-header{padding-top:22px!important}
	.app-content{overflow:visible;flex:none}
}
