*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#061020 url('wallpaper.jpg') center/cover fixed;color:#fff}a{color:inherit;text-decoration:none}.sidebar{position:fixed;left:0;top:0;bottom:0;width:230px;background:rgba(6,12,24,.92);border-right:1px solid rgba(255,255,255,.08);padding:20px;z-index:2}.brand{display:flex;align-items:center;gap:10px;margin-bottom:25px}.brand img{width:58px}.sidebar nav a{display:block;padding:12px 14px;border-radius:12px;margin:6px 0;color:#dbeafe}.sidebar nav a:hover,.active{background:rgba(0,117,255,.25)}.main{margin-left:230px;padding:35px;min-height:100vh}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:22px}.card{background:rgba(14,18,25,.86);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:24px;box-shadow:0 12px 40px rgba(0,0,0,.35);backdrop-filter:blur(6px)}.card p{color:#d2d8e8}.two{display:grid;grid-template-columns:360px 1fr;gap:24px}.form input,.form textarea,.search input{width:100%;padding:13px;margin:8px 0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}button,.btn,.compose{display:inline-block;border:0;background:#0075ff;color:#fff;padding:12px 16px;border-radius:12px;font-weight:700;cursor:pointer}.secondary{background:#18324e}.danger{background:#b42323}.flash{padding:14px;border-radius:12px;margin:12px 0;background:#113f2b;color:#b7ffd4}.flash.err{background:#4b1111;color:#ffd0d0}.login-bg{display:grid;place-items:center;min-height:100vh;background:#061020}.login-card{width:min(420px,92vw);background:#111827;padding:34px;border-radius:24px;text-align:center}.login-card img{width:140px}.login-card input{width:100%;padding:14px;margin:8px 0;border-radius:12px;border:1px solid #26364d;background:#0a1220;color:#fff}.mail-layout{display:grid;grid-template-columns:240px 1fr;gap:22px}.mail-side a{display:block;padding:12px;border-radius:12px;margin:4px 0}.mail-main{min-height:720px}.mail-row{display:grid;grid-template-columns:1.4fr 1fr 190px;gap:15px;align-items:center;padding:14px;border-bottom:1px solid rgba(255,255,255,.08);color:#dbeafe}.mail-row.unread{background:rgba(0,117,255,.14);font-weight:800}.mail-row p{grid-column:1/-1;margin:0;color:#b8c4d8}.search{display:flex;gap:8px;margin:12px 0}.mail-frame{width:100%;height:520px;border:0;background:#fff;border-radius:14px;margin-top:20px}.pill{display:inline-block;background:#0d314f;padding:10px 12px;border-radius:999px;margin:4px}.actions{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}@media(max-width:900px){.sidebar{position:static;width:auto}.main{margin:0;padding:18px}.two,.mail-layout{grid-template-columns:1fr}.mail-row{grid-template-columns:1fr}.brand img{width:44px}}
.copy-input{width:100%;padding:13px;margin:8px 0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.event{padding:10px 0;line-height:1.7}
.event a{color:#9ed8ff;text-decoration:underline}

.signature-preview{background:#fff;color:#111827;border-radius:14px;padding:16px;margin:14px 0}.signature-preview h3{margin-top:0;color:#111827}.form label{font-weight:700;color:#dbeafe}

.form select{width:100%;padding:13px;margin:8px 0 14px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.contacts-list{display:grid;gap:14px}
.contact-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px}
.contact-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.contact-head small{display:block;color:#aeb9cc;margin-top:4px}
.contact-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.small{padding:8px 10px;font-size:13px;border-radius:10px}
.tag{display:inline-block;background:#0075ff;color:#fff;padding:4px 8px;border-radius:999px;font-size:12px;margin-left:8px}
.contact-info{line-height:1.7;color:#dbeafe;margin-top:12px}
.contact-info a{color:#9ed8ff;text-decoration:underline}
.contact-info p{margin:8px 0 0;color:#cbd5e1}
@media(max-width:900px){.contact-head{display:block}.contact-actions{justify-content:flex-start;margin-top:10px}.contacts-two{grid-template-columns:1fr}}

.map-shell{display:grid;grid-template-columns:330px 1fr;gap:18px;height:calc(100vh - 130px)}
.map-panel{overflow:auto;padding:18px}
.map-card{background:rgba(14,18,25,.86);border:1px solid rgba(255,255,255,.08);border-radius:20px;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.35)}
#mcbMap{width:100%;height:100%;min-height:650px;color:#111827}
.map-search{display:flex;gap:8px;margin:12px 0}
.map-search input{width:100%;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.map-list{display:grid;gap:10px;margin-top:15px}
.map-list-item{display:block;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}
.map-list-item b{display:block}
.map-list-item span{display:inline-block;background:#0075ff;color:#fff;border-radius:999px;padding:3px 8px;font-size:12px;margin:4px 0}
.map-list-item small{display:block;color:#cbd5e1}
.mcb-popup{font-family:Arial,Helvetica,sans-serif;min-width:230px}
.mcb-popup b{display:block;font-size:16px;color:#111827}
.mcb-popup span{display:inline-block;background:#0075ff;color:white;border-radius:999px;padding:3px 8px;font-size:12px;margin-top:5px}
.mcb-popup p{margin:6px 0;color:#1f2937}
.popup-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.popup-btn{background:#0075ff;color:white!important;text-decoration:none;border-radius:8px;padding:7px 9px;font-weight:700}
@media(max-width:1000px){.map-shell{grid-template-columns:1fr;height:auto}.map-card{height:70vh}.map-panel{max-height:none}#mcbMap{min-height:520px}}

.file-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:18px}
.file-toolbar a{color:#9ed8ff;text-decoration:underline}
.file-list{display:grid;gap:12px}
.file-row{display:grid;grid-template-columns:minmax(220px,1fr) 310px minmax(420px,auto);gap:10px;align-items:center;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px}
.file-name{color:#eaf2ff}
.file-name small{color:#aeb9cc;margin-left:8px}
.inline-rename{display:flex;gap:8px}
.inline-rename input{width:100%;padding:9px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.inline-delete{display:flex;justify-content:flex-end}
.inline-actions{display:flex;justify-content:flex-end;gap:8px;align-items:center;flex-wrap:wrap}
.inline-actions form{margin:0}.inline-move{display:flex;gap:6px;align-items:center}.inline-move select{max-width:150px;padding:8px 9px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
button.success,.btn.success{background:#14b86a;color:#fff}
@media(max-width:1100px){.file-row{grid-template-columns:1fr}.inline-delete,.inline-actions{justify-content:flex-start}.file-toolbar{display:block}.files-two{grid-template-columns:1fr}}

.notes-list{display:grid;gap:14px}
.note-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px}
.note-card.pinned{border-color:#0075ff;background:rgba(0,117,255,.10)}
.note-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.note-head small{display:block;color:#aeb9cc;margin-top:6px}
.note-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.note-body{margin-top:12px;color:#dbeafe;line-height:1.6;white-space:normal}
.checkbox-line{display:flex;align-items:center;gap:8px;margin:8px 0 14px}
.checkbox-line input{width:auto;margin:0}
@media(max-width:900px){.note-head{display:block}.note-actions{justify-content:flex-start;margin-top:10px}.notes-two{grid-template-columns:1fr}}

.top-toolbar{position:fixed;top:0;left:230px;right:0;height:52px;background:rgba(5,12,24,.92);border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:12px;padding:0 18px;z-index:5;overflow:auto}
.toolbar-link{display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;min-width:58px}
.toolbar-link span{font-size:20px}
.toolbar-link small{font-size:11px;white-space:nowrap;max-width:70px;overflow:hidden;text-overflow:ellipsis}
.main{margin-top:52px}
.settings-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:20px}
.toolbar-item{display:grid;grid-template-columns:90px 1fr 2fr;gap:10px;margin-bottom:10px}
.toolbar-item input{width:100%;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.toolbar-preview{display:flex;gap:10px;flex-wrap:wrap}
.toolbar-preview-item{background:rgba(255,255,255,.05);padding:12px;border-radius:12px;display:flex;flex-direction:column;align-items:center;min-width:70px}
.toolbar-preview-item span{font-size:22px}
@media(max-width:900px){
.top-toolbar{left:0}
.settings-grid{grid-template-columns:1fr}
.toolbar-item{grid-template-columns:1fr}
}

.toolbar-item button{height:44px;margin-top:auto}

.settings-grid input,.settings-grid textarea,.settings-grid select{width:100%;padding:12px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff;margin:6px 0 12px}
.sig-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.sig-grid .wide{grid-column:1/-1}
.signature-preview-light{background:#f8fafc;border-radius:14px;padding:18px;overflow:auto}
.settings-grid h3{margin:18px 0 8px;color:#fff}
@media(max-width:900px){.sig-grid{grid-template-columns:1fr}}

.receipt-box{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;margin:12px 0}
.move-form{display:flex;gap:8px;align-items:center}.move-form select,.bulk-actions select{padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.folder-grid{display:grid;grid-template-columns:330px 1fr;gap:18px}.folder-row{display:grid;grid-template-columns:1fr 310px auto;gap:10px;align-items:center;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:12px;margin-bottom:10px}
.storage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.storage-card{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:18px}.storage-card b,.storage-card span,.storage-card small{display:block}.storage-card span{font-size:28px;font-weight:800;color:#9ed8ff;margin:10px 0}.storage-card small{color:#cbd5e1}
.bulk-actions{display:flex;gap:8px;margin:12px 0;align-items:center}.mail-row{grid-template-columns:34px 1fr!important}.mail-row>a{display:grid;grid-template-columns:1.4fr 1fr 190px;gap:15px;align-items:center}
@media(max-width:1000px){.folder-grid{grid-template-columns:1fr}.folder-row{grid-template-columns:1fr}.mail-row>a{grid-template-columns:1fr}.move-form,.bulk-actions{display:block}.move-form select,.bulk-actions select{width:100%;margin-bottom:8px}}

.warning{background:#b7791f;color:#fff;border:0;padding:12px 16px;border-radius:12px;font-weight:700;cursor:pointer}

.mail-headline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.empty-mail{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:20px;color:#dbeafe}
.empty-mail p{color:#cbd5e1}

.sync-info{background:rgba(0,117,255,.10);border:1px solid rgba(0,117,255,.25);border-radius:12px;padding:10px 12px;margin:10px 0 18px;color:#cfe8ff}

.folder-debug{padding:10px;border-bottom:1px solid rgba(255,255,255,.08)}.folder-debug small{display:block;color:#9fb0c8;margin-top:4px}

.mail-pagination{display:flex;gap:12px;align-items:center;justify-content:center;margin:18px 0;flex-wrap:wrap}
.mail-pagination span{color:#cbd5e1;font-weight:700}


/* V35 - Correction mobile messagerie */
@media (max-width: 900px) {
  body {
    overflow-x: hidden;
  }

  .main {
    padding: 12px !important;
  }

  .mail-layout {
    display: block !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  .mail-side {
    position: relative !important;
    width: 100% !important;
    margin-bottom: 12px !important;
    padding: 12px !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
    -webkit-overflow-scrolling: touch;
  }

  .mail-side a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 4px !important;
    padding: 10px 12px !important;
    min-height: 42px;
    white-space: nowrap !important;
  }

  .mail-side hr {
    display: none !important;
  }

  .compose {
    display: inline-flex !important;
  }

  .mail-main {
    width: 100% !important;
    min-height: auto !important;
    padding: 14px !important;
    overflow-x: hidden !important;
  }

  .mail-main h1,
  .mail-main h2 {
    font-size: 22px !important;
    line-height: 1.25 !important;
    word-break: break-word;
  }

  .mail-headline {
    display: block !important;
  }

  .mail-headline .actions,
  .actions,
  .bulk-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: stretch !important;
  }

  .actions a,
  .actions button,
  .bulk-actions button,
  .bulk-actions select,
  .btn,
  button {
    width: auto;
    max-width: 100%;
  }

  .search {
    display: flex !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .search input {
    min-width: 0 !important;
    flex: 1 1 180px !important;
  }

  .mail-list {
    width: 100% !important;
  }

  .mail-row {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    gap: 8px !important;
    align-items: start !important;
    padding: 12px !important;
  }

  .mail-row > a {
    display: block !important;
    min-width: 0 !important;
  }

  .mail-row b,
  .mail-row span,
  .mail-row small {
    display: block !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    margin-bottom: 4px !important;
  }

  .move-form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    width: 100% !important;
  }

  .move-form select {
    flex: 1 1 180px !important;
    min-width: 0 !important;
  }

  .mail-frame {
    height: 60vh !important;
    min-height: 360px !important;
    width: 100% !important;
  }

  .folder-grid {
    display: block !important;
  }

  .folder-row {
    display: block !important;
    padding: 12px !important;
  }

  .folder-row form,
  .inline-rename {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-top: 8px !important;
  }

  .inline-rename input {
    flex: 1 1 170px !important;
    min-width: 0 !important;
  }

  .storage-grid,
  .settings-grid,
  .two {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 520px) {
  .mail-side {
    padding: 10px !important;
  }

  .mail-side a {
    font-size: 14px !important;
    padding: 9px 10px !important;
  }

  .mail-main {
    padding: 12px !important;
    border-radius: 14px !important;
  }

  .actions a,
  .actions button,
  .bulk-actions button,
  .btn,
  button {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .bulk-actions select,
  .move-form select {
    width: 100% !important;
  }

  .mail-row {
    padding: 10px !important;
  }
}


/* V36 - Impression mail */
@media print {
  body {
    background: #fff !important;
    color: #000 !important;
  }

  .sidebar,
  .top-toolbar,
  .mail-side,
  .actions,
  .search,
  .bulk-actions,
  .sync-info,
  .flash,
  .mail-headline,
  nav {
    display: none !important;
  }

  .main,
  .mail-main,
  .card {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    box-shadow: none !important;
    border: none !important;
    background: #fff !important;
    color: #000 !important;
  }

  .mail-layout {
    display: block !important;
  }

  .mail-frame {
    width: 100% !important;
    height: 900px !important;
    border: none !important;
    background: #fff !important;
  }

  a {
    color: #000 !important;
  }
}


/* V37 - Icônes propres + tout cocher */
.ui-icon{
  display:inline-flex;
  width:18px;
  height:18px;
  margin-right:8px;
  vertical-align:-3px;
  flex:0 0 auto;
}
.ui-icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.mail-side a,
.compose{
  gap:6px;
  align-items:center;
}
.mail-row b .ui-icon,
.mail-row .ui-icon{
  color:#f5c542;
}
.pill .ui-icon{
  color:inherit;
}
.select-all-bar{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  padding:10px 12px;
  margin:10px 0;
}
.select-all-bar label{
  display:flex;
  align-items:center;
  gap:8px;
  color:#dbeafe;
  font-weight:700;
}
.select-all-bar input{
  width:18px;
  height:18px;
}


/* V38 - Icônes SVG sur tout le dashboard */
.sidebar nav a,
.card b,
.card h2,
.card h3,
.file-name,
.contact-info div,
.event,
.map-list-item,
.toolbar-link{
  display:flex;
  align-items:center;
  gap:8px;
}
.sidebar nav a .ui-icon{
  color:#9ed8ff;
}
.card .ui-icon{
  color:#9ed8ff;
}
button .ui-icon,
.btn .ui-icon{
  margin-right:6px;
}

/* V40 perf messagerie */
.mail-list{contain:layout style paint}
.mail-row{will-change:auto}
.mail-content{background:#fff;color:#111;padding:16px;border-radius:14px;overflow:auto;max-width:100%}


/* V41 - Correction affichage Carte clients / chantiers */
.map-shell{
  grid-template-columns: 340px minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 18px !important;
  max-width: 100% !important;
}
.map-panel{
  min-width: 0 !important;
  max-width: 340px !important;
  overflow-x: hidden !important;
}
.map-card{
  min-width: 0 !important;
}
#mcbMap{
  min-width: 0 !important;
}
.map-search{
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  gap: 8px !important;
}
.map-search input{
  min-width: 0 !important;
  width: 100% !important;
}
.map-list{
  display: grid !important;
  gap: 10px !important;
  margin-top: 14px !important;
}
.map-list-item{
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px !important;
  overflow: hidden !important;
  white-space: normal !important;
}
.map-client-head{
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  margin-bottom: 8px !important;
}
.map-client-head b{
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  line-height: 1.2 !important;
}
.map-client-tag{
  flex: 0 0 auto !important;
  background: #0075ff !important;
  color: #fff !important;
  border-radius: 999px !important;
  padding: 3px 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}
.map-client-line{
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  min-width: 0 !important;
  margin-top: 7px !important;
  line-height: 1.35 !important;
}
.map-client-line .ui-icon{
  flex: 0 0 16px !important;
  width: 16px !important;
  height: 16px !important;
  margin-right: 0 !important;
  color: #4da3ff !important;
}
.map-client-line small,
.map-client-line a{
  min-width: 0 !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
  color: #dbeafe !important;
  text-decoration: none !important;
}
.map-panel p{
  line-height: 1.3 !important;
}
@media(max-width: 1100px){
  .map-shell{
    grid-template-columns: 1fr !important;
    height: auto !important;
  }
  .map-panel{
    max-width: none !important;
    width: 100% !important;
  }
  .map-card{
    height: 70vh !important;
  }
}
@media(max-width: 560px){
  .map-search{
    grid-template-columns: 1fr !important;
  }
  .map-search button,
  .map-panel .actions .btn{
    width: 100% !important;
  }
  .map-panel .actions{
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .map-card{
    height: 62vh !important;
  }
}


/* V43 - Popup carte redesign pro */
.leaflet-popup-content-wrapper{
  background:#ffffff !important;
  border-radius:24px !important;
  padding:0 !important;
  overflow:hidden !important;
  box-shadow:0 20px 60px rgba(0,0,0,.28) !important;
}

.leaflet-popup-content{
  margin:0 !important;
  min-width:320px !important;
  max-width:380px !important;
  font-family:inherit !important;
}

.leaflet-popup-tip{
  background:#fff !important;
}

.mcb-popup{
  padding:22px !important;
  color:#111827 !important;
}

.mcb-popup-top{
  display:flex !important;
  align-items:flex-start !important;
  gap:14px !important;
  margin-bottom:18px !important;
}

.mcb-popup-logo{
  width:64px !important;
  height:64px !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#0077ff,#0052cc) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
}

.mcb-popup-logo svg{
  width:34px !important;
  height:34px !important;
  stroke:#fff !important;
}

.mcb-popup-title{
  flex:1 !important;
  min-width:0 !important;
}

.mcb-popup-title h3{
  margin:0 0 8px 0 !important;
  font-size:34px !important;
  line-height:1 !important;
  font-weight:800 !important;
  color:#0f172a !important;
  overflow-wrap:anywhere !important;
}

.mcb-popup-tag{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#0b74ff !important;
  color:#fff !important;
  border-radius:999px !important;
  padding:6px 12px !important;
  font-size:13px !important;
  font-weight:700 !important;
}

.mcb-popup-lines{
  display:grid !important;
  gap:0 !important;
  border-top:1px solid #e5e7eb !important;
  border-bottom:1px solid #e5e7eb !important;
}

.mcb-popup-line{
  display:flex !important;
  align-items:flex-start !important;
  gap:14px !important;
  padding:18px 0 !important;
}

.mcb-popup-line + .mcb-popup-line{
  border-top:1px solid #eef2f7 !important;
}

.mcb-popup-line .ui-icon{
  width:22px !important;
  height:22px !important;
  flex:0 0 22px !important;
  margin:0 !important;
  color:#0b74ff !important;
}

.mcb-popup-line .ui-icon svg{
  stroke:#0b74ff !important;
}

.mcb-popup-line span,
.mcb-popup-line a{
  color:#111827 !important;
  text-decoration:none !important;
  font-size:15px !important;
  line-height:1.45 !important;
  overflow-wrap:anywhere !important;
}

.mcb-popup-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:10px !important;
  margin-top:20px !important;
}

.mcb-popup-btn{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  border-radius:14px !important;
  padding:14px 10px !important;
  text-decoration:none !important;
  font-weight:700 !important;
  transition:.2s ease !important;
}

.mcb-popup-btn.primary{
  background:#0b74ff !important;
  color:#fff !important;
}

.mcb-popup-btn.secondary{
  background:#f8fafc !important;
  color:#0f172a !important;
  border:1px solid #dbe4ef !important;
}

.mcb-popup-btn:hover{
  transform:translateY(-1px) !important;
}

.mcb-popup-btn .ui-icon{
  margin:0 !important;
  width:18px !important;
  height:18px !important;
}

.mcb-popup-btn.primary .ui-icon svg{
  stroke:#fff !important;
}

@media(max-width:560px){
  .leaflet-popup-content{
    min-width:280px !important;
    max-width:320px !important;
  }

  .mcb-popup{
    padding:18px !important;
  }

  .mcb-popup-title h3{
    font-size:28px !important;
  }

  .mcb-popup-actions{
    grid-template-columns:1fr !important;
  }
}


/* V44 - Carte clients/chantiers correction approfondie */
.map-shell{
  display:grid !important;
  grid-template-columns:340px minmax(0,1fr) !important;
  gap:18px !important;
  align-items:stretch !important;
}
.map-panel{
  max-width:340px !important;
  min-width:0 !important;
  overflow:hidden !important;
}
.map-card{
  min-width:0 !important;
  overflow:hidden !important;
}
#mcbMap{
  width:100% !important;
  min-width:0 !important;
}
.map-list{
  display:grid !important;
  gap:12px !important;
  margin-top:14px !important;
}
.map-list-item{
  display:block !important;
  padding:14px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  overflow:hidden !important;
  white-space:normal !important;
}
.map-client-head{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-bottom:10px !important;
}
.map-client-head b{
  color:#fff !important;
  font-weight:800 !important;
  font-size:15px !important;
  line-height:1.25 !important;
  overflow-wrap:anywhere !important;
}
.map-client-tag{
  display:inline-flex !important;
  align-items:center !important;
  border-radius:999px !important;
  padding:3px 9px !important;
  background:#0b74ff !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:700 !important;
}
.map-client-line{
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;
  margin-top:8px !important;
  min-width:0 !important;
}
.map-client-line .ui-icon{
  width:17px !important;
  height:17px !important;
  flex:0 0 17px !important;
  margin:1px 0 0 0 !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}
.map-client-line .ui-icon svg{
  width:17px !important;
  height:17px !important;
  stroke:#58a9ff !important;
  fill:none !important;
}
.map-client-line small,
.map-client-line a{
  color:#dbeafe !important;
  text-decoration:none !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}

/* Popup Leaflet propre */
.leaflet-popup-content-wrapper{
  background:#fff !important;
  color:#111827 !important;
  border-radius:22px !important;
  padding:0 !important;
  box-shadow:0 22px 70px rgba(0,0,0,.28) !important;
  overflow:hidden !important;
}
.leaflet-popup-content{
  margin:0 !important;
  width:340px !important;
  max-width:340px !important;
  font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif !important;
}
.leaflet-popup-tip{
  background:#fff !important;
}
.leaflet-popup-close-button{
  color:#6b7280 !important;
  font-size:22px !important;
  top:12px !important;
  right:12px !important;
}
.mcb-popup-pro{
  padding:22px !important;
}
.mcb-popup-pro-header{
  display:flex !important;
  gap:14px !important;
  align-items:center !important;
  padding-right:24px !important;
}
.mcb-popup-pro-avatar{
  width:58px !important;
  height:58px !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#0b74ff,#005ad7) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 58px !important;
}
.mcb-popup-pro-avatar .map-svg{
  width:31px !important;
  height:31px !important;
  stroke:#fff !important;
}
.mcb-popup-pro-title{
  min-width:0 !important;
}
.mcb-popup-pro-title strong{
  display:block !important;
  color:#111827 !important;
  font-size:22px !important;
  font-weight:850 !important;
  line-height:1.1 !important;
  overflow-wrap:anywhere !important;
}
.mcb-popup-pro-title span{
  display:inline-flex !important;
  margin-top:7px !important;
  background:#0b74ff !important;
  color:#fff !important;
  padding:4px 10px !important;
  border-radius:999px !important;
  font-size:13px !important;
  font-weight:750 !important;
}
.mcb-popup-pro-company{
  color:#374151 !important;
  font-size:14px !important;
  margin:18px 0 0 !important;
  padding-top:16px !important;
  border-top:1px solid #e5e7eb !important;
}
.mcb-popup-pro-info{
  margin-top:16px !important;
  border-top:1px solid #e5e7eb !important;
}
.mcb-popup-pro-row{
  display:flex !important;
  align-items:flex-start !important;
  gap:13px !important;
  padding:14px 0 !important;
  border-bottom:1px solid #eef2f7 !important;
}
.mcb-popup-pro-row p{
  margin:0 !important;
  color:#111827 !important;
  font-size:14px !important;
  line-height:1.45 !important;
  overflow-wrap:anywhere !important;
}
.mcb-popup-pro-row a{
  color:#111827 !important;
  text-decoration:none !important;
}
.map-svg{
  width:20px !important;
  height:20px !important;
  fill:none !important;
  stroke:#0b74ff !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  flex:0 0 auto !important;
}
.mcb-popup-pro-actions{
  display:grid !important;
  grid-template-columns:1fr 1fr 1fr !important;
  gap:8px !important;
  margin-top:18px !important;
}
.mcb-popup-pro-actions a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:7px !important;
  min-height:44px !important;
  border-radius:12px !important;
  text-decoration:none !important;
  font-weight:750 !important;
  font-size:14px !important;
  background:#f8fafc !important;
  color:#0f172a !important;
  border:1px solid #dbe4ef !important;
}
.mcb-popup-pro-actions a.primary{
  background:#0b74ff !important;
  color:#fff !important;
  border-color:#0b74ff !important;
}
.mcb-popup-pro-actions a.primary .map-svg{
  stroke:#fff !important;
}
@media(max-width:1100px){
  .map-shell{grid-template-columns:1fr !important}
  .map-panel{max-width:none !important}
}
@media(max-width:560px){
  .leaflet-popup-content{width:292px !important;max-width:292px !important}
  .mcb-popup-pro{padding:18px !important}
  .mcb-popup-pro-actions{grid-template-columns:1fr !important}
}


/* V45 - Carte : pagination 10 adresses par page */
.map-count-box{
  margin:16px 0 10px !important;
  display:grid !important;
  gap:2px !important;
}
.map-count-box strong{
  color:#fff !important;
  font-size:18px !important;
  line-height:1 !important;
}
.map-count-box span{
  color:#dbeafe !important;
}
.map-count-detail{
  color:#9fb0c8 !important;
  font-size:12px !important;
  margin-top:4px !important;
}
.map-pagination{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  margin:16px 0 4px !important;
  flex-wrap:wrap !important;
}
.map-pagination span{
  color:#dbeafe !important;
  font-weight:800 !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  padding:10px 12px !important;
  border-radius:12px !important;
}
.map-pagination .btn{
  min-height:40px !important;
}


/* V46 - Pagination Contacts clients + Carte adresses détectées */
.contacts-count-box,
.map-count-box{
  margin:16px 0 12px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  display:grid !important;
  gap:3px !important;
}
.contacts-count-box strong,
.map-count-box strong{
  color:#fff !important;
  font-size:20px !important;
  line-height:1 !important;
}
.contacts-count-box span,
.map-count-box span{
  color:#dbeafe !important;
  font-weight:700 !important;
}
.contacts-count-box small,
.map-count-detail{
  color:#9fb0c8 !important;
  font-size:12px !important;
}
.contacts-pagination,
.map-pagination{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  margin:18px 0 4px !important;
  flex-wrap:wrap !important;
}
.contacts-pagination span,
.map-pagination span{
  color:#dbeafe !important;
  font-weight:800 !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  padding:10px 12px !important;
  border-radius:12px !important;
}


/* V47 - Carte scroll propre + filtre catégorie contacts */
.map-panel{
  display:flex !important;
  flex-direction:column !important;
  max-height:calc(100vh - 130px) !important;
  overflow:hidden !important;
}
.map-list{
  flex:1 1 auto !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:6px !important;
  min-height:0 !important;
  max-height:none !important;
  scrollbar-width:thin;
}
.map-list::-webkit-scrollbar{width:8px}
.map-list::-webkit-scrollbar-thumb{background:rgba(158,216,255,.35);border-radius:999px}
.map-pagination{
  flex:0 0 auto !important;
  position:sticky !important;
  bottom:0 !important;
  background:#0b1424 !important;
  padding:12px 0 4px !important;
  z-index:5 !important;
}
.map-count-box{
  flex:0 0 auto !important;
}
.map-panel > p,
.map-panel .old-count,
.map-panel > br{
  display:none !important;
}
.contact-category-filter{
  display:flex !important;
  align-items:end !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin:12px 0 18px !important;
  padding:12px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
}
.contact-category-filter label{
  color:#dbeafe !important;
  font-weight:800 !important;
  display:block !important;
  width:100% !important;
}
.contact-category-filter select{
  min-width:220px !important;
  padding:12px !important;
  border-radius:12px !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:#0d1728 !important;
  color:#fff !important;
}
@media(max-width:1100px){
  .map-panel{
    max-height:none !important;
    overflow:visible !important;
  }
  .map-list{
    max-height:420px !important;
  }
}
@media(max-width:560px){
  .contact-category-filter select,
  .contact-category-filter .btn{
    width:100% !important;
  }
}


/* V48 - Correction écrasement fiches carte + filtre catégorie fiable */
.map-panel{
  display:flex !important;
  flex-direction:column !important;
  max-height:calc(100vh - 135px) !important;
  overflow:hidden !important;
}
.map-list-wrap{
  display:flex !important;
  flex-direction:column !important;
  min-height:0 !important;
  flex:1 1 auto !important;
  overflow:hidden !important;
  margin-top:12px !important;
}
.map-list{
  display:block !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:8px !important;
  max-height:none !important;
}
.map-list-item{
  display:block !important;
  flex:none !important;
  height:auto !important;
  min-height:116px !important;
  padding:14px !important;
  margin:0 0 12px 0 !important;
  border-radius:16px !important;
  overflow:visible !important;
  box-sizing:border-box !important;
}
.map-client-head{
  min-height:24px !important;
}
.map-client-line{
  min-height:22px !important;
}
.map-pagination{
  flex:0 0 auto !important;
  position:relative !important;
  bottom:auto !important;
  background:#0b1424 !important;
  padding:12px 0 2px !important;
  margin:0 !important;
  z-index:2 !important;
}
@media(max-width:1100px){
  .map-panel{
    max-height:none !important;
    overflow:visible !important;
  }
  .map-list-wrap{
    overflow:visible !important;
  }
  .map-list{
    max-height:520px !important;
  }
}


/* V52 - Reconstruction propre Carte clients/chantiers */
.map-shell-v52{
  display:grid !important;
  grid-template-columns:340px minmax(0,1fr) !important;
  gap:18px !important;
  align-items:stretch !important;
  max-width:100% !important;
}
.map-shell-v52 .map-panel{
  display:flex !important;
  flex-direction:column !important;
  max-width:340px !important;
  min-width:0 !important;
  max-height:calc(100vh - 150px) !important;
  overflow:hidden !important;
}
.map-shell-v52 .map-card{
  min-width:0 !important;
  height:calc(100vh - 150px) !important;
  overflow:hidden !important;
  padding:0 !important;
}
#mcbMap{
  width:100% !important;
  height:100% !important;
  min-height:640px !important;
  border-radius:18px !important;
  overflow:hidden !important;
}
.map-search{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  gap:8px !important;
  margin:16px 0 !important;
}
.map-search input{
  min-width:0 !important;
  width:100% !important;
}
.map-actions{
  display:flex !important;
  gap:10px !important;
  flex-wrap:wrap !important;
  margin-bottom:14px !important;
}
.map-count-box{
  flex:0 0 auto !important;
  margin:0 0 12px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  display:grid !important;
  gap:3px !important;
}
.map-count-box strong{color:#fff !important;font-size:20px !important;line-height:1 !important}
.map-count-box span{color:#dbeafe !important;font-weight:800 !important}
.map-count-box small{color:#9fb0c8 !important;font-size:12px !important}
.map-list-wrap{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow:hidden !important;
}
.map-list{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:8px !important;
}
.map-list::-webkit-scrollbar{width:8px}
.map-list::-webkit-scrollbar-thumb{background:rgba(158,216,255,.35);border-radius:999px}
.map-list-item{
  display:block !important;
  width:100% !important;
  text-align:left !important;
  cursor:pointer !important;
  appearance:none !important;
  -webkit-appearance:none !important;
  font:inherit !important;
  color:inherit !important;
  padding:14px !important;
  margin:0 0 12px 0 !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  box-sizing:border-box !important;
}
.map-list-item:hover{border-color:rgba(77,163,255,.55) !important;background:rgba(77,163,255,.09) !important}
.map-list-item.active{border-color:#0b74ff !important;box-shadow:0 0 0 2px rgba(11,116,255,.28) inset !important;background:rgba(11,116,255,.14) !important}
.map-client-head{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  margin-bottom:10px !important;
}
.map-client-head b{
  color:#fff !important;
  font-weight:850 !important;
  font-size:15px !important;
  overflow-wrap:anywhere !important;
}
.map-client-tag{
  display:inline-flex !important;
  border-radius:999px !important;
  padding:3px 9px !important;
  background:#0b74ff !important;
  color:#fff !important;
  font-size:12px !important;
  font-weight:750 !important;
}
.map-client-line{
  display:flex !important;
  align-items:flex-start !important;
  gap:9px !important;
  margin-top:8px !important;
}
.map-client-line .ui-icon{
  width:17px !important;
  height:17px !important;
  flex:0 0 17px !important;
  margin:1px 0 0 0 !important;
  background:transparent !important;
}
.map-client-line .ui-icon svg{
  stroke:#58a9ff !important;
  fill:none !important;
}
.map-client-line small,
.map-client-line a{
  color:#dbeafe !important;
  text-decoration:none !important;
  line-height:1.35 !important;
  overflow-wrap:anywhere !important;
  word-break:break-word !important;
}
.map-pagination{
  flex:0 0 auto !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:10px !important;
  padding:12px 0 2px !important;
}
.map-pagination span{
  color:#dbeafe !important;
  font-weight:800 !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  padding:10px 12px !important;
  border-radius:12px !important;
}
/* Popup propre */
.leaflet-popup-content-wrapper{background:#fff !important;color:#111827 !important;border-radius:22px !important;padding:0 !important;box-shadow:0 22px 70px rgba(0,0,0,.28) !important;overflow:hidden !important}
.leaflet-popup-content{margin:0 !important;width:340px !important;max-width:340px !important;font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif !important}
.leaflet-popup-tip{background:#fff !important}
.mcb-popup-pro{padding:22px !important}
.mcb-popup-pro-header{display:flex !important;gap:14px !important;align-items:center !important;padding-right:24px !important}
.mcb-popup-pro-avatar{width:58px !important;height:58px !important;border-radius:18px !important;background:linear-gradient(135deg,#0b74ff,#005ad7) !important;display:flex !important;align-items:center !important;justify-content:center !important;flex:0 0 58px !important}
.mcb-popup-pro-avatar .map-svg{width:31px !important;height:31px !important;stroke:#fff !important}
.mcb-popup-pro-title strong{display:block !important;color:#111827 !important;font-size:22px !important;font-weight:850 !important;line-height:1.1 !important;overflow-wrap:anywhere !important}
.mcb-popup-pro-title span{display:inline-flex !important;margin-top:7px !important;background:#0b74ff !important;color:#fff !important;padding:4px 10px !important;border-radius:999px !important;font-size:13px !important;font-weight:750 !important}
.mcb-popup-pro-company{color:#374151 !important;font-size:14px !important;margin:18px 0 0 !important;padding-top:16px !important;border-top:1px solid #e5e7eb !important}
.mcb-popup-pro-info{margin-top:16px !important;border-top:1px solid #e5e7eb !important}
.mcb-popup-pro-row{display:flex !important;align-items:flex-start !important;gap:13px !important;padding:14px 0 !important;border-bottom:1px solid #eef2f7 !important}
.mcb-popup-pro-row p{margin:0 !important;color:#111827 !important;font-size:14px !important;line-height:1.45 !important;overflow-wrap:anywhere !important}
.mcb-popup-pro-row a{color:#111827 !important;text-decoration:none !important}
.map-svg{width:20px !important;height:20px !important;fill:none !important;stroke:#0b74ff !important;stroke-width:1.9 !important;stroke-linecap:round !important;stroke-linejoin:round !important;flex:0 0 auto !important}
.mcb-popup-pro-actions{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;gap:8px !important;margin-top:18px !important}
.mcb-popup-pro-actions a{display:flex !important;align-items:center !important;justify-content:center !important;gap:7px !important;min-height:44px !important;border-radius:12px !important;text-decoration:none !important;font-weight:750 !important;font-size:14px !important;background:#f8fafc !important;color:#0f172a !important;border:1px solid #dbe4ef !important}
.mcb-popup-pro-actions a.primary{background:#0b74ff !important;color:#fff !important;border-color:#0b74ff !important}
.mcb-popup-pro-actions a.primary .map-svg{stroke:#fff !important}
@media(max-width:1100px){
  .map-shell-v52{grid-template-columns:1fr !important}
  .map-shell-v52 .map-panel{max-width:none !important;max-height:none !important}
  .map-shell-v52 .map-card{height:70vh !important}
}
@media(max-width:560px){
  .map-search{grid-template-columns:1fr !important}
  .map-actions .btn{width:100% !important}
  .leaflet-popup-content{width:292px !important;max-width:292px !important}
  .mcb-popup-pro{padding:18px !important}
  .mcb-popup-pro-actions{grid-template-columns:1fr !important}
}


/* V53 - Marqueurs carte fiables sans dépendre des images Leaflet */
.mcb-blue-marker{
  background:transparent !important;
  border:none !important;
}
.mcb-blue-marker span{
  position:relative;
  display:block;
  width:30px;
  height:30px;
  border-radius:50% 50% 50% 0;
  background:linear-gradient(135deg,#0b74ff,#2c8bdc);
  transform:rotate(-45deg);
  box-shadow:0 6px 16px rgba(0,0,0,.35);
  border:3px solid #fff;
}
.mcb-blue-marker span:after{
  content:"";
  position:absolute;
  width:10px;
  height:10px;
  background:#fff;
  border-radius:50%;
  top:7px;
  left:7px;
}


/* V55 - Trajet carte depuis La Roche-Noire */
.map-start-box{
  margin:0 0 12px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(11,116,255,.10) !important;
  border:1px solid rgba(11,116,255,.25) !important;
  display:grid !important;
  gap:4px !important;
}
.map-start-box b{
  color:#fff !important;
  font-size:14px !important;
}
.map-start-box span{
  color:#cfe8ff !important;
  font-size:13px !important;
  line-height:1.35 !important;
}
.map-route-card small{
  color:#9ed8ff !important;
  font-weight:700 !important;
}
.mcb-route-info p{
  color:#0b74ff !important;
  font-weight:750 !important;
}


/* V56 - Trajet corrigé fallback + marqueur départ */
.mcb-start-marker span{
  display:flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:#0f172a;
  color:#fff;
  font-weight:900;
  border:3px solid #0b74ff;
  box-shadow:0 6px 16px rgba(0,0,0,.35);
}


/* V57 dépôt discret */
.leaflet-tooltip{
  background:#0f172a !important;
  color:#fff !important;
  border:1px solid rgba(11,116,255,.45) !important;
  border-radius:10px !important;
  padding:6px 10px !important;
  font-weight:700 !important;
  box-shadow:0 8px 22px rgba(0,0,0,.28) !important;
}
.leaflet-tooltip-top:before{
  border-top-color:#0f172a !important;
}


/* V58 - Logo SARL MCB en fond dashboard */
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:
    linear-gradient(rgba(5,12,25,.72), rgba(5,12,25,.82)),
    url("mcb-dashboard-bg.png") center center / cover no-repeat;
  opacity:.34;
  pointer-events:none;
  z-index:-2;
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  background:rgba(3,8,18,.38);
  pointer-events:none;
  z-index:-1;
}

.main,
.app-main,
.content,
.dashboard,
.mail-main,
.card,
.map-panel,
.map-card{
  position:relative;
}

@media(max-width:900px){
  body::before{
    background-position:center top;
    opacity:.24;
  }
}


/* V59 - Accueil professionnel lisible */
body::before{
  opacity:.16 !important;
  background:
    linear-gradient(rgba(5,12,25,.86), rgba(5,12,25,.92)),
    url("mcb-dashboard-bg.png") center center / cover no-repeat !important;
}
body::after{
  background:rgba(3,8,18,.62) !important;
}
.home-hero-pro{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:24px;
  padding:26px;
  margin-bottom:20px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(11,116,255,.16),rgba(255,255,255,.045));
  box-shadow:0 20px 60px rgba(0,0,0,.22);
}
.home-hero-pro .eyebrow{
  display:inline-flex;
  color:#9ed8ff;
  font-weight:800;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.06em;
  margin-bottom:8px;
}
.home-hero-pro h1{
  margin:0 0 8px;
  font-size:36px;
  line-height:1.1;
  color:#fff;
}
.home-hero-pro p{
  margin:0;
  max-width:720px;
  color:#dbeafe;
  font-size:16px;
}
.home-hero-badge{
  min-width:220px;
  padding:18px;
  border-radius:18px;
  background:rgba(3,8,18,.48);
  border:1px solid rgba(158,216,255,.18);
}
.home-hero-badge b{
  display:block;
  font-size:28px;
  color:#fff;
}
.home-hero-badge span{
  color:#9fb0c8;
  font-size:13px;
}
.home-kpi-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:20px;
}
.home-kpi-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px;
  border-radius:20px;
  background:rgba(13,23,40,.74);
  border:1px solid rgba(255,255,255,.10);
  color:#fff;
  text-decoration:none;
  transition:.2s ease;
}
.home-kpi-card:hover{
  transform:translateY(-2px);
  border-color:rgba(11,116,255,.55);
}
.home-kpi-card .ui-icon{
  width:30px;
  height:30px;
  color:#58a9ff;
}
.home-kpi-card .ui-icon svg{
  width:30px;
  height:30px;
}
.home-kpi-card strong{
  display:block;
  font-size:24px;
  color:#fff;
}
.home-kpi-card span{
  color:#cbd5e1;
}
.home-main-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.home-panel{
  padding:20px;
  border-radius:22px;
  background:rgba(13,23,40,.78);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 45px rgba(0,0,0,.20);
}
.home-weather,
.home-radio{
  grid-column:span 2;
}
.quick-actions,
.today-panel{
  grid-column:span 2;
}
.panel-title{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:14px;
}
.panel-title h2{
  margin:0;
  font-size:18px;
  color:#fff;
}
.panel-title .ui-icon{
  color:#58a9ff;
}
.weather-box{
  padding:18px;
  border-radius:18px;
  background:linear-gradient(135deg,rgba(11,116,255,.22),rgba(255,255,255,.045));
}
.weather-temp{
  font-size:34px;
  font-weight:900;
  color:#fff;
}
.weather-meta,
.widget-note,
.empty-text{
  color:#cbd5e1;
}
.radio-player{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
}
.radio-player select{
  flex:1;
  min-width:220px;
  padding:13px;
  border-radius:14px;
  background:#0d1728;
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
}
.quick-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.quick-grid a{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.055);
  color:#dbeafe;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.08);
}
.quick-grid a:hover{
  border-color:rgba(11,116,255,.55);
  background:rgba(11,116,255,.12);
}
.today-list{
  display:grid;
  gap:10px;
}
.today-list div{
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.055);
}
.today-list b{
  display:block;
  color:#fff;
}
.today-list span{
  color:#9fb0c8;
}
@media(max-width:1100px){
  .home-kpi-grid,
  .home-main-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-weather,
  .home-radio,
  .quick-actions,
  .today-panel{
    grid-column:span 1;
  }
}
@media(max-width:700px){
  .home-hero-pro{
    display:block;
    padding:20px;
  }
  .home-hero-badge{
    margin-top:16px;
  }
  .home-kpi-grid,
  .home-main-grid{
    grid-template-columns:1fr;
  }
  .quick-grid{
    grid-template-columns:1fr;
  }
}


/* V60 - Refonte visible accueil dashboard */
body::before{
  opacity:.10 !important;
  filter:blur(0px) saturate(.85) !important;
  background:
    linear-gradient(135deg,rgba(2,8,23,.94),rgba(7,16,32,.88)),
    url("mcb-dashboard-bg.png") center center / cover no-repeat !important;
}
body::after{
  background:radial-gradient(circle at 55% 18%, rgba(11,116,255,.20), transparent 38%), rgba(2,8,23,.68) !important;
}
.home-v60{
  position:relative;
  z-index:1;
  max-width:1600px;
  margin:0 auto;
}
.home-v60-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  gap:22px;
  align-items:stretch;
  margin-bottom:22px;
}
.home-v60-hero-content{
  padding:34px;
  border-radius:28px;
  background:
    linear-gradient(135deg,rgba(11,116,255,.22),rgba(15,23,42,.82)),
    rgba(13,23,40,.86);
  border:1px solid rgba(158,216,255,.20);
  box-shadow:0 24px 70px rgba(0,0,0,.35);
}
.home-v60-pill{
  display:inline-flex;
  margin-bottom:12px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(11,116,255,.18);
  border:1px solid rgba(11,116,255,.35);
  color:#9ed8ff;
  font-weight:900;
  font-size:12px;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.home-v60-hero h1{
  margin:0 0 10px;
  font-size:44px;
  line-height:1.05;
  color:#fff;
}
.home-v60-hero p{
  margin:0;
  max-width:760px;
  color:#dbeafe;
  font-size:17px;
  line-height:1.5;
}
.home-v60-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:24px;
}
.home-v60-logo-card{
  border-radius:28px;
  overflow:hidden;
  background:rgba(13,23,40,.76);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 24px 70px rgba(0,0,0,.35);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
}
.home-v60-logo-card img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:20px;
  opacity:.82;
}
.home-v60-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  margin-bottom:22px;
}
.home-v60-stat{
  display:flex;
  gap:14px;
  align-items:center;
  padding:20px;
  min-height:98px;
  border-radius:22px;
  text-decoration:none;
  background:rgba(13,23,40,.86);
  border:1px solid rgba(255,255,255,.10);
  box-shadow:0 18px 45px rgba(0,0,0,.24);
  transition:.18s ease;
}
.home-v60-stat:hover{
  transform:translateY(-2px);
  border-color:rgba(11,116,255,.58);
  background:rgba(11,116,255,.12);
}
.home-v60-stat .ui-icon{
  width:34px;
  height:34px;
  color:#58a9ff;
}
.home-v60-stat .ui-icon svg{
  width:34px;
  height:34px;
}
.home-v60-stat strong{
  display:block;
  font-size:28px;
  color:#fff;
  line-height:1;
}
.home-v60-stat span{
  color:#cbd5e1;
  font-size:14px;
}
.home-v60-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.home-v60-widget{
  padding:22px;
  border-radius:24px;
  background:rgba(13,23,40,.88);
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 18px 45px rgba(0,0,0,.24);
}
.weather-widget,
.radio-widget,
.quick-widget,
.today-widget{
  grid-column:span 2;
}
.home-v60-widget-head{
  display:flex;
  gap:12px;
  align-items:center;
  margin-bottom:18px;
}
.home-v60-widget-head .ui-icon{
  width:24px;
  height:24px;
  color:#58a9ff;
}
.home-v60-widget-head h2{
  margin:0;
  color:#fff;
  font-size:20px;
}
.home-v60-widget-head p{
  margin:3px 0 0;
  color:#9fb0c8;
  font-size:13px;
}
.home-v60-weather-box{
  padding:24px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(11,116,255,.28),rgba(255,255,255,.045));
  border:1px solid rgba(11,116,255,.20);
}
.home-v60-weather-box strong{
  display:block;
  color:#fff;
  font-size:42px;
  line-height:1;
}
.home-v60-weather-box span{
  display:block;
  margin-top:8px;
  color:#dbeafe;
}
.home-v60-radio-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}
.home-v60-radio-controls select{
  min-width:0;
  padding:14px;
  border-radius:14px;
  background:#0d1728;
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
}
.home-v60-quick{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.home-v60-quick a{
  display:flex;
  align-items:center;
  gap:9px;
  padding:13px;
  border-radius:15px;
  color:#dbeafe;
  text-decoration:none;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
}
.home-v60-quick a:hover{
  background:rgba(11,116,255,.12);
  border-color:rgba(11,116,255,.45);
}
.home-v60-today-list{
  display:grid;
  gap:10px;
}
.home-v60-today-list div,
.home-v60-empty{
  padding:14px;
  border-radius:15px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
}
.home-v60-today-list b{
  display:block;
  color:#fff;
}
.home-v60-today-list span,
.home-v60-empty{
  color:#cbd5e1;
}
@media(max-width:1200px){
  .home-v60-hero{grid-template-columns:1fr}
  .home-v60-logo-card{display:none}
  .home-v60-stats,.home-v60-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .weather-widget,.radio-widget,.quick-widget,.today-widget{grid-column:span 1}
}
@media(max-width:720px){
  .home-v60-hero-content{padding:24px}
  .home-v60-hero h1{font-size:34px}
  .home-v60-stats,.home-v60-grid{grid-template-columns:1fr}
  .home-v60-radio-controls{grid-template-columns:1fr}
  .home-v60-quick{grid-template-columns:1fr}
}


/* V61 radio pro */
.home-v61-radio-app{
 display:grid;
 gap:16px;
}
.home-v61-radio-top{
 display:grid;
 grid-template-columns:minmax(0,1fr) 180px;
 gap:14px;
}
.home-v61-radio-top select,
.home-v61-volume{
 background:rgba(255,255,255,.05);
 border:1px solid rgba(255,255,255,.1);
 border-radius:16px;
 padding:14px;
 color:#fff;
}
.home-v61-volume{
 display:flex;
 flex-direction:column;
 gap:8px;
}
.home-v61-volume span{
 color:#dbeafe;
 font-size:13px;
}
.home-v61-volume input{
 width:100%;
}
.home-v61-radio-buttons{
 display:flex;
 gap:12px;
 flex-wrap:wrap;
}
.home-v61-radio-presets{
 display:flex;
 gap:10px;
 flex-wrap:wrap;
}
.radio-preset{
 border:none;
 background:rgba(11,116,255,.15);
 color:#dbeafe;
 padding:10px 14px;
 border-radius:12px;
 cursor:pointer;
 font-weight:700;
 border:1px solid rgba(11,116,255,.3);
}
.radio-preset:hover{
 background:rgba(11,116,255,.3);
}
.home-v61-radio-status{
 padding:16px;
 border-radius:18px;
 background:rgba(255,255,255,.05);
 border:1px solid rgba(255,255,255,.08);
}
.home-v61-radio-status strong{
 display:block;
 color:#fff;
 margin-bottom:4px;
}
.home-v61-radio-status span{
 color:#9fb0c8;
}
@media(max-width:720px){
 .home-v61-radio-top{
   grid-template-columns:1fr;
 }
}


/* V62 radio max stations lisible */
.home-v62-radio-app{
  display:grid;
  gap:16px;
}
.home-v62-radio-current{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(11,116,255,.20),rgba(255,255,255,.045));
  border:1px solid rgba(11,116,255,.26);
}
.home-v62-radio-current span,
.home-v62-radio-current small{
  display:block;
  color:#9fb0c8;
}
.home-v62-radio-current strong{
  display:block;
  color:#fff;
  font-size:22px;
  margin:4px 0;
}
.radio-icon-btn{
  width:46px;
  height:46px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:#0d1728;
  color:#ffd166;
  font-size:20px;
  cursor:pointer;
}
.home-v62-radio-controls{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}
.home-v62-volume{
  flex:1;
  min-width:220px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.10);
}
.home-v62-volume span{
  color:#dbeafe;
  font-weight:700;
}
.home-v62-volume input{
  flex:1;
  accent-color:#0b74ff;
}
.home-v62-radio-search{
  width:100%;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.12);
  background:#0d1728;
  color:#fff;
}
.home-v62-radio-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  max-height:260px;
  overflow-y:auto;
  padding-right:6px;
}
.home-v62-radio-grid::-webkit-scrollbar{width:8px}
.home-v62-radio-grid::-webkit-scrollbar-thumb{background:rgba(158,216,255,.35);border-radius:999px}
.home-v62-station{
  text-align:left;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.055);
  color:#fff;
  border-radius:16px;
  padding:13px;
  cursor:pointer;
}
.home-v62-station strong{
  display:block;
  color:#fff;
  font-size:14px;
  line-height:1.2;
}
.home-v62-station span{
  display:inline-flex;
  margin-top:7px;
  color:#9ed8ff;
  font-size:12px;
  font-weight:800;
}
.home-v62-station:hover,
.home-v62-station.active{
  border-color:#0b74ff;
  background:rgba(11,116,255,.16);
}
@media(max-width:900px){
  .home-v62-radio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .home-v62-radio-grid{grid-template-columns:1fr}
  .home-v62-volume{min-width:100%}
}


/* V63 dashboard compact reorganisation */
.home-v60-grid{
  grid-template-columns:1.05fr 1fr !important;
  align-items:start;
}
.weather-widget{
  grid-column:1;
}
.radio-widget{
  grid-column:2;
}
.quick-widget{
  grid-column:1;
}
.today-widget{
  grid-column:2;
}

.weather-widget{
  min-height:auto !important;
}
.home-v60-weather-box{
  min-height:unset !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 26px !important;
}
.home-v60-weather-box strong{
  font-size:58px !important;
}
.home-v60-weather-box span{
  margin-top:0 !important;
  font-size:18px;
  color:#dbeafe;
}

.weather-widget::after{
  content:'☀️ Conditions chantier';
  display:block;
  margin-top:14px;
  padding:14px 18px;
  border-radius:16px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  color:#cbd5e1;
  font-weight:700;
}

.quick-widget .home-v60-quick{
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
}

.today-widget,
.quick-widget,
.weather-widget,
.radio-widget{
  height:100%;
}

.radio-widget .home-v62-radio-grid{
  max-height:360px !important;
}

@media(max-width:1200px){
  .home-v60-grid{
    grid-template-columns:1fr !important;
  }
  .weather-widget,
  .radio-widget,
  .quick-widget,
  .today-widget{
    grid-column:auto !important;
  }
}

@media(max-width:720px){
  .home-v60-weather-box{
    flex-direction:column;
    align-items:flex-start;
  }
  .home-v60-weather-box strong{
    font-size:48px !important;
  }
  .quick-widget .home-v60-quick{
    grid-template-columns:1fr !important;
  }
}


/* V64 forecast météo */
.home-v64-forecast{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}
.home-v64-day{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  text-align:center;
}
.home-v64-day strong{
  display:block;
  color:#fff;
  font-size:18px;
  margin-bottom:8px;
}
.home-v64-day span{
  color:#9ed8ff;
  font-weight:700;
}
.forecast-loading{
  grid-column:1/-1;
  padding:16px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  color:#cbd5e1;
}
@media(max-width:720px){
  .home-v64-forecast{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* V65 météo complète compacte */
.weather-v65{
  min-height:auto !important;
}
.weather-v65::after,
.weather-widget::after{
  display:none !important;
  content:none !important;
}
.weather-v65-current{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) 1.25fr !important;
  gap:22px !important;
  align-items:center !important;
  padding:22px !important;
  border-radius:20px !important;
  background:linear-gradient(135deg,rgba(11,116,255,.24),rgba(255,255,255,.045)) !important;
  border:1px solid rgba(11,116,255,.22) !important;
}
.weather-v65-icon{
  font-size:58px;
  line-height:1;
}
.weather-v65-current strong{
  display:block;
  color:#fff;
  font-size:46px;
  line-height:1;
}
.weather-v65-current span{
  color:#dbeafe;
  font-weight:700;
}
.weather-v65-details{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.weather-v65-details div{
  display:grid;
  gap:3px;
  padding:10px 12px;
  border-radius:14px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
}
.weather-v65-details b{
  color:#9fb0c8;
  font-size:12px;
}
.weather-v65-details span{
  color:#fff;
  font-weight:900;
}
.weather-v65-forecast-title{
  margin:18px 0 10px;
  color:#dbeafe;
  font-weight:900;
}
.weather-v65-forecast{
  display:grid !important;
  grid-template-columns:repeat(7,minmax(0,1fr)) !important;
  gap:8px !important;
  margin-top:0 !important;
}
.weather-v65-day{
  padding:12px 8px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  text-align:center;
}
.weather-v65-day:first-child{
  border-color:#0b74ff;
  background:rgba(11,116,255,.12);
}
.weather-v65-day b,
.weather-v65-day strong,
.weather-v65-day small,
.weather-v65-day em{
  display:block;
}
.weather-v65-day b{
  color:#fff;
  font-size:13px;
  margin-bottom:8px;
}
.weather-v65-day .wicon{
  display:block;
  font-size:26px;
  margin-bottom:8px;
}
.weather-v65-day strong{
  color:#fff;
  font-size:20px;
}
.weather-v65-day small{
  color:#dbeafe;
  font-size:15px;
}
.weather-v65-day em{
  margin-top:8px;
  color:#9fb0c8;
  font-style:normal;
  font-size:12px;
}
.weather-v65-updated{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#9fb0c8;
  font-size:13px;
}
@media(max-width:900px){
  .weather-v65-current{
    grid-template-columns:1fr !important;
  }
  .weather-v65-forecast{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}


/* V66 météo fix */
.forecast-loading{
  color:#cbd5e1 !important;
}


/* V67 - Icônes SVG/CSS barre applications + espacement contacts */
.quick-svg{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:28px !important;
  height:28px !important;
  border-radius:10px !important;
  background:rgba(11,116,255,.12) !important;
  border:1px solid rgba(158,216,255,.20) !important;
  color:#9ed8ff !important;
  flex:0 0 28px !important;
}
.quick-svg svg{
  width:17px !important;
  height:17px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.quick-facebook{color:#74a7ff !important}
.quick-instagram{color:#ff8bd1 !important}
.quick-youtube{color:#ff5b5b !important}
.quick-linkedin{color:#67b7ff !important}
.quick-site{color:#63e6be !important}
.quick-mail{color:#9ed8ff !important}
.quick-phone{color:#7ee787 !important}

/* Force la barre du haut à ne plus afficher les anciens emojis trop gros */
.topbar a,
.appbar a,
.quick-links a,
.top-links a{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
}
.topbar .quick-svg,
.appbar .quick-svg,
.quick-links .quick-svg,
.top-links .quick-svg{
  margin:0 auto 3px !important;
}

/* Contacts clients : séparation claire entre recherche et blocs */
.contacts-search-form,
form.search,
form.contact-search{
  margin-bottom:22px !important;
}
.contacts-count-box,
.contact-category-filter{
  margin-bottom:18px !important;
}
.contacts-grid,
.contact-layout,
.two,
.main-grid{
  gap:22px !important;
}
/* Ciblage page contacts : les cartes qui suivent la recherche ne doivent plus être collées */
body:has(h1) .card + .card{
  margin-top:14px;
}
@supports not selector(:has(*)){
  .card + .card{
    margin-top:14px;
  }
}


/* V68 contacts layout visible + topbar SVG forced */
.app-icon-svg,
.topbar .quick-svg,
.appbar .quick-svg{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
}
.app-icon-svg .quick-svg{
  margin:0 auto 4px !important;
}
.topbar a,
.appbar a{
  text-decoration:none !important;
}

.contacts-v68{
  display:grid;
  gap:22px;
}
.contacts-v68-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.contacts-v68-head h1{
  margin:0;
  color:#fff;
  font-size:34px;
}
.contacts-v68-head p{
  margin:6px 0 0;
  color:#9fb0c8;
}
.contacts-v68-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 240px;
  gap:18px;
  align-items:stretch;
}
.contacts-v68-search,
.contacts-v68-count,
.contacts-v68-card{
  background:rgba(13,23,40,.82);
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  box-shadow:0 16px 42px rgba(0,0,0,.18);
}
.contacts-v68-search{
  display:grid;
  grid-template-columns:minmax(0,1fr) 220px auto auto;
  gap:12px;
  padding:16px;
  align-items:center;
}
.contacts-v68-search input,
.contacts-v68-search select{
  height:48px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:#0d1728;
  color:#fff;
  padding:0 14px;
}
.contacts-v68-count{
  padding:16px;
  display:grid;
  align-content:center;
}
.contacts-v68-count strong{
  color:#fff;
  font-size:28px;
  line-height:1;
}
.contacts-v68-count span{
  color:#dbeafe;
  font-weight:800;
}
.contacts-v68-count small{
  color:#9fb0c8;
}
.contacts-v68-grid{
  display:grid;
  grid-template-columns:360px minmax(0,1fr);
  gap:24px;
  align-items:start;
  margin-top:0 !important;
}
.contacts-v68-card{
  padding:24px;
}
.contacts-v68-card h2{
  margin:0 0 18px;
  color:#fff;
  font-size:24px;
}
.contacts-v68-form form{
  display:grid;
  gap:10px;
}
.contacts-v68-form label{
  color:#dbeafe;
  font-weight:800;
}
.contacts-v68-form input{
  height:46px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:#0d1728;
  color:#fff;
  padding:0 14px;
}
.contacts-v68-items{
  display:grid;
  gap:12px;
}
.contacts-v68-item{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.09);
}
.contacts-v68-main{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.contacts-v68-main b{
  color:#fff;
  font-size:17px;
}
.contacts-v68-main span{
  background:#0b74ff;
  color:#fff;
  border-radius:999px;
  padding:4px 10px;
  font-size:12px;
  font-weight:800;
}
.contacts-v68-info{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:#dbeafe;
}
.contacts-v68-info a,
.contacts-v68-info small{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#dbeafe;
  text-decoration:none;
}
.contacts-v68-info .ui-icon{
  margin:0;
  color:#58a9ff;
}
.contacts-v68-actions{
  display:flex;
  gap:10px;
  margin-top:14px;
  flex-wrap:wrap;
}
.contacts-v68-empty{
  padding:18px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  color:#cbd5e1;
}
@media(max-width:1100px){
  .contacts-v68-toolbar,
  .contacts-v68-grid{
    grid-template-columns:1fr;
  }
  .contacts-v68-search{
    grid-template-columns:1fr;
  }
}


/* V70 - Réglages réparés proprement */
.settings-v70{
  display:grid;
  gap:24px;
}
.settings-v70-head h1{
  margin:0;
  color:#fff;
  font-size:36px;
}
.settings-v70-head p{
  margin:8px 0 0;
  color:#9fb0c8;
}
.settings-v70-grid{
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);
  gap:22px;
  align-items:start;
}
.settings-v70-card{
  background:rgba(13,23,40,.86);
  border:1px solid rgba(255,255,255,.10);
  border-radius:24px;
  padding:24px;
  box-shadow:0 18px 45px rgba(0,0,0,.22);
}
.settings-v70-title{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:20px;
}
.settings-v70-title .ui-icon{
  color:#58a9ff;
  margin-top:4px;
}
.settings-v70-title h2,
.settings-v70-card h2{
  margin:0;
  color:#fff;
  font-size:24px;
}
.settings-v70-title p{
  margin:5px 0 0;
  color:#9fb0c8;
}
.settings-v70-links-list{
  display:grid;
  gap:14px;
}
.settings-v70-link-row{
  display:grid;
  grid-template-columns:72px 160px minmax(0,1fr) minmax(0,1.4fr);
  gap:12px;
  align-items:center;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
}
.settings-v70-icon-preview{
  width:72px;
  height:72px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,rgba(11,116,255,.20),rgba(255,255,255,.05));
  border:1px solid rgba(158,216,255,.18);
  overflow:hidden;
}
.settings-v70-icon-preview svg,
.settings-v70-preview-bar svg{
  width:34px;
  height:34px;
  fill:none;
  stroke:#9ed8ff;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.settings-v70-link-row input,
.settings-v70-link-row select,
.settings-v70-signature-form input{
  height:48px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.12);
  background:#0d1728;
  color:#fff;
  padding:0 14px;
  min-width:0;
}
.settings-v70-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
.settings-v70-preview-bar{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:18px;
}
.settings-v70-preview-bar a{
  width:96px;
  min-height:94px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  text-decoration:none;
  color:#fff;
  border-radius:18px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.09);
}
.settings-v70-preview-bar b{
  font-size:13px;
}
.settings-v70-signature-form{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.settings-v70-check{
  grid-column:1/-1;
  color:#dbeafe;
  font-weight:800;
  display:flex;
  align-items:center;
  gap:10px;
}
.settings-v70-signature-form button{
  width:max-content;
}
@media(max-width:1100px){
  .settings-v70-grid{
    grid-template-columns:1fr;
  }
  .settings-v70-link-row{
    grid-template-columns:72px 1fr;
  }
  .settings-v70-signature-form{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .settings-v70-link-row{
    grid-template-columns:1fr;
  }
  .settings-v70-icon-preview{
    width:100%;
  }
}


/* V71 - application réelle des liens rapides sur le bandeau */
.top-quickbar{
  height:52px;
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  padding:0 22px !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
  background:rgba(3,10,22,.72) !important;
  position:relative;
  z-index:20;
}
.top-quickbar a{
  min-width:64px;
  height:48px;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:3px !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.top-quickbar a:hover{
  color:#9ed8ff !important;
}
.topbar-svg{
  width:24px !important;
  height:24px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#9ed8ff !important;
}
.topbar-svg svg{
  width:23px !important;
  height:23px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.topbar-svg-facebook{color:#74a7ff !important}
.topbar-svg-instagram{color:#ff8bd1 !important}
.topbar-svg-youtube{color:#ff5b5b !important}
.topbar-svg-linkedin{color:#67b7ff !important}
.topbar-svg-site{color:#63e6be !important}
.topbar-svg-mail{color:#9ed8ff !important}
.topbar-svg-phone{color:#7ee787 !important}

/* neutralise les anciens emojis/images dans le bandeau si un vieux bloc reste */
.top-quickbar img,
.top-quickbar .emoji{
  display:none !important;
}


/* V72 - bandeau liens rapides propre sans chevauchement */
.clean-topbar,
.top-quickbar{
  position:fixed !important;
  top:0 !important;
  left:240px !important;
  right:0 !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  gap:22px !important;
  padding:0 24px !important;
  background:#071120 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  z-index:900 !important;
  overflow:hidden !important;
}
.clean-topbar a,
.top-quickbar a{
  width:72px !important;
  min-width:72px !important;
  height:54px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  text-align:center !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:11px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  white-space:nowrap !important;
}
.clean-topbar a:hover,
.top-quickbar a:hover{
  color:#9ed8ff !important;
  background:rgba(11,116,255,.08) !important;
  border-radius:12px !important;
}
.topbar-svg{
  width:24px !important;
  height:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  margin:0 !important;
  flex:0 0 24px !important;
}
.topbar-svg svg{
  width:23px !important;
  height:23px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:1.9 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.main{
  padding-top:88px !important;
}
.sidebar{
  z-index:950 !important;
}
@media(max-width:900px){
  .clean-topbar,
  .top-quickbar{
    left:0 !important;
    padding-left:12px !important;
    gap:10px !important;
    overflow-x:auto !important;
  }
  .main{
    padding-top:78px !important;
  }
}


/* V73 - Bandeau 100% SVG/CSS forcé */
.clean-topbar .topbar-link,
.top-quickbar .topbar-link{
  font-family:inherit !important;
}
.clean-topbar .topbar-svg,
.top-quickbar .topbar-svg{
  display:flex !important;
  width:26px !important;
  height:26px !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  border:0 !important;
  font-size:0 !important;
  line-height:0 !important;
}
.clean-topbar .topbar-svg svg,
.top-quickbar .topbar-svg svg{
  display:block !important;
  width:25px !important;
  height:25px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.clean-topbar .topbar-link-site .topbar-svg{color:#55e6c1 !important}
.clean-topbar .topbar-link-facebook .topbar-svg{color:#70a7ff !important}
.clean-topbar .topbar-link-instagram .topbar-svg{color:#ff87d5 !important}
.clean-topbar .topbar-link-youtube .topbar-svg{color:#ff5b5b !important}
.clean-topbar .topbar-link-linkedin .topbar-svg{color:#67b7ff !important}
.clean-topbar .topbar-link-mail .topbar-svg{color:#9ed8ff !important}
.clean-topbar .topbar-link-phone .topbar-svg{color:#7ee787 !important}

/* masque tout ancien rendu icône hors SVG dans le bandeau */
.clean-topbar img,
.clean-topbar .app-icon,
.clean-topbar .quick-svg:not(.topbar-svg),
.clean-topbar .emoji,
.top-quickbar img,
.top-quickbar .app-icon,
.top-quickbar .quick-svg:not(.topbar-svg),
.top-quickbar .emoji{
  display:none !important;
}


/* V74 - bandeau SVG ultra forcé */
.clean-topbar,
.top-quickbar{
  position:fixed !important;
  top:0 !important;
  left:240px !important;
  right:0 !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  padding:0 24px !important;
  background:#071120 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  z-index:9999 !important;
  overflow:hidden !important;
}
.clean-topbar .topbar-link,
.top-quickbar .topbar-link{
  width:72px !important;
  height:56px !important;
  min-width:72px !important;
  padding:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  color:#dbeafe !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
.clean-topbar .topbar-link:hover,
.top-quickbar .topbar-link:hover{
  background:rgba(11,116,255,.12) !important;
  border-radius:12px !important;
}
.clean-topbar .topbar-svg,
.top-quickbar .topbar-svg{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:26px !important;
  height:26px !important;
  min-width:26px !important;
  min-height:26px !important;
  margin:0 !important;
  padding:0 !important;
  background:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-size:0 !important;
  line-height:0 !important;
  overflow:visible !important;
}
.clean-topbar .topbar-svg svg,
.top-quickbar .topbar-svg svg{
  display:block !important;
  width:25px !important;
  height:25px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.15 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
  filter:drop-shadow(0 0 6px rgba(158,216,255,.16)) !important;
}
.clean-topbar .topbar-link-site .topbar-svg{color:#66e7c8 !important}
.clean-topbar .topbar-link-facebook .topbar-svg{color:#78aaff !important}
.clean-topbar .topbar-link-instagram .topbar-svg{color:#ff91d8 !important}
.clean-topbar .topbar-link-youtube .topbar-svg{color:#ff6666 !important}
.clean-topbar .topbar-link-linkedin .topbar-svg{color:#67b7ff !important}
.clean-topbar .topbar-link-mail .topbar-svg{color:#9ed8ff !important}
.clean-topbar .topbar-link-phone .topbar-svg{color:#7ee787 !important}

/* cache tout ancien élément iconographique dans le bandeau sauf nos SVG */
.clean-topbar img,
.clean-topbar .app-icon,
.clean-topbar .app-icon-svg,
.clean-topbar .quick-svg:not(.topbar-svg),
.clean-topbar .emoji,
.top-quickbar img,
.top-quickbar .app-icon,
.top-quickbar .app-icon-svg,
.top-quickbar .quick-svg:not(.topbar-svg),
.top-quickbar .emoji{
  display:none !important;
}
.main{padding-top:88px !important}
.sidebar{z-index:10000 !important}
@media(max-width:900px){
  .clean-topbar,.top-quickbar{
    left:0 !important;
    overflow-x:auto !important;
    gap:12px !important;
    padding:0 12px !important;
  }
}


/* V75 - correction définitive bandeau applications : plus aucun emoji */
.top-toolbar,
.toolbar-link{
  display:none !important;
  visibility:visible !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
.clean-topbar,
.top-quickbar{
  position:fixed !important;
  top:0 !important;
  left:240px !important;
  right:0 !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  gap:20px !important;
  padding:0 24px !important;
  background:#071120 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  z-index:10050 !important;
}
.clean-topbar .topbar-link,
.top-quickbar .topbar-link{
  width:72px !important;
  min-width:72px !important;
  height:56px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:4px !important;
  color:#dbeafe !important;
  text-decoration:none !important;
  font-size:11px !important;
  font-weight:800 !important;
  line-height:1.05 !important;
}
.clean-topbar .topbar-svg,
.top-quickbar .topbar-svg{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:26px !important;
  height:26px !important;
  font-size:0 !important;
  line-height:0 !important;
  color:#9ed8ff !important;
}
.clean-topbar .topbar-svg svg,
.top-quickbar .topbar-svg svg{
  display:block !important;
  width:25px !important;
  height:25px !important;
  fill:none !important;
  stroke:currentColor !important;
  stroke-width:2.15 !important;
  stroke-linecap:round !important;
  stroke-linejoin:round !important;
}
.clean-topbar .topbar-link-site .topbar-svg,.top-quickbar .topbar-link-site .topbar-svg{color:#66e7c8 !important}
.clean-topbar .topbar-link-facebook .topbar-svg,.top-quickbar .topbar-link-facebook .topbar-svg{color:#78aaff !important}
.clean-topbar .topbar-link-instagram .topbar-svg,.top-quickbar .topbar-link-instagram .topbar-svg{color:#ff91d8 !important}
.clean-topbar .topbar-link-youtube .topbar-svg,.top-quickbar .topbar-link-youtube .topbar-svg{color:#ff6666 !important}
.clean-topbar .topbar-link-linkedin .topbar-svg,.top-quickbar .topbar-link-linkedin .topbar-svg{color:#67b7ff !important}
.clean-topbar .topbar-link-mail .topbar-svg,.top-quickbar .topbar-link-mail .topbar-svg{color:#9ed8ff !important}
.clean-topbar .topbar-link-phone .topbar-svg,.top-quickbar .topbar-link-phone .topbar-svg{color:#7ee787 !important}
.main{padding-top:88px !important}
@media(max-width:900px){.clean-topbar,.top-quickbar{left:0 !important;overflow-x:auto !important;padding:0 12px !important;gap:12px !important}}

/* ===== V76 - Compte personnel, rôles et notifications ===== */
.clean-topbar,
.top-quickbar{right:330px !important;}
.top-account{
  position:fixed !important;
  top:0 !important;
  right:0 !important;
  width:330px !important;
  height:58px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:12px !important;
  padding:0 22px 0 10px !important;
  background:#071120 !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  z-index:10070 !important;
  color:#eaf3ff !important;
}
.top-account details{position:relative !important;}
.top-account summary{list-style:none !important;cursor:pointer !important;}
.top-account summary::-webkit-details-marker{display:none !important;}
.notif-btn{
  position:relative !important;width:42px !important;height:42px !important;border-radius:14px !important;
  display:flex !important;align-items:center !important;justify-content:center !important;
  border:1px solid rgba(148,190,255,.18) !important;background:rgba(16,30,52,.72) !important;
}
.notif-btn .ui-icon svg{width:22px !important;height:22px !important;stroke:#dbeafe !important;fill:none !important;}
.notif-badge{position:absolute !important;top:-5px !important;right:-5px !important;min-width:20px !important;height:20px !important;border-radius:999px !important;background:#0d7cff !important;color:#fff !important;font-size:11px !important;font-weight:900 !important;display:flex !important;align-items:center !important;justify-content:center !important;border:2px solid #071120 !important;}
.account-summary{height:44px !important;display:flex !important;align-items:center !important;gap:10px !important;border-radius:18px !important;padding:4px 10px 4px 5px !important;background:rgba(16,30,52,.72) !important;border:1px solid rgba(148,190,255,.18) !important;}
.account-avatar{width:34px !important;height:34px !important;border-radius:999px !important;background:linear-gradient(135deg,#0075ff,#24b4ff) !important;color:#fff !important;display:inline-flex !important;align-items:center !important;justify-content:center !important;font-size:12px !important;font-weight:900 !important;letter-spacing:.3px !important;}
.account-avatar.large{width:48px !important;height:48px !important;font-size:14px !important;flex:0 0 auto !important;}
.account-name{max-width:128px !important;white-space:nowrap !important;overflow:hidden !important;text-overflow:ellipsis !important;font-weight:900 !important;color:#fff !important;}
.account-arrow{color:#9fb6d8 !important;font-size:16px !important;}
.notif-panel,.account-panel{position:absolute !important;top:52px !important;right:0 !important;width:310px !important;background:#0d1728 !important;border:1px solid rgba(148,190,255,.22) !important;border-radius:18px !important;box-shadow:0 24px 60px rgba(0,0,0,.45) !important;padding:14px !important;z-index:10090 !important;}
.notif-panel h3{margin:0 0 10px !important;font-size:17px !important;color:#fff !important;}
.notif-item{padding:10px 0 !important;border-bottom:1px solid rgba(255,255,255,.08) !important;display:grid !important;gap:4px !important;}
.notif-item b{font-size:13px !important;color:#eaf3ff !important;}.notif-item small,.account-card-head small{color:#aebbd1 !important;line-height:1.35 !important;}.notif-settings,.account-panel a{display:block !important;margin-top:10px !important;padding:10px 12px !important;border-radius:12px !important;background:rgba(0,117,255,.13) !important;color:#dbeafe !important;font-weight:800 !important;text-decoration:none !important;}
.account-card-head{display:flex !important;gap:12px !important;align-items:center !important;padding-bottom:12px !important;border-bottom:1px solid rgba(255,255,255,.08) !important;}.account-card-head div{display:grid !important;gap:3px !important;min-width:0 !important;}.account-card-head b{color:#fff !important;}.account-card-head em{display:inline-flex !important;width:max-content !important;margin-top:3px !important;padding:4px 9px !important;border-radius:999px !important;background:rgba(0,117,255,.18) !important;color:#9ed8ff !important;font-style:normal !important;font-size:12px !important;font-weight:900 !important;}
.settings-v70-account{margin-top:22px !important;}.settings-v70-account-grid{display:grid !important;grid-template-columns:repeat(2,minmax(220px,1fr)) !important;gap:12px !important;margin-top:14px !important;}.settings-v70-account-grid input,.settings-v70-account-grid select{width:100% !important;padding:14px !important;border-radius:14px !important;border:1px solid rgba(148,190,255,.18) !important;background:#0d1728 !important;color:#fff !important;font-weight:700 !important;}.settings-v70-role-info{display:grid !important;grid-template-columns:repeat(2,minmax(220px,1fr)) !important;gap:10px !important;margin:14px 0 !important;}.settings-v70-role-info span{padding:12px !important;border-radius:14px !important;background:rgba(255,255,255,.045) !important;color:#bcd0eb !important;border:1px solid rgba(255,255,255,.08) !important;}.settings-v70-notifs{display:grid !important;grid-template-columns:repeat(2,minmax(220px,1fr)) !important;gap:10px !important;margin:15px 0 18px !important;}.settings-v70-notifs label{display:flex !important;gap:9px !important;align-items:center !important;padding:12px !important;border-radius:14px !important;background:rgba(0,117,255,.08) !important;border:1px solid rgba(0,117,255,.16) !important;color:#eaf3ff !important;font-weight:800 !important;}.settings-v70-notifs input{width:auto !important;margin:0 !important;accent-color:#0075ff !important;}
@media(max-width:900px){.clean-topbar,.top-quickbar{right:0 !important;top:58px !important;left:0 !important;height:64px !important;}.top-account{left:0 !important;width:100% !important;justify-content:flex-end !important;padding:0 12px !important;}.main{padding-top:138px !important;}.settings-v70-account-grid,.settings-v70-role-info,.settings-v70-notifs{grid-template-columns:1fr !important;}.account-name{max-width:170px !important;}.notif-panel,.account-panel{right:0 !important;width:min(320px,calc(100vw - 24px)) !important;}}

/* ===== V77 - multi-utilisateurs + notifications non bloquées ===== */
.notif-actions{display:grid !important;grid-template-columns:1fr 1fr !important;gap:8px !important;margin-top:10px !important;}
.notif-actions .notif-settings{margin-top:0 !important;text-align:center !important;}
.notif-empty{padding:14px !important;color:#aebbd1 !important;background:rgba(255,255,255,.04) !important;border-radius:12px !important;}
.settings-users-list{display:grid !important;gap:14px !important;margin-top:16px !important;}
.settings-user-card{border:1px solid rgba(148,190,255,.16) !important;background:rgba(8,18,34,.52) !important;border-radius:18px !important;padding:0 !important;overflow:hidden !important;}
.settings-user-card summary{list-style:none !important;cursor:pointer !important;display:flex !important;align-items:center !important;gap:12px !important;padding:14px 16px !important;background:rgba(255,255,255,.035) !important;}
.settings-user-card summary::-webkit-details-marker{display:none !important;}
.settings-user-card summary strong{color:#fff !important;font-weight:900 !important;}
.settings-user-card summary em{font-style:normal !important;color:#9ed8ff !important;background:rgba(0,117,255,.16) !important;border-radius:999px !important;padding:5px 10px !important;font-weight:900 !important;font-size:12px !important;}
.settings-user-card summary small{margin-left:auto !important;color:#bcd0eb !important;font-weight:800 !important;}
.settings-user-card .settings-v70-account-form{padding:16px !important;}
.settings-add-user{margin-top:18px !important;padding:16px !important;border:1px solid rgba(0,117,255,.18) !important;background:rgba(0,117,255,.06) !important;border-radius:18px !important;}
.settings-add-user h3{margin:0 0 14px !important;color:#fff !important;}
.settings-v70-check.inline{height:48px !important;display:flex !important;align-items:center !important;gap:10px !important;padding:0 14px !important;border-radius:14px !important;background:#0d1728 !important;border:1px solid rgba(148,190,255,.18) !important;color:#eaf3ff !important;font-weight:800 !important;}
.settings-user-delete{padding:0 16px 16px !important;}
.btn.danger{background:#b91c1c !important;color:#fff !important;}
@media(max-width:900px){.settings-user-card summary{flex-wrap:wrap !important;}.settings-user-card summary small{margin-left:0 !important;width:100% !important;}.notif-actions{grid-template-columns:1fr !important;}}

/* ===== V78 - mail d'accès + image de profil ===== */
.account-avatar.has-photo{background:none !important;padding:0 !important;overflow:hidden !important;border:1px solid rgba(148,190,255,.30) !important;}
.account-avatar.has-photo img{width:100% !important;height:100% !important;object-fit:cover !important;display:block !important;border-radius:inherit !important;}
.profile-upload{min-height:48px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:12px !important;padding:10px 14px !important;border-radius:14px !important;border:1px solid rgba(148,190,255,.18) !important;background:#0d1728 !important;color:#dbeafe !important;font-weight:900 !important;}
.profile-upload input{padding:0 !important;border:0 !important;background:transparent !important;color:#bcd0eb !important;font-size:12px !important;}
.settings-help{margin:0 0 12px !important;color:#aebbd1 !important;line-height:1.45 !important;}
.flash.warn{background:#513b10 !important;color:#ffe5ad !important;}
@media(max-width:900px){.profile-upload{align-items:flex-start !important;flex-direction:column !important;}}


/* V79 - Agenda : espacement propre entre Synchronisation téléphone et formulaire/planning */
.agenda-sync-card{
  margin-bottom:32px !important;
}
.agenda-planning-grid{
  margin-top:0 !important;
  align-items:start !important;
  gap:28px !important;
}
.agenda-sync-card .actions{
  margin-top:22px !important;
  margin-bottom:22px !important;
}
.agenda-sync-card .copy-input{
  margin:14px 0 10px !important;
}
.agenda-new-card{
  margin-top:0 !important;
}
@media(max-width:900px){
  .agenda-sync-card{
    margin-bottom:24px !important;
  }
  .agenda-planning-grid{
    gap:22px !important;
  }
}

/* ===== V80 - Planning modifiable / suppression propre ===== */
.agenda-planning-card{
  min-width:0 !important;
}
.agenda-empty{
  padding:18px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  color:#bcd0eb !important;
  font-weight:800 !important;
}
.agenda-event-card{
  padding:18px !important;
  margin:14px 0 !important;
  border:1px solid rgba(148,190,255,.15) !important;
  border-radius:18px !important;
  background:rgba(8,18,34,.56) !important;
  box-shadow:0 10px 28px rgba(0,0,0,.22) !important;
  line-height:1.45 !important;
}
.agenda-event-card + .agenda-event-card{
  margin-top:16px !important;
}
.agenda-event-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
}
.agenda-event-head b{
  display:block !important;
  font-size:19px !important;
  color:#fff !important;
  margin-bottom:7px !important;
}
.agenda-event-head small,
.agenda-event-details span{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  color:#cbd7eb !important;
  font-weight:700 !important;
}
.agenda-event-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}
.agenda-event-actions form{
  margin:0 !important;
}
.agenda-event-actions .btn,
.agenda-edit-form .btn,
.agenda-edit-form button{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  white-space:nowrap !important;
}
.agenda-event-actions .ui-icon svg,
.agenda-edit-form .ui-icon svg{
  width:16px !important;
  height:16px !important;
}
.agenda-event-details{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(180px,1fr)) !important;
  gap:9px 14px !important;
  margin-top:14px !important;
}
.agenda-event-details a{
  color:#9ed8ff !important;
  text-decoration:underline !important;
}
.agenda-event-note{
  margin-top:14px !important;
  padding:12px 14px !important;
  border-radius:14px !important;
  background:rgba(255,255,255,.045) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  color:#dbe7fb !important;
}
.agenda-edit-form{
  display:none !important;
  margin-top:16px !important;
  padding:16px !important;
  border-radius:18px !important;
  background:rgba(0,117,255,.075) !important;
  border:1px solid rgba(0,117,255,.22) !important;
}
.agenda-edit-form.is-open{
  display:block !important;
}
.agenda-edit-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(190px,1fr)) !important;
  gap:12px !important;
}
.agenda-edit-grid label{
  color:#eaf3ff !important;
  font-weight:900 !important;
  font-size:13px !important;
}
.agenda-edit-grid input,
.agenda-edit-grid textarea{
  width:100% !important;
  margin-top:7px !important;
  padding:13px !important;
  border-radius:13px !important;
  border:1px solid rgba(148,190,255,.18) !important;
  background:#0d1728 !important;
  color:#fff !important;
  font-weight:700 !important;
}
.agenda-edit-grid textarea{
  min-height:96px !important;
  resize:vertical !important;
}
.agenda-edit-full{
  grid-column:1/-1 !important;
}
@media(max-width:900px){
  .agenda-event-head,
  .agenda-event-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    justify-content:stretch !important;
  }
  .agenda-event-actions .btn,
  .agenda-event-actions form,
  .agenda-event-actions button{
    width:100% !important;
    justify-content:center !important;
  }
  .agenda-event-details,
  .agenda-edit-grid{
    grid-template-columns:1fr !important;
  }
}

/* V81 - Notes : espacement propre entre recherche et blocs */
.notes-search-card{
  margin-bottom:28px!important;
}
.notes-layout-fixed{
  margin-top:0!important;
  align-items:start;
  gap:26px!important;
}
.notes-layout-fixed>.card{
  margin-top:0!important;
}
@media(max-width:900px){
  .notes-search-card{margin-bottom:22px!important;}
  .notes-layout-fixed{gap:18px!important;}
}

/* v82 - Messagerie : statut lu / non lu */
.mail-unread-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-right:8px;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(0,117,255,.22);
  border:1px solid rgba(120,200,255,.45);
  color:#bfeaff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  vertical-align:middle;
}
.bulk-actions button.secondary{
  white-space:nowrap;
}
@media(max-width:1000px){
  .mail-unread-badge{margin-bottom:4px}
}

/* V83 - Stock matériaux */
.stock-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:16px 0 22px}
.stock-stat{display:flex;align-items:center;gap:14px;padding:18px!important}
.stock-stat .ui-icon svg{width:30px;height:30px;color:#9ed8ff}
.stock-stat strong{display:block;font-size:26px;color:#fff;line-height:1}
.stock-stat span{display:block;color:#cbd5e1;margin-top:5px}
.warning-soft{border-color:rgba(255,184,77,.35)!important;background:rgba(255,184,77,.08)!important}
.stock-search-card{margin-bottom:22px!important}
.stock-search{align-items:center;flex-wrap:wrap}
.stock-search input{flex:1 1 320px;margin:0!important}
.stock-search select{flex:0 1 220px;padding:13px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff}
.stock-two{grid-template-columns:380px 1fr;margin-top:22px!important}
.stock-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
.stock-list{display:grid;gap:14px}
.stock-card{background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:16px}
.stock-card.stock-low{border-color:rgba(255,92,92,.55);background:rgba(180,35,35,.12)}
.stock-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.stock-head b{font-size:18px;color:#fff}
.stock-head small{display:block;color:#aeb9cc;margin-top:6px}
.stock-qty{text-align:right;background:rgba(0,117,255,.12);border:1px solid rgba(0,117,255,.22);border-radius:14px;padding:10px 14px;min-width:110px}
.stock-qty strong{display:block;font-size:28px;color:#9ed8ff;line-height:1}
.stock-qty span{display:block;color:#dbeafe;margin-top:3px}
.stock-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;color:#cbd5e1}
.stock-meta span{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:6px 10px}
.stock-notes{margin-top:12px;color:#dbeafe;line-height:1.55;background:rgba(255,255,255,.035);border-radius:12px;padding:10px}
.stock-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-top:14px}
.danger-tag{background:#b42323!important}
@media(max-width:1000px){.stock-two{grid-template-columns:1fr}.stock-form-grid{grid-template-columns:1fr}.stock-head{display:block}.stock-qty{text-align:left;margin-top:10px}.stock-actions{justify-content:flex-start}.stock-search{display:block}.stock-search select,.stock-search button,.stock-search .btn{width:100%;margin-top:10px}}


/* V85 - Stock prix + PDF professionnel */
.page-head-actions{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}
.page-head-actions h1{margin-bottom:6px}.muted{color:#aeb9cc;margin:0}.head-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.head-buttons .ui-icon{vertical-align:middle;margin-right:6px}.stock-table-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.stock-table-wrap{overflow:auto;border-radius:16px;border:1px solid rgba(255,255,255,.08)}.stock-table{width:100%;border-collapse:collapse;min-width:1060px}.stock-table th,.stock-table td{padding:14px 12px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08);vertical-align:top}.stock-table th{background:rgba(0,117,255,.12);color:#fff;font-weight:800}.stock-table td{color:#dbeafe}.stock-table td small{display:block;color:#93a4bd;margin-top:4px}.stock-row-low{background:rgba(180,35,35,.12)}.table-actions{white-space:nowrap}.table-actions form{display:inline}.pagination{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:38px;height:38px;border-radius:12px;text-decoration:none;color:#dbeafe;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);font-weight:800}.pagination a.active{background:#0075ff;color:#fff}.stock-see-more{margin-top:16px;text-align:center}.stock-list-page-search{margin-top:4px!important}
@media(max-width:1000px){.page-head-actions{display:block}.head-buttons{justify-content:flex-start;margin-top:12px}.head-buttons .btn{width:100%;justify-content:center}.stock-table-head{display:block}.stock-table-head .btn{margin-top:10px;width:100%}}

/* V85 - Prix stock */
.stock-value{font-weight:800;color:#9ed8ff}.stock-table th:nth-child(5),.stock-table td:nth-child(5){white-space:nowrap}.stock-table th:nth-child(6),.stock-table td:nth-child(6){white-space:nowrap}

/* V87 - Impression mail propre : aucun bandeau/header/menu dans le PDF papier */
@media print {
  @page { margin: 14mm; }

  html, body {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #000 !important;
    overflow: visible !important;
  }

  .top-quickbar,
  .clean-topbar,
  .top-account,
  .notif-panel,
  .account-panel,
  .sidebar,
  aside.sidebar,
  .mail-side,
  .actions,
  .bulk-actions,
  .search,
  .flash,
  nav,
  .top-toolbar,
  .mobile-header,
  .app-header,
  .dashboard-header {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
  }

  .main,
  main.main,
  .mail-layout,
  .mail-main,
  .card {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #000 !important;
  }

  .mail-main > h1 {
    margin: 0 0 18px !important;
    padding: 0 !important;
    color: #000 !important;
  }

  .mail-main > h2,
  .mail-main > p,
  .mail-content {
    color: #000 !important;
  }

  .mail-content {
    margin-top: 24px !important;
    padding: 0 !important;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
    max-width: none !important;
  }

  .mail-content * {
    max-width: 100% !important;
  }
}

/* v88 - Messagerie : bulle rouge mails non lus + choix PJ serveur */
.sidebar nav a.sidebar-mail-link{position:relative;padding-right:52px;}
.side-mail-badge{
  position:absolute;right:18px;top:50%;transform:translateY(-50%);
  min-width:20px;height:20px;padding:0 6px;border-radius:999px;
  display:inline-flex;align-items:center;justify-content:center;
  background:#ef233c;color:#fff;font-size:12px;font-weight:900;line-height:1;
  border:2px solid #07111f;box-shadow:0 0 0 3px rgba(239,35,60,.18),0 8px 20px rgba(239,35,60,.28);
}
.server-attachments-box{
  margin-top:14px;padding:18px;border:1px solid rgba(148,163,184,.24);border-radius:20px;
  background:linear-gradient(180deg,rgba(15,27,45,.78),rgba(8,16,29,.82));
  box-shadow:0 18px 40px rgba(2,8,23,.18);
}
.server-attachments-title{display:flex;gap:12px;align-items:center;margin-bottom:14px;color:#f8fafc;}
.server-attachments-title .ui-icon{color:#7dd3fc;flex:0 0 auto;}
.server-attachments-title small{display:block;margin-top:4px;color:#a8b3c5;font-weight:600;line-height:1.35;}
.server-file-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;margin-bottom:10px;align-items:center;}
.server-file-search-wrap{position:relative;display:flex;align-items:center;}
.server-file-search-wrap .ui-icon{position:absolute;left:13px;width:17px;height:17px;color:#94a3b8;pointer-events:none;}
.server-file-search{width:100%;margin:0!important;padding-left:40px!important;}
.server-file-type-filter{height:44px;border-radius:14px;border:1px solid rgba(148,163,184,.24);background:rgba(2,8,23,.46);color:#e5e7eb;padding:0 12px;font-weight:800;}
.server-file-selected-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0 12px;padding:10px 12px;border-radius:14px;background:rgba(2,8,23,.32);border:1px dashed rgba(148,163,184,.24);color:#a8b3c5;font-size:13px;font-weight:800;}
.server-file-selected-bar.has-selection{border-color:rgba(34,197,94,.45);background:rgba(22,101,52,.15);color:#dcfce7;}
.server-file-selected-actions{display:flex;gap:8px;flex-wrap:wrap;}
.server-file-selected-actions button{padding:7px 10px;border-radius:10px;font-size:12px;}
.server-file-list{max-height:430px;overflow:auto;display:grid;gap:8px;padding-right:4px;scrollbar-width:thin;}
.server-file-choice{
  display:flex;align-items:center;gap:12px;justify-content:space-between;
  padding:12px 13px;border:1px solid rgba(148,163,184,.18);border-radius:16px;
  background:rgba(2,8,23,.40);cursor:pointer;transition:.15s ease;
}
.server-file-choice:hover{border-color:rgba(125,211,252,.55);background:rgba(14,165,233,.12);transform:translateY(-1px);}
.server-file-choice input[type="checkbox"]{width:18px;height:18px;accent-color:#0d6efd;flex:0 0 auto;}
.server-file-choice:has(input:checked){border-color:rgba(34,197,94,.65);background:rgba(22,101,52,.18);}
.server-file-main{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1;}
.server-file-name{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f8fafc;font-weight:900;}
.server-file-name .ui-icon{width:17px;height:17px;color:#7dd3fc;flex:0 0 auto;}
.server-file-dir{display:block;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;}
.server-file-meta{display:flex;flex-direction:column;align-items:flex-end;gap:3px;flex:0 0 auto;color:#94a3b8;white-space:nowrap;}
.server-file-meta small{color:#94a3b8;font-weight:800;}
.server-file-empty{padding:12px;border-radius:14px;background:rgba(2,8,23,.34);color:#94a3b8;}
.server-file-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(148,163,184,.16);}
.server-file-pagination .server-file-count{margin-right:auto;color:#a8b3c5;font-weight:800;font-size:13px;}
.server-file-pagination button{padding:8px 11px;border-radius:10px;}
.server-file-pagination button.active-page{background:#0d6efd;color:#fff;border-color:#0d6efd;}
.server-file-pagination button:disabled{opacity:.45;cursor:not-allowed;}
@media (max-width:760px){
  .server-file-toolbar{grid-template-columns:1fr;}
  .server-file-selected-bar{align-items:stretch;flex-direction:column;}
  .server-file-selected-actions button{flex:1;}
  .server-file-choice{align-items:flex-start;gap:9px;}
  .server-file-meta{align-items:flex-start;}
  .side-mail-badge{right:12px;}
}


/* v92 - Accueil : catégories Stock / Véhicules séparées */
.vehicle-home-widget{
  border:1px solid rgba(42,125,225,.16);
}
.vehicle-home-cats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:16px 0;
}
.vehicle-home-cat{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px;
  border-radius:18px;
  text-decoration:none;
  color:#122033;
  background:linear-gradient(135deg,#f7fbff,#eef6ff);
  border:1px solid rgba(42,125,225,.16);
  box-shadow:0 10px 28px rgba(20,42,77,.06);
}
.vehicle-home-cat:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(20,42,77,.1);
}
.vehicle-home-cat span{
  font-weight:800;
}
.vehicle-home-cat strong{
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:#fff;
  color:#0d6efd;
  font-size:1.25rem;
  box-shadow:inset 0 0 0 1px rgba(13,110,253,.12);
}
.vehicle-home-actions{
  margin-top:14px;
}
@media (max-width:700px){
  .vehicle-home-cats{grid-template-columns:1fr;}
}

/* Sécurité / mot de passe oublié */
.login-card .login-link{color:#0075ff;font-weight:800;text-decoration:none}.login-card .login-link:hover{text-decoration:underline}.login-card .login-help{color:#64748b;font-size:14px;line-height:1.45;margin:0 0 14px}.login-card .btn{display:inline-flex;justify-content:center;align-items:center;background:#0075ff;color:#fff;text-decoration:none;font-weight:800;padding:13px 18px;border-radius:14px;box-shadow:0 12px 28px rgba(0,117,255,.22)}


/* Module Employés */
.employee-stats .stock-stat strong{font-size:1.55rem}.employees-two{align-items:start}.employee-list{display:grid;gap:14px}.employee-row{border:1px solid rgba(0,117,255,.14);background:linear-gradient(135deg,#fff,#f7fbff);border-radius:18px;padding:16px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.employee-row strong{font-size:1.05rem}.employee-row p{margin:6px 0;color:#64748b}.employee-row small{color:#475569}.role-badge{display:inline-flex;align-items:center;margin-left:8px;padding:4px 9px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.role-badge.admin{background:#e8f1ff;color:#005ed6}.role-badge.employee{background:#eefdf5;color:#047857}.small-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.small-actions form{margin:0}.employee-docs{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px dashed rgba(0,117,255,.22)}.employee-docs a{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:12px;background:#eef6ff;text-decoration:none;color:#075bba;font-weight:700}.employee-block{margin-top:18px}.employee-inline-form{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;align-items:end}.employee-inline-form input,.employee-inline-form select{width:100%;padding:11px 12px;border:1px solid #dbe7ff;border-radius:13px;background:#fff}.table-wrap{overflow:auto;margin-top:14px}.table-wrap table{width:100%;border-collapse:separate;border-spacing:0 8px}.table-wrap th{text-align:left;color:#64748b;font-size:.85rem}.table-wrap td{background:#f8fbff;padding:11px;border-top:1px solid #e6efff;border-bottom:1px solid #e6efff}.table-wrap td:first-child{border-left:1px solid #e6efff;border-radius:12px 0 0 12px}.table-wrap td:last-child{border-right:1px solid #e6efff;border-radius:0 12px 12px 0}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#eef6ff;color:#075bba;font-weight:800;font-size:.78rem}.btn.danger,button.danger{background:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important}
@media(max-width:900px){.employee-row{grid-template-columns:1fr}.small-actions{justify-content:flex-start}.employee-inline-form{grid-template-columns:1fr 1fr}.employee-inline-form button{grid-column:1/-1}}
@media(max-width:560px){.employee-inline-form{grid-template-columns:1fr}.role-badge{margin-left:0;margin-top:6px}.employee-docs a{width:100%}}

/* v96 - actions PDF module employés */
.section-title-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:14px}
.section-title-actions h2{margin:0}
@media (max-width:720px){.section-title-actions{align-items:stretch}.section-title-actions .btn{width:100%;justify-content:center}}

/* v98 - compte salarié automatique */
.employee-account-notice{
  margin:14px 0 4px;
  padding:14px 16px;
  border-radius:16px;
  background:linear-gradient(135deg, rgba(0,117,255,.10), rgba(5,21,43,.06));
  border:1px solid rgba(0,117,255,.22);
  display:flex;
  flex-direction:column;
  gap:4px;
  color:#0f172a;
}
.employee-account-notice b{font-size:14px;color:#06152b}
.employee-account-notice span,.field-help{font-size:12px;color:#64748b;line-height:1.35}
.field-help{display:block;margin-top:6px}
@media(max-width:720px){.employee-account-notice{padding:12px}}


/* v99 - Espace salarié : navigation limitée + optimisation mobile */
.employee-only-nav a{font-weight:800}
.employee-self-name{display:flex;align-items:center;gap:8px;padding:11px 13px;border-radius:14px;background:#f6f9ff;border:1px solid #dbe7ff;color:#0f172a}
.employee-inline-form{align-items:end}
.employee-inline-form input,.employee-inline-form select,.employee-inline-form button{min-height:44px}
.section-title-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.table-wrap table{min-width:760px}

@media (max-width: 760px){
  body{overflow-x:hidden}
  .top-toolbar{display:none!important}
  .sidebar{position:sticky!important;top:0!important;width:100%!important;min-height:0!important;height:auto!important;z-index:50!important;padding:10px!important;border-radius:0 0 22px 22px!important}
  .sidebar .brand{justify-content:center;margin-bottom:10px!important}
  .sidebar nav,.employee-only-nav{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  .employee-only-nav a,.sidebar nav a{justify-content:center!important;text-align:center!important;padding:12px 10px!important;border-radius:14px!important;font-size:14px!important}
  .main{margin-left:0!important;padding:14px!important;width:100%!important}
  .page-head-actions{display:block!important;margin-top:8px!important}
  .page-head-actions h1{font-size:28px!important;line-height:1.1!important}
  .stock-stats.employee-stats{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
  .stock-stat{padding:14px!important;min-height:86px!important}
  .stock-stat strong{font-size:20px!important}
  .employees-two,.stock-two,.two{display:block!important}
  .employees-two>.card,.stock-two>.card,.two>.card{margin-bottom:14px!important}
  .employee-block{padding:14px!important;margin-top:14px!important;border-radius:20px!important}
  .section-title-actions{align-items:stretch!important}
  .section-title-actions h2{width:100%;margin-bottom:4px!important}
  .section-title-actions .btn{width:100%;justify-content:center!important;text-align:center!important}
  .employee-inline-form{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .employee-inline-form input,.employee-inline-form select,.employee-inline-form button,.employee-inline-form .employee-self-name{width:100%!important;box-sizing:border-box!important;font-size:16px!important}
  .employee-list{display:grid!important;gap:10px!important}
  .employee-row{display:block!important;padding:14px!important;border-radius:18px!important}
  .employee-row .actions,.small-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:12px!important}
  .employee-row .actions .btn,.employee-row .actions button,.small-actions .btn,.small-actions button{width:100%!important;justify-content:center!important}
  .table-wrap{margin-top:10px!important;border-radius:16px!important;border:1px solid #e5eefc!important}
  .table-wrap table{font-size:13px!important;min-width:720px!important}
  .table-wrap th,.table-wrap td{padding:10px 9px!important;white-space:nowrap!important}
  .account-menu{right:10px!important;top:10px!important}
}

@media (max-width: 430px){
  .stock-stats.employee-stats{grid-template-columns:1fr!important}
  .sidebar nav,.employee-only-nav{grid-template-columns:1fr!important}
  .page-head-actions h1{font-size:24px!important}
}

/* v100 - Correction approfondie mobile espace salarié */
body.employee-space{
  background:#061020 !important;
}
body.employee-space .top-account{
  background:rgba(7,17,32,.96) !important;
}
body.employee-space .employee-only-nav .ui-icon svg{
  stroke:#9ed8ff !important;
}
body.employee-space .employee-inline-form input,
body.employee-space .employee-inline-form select,
body.employee-space .employee-inline-form textarea,
body.employee-space .employee-self-name{
  background:#0d1728 !important;
  color:#eaf3ff !important;
  border:1px solid rgba(148,190,255,.22) !important;
  box-shadow:none !important;
}
body.employee-space .employee-inline-form input::placeholder,
body.employee-space .employee-inline-form textarea::placeholder{
  color:#94a3b8 !important;
  opacity:1 !important;
}
body.employee-space .employee-inline-form input[type="date"],
body.employee-space .employee-inline-form input[type="time"]{
  color-scheme:dark !important;
}
body.employee-space .table-wrap{
  border-color:rgba(148,190,255,.18) !important;
  background:rgba(8,15,29,.45) !important;
}
body.employee-space .table-wrap th{
  color:#9fb6d8 !important;
}
body.employee-space .table-wrap td{
  background:#0d1728 !important;
  color:#dbeafe !important;
  border-color:rgba(148,190,255,.14) !important;
}

@media (max-width:760px){
  body.employee-space{padding-top:84px !important;}
  body.employee-space .top-account{
    left:0 !important;
    right:0 !important;
    top:0 !important;
    width:100% !important;
    height:74px !important;
    padding:10px 14px !important;
    justify-content:flex-end !important;
    gap:8px !important;
    z-index:2000 !important;
    border-bottom:1px solid rgba(148,190,255,.14) !important;
  }
  body.employee-space .notif-btn{
    width:44px !important;
    height:44px !important;
    flex:0 0 44px !important;
  }
  body.employee-space .account-summary{
    height:48px !important;
    max-width:calc(100vw - 82px) !important;
    padding-right:10px !important;
  }
  body.employee-space .account-name{
    max-width:calc(100vw - 174px) !important;
    font-size:15px !important;
  }
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:fixed !important;
    top:76px !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    max-height:calc(100vh - 100px) !important;
    overflow:auto !important;
    border-radius:18px !important;
  }
  body.employee-space .sidebar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:8px 14px 12px !important;
    border-radius:0 0 20px 20px !important;
    z-index:10 !important;
    background:rgba(6,12,24,.82) !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(148,190,255,.12) !important;
  }
  body.employee-space .sidebar .brand{display:none !important;}
  body.employee-space .employee-only-nav{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    width:100% !important;
  }
  body.employee-space .employee-only-nav a{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:10px 8px !important;
    border-radius:15px !important;
    font-size:15px !important;
    background:rgba(13,23,40,.74) !important;
    border:1px solid rgba(148,190,255,.12) !important;
  }
  body.employee-space .main{
    margin:0 !important;
    padding:18px 14px 28px !important;
    padding-top:20px !important;
    width:100% !important;
  }
  body.employee-space .page-head-actions{margin:0 0 16px !important;}
  body.employee-space .page-head-actions h1{
    font-size:30px !important;
    line-height:1.05 !important;
    margin:0 0 8px !important;
  }
  body.employee-space .muted{
    font-size:16px !important;
    line-height:1.35 !important;
  }
  body.employee-space .flash{
    margin:12px 0 16px !important;
    font-size:15px !important;
    line-height:1.35 !important;
    padding:14px !important;
  }
  body.employee-space .stock-stats.employee-stats{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:12px !important;
    margin:14px 0 18px !important;
  }
  body.employee-space .stock-stats.employee-stats .card,
  body.employee-space .stock-stat{
    min-height:98px !important;
    padding:16px !important;
    border-radius:20px !important;
  }
  body.employee-space .employee-block{
    margin-top:18px !important;
    padding:18px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }
  body.employee-space .employee-block h2,
  body.employee-space .section-title-actions h2{
    font-size:25px !important;
    line-height:1.1 !important;
    margin:0 0 10px !important;
  }
  body.employee-space .section-title-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    margin-bottom:14px !important;
  }
  body.employee-space .section-title-actions .btn{
    width:100% !important;
    min-height:48px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:15px !important;
    border-radius:15px !important;
  }
  body.employee-space .employee-inline-form{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  body.employee-space .employee-inline-form input,
  body.employee-space .employee-inline-form select,
  body.employee-space .employee-inline-form button,
  body.employee-space .employee-self-name{
    min-height:50px !important;
    width:100% !important;
    border-radius:16px !important;
    padding:13px 14px !important;
    font-size:16px !important;
  }
  body.employee-space .employee-inline-form button{
    background:#0075ff !important;
    color:#fff !important;
    font-weight:900 !important;
    margin-top:2px !important;
  }
  body.employee-space .table-wrap{
    margin-top:14px !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border-radius:18px !important;
  }
  body.employee-space .table-wrap table{
    min-width:620px !important;
    font-size:14px !important;
  }
  body.employee-space .table-wrap th,
  body.employee-space .table-wrap td{
    padding:12px 10px !important;
    white-space:nowrap !important;
  }
}

@media (max-width:430px){
  body.employee-space{padding-top:78px !important;}
  body.employee-space .top-account{height:68px !important;padding:9px 10px !important;}
  body.employee-space .notif-btn{width:42px !important;height:42px !important;flex-basis:42px !important;}
  body.employee-space .account-avatar{width:34px !important;height:34px !important;}
  body.employee-space .account-summary{height:46px !important;gap:8px !important;}
  body.employee-space .account-name{font-size:14px !important;max-width:calc(100vw - 166px) !important;}
  body.employee-space .main{padding-left:12px !important;padding-right:12px !important;}
  body.employee-space .stock-stats.employee-stats{grid-template-columns:1fr !important;}
  body.employee-space .employee-only-nav{grid-template-columns:1fr 1fr !important;}
}

/* v101 - Correction mobile profonde espace salarié : haut propre + champs lisibles */
.field-wrap{display:flex;flex-direction:column;gap:6px;min-width:0}
.field-wrap span{font-size:12px;font-weight:900;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.employee-form-help{grid-column:1/-1;color:#64748b;font-size:13px;font-weight:700;background:#f6f9ff;border:1px solid #dbe7ff;border-radius:13px;padding:10px 12px}
.employee-form-readable input[type="date"],.employee-form-readable input[type="time"]{appearance:auto;-webkit-appearance:auto;color:#0f172a!important;background:#fff!important;opacity:1!important}
.employee-form-readable input[type="date"]::-webkit-date-and-time-value,.employee-form-readable input[type="time"]::-webkit-date-and-time-value{color:inherit!important;text-align:left!important}

@media (max-width:760px){
  body.employee-space{padding-top:0!important;min-height:100vh!important;}
  body.employee-space .top-account{
    position:sticky!important;
    top:0!important;
    left:auto!important;right:auto!important;
    width:100%!important;height:auto!important;min-height:64px!important;
    padding:10px 14px!important;
    justify-content:flex-end!important;
    background:rgba(7,17,32,.98)!important;
    backdrop-filter:blur(14px)!important;
    z-index:3000!important;
  }
  body.employee-space .top-account details{position:relative!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel{top:70px!important;}
  body.employee-space .sidebar{position:relative!important;margin:0!important;transform:none!important;}
  body.employee-space .main{padding-top:20px!important;}
  body.employee-space .employee-only-nav{grid-template-columns:1fr 1fr!important;}
  body.employee-space .employee-only-nav a{min-height:44px!important;}
  body.employee-space .employee-form-readable{gap:13px!important;}
  body.employee-space .field-wrap{gap:7px!important;}
  body.employee-space .field-wrap span{font-size:13px!important;color:#b9c9e6!important;letter-spacing:.03em!important;}
  body.employee-space .employee-form-readable input,body.employee-space .employee-form-readable select,body.employee-space .employee-form-readable .employee-self-name{
    min-height:56px!important;
    padding:14px 16px!important;
    border-radius:17px!important;
    background:#0d1728!important;
    color:#f8fbff!important;
    border:1px solid rgba(148,190,255,.32)!important;
    font-size:16px!important;
    opacity:1!important;
  }
  body.employee-space .employee-form-readable input[type="date"],body.employee-space .employee-form-readable input[type="time"]{
    color:#f8fbff!important;
    background:#0d1728!important;
    color-scheme:dark!important;
    -webkit-text-fill-color:#f8fbff!important;
  }
  body.employee-space .employee-form-readable input[type="date"]::-webkit-date-and-time-value,body.employee-space .employee-form-readable input[type="time"]::-webkit-date-and-time-value{
    color:#f8fbff!important;
    -webkit-text-fill-color:#f8fbff!important;
    opacity:1!important;
    text-align:left!important;
  }
  body.employee-space .employee-form-readable input::-webkit-calendar-picker-indicator{filter:invert(1);opacity:.9!important;}
  body.employee-space .employee-form-help{background:rgba(0,117,255,.10)!important;border-color:rgba(148,190,255,.24)!important;color:#dbeafe!important;border-radius:15px!important;}
  body.employee-space .employee-inline-form button{min-height:58px!important;border-radius:18px!important;font-size:17px!important;}
  body.employee-space .section-title-actions h2,body.employee-space .employee-block h2{font-size:28px!important;}
}

@media (max-width:430px){
  body.employee-space .top-account{min-height:60px!important;padding:8px 10px!important;}
  body.employee-space .account-summary{max-width:calc(100vw - 72px)!important;}
  body.employee-space .account-name{max-width:calc(100vw - 172px)!important;}
  body.employee-space .main{padding-left:14px!important;padding-right:14px!important;}
}

/* v102 - Correction mobile approfondie Employés : header non flottant + champs iPhone lisibles */
@media (max-width: 760px){
  html, body.employee-space{
    overflow-x:hidden !important;
    background:#061020 !important;
  }
  body.employee-space{
    padding-top:0 !important;
  }
  body.employee-space .top-account{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    height:auto !important;
    min-height:66px !important;
    margin:0 !important;
    padding:12px 14px !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    background:#071120 !important;
    border-bottom:1px solid rgba(148,190,255,.18) !important;
    z-index:20 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
  }
  body.employee-space .notif-btn{
    width:46px !important;
    height:46px !important;
    flex:0 0 46px !important;
    border-radius:16px !important;
  }
  body.employee-space .account-summary{
    height:50px !important;
    max-width:calc(100vw - 84px) !important;
    min-width:0 !important;
    border-radius:20px !important;
  }
  body.employee-space .account-avatar{
    width:38px !important;
    height:38px !important;
    flex:0 0 38px !important;
  }
  body.employee-space .account-name{
    max-width:calc(100vw - 190px) !important;
    font-size:16px !important;
  }
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:absolute !important;
    top:58px !important;
    right:0 !important;
    left:auto !important;
    width:min(340px, calc(100vw - 28px)) !important;
    max-height:70vh !important;
    overflow:auto !important;
    z-index:3000 !important;
  }
  body.employee-space .sidebar{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    width:100% !important;
    margin:0 !important;
    padding:10px 14px 14px !important;
    min-height:0 !important;
    height:auto !important;
    z-index:10 !important;
    background:linear-gradient(180deg,#071120,#071326) !important;
    border-bottom:1px solid rgba(148,190,255,.16) !important;
    border-radius:0 0 22px 22px !important;
  }
  body.employee-space .sidebar .brand{display:none !important;}
  body.employee-space .employee-only-nav{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }
  body.employee-space .employee-only-nav a{
    min-height:48px !important;
    padding:12px 10px !important;
    justify-content:center !important;
    border-radius:16px !important;
    background:rgba(13,23,40,.72) !important;
    border:1px solid rgba(148,190,255,.14) !important;
  }
  body.employee-space .main{
    margin-left:0 !important;
    padding:22px 14px 90px !important;
    width:100% !important;
  }
  body.employee-space .card,
  body.employee-space .employee-block,
  body.employee-space .stock-stat{
    background:rgba(8,15,29,.92) !important;
    border:1px solid rgba(148,190,255,.18) !important;
    color:#f8fbff !important;
  }
  body.employee-space .page-head-actions h1,
  body.employee-space .employee-block h2,
  body.employee-space .section-title-actions h2{
    color:#fff !important;
  }
  body.employee-space .field-wrap{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
  }
  body.employee-space .field-wrap span{
    display:block !important;
    color:#dbeafe !important;
    font-size:13px !important;
    font-weight:900 !important;
    line-height:1.2 !important;
    opacity:1 !important;
    text-transform:none !important;
    letter-spacing:0 !important;
  }
  body.employee-space .employee-form-readable input,
  body.employee-space .employee-form-readable select,
  body.employee-space .employee-form-readable textarea,
  body.employee-space .employee-self-name{
    display:block !important;
    width:100% !important;
    min-height:58px !important;
    padding:15px 16px !important;
    border-radius:18px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.34) !important;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    opacity:1 !important;
    font-size:17px !important;
    line-height:1.25 !important;
  }
  body.employee-space .employee-form-readable input[type="date"],
  body.employee-space .employee-form-readable input[type="time"]{
    color-scheme:dark !important;
    appearance:auto !important;
    -webkit-appearance:auto !important;
    min-height:58px !important;
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
  }
  body.employee-space .employee-form-readable input[type="date"]::-webkit-date-and-time-value,
  body.employee-space .employee-form-readable input[type="time"]::-webkit-date-and-time-value{
    color:#fff !important;
    -webkit-text-fill-color:#fff !important;
    opacity:1 !important;
    text-align:left !important;
  }
  body.employee-space .employee-form-readable input[type="date"]::-webkit-calendar-picker-indicator,
  body.employee-space .employee-form-readable input[type="time"]::-webkit-calendar-picker-indicator{
    filter:invert(1) brightness(1.6) !important;
    opacity:1 !important;
  }
  body.employee-space .employee-form-readable button{
    min-height:60px !important;
    border-radius:19px !important;
    font-size:18px !important;
    font-weight:900 !important;
  }
  body.employee-space .employee-form-help{
    color:#dbeafe !important;
    background:rgba(0,117,255,.12) !important;
    border:1px solid rgba(148,190,255,.24) !important;
  }
  body.employee-space .table-wrap{
    max-width:100% !important;
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
    border:1px solid rgba(148,190,255,.18) !important;
    background:rgba(8,15,29,.7) !important;
  }
  body.employee-space .table-wrap table{min-width:720px !important;}
}
@media (max-width:430px){
  body.employee-space .top-account{padding:10px 10px !important;}
  body.employee-space .account-summary{max-width:calc(100vw - 78px) !important;}
  body.employee-space .account-name{max-width:calc(100vw - 178px) !important;}
  body.employee-space .main{padding-left:12px !important;padding-right:12px !important;}
  body.employee-space .employee-only-nav a{font-size:15px !important;}
}

/* v103 - Correction ultra approfondie du haut mobile salarié */
@media (max-width: 760px){
  body.employee-space{
    padding-top:0 !important;
    -webkit-text-size-adjust:100% !important;
  }
  body.employee-space .top-account{
    position:sticky !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    min-height:0 !important;
    height:auto !important;
    margin:0 !important;
    padding:calc(8px + env(safe-area-inset-top,0px)) 12px 10px !important;
    display:flex !important;
    flex-wrap:wrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    background:linear-gradient(180deg,rgba(7,17,32,.99),rgba(7,19,38,.99)) !important;
    border-bottom:1px solid rgba(148,190,255,.18) !important;
    border-radius:0 0 22px 22px !important;
    box-shadow:0 10px 26px rgba(0,0,0,.24) !important;
    z-index:5000 !important;
    backdrop-filter:blur(14px) !important;
  }
  body.employee-space .top-account .employee-only-nav{
    order:3 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin:4px 0 0 !important;
  }
  body.employee-space .top-account .employee-only-nav a{
    min-height:42px !important;
    height:42px !important;
    padding:8px 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:15px !important;
    font-size:15px !important;
    font-weight:900 !important;
    color:#eaf4ff !important;
    background:rgba(13,23,40,.88) !important;
    border:1px solid rgba(148,190,255,.22) !important;
  }
  body.employee-space .top-account .employee-only-nav .ui-icon{
    width:19px !important;
    height:19px !important;
    flex:0 0 19px !important;
  }
  body.employee-space .notif-menu{order:1 !important;margin-left:auto !important;}
  body.employee-space .account-menu{order:2 !important;min-width:0 !important;}
  body.employee-space .notif-btn{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    border-radius:15px !important;
    background:rgba(13,23,40,.92) !important;
    border:1px solid rgba(148,190,255,.24) !important;
  }
  body.employee-space .account-summary{
    height:44px !important;
    min-height:44px !important;
    max-width:calc(100vw - 78px) !important;
    padding:5px 9px !important;
    gap:8px !important;
    border-radius:16px !important;
    background:rgba(13,23,40,.92) !important;
    border:1px solid rgba(148,190,255,.24) !important;
  }
  body.employee-space .account-avatar{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
    font-size:14px !important;
  }
  body.employee-space .account-name{
    max-width:calc(100vw - 176px) !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    font-size:15px !important;
    font-weight:900 !important;
  }
  body.employee-space .account-arrow{font-size:16px !important;opacity:.85 !important;}
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:absolute !important;
    top:52px !important;
    right:0 !important;
    left:auto !important;
    width:min(330px, calc(100vw - 24px)) !important;
    max-height:68vh !important;
    overflow:auto !important;
    z-index:7000 !important;
  }
  body.employee-space .sidebar{
    display:none !important;
  }
  body.employee-space .main{
    margin-left:0 !important;
    margin-top:0 !important;
    padding:18px 12px 110px !important;
    width:100% !important;
  }
  body.employee-space .page-head-actions{margin-top:0 !important;}
}
@media (max-width: 380px){
  body.employee-space .account-name{max-width:calc(100vw - 190px) !important;font-size:14px !important;}
  body.employee-space .account-summary{max-width:calc(100vw - 74px) !important;}
  body.employee-space .top-account .employee-only-nav a{font-size:14px !important;padding-left:6px !important;padding-right:6px !important;}
}

/* v104 - Correction réelle du haut mobile salarié
   Objectif : supprimer le gros double bandeau du haut sur iPhone.
   En mobile salarié, le salarié est déjà dans le module Employés : on garde seulement
   notifications + profil en haut. La déconnexion reste disponible dans le menu profil. */
@media (max-width: 760px){
  html, body.employee-space{
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden !important;
    background:#061020 !important;
  }
  body.employee-space .top-account{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    height:58px !important;
    min-height:58px !important;
    max-height:58px !important;
    margin:0 !important;
    padding:6px 12px !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
    background:#071120 !important;
    border-bottom:1px solid rgba(148,190,255,.16) !important;
    border-radius:0 !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    z-index:50 !important;
  }
  body.employee-space .notif-menu,
  body.employee-space .account-menu{
    margin:0 !important;
    padding:0 !important;
    flex:0 0 auto !important;
  }
  body.employee-space .notif-btn{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    flex:0 0 42px !important;
    border-radius:14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(13,23,40,.92) !important;
    border:1px solid rgba(148,190,255,.22) !important;
  }
  body.employee-space .account-summary{
    width:auto !important;
    max-width:calc(100vw - 78px) !important;
    height:44px !important;
    min-height:44px !important;
    padding:5px 9px !important;
    gap:8px !important;
    display:flex !important;
    align-items:center !important;
    border-radius:16px !important;
    background:rgba(13,23,40,.92) !important;
    border:1px solid rgba(148,190,255,.22) !important;
  }
  body.employee-space .account-avatar{
    width:34px !important;
    height:34px !important;
    flex:0 0 34px !important;
    font-size:14px !important;
  }
  body.employee-space .account-name{
    max-width:calc(100vw - 178px) !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
  body.employee-space .account-arrow{
    font-size:16px !important;
    line-height:1 !important;
    opacity:.85 !important;
  }

  /* Suppression du deuxième bandeau Employés / Déconnexion qui créait le haut énorme. */
  body.employee-space .sidebar{
    display:none !important;
  }
  body.employee-space .employee-only-nav{
    display:none !important;
  }

  body.employee-space .main{
    margin:0 !important;
    padding:18px 14px 95px !important;
    width:100% !important;
  }
  body.employee-space .page-head-actions{
    margin:0 0 14px !important;
    padding:0 !important;
  }
  body.employee-space .page-head-actions h1{
    font-size:32px !important;
    line-height:1.05 !important;
    margin:0 0 8px !important;
  }
  body.employee-space .muted{
    font-size:16px !important;
    line-height:1.35 !important;
  }
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:absolute !important;
    top:50px !important;
    right:0 !important;
    left:auto !important;
    width:min(330px, calc(100vw - 24px)) !important;
    max-height:72vh !important;
    overflow:auto !important;
    z-index:9000 !important;
    border-radius:18px !important;
  }
}
@media (max-width: 380px){
  body.employee-space .account-name{max-width:calc(100vw - 190px) !important;font-size:14px !important;}
  body.employee-space .account-summary{max-width:calc(100vw - 74px) !important;}
}


/* v105 - Correction approfondie REELLE du header mobile salarié
   Problème corrigé : éléments coupés à gauche, double bandeau, nav qui déborde.
   Le haut salarié devient une vraie grille mobile : notif + compte sur 1 ligne,
   boutons Employés/Déconnexion sur 1 ligne, zéro overflow horizontal. */
@media (max-width: 900px){
  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  body.employee-space{
    min-width:0 !important;
    background:#061020 !important;
  }
  body.employee-space *{
    max-width:100%;
  }

  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar{
    display:none !important;
  }

  body.employee-space .top-account{
    position:relative !important;
    inset:auto !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:10px 14px 12px !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) !important;
    grid-template-areas:
      "bell account"
      "nav nav" !important;
    column-gap:10px !important;
    row-gap:10px !important;
    align-items:center !important;
    justify-content:normal !important;
    overflow:hidden !important;
    background:linear-gradient(180deg, rgba(7,17,32,.98), rgba(7,17,32,.92)) !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.18) !important;
    border-radius:0 0 18px 18px !important;
    box-shadow:0 12px 28px rgba(0,0,0,.18) !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    z-index:1000 !important;
  }

  body.employee-space .top-account .notif-menu{
    grid-area:bell !important;
    order:1 !important;
    width:48px !important;
    min-width:48px !important;
    height:48px !important;
    margin:0 !important;
    justify-self:start !important;
    align-self:center !important;
  }
  body.employee-space .top-account .notif-btn{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
  }

  body.employee-space .top-account .account-menu{
    grid-area:account !important;
    order:2 !important;
    min-width:0 !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    justify-self:stretch !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:6px 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    overflow:hidden !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
  }
  body.employee-space .top-account .account-avatar{
    width:36px !important;
    height:36px !important;
    flex:0 0 36px !important;
    font-size:14px !important;
  }
  body.employee-space .top-account .account-name{
    display:block !important;
    min-width:0 !important;
    max-width:none !important;
    flex:1 1 auto !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:16px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:4px !important;
  }

  body.employee-space .top-account .employee-only-nav{
    grid-area:nav !important;
    order:3 !important;
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    overflow:hidden !important;
  }
  body.employee-space .top-account .employee-only-nav a{
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
    color:#eaf4ff !important;
    font-size:16px !important;
    font-weight:900 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .top-account .employee-only-nav a .ui-icon{
    width:20px !important;
    height:20px !important;
    flex:0 0 20px !important;
  }

  body.employee-space > .sidebar{
    position:absolute !important;
    width:0 !important;
    height:0 !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    border:0 !important;
    opacity:0 !important;
    pointer-events:none !important;
  }
  body.employee-space > .sidebar .employee-only-nav{
    display:none !important;
  }

  body.employee-space .main{
    margin:0 !important;
    padding:20px 14px 110px !important;
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }
  body.employee-space .page-head-actions,
  body.employee-space .page-head-actions h1,
  body.employee-space .card,
  body.employee-space .grid,
  body.employee-space .two{
    max-width:100% !important;
    min-width:0 !important;
  }

  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:absolute !important;
    top:58px !important;
    right:0 !important;
    left:auto !important;
    width:min(330px, calc(100vw - 28px)) !important;
    max-width:calc(100vw - 28px) !important;
    max-height:72vh !important;
    overflow:auto !important;
    z-index:9999 !important;
  }
}

@media (max-width: 390px){
  body.employee-space .top-account{padding-left:10px !important;padding-right:10px !important;grid-template-columns:46px minmax(0,1fr) !important;column-gap:8px !important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:46px !important;min-width:46px !important;max-width:46px !important;height:46px !important;}
  body.employee-space .top-account .account-summary{height:46px !important;min-height:46px !important;padding:5px 8px !important;}
  body.employee-space .top-account .account-avatar{width:34px !important;height:34px !important;flex-basis:34px !important;}
  body.employee-space .top-account .account-name{font-size:15px !important;}
  body.employee-space .top-account .employee-only-nav{gap:8px !important;}
  body.employee-space .top-account .employee-only-nav a{font-size:14px !important;height:46px !important;min-height:46px !important;padding:0 6px !important;}
}

/* ==========================================================
   V107 - CORRECTION ULTRA APPROFONDIE HEADER MOBILE EMPLOYÉ
   Objectif : zéro élément coupé, zéro overflow horizontal,
   header compact et stable sur iPhone/Safari mobile.
   ========================================================== */
@media (max-width: 900px){
  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  body.employee-space{
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
    background:#061020 !important;
    -webkit-text-size-adjust:100% !important;
  }
  body.employee-space *,
  body.employee-space *::before,
  body.employee-space *::after{
    box-sizing:border-box !important;
  }
  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar{
    display:none !important;
  }

  /* Header employé : vrai conteneur mobile, plus de position fixed ni largeur 330px */
  body.employee-space .top-account{
    position:relative !important;
    top:auto !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    inset:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:12px max(12px, env(safe-area-inset-left)) 14px max(12px, env(safe-area-inset-right)) !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) !important;
    grid-template-areas:
      "notif account"
      "nav nav" !important;
    gap:10px !important;
    align-items:center !important;
    justify-content:stretch !important;
    overflow:visible !important;
    background:linear-gradient(180deg, rgba(6,14,28,.98), rgba(7,18,36,.94)) !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.20) !important;
    border-radius:0 0 18px 18px !important;
    box-shadow:0 14px 28px rgba(0,0,0,.20) !important;
    z-index:30 !important;
  }

  body.employee-space .top-account details{
    position:relative !important;
    min-width:0 !important;
    margin:0 !important;
  }

  body.employee-space .top-account .notif-menu{
    grid-area:notif !important;
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    height:48px !important;
    justify-self:start !important;
    align-self:center !important;
  }
  body.employee-space .top-account .notif-btn{
    width:48px !important;
    min-width:48px !important;
    max-width:48px !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
    box-shadow:none !important;
  }

  body.employee-space .top-account .account-menu{
    grid-area:account !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    justify-self:stretch !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:5px 10px 5px 6px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    overflow:hidden !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
    box-shadow:none !important;
  }
  body.employee-space .top-account .account-avatar{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;
    height:38px !important;
    min-height:38px !important;
    max-height:38px !important;
    flex:0 0 38px !important;
    font-size:15px !important;
    line-height:1 !important;
  }
  body.employee-space .top-account .account-name{
    flex:1 1 auto !important;
    display:block !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:17px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:4px !important;
  }

  body.employee-space .employee-top-nav{
    grid-area:nav !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body.employee-space .employee-top-nav a{
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
    color:#eaf4ff !important;
    font-size:16px !important;
    font-weight:900 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .employee-top-nav a .ui-icon{
    width:20px !important;
    min-width:20px !important;
    height:20px !important;
  }

  /* Le vieux menu latéral employé ne doit jamais réapparaître en mobile */
  body.employee-space > .sidebar{
    display:none !important;
    visibility:visible !important;
    opacity:0 !important;
    pointer-events:none !important;
    width:0 !important;
    height:0 !important;
    overflow:hidden !important;
  }

  body.employee-space .main{
    margin:0 !important;
    padding:24px 14px 120px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
  }
  body.employee-space .main > *,
  body.employee-space .card,
  body.employee-space .grid,
  body.employee-space .two,
  body.employee-space .page-head-actions{
    max-width:100% !important;
    min-width:0 !important;
  }

  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:absolute !important;
    top:56px !important;
    right:0 !important;
    left:auto !important;
    width:min(330px, calc(100vw - 24px)) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:70vh !important;
    overflow:auto !important;
    z-index:9999 !important;
  }
}

@media (max-width: 390px){
  body.employee-space .top-account{
    grid-template-columns:46px minmax(0,1fr) !important;
    padding-left:10px !important;
    padding-right:10px !important;
    gap:8px !important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{
    width:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    height:46px !important;
    min-height:46px !important;
  }
  body.employee-space .top-account .account-summary{
    height:46px !important;
    min-height:46px !important;
    padding-right:8px !important;
  }
  body.employee-space .top-account .account-avatar{
    width:36px !important;
    min-width:36px !important;
    max-width:36px !important;
    height:36px !important;
    min-height:36px !important;
    max-height:36px !important;
    flex-basis:36px !important;
  }
  body.employee-space .top-account .account-name{
    font-size:15px !important;
  }
  body.employee-space .employee-top-nav{
    gap:8px !important;
  }
  body.employee-space .employee-top-nav a{
    height:46px !important;
    min-height:46px !important;
    font-size:14px !important;
    padding:0 6px !important;
  }
}

.leave-actions{display:flex;gap:8px;flex-wrap:wrap}.leave-actions form{margin:0}

/* v110 - Correction ULTRA mobile espace employé : header stable, aucun panneau coupé, zéro menu doublon */
@media (max-width: 900px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  body.employee-space{padding:0!important;margin:0!important;background:#061020!important;min-width:0!important;}
  body.employee-space *,body.employee-space *:before,body.employee-space *:after{box-sizing:border-box!important;}
  body.employee-space .clean-topbar,body.employee-space .top-quickbar{display:none!important;}

  body.employee-space .top-account{
    position:sticky!important;
    top:0!important;left:0!important;right:0!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:auto!important;min-height:0!important;max-height:none!important;
    margin:0!important;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px!important;
    display:grid!important;
    grid-template-columns:50px minmax(0,1fr)!important;
    grid-template-areas:"notif account" "nav nav"!important;
    gap:10px!important;
    align-items:center!important;justify-content:stretch!important;
    background:linear-gradient(180deg,#071226 0%,#08172d 100%)!important;
    border:0!important;border-bottom:1px solid rgba(148,190,255,.22)!important;
    border-radius:0 0 20px 20px!important;
    box-shadow:0 16px 34px rgba(0,0,0,.28)!important;
    overflow:visible!important;
    z-index:5000!important;
  }
  body.employee-space .top-account details{position:static!important;margin:0!important;min-width:0!important;}
  body.employee-space .top-account summary{list-style:none!important;-webkit-tap-highlight-color:transparent!important;}
  body.employee-space .top-account summary::-webkit-details-marker{display:none!important;}

  body.employee-space .top-account .notif-menu{grid-area:notif!important;width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;}
  body.employee-space .top-account .notif-btn{
    width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;min-height:50px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;
    margin:0!important;padding:0!important;border-radius:17px!important;
    background:#0d1728!important;border:1px solid rgba(148,190,255,.32)!important;color:#d9ecff!important;
    box-shadow:none!important;overflow:visible!important;
  }
  body.employee-space .top-account .notif-badge{top:-8px!important;right:-8px!important;z-index:2!important;}

  body.employee-space .top-account .account-menu{grid-area:account!important;width:100%!important;max-width:100%!important;min-width:0!important;}
  body.employee-space .top-account .account-summary{
    width:100%!important;max-width:100%!important;min-width:0!important;
    height:50px!important;min-height:50px!important;margin:0!important;padding:6px 10px 6px 7px!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;
    border-radius:18px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.32)!important;
    overflow:hidden!important;box-shadow:none!important;
  }
  body.employee-space .top-account .account-avatar{width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;flex:0 0 38px!important;font-size:15px!important;}
  body.employee-space .top-account .account-name{display:block!important;flex:1 1 auto!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:17px!important;font-weight:900!important;line-height:1!important;}
  body.employee-space .top-account .account-arrow{flex:0 0 auto!important;margin-left:auto!important;color:#9fb8d8!important;}

  body.employee-space .employee-top-nav{
    grid-area:nav!important;width:100%!important;max-width:100%!important;min-width:0!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;
    margin:0!important;padding:0!important;overflow:visible!important;
  }
  body.employee-space .employee-top-nav a{
    width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
    margin:0!important;padding:0 8px!important;border-radius:18px!important;
    background:#0d1728!important;border:1px solid rgba(148,190,255,.28)!important;color:#eef6ff!important;
    font-size:16px!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  body.employee-space .employee-top-nav a .ui-icon{width:20px!important;height:20px!important;min-width:20px!important;}

  body.employee-space > .sidebar{display:none!important;}
  body.employee-space .main{margin:0!important;padding:20px 14px 120px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
  body.employee-space .page-head-actions{margin:0 0 14px!important;}
  body.employee-space .page-head-actions h1{font-size:28px!important;line-height:1.05!important;margin:0 0 8px!important;}
  body.employee-space .muted{font-size:16px!important;line-height:1.38!important;}
  body.employee-space .flash{width:100%!important;margin:12px 0 16px!important;padding:14px!important;border-radius:16px!important;font-size:15px!important;line-height:1.35!important;}

  body.employee-space .notif-panel,body.employee-space .account-panel{
    position:fixed!important;
    top:calc(126px + env(safe-area-inset-top))!important;
    left:12px!important;right:12px!important;width:auto!important;max-width:none!important;min-width:0!important;
    max-height:calc(100vh - 150px)!important;overflow:auto!important;
    border-radius:18px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.26)!important;
    box-shadow:0 24px 70px rgba(0,0,0,.55)!important;z-index:99999!important;
  }

  body.employee-space .stock-stats.employee-stats{grid-template-columns:1fr!important;gap:12px!important;margin:14px 0 18px!important;}
  body.employee-space .stock-stat{min-height:96px!important;padding:16px!important;border-radius:20px!important;}
  body.employee-space .employee-block{overflow:hidden!important;border-radius:22px!important;padding:18px!important;margin-top:18px!important;}
  body.employee-space .employee-inline-form{grid-template-columns:1fr!important;gap:12px!important;}
  body.employee-space .employee-inline-form input,body.employee-space .employee-inline-form select,body.employee-space .employee-inline-form button,body.employee-space .employee-self-name{width:100%!important;max-width:100%!important;min-height:50px!important;font-size:16px!important;}
}

@media (max-width: 390px){
  body.employee-space .top-account{grid-template-columns:46px minmax(0,1fr)!important;padding-left:10px!important;padding-right:10px!important;gap:8px!important;}
  body.employee-space .top-account .notif-menu,body.employee-space .top-account .notif-btn{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;}
  body.employee-space .top-account .account-summary{height:46px!important;min-height:46px!important;padding-right:8px!important;}
  body.employee-space .top-account .account-avatar{width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;flex-basis:34px!important;}
  body.employee-space .top-account .account-name{font-size:15px!important;}
  body.employee-space .employee-top-nav{gap:8px!important;}
  body.employee-space .employee-top-nav a{height:46px!important;min-height:46px!important;font-size:14px!important;padding:0 6px!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel{top:calc(118px + env(safe-area-inset-top))!important;left:10px!important;right:10px!important;}
}

/* v113 - solde de congés administrateur / employé */
.employee-leave-balance{display:block;margin-top:6px;color:#a9b8d6;font-weight:700}
.employee-leave-summary{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:10px;align-items:center;margin:0 0 18px;padding:14px 16px;border:1px solid rgba(145,180,255,.22);border-radius:18px;background:rgba(13,24,46,.68)}
.employee-leave-summary strong{color:#fff;font-size:1.02rem}.employee-leave-summary span{display:block;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.055);color:#dce8ff;font-weight:800;text-align:center}.success-soft{border-color:rgba(95,220,145,.28)!important;background:rgba(18,56,37,.28)!important}
@media (max-width:760px){.employee-leave-summary{grid-template-columns:1fr;gap:8px;padding:12px}.employee-leave-summary span{text-align:left}.stock-form-grid{grid-template-columns:1fr!important}.employee-leave-balance{font-size:.9rem}}

/* v115 - Employés : pointage visible mobile, pagination 5 lignes, actions propres */
.employee-table-count{
  margin:14px 0 6px;
  color:#8ea3c2;
  font-size:13px;
  font-weight:800;
}
.employee-pagination{
  margin-top:14px!important;
  align-items:center;
}
.leave-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
}
.leave-actions form{margin:0!important;display:inline-flex!important;}
.leave-actions .btn.small,.leave-actions button.small{
  min-height:34px!important;
  padding:7px 10px!important;
  border-radius:10px!important;
  font-size:12px!important;
  line-height:1!important;
}
body.employee-space .table-wrap table td strong{color:#fff!important;}

@media (max-width:760px){
  body.employee-space #pointage .table-wrap,
  body.employee-space #conges .table-wrap,
  body.employee-space #planning .table-wrap{
    overflow:visible!important;
    border:0!important;
    background:transparent!important;
  }
  body.employee-space #pointage table,
  body.employee-space #conges table,
  body.employee-space #planning table{
    min-width:0!important;
    width:100%!important;
    border-collapse:separate!important;
    border-spacing:0 12px!important;
    display:block!important;
    font-size:15px!important;
  }
  body.employee-space #pointage thead,
  body.employee-space #conges thead,
  body.employee-space #planning thead,
  body.employee-space #pointage table tr:first-child,
  body.employee-space #conges table tr:first-child,
  body.employee-space #planning table tr:first-child{
    display:none!important;
  }
  body.employee-space #pointage tbody,
  body.employee-space #conges tbody,
  body.employee-space #planning tbody,
  body.employee-space #pointage tr,
  body.employee-space #conges tr,
  body.employee-space #planning tr{
    display:block!important;
    width:100%!important;
  }
  body.employee-space #pointage tr,
  body.employee-space #conges tr,
  body.employee-space #planning tr{
    margin:0 0 12px!important;
    padding:14px!important;
    background:#0d1728!important;
    border:1px solid rgba(148,190,255,.18)!important;
    border-radius:18px!important;
    box-shadow:0 10px 22px rgba(0,0,0,.16)!important;
  }
  body.employee-space #pointage td,
  body.employee-space #conges td,
  body.employee-space #planning td{
    display:grid!important;
    grid-template-columns:112px 1fr!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    padding:8px 0!important;
    white-space:normal!important;
    background:transparent!important;
    border:0!important;
    color:#eaf4ff!important;
  }
  body.employee-space #pointage td::before,
  body.employee-space #conges td::before,
  body.employee-space #planning td::before{
    content:attr(data-label);
    color:#9fb6d8!important;
    font-weight:900!important;
    font-size:12px!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
  }
  body.employee-space #pointage td:last-child,
  body.employee-space #conges td:last-child,
  body.employee-space #planning td:last-child{
    padding-bottom:0!important;
  }
  body.employee-space .leave-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  body.employee-space .leave-actions form,
  body.employee-space .leave-actions .btn,
  body.employee-space .leave-actions button{
    width:100%!important;
  }
  body.employee-space .employee-pagination{
    display:flex!important;
    justify-content:center!important;
    gap:8px!important;
  }
  body.employee-space .employee-pagination a{
    min-width:42px!important;
    height:42px!important;
    border-radius:13px!important;
  }
}

/* v116 - Pointage heures : visibilité + compteur modifiable admin */
.employee-time-total-box{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr 1fr;
  gap:10px;
  align-items:center;
  margin:16px 0 8px;
  padding:14px;
  border:1px solid rgba(145,180,255,.24);
  border-radius:18px;
  background:rgba(8,18,35,.72);
}
.employee-time-total-box strong{color:#fff;font-size:1.02rem;font-weight:900}
.employee-time-total-box span{display:block;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.06);color:#eaf4ff;font-weight:900;text-align:center}
.employee-time-table th,
.employee-time-table td{color:#eaf4ff!important;opacity:1!important;visibility:visible!important}
.employee-time-table th{background:rgba(10,22,42,.92)!important;color:#ffffff!important;font-weight:900!important}
.time-hours-value{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:78px;padding:7px 10px;border-radius:12px;background:rgba(49,130,255,.16);border:1px solid rgba(124,177,255,.35);color:#fff!important;font-size:15px!important;line-height:1!important;white-space:nowrap!important}
.manual-hours-note{display:block;margin-top:5px;color:#9fb6d8;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.04em}
.time-hours-form{display:grid!important;grid-template-columns:90px auto!important;gap:6px!important;align-items:center!important;min-width:220px}
.time-hours-form input{min-height:34px!important;height:34px!important;padding:6px 8px!important;border-radius:10px!important;font-weight:900!important;color:#07111f!important;background:#fff!important;border:1px solid rgba(145,180,255,.45)!important;text-align:center!important}
.time-actions{min-width:260px}
.status-pill.status-accepte{background:rgba(39,174,96,.16)!important;color:#bfffd7!important;border-color:rgba(39,174,96,.28)!important}
.status-pill.status-refuse{background:rgba(255,77,77,.16)!important;color:#ffd0d0!important;border-color:rgba(255,77,77,.28)!important}
.status-pill.status-en-attente{background:rgba(255,193,7,.16)!important;color:#ffe6a0!important;border-color:rgba(255,193,7,.28)!important}
@media (max-width:760px){
  body.employee-space .employee-time-total-box{grid-template-columns:1fr!important;padding:12px!important;gap:8px!important}
  body.employee-space .employee-time-total-box span{text-align:left!important}
  body.employee-space #pointage .employee-time-table table thead{display:none!important}
  body.employee-space #pointage .employee-time-table tbody{display:block!important;width:100%!important}
  body.employee-space #pointage .employee-time-table tr{display:block!important;width:100%!important;background:#0b1729!important;border:1px solid rgba(148,190,255,.25)!important;border-radius:18px!important;padding:14px!important;margin:0 0 12px!important;box-shadow:0 12px 28px rgba(0,0,0,.22)!important}
  body.employee-space #pointage .employee-time-table td{display:grid!important;grid-template-columns:108px minmax(0,1fr)!important;gap:10px!important;align-items:center!important;width:100%!important;min-height:38px!important;padding:9px 0!important;color:#f3f8ff!important;background:transparent!important;border:0!important;overflow:visible!important;white-space:normal!important}
  body.employee-space #pointage .employee-time-table td::before{content:attr(data-label)!important;color:#a9bde0!important;font-weight:900!important;font-size:12px!important;text-transform:uppercase!important;letter-spacing:.04em!important;display:block!important;opacity:1!important;visibility:visible!important}
  body.employee-space #pointage .employee-time-table td[data-label="Heures"]{align-items:start!important}
  body.employee-space .time-hours-value{justify-content:flex-start!important;min-width:0!important;width:max-content!important;max-width:100%!important;font-size:16px!important;padding:8px 11px!important}
  body.employee-space .time-actions{min-width:0!important;width:100%!important}
  body.employee-space .time-hours-form{grid-template-columns:1fr!important;min-width:0!important;width:100%!important}
  body.employee-space .time-hours-form input,body.employee-space .time-hours-form button{width:100%!important;min-height:42px!important}
}

/* v118 - Correction visibilité en-têtes Pointage heures */
body.employee-space #pointage .employee-time-table,
body.employee-space #pointage .employee-time-table table{
  color:#f8fbff!important;
}
body.employee-space #pointage .employee-time-table thead,
body.employee-space #pointage .employee-time-table thead tr,
body.employee-space #pointage .employee-time-table th{
  opacity:1!important;
  visibility:visible!important;
}
body.employee-space #pointage .employee-time-table th{
  color:#ffffff!important;
  background:#10233f!important;
  border:1px solid rgba(166,199,255,.32)!important;
  font-weight:950!important;
  text-shadow:none!important;
  white-space:nowrap!important;
}
body.employee-space #pointage .employee-time-table td,
body.employee-space #pointage .employee-time-table td *{
  opacity:1!important;
  visibility:visible!important;
}

@media (max-width: 760px){
  body.employee-space #pointage .employee-time-table thead{
    display:none!important;
  }
  body.employee-space #pointage .employee-time-table td::before{
    content:attr(data-label)!important;
    display:block!important;
    min-width:92px!important;
    color:#ffffff!important;
    background:rgba(49,130,255,.22)!important;
    border:1px solid rgba(166,199,255,.35)!important;
    border-radius:10px!important;
    padding:6px 8px!important;
    font-size:12px!important;
    line-height:1.1!important;
    font-weight:950!important;
    letter-spacing:.03em!important;
    text-transform:uppercase!important;
    opacity:1!important;
    visibility:visible!important;
    text-shadow:none!important;
  }
  body.employee-space #pointage .employee-time-table td[data-label="Date"]::before,
  body.employee-space #pointage .employee-time-table td[data-label="Employé"]::before,
  body.employee-space #pointage .employee-time-table td[data-label="Chantier"]::before,
  body.employee-space #pointage .employee-time-table td[data-label="Horaires"]::before,
  body.employee-space #pointage .employee-time-table td[data-label="Heures"]::before{
    color:#ffffff!important;
    background:#17365f!important;
  }
  body.employee-space #pointage .employee-time-table td{
    grid-template-columns:112px minmax(0,1fr)!important;
  }
}

/* v119 - correction lisibilité pointage + suppression notice compte */
.employee-account-notice{display:none!important;}
.employee-time-table table thead,
.employee-time-table table thead tr,
.employee-time-table table thead th{
  background:#071a36!important;
  color:#ffffff!important;
  opacity:1!important;
  visibility:visible!important;
}
.employee-time-table table tbody tr,
.employee-time-table table tbody td{
  color:#0f172a!important;
  opacity:1!important;
  visibility:visible!important;
}
.employee-time-table table tbody td a,
.employee-time-table table tbody td strong,
.employee-time-table .time-hours-value{
  color:#0f172a!important;
}
@media (max-width: 760px){
  .employee-time-table table thead{display:table-header-group!important;}
  .employee-time-table table thead th{font-size:12px!important;padding:8px 6px!important;}
  .employee-time-table table tbody td{background:#f8fbff!important;color:#0f172a!important;}
  .employee-time-table table tbody td::before{color:#12345f!important;font-weight:800!important;}
}


/* V120 calculatrice accueil */
.calculator-widget{
  grid-column:2;
}
.mcb-calculator{
  display:grid;
  gap:12px;
}
.mcb-calc-display{
  width:100%;
  box-sizing:border-box;
  padding:16px 18px;
  border-radius:18px;
  border:1px solid rgba(148,190,255,.30);
  background:rgba(255,255,255,.06);
  color:#fff;
  text-align:right;
  font-size:28px;
  font-weight:900;
  outline:none;
}
.mcb-calc-keys{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.mcb-calc-keys button{
  min-height:46px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.07);
  color:#eaf2ff;
  font-size:18px;
  font-weight:900;
  cursor:pointer;
}
.mcb-calc-keys button:hover{
  background:rgba(11,116,255,.20);
  border-color:rgba(11,116,255,.45);
}
.mcb-calc-keys .calc-danger{
  background:rgba(239,68,68,.18);
  color:#fecaca;
}
.mcb-calc-keys .calc-equal{
  grid-row:span 2;
  background:#0b74ff;
  border-color:#0b74ff;
  color:#fff;
}
.mcb-calc-keys .calc-zero{
  grid-column:span 2;
}
@media(max-width:1200px){
  .calculator-widget{grid-column:auto !important;}
}
@media(max-width:720px){
  .mcb-calc-display{font-size:24px;padding:14px;}
  .mcb-calc-keys button{min-height:44px;}
}


/* V121 accueil: Aujourd'hui / Planning du jour à côté des accès rapides */
.home-v60-grid > .quick-widget:not(.employee-home-widget):first-of-type{
  grid-column:span 2;
}
.home-v60-grid > .today-widget{
  grid-column:span 2;
}
.home-v60-grid > .employee-home-widget{
  grid-column:span 2;
}
.home-v60-grid > .calculator-widget{
  grid-column:span 2 !important;
}
@media(max-width:900px){
  .home-v60-grid > .quick-widget:not(.employee-home-widget):first-of-type,
  .home-v60-grid > .today-widget,
  .home-v60-grid > .employee-home-widget,
  .home-v60-grid > .calculator-widget{
    grid-column:1 / -1 !important;
  }
}


/* V121 sélection salarié obligatoire avant PDF pointage/congés */
.employee-pdf-select{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
  margin:0;
}
.employee-pdf-select label{
  display:grid;
  gap:5px;
  color:#12345f;
  font-weight:800;
  min-width:210px;
}
.employee-pdf-select label span{
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:#64748b;
}
.employee-pdf-select select{
  min-height:42px;
  border-radius:14px;
  border:1px solid #d7e3f3;
  background:#fff;
  color:#0f172a;
  padding:0 12px;
  font-weight:800;
}
@media(max-width:760px){
  .section-title-actions{align-items:stretch!important;}
  .employee-pdf-select,
  .employee-pdf-select label,
  .employee-pdf-select button{width:100%;}
}


/* v123 - Login Cloudflare Turnstile sombre */
.mcb-turnstile-wrap{display:flex;justify-content:center;align-items:center;margin:16px auto 18px;padding:8px 10px;min-height:82px;width:100%;max-width:330px;overflow:visible}
.login-card .cf-turnstile{display:block;width:300px;min-width:300px;max-width:300px;height:74px;overflow:visible;border-radius:0}
.login-card .cf-turnstile iframe{display:block;width:300px!important;min-width:300px!important;max-width:300px!important;height:74px!important;border:0!important;border-radius:10px!important;overflow:visible!important}
.login-card{box-shadow:0 24px 70px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.06);overflow:visible}
@media(max-width:480px){.mcb-turnstile-wrap{max-width:320px;padding:8px 4px;margin:14px auto 16px;transform:none}.login-card .cf-turnstile,.login-card .cf-turnstile iframe{width:300px!important;min-width:300px!important;max-width:300px!important}}

/* v123 - Bloc véhicules placé juste après Accès rapides */
.vehicle-home-widget{min-height:100%}
.vehicle-home-cats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}
.vehicle-home-cat{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border-radius:16px;background:rgba(0,117,255,.12);border:1px solid rgba(96,165,250,.22)}
.vehicle-home-cat span{color:#cbd5e1;font-weight:800}
.vehicle-home-cat strong{font-size:24px;color:#fff}

/* V124 correction stricte accueil : Véhicules à côté de Accès rapides */
@media (min-width: 901px){
  .home-v60-grid{
    grid-template-columns: 1fr 1fr !important;
    align-items: start !important;
  }
  .home-v60-grid > .quick-widget:not(.employee-home-widget):first-of-type{
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .home-v60-grid > .vehicle-home-widget{
    grid-column: 2 !important;
    grid-row: auto !important;
  }
  .home-v60-grid > .today-widget,
  .home-v60-grid > .employee-home-widget,
  .home-v60-grid > .calculator-widget{
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 900px){
  .home-v60-grid > .quick-widget:not(.employee-home-widget):first-of-type,
  .home-v60-grid > .vehicle-home-widget,
  .home-v60-grid > .today-widget,
  .home-v60-grid > .employee-home-widget,
  .home-v60-grid > .calculator-widget{
    grid-column: 1 / -1 !important;
  }
}

/* V126 - CORRECTION PROFONDE MOBILE ADMIN + EMPLOYÉS
   Objectif : sur iPhone/Safari l'administration ne doit plus afficher le menu latéral
   en énorme colonne verticale. Le haut devient 3 zones fixes propres : compte,
   raccourcis, modules. L'espace Employés reste isolé et lisible. */
@media (max-width: 900px){
  html,body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    -webkit-text-size-adjust:100% !important;
  }

  body.admin-space{
    background:#050b16 url('mcb-dashboard-bg.png') center top/cover fixed !important;
    padding:0 !important;
  }

  /* Ligne compte : notification + profil, jamais coupée */
  body.admin-space .top-account{
    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:64px !important;
    min-height:64px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    padding:8px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left)) !important;
    background:rgba(5,11,22,.98) !important;
    border-bottom:1px solid rgba(148,190,255,.16) !important;
    z-index:50000 !important;
    box-shadow:0 10px 24px rgba(0,0,0,.24) !important;
  }
  body.admin-space .notif-btn{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    border-radius:18px !important;
  }
  body.admin-space .account-summary{
    height:46px !important;
    max-width:calc(100vw - 82px) !important;
    border-radius:999px !important;
    padding:4px 12px 4px 5px !important;
  }
  body.admin-space .account-name{
    max-width:150px !important;
    font-size:15px !important;
  }
  body.admin-space .notif-panel,
  body.admin-space .account-panel{
    position:fixed !important;
    top:70px !important;
    right:12px !important;
    left:auto !important;
    width:calc(100vw - 24px) !important;
    max-width:360px !important;
    max-height:calc(100vh - 96px) !important;
    overflow:auto !important;
    z-index:50020 !important;
  }

  /* Barre applications : scroll horizontal propre, sans débordement */
  body.admin-space .clean-topbar,
  body.admin-space .top-quickbar{
    position:fixed !important;
    top:64px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:82px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    padding:8px 12px 10px !important;
    background:rgba(5,11,22,.96) !important;
    border-bottom:1px solid rgba(148,190,255,.14) !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x proximity !important;
    z-index:49990 !important;
  }
  body.admin-space .top-quickbar::-webkit-scrollbar{display:none !important;}
  body.admin-space .topbar-link{
    flex:0 0 84px !important;
    width:84px !important;
    min-width:84px !important;
    height:64px !important;
    padding:6px 4px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    border-radius:16px !important;
    background:rgba(255,255,255,.025) !important;
    scroll-snap-align:start !important;
  }
  body.admin-space .topbar-link span:not(.topbar-svg){
    max-width:76px !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
  }
  body.admin-space .topbar-svg,
  body.admin-space .topbar-svg svg{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
  }

  /* Menu modules : l'ancien sidebar devient une vraie barre mobile */
  body.admin-space .sidebar,
  body.admin-space aside.sidebar{
    position:fixed !important;
    top:146px !important;
    left:0 !important;
    right:0 !important;
    bottom:auto !important;
    width:100% !important;
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    padding:8px 10px 10px !important;
    margin:0 !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(148,190,255,.16) !important;
    border-radius:0 !important;
    background:rgba(5,11,22,.98) !important;
    box-shadow:0 12px 28px rgba(0,0,0,.22) !important;
    z-index:49980 !important;
    overflow:hidden !important;
  }
  body.admin-space .sidebar .brand{display:none !important;}
  body.admin-space .sidebar nav{
    width:100% !important;
    height:100% !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:8px !important;
    padding:0 2px 8px !important;
    margin:0 !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x proximity !important;
  }
  body.admin-space .sidebar nav::-webkit-scrollbar{display:none !important;}
  body.admin-space .sidebar nav a{
    flex:0 0 88px !important;
    min-width:88px !important;
    max-width:88px !important;
    height:70px !important;
    min-height:70px !important;
    margin:0 !important;
    padding:7px 4px !important;
    border-radius:18px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    text-align:center !important;
    color:#dbeafe !important;
    background:rgba(255,255,255,.025) !important;
    border:1px solid rgba(148,190,255,.10) !important;
    font-size:12px !important;
    line-height:1.1 !important;
    font-weight:850 !important;
    white-space:normal !important;
    scroll-snap-align:start !important;
  }
  body.admin-space .sidebar nav a:hover,
  body.admin-space .sidebar nav a.active{
    background:rgba(0,117,255,.22) !important;
    border-color:rgba(96,165,250,.35) !important;
  }
  body.admin-space .sidebar nav a .ui-icon{
    width:24px !important;
    height:24px !important;
    min-width:24px !important;
    margin:0 !important;
  }
  body.admin-space .sidebar nav a .ui-icon svg{
    width:24px !important;
    height:24px !important;
    stroke:#bfe2ff !important;
  }
  body.admin-space .side-mail-badge{
    position:absolute !important;
    top:4px !important;
    right:8px !important;
  }

  body.admin-space .main,
  body.admin-space main.main{
    margin-left:0 !important;
    width:100% !important;
    max-width:100% !important;
    padding:260px 12px calc(28px + env(safe-area-inset-bottom)) !important;
    min-height:100vh !important;
  }

  body.admin-space .card,
  body.admin-space .home-v60-widget{
    border-radius:20px !important;
    padding:16px !important;
    max-width:100% !important;
  }
  body.admin-space .grid,
  body.admin-space .home-v60-grid,
  body.admin-space .two,
  body.admin-space .mail-layout,
  body.admin-space .settings-v70-account-grid,
  body.admin-space .settings-v70-role-info,
  body.admin-space .settings-v70-notifs{
    grid-template-columns:1fr !important;
  }
  body.admin-space .search,
  body.admin-space .actions,
  body.admin-space .page-head-actions,
  body.admin-space .section-title-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }
  body.admin-space input,
  body.admin-space select,
  body.admin-space textarea,
  body.admin-space button,
  body.admin-space .btn{
    max-width:100% !important;
  }
}

@media (max-width: 390px){
  body.admin-space .account-name{max-width:118px !important;}
  body.admin-space .topbar-link{flex-basis:78px !important;min-width:78px !important;width:78px !important;}
  body.admin-space .sidebar nav a{flex-basis:82px !important;min-width:82px !important;max-width:82px !important;font-size:11px !important;}
}

/* Employés : garde-fou final mobile, formulaires et tableaux lisibles */
@media (max-width: 760px){
  body.employee-space .main,
  body.employee-space main.main{
    margin-left:0 !important;
    width:100% !important;
    max-width:100% !important;
    padding-left:12px !important;
    padding-right:12px !important;
    overflow-x:hidden !important;
  }
  body.employee-space .card,
  body.employee-space .employee-card,
  body.employee-space .employees-v90-card{
    max-width:100% !important;
    border-radius:18px !important;
    padding:15px !important;
  }
  body.employee-space input,
  body.employee-space select,
  body.employee-space textarea,
  body.employee-space button,
  body.employee-space .btn{
    width:100% !important;
    max-width:100% !important;
    min-height:44px !important;
    font-size:16px !important;
  }
  body.employee-space table{
    width:100% !important;
  }
  body.employee-space .employee-time-table,
  body.employee-space .stock-table-wrap{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }
}

/* V127 - Correction mobile ADMIN : fond sombre comme avant + accueil lisible */
@media (max-width: 900px){
  html, body, body.admin-space{
    background:#050b16 !important;
    color:#fff !important;
  }
  body.admin-space{
    background:
      radial-gradient(circle at 50% 0%, rgba(0,117,255,.14), transparent 42%),
      linear-gradient(180deg,#050b16 0%, #071225 48%, #050b16 100%) !important;
  }
  body.admin-space::before{
    opacity:.12 !important;
    filter:none !important;
    background:
      linear-gradient(rgba(5,11,22,.88), rgba(5,11,22,.96)),
      url('mcb-dashboard-bg.png') center top / cover no-repeat !important;
    background-attachment:scroll !important;
  }
  body.admin-space::after{
    background:rgba(3,8,18,.40) !important;
  }
  body.admin-space .main,
  body.admin-space main.main,
  body.admin-space .home-v60{
    background:transparent !important;
  }
  body.admin-space .top-account,
  body.admin-space .clean-topbar,
  body.admin-space .top-quickbar,
  body.admin-space .sidebar,
  body.admin-space aside.sidebar{
    background:rgba(5,11,22,.985) !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
  }
  body.admin-space .sidebar nav{
    padding-left:12px !important;
    padding-right:12px !important;
    scroll-padding-left:12px !important;
  }
  body.admin-space .sidebar nav a:first-child{
    margin-left:0 !important;
  }
  body.admin-space .account-summary{
    min-width:0 !important;
    max-width:calc(100vw - 76px) !important;
  }
  body.admin-space .account-name{
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    max-width:170px !important;
    text-align:left !important;
  }
  body.admin-space .home-v60-hero{
    display:block !important;
    margin:0 0 16px !important;
  }
  body.admin-space .home-v60-hero-content{
    text-align:center !important;
    padding:26px 18px 22px !important;
    border-radius:24px !important;
    background:
      linear-gradient(135deg,rgba(11,116,255,.22),rgba(15,23,42,.90)),
      rgba(13,23,40,.94) !important;
  }
  body.admin-space .home-v60-pill{
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.admin-space .home-v60-hero h1{
    font-size:clamp(32px, 9vw, 42px) !important;
    line-height:1.05 !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    text-align:center !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
  }
  body.admin-space .home-v60-hero h1 br{display:none !important;}
  body.admin-space .home-v60-hero p{
    text-align:center !important;
    font-size:17px !important;
    line-height:1.45 !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
  body.admin-space .home-v60-actions{
    justify-content:center !important;
  }
}

@media (max-width: 390px){
  body.admin-space .home-v60-hero h1{font-size:30px !important;}
  body.admin-space .account-name{max-width:145px !important;}
}

/* V129 - CORRECTION DÉFINITIVE MOBILE ADMIN : alignement réel à gauche.
   Le nom SARL MCB ne doit plus être poussé vers la droite ni centré dans le bloc accueil. */
@media (max-width: 900px){
  body.admin-space .top-account{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 52px !important;
    grid-template-areas:"account notif" !important;
    justify-content:stretch !important;
    align-items:center !important;
    gap:10px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }
  body.admin-space .top-account .account-menu{
    grid-area:account !important;
    order:1 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
  }
  body.admin-space .top-account .notif-menu{
    grid-area:notif !important;
    order:2 !important;
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    justify-self:end !important;
  }
  body.admin-space .top-account .notif-btn{
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
  }
  body.admin-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    justify-content:flex-start !important;
    padding:4px 10px 4px 5px !important;
  }
  body.admin-space .top-account .account-avatar{
    flex:0 0 38px !important;
    width:38px !important;
    min-width:38px !important;
    height:38px !important;
  }
  body.admin-space .top-account .account-name{
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:none !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    text-align:left !important;
    font-size:18px !important;
    line-height:1 !important;
  }
  body.admin-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:8px !important;
  }

  body.admin-space .home-v60-hero-content{
    text-align:left !important;
    align-items:flex-start !important;
    padding:24px 18px 22px !important;
  }
  body.admin-space .home-v60-pill{
    margin-left:0 !important;
    margin-right:0 !important;
    align-self:flex-start !important;
    text-align:left !important;
  }
  body.admin-space .home-v60-hero h1{
    text-align:left !important;
    margin-left:0 !important;
    margin-right:0 !important;
    max-width:100% !important;
    font-size:clamp(30px, 8.4vw, 38px) !important;
    line-height:1.04 !important;
    letter-spacing:-.05em !important;
    white-space:normal !important;
  }
  body.admin-space .home-v60-hero p{
    text-align:left !important;
    margin-left:0 !important;
    margin-right:0 !important;
    max-width:100% !important;
  }
  body.admin-space .home-v60-actions{
    width:100% !important;
    justify-content:stretch !important;
  }
  body.admin-space .home-v60-actions .btn{
    width:100% !important;
    text-align:center !important;
  }
}
@media (max-width: 390px){
  body.admin-space .top-account{grid-template-columns:minmax(0,1fr) 48px !important;gap:8px !important;}
  body.admin-space .top-account .notif-menu,
  body.admin-space .top-account .notif-btn{width:48px !important;min-width:48px !important;max-width:48px !important;}
  body.admin-space .top-account .account-name{font-size:16px !important;}
  body.admin-space .home-v60-hero h1{font-size:29px !important;letter-spacing:-.055em !important;}
}

/* ===== V130 - ADMIN MOBILE : remonter le bloc compte pour l'aligner avec la cloche ===== */
@media (max-width: 900px){
  body.admin-space .top-account{
    align-items:start !important;
    padding-top:6px !important;
    padding-bottom:6px !important;
  }
  body.admin-space .top-account .account-menu{
    align-self:start !important;
    transform:translateY(-8px) !important;
    margin-top:0 !important;
  }
  body.admin-space .top-account .account-summary{
    height:52px !important;
    min-height:52px !important;
    display:flex !important;
    align-items:center !important;
  }
  body.admin-space .top-account .notif-menu{
    align-self:start !important;
    margin-top:0 !important;
    transform:none !important;
  }
  body.admin-space .top-account .notif-btn{
    height:52px !important;
    min-height:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }
  body.admin-space .top-account .account-avatar{
    width:42px !important;
    min-width:42px !important;
    height:42px !important;
    flex:0 0 42px !important;
  }
  body.admin-space .top-account .account-name{
    line-height:1 !important;
    display:flex !important;
    align-items:center !important;
  }
  body.admin-space .top-account .account-arrow{
    display:flex !important;
    align-items:center !important;
  }
}
@media (max-width: 390px){
  body.admin-space .top-account .account-menu{transform:translateY(-7px) !important;}
  body.admin-space .top-account .account-summary,
  body.admin-space .top-account .notif-btn{height:50px !important;min-height:50px !important;}
  body.admin-space .top-account .account-avatar{width:40px !important;min-width:40px !important;height:40px !important;flex-basis:40px !important;}
}

/* V131 - Réglages : ordre modifiable des liens rapides */
.settings-v70-links-help{
  margin:8px 0 14px;
  color:rgba(226,232,240,.78);
  font-size:13px;
  line-height:1.35;
}
.settings-v70-link-row{
  position:relative;
  grid-template-columns:38px 58px 42px minmax(120px,180px) minmax(150px,1fr) minmax(180px,1.2fr) !important;
  align-items:center !important;
}
.settings-v70-link-row.dragging{
  opacity:.55;
  transform:scale(.995);
}
.settings-v70-drag,
.settings-v70-order{
  border:1px solid rgba(148,163,184,.24);
  background:rgba(15,23,42,.72);
  color:#e5eefc;
  border-radius:12px;
  cursor:grab;
  min-height:38px;
  font-weight:900;
}
.settings-v70-drag:active{cursor:grabbing;}
.settings-v70-order-buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
}
.settings-v70-order{
  min-height:32px;
  cursor:pointer;
  font-size:15px;
  padding:0;
}
.settings-v70-order:disabled{
  opacity:.28;
  cursor:not-allowed;
}
.settings-v70-link-row.drag-over{
  outline:2px solid rgba(96,165,250,.75);
  outline-offset:3px;
}
@media(max-width:760px){
  .settings-v70-link-row{
    grid-template-columns:42px 1fr 42px !important;
    gap:8px !important;
  }
  .settings-v70-link-row .settings-v70-order-buttons{grid-column:2 / 3;grid-row:1;justify-self:start;width:70px;}
  .settings-v70-link-row .settings-v70-icon-preview{grid-column:3 / 4;grid-row:1;}
  .settings-v70-link-row select,
  .settings-v70-link-row input{grid-column:1 / -1;width:100%;}
}

/* V132 - Réglages liens rapides : mise en page propre et ordre modifiable sans débordement */
.settings-v70-grid{
  grid-template-columns:minmax(0,1fr) minmax(260px,300px) !important;
  max-width:100% !important;
}
.settings-v70-card,
.settings-v70-links,
.settings-v70-preview{
  min-width:0 !important;
  overflow:hidden !important;
}
.settings-v70-links .settings-v70-links-help{
  margin:6px 0 16px !important;
  padding:10px 12px !important;
  border-radius:14px !important;
  background:rgba(11,116,255,.08) !important;
  border:1px solid rgba(11,116,255,.16) !important;
  color:#cbd5e1 !important;
}
.settings-v70-links-list{
  gap:12px !important;
}
.settings-v70-link-row{
  grid-template-columns:44px 66px 56px minmax(135px,170px) minmax(150px,1fr) minmax(190px,1.2fr) !important;
  gap:10px !important;
  padding:12px !important;
  border-radius:18px !important;
  min-width:0 !important;
}
.settings-v70-drag{
  width:38px !important;
  height:38px !important;
  min-height:38px !important;
  padding:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:17px !important;
}
.settings-v70-order-buttons{
  width:56px !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:4px !important;
}
.settings-v70-order{
  width:26px !important;
  height:34px !important;
  min-height:34px !important;
  border-radius:12px !important;
}
.settings-v70-icon-preview{
  width:56px !important;
  height:56px !important;
  border-radius:16px !important;
}
.settings-v70-icon-preview svg{
  width:30px !important;
  height:30px !important;
}
.settings-v70-link-row input,
.settings-v70-link-row select{
  width:100% !important;
  height:46px !important;
  margin:0 !important;
  min-width:0 !important;
}
.settings-v70-preview-bar{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(86px,1fr)) !important;
  gap:10px !important;
}
.settings-v70-preview-bar a{
  width:auto !important;
  min-width:0 !important;
  min-height:88px !important;
}
.settings-v70-preview-bar b{
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
@media(max-width:1350px){
  .settings-v70-grid{
    grid-template-columns:1fr !important;
  }
  .settings-v70-preview{
    order:2 !important;
  }
}
@media(max-width:980px){
  .settings-v70-link-row{
    grid-template-columns:44px 66px 56px 1fr !important;
  }
  .settings-v70-link-row select{
    grid-column:4 / 5 !important;
  }
  .settings-v70-link-row input{
    grid-column:1 / -1 !important;
  }
}
@media(max-width:620px){
  .settings-v70-card{
    padding:18px !important;
    border-radius:22px !important;
  }
  .settings-v70-link-row{
    grid-template-columns:44px 64px 56px !important;
    justify-content:start !important;
    align-items:center !important;
  }
  .settings-v70-link-row .settings-v70-order-buttons{
    grid-column:auto !important;
    grid-row:auto !important;
    justify-self:auto !important;
  }
  .settings-v70-link-row .settings-v70-icon-preview{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  .settings-v70-link-row select,
  .settings-v70-link-row input{
    grid-column:1 / -1 !important;
  }
  .settings-v70-preview-bar{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

/* Planning individuel */
.planning-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.planning-admin-grid{align-items:start;margin-bottom:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.planning-week-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:14px}.planning-day-card{min-height:180px}.planning-day-card h2{display:flex;flex-direction:column;gap:2px;margin-bottom:12px}.planning-day-card h2 small{font-size:12px;color:#64748b}.planning-item{background:#f8fbff;border:1px solid #dbe7ff;border-radius:18px;padding:12px;margin:10px 0;display:grid;gap:7px}.planning-time{color:#075fc7}.planning-item p{margin:0;color:#475569}.planning-edit{border-top:1px solid #dbe7ff;padding-top:8px}.mini-form{margin-top:10px}.muted{color:#64748b}@media(max-width:1100px){.planning-week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.planning-week-grid,.form-row{grid-template-columns:1fr}.planning-toolbar{align-items:stretch}.planning-toolbar .btn{width:100%;justify-content:center}}


/* V133 - Correction définitive header mobile salarié : plus de doublon, plus de chevauchement */
@media (max-width: 900px){
  body.employee-space{
    margin:0 !important;
    padding:0 !important;
    overflow-x:hidden !important;
    background:#061020 !important;
  }
  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar,
  body.employee-space > aside.sidebar,
  body.employee-space aside.sidebar,
  body.employee-space .employee-only-nav{
    display:none !important;
  }
  body.employee-space .top-account{
    position:sticky !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:calc(8px + env(safe-area-inset-top,0px)) 12px 10px !important;
    display:grid !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    gap:9px !important;
    align-items:center !important;
    justify-content:stretch !important;
    background:#071120 !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.22) !important;
    border-radius:0 0 18px 18px !important;
    box-shadow:0 10px 28px rgba(0,0,0,.26) !important;
    overflow:visible !important;
    z-index:9990 !important;
  }
  body.employee-space .top-account details{
    position:static !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
  }
  body.employee-space .top-account .notif-menu{
    grid-area:notif !important;
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
  }
  body.employee-space .top-account .notif-btn{
    width:52px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:17px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.30) !important;
  }
  body.employee-space .top-account .account-menu{
    grid-area:account !important;
    width:100% !important;
    min-width:0 !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:6px 12px 6px 7px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    border-radius:18px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.30) !important;
    overflow:hidden !important;
  }
  body.employee-space .top-account .account-avatar{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    flex:0 0 40px !important;
    font-size:15px !important;
  }
  body.employee-space .top-account .account-name{
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    font-size:18px !important;
    font-weight:900 !important;
    line-height:1 !important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:auto !important;
  }
  body.employee-space .employee-top-nav{
    grid-area:nav !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body.employee-space .employee-top-nav a{
    width:100% !important;
    min-width:0 !important;
    height:46px !important;
    min-height:46px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 6px !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
    color:#eef6ff !important;
    font-size:14px !important;
    font-weight:900 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .employee-top-nav a .ui-icon{
    width:18px !important;
    height:18px !important;
    min-width:18px !important;
  }
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:fixed !important;
    top:calc(124px + env(safe-area-inset-top,0px)) !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    max-width:none !important;
    max-height:calc(100vh - 148px) !important;
    overflow:auto !important;
    z-index:99999 !important;
  }
  body.employee-space .main,
  body.employee-space main.main{
    margin:0 !important;
    padding:18px 14px 110px !important;
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
  }
  body.employee-space .page-head-actions{margin-top:0 !important;}
}
@media (max-width:390px){
  body.employee-space .top-account{grid-template-columns:48px minmax(0,1fr) !important;padding-left:10px !important;padding-right:10px !important;gap:8px !important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:48px !important;height:48px !important;min-width:48px !important;min-height:48px !important;}
  body.employee-space .top-account .account-summary{height:48px !important;min-height:48px !important;}
  body.employee-space .top-account .account-avatar{width:36px !important;height:36px !important;min-width:36px !important;flex-basis:36px !important;}
  body.employee-space .top-account .account-name{font-size:15px !important;}
  body.employee-space .employee-top-nav a{height:44px !important;min-height:44px !important;font-size:12.5px !important;gap:5px !important;}
  body.employee-space .employee-top-nav a .ui-icon{width:16px !important;height:16px !important;min-width:16px !important;}
  body.employee-space .notif-panel,
  body.employee-space .account-panel{top:calc(116px + env(safe-area-inset-top,0px)) !important;left:10px !important;right:10px !important;}
}

/* V134 - Correction approfondie header salarié mobile + planning modifiable */
body.employee-space > aside.sidebar,
body.employee-space .sidebar,
body.employee-space .employee-only-nav{
  display:none !important;
}
body.employee-space .main{
  margin-left:0 !important;
  width:100% !important;
  max-width:100% !important;
}
body.employee-space .top-account{
  left:0 !important;
  right:0 !important;
  width:100% !important;
  max-width:100% !important;
}
body.employee-space .employee-top-nav{
  display:flex !important;
  gap:10px !important;
  align-items:center !important;
  flex-wrap:wrap !important;
}
body.employee-space .employee-top-nav a{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  min-height:46px !important;
  padding:10px 16px !important;
  border:1px solid rgba(148,190,255,.28) !important;
  border-radius:18px !important;
  background:#0d1728 !important;
  color:#eef6ff !important;
  text-decoration:none !important;
  font-weight:800 !important;
}
.planning-edit summary{
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:8px;
  padding:9px 12px;
  border-radius:12px;
  background:rgba(0,117,255,.12);
  color:#0b63ce;
  font-weight:800;
}
.planning-edit .danger,
button.danger,
.btn.danger{
  background:#dc2626 !important;
  color:#fff !important;
  border-color:#dc2626 !important;
}
@media (max-width:900px){
  body.employee-space .top-account{
    position:relative !important;
    display:grid !important;
    grid-template-columns:58px minmax(0,1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    gap:10px !important;
    padding:12px !important;
    margin:0 !important;
    border-radius:0 0 22px 22px !important;
    overflow:visible !important;
  }
  body.employee-space .top-account .notif-menu{grid-area:notif !important;width:58px !important;min-width:58px !important;}
  body.employee-space .top-account .account-menu{grid-area:account !important;min-width:0 !important;width:100% !important;}
  body.employee-space .top-account .account-summary{width:100% !important;min-width:0 !important;overflow:hidden !important;}
  body.employee-space .top-account .account-name{min-width:0 !important;overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;}
  body.employee-space .employee-top-nav{
    grid-area:nav !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    width:100% !important;
    margin:0 !important;
  }
  body.employee-space .employee-top-nav a{
    width:100% !important;
    min-width:0 !important;
    padding:12px 8px !important;
    border-radius:18px !important;
    font-size:15px !important;
  }
  body.employee-space .employee-top-nav a[href*="logout"]{
    grid-column:1 / -1 !important;
  }
  body.employee-space .main{
    padding:22px 14px 40px !important;
  }
  body.employee-space h1{
    font-size:36px !important;
    line-height:1.05 !important;
  }
  .planning-week-grid{grid-template-columns:1fr !important;}
  .planning-admin-grid.two{grid-template-columns:1fr !important;}
  .planning-item{background:#0d1728 !important;border-color:rgba(148,190,255,.22) !important;color:#eef6ff !important;}
  .planning-item p{color:#c8d6ee !important;}
  .planning-time{color:#8fd0ff !important;}
}

/* V135 - Planning individuel : modification/suppression propre sans formulaire cassé */
.planning-week-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:16px !important;
  align-items:start !important;
}
.planning-day-card{
  min-width:0 !important;
  overflow:hidden !important;
}
.planning-item{
  background:#0d1728 !important;
  border:1px solid rgba(148,190,255,.22) !important;
  color:#eef6ff !important;
  border-radius:18px !important;
  padding:13px !important;
  display:grid !important;
  gap:8px !important;
  overflow:hidden !important;
}
.planning-item *{max-width:100% !important;}
.planning-time{color:#8fd0ff !important;}
.planning-item p{color:#c8d6ee !important;overflow-wrap:anywhere !important;}
.planning-item-actions{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  padding-top:8px !important;
  border-top:1px solid rgba(148,190,255,.16) !important;
}
.planning-item-actions form{margin:0 !important;}
.planning-item-actions .btn,
.planning-item-actions button{
  min-height:38px !important;
  padding:9px 13px !important;
  border-radius:12px !important;
  line-height:1 !important;
}
.planning-edit-panel{
  margin:0 0 18px !important;
  background:#0d1728 !important;
  border-color:rgba(148,190,255,.28) !important;
  overflow:hidden !important;
}
.planning-edit-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin-bottom:16px !important;
}
.planning-edit-head h2{margin:0 0 4px !important;}
.planning-edit-form,
.planning-delete-form{max-width:900px !important;}
.planning-actions{display:flex !important;gap:10px !important;flex-wrap:wrap !important;margin-top:10px !important;}
.planning-delete-form{margin-top:10px !important;padding-top:12px !important;border-top:1px solid rgba(148,190,255,.16) !important;}
.planning-edit-panel input,
.planning-edit-panel select,
.planning-edit-panel textarea{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
  background:#081426 !important;
  color:#f4f8ff !important;
  border:1px solid rgba(148,190,255,.26) !important;
}
.planning-edit-panel label{color:#d9e8ff !important;font-weight:800 !important;}
button.danger,.btn.danger{background:#dc2626 !important;color:#fff !important;border-color:#dc2626 !important;}
@media(max-width:900px){
  .planning-toolbar.card{display:grid !important;grid-template-columns:1fr !important;text-align:center !important;}
  .planning-toolbar .btn{width:100% !important;justify-content:center !important;}
  .planning-admin-grid.two{grid-template-columns:1fr !important;}
  .planning-week-grid{grid-template-columns:1fr !important;gap:14px !important;}
  .planning-edit-head{display:grid !important;grid-template-columns:1fr !important;}
  .planning-edit-head .btn{width:100% !important;justify-content:center !important;}
  .planning-edit-panel .form-row{grid-template-columns:1fr !important;}
  .planning-edit-panel{padding:16px !important;border-radius:20px !important;}
  .planning-item-actions{display:grid !important;grid-template-columns:1fr !important;}
  .planning-item-actions .btn,.planning-item-actions button{width:100% !important;justify-content:center !important;}
}


/* Export / impression planning + contacts */
.planning-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}
.contacts-v68-head-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:760px){.planning-toolbar{align-items:stretch}.planning-toolbar .btn,.contacts-v68-head-actions .btn{width:100%;text-align:center}.contacts-v68-head-actions{width:100%;justify-content:stretch}}
@media print{.sidebar,.topbar,.navbar,.appbar,.planning-toolbar,.contacts-v68-toolbar,.contacts-v68-head-actions,.btn,button{display:none!important}.main,.content{margin:0!important;padding:0!important}.card{box-shadow:none!important;border:1px solid #ddd!important;background:#fff!important;color:#111!important}.planning-week-grid{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:6px!important}.planning-day-card{break-inside:avoid}.planning-item{background:#fff!important;color:#111!important;border:1px solid #ddd!important}}

/* Correction visibilité liste employés - contraste renforcé */
.employee-list .employee-row,
.card .employee-list .employee-row{
  background:#f8fbff!important;
  color:#0f172a!important;
  border:1px solid rgba(148,163,184,.35)!important;
}
.employee-list .employee-row strong,
.card .employee-list .employee-row strong{
  display:inline-block!important;
  color:#07111f!important;
  font-weight:900!important;
  font-size:1.08rem!important;
  line-height:1.25!important;
  opacity:1!important;
  visibility:visible!important;
}
.employee-list .employee-row p,
.employee-list .employee-row small,
.employee-list .employee-leave-balance{
  color:#334155!important;
  opacity:1!important;
}
.employee-list .role-badge.employee{background:#dcfce7!important;color:#047857!important;}
.employee-list .role-badge.admin{background:#dbeafe!important;color:#1d4ed8!important;}
.employee-list .small-actions .btn.secondary{background:#173b62!important;color:#fff!important;border-color:#214c77!important;}
.employee-list .small-actions .btn.danger,.employee-list .small-actions button.danger{background:#ef2626!important;color:#fff!important;border-color:#ef2626!important;}
@media(max-width:760px){
  .employee-list .employee-row{padding:16px!important;}
  .employee-list .employee-row strong{display:block!important;margin-bottom:8px!important;}
  .employee-list .role-badge{margin-left:0!important;margin-bottom:8px!important;}
}


/* Messagerie : enregistrer les pièces jointes reçues dans Fichiers entreprise */
.mail-attachment-save-list{display:grid;gap:12px;margin:10px 0 18px}
.mail-attachment-save-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border:1px solid rgba(148,163,184,.22);border-radius:16px;background:rgba(15,23,42,.55)}
.mail-save-file-form{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0}
.mail-save-file-form select,.mail-save-file-form input{min-height:38px;border-radius:12px;border:1px solid rgba(148,163,184,.25);background:#0b1526;color:#f8fafc;padding:0 10px}
.mail-save-file-form input::placeholder{color:#94a3b8}
@media(max-width:760px){.mail-attachment-save-row{align-items:stretch}.mail-save-file-form,.mail-save-file-form select,.mail-save-file-form input,.mail-save-file-form button{width:100%}.mail-attachment-save-row .pill{width:100%;justify-content:center}}

/* Correction Planning individuel - envoi manuel par mail */
.planning-send-toolbar{margin:0;display:flex;align-items:center;gap:8px}
.planning-send-toolbar button{white-space:nowrap}
.planning-send-card{border-color:#1d4f86!important;background:linear-gradient(180deg,rgba(0,117,255,.08),rgba(8,18,35,.02))!important}
.planning-send-card .ui-icon,.planning-send-toolbar .ui-icon{width:18px;height:18px;margin-right:6px}
@media(max-width:760px){
  .planning-send-toolbar,.planning-send-toolbar button{width:100%}
  .planning-send-toolbar button{justify-content:center}
}


/* PWA installation mobile */
.mcb-pwa-install{border:0;border-radius:999px;padding:10px 14px;background:#0d1f36;color:#fff;font-weight:800;box-shadow:0 10px 24px rgba(0,0,0,.18);cursor:pointer}
.top-account .mcb-pwa-install{margin-left:8px}
@media(max-width:760px){.mcb-pwa-install{width:100%;margin:8px 0 0 0}.top-account .mcb-pwa-install{margin-left:0}}
@media(display-mode:standalone){.mcb-pwa-install{display:none!important}}


/* Import contacts Tolteck / CSV */
.contacts-v68-import{margin:16px 0 18px}
.contacts-v68-import-card{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}
.contacts-v68-import-card p{margin:.25rem 0 0;color:rgba(255,255,255,.72);line-height:1.45}
.contacts-import-form{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.contacts-import-form input[type=file]{max-width:300px;padding:10px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(255,255,255,.08);color:inherit}
.contacts-import-check{display:flex!important;align-items:center;gap:8px;font-size:.9rem;color:rgba(255,255,255,.82);white-space:nowrap}
.contacts-import-check input{width:auto!important}
@media(max-width:760px){
  .contacts-v68-import-card{display:block}
  .contacts-import-form{margin-top:12px;justify-content:stretch}
  .contacts-import-form .btn,.contacts-import-form input[type=file]{width:100%;max-width:none}
  .contacts-import-check{white-space:normal}
}


/* Correctif pointage/comptable */
.role-badge.comptable { background: rgba(14,165,233,.14); color:#7dd3fc; border-color:rgba(125,211,252,.35); }
#employee-options .stock-form-grid { align-items:end; }
#employee-options input, #employee-options select { width:100%; }


/* Correction approfondie alignement Employés / Pointage / Comptable + logo SARL MCB */
.sidebar .brand{align-items:center!important;gap:12px!important;min-height:48px!important;}
.sidebar .brand img{width:44px!important;height:44px!important;object-fit:contain!important;border-radius:8px!important;background:rgba(255,255,255,.04)!important;padding:2px!important;}
.sidebar .brand strong{font-size:16px!important;font-weight:900!important;letter-spacing:.01em!important;color:#fff!important;white-space:nowrap!important;}
.settings-employee-options-card{margin-top:22px!important;}
.settings-employee-options-card .settings-v70-title{display:flex!important;align-items:flex-start!important;gap:16px!important;margin-bottom:22px!important;}
.settings-employee-options-card .settings-v70-title h2{margin:0!important;line-height:1.15!important;}
.settings-employee-options-card .settings-v70-title p{margin:6px 0 0!important;line-height:1.35!important;}
.settings-employee-options-form{display:block!important;}
.settings-employee-options-grid{display:grid!important;grid-template-columns:repeat(3,minmax(220px,1fr))!important;gap:18px 22px!important;align-items:end!important;margin-top:8px!important;}
.settings-field{display:grid!important;gap:8px!important;margin:0!important;min-width:0!important;}
.settings-field span{font-weight:900!important;color:#f8fafc!important;font-size:14px!important;line-height:1.25!important;}
.settings-field input,.settings-field select{width:100%!important;height:52px!important;margin:0!important;padding:0 16px!important;border-radius:14px!important;border:1px solid rgba(148,190,255,.22)!important;background:#0d1728!important;color:#fff!important;font-weight:800!important;box-shadow:none!important;}
.settings-field-wide{grid-column:auto!important;}
.settings-employee-options-bottom{display:grid!important;grid-template-columns:minmax(280px,1fr) minmax(280px,1fr)!important;gap:18px 22px!important;align-items:center!important;margin:22px 0!important;}
.settings-comptable-check{min-height:52px!important;margin:0!important;padding:14px 16px!important;border-radius:14px!important;background:rgba(0,117,255,.08)!important;border:1px solid rgba(0,117,255,.18)!important;font-weight:900!important;color:#fff!important;}
.settings-comptable-check input{width:auto!important;margin:0!important;accent-color:#0075ff!important;}
.settings-employee-options-bottom .settings-help{margin:0!important;color:#bcd0eb!important;line-height:1.45!important;}
.settings-employee-options-form > .btn{margin-top:0!important;min-height:52px!important;}
@media(max-width:1100px){.settings-employee-options-grid{grid-template-columns:1fr 1fr!important}.settings-field-wide{grid-column:1 / -1!important}.settings-employee-options-bottom{grid-template-columns:1fr!important}}
@media(max-width:700px){.settings-employee-options-grid{grid-template-columns:1fr!important}.settings-employee-options-card{padding:18px!important}.settings-employee-options-card .settings-v70-title{gap:12px!important}.settings-employee-options-form > .btn{width:100%!important}}

/* ===== CORRECTION APPROFONDIE 2026-05-11 : réglages comptable + header mobile ===== */
.employee-options-card{
  margin-top:22px!important;
  overflow:hidden!important;
}
.employee-options-card .settings-v70-title{
  align-items:flex-start!important;
  margin-bottom:18px!important;
}
.employee-options-form{display:grid!important;gap:18px!important;}
.employee-options-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(240px,1fr))!important;
  gap:16px 18px!important;
  align-items:end!important;
}
.employee-options-grid label{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
  min-width:0!important;
}
.employee-options-grid label span{
  color:#eaf3ff!important;
  font-weight:900!important;
  font-size:14px!important;
}
.employee-options-grid input[type="time"],
.employee-options-grid input[type="email"]{
  width:100%!important;
  min-height:52px!important;
  border-radius:16px!important;
  border:1px solid rgba(148,190,255,.22)!important;
  background:#0d1728!important;
  color:#fff!important;
  padding:0 16px!important;
  font-weight:900!important;
  box-sizing:border-box!important;
}
.employee-options-mail{grid-column:auto!important;}
.employee-options-check{
  min-height:52px!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
  padding:14px 16px!important;
  border-radius:16px!important;
  border:1px solid rgba(0,117,255,.18)!important;
  background:rgba(0,117,255,.08)!important;
}
.employee-options-check input{width:18px!important;height:18px!important;accent-color:#0075ff!important;flex:0 0 auto!important;}
.employee-options-actions{
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  flex-wrap:wrap!important;
}
.employee-options-actions p{margin:0!important;color:#b9c9e6!important;line-height:1.45!important;max-width:640px!important;}
.sidebar .brand img{object-fit:contain!important;background:transparent!important;}

@media (max-width:900px){
  .employee-options-grid{grid-template-columns:1fr!important;gap:14px!important;}
  .employee-options-actions{display:grid!important;grid-template-columns:1fr!important;}
  .employee-options-actions .btn{width:100%!important;min-height:52px!important;}
}

/* Header mobile admin + salarié : panneau compte propre, jamais coupé */
@media (max-width:760px){
  body.admin-space{overflow-x:hidden!important;}
  body.admin-space .top-account{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:72px!important;
    padding:10px 14px!important;
    justify-content:flex-end!important;
    gap:10px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(148,190,255,.16)!important;
    z-index:4000!important;
  }
  body.admin-space .top-account details,
  body.employee-space .top-account details{position:static!important;}
  body.admin-space .notif-panel,
  body.admin-space .account-panel,
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:fixed!important;
    top:78px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100vh - 96px)!important;
    overflow:auto!important;
    z-index:99999!important;
    border-radius:20px!important;
    box-sizing:border-box!important;
    transform:none!important;
  }
  body.admin-space .account-panel a,
  body.employee-space .account-panel a{
    display:flex!important;
    align-items:center!important;
    min-height:52px!important;
    padding:12px 14px!important;
    font-size:16px!important;
    white-space:normal!important;
  }
  body.admin-space .account-card-head,
  body.employee-space .account-card-head{
    min-width:0!important;
  }
  body.admin-space .account-card-head div,
  body.employee-space .account-card-head div{min-width:0!important;overflow:hidden!important;}
  body.admin-space .clean-topbar,
  body.admin-space .top-quickbar{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:70px!important;
    padding:8px 12px!important;
    overflow-x:auto!important;
    z-index:20!important;
  }
  body.admin-space .main{padding-top:18px!important;}
}

@media (max-width:430px){
  body.admin-space .notif-panel,
  body.admin-space .account-panel,
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    top:72px!important;
    left:8px!important;
    right:8px!important;
    max-height:calc(100vh - 84px)!important;
  }
  .account-summary{min-width:0!important;}
  .account-name{max-width:calc(100vw - 176px)!important;}
}


/* ==========================================================
   V120 - CORRECTION FINALE MOBILE HEADER ADMIN + EMPLOYE
   - Header mobile propre, aucune superposition
   - Menus déroulants en panneau fixe lisible
   - Bandeau liens rapides sous le compte sur mobile admin
   ========================================================== */
@media (max-width: 900px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;}
  body.admin-space,body.employee-space{margin:0!important;padding:0!important;min-width:0!important;background:#061020!important;-webkit-text-size-adjust:100%!important;}
  body.admin-space *,body.admin-space *:before,body.admin-space *:after,
  body.employee-space *,body.employee-space *:before,body.employee-space *:after{box-sizing:border-box!important;}

  /* ADMIN : ligne compte propre en haut */
  body.admin-space .top-account{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:76px!important;margin:0!important;
    padding:calc(12px + env(safe-area-inset-top)) 12px 12px!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) 56px!important;grid-template-areas:"account notif"!important;
    gap:12px!important;align-items:center!important;justify-content:stretch!important;
    background:#071120!important;border:0!important;border-bottom:1px solid rgba(148,190,255,.18)!important;
    border-radius:0 0 20px 20px!important;box-shadow:0 14px 30px rgba(0,0,0,.22)!important;z-index:1200!important;overflow:visible!important;
  }
  body.admin-space .top-account .account-menu{grid-area:account!important;width:100%!important;min-width:0!important;max-width:100%!important;order:1!important;}
  body.admin-space .top-account .notif-menu{grid-area:notif!important;width:56px!important;min-width:56px!important;max-width:56px!important;height:56px!important;order:2!important;}
  body.admin-space .top-account .notif-btn{width:56px!important;height:56px!important;min-width:56px!important;max-width:56px!important;border-radius:18px!important;margin:0!important;padding:0!important;}
  body.admin-space .top-account .account-summary{
    width:100%!important;max-width:100%!important;min-width:0!important;height:56px!important;min-height:56px!important;
    padding:6px 12px 6px 8px!important;border-radius:20px!important;display:flex!important;align-items:center!important;gap:12px!important;overflow:hidden!important;
  }
  body.admin-space .top-account .account-avatar{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;flex:0 0 42px!important;font-size:15px!important;}
  body.admin-space .top-account .account-name{flex:1 1 auto!important;min-width:0!important;max-width:none!important;font-size:18px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.admin-space .top-account .account-arrow{margin-left:auto!important;flex:0 0 auto!important;}

  /* ADMIN : liens rapides sous le compte, scroll horizontal propre */
  body.admin-space .clean-topbar,body.admin-space .top-quickbar{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:72px!important;margin:0!important;
    padding:10px 12px!important;display:flex!important;align-items:stretch!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;
    background:#071120!important;border-bottom:1px solid rgba(148,190,255,.12)!important;z-index:100!important;scrollbar-width:none!important;
  }
  body.admin-space .clean-topbar::-webkit-scrollbar,body.admin-space .top-quickbar::-webkit-scrollbar{display:none!important;}
  body.admin-space .topbar-link{flex:0 0 118px!important;width:118px!important;min-width:118px!important;height:58px!important;border-radius:18px!important;padding:8px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;font-size:12px!important;line-height:1.05!important;text-align:center!important;}
  body.admin-space .topbar-svg{width:26px!important;height:26px!important;min-width:26px!important;}

  /* ADMIN : panneau compte/notifications jamais coupé */
  body.admin-space .top-account details{position:static!important;}
  body.admin-space .notif-panel,body.admin-space .account-panel{
    position:fixed!important;top:calc(86px + env(safe-area-inset-top))!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;min-width:0!important;
    max-height:calc(100vh - 112px)!important;overflow:auto!important;border-radius:20px!important;z-index:99999!important;padding:16px!important;
  }

  /* ADMIN : menu latéral desktop caché sur mobile, contenu après les deux barres */
  body.admin-space > .sidebar{display:none!important;visibility:visible!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;overflow:hidden!important;}
  body.admin-space .main{margin:0!important;padding:18px 14px 120px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
  body.admin-space .card,body.admin-space .grid,body.admin-space .two,body.admin-space .page-head-actions{max-width:100%!important;min-width:0!important;}

  /* EMPLOYE : on garde un seul header propre, sans bandeau applications */
  body.employee-space .clean-topbar,body.employee-space .top-quickbar{display:none!important;}
  body.employee-space .top-account{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;margin:0!important;
    padding:calc(12px + env(safe-area-inset-top)) 12px 14px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 56px!important;
    grid-template-areas:"account notif" "nav nav"!important;gap:12px!important;align-items:center!important;background:#071120!important;border:0!important;border-bottom:1px solid rgba(148,190,255,.18)!important;border-radius:0 0 20px 20px!important;box-shadow:0 14px 30px rgba(0,0,0,.22)!important;z-index:1200!important;overflow:visible!important;
  }
  body.employee-space .top-account .account-menu{grid-area:account!important;width:100%!important;min-width:0!important;max-width:100%!important;}
  body.employee-space .top-account .notif-menu{grid-area:notif!important;width:56px!important;height:56px!important;min-width:56px!important;max-width:56px!important;}
  body.employee-space .top-account .notif-btn{width:56px!important;height:56px!important;min-width:56px!important;max-width:56px!important;border-radius:18px!important;margin:0!important;padding:0!important;}
  body.employee-space .top-account .account-summary{height:56px!important;min-height:56px!important;width:100%!important;max-width:100%!important;padding:6px 12px 6px 8px!important;border-radius:20px!important;display:flex!important;align-items:center!important;gap:12px!important;overflow:hidden!important;}
  body.employee-space .top-account .account-avatar{width:42px!important;height:42px!important;min-width:42px!important;max-width:42px!important;flex:0 0 42px!important;font-size:15px!important;}
  body.employee-space .top-account .account-name{flex:1 1 auto!important;min-width:0!important;max-width:none!important;font-size:18px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.employee-space .employee-top-nav{grid-area:nav!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;margin:0!important;padding:0!important;}
  body.employee-space .employee-top-nav a{height:54px!important;min-height:54px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;font-size:15px!important;font-weight:900!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel{position:fixed!important;top:calc(92px + env(safe-area-inset-top))!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;max-height:calc(100vh - 120px)!important;overflow:auto!important;z-index:99999!important;}
  body.employee-space .main{margin:0!important;padding:20px 14px 120px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
}
@media (max-width:390px){
  body.admin-space .top-account,body.employee-space .top-account{grid-template-columns:minmax(0,1fr) 50px!important;padding-left:10px!important;padding-right:10px!important;gap:10px!important;}
  body.admin-space .top-account .notif-menu,body.admin-space .top-account .notif-btn,body.employee-space .top-account .notif-menu,body.employee-space .top-account .notif-btn{width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;}
  body.admin-space .top-account .account-summary,body.employee-space .top-account .account-summary{height:50px!important;min-height:50px!important;}
  body.admin-space .top-account .account-avatar,body.employee-space .top-account .account-avatar{width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;flex-basis:38px!important;}
  body.admin-space .top-account .account-name,body.employee-space .top-account .account-name{font-size:16px!important;}
  body.admin-space .topbar-link{flex-basis:104px!important;width:104px!important;min-width:104px!important;font-size:11px!important;}
  body.employee-space .employee-top-nav a{font-size:14px!important;height:50px!important;min-height:50px!important;padding:0 6px!important;}
}


/* v121 - Actions PDF pointage propres */
.employee-pdf-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:end!important;justify-content:flex-end!important;}
.employee-pdf-actions form{margin:0!important;}
.employee-pdf-select{display:flex!important;gap:8px!important;align-items:end!important;flex-wrap:wrap!important;}
.employee-pdf-select label{display:grid!important;gap:5px!important;}
.employee-pdf-select label span{font-size:12px!important;color:#aebbd1!important;font-weight:900!important;}
.employee-pdf-select select{min-width:190px!important;}
@media(max-width:760px){.section-title-actions{display:block!important}.employee-pdf-actions{justify-content:stretch!important;margin-top:12px!important}.employee-pdf-actions,.employee-pdf-select{display:grid!important;grid-template-columns:1fr!important}.employee-pdf-select select,.employee-pdf-select button,.employee-pdf-actions .btn{width:100%!important}}

/* ==========================================================
   V122 - CORRECTION APPROFONDIE MOBILE ADMIN + PWA
   - Supprime le grand espace vide du haut
   - Remet le bandeau catégories mobile sous le header
   - Header compact et stable iPhone/PWA
   ========================================================== */
.mobile-category-nav{display:none!important;}
@media (max-width:900px){
  body.admin-space{background:#061020!important;}
  body.admin-space .clean-topbar,
  body.admin-space .top-quickbar{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;
    height:74px!important;min-height:74px!important;margin:0!important;padding:8px 10px!important;
    display:flex!important;align-items:stretch!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;
    border-radius:0!important;background:#071120!important;z-index:30!important;scrollbar-width:none!important;
  }
  body.admin-space .clean-topbar::-webkit-scrollbar,
  body.admin-space .top-quickbar::-webkit-scrollbar{display:none!important;}
  body.admin-space .topbar-link{
    flex:0 0 112px!important;width:112px!important;min-width:112px!important;height:58px!important;
    border-radius:18px!important;background:rgba(12,24,44,.66)!important;border:1px solid rgba(148,190,255,.08)!important;
    padding:7px!important;font-size:12px!important;line-height:1.05!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
  }
  body.admin-space .topbar-link span:last-child{max-width:96px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;display:block!important;}
  body.admin-space .topbar-svg{width:26px!important;height:26px!important;flex:0 0 26px!important;}

  body.admin-space .top-account{
    position:relative!important;top:auto!important;left:auto!important;right:auto!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;height:auto!important;min-height:72px!important;margin:0!important;
    padding:10px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 56px!important;gap:12px!important;
    align-items:center!important;background:#071120!important;border:0!important;border-top:1px solid rgba(148,190,255,.10)!important;border-bottom:1px solid rgba(148,190,255,.16)!important;
    border-radius:0 0 18px 18px!important;box-shadow:none!important;z-index:40!important;overflow:visible!important;
  }
  body.admin-space .top-account .account-menu{min-width:0!important;width:100%!important;}
  body.admin-space .top-account .account-summary{height:56px!important;min-height:56px!important;width:100%!important;max-width:100%!important;min-width:0!important;border-radius:22px!important;overflow:hidden!important;}
  body.admin-space .top-account .account-name{font-size:18px!important;max-width:calc(100vw - 185px)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.admin-space .top-account .notif-menu,
  body.admin-space .top-account .notif-btn{width:56px!important;height:56px!important;min-width:56px!important;max-width:56px!important;margin:0!important;}

  body.admin-space .mobile-category-nav{
    display:flex!important;align-items:stretch!important;gap:10px!important;width:100%!important;max-width:100%!important;
    padding:10px 12px!important;margin:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;
    background:#071120!important;border-bottom:1px solid rgba(148,190,255,.14)!important;position:relative!important;z-index:25!important;
  }
  body.admin-space .mobile-category-nav::-webkit-scrollbar{display:none!important;}
  body.admin-space .mobile-category-nav a{
    flex:0 0 112px!important;min-width:112px!important;height:64px!important;border-radius:18px!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:6px!important;
    color:#dbeafe!important;text-decoration:none!important;background:rgba(12,24,44,.72)!important;border:1px solid rgba(148,190,255,.15)!important;font-weight:900!important;font-size:13px!important;line-height:1.05!important;
  }
  body.admin-space .mobile-category-nav .ui-icon{width:25px!important;height:25px!important;margin:0!important;}
  body.admin-space .mobile-category-nav .ui-icon svg{width:25px!important;height:25px!important;stroke:#a6d8ff!important;fill:none!important;}

  body.admin-space > .sidebar{display:none!important;}
  body.admin-space .main,
  body.admin-space main.main{
    margin:0!important;padding:16px 14px 110px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;
  }
  body.admin-space .hero,
  body.admin-space .card:first-child{margin-top:0!important;}
  body.admin-space .account-panel,
  body.admin-space .notif-panel{
    position:fixed!important;top:154px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;min-width:0!important;
    max-height:calc(100vh - 170px)!important;overflow:auto!important;border-radius:22px!important;z-index:99999!important;padding:16px!important;
  }
  body.admin-space .account-panel a{font-size:16px!important;min-height:52px!important;padding:12px 14px!important;border-radius:16px!important;}
}
@media (max-width:430px){
  body.admin-space .topbar-link{flex-basis:104px!important;width:104px!important;min-width:104px!important;}
  body.admin-space .mobile-category-nav a{flex-basis:104px!important;min-width:104px!important;height:60px!important;font-size:12px!important;}
  body.admin-space .top-account{grid-template-columns:minmax(0,1fr) 54px!important;padding-left:10px!important;padding-right:10px!important;}
  body.admin-space .top-account .notif-menu,
  body.admin-space .top-account .notif-btn{width:54px!important;height:54px!important;min-width:54px!important;max-width:54px!important;}
  body.admin-space .top-account .account-name{font-size:17px!important;max-width:calc(100vw - 175px)!important;}
}
.mcb-notif-enable{position:fixed!important;right:14px!important;bottom:18px!important;z-index:99998!important;border-radius:999px!important;background:#0075ff!important;color:#fff!important;border:0!important;padding:12px 16px!important;font-weight:900!important;box-shadow:0 18px 45px rgba(0,0,0,.35)!important;}
@media(max-width:900px){.mcb-notif-enable{left:14px!important;right:14px!important;width:calc(100% - 28px)!important;bottom:14px!important;}}

/* V124 - bouton notifications PC/PWA visible et propre */
.mcb-notif-enable{border:1px solid rgba(125,174,255,.35);background:#0b7cff;color:#fff;border-radius:14px;padding:10px 14px;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.25);cursor:pointer;margin-left:10px;white-space:nowrap}
@media(max-width:760px){.mcb-notif-enable{display:block;width:calc(100% - 32px);margin:10px 16px 0;padding:14px 16px;font-size:15px}}

/* ===== V130 ULTRA APPROFONDIE : header mobile compact + notifications + comptable semaine ===== */
.mcb-notif-enable{border:1px solid rgba(125,211,252,.35);background:linear-gradient(135deg,#0075ff,#0b5bd3);color:#fff;border-radius:14px;padding:10px 14px;font-weight:900;box-shadow:0 10px 24px rgba(0,117,255,.22);cursor:pointer}
.employee-week-defaults{margin-top:18px;border:1px solid rgba(148,163,184,.18);background:rgba(2,6,23,.22);border-radius:20px;padding:16px;display:grid;gap:10px}
.employee-week-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:4px}
.employee-week-head strong{font-size:17px;color:#fff}.employee-week-head span{font-size:13px;color:#9fb0c8;text-align:right}
.employee-week-row{display:grid;grid-template-columns:180px 1fr 1fr;gap:12px;align-items:end;padding:12px;border:1px solid rgba(148,163,184,.16);background:rgba(15,23,42,.58);border-radius:16px}
.employee-week-row label{margin:0!important}.employee-week-enabled{display:flex!important;align-items:center!important;gap:10px!important;height:48px!important;font-weight:900!important;color:#eaf5ff!important}.employee-week-enabled input{width:auto!important;accent-color:#0075ff!important}.employee-week-row input[type=time]{height:48px!important}
.employee-options-grid-clean{align-items:end!important;gap:14px!important}.employee-options-card .employee-options-actions{align-items:center!important}
@media(max-width:760px){.employee-week-head{display:block}.employee-week-head span{display:block;text-align:left;margin-top:4px}.employee-week-row{grid-template-columns:1fr;gap:10px}.employee-week-enabled{height:auto!important}.employee-options-grid-clean{grid-template-columns:1fr!important}}

@media(max-width:760px){
  html,body{max-width:100vw!important;overflow-x:hidden!important;}
  body.admin-space{padding-top:0!important;}
  body.admin-space .main{padding-top:10px!important;margin-top:0!important;}
  body.admin-space .top-quickbar.clean-topbar,
  body.admin-space .top-quickbar{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:30!important;width:100%!important;height:auto!important;min-height:74px!important;margin:0!important;padding:10px 10px!important;display:flex!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;background:#06101f!important;border-bottom:1px solid rgba(148,163,184,.18)!important;box-shadow:none!important;}
  body.admin-space .top-quickbar a{flex:0 0 112px!important;height:54px!important;min-width:112px!important;border-radius:18px!important;padding:7px 8px!important;font-size:12px!important;line-height:1.1!important;}
  body.admin-space .top-quickbar .quick-svg{width:24px!important;height:24px!important;margin-bottom:2px!important;}
  body.admin-space .top-account{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:40!important;width:100%!important;min-height:72px!important;margin:0!important;padding:10px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 54px!important;gap:10px!important;align-items:center!important;background:#06101f!important;border-bottom:1px solid rgba(148,163,184,.18)!important;}
  body.admin-space .top-account .account-summary{height:54px!important;min-height:54px!important;width:100%!important;max-width:100%!important;padding:6px 12px 6px 8px!important;border-radius:20px!important;display:flex!important;align-items:center!important;gap:12px!important;overflow:hidden!important;}
  body.admin-space .top-account .account-avatar{width:40px!important;height:40px!important;min-width:40px!important;flex:0 0 40px!important;font-size:14px!important;}
  body.admin-space .top-account .account-name{font-size:17px!important;line-height:1!important;min-width:0!important;max-width:calc(100vw - 185px)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.admin-space .top-account .notif-menu,body.admin-space .top-account .notif-btn{width:54px!important;height:54px!important;min-width:54px!important;max-width:54px!important;border-radius:18px!important;margin:0!important;}
  body.admin-space .account-panel{position:absolute!important;top:68px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;transform:none!important;border-radius:22px!important;z-index:9999!important;max-height:calc(100vh - 96px)!important;overflow:auto!important;}
  body.admin-space .mobile-category-nav{position:relative!important;display:flex!important;top:auto!important;left:auto!important;right:auto!important;z-index:20!important;width:100%!important;height:auto!important;margin:0!important;padding:10px 10px 12px!important;gap:10px!important;overflow-x:auto!important;background:#06101f!important;border-bottom:1px solid rgba(148,163,184,.14)!important;}
  body.admin-space .mobile-category-nav a{flex:0 0 94px!important;min-width:94px!important;height:58px!important;border-radius:18px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;font-size:12px!important;font-weight:900!important;background:rgba(15,23,42,.72)!important;border:1px solid rgba(148,163,184,.22)!important;color:#eaf5ff!important;text-decoration:none!important;}
  body.admin-space .mobile-category-nav .ui-icon{width:22px!important;height:22px!important;margin:0!important;}
  body.admin-space .mobile-category-nav .ui-icon svg{width:22px!important;height:22px!important;stroke:#a6d8ff!important;fill:none!important;}
  body.admin-space .hero-card{margin-top:12px!important;}
  body.admin-space .top-quickbar::-webkit-scrollbar,body.admin-space .mobile-category-nav::-webkit-scrollbar{display:none!important;}
  body.admin-space .mcb-notif-enable{position:relative!important;margin:8px 12px!important;width:calc(100% - 24px)!important;}
}


/* ===== V131 CORRECTION ULTRA APPROFONDIE MOBILE + CLOCHE MAIL + PWA ===== */
.notif-mail-item{display:block!important;text-decoration:none!important;color:inherit!important;border:1px solid rgba(59,130,246,.25)!important;background:rgba(0,117,255,.12)!important;border-radius:14px!important;padding:12px!important;margin:8px 0!important}
.notif-mail-item b{display:block!important;color:#fff!important}.notif-mail-item small{display:block!important;color:#b9c9dd!important;margin-top:4px!important}
.notif-badge,.side-mail-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:20px!important;height:20px!important;border-radius:999px!important;background:#e11d48!important;color:#fff!important;font-size:12px!important;font-weight:900!important;padding:0 6px!important;box-shadow:0 0 0 2px rgba(255,255,255,.12)!important}
@media(max-width:760px){
  body.admin-space{display:flex!important;flex-direction:column!important;min-height:100vh!important;padding:0!important;}
  body.admin-space .top-quickbar.clean-topbar,
  body.admin-space .top-quickbar{
    order:1!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:80!important;
    width:100%!important;max-width:100%!important;min-height:88px!important;height:88px!important;margin:0!important;
    padding:calc(12px + env(safe-area-inset-top)) 12px 10px!important;display:flex!important;align-items:center!important;gap:10px!important;
    overflow-x:auto!important;overflow-y:hidden!important;background:#06101f!important;border-bottom:1px solid rgba(148,190,255,.16)!important;scrollbar-width:none!important;
  }
  body.admin-space .top-quickbar::-webkit-scrollbar{display:none!important}
  body.admin-space .topbar-link,
  body.admin-space .top-quickbar a{
    flex:0 0 112px!important;min-width:112px!important;width:112px!important;height:60px!important;min-height:60px!important;
    border-radius:18px!important;padding:7px 8px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;
    overflow:hidden!important;text-align:center!important;font-size:12px!important;line-height:1.05!important;white-space:normal!important;
  }
  body.admin-space .topbar-link span:last-child{display:block!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.05!important;padding-bottom:1px!important}
  body.admin-space .topbar-svg{width:28px!important;height:28px!important;min-width:28px!important;margin:0!important;display:block!important;}
  body.admin-space .top-account{order:2!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:90!important;width:100%!important;min-height:78px!important;margin:0!important;padding:10px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 56px!important;gap:10px!important;align-items:center!important;background:#06101f!important;border-bottom:1px solid rgba(148,190,255,.18)!important;border-radius:0 0 18px 18px!important;}
  body.admin-space .top-account .account-summary{height:56px!important;min-height:56px!important;border-radius:20px!important;}
  body.admin-space .top-account .notif-menu,body.admin-space .top-account .notif-btn{width:56px!important;height:56px!important;min-width:56px!important;max-width:56px!important;border-radius:18px!important;}
  body.admin-space .mobile-category-nav{order:3!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:70!important;width:100%!important;height:auto!important;min-height:76px!important;margin:0!important;padding:10px 12px!important;display:flex!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;background:#06101f!important;border-bottom:1px solid rgba(148,190,255,.14)!important;scrollbar-width:none!important;}
  body.admin-space .mobile-category-nav::-webkit-scrollbar{display:none!important}
  body.admin-space .mobile-category-nav a{flex:0 0 104px!important;min-width:104px!important;height:58px!important;border-radius:18px!important;font-size:12px!important;line-height:1.05!important;}
  body.admin-space .main,body.admin-space main.main{order:4!important;margin:0!important;padding:16px 14px 110px!important;width:100%!important;max-width:100%!important;}
  body.admin-space .account-panel,body.admin-space .notif-panel{position:fixed!important;top:calc(92px + env(safe-area-inset-top))!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;z-index:99999!important;max-height:calc(100vh - 112px)!important;overflow:auto!important;border-radius:22px!important;}
}

/* ===== V137 - Agenda chantiers / RDV : calendrier mensuel ===== */
.agenda-calendar-card{margin:0 0 32px!important;padding:22px!important;overflow:hidden!important}
.agenda-calendar-header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important}
.agenda-calendar-header h2{margin:0 0 6px!important;color:#fff!important;font-size:24px!important}
.agenda-calendar-header p{margin:0!important;color:#b7c7dd!important;font-weight:700!important}
.agenda-calendar-nav{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.agenda-calendar-nav strong{min-width:150px!important;text-align:center!important;color:#eaf5ff!important;background:rgba(0,117,255,.12)!important;border:1px solid rgba(0,117,255,.26)!important;border-radius:14px!important;padding:11px 14px!important;font-weight:900!important}
.agenda-calendar-weekdays{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px!important;margin-bottom:8px!important}
.agenda-calendar-weekdays span{padding:10px 8px!important;text-align:center!important;color:#9ed8ff!important;font-weight:900!important;text-transform:uppercase!important;font-size:12px!important;letter-spacing:.04em!important;border-radius:12px!important;background:rgba(15,23,42,.75)!important;border:1px solid rgba(148,190,255,.12)!important}
.agenda-calendar-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px!important}
.agenda-calendar-day{min-height:118px!important;border:1px solid rgba(148,190,255,.16)!important;border-radius:16px!important;background:rgba(8,18,34,.70)!important;padding:10px!important;position:relative!important;overflow:hidden!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important}
.agenda-calendar-day.is-muted{opacity:.48!important;background:rgba(8,18,34,.32)!important}
.agenda-calendar-day.is-today{border-color:rgba(0,117,255,.65)!important;box-shadow:0 0 0 2px rgba(0,117,255,.18), inset 0 1px 0 rgba(255,255,255,.06)!important}
.agenda-calendar-daynum{width:32px!important;height:32px!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:11px!important;background:rgba(148,190,255,.10)!important;color:#fff!important;font-weight:900!important;margin-bottom:8px!important}
.agenda-calendar-empty{color:#516178!important;font-weight:900!important}
.agenda-calendar-event{display:block!important;margin-top:6px!important;padding:7px 8px!important;border-radius:11px!important;text-decoration:none!important;background:rgba(0,117,255,.14)!important;border:1px solid rgba(0,117,255,.24)!important;color:#eaf5ff!important;line-height:1.15!important;overflow:hidden!important}
.agenda-calendar-event b{display:block!important;font-size:12px!important;color:#9ed8ff!important;margin-bottom:3px!important}
.agenda-calendar-event span{display:block!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;font-size:12px!important;font-weight:900!important}
.agenda-calendar-more{display:block!important;margin-top:7px!important;color:#cbd7eb!important;font-weight:900!important}
@media(max-width:1100px){.agenda-calendar-grid,.agenda-calendar-weekdays{gap:6px!important}.agenda-calendar-day{min-height:104px!important;padding:8px!important}.agenda-calendar-event span{white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important}}
@media(max-width:760px){.agenda-calendar-card{padding:16px!important;margin-bottom:24px!important}.agenda-calendar-header{display:grid!important;grid-template-columns:1fr!important}.agenda-calendar-nav{justify-content:stretch!important;display:grid!important;grid-template-columns:1fr!important}.agenda-calendar-nav .btn,.agenda-calendar-nav strong{width:100%!important;min-width:0!important}.agenda-calendar-weekdays{display:none!important}.agenda-calendar-grid{grid-template-columns:1fr!important}.agenda-calendar-day{min-height:auto!important}.agenda-calendar-day.is-muted{display:none!important}.agenda-calendar-empty{display:none!important}.agenda-calendar-daynum{margin-bottom:6px!important}.agenda-calendar-event span{white-space:normal!important}}

/* Synchronisation Agenda téléphone temps réel */
.sync-live-ok,.sync-live-warn{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:10px 14px!important;border-radius:999px!important;font-weight:900!important;margin:8px 0 14px!important}
.sync-live-ok{color:#bbf7d0!important;background:rgba(34,197,94,.16)!important;border:1px solid rgba(34,197,94,.35)!important}
.sync-live-warn{color:#fde68a!important;background:rgba(245,158,11,.16)!important;border:1px solid rgba(245,158,11,.35)!important}
.sync-google-card{margin-bottom:22px!important}
.sync-steps{display:grid!important;gap:14px!important;margin-top:16px!important}
.sync-steps>div{padding:16px!important;border-radius:16px!important;background:rgba(8,18,34,.62)!important;border:1px solid rgba(148,190,255,.14)!important}
.sync-steps b{display:block!important;color:#fff!important;margin-bottom:6px!important}
.sync-steps p{margin:0 0 8px!important;color:#c7d7ea!important;font-weight:700!important}
.sync-steps code,.sync-steps pre{display:block!important;white-space:pre-wrap!important;word-break:break-word!important;background:rgba(2,6,23,.86)!important;border:1px solid rgba(148,190,255,.16)!important;border-radius:12px!important;color:#dbeafe!important;padding:12px!important;font-weight:800!important;overflow:auto!important}

/* ===== FIX 2026-05-12 : Employés - lisibilité demandes congé + planning équipe ===== */
/* Les lignes blanches rendaient le texte invisible sur le thème sombre. Correction ciblée sans toucher aux autres modules. */
#conges .table-wrap,
#planning .table-wrap{
  border:1px solid rgba(148,190,255,.18) !important;
  background:rgba(8,15,29,.58) !important;
  border-radius:16px !important;
  overflow-x:auto !important;
}
#conges .table-wrap table,
#planning .table-wrap table{
  border-collapse:separate !important;
  border-spacing:0 10px !important;
  color:#eaf3ff !important;
}
#conges .table-wrap th,
#planning .table-wrap th{
  color:#9fb6d8 !important;
  font-weight:900 !important;
  opacity:1 !important;
}
#conges .table-wrap td,
#planning .table-wrap td{
  background:#0d1728 !important;
  color:#eaf3ff !important;
  -webkit-text-fill-color:#eaf3ff !important;
  border-top:1px solid rgba(148,190,255,.18) !important;
  border-bottom:1px solid rgba(148,190,255,.18) !important;
  opacity:1 !important;
}
#conges .table-wrap td:first-child,
#planning .table-wrap td:first-child{
  border-left:1px solid rgba(148,190,255,.18) !important;
  border-radius:14px 0 0 14px !important;
}
#conges .table-wrap td:last-child,
#planning .table-wrap td:last-child{
  border-right:1px solid rgba(148,190,255,.18) !important;
  border-radius:0 14px 14px 0 !important;
}
#conges .table-wrap td strong,
#planning .table-wrap td strong,
#conges .table-wrap td a,
#planning .table-wrap td a{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
#conges .status-pill,
#planning .status-pill{
  background:rgba(0,117,255,.16) !important;
  color:#9ed8ff !important;
  -webkit-text-fill-color:#9ed8ff !important;
  border:1px solid rgba(0,117,255,.28) !important;
}
#planning .employee-inline-form input,
#planning .employee-inline-form select,
#conges .employee-inline-form input,
#conges .employee-inline-form select{
  color:#0f172a !important;
  -webkit-text-fill-color:#0f172a !important;
  background:#ffffff !important;
  opacity:1 !important;
}
#planning .employee-inline-form input::placeholder,
#conges .employee-inline-form input::placeholder{
  color:#64748b !important;
  -webkit-text-fill-color:#64748b !important;
  opacity:1 !important;
}
@media(max-width:760px){
  #conges .table-wrap,
  #planning .table-wrap{background:transparent !important;border:0 !important;}
  #conges .table-wrap table,
  #planning .table-wrap table{min-width:720px !important;}
}

/* V92 - Employés : lisibilité tableaux + vrai planning équipe */
#pointage .table-wrap td,
#conges .table-wrap td,
#planning .table-wrap td,
.employee-dark-table td{
  background:linear-gradient(135deg, rgba(13,27,49,.98), rgba(9,19,35,.98)) !important;
  color:#eaf2ff !important;
  border-color:rgba(96,165,250,.20) !important;
}
#pointage .table-wrap tr,
#conges .table-wrap tr,
#planning .table-wrap tr{color:#eaf2ff !important;}
#pointage .table-wrap th,
#conges .table-wrap th,
#planning .table-wrap th{
  color:#d9e8ff !important;
  background:rgba(0,117,255,.14) !important;
  padding:10px 12px !important;
}
#pointage .table-wrap table,
#conges .table-wrap table,
#planning .table-wrap table{border-spacing:0 10px !important;}
#pointage .time-hours-value{color:#06152b !important;}
.team-planning-block{overflow:hidden;}
.planning-team-form{margin-top:18px;margin-bottom:18px;}
.team-week-toolbar{
  display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  margin:18px 0;padding:14px;border:1px solid rgba(96,165,250,.18);border-radius:18px;
  background:rgba(4,12,27,.62);color:#eaf2ff;
}
.team-week-toolbar strong{font-size:16px;color:#fff;text-align:center;}
.team-planning-grid-wrap{overflow:auto;border:1px solid rgba(96,165,250,.18);border-radius:20px;background:rgba(4,12,27,.55);}
.team-planning-grid{width:100%;min-width:1120px;border-collapse:separate;border-spacing:0;}
.team-planning-grid th,.team-planning-grid td{border-right:1px solid rgba(96,165,250,.14);border-bottom:1px solid rgba(96,165,250,.14);vertical-align:top;}
.team-planning-grid thead th{position:sticky;top:0;z-index:2;background:#07172d;color:#fff;padding:13px 10px;text-align:left;font-weight:900;}
.team-planning-grid thead th span{display:block;color:#93c5fd;font-size:12px;margin-top:3px;}
.team-planning-grid tbody th.team-employee-name{background:#081a33;color:#fff;padding:14px 12px;width:170px;position:sticky;left:0;z-index:1;}
.team-employee-name small{display:block;margin-top:4px;color:#9fb4d0;font-weight:700;}
.team-planning-grid td{background:rgba(10,23,42,.72);color:#dbeafe;padding:10px;min-height:110px;}
.team-empty{display:block;color:#6f86a8;font-weight:800;font-size:12px;padding:8px;border:1px dashed rgba(148,163,184,.18);border-radius:12px;text-align:center;}
.team-planning-item{background:linear-gradient(135deg,rgba(0,117,255,.20),rgba(14,165,233,.10));border:1px solid rgba(96,165,250,.30);border-radius:14px;padding:10px;margin-bottom:8px;box-shadow:0 8px 20px rgba(0,0,0,.14);}
.team-planning-item strong{display:block;color:#fff;font-size:13px;margin-bottom:4px;}
.team-planning-item span{display:block;color:#dbeafe;font-weight:850;font-size:13px;}
.team-planning-item small{display:block;color:#a9bdd8;margin-top:4px;line-height:1.3;}
.team-item-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px;}
.team-item-actions form{margin:0;}
.btn.mini,button.mini{padding:6px 8px!important;border-radius:10px!important;font-size:11px!important;line-height:1!important;}
@media(max-width:800px){
  .team-week-toolbar{align-items:stretch;}
  .team-week-toolbar .btn{width:100%;justify-content:center;}
  .team-week-toolbar strong{width:100%;order:-1;}
}

/* Correctif planning équipe : français + vraies équipes */
.team-manager-panel{
  margin:18px 0;
  padding:18px;
  border:1px solid rgba(96,165,250,.20);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(7,23,45,.90),rgba(10,23,42,.72));
  box-shadow:0 18px 38px rgba(0,0,0,.18);
}
.team-manager-panel h3{margin:0 0 4px;color:#fff;font-size:20px;font-weight:900;}
.team-create-form{display:grid;grid-template-columns:1.2fr 1.5fr auto;gap:14px;align-items:end;margin-top:14px;}
.team-create-form input,.team-create-form select{width:100%;border-radius:14px;border:1px solid rgba(147,197,253,.25);background:#0b1729;color:#f8fbff;padding:12px 14px;font-weight:800;}
.team-create-form select option{color:#0f172a;background:#fff;}
.team-members-field small{display:block;margin-top:6px;color:#9fb4d0;font-weight:700;}
.team-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:14px;}
.team-chip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-radius:16px;border:1px solid rgba(96,165,250,.18);background:rgba(15,23,42,.72);}
.team-chip strong{display:block;color:#fff;font-weight:900;}
.team-chip span{display:block;color:#9fb4d0;font-size:12px;line-height:1.35;margin-top:3px;}
.team-planning-grid thead th{text-transform:none!important;}
.team-planning-grid tbody th.team-employee-name{min-width:190px;}
.team-planning-item em{display:block;color:#bfdbfe;font-style:normal;font-size:12px;font-weight:850;margin-bottom:4px;}
@media(max-width:900px){.team-create-form{grid-template-columns:1fr}.team-manager-panel{padding:14px}.team-chip{align-items:flex-start;}}

/* Réglages - rôles et permissions ultra personnalisables */
.settings-v70-roles{margin-top:22px}.settings-add-role,.settings-permissions-form,.settings-delete-role{margin-top:16px}.role-permission-card{border:1px solid rgba(148,163,184,.22);background:rgba(15,23,42,.72);border-radius:18px;margin:12px 0;overflow:hidden}.role-permission-card summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;background:rgba(13,31,54,.72);color:#fff}.role-permission-card summary::-webkit-details-marker{display:none}.role-permission-card summary strong{font-size:18px}.role-permission-card summary span{color:#9fb0ca;font-size:13px}.permissions-table-wrap{overflow:auto;padding:14px}.permissions-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px}.permissions-table th{background:#0b2542;color:#eaf2ff;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:12px 10px;border-bottom:1px solid rgba(148,163,184,.22)}.permissions-table th:first-child{text-align:left;border-top-left-radius:12px}.permissions-table th:last-child{border-top-right-radius:12px}.permissions-table td{padding:11px 10px;border-bottom:1px solid rgba(148,163,184,.14);background:rgba(2,6,23,.28);text-align:center;color:#edf6ff}.permissions-table td:first-child{text-align:left;color:#fff;min-width:260px}.perm-check{display:inline-flex;align-items:center;justify-content:center}.perm-check input{position:absolute;opacity:1;pointer-events:none}.perm-check span{width:30px;height:30px;border-radius:10px;border:1px solid rgba(148,163,184,.45);background:#102033;display:inline-block;position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.perm-check input:checked+span{background:#0d7cff;border-color:#47a3ff}.perm-check input:checked+span:after{content:'✓';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:900}.settings-delete-role{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.settings-delete-role select{min-width:260px;background:#0d1b2e;color:#fff;border:1px solid rgba(148,163,184,.3);border-radius:12px;padding:12px 14px}
@media(max-width:760px){.role-permission-card summary{align-items:flex-start;flex-direction:column}.permissions-table{min-width:760px}.settings-delete-role select{width:100%}}

/* === Fichiers entreprise : explorateur professionnel === */
.file-pro-shell{display:grid;grid-template-columns:330px minmax(0,1fr);gap:22px;align-items:start}.file-pro-sidebar{position:sticky;top:18px;max-height:calc(100vh - 42px);overflow:auto}.file-pro-side-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.file-pro-side-head h2{margin:0}.file-pro-side-head p,.file-pro-content-head p{margin:6px 0 0;color:#94a3b8}.pro-tree-root a,.pro-tree-list a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:12px;color:#dbeafe;border:1px solid transparent}.pro-tree-root.active a,.pro-tree-list li.active>a,.pro-tree-list a:hover{background:rgba(0,117,255,.18);border-color:rgba(125,211,252,.22)}.pro-tree-list{list-style:none;margin:8px 0 0;padding:0}.pro-tree-list ul{margin-left:16px;padding-left:10px;border-left:1px dashed rgba(148,163,184,.22)}.pro-tree-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-pro-main{display:grid;gap:18px;min-width:0}.file-pro-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.file-pro-breadcrumb span{display:block;color:#94a3b8;font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.08em;margin-bottom:8px}.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-weight:800}.crumbs a{color:#bfdbfe;text-decoration:underline}.crumbs b{color:#64748b}.file-pro-stats{display:flex;gap:10px;flex-wrap:wrap}.file-pro-stats div{min-width:92px;padding:10px 14px;border-radius:14px;background:#0b1526;border:1px solid rgba(148,163,184,.16);text-align:center}.file-pro-stats b{display:block;font-size:20px}.file-pro-stats span{display:block;color:#94a3b8;font-size:12px;font-weight:800;text-transform:uppercase}.file-pro-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.file-pro-actions details{background:rgba(2,8,23,.22);border:1px solid rgba(148,163,184,.14);border-radius:16px;padding:14px}.file-pro-actions summary{cursor:pointer;font-weight:900;color:#f8fafc;margin-bottom:12px}.file-pro-form{display:grid;grid-template-columns:minmax(150px,220px) 1fr auto;gap:10px;align-items:center}.file-pro-form.upload-form{grid-template-columns:minmax(150px,220px) 1fr minmax(210px,1fr) auto}.file-pro-form input,.file-pro-form select,.file-pro-tools input,.rename-mini input,.move-mini select{min-height:42px;border-radius:12px;border:1px solid rgba(148,163,184,.22);background:#0b1526;color:#f8fafc;padding:0 12px}.file-pro-content-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.file-pro-content-head h2{margin:0}.file-pro-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.file-pro-tools input{width:min(360px,100%)}.file-pro-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:14px}.file-pro-item{background:linear-gradient(180deg,rgba(15,23,42,.88),rgba(8,13,24,.92));border:1px solid rgba(148,163,184,.16);border-radius:18px;padding:14px;min-width:0}.file-pro-item.folder{border-color:rgba(59,130,246,.22);background:linear-gradient(180deg,rgba(13,38,77,.72),rgba(8,13,24,.92))}.file-pro-title{display:flex;align-items:center;gap:12px;min-width:0;color:#f8fafc}.file-pro-title b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-pro-title small{display:block;color:#9ca3af;margin-top:4px;font-weight:800}.file-pro-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:14px;background:#0b1526;border:1px solid rgba(148,163,184,.18);color:#93c5fd}.folder-icon{background:rgba(59,130,246,.16);color:#bfdbfe}.file-pro-actions-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:12px;border-top:1px solid rgba(148,163,184,.14)}.file-pro-actions-row form{margin:0}.rename-mini,.move-mini{display:flex;gap:6px;align-items:center}.rename-mini input{width:150px}.move-mini select{width:155px}.file-empty-state{display:grid;place-items:center;text-align:center;gap:10px;min-height:220px;border:1px dashed rgba(148,163,184,.28);border-radius:18px;color:#cbd5e1}.file-empty-state svg{width:44px;height:44px;color:#93c5fd}.file-empty-state b{font-size:20px}.file-empty-state span{color:#94a3b8}.file-pro-grid.list-view{grid-template-columns:1fr}.file-pro-grid.list-view .file-pro-item{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:center}.file-pro-grid.list-view .file-pro-actions-row{margin-top:0;padding-top:0;border-top:0;justify-content:flex-end}.muted{color:#94a3b8}@media(max-width:1200px){.file-pro-shell{grid-template-columns:1fr}.file-pro-sidebar{position:static;max-height:none}.file-pro-actions,.file-pro-form,.file-pro-form.upload-form{grid-template-columns:1fr}.file-pro-header,.file-pro-content-head{display:block}.file-pro-stats,.file-pro-tools{margin-top:12px}.file-pro-grid.list-view .file-pro-item{display:block}.file-pro-grid.list-view .file-pro-actions-row{margin-top:14px;padding-top:12px;border-top:1px solid rgba(148,163,184,.14);justify-content:flex-start}}@media(max-width:700px){.file-pro-grid{grid-template-columns:1fr}.file-pro-actions-row,.rename-mini,.move-mini{width:100%;align-items:stretch}.rename-mini input,.move-mini select,.file-pro-actions-row button,.file-pro-actions-row .btn{width:100%}.file-pro-stats div{flex:1}.file-pro-tools input{width:100%}}

/* Correctif approfondi explorateur fichiers entreprise */
.file-pro-shell{grid-template-columns:360px minmax(0,1fr);gap:26px}.file-pro-sidebar,.file-pro-header,.file-pro-actions,.file-pro-content{box-shadow:0 18px 45px rgba(0,0,0,.18)}.file-pro-actions{grid-template-columns:1fr;gap:18px}.file-pro-actions details{padding:18px}.file-pro-form.upload-form{grid-template-columns:minmax(170px,230px) minmax(220px,1fr) minmax(260px,1.2fr) auto}.file-picker-pro{display:flex;align-items:center;gap:10px;min-height:42px;border-radius:12px;border:1px solid rgba(148,163,184,.22);background:#0b1526;color:#f8fafc;padding:0 12px;cursor:pointer;overflow:hidden}.file-picker-pro input{position:absolute;opacity:1;pointer-events:none}.file-picker-pro span{font-weight:900;white-space:nowrap}.file-picker-pro small{color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone-pro{margin-top:14px;border:2px dashed rgba(96,165,250,.35);border-radius:18px;background:linear-gradient(180deg,rgba(14,39,78,.42),rgba(7,13,24,.72));min-height:128px;display:grid;place-items:center;cursor:pointer;transition:.18s ease}.dropzone-pro input{display:none}.dropzone-pro.drag-over{border-color:#60a5fa;background:rgba(37,99,235,.22);transform:translateY(-1px)}.dropzone-inner{display:grid;place-items:center;text-align:center;gap:8px;color:#dbeafe;padding:18px}.dropzone-inner svg{width:30px;height:30px}.dropzone-inner b{font-size:18px}.dropzone-inner span{color:#94a3b8}.file-pro-grid{gap:16px}.file-pro-item{transition:.16s ease}.file-pro-item:hover{border-color:rgba(96,165,250,.45);transform:translateY(-1px)}.file-pro-item.is-dragging{opacity:.45}.file-pro-item.folder.drop-target{border-color:#22c55e;background:linear-gradient(180deg,rgba(20,83,45,.66),rgba(8,13,24,.92));box-shadow:0 0 0 3px rgba(34,197,94,.16)}.file-pro-actions-row{align-items:center}.file-pro-actions-row .btn,.file-pro-actions-row button{min-height:36px}.file-pro-grid.list-view .file-pro-actions-row{max-width:100%;overflow:auto}.pro-tree-list a,.pro-tree-root a{min-height:42px}.pro-tree-root a:before,.pro-tree-list a:before{content:'';width:7px;height:7px;border-radius:999px;background:rgba(96,165,250,.35);flex:0 0 7px}.pro-tree-root.active a:before,.pro-tree-list li.active>a:before{}@media(max-width:1200px){.file-pro-form.upload-form{grid-template-columns:1fr}.dropzone-pro{min-height:110px}}@media(max-width:700px){.file-pro-shell{gap:16px}.dropzone-inner b{font-size:15px}.file-picker-pro{width:100%}}

/* Correctif Fichiers entreprise : upload tous formats + aperçus mobile/pro */
.file-preview{margin-top:12px;border:1px solid rgba(148,163,184,.16);border-radius:16px;background:rgba(2,8,23,.35);overflow:hidden;min-height:88px;display:grid;place-items:center;color:#dbeafe;text-align:center}
.file-preview.image{display:block;background:#07101f}.file-preview.image img{display:block;width:100%;height:170px;object-fit:cover;background:#020617}
.file-preview.video video{display:block;width:100%;max-height:220px;background:#020617;border-radius:14px}
.file-preview.audio{min-height:74px;padding:12px}.file-preview.audio audio{width:100%}
.file-preview.pdf,.file-preview.generic{padding:18px;text-decoration:none;gap:8px}.file-preview.pdf svg,.file-preview.generic svg{width:34px;height:34px;color:#93c5fd}.file-preview.pdf span,.file-preview.generic span{font-weight:900;color:#dbeafe}
.file-picker-pro input[type=file]{width:1px;height:1px}.file-pro-actions details.upload-panel{border-color:rgba(96,165,250,.28);background:linear-gradient(180deg,rgba(13,38,77,.35),rgba(2,8,23,.22))}
@media(max-width:700px){.file-preview.image img{height:150px}.file-preview.video video{max-height:190px}.file-pro-title{align-items:flex-start}.file-pro-title b{white-space:normal;word-break:break-word}.file-pro-actions-row{gap:10px}.file-pro-item{padding:12px}.dropzone-pro{min-height:150px}}

/* Correctif approfondi Fichiers entreprise : mobile, aperçu, envoi vidéos */
.upload-progress-box{margin-top:14px;padding:14px;border-radius:16px;background:#071426;border:1px solid rgba(96,165,250,.28);color:#e5f0ff}.upload-progress-box b{display:block;margin-bottom:10px}.upload-progress-box div{height:10px;border-radius:999px;background:rgba(148,163,184,.18);overflow:hidden}.upload-progress-box span{display:block;height:100%;width:0;background:#1484ff;border-radius:999px;transition:width .18s ease}.upload-progress-box small{display:block;margin-top:8px;color:#9fb4d1;font-weight:800}.file-preview{margin-top:12px;border-radius:14px;overflow:hidden;border:1px solid rgba(148,163,184,.16);background:#071426;display:flex;align-items:center;justify-content:center;min-height:90px;color:#dbeafe}.file-preview.image img{width:100%;height:210px;object-fit:cover;display:block}.file-preview.video video{display:block;width:100%;max-height:240px;background:#000}.file-preview.audio{padding:12px}.file-preview.audio audio{width:100%}.file-preview.pdf,.file-preview.generic{gap:10px;text-align:center;padding:16px;text-decoration:none}.file-preview.pdf svg,.file-preview.generic svg{width:28px;height:28px}.file-pro-main,.file-pro-content,.file-pro-grid,.file-pro-item{min-width:0}.file-pro-item.file .file-pro-title{word-break:break-word}.file-pro-item.file .file-pro-title b{white-space:normal;line-height:1.25}.file-pro-form button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:900px){body{overflow-x:hidden}.file-pro-shell{display:block}.file-pro-sidebar{position:relative;top:auto;margin-bottom:14px;max-height:none}.file-pro-main{display:block}.file-pro-header,.file-pro-actions,.file-pro-content{margin-bottom:14px}.file-pro-header{display:block}.file-pro-breadcrumb,.file-pro-stats{margin-bottom:12px}.file-pro-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.file-pro-stats div{min-width:0;padding:8px}.file-pro-actions{display:block}.file-pro-actions details{margin-bottom:12px}.file-pro-form,.file-pro-form.upload-form{display:grid;grid-template-columns:1fr!important}.file-picker-pro{min-width:0}.dropzone-pro{min-height:132px}.file-pro-content-head{display:block}.file-pro-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.file-pro-tools input{grid-column:1/-1;width:100%}.file-pro-grid,.file-pro-grid.list-view{display:grid!important;grid-template-columns:1fr!important}.file-pro-grid.list-view .file-pro-item{display:block}.file-pro-title{align-items:flex-start}.file-pro-icon{width:38px;height:38px;flex-basis:38px}.file-pro-actions-row{display:grid;grid-template-columns:1fr;gap:8px}.file-pro-actions-row .btn,.file-pro-actions-row button,.file-pro-actions-row input,.file-pro-actions-row select,.rename-mini,.move-mini{width:100%!important}.rename-mini,.move-mini{display:grid;grid-template-columns:1fr;gap:8px}.file-preview.image img{height:170px}.file-preview.video video{max-height:220px}.pro-tree-root a,.pro-tree-list a{font-size:15px}.card.file-pro-content{overflow:visible}}
@media(max-width:520px){.file-pro-stats{grid-template-columns:1fr}.file-pro-side-head{display:block}.file-pro-side-head .btn{margin-top:10px;width:100%}.file-pro-content-head h2{font-size:22px}.dropzone-inner{padding:12px}.dropzone-inner b{font-size:15px}.dropzone-inner span{font-size:13px}.file-pro-item{border-radius:14px}.file-preview.image img{height:145px}.file-preview.video video{max-height:180px}}


/* v-mail-isolation - lecture mail protégée : les styles des newsletters ne cassent plus le Dashboard */
.mail-content-frame{
  width:100%;
  min-height:680px;
  height:min(72vh,900px);
  border:0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  display:block;
  overflow:auto;
}
.mail-main > h2,
.mail-main > p{
  color:#f8fbff;
}
.mail-main .actions{
  align-items:center;
}
.mail-main .move-form{
  display:inline-flex;
  gap:8px;
  align-items:center;
}
.mail-main .move-form select{
  background:#0d1728;
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  border-radius:10px;
  padding:10px 12px;
}
@media(max-width:900px){
  .mail-content-frame{
    min-height:560px;
    height:70vh;
    border-radius:12px;
  }
}
@media print{
  .mail-content-frame{
    height:90vh!important;
    min-height:90vh!important;
    box-shadow:none!important;
  }
}

/* V-RADIO-PERSIST - mini widget radio discret et lecture maintenue */
.home-v62-radio-cats{display:flex;gap:8px;overflow-x:auto;padding:2px 0 6px;scrollbar-width:none}.home-v62-radio-cats::-webkit-scrollbar{display:none}.home-v62-cat{flex:0 0 auto;border:1px solid rgba(148,190,255,.22);background:rgba(15,23,42,.62);color:#dbeafe;border-radius:999px;padding:7px 11px;font-size:12px;font-weight:900;cursor:pointer}.home-v62-cat.active{background:linear-gradient(135deg,#0b7cff,#38bdf8);border-color:rgba(96,165,250,.75);color:#fff}.mcb-radio-mini{position:fixed;left:14px;bottom:14px;z-index:9999;width:255px;max-width:calc(100vw - 28px);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 9px 8px 10px;border-radius:18px;background:rgba(6,16,31,.88);border:1px solid rgba(148,190,255,.24);box-shadow:0 16px 42px rgba(0,0,0,.28);backdrop-filter:blur(12px);color:#eaf5ff}.mcb-radio-mini-main{display:flex;align-items:center;gap:8px;min-width:0}.mcb-radio-dot{width:9px;height:9px;border-radius:99px;background:#64748b;box-shadow:0 0 0 3px rgba(100,116,139,.15);flex:0 0 auto}.mcb-radio-dot.playing{box-shadow:0 0 0 3px rgba(34,197,94,.18),0 0 16px rgba(34,197,94,.75)}.mcb-radio-mini-text{min-width:0;line-height:1.05}.mcb-radio-mini-text strong{display:block;max-width:142px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:950}.mcb-radio-mini-text small{display:block;max-width:142px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:#a8c7ea;font-weight:800;margin-top:3px}.mcb-radio-mini-actions{display:flex;align-items:center;gap:5px;flex:0 0 auto}.mcb-radio-mini-actions button{width:31px;height:31px;border:0;border-radius:12px;background:rgba(255,255,255,.09);color:#fff;font-size:13px;font-weight:950;cursor:pointer}.mcb-radio-mini-actions button:hover{background:rgba(59,130,246,.28)}@media(max-width:680px){.mcb-radio-mini{left:10px;right:10px;bottom:10px;width:auto;border-radius:16px;padding:7px 8px}.mcb-radio-mini-text strong,.mcb-radio-mini-text small{max-width:calc(100vw - 160px)}}@media print{.mcb-radio-mini{display:none!important}}

/* V RADIO PERSISTANT - mini widget discret, non déformé, visible sur toutes les pages */
.mcb-radio-mini{
  position:fixed!important;
  left:auto!important;
  right:14px!important;
  bottom:14px!important;
  z-index:2147483000!important;
  width:208px!important;
  max-width:calc(100vw - 28px)!important;
  height:44px!important;
  min-height:44px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:6px 7px 6px 9px!important;
  border-radius:16px!important;
  background:rgba(6,16,31,.82)!important;
  border:1px solid rgba(148,190,255,.28)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.32)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  color:#eaf5ff!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}
.mcb-radio-mini-main{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
.mcb-radio-dot{width:8px!important;height:8px!important;border-radius:50%!important;background:#64748b!important;box-shadow:0 0 0 3px rgba(100,116,139,.15)!important;flex:0 0 8px!important;}
.mcb-radio-dot.playing{background:#22c55e!important;box-shadow:0 0 0 3px rgba(34,197,94,.18),0 0 14px rgba(34,197,94,.75)!important;}
.mcb-radio-mini-text{min-width:0!important;line-height:1.05!important;overflow:hidden!important;}
.mcb-radio-mini-text strong{display:block!important;max-width:104px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:11px!important;font-weight:900!important;color:#eef6ff!important;}
.mcb-radio-mini-text small{display:block!important;max-width:104px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:9px!important;color:#9fbbe0!important;font-weight:700!important;margin-top:2px!important;}
.mcb-radio-mini-actions{display:flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;}
.mcb-radio-mini-actions button{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  min-height:31px!important;
  max-width:31px!important;
  max-height:31px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
  cursor:pointer!important;
  display:grid!important;
  place-items:center!important;
  line-height:1!important;
  font-size:0!important;
  flex:0 0 31px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.mcb-radio-mini-actions button svg{width:15px!important;height:15px!important;display:block!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.8!important;}
.mcb-radio-mini-actions button:hover{background:rgba(59,130,246,.3)!important;}
@media(max-width:720px){
  .mcb-radio-mini{right:10px!important;bottom:10px!important;width:190px!important;height:42px!important;min-height:42px!important;border-radius:15px!important;}
  .mcb-radio-mini-text strong,.mcb-radio-mini-text small{max-width:90px!important;}
  .mcb-radio-mini-actions button{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important;max-height:29px!important;flex-basis:29px!important;}
}
@media print{.mcb-radio-mini{display:none!important;}}

/* V RADIO FIX FINAL - widget discret avec volume, sans popup, non déformé */
.mcb-radio-mini{
  position:fixed!important;
  right:14px!important;
  bottom:14px!important;
  left:auto!important;
  z-index:2147483000!important;
  width:292px!important;
  max-width:calc(100vw - 28px)!important;
  height:46px!important;
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:7px 8px 7px 10px!important;
  border-radius:16px!important;
  background:rgba(6,16,31,.88)!important;
  border:1px solid rgba(148,190,255,.30)!important;
  box-shadow:0 14px 36px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
  color:#eaf5ff!important;
  overflow:hidden!important;
  pointer-events:auto!important;
}
.mcb-radio-mini-main{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  flex:1 1 auto!important;
  overflow:hidden!important;
}
.mcb-radio-dot{
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  min-height:8px!important;
  border-radius:50%!important;
  background:#64748b!important;
  box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;
  flex:0 0 8px!important;
}
.mcb-radio-dot.playing{
  background:#22c55e!important;
  box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;
}
.mcb-radio-mini-text{
  min-width:0!important;
  line-height:1.05!important;
  overflow:hidden!important;
}
.mcb-radio-mini-text strong{
  display:block!important;
  max-width:104px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:11px!important;
  font-weight:900!important;
  color:#eef6ff!important;
}
.mcb-radio-mini-text small{
  display:block!important;
  max-width:104px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  font-size:9px!important;
  color:#9fbbe0!important;
  font-weight:700!important;
  margin-top:2px!important;
}
.mcb-radio-mini-volume{
  width:64px!important;
  min-width:64px!important;
  display:flex!important;
  align-items:center!important;
}
.mcb-radio-mini-volume input[type="range"]{
  width:64px!important;
  height:18px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#38bdf8!important;
  cursor:pointer!important;
}
.mcb-radio-mini-actions{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
}
.mcb-radio-mini-actions button{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  min-height:31px!important;
  max-width:31px!important;
  max-height:31px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:11px!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  cursor:pointer!important;
  display:grid!important;
  place-items:center!important;
  line-height:1!important;
  font-size:0!important;
  flex:0 0 31px!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.mcb-radio-mini-actions button svg{
  width:15px!important;
  height:15px!important;
  display:block!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
}
.mcb-radio-mini-actions button:hover{background:rgba(59,130,246,.32)!important;}
@media(max-width:720px){
  .mcb-radio-mini{
    right:10px!important;
    bottom:10px!important;
    width:260px!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:15px!important;
  }
  .mcb-radio-mini-text strong,.mcb-radio-mini-text small{max-width:82px!important;}
  .mcb-radio-mini-volume{width:54px!important;min-width:54px!important;}
  .mcb-radio-mini-volume input[type="range"]{width:54px!important;}
  .mcb-radio-mini-actions button{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important;max-height:29px!important;flex-basis:29px!important;}
}
@media print{.mcb-radio-mini{display:none!important;}}

/* V150 - Correction approfondie PWA mobile : navigation catégories fluide et sans freeze */
@media (max-width: 900px){
  html,body{overflow-x:hidden!important; overscroll-behavior-y:contain!important;}
  body{background-attachment:scroll!important; background-image:none!important; background-color:#061020!important;}
  .card,.home-v60-widget,.home-v62-radio-current,.home-v62-volume,.top-account,.clean-topbar,.top-quickbar,.mcb-radio-mini{
    -webkit-backdrop-filter:none!important; backdrop-filter:none!important;
    box-shadow:0 8px 22px rgba(0,0,0,.22)!important;
  }
  .main{contain:layout paint!important; padding-bottom:92px!important;}
  .home-v60-grid{display:grid!important; grid-template-columns:1fr!important; gap:14px!important;}
  .home-v60-widget,.card{border-radius:20px!important; padding:16px!important;}
  .clean-topbar,.top-quickbar{
    top:0!important; left:0!important; right:0!important; width:100%!important;
    height:74px!important; min-height:74px!important; max-height:74px!important;
    overflow-x:auto!important; overflow-y:hidden!important; -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important; gap:10px!important; padding:7px 12px 8px!important;
    scrollbar-width:none!important; z-index:4000!important;
  }
  .clean-topbar::-webkit-scrollbar,.top-quickbar::-webkit-scrollbar{display:none!important;}
  .clean-topbar .topbar-link,.top-quickbar .topbar-link,
  .clean-topbar a,.top-quickbar a{
    flex:0 0 98px!important; width:98px!important; min-width:98px!important; height:58px!important;
    border-radius:16px!important; font-size:12px!important; line-height:1.05!important;
    white-space:normal!important; overflow:hidden!important; text-overflow:clip!important; scroll-snap-align:start!important;
    background:rgba(13,23,40,.92)!important; border:1px solid rgba(148,190,255,.18)!important;
  }
  .clean-topbar .topbar-svg,.top-quickbar .topbar-svg{width:26px!important;height:26px!important;min-height:26px!important;flex:0 0 26px!important;}
  .top-account{top:74px!important;}
  .main{padding-top:168px!important;}
  .home-v62-radio-cats{
    display:flex!important; flex-wrap:nowrap!important; gap:8px!important; overflow-x:auto!important; overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important; padding:3px 2px 10px!important; scrollbar-width:none!important;
    contain:layout paint!important;
  }
  .home-v62-radio-cats::-webkit-scrollbar{display:none!important;}
  .home-v62-cat{flex:0 0 auto!important; min-height:34px!important; padding:8px 12px!important; touch-action:manipulation!important;}
  .home-v62-radio-grid{max-height:210px!important; overflow-y:auto!important; -webkit-overflow-scrolling:touch!important; contain:content!important;}
  .home-v62-station{min-height:50px!important; touch-action:manipulation!important; transform:none!important; transition:none!important;}
  .home-v62-radio-search{font-size:16px!important;}
  .mcb-radio-mini{
    left:auto!important; right:10px!important; bottom:calc(10px + env(safe-area-inset-bottom))!important;
    width:min(360px,calc(100vw - 20px))!important; height:46px!important; min-height:46px!important;
    transform:translateZ(0)!important; z-index:6000!important;
  }
  *{animation-duration:.001s!important; scroll-behavior:auto!important;}
}

@media (max-width: 420px){
  .clean-topbar .topbar-link,.top-quickbar .topbar-link,
  .clean-topbar a,.top-quickbar a{flex-basis:104px!important; width:104px!important; min-width:104px!important;}
  .main{padding-left:14px!important; padding-right:14px!important;}
  .mcb-radio-mini-volume{width:64px!important; min-width:64px!important;}
  .mcb-radio-mini-volume input[type="range"]{width:64px!important;}
}

/* Correctif rôles personnalisés mobile/PWA - menus propres par permissions */
@media (max-width: 900px){
  body.employee-space > .sidebar,
  body.admin-space > .sidebar{display:none!important;visibility:visible!important;opacity:0!important;pointer-events:none!important;width:0!important;height:0!important;overflow:hidden!important;}
  body.employee-space .mobile-category-nav,
  body.admin-space .mobile-category-nav{
    position:relative!important;display:flex!important;top:auto!important;left:auto!important;right:auto!important;z-index:20!important;width:100%!important;height:auto!important;margin:0!important;padding:10px 10px 12px!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;background:#06101f!important;border-bottom:1px solid rgba(148,190,255,.14)!important;scrollbar-width:none!important;-webkit-overflow-scrolling:touch!important;
  }
  body.employee-space .mobile-category-nav::-webkit-scrollbar,
  body.admin-space .mobile-category-nav::-webkit-scrollbar{display:none!important;}
  body.employee-space .mobile-category-nav a,
  body.admin-space .mobile-category-nav a{
    flex:0 0 104px!important;min-width:104px!important;height:58px!important;border-radius:18px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;background:#0b1526!important;border:1px solid rgba(148,190,255,.18)!important;color:#eaf3ff!important;text-decoration:none!important;font-size:12px!important;font-weight:900!important;line-height:1.05!important;text-align:center!important;white-space:normal!important;overflow:hidden!important;
  }
  body.employee-space .mobile-category-nav .ui-icon,
  body.admin-space .mobile-category-nav .ui-icon{width:24px!important;height:24px!important;margin:0!important;flex:0 0 24px!important;}
  body.employee-space .mobile-category-nav .ui-icon svg,
  body.admin-space .mobile-category-nav .ui-icon svg{width:24px!important;height:24px!important;stroke:#a6d8ff!important;fill:none!important;}
  body.employee-space .top-account{position:relative!important;top:auto!important;left:auto!important;right:auto!important;z-index:40!important;width:100%!important;min-height:72px!important;margin:0!important;padding:10px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) 54px!important;gap:10px!important;align-items:center!important;background:#06101f!important;border-bottom:1px solid rgba(148,163,184,.18)!important;}
  body.employee-space .top-account .account-menu{grid-area:auto!important;width:100%!important;min-width:0!important;max-width:100%!important;}
  body.employee-space .top-account .notif-menu{grid-area:auto!important;width:54px!important;min-width:54px!important;max-width:54px!important;height:54px!important;}
  body.employee-space .top-account .account-summary{height:54px!important;min-height:54px!important;width:100%!important;max-width:100%!important;padding:6px 12px 6px 8px!important;border-radius:20px!important;display:flex!important;align-items:center!important;gap:12px!important;overflow:hidden!important;}
  body.employee-space .top-account .account-name{font-size:17px!important;line-height:1!important;min-width:0!important;max-width:calc(100vw - 185px)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.employee-space .main{margin:0!important;padding:22px 14px 120px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
}


/* ===== Correction Agenda iPhone propre ===== */
.agenda-iphone-card{padding:26px!important;margin-bottom:30px!important;background:linear-gradient(135deg,rgba(7,19,38,.96),rgba(12,24,42,.92))!important;border:1px solid rgba(148,190,255,.18)!important}
.agenda-iphone-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin-bottom:18px!important}
.agenda-iphone-head h2{margin:0 0 8px!important;display:flex!important;align-items:center!important;gap:10px!important}
.agenda-iphone-head p{margin:0!important;max-width:780px!important;color:#c9d6e8!important;line-height:1.45!important;font-weight:700!important}
.agenda-iphone-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:12px 0 14px!important}
.agenda-iphone-actions .btn{min-height:46px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
.agenda-iphone-actions .btn.ghost{background:rgba(148,190,255,.10)!important;color:#dbeafe!important;border:1px solid rgba(148,190,255,.18)!important}
.agenda-iphone-link{font-size:13px!important;color:#9fb3cd!important;background:rgba(2,8,23,.42)!important}
@media(max-width:760px){.agenda-iphone-card{padding:18px!important}.agenda-iphone-head{display:grid!important;grid-template-columns:1fr!important}.agenda-iphone-actions{display:grid!important;grid-template-columns:1fr!important}.agenda-iphone-actions .btn{width:100%!important}.agenda-iphone-link{font-size:12px!important}}

/* Agenda iPhone simplifié */
.agenda-iphone-simple{padding:20px!important;margin-bottom:26px!important}
.agenda-iphone-simple-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;margin-bottom:14px!important}
.agenda-iphone-simple-head h2{margin:0!important;display:flex!important;align-items:center!important;gap:10px!important}
.agenda-iphone-simple .agenda-iphone-actions{margin:0!important;display:flex!important;gap:10px!important;flex-wrap:wrap!important}
.agenda-iphone-simple .agenda-iphone-actions form{margin:0!important}
.agenda-iphone-simple .agenda-iphone-actions .btn{min-height:44px!important;padding:0 18px!important}
@media(max-width:760px){.agenda-iphone-simple{padding:16px!important}.agenda-iphone-simple-head{align-items:flex-start!important;flex-direction:column!important}.agenda-iphone-simple .agenda-iphone-actions{display:grid!important;grid-template-columns:1fr!important}.agenda-iphone-simple .agenda-iphone-actions .btn{width:100%!important}}


/* CalDAV agenda simplifié */
.caldav-simple-card,.caldav-help-card{max-width:820px;margin-left:auto;margin-right:auto}
.caldav-form input{max-width:100%}
.checkline{display:flex!important;align-items:center;gap:10px;font-weight:800;margin:10px 0 16px!important}
.checkline input{width:18px;height:18px;accent-color:#2563eb}
.agenda-iphone-simple-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.agenda-iphone-simple-actions form{margin:0}
@media(max-width:720px){
  .agenda-iphone-simple-actions .btn{flex:1 1 auto;justify-content:center;min-height:42px;padding:10px 12px}
  .caldav-simple-card,.caldav-help-card{margin-left:0;margin-right:0}
}

/* Réglage Google Calendar simple */
.sync-google-simple .google-sync-form{max-width:780px!important}
.sync-google-simple .google-sync-form small{display:block!important;margin-top:-8px!important;margin-bottom:8px!important;color:#9fb3cd!important;font-weight:800!important}
.sync-mini-steps{margin:10px 0 0!important;padding-left:22px!important;color:#dbeafe!important;font-weight:800!important;line-height:1.55!important}
.sync-mini-steps li{margin:8px 0!important}
@media(max-width:760px){.sync-google-simple .actions{display:grid!important;grid-template-columns:1fr!important}.sync-google-simple .actions .btn{width:100%!important}}

/* V143 - Correction affichage Agenda > Planning : formulaire de modification sous le RDV, sans décalage à droite */
.agenda-planning-grid{
  grid-template-columns:360px minmax(0,1fr) !important;
  max-width:100% !important;
  overflow:visible !important;
}
.agenda-planning-grid > .card,
.agenda-planning-card,
.agenda-new-card{
  min-width:0 !important;
  max-width:100% !important;
}
.agenda-planning-card{
  overflow:hidden !important;
}
.agenda-event-card,
.event.agenda-event-card{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  clear:both !important;
}
.agenda-event-card > *{
  max-width:100% !important;
  min-width:0 !important;
}
.agenda-event-head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:14px !important;
  width:100% !important;
}
.agenda-event-head > div:first-child{
  min-width:0 !important;
  max-width:100% !important;
}
.agenda-event-head b{
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.agenda-event-head small{
  flex-wrap:wrap !important;
  overflow-wrap:anywhere !important;
}
.agenda-event-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  min-width:0 !important;
}
.agenda-edit-form,
.event.agenda-event-card .agenda-edit-form{
  position:static !important;
  float:none !important;
  clear:both !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:16px 0 0 !important;
  box-sizing:border-box !important;
  transform:none !important;
}
.agenda-edit-form.is-open{
  display:block !important;
}
.agenda-edit-grid{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
}
.agenda-edit-grid label,
.agenda-edit-grid input,
.agenda-edit-grid textarea{
  min-width:0 !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.agenda-edit-form .actions{
  width:100% !important;
  max-width:100% !important;
}
@media(max-width:1100px){
  .agenda-planning-grid{grid-template-columns:1fr !important;}
  .agenda-event-head{grid-template-columns:1fr !important;}
  .agenda-event-actions{justify-content:stretch !important;}
  .agenda-event-actions .btn,
  .agenda-event-actions form,
  .agenda-event-actions button{width:100% !important;justify-content:center !important;}
  .agenda-edit-grid{grid-template-columns:1fr !important;}
}

/* === Correctif PC rôles employés / catégories par permissions ===
   Le menu latéral était masqué globalement pour body.employee-space.
   Résultat : les catégories autorisées apparaissaient sur mobile/PWA via .mobile-category-nav,
   mais disparaissaient sur PC. On ne masque la sidebar employé qu'en mobile.
*/
@media (min-width: 901px){
  body.employee-space > aside.sidebar,
  body.employee-space .sidebar{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:fixed!important;
    left:0!important;
    top:0!important;
    bottom:0!important;
    width:230px!important;
    height:auto!important;
    min-height:100vh!important;
    overflow:auto!important;
    padding:20px!important;
    margin:0!important;
    border-right:1px solid rgba(255,255,255,.08)!important;
    border-bottom:0!important;
    border-radius:0!important;
    background:rgba(6,12,24,.92)!important;
    z-index:950!important;
  }
  body.employee-space > aside.sidebar .brand,
  body.employee-space .sidebar .brand{
    display:flex!important;
  }
  body.employee-space > aside.sidebar nav,
  body.employee-space .sidebar nav{
    display:block!important;
  }
  body.employee-space > aside.sidebar nav a,
  body.employee-space .sidebar nav a{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    min-height:44px!important;
  }
  body.employee-space .mobile-category-nav{
    display:none!important;
  }
  body.employee-space .main{
    margin-left:230px!important;
    width:auto!important;
    max-width:none!important;
    padding:35px!important;
    padding-top:88px!important;
  }
}
@media (max-width: 900px){
  body.employee-space > aside.sidebar,
  body.employee-space .sidebar{
    display:none!important;
    visibility:visible!important;
    opacity:0!important;
    pointer-events:none!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
  }
}


/* === V145 - Correction PC rôle employé : catégories dans le bandeau du haut ===
   Le PC ne doit pas afficher les catégories en sidebar. Les modules autorisés
   du rôle sont rendus dans .employee-top-nav, au même endroit que Employés / Mon planning.
*/
@media (min-width:901px){
  body.employee-space > aside.sidebar,
  body.employee-space .sidebar{
    display:none!important;
    visibility:visible!important;
    opacity:0!important;
    pointer-events:none!important;
    width:0!important;
    height:0!important;
    overflow:hidden!important;
  }
  body.employee-space .mobile-category-nav{display:none!important;}
  body.employee-space .top-account{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    min-height:66px!important;
    height:66px!important;
    margin:0!important;
    padding:0 14px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(148,163,184,.18)!important;
    z-index:5000!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    scrollbar-width:thin!important;
  }
  body.employee-space .top-account .notif-menu{order:1!important;flex:0 0 auto!important;}
  body.employee-space .top-account .account-menu{order:2!important;flex:0 0 auto!important;}
  body.employee-space .top-account .employee-top-nav{
    order:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
    min-width:max-content!important;
  }
  body.employee-space .top-account .employee-top-nav a{
    height:44px!important;
    min-height:44px!important;
    min-width:118px!important;
    padding:0 16px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    border-radius:16px!important;
    border:1px solid rgba(148,190,255,.28)!important;
    background:#0d1728!important;
    color:#eef6ff!important;
    text-decoration:none!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.employee-space .top-account .employee-top-nav a .ui-icon svg{
    width:18px!important;
    height:18px!important;
    min-width:18px!important;
  }
  body.employee-space .main,
  body.employee-space main.main{
    margin-left:0!important;
    width:100%!important;
    max-width:100%!important;
    padding:96px 35px 35px!important;
  }
}

/* Catégorie Tchat GPT */
.chatgpt-card{max-width:1100px}.chatgpt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.chatgpt-head h2{margin:0 0 8px}.chatgpt-head p{margin:0;color:#d2d8e8}.chatgpt-presets{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}.chatgpt-label{display:block;font-weight:800;margin-bottom:8px}.chatgpt-textarea{width:100%;min-height:260px;resize:vertical;padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.12);background:#0d1728;color:#fff;line-height:1.55}.chatgpt-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.chatgpt-status{min-height:22px;color:#9ed8ff;font-weight:700}.chatgpt-help-grid{margin-top:22px}@media(max-width:800px){.chatgpt-head{display:block}.chatgpt-head .btn{margin-top:14px}.chatgpt-actions button,.chatgpt-presets button{width:100%}}

/* IA Groq intégrée SARL MCB */
.ia-app-card{max-width:1200px}.ia-app-head{align-items:center}.ia-badge{display:inline-flex;align-items:center;justify-content:center;background:#16a34a;color:#fff;font-weight:900;border-radius:999px;padding:12px 18px;white-space:nowrap}.ia-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}.ia-input-panel{min-width:0}.ia-chat-panel{min-height:420px;background:#071a36;border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:16px;display:flex;flex-direction:column}.ia-messages{overflow:auto;display:flex;flex-direction:column;gap:12px;max-height:520px;padding-right:4px}.ia-message{padding:14px 16px;border-radius:16px;line-height:1.55;white-space:normal;word-break:break-word}.ia-message-assistant{align-self:flex-start;background:#10294f;color:#fff;border:1px solid rgba(255,255,255,.08);max-width:94%}.ia-message-user{align-self:flex-end;background:#1677ff;color:#fff;max-width:88%}#iaSend:disabled{opacity:.65;cursor:wait}@media(max-width:900px){.ia-layout{grid-template-columns:1fr}.ia-badge{margin-top:12px}.ia-chat-panel{min-height:300px}.ia-messages{max-height:420px}.chatgpt-actions button{width:100%}}


/* Correctif demandé - Tchat GPT : suppression du point vert et des 3 bulles vides du bas */
.ia-badge{display:none!important;}
.chatgpt-help-grid{display:none!important;}

/* v125 - Correction visibilité chiffres du bloc Véhicules accueil
   Le compteur était posé sur un fond clair/blanc dans le thème sombre : contraste insuffisant.
   Override final pour éviter les conflits avec les anciennes règles du fichier. */
.vehicle-home-widget .vehicle-home-cat strong,
.home-v60-widget.vehicle-home-widget .vehicle-home-cat strong{
  display:grid !important;
  place-items:center !important;
  min-width:44px !important;
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  border-radius:14px !important;
  background:linear-gradient(135deg,#0d6efd,#60a5fa) !important;
  color:#ffffff !important;
  font-size:24px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-align:center !important;
  border:1px solid rgba(255,255,255,.30) !important;
  box-shadow:0 10px 24px rgba(13,110,253,.30), inset 0 1px 0 rgba(255,255,255,.25) !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35) !important;
}
.vehicle-home-widget .vehicle-home-cat span,
.home-v60-widget.vehicle-home-widget .vehicle-home-cat span{
  color:#ffffff !important;
  font-weight:900 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.35) !important;
}

/* ===== MCB Mail - avatars / logos expéditeurs ===== */
.mail-row{
  grid-template-columns:34px 44px 1fr!important;
  gap:12px!important;
  align-items:center!important;
}
.mail-row>a{
  min-width:0!important;
}
.mail-avatar{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,#0b74ff,#24b4ff)!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:12px!important;
  letter-spacing:.3px!important;
  border:1px solid rgba(148,190,255,.35)!important;
  box-shadow:0 8px 22px rgba(0,0,0,.25)!important;
}
.mail-avatar img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  background:#fff!important;
  border-radius:inherit!important;
  position:relative!important;
  z-index:2!important;
}
.mail-avatar .mail-avatar-favicon{
  padding:7px!important;
  object-fit:contain!important;
}
.mail-avatar-initials{
  position:absolute!important;
  inset:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  z-index:1!important;
}
.mail-avatar.no-img .mail-avatar-initials,
.mail-avatar:not(:has(img)) .mail-avatar-initials{
  position:static!important;
}
.mail-read-header{
  display:flex!important;
  gap:14px!important;
  align-items:flex-start!important;
  padding:14px!important;
  margin:6px 0 16px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:16px!important;
  background:rgba(13,23,40,.55)!important;
}
.mail-read-header .mail-avatar{
  width:52px!important;
  height:52px!important;
  min-width:52px!important;
  font-size:15px!important;
}
.mail-read-header h2{margin-top:0!important;}
.mail-read-header p{margin:5px 0!important;color:#dbeafe!important;}
@media(max-width:1000px){
  .mail-row{grid-template-columns:30px 40px 1fr!important;}
  .mail-row>a{grid-template-columns:1fr!important;}
}

/* Correction Signature mail : upload logo + aperçu lisible */
.settings-v70-file{
  display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px dashed rgba(148,163,184,.45);border-radius:16px;background:rgba(15,23,42,.35);color:#e5eefc;font-weight:800;
}
.settings-v70-file input[type=file]{
  width:100%;padding:10px;border-radius:12px;background:#071426;border:1px solid rgba(148,163,184,.35);color:#e5eefc;
}
.settings-v70-signature .signature-preview-light{
  background:#f8fafc!important;color:#0f172a!important;border:1px solid #dbe7ff!important;border-radius:16px!important;padding:14px!important;grid-column:1/-1;
}

/* Annuaire fournisseurs pro + correction scroll sidebar */
.sidebar, aside.sidebar{overflow-y:auto!important;overflow-x:hidden!important;max-height:100vh!important;scrollbar-width:thin!important;}
.sidebar nav{padding-bottom:28px!important;}
.sidebar nav a{display:flex!important;align-items:center!important;gap:12px!important;line-height:1.05!important;}
.annuaire-page{display:grid;gap:18px!important;}
.annuaire-hero{display:flex;justify-content:space-between;gap:18px;align-items:stretch;background:linear-gradient(135deg,rgba(9,20,38,.94),rgba(9,32,58,.78));border:1px solid rgba(148,190,255,.16);border-radius:24px;padding:26px;box-shadow:0 18px 55px rgba(0,0,0,.32)}
.annuaire-kicker{display:inline-flex;color:#9ed8ff;font-weight:900;letter-spacing:.04em;text-transform:uppercase;font-size:12px;margin-bottom:8px}.annuaire-hero h1{margin:0 0 8px;font-size:32px}.annuaire-hero p{margin:0;color:#cbd5e1;max-width:820px;line-height:1.55}.annuaire-stats{display:grid;grid-template-columns:repeat(3,minmax(105px,1fr));gap:10px;min-width:360px}.annuaire-stats div{background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:16px;text-align:center}.annuaire-stats strong{display:block;font-size:28px;color:#fff}.annuaire-stats span{color:#aebbd1;font-size:13px;font-weight:800}.annuaire-category-strip{display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px}.annuaire-category-strip a{white-space:nowrap;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.08);color:#dbeafe;font-weight:800}.annuaire-category-strip a.active,.annuaire-category-strip a:hover{background:rgba(0,117,255,.22);border-color:rgba(90,170,255,.45)}.annuaire-category-strip b{color:#9ed8ff}.annuaire-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start}.annuaire-main-card,.annuaire-form-card{padding:20px!important}.annuaire-search{display:grid;grid-template-columns:1fr 260px auto;gap:10px;margin-bottom:18px}.annuaire-search input,.annuaire-search select,.annuaire-form input,.annuaire-form select,.annuaire-form textarea,.annuaire-mini-form input,.annuaire-mini-form select,.annuaire-mini-form textarea{width:100%;min-height:44px;border-radius:14px;border:1px solid rgba(255,255,255,.11);background:#0a1526;color:#fff;padding:11px 12px}.annuaire-form textarea,.annuaire-mini-form textarea{min-height:86px;resize:vertical}.annuaire-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:14px}.supplier-card{display:flex;flex-direction:column;gap:12px;background:rgba(255,255,255,.045);border:1px solid rgba(148,190,255,.13);border-radius:20px;padding:16px;min-height:230px}.supplier-top{display:flex;align-items:center;gap:12px}.supplier-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:rgba(0,117,255,.18);border:1px solid rgba(90,170,255,.28);font-weight:950;color:#9ed8ff}.supplier-top h3{margin:0;font-size:18px}.supplier-top span{display:inline-flex;margin-top:4px;color:#9ed8ff;font-size:12px;font-weight:900}.supplier-lines{display:grid;gap:7px;color:#dbeafe}.supplier-lines a{color:#dbeafe}.supplier-lines p{margin:4px 0 0;color:#aebbd1;line-height:1.45}.supplier-edit{margin-top:auto;border-top:1px solid rgba(255,255,255,.08);padding-top:10px}.supplier-edit summary{cursor:pointer;color:#9ed8ff;font-weight:900}.annuaire-mini-form,.annuaire-form{display:grid;gap:9px;margin-top:10px}.annuaire-form-card{position:sticky;top:92px}.annuaire-form-card h2{margin-top:0}.annuaire-form-card p{color:#cbd5e1}.annuaire-mini-form + form{margin-top:8px}.annuaire-mini-form button,.annuaire-form button,.annuaire-search button{min-height:44px}
@media(max-width:1100px){.annuaire-hero{display:grid}.annuaire-stats{min-width:0}.annuaire-layout{grid-template-columns:1fr}.annuaire-form-card{position:static}.annuaire-search{grid-template-columns:1fr}}
@media(max-width:760px){.sidebar,aside.sidebar{max-height:72vh!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.sidebar nav{max-height:none!important}.annuaire-hero{padding:18px}.annuaire-hero h1{font-size:25px}.annuaire-stats{grid-template-columns:1fr 1fr 1fr}.annuaire-stats div{padding:12px 8px}.annuaire-stats strong{font-size:22px}.annuaire-grid{grid-template-columns:1fr}.annuaire-page{gap:14px}.annuaire-main-card,.annuaire-form-card{padding:15px!important}}

/* Correctif annuaire v2 : scroll propre + page lecture seule complète */
body.admin-space > aside.sidebar,
body.admin-space .sidebar{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  max-height:100vh!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
body.admin-space > aside.sidebar::-webkit-scrollbar,
body.admin-space .sidebar::-webkit-scrollbar,
body.admin-space .sidebar nav::-webkit-scrollbar,
.clean-scroll-x::-webkit-scrollbar{width:0!important;height:0!important;display:none!important;}
body.admin-space .sidebar nav{padding-bottom:90px!important;}
.clean-scroll-x{scrollbar-width:none!important;-ms-overflow-style:none!important;-webkit-overflow-scrolling:touch;}
.annuaire-readonly .annuaire-main-card{padding:22px!important;}
.annuaire-readonly .annuaire-layout{display:block!important;}
.annuaire-readonly .annuaire-grid-pro{grid-template-columns:repeat(auto-fill,minmax(330px,1fr))!important;gap:16px!important;}
.annuaire-readonly .supplier-card-pro{min-height:255px!important;background:linear-gradient(180deg,rgba(15,23,42,.90),rgba(8,13,24,.96))!important;border:1px solid rgba(125,185,255,.18)!important;box-shadow:0 14px 34px rgba(0,0,0,.22)!important;}
.annuaire-readonly .supplier-card-pro:hover{border-color:rgba(96,165,250,.48)!important;transform:translateY(-1px);transition:.16s ease;}
.annuaire-readonly .supplier-action{display:flex!important;align-items:flex-start!important;gap:8px!important;padding:8px 10px!important;border-radius:12px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.07)!important;line-height:1.25!important;}
.annuaire-readonly .supplier-action:hover{background:rgba(59,130,246,.16)!important;border-color:rgba(96,165,250,.3)!important;}
.annuaire-readonly .supplier-lines p{padding:10px 12px!important;border-radius:14px!important;background:rgba(148,163,184,.07)!important;color:#cbd5e1!important;}
@media(max-width:900px){
  body.admin-space > aside.sidebar,
  body.admin-space .sidebar{max-height:none!important;overflow:visible!important;}
  body.admin-space .sidebar nav{padding-bottom:8px!important;}
  .annuaire-readonly .annuaire-grid-pro{grid-template-columns:1fr!important;}
}


/* Correctif Messagerie MCB : bouton IA correction orthographe / mise en forme */
.mail-ai-compose-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}.mail-ai-compose-head label{margin:0!important}.mail-ai-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.mail-ai-fix-btn,.mail-ai-undo-btn{display:inline-flex!important;align-items:center;gap:8px;white-space:nowrap}.mail-ai-fix-btn svg{width:17px;height:17px}.mail-ai-status{min-height:22px;margin:8px 0 4px;font-size:13px;font-weight:800;color:#64748b}.mail-ai-status.loading{color:#2563eb}.mail-ai-status.success{color:#15803d}.mail-ai-status.error{color:#b91c1c}.mail-ai-help{display:block;margin:0 0 12px;color:#64748b;line-height:1.45}.form textarea#mailBodyInput{min-height:260px;line-height:1.55}@media(max-width:720px){.mail-ai-compose-head{align-items:stretch}.mail-ai-actions{width:100%}.mail-ai-actions button{width:100%;justify-content:center}.form textarea#mailBodyInput{min-height:300px}}

/* Correctif Messagerie MCB - IA + pièces jointes cumulées */
.mail-attachment-list{margin:10px 0 16px;display:grid;gap:8px}
.mail-attachment-list small{color:#64748b;font-weight:700}
.mail-attachment-item{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(148,163,184,.35);border-radius:14px;background:rgba(255,255,255,.78)}
.mail-attachment-item span{font-weight:800;color:#0f172a;word-break:break-word}
.mail-attachment-item button{padding:7px 10px;min-height:auto;white-space:nowrap}
.server-file-pagination{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.server-file-pagination .active-page{outline:2px solid rgba(37,99,235,.35)}
.server-file-count{font-size:13px;font-weight:800;color:#cbd5e1;margin-right:4px}
@media(max-width:720px){.mail-attachment-item{align-items:stretch;flex-direction:column}.mail-attachment-item button{width:100%;justify-content:center}}

/* V96 - Messagerie MCB : corbeille, dates FR, dossiers mobile propres */
.mail-row{grid-template-columns:28px 44px minmax(0,1fr) 110px!important;}
.mail-row > a{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(160px,.8fr) 210px;gap:15px;align-items:center;min-width:0;}
.mail-row > a b,.mail-row > a span,.mail-row > a small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.mail-row-trash{margin:0;display:flex;justify-content:flex-end;}
.mail-row-trash .small{padding:8px 10px;border-radius:10px;font-size:12px;}
.bulk-actions .danger{background:#b42323;}
@media(max-width:900px){
  .mail-side{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;white-space:normal!important;}
  .mail-side a,.mail-side .compose,.mail-backup-sidebar button{width:100%!important;margin:0!important;justify-content:flex-start!important;text-align:left!important;white-space:normal!important;min-height:46px!important;line-height:1.15!important;}
  .mail-side hr{display:none!important;}
  .mail-backup-sidebar{grid-column:1/-1;margin:0!important;}
  .mail-row{grid-template-columns:28px 38px minmax(0,1fr)!important;align-items:start!important;gap:10px!important;padding:12px 8px!important;}
  .mail-row > a{display:flex!important;flex-direction:column!important;gap:4px!important;}
  .mail-row > a b,.mail-row > a span,.mail-row > a small{white-space:normal!important;}
  .mail-row-trash{grid-column:1/-1;justify-content:flex-end;margin-top:6px;}
  .mail-row-trash .small{width:auto!important;}
}
@media(max-width:520px){.mail-side{grid-template-columns:1fr!important;}}

/* Correctif Messagerie MCB : épingle + dates FR */
.mail-row.pinned{background:linear-gradient(90deg,rgba(0,117,255,.20),rgba(14,18,25,.88));border-left:3px solid #2f8cff;}
.mail-pin-label{display:inline-flex;align-items:center;margin-right:8px;padding:3px 7px;border-radius:999px;background:rgba(47,140,255,.22);color:#b9ddff;font-size:11px;font-weight:800;vertical-align:middle;}
.mail-row-pin{display:flex;justify-content:center;align-items:center;}
.mail-row-pin button{width:34px;height:34px;padding:0;border-radius:10px;background:#18324e;border:1px solid rgba(255,255,255,.10);}
.mail-row-pin button.is-pinned{background:#0b5ed7;box-shadow:0 0 0 1px rgba(255,255,255,.16) inset;}
.mail-row:has(.mail-row-pin){grid-template-columns:28px 44px 40px minmax(0,1fr) 110px!important;}
.mail-row:has(.mail-row-pin)>a{grid-template-columns:minmax(0,1.2fr) minmax(160px,.8fr) 210px!important;}
@media(max-width:900px){
  .mail-row:has(.mail-row-pin){grid-template-columns:28px 38px 36px minmax(0,1fr)!important;}
  .mail-row:has(.mail-row-pin)>a{grid-column:4;display:flex!important;flex-direction:column!important;gap:4px!important;}
  .mail-row-pin button{width:32px;height:32px;}
}

/* =========================================================
   Agenda chantiers / RDV - dates FR + impression premium MCB
   ========================================================= */
.agenda-print-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;margin:0 0 22px!important;padding:18px 20px!important;border:1px solid rgba(148,190,255,.16)!important;background:linear-gradient(135deg,rgba(7,18,34,.92),rgba(11,31,58,.84))!important}
.agenda-print-toolbar h2{margin:0 0 5px!important;color:#fff!important;font-size:20px!important}
.agenda-print-toolbar p{margin:0!important;color:#b7c7dd!important;font-weight:700!important}
.agenda-print-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.agenda-print-only{display:none!important}
@media(max-width:760px){.agenda-print-toolbar{display:grid!important;grid-template-columns:1fr!important}.agenda-print-actions{display:grid!important;grid-template-columns:1fr!important}.agenda-print-actions .btn{width:100%!important}}

@media print{
    @page{size:A4 portrait;margin:12mm}
    html,body{background:#fff!important;color:#111827!important;font-family:Arial,Helvetica,sans-serif!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
    body *{visibility:visible!important}
    .no-print,.agenda-print-toolbar,.agenda-sync-card,.agenda-new-card,.agenda-event-actions,.agenda-edit-form{display:none!important}
    html[data-agenda-print="month"] .agenda-print-month,
    html[data-agenda-print="month"] .agenda-print-month *,
    html[data-agenda-print="week"] .agenda-print-week,
    html[data-agenda-print="week"] .agenda-print-week *,
    html[data-agenda-print="list"] .agenda-print-list,
    html[data-agenda-print="list"] .agenda-print-list *{visibility:visible!important}
    html[data-agenda-print="week"] .agenda-print-week{display:block!important}
    html[data-agenda-print="month"] .agenda-print-month,
    html[data-agenda-print="week"] .agenda-print-week,
    html[data-agenda-print="list"] .agenda-print-list{position:absolute!important;left:0!important;top:0!important;width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;background:#fff!important;color:#111827!important}
    .agenda-calendar-header{border-bottom:3px solid #0b5ea8!important;padding:0 0 12px!important;margin:0 0 14px!important;background:#fff!important;color:#111827!important}
    .agenda-calendar-header h2,.agenda-calendar-nav strong,.agenda-print-cover h2{color:#0f172a!important;background:transparent!important;border:0!important;text-align:left!important;padding:0!important}
    .agenda-calendar-header p,.agenda-print-cover p{color:#334155!important}
    .agenda-calendar-nav a{display:none!important}
    .agenda-calendar-weekdays span{background:#0b5ea8!important;color:#fff!important;border:0!important;border-radius:6px!important;padding:7px 5px!important}
    .agenda-calendar-grid,.agenda-calendar-weekdays{gap:5px!important}
    .agenda-calendar-day{background:#fff!important;border:1px solid #cbd5e1!important;border-radius:8px!important;box-shadow:none!important;min-height:92px!important;color:#111827!important;padding:7px!important;break-inside:avoid!important;page-break-inside:avoid!important}
    .agenda-calendar-day.is-muted{opacity:.38!important}
    .agenda-calendar-day.is-today{border:2px solid #0b5ea8!important;box-shadow:none!important}
    .agenda-calendar-daynum{background:#eaf4ff!important;color:#0b5ea8!important;width:24px!important;height:24px!important;border-radius:6px!important;font-size:12px!important}
    .agenda-calendar-event{background:#f1f7ff!important;border:1px solid #b9d9ff!important;color:#0f172a!important;border-radius:6px!important;padding:5px!important;margin-top:4px!important;text-decoration:none!important}
    .agenda-calendar-event b{color:#0b5ea8!important}
    .agenda-calendar-event span{color:#0f172a!important;white-space:normal!important;font-size:10px!important}
    .agenda-calendar-more,.agenda-calendar-empty{color:#64748b!important}
    .agenda-planning-grid{display:block!important}
    .agenda-planning-card{box-shadow:none!important;border:0!important;background:#fff!important;color:#111827!important;padding:0!important}
    .agenda-planning-card h2{color:#0f172a!important;border-bottom:3px solid #0b5ea8!important;padding-bottom:10px!important}
    .agenda-event-card,.agenda-print-event{background:#fff!important;border:1px solid #cbd5e1!important;border-left:5px solid #0b5ea8!important;border-radius:10px!important;padding:12px!important;margin:0 0 10px!important;box-shadow:none!important;color:#111827!important;break-inside:avoid!important;page-break-inside:avoid!important}
    .agenda-event-head b,.agenda-print-event strong{color:#0f172a!important;font-size:15px!important;display:block!important;margin-bottom:4px!important}
    .agenda-event-head small,.agenda-print-event span{color:#0b5ea8!important;font-weight:700!important;display:block!important;margin-bottom:5px!important}
    .agenda-event-details span,.agenda-event-details a,.agenda-event-note,.agenda-print-event em,.agenda-print-event small,.agenda-print-event p{color:#334155!important}
    .agenda-event-note,.agenda-print-event p{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:8px!important;padding:8px!important;margin-top:8px!important}
    .agenda-print-cover{display:flex!important;align-items:center!important;justify-content:space-between!important;border-bottom:3px solid #0b5ea8!important;margin-bottom:14px!important;padding-bottom:12px!important}
}

/* =========================================================
   Correctif impression Agenda MCB - paysage + rendu propre
   ========================================================= */
.agenda-print-brand{display:none;}
@media print{
  @page{size:A4 landscape;margin:8mm!important;}
  html[data-agenda-print],html[data-agenda-print] body{
    width:100%!important;min-height:0!important;margin:0!important;padding:0!important;
    background:#fff!important;color:#111827!important;font-family:Arial,Helvetica,sans-serif!important;
    -webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;
  }
  html[data-agenda-print] body::before,html[data-agenda-print] body::after{display:none!important;content:none!important;}
  html[data-agenda-print] .main,html[data-agenda-print] main,html[data-agenda-print] .content,html[data-agenda-print] .app,html[data-agenda-print] .container{
    margin:0!important;padding:0!important;width:100%!important;max-width:none!important;background:#fff!important;box-shadow:none!important;border:0!important;
  }
  html[data-agenda-print] body *{visibility:visible!important;}
  html[data-agenda-print] .topbar,html[data-agenda-print] .sidebar,html[data-agenda-print] nav,html[data-agenda-print] header,
  html[data-agenda-print] .agenda-print-toolbar,html[data-agenda-print] .agenda-sync-card,html[data-agenda-print] .agenda-new-card,
  html[data-agenda-print] .agenda-event-actions,html[data-agenda-print] .agenda-edit-form,html[data-agenda-print] .no-print{
    display:none!important;visibility:visible!important;
  }
  html[data-agenda-print="month"] .agenda-print-month,
  html[data-agenda-print="week"] .agenda-print-week,
  html[data-agenda-print="list"] .agenda-print-list{
    display:block!important;visibility:visible!important;position:absolute!important;left:0!important;top:0!important;
    width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
    background:#fff!important;color:#111827!important;box-shadow:none!important;overflow:visible!important;
  }
  html[data-agenda-print="month"] .agenda-print-month *,
  html[data-agenda-print="week"] .agenda-print-week *,
  html[data-agenda-print="list"] .agenda-print-list *{visibility:visible!important;}
  html[data-agenda-print] .agenda-print-brand{
    display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;
    padding:10px 14px!important;margin:0 0 10px!important;border-radius:12px!important;
    background:linear-gradient(135deg,#071426,#0b5ea8)!important;color:#fff!important;box-shadow:none!important;page-break-after:avoid!important;
  }
  html[data-agenda-print] .agenda-print-brand-left{display:flex!important;align-items:center!important;gap:12px!important;min-width:0!important;}
  html[data-agenda-print] .agenda-print-brand img{width:44px!important;height:44px!important;object-fit:contain!important;background:#fff!important;border-radius:10px!important;padding:5px!important;}
  html[data-agenda-print] .agenda-print-brand strong{display:block!important;color:#fff!important;font-size:20px!important;line-height:1!important;}
  html[data-agenda-print] .agenda-print-brand span{display:block!important;color:#dbeafe!important;font-size:11px!important;font-weight:700!important;margin-top:4px!important;}
  html[data-agenda-print] .agenda-print-brand-right{font-weight:900!important;color:#fff!important;text-transform:uppercase!important;font-size:12px!important;letter-spacing:.06em!important;}
  html[data-agenda-print] .agenda-calendar-header,html[data-agenda-print] .agenda-print-cover{
    display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:12px!important;
    margin:0 0 8px!important;padding:0 0 8px!important;border:0!important;border-bottom:2px solid #0b5ea8!important;background:#fff!important;
  }
  html[data-agenda-print] .agenda-calendar-header h2,html[data-agenda-print] .agenda-print-cover h2{
    margin:0 0 3px!important;padding:0!important;color:#0f172a!important;font-size:18px!important;line-height:1.1!important;background:transparent!important;border:0!important;
  }
  html[data-agenda-print] .agenda-calendar-header p,html[data-agenda-print] .agenda-print-cover p{margin:0!important;color:#334155!important;font-size:11px!important;font-weight:700!important;}
  html[data-agenda-print] .agenda-calendar-nav{display:block!important;text-align:right!important;}
  html[data-agenda-print] .agenda-calendar-nav a{display:none!important;}
  html[data-agenda-print] .agenda-calendar-nav strong{display:block!important;min-width:0!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;color:#0b5ea8!important;font-size:17px!important;text-align:right!important;}
  html[data-agenda-print] .agenda-calendar-weekdays{
    display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:4px!important;margin:0 0 4px!important;
  }
  html[data-agenda-print] .agenda-calendar-weekdays span{
    background:#0b5ea8!important;color:#fff!important;border:0!important;border-radius:6px!important;padding:5px 4px!important;
    font-size:10px!important;font-weight:900!important;text-align:center!important;
  }
  html[data-agenda-print] .agenda-calendar-grid{display:grid!important;grid-template-columns:repeat(7,1fr)!important;gap:4px!important;}
  html[data-agenda-print] .agenda-calendar-day{
    min-height:66px!important;height:66px!important;padding:5px!important;overflow:hidden!important;break-inside:avoid!important;
    border:1px solid #cbd5e1!important;border-radius:7px!important;background:#fff!important;color:#111827!important;box-shadow:none!important;
  }
  html[data-agenda-print] .agenda-calendar-day.is-muted{opacity:.55!important;background:#f8fafc!important;}
  html[data-agenda-print] .agenda-calendar-day.is-today{border:2px solid #0b5ea8!important;}
  html[data-agenda-print] .agenda-calendar-daynum{
    width:auto!important;height:auto!important;display:inline-flex!important;min-width:20px!important;padding:2px 5px!important;margin:0 0 3px!important;
    border-radius:5px!important;background:#eaf4ff!important;color:#0b5ea8!important;font-size:10px!important;font-weight:900!important;
  }
  html[data-agenda-print] .agenda-calendar-empty{display:none!important;}
  html[data-agenda-print] .agenda-calendar-event{
    display:block!important;margin-top:2px!important;padding:2px 4px!important;border-radius:4px!important;background:#f1f7ff!important;border:1px solid #b9d9ff!important;color:#0f172a!important;text-decoration:none!important;line-height:1.05!important;
  }
  html[data-agenda-print] .agenda-calendar-event b{display:inline!important;color:#0b5ea8!important;font-size:8px!important;margin:0 3px 0 0!important;}
  html[data-agenda-print] .agenda-calendar-event span{display:inline!important;color:#0f172a!important;font-size:8px!important;font-weight:800!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  html[data-agenda-print] .agenda-calendar-more{font-size:8px!important;margin-top:2px!important;color:#64748b!important;}
  html[data-agenda-print="list"] .agenda-planning-grid{display:block!important;}
  html[data-agenda-print="list"] .agenda-planning-card{padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:#fff!important;}
  html[data-agenda-print="list"] .agenda-planning-card h2{font-size:18px!important;color:#0f172a!important;border-bottom:2px solid #0b5ea8!important;padding-bottom:8px!important;margin:0 0 10px!important;}
  html[data-agenda-print] .agenda-event-card,html[data-agenda-print] .agenda-print-event{
    background:#fff!important;border:1px solid #cbd5e1!important;border-left:4px solid #0b5ea8!important;border-radius:8px!important;
    padding:8px 10px!important;margin:0 0 7px!important;box-shadow:none!important;color:#111827!important;break-inside:avoid!important;page-break-inside:avoid!important;
  }
  html[data-agenda-print] .agenda-event-head b,html[data-agenda-print] .agenda-print-event strong{color:#0f172a!important;font-size:12px!important;margin:0 0 3px!important;}
  html[data-agenda-print] .agenda-event-head small,html[data-agenda-print] .agenda-print-event span{color:#0b5ea8!important;font-size:10px!important;font-weight:800!important;}
  html[data-agenda-print] .agenda-event-details{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-top:5px!important;}
  html[data-agenda-print] .agenda-event-details span,html[data-agenda-print] .agenda-event-details a,html[data-agenda-print] .agenda-event-note,
  html[data-agenda-print] .agenda-print-event em,html[data-agenda-print] .agenda-print-event small,html[data-agenda-print] .agenda-print-event p{color:#334155!important;font-size:10px!important;}
  html[data-agenda-print] .agenda-event-note,html[data-agenda-print] .agenda-print-event p{background:#f8fafc!important;border:1px solid #e2e8f0!important;border-radius:6px!important;padding:6px!important;margin-top:5px!important;}
}

/* ===== Correctif profil utilisateur - menu au premier plan + page profil ===== */
.top-account{z-index:250000!important;overflow:visible!important;isolation:isolate!important;}
.top-account details[open]{z-index:250010!important;}
.top-account details[open] > summary{position:relative!important;z-index:250020!important;}
.notif-panel,.account-panel{z-index:250030!important;}
.account-panel{transform:none!important;}
.account-panel a{white-space:normal!important;}
.account-avatar.has-photo{overflow:hidden!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.35)!important;}
.account-avatar.has-photo img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;border-radius:inherit!important;}
.profile-page-card{max-width:1180px!important;margin:0 auto!important;overflow:visible!important;}
.profile-grid{display:grid!important;grid-template-columns:repeat(2,minmax(280px,1fr))!important;gap:18px!important;align-items:start!important;}
.profile-panel{display:grid!important;gap:14px!important;padding:18px!important;border-radius:22px!important;background:rgba(7,17,32,.72)!important;border:1px solid rgba(148,190,255,.18)!important;}
.profile-panel h2{margin:0 0 6px!important;color:#fff!important;font-size:20px!important;}
.profile-panel label{display:grid!important;gap:7px!important;color:#dbeafe!important;font-weight:900!important;}
.profile-panel input,.profile-panel textarea{width:100%!important;border:1px solid rgba(148,190,255,.22)!important;background:#0d1728!important;color:#fff!important;border-radius:14px!important;padding:13px 14px!important;font-weight:700!important;outline:none!important;}
.profile-panel textarea{resize:vertical!important;min-height:94px!important;}
.profile-avatar-edit{display:flex!important;align-items:center!important;gap:14px!important;flex-wrap:wrap!important;margin-bottom:4px!important;}
.profile-avatar-edit .account-avatar.large{width:74px!important;height:74px!important;font-size:22px!important;}
@media(max-width:900px){
  .top-account{z-index:250000!important;}
  body.employee-space .top-account{z-index:250000!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel,
  .notif-panel,.account-panel{position:fixed!important;top:72px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;z-index:250030!important;max-height:calc(100vh - 95px)!important;overflow:auto!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel{top:calc(126px + env(safe-area-inset-top))!important;}
  .profile-grid{grid-template-columns:1fr!important;}
  .profile-page-card{padding:16px!important;}
}

/* ===== Correctif approfondi profil rôles non-admin : panneau toujours au-dessus ===== */
body.employee-space .top-account,
body.admin-space .top-account,
.top-account{
  position:relative!important;
  z-index:2147483000!important;
  overflow:visible!important;
  isolation:auto!important;
  contain:none!important;
}
body.employee-space .top-account .account-menu,
body.employee-space .top-account .notif-menu,
body.admin-space .top-account .account-menu,
body.admin-space .top-account .notif-menu{
  position:relative!important;
  z-index:2147483001!important;
  overflow:visible!important;
  contain:none!important;
}
body.employee-space .top-account .account-menu[open],
body.employee-space .top-account .notif-menu[open],
body.admin-space .top-account .account-menu[open],
body.admin-space .top-account .notif-menu[open]{
  z-index:2147483200!important;
}
body.employee-space .employee-top-nav,
body.employee-space .clean-topbar,
body.employee-space .top-quickbar,
body.employee-space .main,
body.employee-space .content,
body.employee-space .card{
  z-index:auto!important;
  contain:none!important;
}
body.employee-space .account-panel,
body.employee-space .notif-panel,
body.admin-space .account-panel,
body.admin-space .notif-panel,
.account-panel,
.notif-panel{
  z-index:2147483300!important;
  isolation:auto!important;
  contain:none!important;
  box-shadow:0 24px 80px rgba(0,0,0,.62),0 0 0 1px rgba(148,190,255,.26)!important;
}
@media(min-width:901px){
  body.employee-space .account-menu[open] .account-panel,
  body.employee-space .notif-menu[open] .notif-panel{
    position:fixed!important;
    top:86px!important;
    right:24px!important;
    left:auto!important;
    width:min(390px,calc(100vw - 48px))!important;
    max-width:min(390px,calc(100vw - 48px))!important;
    max-height:calc(100vh - 110px)!important;
    overflow:auto!important;
    transform:none!important;
  }
}
@media(max-width:900px){
  body.employee-space .account-menu[open] .account-panel,
  body.employee-space .notif-menu[open] .notif-panel,
  body.admin-space .account-menu[open] .account-panel,
  body.admin-space .notif-menu[open] .notif-panel{
    position:fixed!important;
    top:calc(76px + env(safe-area-inset-top))!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    max-width:none!important;
    max-height:calc(100vh - 96px)!important;
    overflow:auto!important;
    transform:none!important;
  }
}


/* ===== Correctif final position menu profil : ancré sous le bouton utilisateur ===== */
@media (min-width:901px){
  body.employee-space .account-menu[open] .account-panel,
  body.admin-space .account-menu[open] .account-panel,
  body:not(.employee-space):not(.admin-space) .account-menu[open] .account-panel,
  body.employee-space .notif-menu[open] .notif-panel,
  body.admin-space .notif-menu[open] .notif-panel,
  body:not(.employee-space):not(.admin-space) .notif-menu[open] .notif-panel{
    position:fixed!important;
    width:min(390px,calc(100vw - 24px))!important;
    max-width:min(390px,calc(100vw - 24px))!important;
    max-height:calc(100vh - 100px)!important;
    overflow:auto!important;
    right:auto!important;
    bottom:auto!important;
    transform:none!important;
    z-index:2147483600!important;
  }
}

/* v120 - Correction approfondie header admin : profil fixe à droite comme avant */
@media (min-width: 901px){
  body:not(.employee-space) .top-account,
  body.admin-space .top-account{
    position:fixed!important;
    top:0!important;
    right:0!important;
    left:auto!important;
    bottom:auto!important;
    width:330px!important;
    max-width:330px!important;
    height:58px!important;
    min-height:58px!important;
    margin:0!important;
    padding:0 22px 0 10px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(255,255,255,.10)!important;
    border-left:1px solid rgba(255,255,255,.06)!important;
    border-radius:0!important;
    box-shadow:none!important;
    overflow:visible!important;
    z-index:20000!important;
  }
  body:not(.employee-space) .clean-topbar,
  body:not(.employee-space) .top-quickbar,
  body.admin-space .clean-topbar,
  body.admin-space .top-quickbar{
    position:fixed!important;
    top:0!important;
    left:230px!important;
    right:330px!important;
    width:auto!important;
    height:58px!important;
    min-height:58px!important;
    padding:0 24px!important;
    margin:0!important;
    z-index:19990!important;
    overflow:hidden!important;
  }
  body:not(.employee-space) .sidebar,
  body.admin-space .sidebar{
    position:fixed!important;
    top:0!important;
    left:0!important;
    bottom:0!important;
    width:230px!important;
    z-index:19995!important;
  }
  body:not(.employee-space) .main,
  body.admin-space .main{
    margin-left:230px!important;
    padding-top:88px!important;
  }
  body:not(.employee-space) .top-account details,
  body.admin-space .top-account details{
    position:relative!important;
    inset:auto!important;
    margin:0!important;
    min-width:0!important;
  }
  body:not(.employee-space) .top-account .notif-menu,
  body.admin-space .top-account .notif-menu{
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:42px!important;
    order:1!important;
  }
  body:not(.employee-space) .top-account .account-menu,
  body.admin-space .top-account .account-menu{
    width:auto!important;
    min-width:0!important;
    max-width:240px!important;
    order:2!important;
  }
  body:not(.employee-space) .top-account .account-summary,
  body.admin-space .top-account .account-summary{
    width:auto!important;
    max-width:230px!important;
    min-width:0!important;
    height:44px!important;
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    padding:4px 10px 4px 5px!important;
    overflow:hidden!important;
  }
  body:not(.employee-space) .top-account .account-name,
  body.admin-space .top-account .account-name{
    display:block!important;
    max-width:150px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body:not(.employee-space) .top-account .notif-panel,
  body:not(.employee-space) .top-account .account-panel,
  body.admin-space .top-account .notif-panel,
  body.admin-space .top-account .account-panel{
    position:fixed!important;
    top:68px!important;
    right:22px!important;
    left:auto!important;
    bottom:auto!important;
    width:330px!important;
    max-width:calc(100vw - 44px)!important;
    transform:none!important;
    z-index:30000!important;
  }
  body:not(.employee-space) .employee-top-nav,
  body.admin-space .employee-top-nav{
    display:none!important;
  }
}

/* VMCB-FIX-20260514 - Mobile: espacement icône profil / boutons header salarié
   Corrige le collage de l'icône profil avec le bouton Fichiers sans modifier le header admin desktop. */
@media (max-width:900px){
  body.employee-space .top-account{
    row-gap:18px !important;
    padding-bottom:20px !important;
    align-items:center !important;
  }
  body.employee-space .top-account .account-menu,
  body.employee-space .top-account .notif-menu{
    margin-bottom:4px !important;
  }
  body.employee-space .employee-top-nav{
    margin-top:4px !important;
    clear:both !important;
  }
  body.employee-space .employee-top-nav a{
    position:relative !important;
    z-index:1 !important;
  }
  body.employee-space .top-account .account-summary,
  body.employee-space .top-account .notif-btn{
    position:relative !important;
    z-index:2 !important;
  }
}
@media (max-width:390px){
  body.employee-space .top-account{
    row-gap:16px !important;
    padding-bottom:18px !important;
  }
}

/* Correctif profil salarié : convention collective, médecine du travail, DUERP */
.stock-form-grid .span-2{grid-column:span 2;}
.employee-legal-health-card{margin:18px 0!important;}
.employee-info-grid,.profile-employee-info-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important;}
.employee-info-grid>div{padding:16px!important;border:1px solid rgba(148,190,255,.18)!important;border-radius:18px!important;background:rgba(13,23,40,.55)!important;}
.employee-info-grid h2,.profile-info-card h2{margin:0 0 10px!important;color:#fff!important;font-size:18px!important;}
.employee-info-grid p,.profile-info-card p{margin:6px 0!important;color:#cbd5e1!important;line-height:1.45!important;}
.profile-employee-info-grid{margin-top:16px!important;}
.employee-row a{color:#93c5fd;font-weight:800;text-decoration:none;}
@media(max-width:900px){
  .stock-form-grid .span-2{grid-column:1/-1!important;}
  .employee-info-grid,.profile-employee-info-grid{grid-template-columns:1fr!important;}
  .employee-legal-health-card{margin:14px 0!important;}
}

/* Correctif Employés : le bloc convention/DUERP est réservé à l'espace salarié */
.employee-space-docs .employee-info-grid a.btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    margin-top: 8px;
}
.employee-row small { display:block; margin-top:4px; line-height:1.35; }
@media (max-width: 780px) {
    .employee-space-docs .employee-info-grid { grid-template-columns: 1fr; }
    .employee-space-docs .employee-info-grid a.btn { width: 100%; justify-content:center; }
}

/* Correctif approfondi mobile espace salarié : Convention / Médecine / DUERP */
.employee-space-docs,
.employee-space-docs *{
  box-sizing:border-box!important;
  min-width:0!important;
}
.employee-space-docs .employee-info-grid{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.employee-space-docs .employee-info-grid>div{
  max-width:100%!important;
  overflow:hidden!important;
}
.employee-space-docs .employee-info-grid p,
.employee-space-docs .employee-info-grid .muted,
.employee-space-docs .employee-info-grid strong{
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  max-width:100%!important;
}
.employee-space-docs .employee-info-grid a.btn,
.employee-space-docs .employee-info-grid .btn.secondary{
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.25!important;
  overflow:hidden!important;
}
.employee-space-docs .duerp-file-name{
  display:block!important;
  margin-top:4px!important;
  font-weight:800!important;
  color:#e5eefc!important;
  overflow-wrap:anywhere!important;
}
@media (max-width: 680px){
  .employee-legal-health-card.employee-space-docs{
    margin:18px 0!important;
    padding:14px!important;
    border-radius:22px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .employee-space-docs .employee-info-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:14px!important;
  }
  .employee-space-docs .employee-info-grid>div{
    width:100%!important;
    padding:16px!important;
    border-radius:18px!important;
  }
  .employee-space-docs .employee-info-grid h2{
    font-size:clamp(22px, 6vw, 30px)!important;
    line-height:1.15!important;
    margin-bottom:12px!important;
  }
  .employee-space-docs .employee-info-grid p{
    font-size:clamp(15px, 4.4vw, 18px)!important;
    line-height:1.35!important;
    margin:8px 0!important;
  }
  .employee-space-docs .employee-info-grid a.btn,
  .employee-space-docs .employee-info-grid .btn.secondary{
    width:100%!important;
    min-height:52px!important;
    padding:12px 14px!important;
    justify-content:center!important;
    align-items:center!important;
    gap:10px!important;
    font-size:clamp(14px, 4.2vw, 17px)!important;
    border-radius:16px!important;
  }
  .employee-space-docs .employee-info-grid svg{
    flex:0 0 auto!important;
    width:20px!important;
    height:20px!important;
  }
}
@media (max-width: 390px){
  .employee-legal-health-card.employee-space-docs{padding:12px!important;}
  .employee-space-docs .employee-info-grid>div{padding:14px!important;}
  .employee-space-docs .employee-info-grid a.btn,
  .employee-space-docs .employee-info-grid .btn.secondary{font-size:14px!important;padding:11px 12px!important;}
}
.mobile-only{display:none!important;}
@media (max-width:680px){.mobile-only{display:block!important;}}


/* === Correctif 2026-05-14 : Espace salarié - navigation Accueil et espacement === */
@media (min-width:901px){
  body.employee-space .top-account{
    height:64px!important;
    min-height:64px!important;
    padding:0 18px!important;
    gap:10px!important;
  }
  body.employee-space .top-account .employee-top-nav{
    order:3!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
  }
  body.employee-space .top-account .employee-top-nav .employee-nav-employees{order:1!important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-planning{order:2!important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-files{order:3!important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{order:99!important;}
  body.employee-space .main,
  body.employee-space main.main{
    padding-top:82px!important;
  }
}
@media (max-width:900px){
  body.employee-space .employee-top-nav .employee-nav-employees{order:1!important;}
  body.employee-space .employee-top-nav .employee-nav-planning{order:2!important;}
  body.employee-space .employee-top-nav .employee-nav-files{order:3!important;}
  body.employee-space .employee-top-nav .employee-nav-logout{order:99!important;}
  body.employee-space .main,
  body.employee-space main.main{
    padding-top:18px!important;
  }
}

/* Correctif espace salarié mobile : éviter les catégories en double sur employees.php.
   Le bandeau global (Accueil/Mon planning/Fichiers...) est masqué uniquement sur cette page mobile ;
   les onglets internes Accueil / Pointage / Congés / Planning restent visibles. */
@media (max-width: 760px){
  body.employee-space.page-employees-php .employee-top-nav{
    display:none!important;
  }
  body.employee-space.page-employees-php .main{
    padding-top:calc(92px + env(safe-area-inset-top))!important;
  }
  body.employee-space.page-employees-php .employee-category-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    margin:10px 0 18px!important;
    padding:10px!important;
    overflow:visible!important;
  }
  body.employee-space.page-employees-php .employee-category-tabs .employee-tab{
    width:100%!important;
    min-width:0!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 10px!important;
    font-size:14px!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.1!important;
  }
}

/* v112 - Correction approfondie du haut mobile salarié
   Répare le header cassé : plus de grand vide, profil visible, Accueil avant Mon planning,
   une seule navigation mobile propre. */
@media (max-width: 900px){
  body.employee-space{
    overflow-x:hidden !important;
    background:#061020 !important;
  }
  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar,
  body.employee-space > .sidebar{
    display:none !important;
  }
  body.employee-space .top-account{
    position:sticky !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-width:100vw !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:0 !important;
    padding:calc(8px + env(safe-area-inset-top)) 12px 8px !important;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:10px !important;
    overflow:visible !important;
    background:#071120 !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.18) !important;
    border-radius:0 !important;
    box-shadow:0 10px 26px rgba(0,0,0,.18) !important;
    z-index:3000 !important;
  }
  body.employee-space .top-account .employee-top-nav,
  body.employee-space .top-account .employee-only-nav{
    display:none !important;
  }
  body.employee-space .top-account .notif-menu{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    height:auto !important;
    margin:0 !important;
    order:1 !important;
  }
  body.employee-space .top-account .notif-btn{
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    max-width:46px !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
  }
  body.employee-space .top-account .account-menu{
    order:2 !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
    max-width:calc(100vw - 74px) !important;
    margin:0 !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:46px !important;
    min-height:46px !important;
    margin:0 !important;
    padding:5px 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:9px !important;
    overflow:hidden !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
  }
  body.employee-space .top-account .account-avatar{
    width:36px !important;
    height:36px !important;
    flex:0 0 36px !important;
    min-width:36px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    overflow:hidden !important;
  }
  body.employee-space .top-account .account-avatar img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:inherit !important;
  }
  body.employee-space .top-account .account-name{
    display:block !important;
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:none !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:#fff !important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:2px !important;
  }
  body.employee-space .mobile-category-nav{
    position:sticky !important;
    top:calc(62px + env(safe-area-inset-top)) !important;
    z-index:2500 !important;
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    width:100% !important;
    max-width:100vw !important;
    margin:0 !important;
    padding:10px 12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scrollbar-width:none !important;
    background:#071120 !important;
    border-bottom:1px solid rgba(148,190,255,.15) !important;
  }
  body.employee-space .mobile-category-nav::-webkit-scrollbar{display:none !important;}
  body.employee-space .mobile-category-nav a{
    flex:0 0 auto !important;
    min-width:118px !important;
    height:54px !important;
    padding:8px 12px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    border-radius:16px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.24) !important;
    color:#eaf4ff !important;
    text-decoration:none !important;
    font-weight:900 !important;
    line-height:1.05 !important;
    white-space:normal !important;
    text-align:center !important;
  }
  body.employee-space .mobile-category-nav a .ui-icon{
    width:20px !important;
    height:20px !important;
    flex:0 0 auto !important;
  }
  body.employee-space .mobile-category-nav a span{
    display:block !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .main{
    margin:0 !important;
    padding:22px 14px 105px !important;
    width:100% !important;
    max-width:100vw !important;
    overflow-x:hidden !important;
  }
  body.employee-space .page-head-actions{
    margin-top:0 !important;
  }
  body.employee-space .notif-panel,
  body.employee-space .account-panel{
    position:fixed !important;
    top:calc(62px + env(safe-area-inset-top)) !important;
    right:12px !important;
    left:auto !important;
    width:min(340px, calc(100vw - 24px)) !important;
    max-width:calc(100vw - 24px) !important;
    max-height:70vh !important;
    overflow:auto !important;
    z-index:5000 !important;
  }
}
@media (max-width: 420px){
  body.employee-space .top-account{padding-left:10px !important;padding-right:10px !important;gap:8px !important;}
  body.employee-space .top-account .notif-btn{width:44px !important;height:44px !important;min-width:44px !important;max-width:44px !important;}
  body.employee-space .top-account .account-summary{height:44px !important;min-height:44px !important;padding:4px 8px !important;}
  body.employee-space .top-account .account-avatar{width:34px !important;height:34px !important;flex-basis:34px !important;min-width:34px !important;}
  body.employee-space .top-account .account-name{font-size:14px !important;}
  body.employee-space .mobile-category-nav{top:calc(60px + env(safe-area-inset-top)) !important;padding:9px 10px !important;gap:8px !important;}
  body.employee-space .mobile-category-nav a{min-width:108px !important;height:52px !important;font-size:13px !important;}
}

/* === Correctif final mobile salarié - header + catégories alignés === */
@media (max-width: 900px){
  html,body{overflow-x:hidden!important;}
  body.employee-space{
    overflow-x:hidden!important;
  }
  body.employee-space .top-account{
    position:sticky!important;
    top:0!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:14px 14px 12px!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr)!important;
    grid-template-areas:
      "notif account"
      "nav nav"!important;
    align-items:center!important;
    gap:12px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(148,163,184,.18)!important;
    border-radius:0 0 22px 22px!important;
    z-index:5000!important;
    overflow:visible!important;
  }
  body.employee-space .top-account .notif-menu{
    grid-area:notif!important;
    order:unset!important;
    width:58px!important;
    min-width:58px!important;
    height:58px!important;
    margin:0!important;
  }
  body.employee-space .top-account .notif-btn{
    width:58px!important;
    height:58px!important;
    min-width:58px!important;
    border-radius:18px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0!important;
  }
  body.employee-space .top-account .account-menu{
    grid-area:account!important;
    order:unset!important;
    min-width:0!important;
    width:100%!important;
    margin:0!important;
    justify-self:stretch!important;
  }
  body.employee-space .top-account .account-summary{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:58px!important;
    min-height:58px!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    border-radius:20px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img,
  body.employee-space .top-account .account-summary .account-avatar{
    width:46px!important;
    height:46px!important;
    min-width:46px!important;
    flex:0 0 46px!important;
  }
  body.employee-space .top-account .account-name{
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    display:block!important;
    font-size:17px!important;
    line-height:1.1!important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav!important;
    order:unset!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0 0 4px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-snap-type:x proximity!important;
    scrollbar-width:none!important;
  }
  body.employee-space .top-account .employee-top-nav::-webkit-scrollbar{display:none!important;}
  body.employee-space .top-account .employee-top-nav a{
    flex:0 0 132px!important;
    width:132px!important;
    min-width:132px!important;
    max-width:132px!important;
    height:62px!important;
    min-height:62px!important;
    padding:8px 8px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    border-radius:18px!important;
    line-height:1.05!important;
    text-align:center!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    font-size:15px!important;
    font-weight:900!important;
  }
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.employee-space .top-account .employee-top-nav a .ui-icon svg{
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
    flex:0 0 22px!important;
  }
  body.employee-space .top-account .employee-top-nav a span{
    display:block!important;
    width:100%!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
  }
  body.employee-space .mobile-category-nav{display:none!important;}
  body.employee-space .main,
  body.employee-space main.main{
    margin-left:0!important;
    width:100%!important;
    max-width:100%!important;
    padding:34px 16px 32px!important;
    box-sizing:border-box!important;
  }
  body.employee-space .page-head-actions{margin-top:0!important;}
  body.employee-space .employee-category-tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:12px!important;
    overflow:hidden!important;
  }
  body.employee-space .employee-category-tabs .employee-tab,
  body.employee-space .employee-category-tabs a{
    width:100%!important;
    min-width:0!important;
    height:54px!important;
    min-height:54px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:8px 10px!important;
    box-sizing:border-box!important;
    text-align:center!important;
    white-space:normal!important;
    line-height:1.12!important;
    overflow:visible!important;
    font-size:15px!important;
  }
  body.employee-space .stock-stats.employee-stats{grid-template-columns:1fr!important;gap:16px!important;}
}

@media (max-width: 380px){
  body.employee-space .top-account{grid-template-columns:54px minmax(0,1fr)!important;padding:12px!important;gap:10px!important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:54px!important;min-width:54px!important;height:54px!important;}
  body.employee-space .top-account .account-summary{height:54px!important;min-height:54px!important;padding:0 10px!important;}
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img,
  body.employee-space .top-account .account-summary .account-avatar{width:42px!important;height:42px!important;min-width:42px!important;}
  body.employee-space .top-account .employee-top-nav a{flex-basis:122px!important;width:122px!important;min-width:122px!important;max-width:122px!important;font-size:14px!important;}
}


/* === Correctif ultra approfondi 2026-05-14 : mobile salarié + bouton notifications unique === */
.mcb-notif-enable{display:none!important;}
.mcb-real-push-enable{z-index:99999!important;}
body.employee-space .mcb-real-push-enable + .mcb-real-push-enable{display:none!important;}
@media (max-width:900px){
  body.employee-space{overflow-x:hidden!important;}
  body.employee-space .top-account{
    position:sticky!important;
    top:0!important;
    width:100%!important;
    max-width:100vw!important;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px!important;
    display:grid!important;
    grid-template-columns:56px minmax(0,1fr)!important;
    grid-template-areas:"notif account" "nav nav"!important;
    gap:10px!important;
    align-items:center!important;
    overflow:hidden!important;
    border-radius:0 0 22px 22px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(148,190,255,.18)!important;
  }
  body.employee-space .top-account .notif-menu{grid-area:notif!important;width:56px!important;height:56px!important;min-width:56px!important;margin:0!important;}
  body.employee-space .top-account .notif-btn{width:56px!important;height:56px!important;min-width:56px!important;border-radius:18px!important;margin:0!important;}
  body.employee-space .top-account .account-menu{grid-area:account!important;width:100%!important;min-width:0!important;margin:0!important;}
  body.employee-space .top-account .account-summary{
    width:100%!important;min-width:0!important;max-width:100%!important;height:56px!important;min-height:56px!important;
    padding:0 12px!important;gap:10px!important;overflow:hidden!important;border-radius:18px!important;
  }
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary img{width:44px!important;height:44px!important;min-width:44px!important;flex:0 0 44px!important;}
  body.employee-space .top-account .account-name{font-size:17px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-width:0!important;}
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;
    width:100%!important;max-width:100%!important;overflow:visible!important;padding:0!important;margin:0!important;
  }
  body.employee-space .top-account .employee-top-nav a{
    width:100%!important;min-width:0!important;max-width:100%!important;flex:unset!important;height:58px!important;min-height:58px!important;
    padding:7px 8px!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;
    gap:5px!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;text-align:center!important;line-height:1.05!important;font-size:15px!important;
  }
  body.employee-space .top-account .employee-top-nav a span{display:block!important;width:100%!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;line-height:1.05!important;}
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.employee-space .top-account .employee-top-nav a .ui-icon svg{width:21px!important;height:21px!important;min-width:21px!important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{grid-column:1 / -1!important;}
  body.employee-space .mobile-category-nav{display:none!important;}
  body.employee-space main.main,body.employee-space .main{padding:28px 14px 100px!important;margin-left:0!important;max-width:100vw!important;overflow-x:hidden!important;}
}
@media (min-width:901px){
  body.employee-space .mcb-real-push-enable{right:18px!important;bottom:18px!important;}
}

/* === FIX FINAL 2026-05-14 - espace salarié : header, espaces inutiles, notifications === */
body.employee-space{overflow-x:hidden!important;}
@media (min-width:901px){
  body.employee-space .top-account{
    position:fixed!important;top:0!important;left:0!important;right:0!important;width:100%!important;height:70px!important;min-height:70px!important;
    padding:10px 24px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;
    background:#071120!important;border-bottom:1px solid rgba(148,190,255,.18)!important;border-radius:0!important;z-index:10020!important;overflow:visible!important;
  }
  body.employee-space .top-account .notif-menu,body.employee-space .top-account .account-menu{position:relative!important;margin:0!important;flex:0 0 auto!important;}
  body.employee-space .top-account .employee-top-nav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;margin:0!important;padding:0!important;width:auto!important;max-width:none!important;overflow:visible!important;}
  body.employee-space .top-account .employee-top-nav a{width:auto!important;min-width:0!important;max-width:none!important;flex:0 0 auto!important;height:44px!important;min-height:44px!important;padding:0 18px!important;display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;border-radius:16px!important;white-space:nowrap!important;overflow:visible!important;font-size:15px!important;line-height:1!important;}
  body.employee-space .top-account .employee-top-nav a .ui-icon,body.employee-space .top-account .employee-top-nav a .ui-icon svg{width:18px!important;height:18px!important;min-width:18px!important;}
  body.employee-space main.main,body.employee-space .main{padding-top:96px!important;padding-left:26px!important;padding-right:26px!important;margin-left:0!important;max-width:100vw!important;}
  body.employee-space.page-employees-php main.main,body.employee-space.page-employees-php .main{padding-top:88px!important;}
  body.employee-space .page-head-actions{margin-top:0!important;margin-bottom:12px!important;}
  body.employee-space .page-head-actions h1{margin-top:0!important;}
  body.employee-space .mcb-real-push-enable{right:18px!important;bottom:18px!important;}
}
@media (max-width:900px){
  body.employee-space{padding:0!important;margin:0!important;min-width:0!important;background:#061020!important;}
  body.employee-space .top-account{
    position:sticky!important;top:0!important;left:0!important;right:0!important;width:100%!important;max-width:100vw!important;
    margin:0!important;padding:calc(8px + env(safe-area-inset-top)) 12px 10px!important;
    display:grid!important;grid-template-columns:56px minmax(0,1fr)!important;grid-template-areas:"notif account" "nav nav"!important;
    column-gap:10px!important;row-gap:10px!important;align-items:center!important;justify-content:stretch!important;
    overflow:hidden!important;background:#071120!important;border:0!important;border-bottom:1px solid rgba(148,190,255,.18)!important;border-radius:0 0 20px 20px!important;z-index:1000!important;
  }
  body.employee-space .top-account .notif-menu{grid-area:notif!important;width:56px!important;min-width:56px!important;height:56px!important;margin:0!important;justify-self:start!important;align-self:center!important;}
  body.employee-space .top-account .notif-btn{width:56px!important;min-width:56px!important;height:56px!important;margin:0!important;padding:0!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  body.employee-space .top-account .account-menu{grid-area:account!important;width:100%!important;min-width:0!important;margin:0!important;align-self:center!important;justify-self:stretch!important;}
  body.employee-space .top-account .account-summary{width:100%!important;min-width:0!important;max-width:100%!important;height:56px!important;min-height:56px!important;margin:0!important;padding:0 12px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;border-radius:18px!important;overflow:hidden!important;}
  body.employee-space .top-account .account-avatar,body.employee-space .top-account .account-summary img{width:44px!important;height:44px!important;min-width:44px!important;max-width:44px!important;flex:0 0 44px!important;object-fit:cover!important;}
  body.employee-space .top-account .account-name{font-size:17px!important;line-height:1!important;min-width:0!important;flex:1 1 auto!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.employee-space .top-account .account-arrow{flex:0 0 auto!important;margin-left:auto!important;}
  body.employee-space .top-account .employee-top-nav{grid-area:nav!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;overflow:visible!important;}
  body.employee-space .top-account .employee-top-nav a{width:100%!important;min-width:0!important;max-width:100%!important;flex:unset!important;height:58px!important;min-height:58px!important;padding:7px 8px!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:5px!important;border-radius:18px!important;text-align:center!important;white-space:normal!important;overflow:hidden!important;line-height:1.05!important;font-size:15px!important;}
  body.employee-space .top-account .employee-top-nav a span{display:block!important;width:100%!important;white-space:normal!important;overflow:hidden!important;text-overflow:clip!important;line-height:1.05!important;}
  body.employee-space .top-account .employee-top-nav a .ui-icon,body.employee-space .top-account .employee-top-nav a .ui-icon svg{width:21px!important;height:21px!important;min-width:21px!important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{grid-column:1 / -1!important;}
  body.employee-space main.main,body.employee-space .main{padding:22px 14px 100px!important;margin:0!important;max-width:100vw!important;width:100%!important;overflow-x:hidden!important;}
  body.employee-space.page-employees-php main.main,body.employee-space.page-employees-php .main{padding-top:20px!important;}
  body.employee-space .page-head-actions{margin:0 0 14px!important;}
  body.employee-space .page-head-actions h1{margin:0 0 8px!important;font-size:34px!important;line-height:1.08!important;}
  body.employee-space .employee-category-tabs{margin:12px 0 18px!important;}
  body.employee-space .notif-panel,body.employee-space .account-panel{position:fixed!important;left:12px!important;right:12px!important;top:calc(78px + env(safe-area-inset-top))!important;width:auto!important;max-width:none!important;z-index:10050!important;}
  body.employee-space .mcb-real-push-enable{left:14px!important;right:14px!important;bottom:14px!important;width:calc(100vw - 28px)!important;max-width:none!important;}
}

/* v117 - Correction finale alignement haut mobile salarié : profil parfaitement aligné avec la cloche */
@media (max-width: 900px){
  body.employee-space .top-account{
    display:grid !important;
    grid-template-columns:52px minmax(0,1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    align-items:start !important;
    justify-items:stretch !important;
    gap:10px !important;
    padding:calc(12px + env(safe-area-inset-top,0px)) 12px 14px !important;
    overflow:hidden !important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .account-menu{
    margin:0 !important;
    padding:0 !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    align-self:start !important;
    justify-self:stretch !important;
    display:block !important;
    line-height:1 !important;
  }
  body.employee-space .top-account .notif-menu{grid-area:notif !important;width:52px !important;min-width:52px !important;max-width:52px !important;}
  body.employee-space .top-account .account-menu{grid-area:account !important;width:100% !important;min-width:0 !important;max-width:100% !important;}
  body.employee-space .top-account .notif-btn,
  body.employee-space .top-account .account-summary{
    margin:0 !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    align-self:start !important;
    transform:none !important;
    vertical-align:top !important;
  }
  body.employee-space .top-account .notif-btn{
    width:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:18px !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    padding-left:8px !important;
    padding-right:10px !important;
    border-radius:18px !important;
  }
  body.employee-space .top-account .account-avatar{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    max-width:40px !important;
    flex:0 0 40px !important;
  }
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav !important;
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
  }
  body.employee-space .employee-top-nav a{
    min-width:0 !important;
    height:52px !important;
    min-height:52px !important;
    max-height:52px !important;
    padding:0 8px !important;
    font-size:16px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }
  body.employee-space .employee-top-nav .employee-nav-logout{
    grid-column:1 / -1 !important;
  }
}
@media (max-width:390px){
  body.employee-space .top-account{grid-template-columns:50px minmax(0,1fr) !important;gap:8px !important;padding-left:10px !important;padding-right:10px !important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:50px !important;min-width:50px !important;max-width:50px !important;height:50px !important;min-height:50px !important;max-height:50px !important;}
  body.employee-space .top-account .account-menu,
  body.employee-space .top-account .account-summary{height:50px !important;min-height:50px !important;max-height:50px !important;}
  body.employee-space .top-account .account-avatar{width:38px !important;height:38px !important;min-width:38px !important;max-width:38px !important;flex-basis:38px !important;}
  body.employee-space .employee-top-nav a{height:50px !important;min-height:50px !important;max-height:50px !important;font-size:15px !important;}
}

/* === Correctif approfondi 2026-05-14 : alignement cloche/profil mobile + cartes accueil salarié === */
@media (max-width:900px){
  body.employee-space .top-account{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr)!important;
    grid-template-areas:"notif account" "nav nav"!important;
    column-gap:10px!important;
    row-gap:10px!important;
    align-items:start!important;
    justify-items:stretch!important;
    padding:calc(12px + env(safe-area-inset-top,0px)) 12px 14px!important;
    box-sizing:border-box!important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .account-menu,
  body.employee-space .top-account .notif-btn,
  body.employee-space .top-account .account-summary{
    position:relative!important;
    top:0!important;
    bottom:auto!important;
    margin-top:0!important;
    margin-bottom:0!important;
    transform:translateY(0)!important;
    align-self:start!important;
    box-sizing:border-box!important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{
    grid-area:notif!important;
    width:58px!important;
    min-width:58px!important;
    max-width:58px!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
  }
  body.employee-space .top-account .account-menu{
    grid-area:account!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
  }
  body.employee-space .top-account .account-summary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:58px!important;
    min-height:58px!important;
    max-height:58px!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    border-radius:18px!important;
  }
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    flex:0 0 44px!important;
    margin:0!important;
  }
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav!important;
    margin:0!important;
    padding:0!important;
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }
  body.employee-space .top-account .employee-top-nav a{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:56px!important;
    min-height:56px!important;
    padding:6px 8px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-align:center!important;
    line-height:1.08!important;
    font-size:15.5px!important;
  }
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{grid-column:1/-1!important;}
  body.employee-space .stock-stats.employee-stats{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
}
@media (max-width:390px){
  body.employee-space .top-account{grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;padding-left:10px!important;padding-right:10px!important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:54px!important;min-width:54px!important;max-width:54px!important;height:54px!important;min-height:54px!important;max-height:54px!important;}
  body.employee-space .top-account .account-menu,
  body.employee-space .top-account .account-summary{height:54px!important;min-height:54px!important;max-height:54px!important;}
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img{width:40px!important;height:40px!important;min-width:40px!important;max-width:40px!important;flex-basis:40px!important;}
  body.employee-space .top-account .account-name{font-size:16px!important;}
}

/* Correctif final employés - 2026-05-14
   - alignement mobile cloche/profil
   - navigation sans débordement
   - suppression visuelle des anciens doublons résiduels
*/
body.employee-space .main,
body.employee-space main.main{
  padding-top:128px !important;
}
@media (min-width:901px){
  body.employee-space .main,
  body.employee-space main.main{
    padding-top:118px !important;
  }
  body.employee-space .page-head-actions{margin-top:0 !important;}
}
@media (max-width:900px){
  body.employee-space .top-account{
    position:fixed !important;
    top:74px !important;
    left:0 !important;
    right:0 !important;
    width:100vw !important;
    max-width:100vw !important;
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:56px minmax(0,1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    column-gap:0 !important;
    row-gap:10px !important;
    align-items:center !important;
    padding:10px 22px 14px 22px !important;
    background:#061122 !important;
    border-bottom:1px solid rgba(148,190,255,.18) !important;
    z-index:3000 !important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{
    grid-area:notif !important;
    width:56px !important;
    min-width:56px !important;
    max-width:56px !important;
    height:56px !important;
    min-height:56px !important;
    max-height:56px !important;
    margin:0 !important;
    padding:0 !important;
    border-radius:18px !important;
  }
  body.employee-space .top-account .notif-btn{display:flex !important;align-items:center !important;justify-content:center !important;}
  body.employee-space .top-account .account-menu{
    grid-area:account !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    transform:translateX(-10px) !important;
  }
  body.employee-space .top-account .account-summary{
    width:100% !important;
    height:56px !important;
    min-height:56px !important;
    max-height:56px !important;
    margin:0 !important;
    padding:0 12px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:10px !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary img,
  body.employee-space .top-account .account-summary .avatar{
    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    max-width:44px !important;
    flex:0 0 44px !important;
    object-fit:cover !important;
  }
  body.employee-space .top-account .account-name{
    font-size:17px !important;
    line-height:1 !important;
    min-width:0 !important;
    flex:1 1 auto !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .top-account .account-arrow{flex:0 0 auto !important;margin-left:auto !important;}
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav !important;
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body.employee-space .top-account .employee-top-nav a{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:58px !important;
    min-height:58px !important;
    max-height:58px !important;
    padding:7px 8px !important;
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:5px !important;
    border-radius:18px !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:hidden !important;
    font-size:15px !important;
    line-height:1.05 !important;
  }
  body.employee-space .top-account .employee-top-nav a span{display:block !important;width:100% !important;white-space:normal !important;line-height:1.05 !important;overflow:hidden !important;text-overflow:clip !important;}
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.employee-space .top-account .employee-top-nav a .ui-icon svg{width:21px !important;height:21px !important;min-width:21px !important;}
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{grid-column:1/-1 !important;}
  body.employee-space .main,
  body.employee-space main.main{padding-top:330px !important;}
}
@media (max-width:380px){
  body.employee-space .top-account{padding-left:14px !important;padding-right:14px !important;grid-template-columns:52px minmax(0,1fr) !important;}
  body.employee-space .top-account .account-menu{transform:translateX(-8px) !important;}
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{width:52px !important;min-width:52px !important;max-width:52px !important;height:52px !important;min-height:52px !important;max-height:52px !important;}
  body.employee-space .top-account .account-summary{height:52px !important;min-height:52px !important;max-height:52px !important;}
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary img,
  body.employee-space .top-account .account-summary .avatar{width:40px !important;height:40px !important;min-width:40px !important;max-width:40px !important;}
}

/* === CORRECTION APPROFONDIE 2026-05-14 - haut mobile employé réparé ===
   Le précédent correctif mettait le header en fixed avec un top artificiel, ce qui le faisait
   passer au milieu de la page et recouvrir le contenu. Ici on remet le header dans le flux,
   aligné proprement : cloche et profil sur la même ligne, mêmes hauteurs, aucun décalage. */
@media (max-width: 900px){
  body.employee-space{
    overflow-x:hidden!important;
    padding:0!important;
    margin:0!important;
  }
  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar,
  body.employee-space > .sidebar{
    display:none!important;
  }
  body.employee-space .top-account{
    position:sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:calc(12px + env(safe-area-inset-top,0px)) 12px 14px!important;
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:56px minmax(0,1fr)!important;
    grid-template-areas:
      "notif account"
      "nav nav"!important;
    column-gap:8px!important;
    row-gap:10px!important;
    align-items:start!important;
    justify-items:stretch!important;
    overflow:visible!important;
    background:#061122!important;
    border:0!important;
    border-bottom:1px solid rgba(148,190,255,.18)!important;
    border-radius:0 0 20px 20px!important;
    z-index:3000!important;
    transform:none!important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .account-menu{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    align-self:start!important;
    justify-self:stretch!important;
    box-sizing:border-box!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
  }
  body.employee-space .top-account .notif-menu{
    grid-area:notif!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
  }
  body.employee-space .top-account .account-menu{
    grid-area:account!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body.employee-space .top-account .notif-btn,
  body.employee-space .top-account .account-summary{
    position:relative!important;
    top:0!important;
    margin:0!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    box-sizing:border-box!important;
    transform:none!important;
    border-radius:18px!important;
  }
  body.employee-space .top-account .notif-btn{
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }
  body.employee-space .top-account .account-summary{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:0 12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    overflow:hidden!important;
  }
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img{
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    max-width:44px!important;
    flex:0 0 44px!important;
    margin:0!important;
    object-fit:cover!important;
  }
  body.employee-space .top-account .account-name{
    display:block!important;
    min-width:0!important;
    flex:1 1 auto!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
    font-size:17px!important;
    line-height:1!important;
    font-weight:900!important;
  }
  body.employee-space .top-account .account-arrow{
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
  body.employee-space .top-account .employee-top-nav{
    grid-area:nav!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
  }
  body.employee-space .top-account .employee-top-nav a{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:56px!important;
    min-height:56px!important;
    max-height:56px!important;
    padding:6px 8px!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    border-radius:18px!important;
    text-align:center!important;
    white-space:normal!important;
    overflow:hidden!important;
    font-size:15px!important;
    line-height:1.05!important;
  }
  body.employee-space .top-account .employee-top-nav a span{
    display:block!important;
    width:100%!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:clip!important;
    line-height:1.05!important;
  }
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.employee-space .top-account .employee-top-nav a .ui-icon svg{
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
  }
  body.employee-space .top-account .employee-top-nav .employee-nav-logout{
    grid-column:1 / -1!important;
  }
  body.employee-space .mobile-category-nav{
    display:none!important;
  }
  body.employee-space .main,
  body.employee-space main.main{
    padding:24px 14px 100px!important;
    margin:0!important;
    width:100%!important;
    max-width:100vw!important;
    box-sizing:border-box!important;
    overflow-x:hidden!important;
  }
  body.employee-space .page-head-actions{
    margin:0 0 14px!important;
  }
  body.employee-space .page-head-actions h1{
    margin:0 0 8px!important;
  }
}
@media (max-width:380px){
  body.employee-space .top-account{
    grid-template-columns:52px minmax(0,1fr)!important;
    column-gap:8px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn,
  body.employee-space .top-account .account-menu,
  body.employee-space .top-account .account-summary{
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
  }
  body.employee-space .top-account .account-avatar,
  body.employee-space .top-account .account-summary .avatar,
  body.employee-space .top-account .account-summary img{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
    flex-basis:40px!important;
  }
  body.employee-space .top-account .account-name{font-size:16px!important;}
}

/* v-pointage-admin-par-salarie-annees */
.employee-time-scope-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:8px 0 10px;padding:12px;border-radius:18px;background:rgba(8,18,34,.66);border:1px solid rgba(110,170,240,.24)}
.employee-time-scope-form label{display:flex;flex-direction:column;gap:5px;min-width:190px;flex:1}
.employee-time-scope-form span{font-size:12px;font-weight:900;color:#9fb2c8;text-transform:uppercase;letter-spacing:.03em}
.employee-time-scope-form select{width:100%;min-height:42px;border-radius:13px;border:1px solid rgba(137,185,234,.22);background:rgba(5,15,28,.86);color:#fff;padding:0 12px;font-weight:800}
.employee-time-year-toolbar{display:flex;gap:8px;overflow-x:auto;padding:6px 2px 8px;margin:4px 0 4px;scrollbar-width:thin}
.employee-year-tab{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 14px;border-radius:999px;border:1px solid rgba(110,170,240,.25);background:rgba(8,18,34,.64);color:#dbeafe;text-decoration:none;font-weight:900;font-size:13px;white-space:nowrap}
.employee-year-tab.active{background:#143b73;color:#fff;box-shadow:0 10px 24px rgba(13,130,255,.18)}
@media(max-width:760px){.employee-time-scope-form{display:grid;grid-template-columns:1fr;gap:8px}.employee-time-scope-form label,.employee-time-scope-form button{width:100%;min-width:0}.employee-time-year-toolbar{padding-bottom:8px}}

/* Correctif RH employés - interface admin/salarié plus claire */
.employee-admin-overview{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin:16px 0 18px;align-items:stretch}
.employee-overview-card{border:1px solid rgba(0,117,255,.16);background:linear-gradient(135deg,#ffffff,#f7fbff)}
.employee-overview-card h2{margin:0 0 8px;color:#0f172a;font-size:1.15rem}
.employee-quick-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.employee-quick-actions .btn{border-radius:14px}
.employee-mini-alerts{display:grid;gap:8px;margin:8px 0 12px}
.employee-kpi-card strong{letter-spacing:-.02em}.danger-soft{background:#fff1f2!important;border-color:#fecdd3!important;color:#9f1239!important}.success-soft{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#065f46!important}.success-text{color:#047857;font-weight:800;margin:8px 0 0}
.employee-admin-form{position:relative;overflow:hidden}.employee-admin-form:before{content:'Fiche salarié complète';display:block;margin:-4px 0 14px;padding:10px 12px;border-radius:14px;background:#eef6ff;color:#075bba;font-weight:900;font-size:.9rem}
.employee-row{box-shadow:0 10px 30px rgba(15,23,42,.06)}
.employee-row-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.employee-row-metrics span{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:999px;background:#eef6ff;color:#33506f;font-size:.82rem;font-weight:700}.employee-row-metrics strong{color:#075bba;font-size:.9rem}.employee-admin-actions .btn,.employee-admin-actions button{min-height:34px}
.event-rules-form input,.event-rules-form select,.event-rules-form textarea,.employee-form-readable input,.employee-form-readable select,.employee-form-readable textarea,.leave-admin-panels input,.leave-admin-panels select,.leave-admin-panels textarea{background:#fff!important;color:#0f172a!important;border:1px solid #bcd4f6!important;box-shadow:none!important}.event-rules-form input::placeholder,.employee-form-readable input::placeholder{color:#64748b!important}.event-rules-form table td,.event-rules-form table th{color:#0f172a!important;background:#f8fbff!important}.event-rules-form input[type="checkbox"]{accent-color:#0075ff;min-width:18px;min-height:18px}
body.employee-space .employee-category-tabs{background:#fff;border:1px solid rgba(0,117,255,.12);box-shadow:0 10px 28px rgba(15,23,42,.06)}body.employee-space .employee-category-tabs .employee-tab{color:#0f172a!important}body.employee-space .employee-category-tabs .employee-tab.active{background:#0075ff!important;color:#fff!important}
@media(max-width:900px){.employee-admin-overview{grid-template-columns:1fr}.employee-quick-actions{display:grid;grid-template-columns:1fr}.employee-row-metrics{display:grid;grid-template-columns:1fr 1fr}.employee-row-metrics span{justify-content:space-between;border-radius:14px}}

/* v-rh-pro-ui-2026-05-15 - Refonte visuelle Employees admin/salarié PC + mobile */
:root{--rh-bg:#071120;--rh-panel:#0b1728;--rh-panel-2:#0f2036;--rh-border:rgba(124,185,255,.23);--rh-text:#f8fbff;--rh-muted:#b8c7dc;--rh-blue:#1188ff;--rh-blue-2:#0b66d8;--rh-green:#19c37d;--rh-red:#ff5d6c;--rh-amber:#f6b93b;}
body .employee-category-tabs{position:sticky;top:0;z-index:50;display:flex;gap:10px;align-items:center;overflow-x:auto;margin:14px 0 18px!important;padding:10px!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(9,22,40,.94),rgba(11,28,52,.94))!important;border:1px solid var(--rh-border)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important;scrollbar-width:thin;}
body .employee-category-tabs .employee-tab{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 18px!important;border-radius:14px!important;background:rgba(79,128,181,.24)!important;border:1px solid rgba(142,190,246,.18)!important;color:#eaf4ff!important;text-decoration:none!important;font-weight:900!important;letter-spacing:-.01em;white-space:nowrap;}
body .employee-category-tabs .employee-tab:hover{background:rgba(17,136,255,.30)!important;border-color:rgba(17,136,255,.55)!important;transform:translateY(-1px);}
body .employee-category-tabs .employee-tab.active{background:linear-gradient(135deg,var(--rh-blue),var(--rh-blue-2))!important;color:#fff!important;border-color:rgba(255,255,255,.22)!important;box-shadow:0 14px 30px rgba(17,136,255,.27)!important;}

.employee-stats.stock-stats{display:grid!important;grid-template-columns:repeat(5,minmax(160px,1fr));gap:14px!important;margin:12px 0 18px!important;}
.employee-stats .stock-stat,.employee-kpi-card{min-height:88px!important;border-radius:20px!important;padding:18px!important;background:linear-gradient(135deg,rgba(12,25,43,.96),rgba(8,18,32,.96))!important;border:1px solid var(--rh-border)!important;color:var(--rh-text)!important;box-shadow:0 16px 38px rgba(0,0,0,.18)!important;}
.employee-stats .stock-stat strong{font-size:1.65rem!important;line-height:1!important;color:#fff!important;letter-spacing:-.04em;}
.employee-stats .stock-stat span{display:block;margin-top:6px;color:var(--rh-muted)!important;font-weight:700!important;}
.employee-stats .stock-stat.warning-soft{background:linear-gradient(135deg,rgba(45,35,18,.96),rgba(14,23,37,.96))!important;border-color:rgba(246,185,59,.42)!important;color:#fff!important;}
.employee-stats .stock-stat.success-soft{background:linear-gradient(135deg,rgba(15,55,39,.98),rgba(9,26,31,.98))!important;border-color:rgba(25,195,125,.38)!important;color:#fff!important;}
.employee-stats .stock-stat.danger-soft{background:linear-gradient(135deg,rgba(60,19,30,.98),rgba(18,22,34,.98))!important;border-color:rgba(255,93,108,.40)!important;color:#fff!important;}
.employee-stats .stock-stat.success-soft strong,.employee-stats .stock-stat.danger-soft strong,.employee-stats .stock-stat.warning-soft strong{color:#fff!important;}
.employee-stats .stock-stat.success-soft span,.employee-stats .stock-stat.danger-soft span,.employee-stats .stock-stat.warning-soft span{color:#dcecff!important;}

.employee-admin-overview{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);gap:16px;margin:16px 0 18px;align-items:stretch;}
.employee-overview-card{position:relative;overflow:hidden;border-radius:22px!important;background:linear-gradient(135deg,rgba(11,24,43,.98),rgba(7,18,33,.98))!important;border:1px solid var(--rh-border)!important;color:var(--rh-text)!important;box-shadow:0 18px 45px rgba(0,0,0,.20)!important;}
.employee-overview-card:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(17,136,255,.18),transparent 40%);pointer-events:none;}
.employee-overview-card > *{position:relative;z-index:1;}
.employee-overview-card h2{margin:0 0 8px!important;color:#fff!important;font-size:1.15rem!important;}
.employee-overview-card .muted,.employee-overview-card p{color:var(--rh-muted)!important;}
.employee-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;}
.employee-quick-actions .btn{min-height:44px;border-radius:14px!important;background:linear-gradient(135deg,#173252,#10243c)!important;color:#fff!important;border:1px solid rgba(142,190,246,.28)!important;box-shadow:none!important;}
.employee-quick-actions .btn:hover{background:linear-gradient(135deg,#1188ff,#0b66d8)!important;}
.employee-mini-alerts{display:grid;gap:8px;margin:10px 0 12px;max-height:220px;overflow:auto;padding-right:4px;}
.employee-mini-alerts .leave-anomaly{border-radius:14px;padding:10px 12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:#fff;}
.success-text{color:#8af0bc!important;font-weight:900;margin:10px 0 0!important;}

.employee-space-docs,.employee-legal-health-card{border-radius:22px!important;background:linear-gradient(135deg,rgba(11,24,43,.98),rgba(7,18,33,.98))!important;border:1px solid var(--rh-border)!important;color:var(--rh-text)!important;}
.employee-info-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px!important;}
.employee-info-grid>div{padding:16px;border-radius:18px;background:rgba(5,15,28,.58)!important;border:1px solid rgba(142,190,246,.18)!important;}
.employee-info-grid h2{color:#fff!important;font-size:1rem!important;margin:0 0 10px!important;}
.employee-info-grid p,.employee-info-grid .muted{color:var(--rh-muted)!important;}
.employee-info-grid .btn{margin-top:8px;}

.stock-search-card,.employee-block,.employees-two>.card,.employees-two form.card,.employees-two section.card{background:linear-gradient(135deg,rgba(11,24,43,.98),rgba(7,18,33,.98))!important;border:1px solid var(--rh-border)!important;color:var(--rh-text)!important;border-radius:22px!important;box-shadow:0 18px 45px rgba(0,0,0,.18)!important;}
.employee-block h2,.employees-two h2,.employee-block h3,.employees-two h3{color:#fff!important;}
.employee-block .muted,.employees-two .muted,.employee-block small,.employees-two small{color:var(--rh-muted)!important;}
.employees-two{display:grid!important;grid-template-columns:minmax(360px,.95fr) minmax(0,1.35fr)!important;gap:18px!important;align-items:start;}
.employee-admin-form:before{content:'Fiche salarié complète';display:block;margin:0 0 14px;padding:10px 12px;border-radius:14px;background:rgba(17,136,255,.14)!important;border:1px solid rgba(17,136,255,.30)!important;color:#bfe0ff!important;font-weight:900;font-size:.9rem;}
.employee-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;padding:16px!important;margin-bottom:12px!important;border-radius:18px!important;background:rgba(5,15,28,.72)!important;border:1px solid rgba(142,190,246,.18)!important;color:#fff!important;box-shadow:none!important;}
.employee-row strong{color:#fff!important}.employee-row p,.employee-row small{color:var(--rh-muted)!important;}
.employee-row-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.employee-row-metrics span{display:inline-flex;gap:6px;align-items:center;padding:7px 10px;border-radius:999px;background:rgba(17,136,255,.13)!important;border:1px solid rgba(17,136,255,.25)!important;color:#dcecff!important;font-size:.82rem;font-weight:800;}
.employee-row-metrics strong{color:#fff!important;font-size:.9rem;}
.employee-admin-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-end!important;align-content:start!important;max-width:420px;}
.employee-admin-actions .btn,.employee-admin-actions button,.btn.secondary{border-radius:13px!important;}

.employee-form-readable input,.employee-form-readable select,.employee-form-readable textarea,.employees-two input,.employees-two select,.employees-two textarea,.employee-block input,.employee-block select,.employee-block textarea,.stock-search input{background:#0b1626!important;color:#f8fbff!important;border:1px solid rgba(142,190,246,.28)!important;border-radius:13px!important;}
.employee-form-readable input::placeholder,.employees-two input::placeholder,.employee-block input::placeholder,.stock-search input::placeholder{color:#8da4bd!important;opacity:1!important;}
.employee-form-readable input[readonly],.employees-two input[readonly],.employee-block input[readonly]{background:#111c2c!important;color:#cddbf0!important;}
.employee-form-readable label,.employees-two label,.employee-block label{color:#dbeafe!important;font-weight:800!important;}
.field-help{color:#9fb2c8!important;}

.event-rules-form input,.event-rules-form select,.event-rules-form textarea{background:#0b1626!important;color:#f8fbff!important;border:1px solid rgba(142,190,246,.32)!important;border-radius:10px!important;box-shadow:none!important;}
.event-rules-form input::placeholder{color:#9fb2c8!important;opacity:1!important;}
.event-rules-form table,.event-rules-form .table-wrap{background:rgba(5,15,28,.72)!important;border-color:rgba(142,190,246,.22)!important;}
.event-rules-form table th{background:#122844!important;color:#eaf4ff!important;}
.event-rules-form table td{background:rgba(9,22,40,.86)!important;color:#f8fbff!important;border-color:rgba(142,190,246,.15)!important;}
.event-rules-form input[type="checkbox"]{accent-color:#1188ff;min-width:18px;min-height:18px;}

.employee-time-scope-form{background:rgba(5,15,28,.72)!important;border:1px solid rgba(142,190,246,.22)!important;border-radius:18px!important;}
.employee-time-year-toolbar{display:flex;gap:8px;overflow-x:auto;padding:6px 2px 10px;margin:8px 0;}
.employee-year-tab{background:rgba(79,128,181,.20)!important;color:#dbeafe!important;border:1px solid rgba(142,190,246,.22)!important;}
.employee-year-tab.active{background:linear-gradient(135deg,#1188ff,#0b66d8)!important;color:#fff!important;}

/* Tables RH lisibles */
.employee-block table,.employees-two table{width:100%;border-collapse:separate!important;border-spacing:0 8px!important;}
.employee-block table th,.employees-two table th{background:#122844!important;color:#eaf4ff!important;border:0!important;padding:11px 12px!important;text-align:left!important;}
.employee-block table td,.employees-two table td{background:rgba(8,20,36,.84)!important;color:#f8fbff!important;border-top:1px solid rgba(142,190,246,.14)!important;border-bottom:1px solid rgba(142,190,246,.14)!important;padding:11px 12px!important;}
.employee-block table td:first-child,.employees-two table td:first-child{border-left:1px solid rgba(142,190,246,.14)!important;border-radius:14px 0 0 14px!important;}
.employee-block table td:last-child,.employees-two table td:last-child{border-right:1px solid rgba(142,190,246,.14)!important;border-radius:0 14px 14px 0!important;}
.status-pill,.role-badge{font-weight:900!important;border-radius:999px!important;}

/* Mobile Employees */
@media(max-width:1100px){.employee-stats.stock-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.employee-admin-overview,.employees-two,.employee-info-grid{grid-template-columns:1fr!important}.employee-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.employee-row{grid-template-columns:1fr!important}.employee-admin-actions{max-width:none;justify-content:flex-start!important}}
@media(max-width:700px){body .employee-category-tabs{position:relative;top:auto;margin:10px 0 14px!important;padding:8px!important;border-radius:16px!important}.employee-category-tabs .employee-tab{min-height:42px!important;padding:9px 12px!important;font-size:14px!important}.employee-stats.stock-stats{grid-template-columns:1fr!important;gap:10px!important}.employee-stats .stock-stat{min-height:76px!important;padding:14px!important}.employee-stats .stock-stat strong{font-size:1.45rem!important}.employee-quick-actions{grid-template-columns:1fr}.employee-info-grid>div{padding:14px}.employee-admin-actions{display:grid!important;grid-template-columns:1fr!important}.employee-row-metrics{display:grid!important;grid-template-columns:1fr 1fr!important}.employee-row-metrics span{justify-content:space-between;border-radius:14px!important}.section-title-actions{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}.employee-pdf-period-form,.employee-pdf-select{display:grid!important;grid-template-columns:1fr!important;width:100%!important}.employee-block{padding:14px!important;overflow:hidden}.employee-block table,.employees-two table{min-width:760px}.table-wrap,.employee-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch}.page-head-actions h1{font-size:1.75rem!important}}

/* v104 - Correction ultra approfondie Employees RH : Accueil / Pointage / Congés / Planning PC + mobile */
.page-employees .page-head-actions,
body.employee-space .page-head-actions{
  padding:10px 0 2px!important;
}
.page-employees .page-head-actions h1,
body.employee-space .page-head-actions h1{
  color:#ffffff!important;
  letter-spacing:-.04em!important;
}
.page-employees .page-head-actions .muted,
body.employee-space .page-head-actions .muted{color:#b8c7dc!important;}

.page-employees .employee-category-tabs,
body.employee-space .employee-category-tabs{
  position:sticky!important;
  top:8px!important;
  z-index:80!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-width:100%!important;
  padding:10px!important;
  margin:14px 0 20px!important;
  background:rgba(7,17,32,.92)!important;
  border:1px solid rgba(142,190,246,.20)!important;
  border-radius:20px!important;
  box-shadow:0 16px 42px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-overflow-scrolling:touch!important;
}
.page-employees .employee-category-tabs .employee-tab,
body.employee-space .employee-category-tabs .employee-tab{
  flex:0 0 auto!important;
  min-width:max-content!important;
  min-height:46px!important;
  padding:11px 18px!important;
  border-radius:15px!important;
  background:rgba(32,64,101,.86)!important;
  color:#eaf4ff!important;
  border:1px solid rgba(142,190,246,.20)!important;
  box-shadow:none!important;
}
.page-employees .employee-category-tabs .employee-tab.active,
body.employee-space .employee-category-tabs .employee-tab.active{
  background:linear-gradient(135deg,#1188ff,#0b66d8)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.28)!important;
}

/* Cartes accueil propres, pas de fond blanc avec texte blanc */
.page-employees .employee-admin-overview,
body.employee-space .employee-admin-overview{grid-template-columns:minmax(0,1fr) minmax(320px,.75fr)!important;gap:16px!important;}
.page-employees .employee-overview-card,
body.employee-space .employee-overview-card,
.page-employees .employee-space-docs,
body.employee-space .employee-space-docs,
.page-employees .employee-legal-health-card,
body.employee-space .employee-legal-health-card{
  background:linear-gradient(135deg,rgba(11,24,43,.98),rgba(7,18,33,.98))!important;
  color:#f8fbff!important;
  border:1px solid rgba(142,190,246,.22)!important;
  border-radius:24px!important;
  box-shadow:0 18px 45px rgba(0,0,0,.20)!important;
}
.page-employees .employee-overview-card h2,
body.employee-space .employee-overview-card h2,
.page-employees .employee-space-docs h2,
body.employee-space .employee-space-docs h2{color:#fff!important;}
.page-employees .employee-overview-card p,
.page-employees .employee-overview-card .muted,
body.employee-space .employee-overview-card p,
body.employee-space .employee-overview-card .muted,
.page-employees .employee-space-docs p,
.page-employees .employee-space-docs .muted,
body.employee-space .employee-space-docs p,
body.employee-space .employee-space-docs .muted{color:#b8c7dc!important;}
.page-employees .employee-quick-actions,
body.employee-space .employee-quick-actions{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:10px!important;}
.page-employees .employee-quick-actions .btn,
body.employee-space .employee-quick-actions .btn{width:100%!important;justify-content:center!important;white-space:normal!important;text-align:center!important;}

/* Formulaires RH lisibles sur PC et mobile */
.page-employees input:not([type="checkbox"]):not([type="radio"]),
.page-employees select,
.page-employees textarea,
body.employee-space input:not([type="checkbox"]):not([type="radio"]),
body.employee-space select,
body.employee-space textarea{
  background:#0b1626!important;
  color:#f8fbff!important;
  -webkit-text-fill-color:#f8fbff!important;
  border:1px solid rgba(142,190,246,.30)!important;
  border-radius:13px!important;
  box-shadow:none!important;
}
.page-employees input::placeholder,
.page-employees textarea::placeholder,
body.employee-space input::placeholder,
body.employee-space textarea::placeholder{color:#94a3b8!important;-webkit-text-fill-color:#94a3b8!important;opacity:1!important;}
.page-employees input[type="date"],.page-employees input[type="time"],
body.employee-space input[type="date"],body.employee-space input[type="time"]{color-scheme:dark!important;appearance:auto!important;-webkit-appearance:auto!important;}
.page-employees input[type="checkbox"],body.employee-space input[type="checkbox"]{accent-color:#1188ff!important;min-width:18px!important;min-height:18px!important;}

/* Tables en cartes sur mobile pour éviter Pointage/Congés cassés */
@media(max-width:760px){
  .page-employees .main, body.employee-space .main{overflow-x:hidden!important;padding-left:12px!important;padding-right:12px!important;}
  .page-employees .employee-category-tabs, body.employee-space .employee-category-tabs{position:relative!important;top:auto!important;margin:10px 0 16px!important;border-radius:18px!important;scroll-snap-type:x mandatory!important;}
  .page-employees .employee-category-tabs .employee-tab, body.employee-space .employee-category-tabs .employee-tab{scroll-snap-align:start!important;min-height:44px!important;font-size:14px!important;padding:10px 14px!important;}
  .page-employees .employee-stats.stock-stats, body.employee-space .employee-stats.stock-stats{grid-template-columns:1fr!important;gap:10px!important;}
  .page-employees .employee-admin-overview, body.employee-space .employee-admin-overview,
  .page-employees .employees-two, body.employee-space .employees-two,
  .page-employees .employee-info-grid, body.employee-space .employee-info-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  .page-employees .employee-block, body.employee-space .employee-block,
  .page-employees .card, body.employee-space .card{border-radius:20px!important;max-width:100%!important;}
  .page-employees .stock-form-grid, body.employee-space .stock-form-grid,
  .page-employees .employee-inline-form, body.employee-space .employee-inline-form,
  .page-employees .employee-time-entry-form, body.employee-space .employee-time-entry-form,
  .page-employees .employee-options-form, body.employee-space .employee-options-form,
  .page-employees .employee-pdf-period-form, body.employee-space .employee-pdf-period-form{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
  .page-employees input:not([type="checkbox"]):not([type="radio"]),
  .page-employees select,
  .page-employees textarea,
  body.employee-space input:not([type="checkbox"]):not([type="radio"]),
  body.employee-space select,
  body.employee-space textarea{min-height:52px!important;font-size:16px!important;width:100%!important;}

  .page-employees .table-wrap,
  body.employee-space .table-wrap,
  .page-employees .team-planning-grid-wrap,
  body.employee-space .team-planning-grid-wrap{
    overflow:visible!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    padding:0!important;
  }
  .page-employees .table-wrap table,
  body.employee-space .table-wrap table,
  .page-employees .team-planning-grid,
  body.employee-space .team-planning-grid{
    min-width:0!important;
    width:100%!important;
    border-collapse:separate!important;
    border-spacing:0 10px!important;
  }
  .page-employees .table-wrap table thead,
  .page-employees .table-wrap table tbody > tr:first-child:has(th),
  body.employee-space .table-wrap table thead,
  body.employee-space .table-wrap table tbody > tr:first-child:has(th){display:none!important;}
  .page-employees .table-wrap table tr,
  body.employee-space .table-wrap table tr{
    display:block!important;
    width:100%!important;
    margin:0 0 12px!important;
    padding:12px!important;
    border-radius:18px!important;
    background:linear-gradient(135deg,rgba(11,24,43,.98),rgba(7,18,33,.98))!important;
    border:1px solid rgba(142,190,246,.20)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.16)!important;
  }
  .page-employees .table-wrap table td,
  body.employee-space .table-wrap table td{
    display:grid!important;
    grid-template-columns:minmax(105px,.85fr) minmax(0,1.15fr)!important;
    gap:10px!important;
    align-items:start!important;
    width:100%!important;
    padding:9px 0!important;
    background:transparent!important;
    border:0!important;
    border-bottom:1px solid rgba(142,190,246,.12)!important;
    border-radius:0!important;
    color:#f8fbff!important;
    white-space:normal!important;
    word-break:break-word!important;
  }
  .page-employees .table-wrap table td:last-child,
  body.employee-space .table-wrap table td:last-child{border-bottom:0!important;}
  .page-employees .table-wrap table td:before,
  body.employee-space .table-wrap table td:before{
    content:attr(data-label);
    color:#9fb2c8!important;
    font-size:12px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.03em!important;
  }
  .page-employees .table-wrap table td:not([data-label]):before,
  body.employee-space .table-wrap table td:not([data-label]):before{content:''!important;display:none!important;}
  .page-employees .leave-actions,
  body.employee-space .leave-actions,
  .page-employees .time-actions,
  body.employee-space .time-actions,
  .page-employees .employee-admin-actions,
  body.employee-space .employee-admin-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;width:100%!important;max-width:none!important;}
  .page-employees .leave-actions form,
  body.employee-space .leave-actions form,
  .page-employees .time-actions form,
  body.employee-space .time-actions form{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;width:100%!important;}
  .page-employees .btn,
  .page-employees button,
  body.employee-space .btn,
  body.employee-space button{min-height:44px!important;white-space:normal!important;}

  /* Planning semaine : cartes jour par jour au lieu de tableau écrasé */
  .page-employees .team-planning-grid thead, body.employee-space .team-planning-grid thead{display:none!important;}
  .page-employees .team-planning-grid tbody,
  .page-employees .team-planning-grid tr,
  .page-employees .team-planning-grid td,
  .page-employees .team-planning-grid th,
  body.employee-space .team-planning-grid tbody,
  body.employee-space .team-planning-grid tr,
  body.employee-space .team-planning-grid td,
  body.employee-space .team-planning-grid th{display:block!important;width:100%!important;}
  .page-employees .team-planning-grid tr,
  body.employee-space .team-planning-grid tr{padding:12px!important;border-radius:18px!important;background:rgba(8,20,36,.82)!important;border:1px solid rgba(142,190,246,.18)!important;margin-bottom:12px!important;}
  .page-employees .team-planning-grid .team-employee-name,
  body.employee-space .team-planning-grid .team-employee-name{background:transparent!important;color:#fff!important;border:0!important;padding:0 0 10px!important;}
  .page-employees .team-planning-grid td,
  body.employee-space .team-planning-grid td{min-height:0!important;margin:8px 0!important;padding:10px!important;border-radius:14px!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(142,190,246,.12)!important;}
  .page-employees .team-planning-item,
  body.employee-space .team-planning-item{border-radius:14px!important;margin:8px 0!important;}
  .page-employees .leave-calendar-grid,
  body.employee-space .leave-calendar-grid{display:flex!important;overflow-x:auto!important;gap:10px!important;padding-bottom:8px!important;}
  .page-employees .leave-calendar-grid>div,
  body.employee-space .leave-calendar-grid>div{display:none!important;}
  .page-employees .leave-calendar-grid article,
  body.employee-space .leave-calendar-grid article{flex:0 0 178px!important;min-width:178px!important;}
}


/* FIX RADIO MINI - isolation totale du widget radio contre les styles Employees */
body .mcb-radio-mini{
  position:fixed!important;right:14px!important;bottom:14px!important;left:auto!important;z-index:2147483000!important;
  width:292px!important;max-width:calc(100vw - 28px)!important;height:46px!important;min-height:46px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;
  padding:7px 8px 7px 10px!important;border-radius:16px!important;overflow:hidden!important;
  background:rgba(6,16,31,.90)!important;border:1px solid rgba(148,190,255,.30)!important;color:#eaf5ff!important;
  box-shadow:0 14px 36px rgba(0,0,0,.34)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;
}
body .mcb-radio-mini-main{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;}
body .mcb-radio-dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;border-radius:50%!important;background:#64748b!important;flex:0 0 8px!important;box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;}
body .mcb-radio-dot.playing{background:#22c55e!important;box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;}
body .mcb-radio-mini-text{min-width:0!important;line-height:1.05!important;overflow:hidden!important;}
body .mcb-radio-mini-text strong,body .mcb-radio-mini-text small{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;max-width:104px!important;}
body .mcb-radio-mini-text strong{font-size:11px!important;font-weight:900!important;color:#eef6ff!important;}
body .mcb-radio-mini-text small{font-size:9px!important;color:#9fbbe0!important;font-weight:700!important;margin-top:2px!important;}
body .mcb-radio-mini-volume{width:64px!important;min-width:64px!important;display:flex!important;align-items:center!important;}
body .mcb-radio-mini-volume input[type="range"]{width:64px!important;min-width:64px!important;max-width:64px!important;height:18px!important;min-height:18px!important;margin:0!important;padding:0!important;accent-color:#38bdf8!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-actions{display:flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;}
body.page-employees-php .mcb-radio-mini-actions button,
body .mcb-radio-mini-actions button{
  width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important;max-width:31px!important;max-height:31px!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:11px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;
  display:grid!important;place-items:center!important;line-height:1!important;font-size:0!important;flex:0 0 31px!important;box-shadow:none!important;appearance:none!important;-webkit-appearance:none!important;
}
body .mcb-radio-mini-actions button svg{width:15px!important;height:15px!important;display:block!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.8!important;}
@media(max-width:720px){body .mcb-radio-mini{right:10px!important;bottom:10px!important;width:260px!important;height:44px!important;min-height:44px!important;}body .mcb-radio-mini-text strong,body .mcb-radio-mini-text small{max-width:82px!important;}body .mcb-radio-mini-volume{width:54px!important;min-width:54px!important;}body .mcb-radio-mini-volume input[type="range"]{width:54px!important;min-width:54px!important;max-width:54px!important;}body.page-employees-php .mcb-radio-mini-actions button,body .mcb-radio-mini-actions button{width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important;max-height:29px!important;flex-basis:29px!important;}}


/* mcb-radio-mini-final-isolation-20260515 */
body .mcb-radio-mini{position:fixed!important;right:14px!important;left:auto!important;bottom:14px!important;z-index:2147483000!important;box-sizing:border-box!important;overflow:hidden!important;}
body .mcb-radio-mini-volume input[type="range"]{appearance:auto!important;-webkit-appearance:auto!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;min-height:18px!important;height:18px!important;}
body .mcb-radio-mini-actions button{display:grid!important;place-items:center!important;padding:0!important;margin:0!important;box-sizing:border-box!important;line-height:1!important;}

/* PATCH 2026-05-15 - Radio chantier verrouillée comme avant, non déformée par Employees */
body .mcb-radio-mini,
body.page-employees-php .mcb-radio-mini,
body.employee-space.page-employees-php .mcb-radio-mini{
  position:fixed!important;right:14px!important;left:auto!important;bottom:14px!important;z-index:2147483000!important;
  width:255px!important;max-width:calc(100vw - 28px)!important;height:46px!important;min-height:46px!important;max-height:46px!important;
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;
  padding:7px 8px 7px 10px!important;border-radius:18px!important;overflow:hidden!important;
  background:rgba(6,16,31,.92)!important;border:1px solid rgba(148,190,255,.30)!important;color:#eaf5ff!important;
  box-shadow:0 14px 38px rgba(0,0,0,.34)!important;backdrop-filter:blur(12px)!important;-webkit-backdrop-filter:blur(12px)!important;
  box-sizing:border-box!important;transform:none!important;
}
body .mcb-radio-mini *,body.page-employees-php .mcb-radio-mini *{box-sizing:border-box!important;}
body .mcb-radio-mini-main{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:1 1 auto!important;overflow:hidden!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;border-radius:50%!important;background:#64748b!important;flex:0 0 8px!important;box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;padding:0!important;margin:0!important;}
body .mcb-radio-dot.playing{background:#22c55e!important;box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;}
body .mcb-radio-mini-text{min-width:0!important;line-height:1.05!important;overflow:hidden!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-text strong,body .mcb-radio-mini-text small{display:block!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;max-width:82px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;}
body .mcb-radio-mini-text strong{font-size:11px!important;font-weight:950!important;color:#eef6ff!important;}
body .mcb-radio-mini-text small{font-size:9px!important;color:#9fbbe0!important;font-weight:700!important;margin-top:2px!important;}
body .mcb-radio-mini-volume{display:flex!important;align-items:center!important;justify-content:center!important;width:56px!important;min-width:56px!important;max-width:56px!important;height:20px!important;min-height:20px!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-volume input[type="range"]{appearance:auto!important;-webkit-appearance:auto!important;width:56px!important;min-width:56px!important;max-width:56px!important;height:18px!important;min-height:18px!important;max-height:18px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;accent-color:#38bdf8!important;color-scheme:dark!important;}
body .mcb-radio-mini-actions{display:flex!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-actions button{display:grid!important;place-items:center!important;width:29px!important;height:29px!important;min-width:29px!important;min-height:29px!important;max-width:29px!important;max-height:29px!important;flex:0 0 29px!important;padding:0!important;margin:0!important;border:0!important;border-radius:12px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;box-shadow:none!important;line-height:1!important;transform:none!important;appearance:none!important;-webkit-appearance:none!important;}
body .mcb-radio-mini-actions button svg{width:15px!important;height:15px!important;display:block!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.8!important;margin:0!important;padding:0!important;}
@media(max-width:720px){body .mcb-radio-mini{right:10px!important;bottom:10px!important;width:226px!important;height:44px!important;min-height:44px!important;}body .mcb-radio-mini-text strong,body .mcb-radio-mini-text small{max-width:74px!important;}body .mcb-radio-mini-volume{width:48px!important;min-width:48px!important;max-width:48px!important;}body .mcb-radio-mini-volume input[type="range"]{width:48px!important;min-width:48px!important;max-width:48px!important;}}


/* mcb-radio-widget-restored-final-20260515 */
/* Radio chantier restaurée : format compact horizontal, volume en curseur simple, boutons ronds comme avant. */
body .mcb-radio-mini,
body.page-employees-php .mcb-radio-mini,
body.employee-space.page-employees-php .mcb-radio-mini{
  position:fixed!important;
  right:14px!important;
  left:auto!important;
  bottom:14px!important;
  z-index:2147483000!important;
  width:292px!important;
  max-width:calc(100vw - 28px)!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:7px 9px 7px 10px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:rgba(6,16,31,.94)!important;
  border:1px solid rgba(148,190,255,.30)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  color:#eaf5ff!important;
  box-sizing:border-box!important;
  transform:none!important;
}
body .mcb-radio-mini *,
body.page-employees-php .mcb-radio-mini *,
body.employee-space.page-employees-php .mcb-radio-mini *{
  box-sizing:border-box!important;
}
body .mcb-radio-mini-main,
body.page-employees-php .mcb-radio-mini-main{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  width:100px!important;
  flex:0 0 100px!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-dot,
body.page-employees-php .mcb-radio-dot{
  display:block!important;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  min-height:8px!important;
  max-width:8px!important;
  max-height:8px!important;
  border-radius:50%!important;
  background:#64748b!important;
  flex:0 0 8px!important;
  box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;
  padding:0!important;
  margin:0!important;
}
body .mcb-radio-dot.playing,
body.page-employees-php .mcb-radio-dot.playing{
  background:#22c55e!important;
  box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;
}
body .mcb-radio-mini-text,
body.page-employees-php .mcb-radio-mini-text{
  min-width:0!important;
  width:85px!important;
  max-width:85px!important;
  line-height:1.05!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-text strong,
body .mcb-radio-mini-text small,
body.page-employees-php .mcb-radio-mini-text strong,
body.page-employees-php .mcb-radio-mini-text small{
  display:block!important;
  width:85px!important;
  max-width:85px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-text strong,
body.page-employees-php .mcb-radio-mini-text strong{
  font-size:11px!important;
  font-weight:950!important;
  color:#eef6ff!important;
}
body .mcb-radio-mini-text small,
body.page-employees-php .mcb-radio-mini-text small{
  font-size:9px!important;
  color:#9fbbe0!important;
  font-weight:700!important;
  margin-top:2px!important;
}
body .mcb-radio-mini-volume,
body.page-employees-php .mcb-radio-mini-volume{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  height:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  flex:0 0 78px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body .mcb-radio-mini-volume input[type="range"],
body.page-employees-php .mcb-radio-mini-volume input[type="range"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  flex:0 0 78px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  color-scheme:dark!important;
  accent-color:#38bdf8!important;
}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track{
  height:4px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.32)!important;
  border:0!important;
}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  width:14px!important;
  height:14px!important;
  border-radius:50%!important;
  background:#38bdf8!important;
  border:0!important;
  margin-top:-5px!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-volume input[type="range"]::-moz-range-track,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-moz-range-track{
  height:4px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.32)!important;
  border:0!important;
}
body .mcb-radio-mini-volume input[type="range"]::-moz-range-thumb,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-moz-range-thumb{
  width:14px!important;
  height:14px!important;
  border-radius:50%!important;
  background:#38bdf8!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-actions,
body.page-employees-php .mcb-radio-mini-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:31px!important;
  min-height:31px!important;
  max-height:31px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-actions button,
body.page-employees-php .mcb-radio-mini-actions button{
  display:grid!important;
  place-items:center!important;
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  min-height:31px!important;
  max-width:31px!important;
  max-height:31px!important;
  flex:0 0 31px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  box-shadow:none!important;
  line-height:1!important;
  transform:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}
body .mcb-radio-mini-actions button svg,
body.page-employees-php .mcb-radio-mini-actions button svg{
  width:15px!important;
  height:15px!important;
  display:block!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  margin:0!important;
  padding:0!important;
}
body .mcb-radio-mini-actions button:hover,
body.page-employees-php .mcb-radio-mini-actions button:hover{
  background:rgba(59,130,246,.30)!important;
}
@media(max-width:720px){
  body .mcb-radio-mini,
  body.page-employees-php .mcb-radio-mini,
  body.employee-space.page-employees-php .mcb-radio-mini{
    right:10px!important;
    left:auto!important;
    bottom:10px!important;
    width:292px!important;
    max-width:calc(100vw - 20px)!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
}
@media print{body .mcb-radio-mini{display:none!important;}}
body.page-employees-php #pointage .time-actions form{display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;position:relative!important;z-index:3!important;}
body.page-employees-php #pointage .time-actions .js-delete-time-entry-btn{pointer-events:auto!important;cursor:pointer!important;}



/* PATCH FINAL 2026-05-15 - Radio chantier restaurée exactement en mini-widget compact */
body .mcb-radio-mini,
body.page-employees-php .mcb-radio-mini,
body.employee-space.page-employees-php .mcb-radio-mini{
  position:fixed!important;
  right:14px!important;
  left:auto!important;
  bottom:14px!important;
  z-index:2147483640!important;
  width:292px!important;
  max-width:calc(100vw - 28px)!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:7px 9px 7px 10px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:rgba(6,16,31,.94)!important;
  border:1px solid rgba(148,190,255,.30)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  color:#eaf5ff!important;
  box-sizing:border-box!important;
  transform:none!important;
}
body .mcb-radio-mini *,body.page-employees-php .mcb-radio-mini *{box-sizing:border-box!important;background-color:transparent!important;}
body .mcb-radio-mini-main,body.page-employees-php .mcb-radio-mini-main{display:flex!important;align-items:center!important;gap:7px!important;min-width:0!important;flex:0 0 100px!important;width:100px!important;overflow:hidden!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-dot,body.page-employees-php .mcb-radio-dot{display:block!important;width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;max-width:8px!important;max-height:8px!important;border-radius:50%!important;background:#64748b!important;flex:0 0 8px!important;box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;padding:0!important;margin:0!important;}
body .mcb-radio-dot.playing,body.page-employees-php .mcb-radio-dot.playing{background:#22c55e!important;box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;}
body .mcb-radio-mini-text,body.page-employees-php .mcb-radio-mini-text{width:85px!important;max-width:85px!important;min-width:0!important;line-height:1.05!important;overflow:hidden!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-text strong,body .mcb-radio-mini-text small,body.page-employees-php .mcb-radio-mini-text strong,body.page-employees-php .mcb-radio-mini-text small{display:block!important;width:85px!important;max-width:85px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-text strong,body.page-employees-php .mcb-radio-mini-text strong{font-size:11px!important;font-weight:950!important;color:#eef6ff!important;}
body .mcb-radio-mini-text small,body.page-employees-php .mcb-radio-mini-text small{font-size:9px!important;color:#9fbbe0!important;font-weight:700!important;margin-top:2px!important;}
body .mcb-radio-mini-volume,body.page-employees-php .mcb-radio-mini-volume{display:flex!important;align-items:center!important;justify-content:center!important;width:78px!important;min-width:78px!important;max-width:78px!important;height:20px!important;min-height:20px!important;max-height:20px!important;flex:0 0 78px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;}
body .mcb-radio-mini-volume input[type="range"],body.page-employees-php .mcb-radio-mini-volume input[type="range"]{-webkit-appearance:none!important;appearance:none!important;display:block!important;width:78px!important;min-width:78px!important;max-width:78px!important;height:18px!important;min-height:18px!important;max-height:18px!important;flex:0 0 78px!important;padding:0!important;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;outline:0!important;color-scheme:dark!important;accent-color:#38bdf8!important;}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track{height:4px!important;border-radius:999px!important;background:rgba(255,255,255,.32)!important;border:0!important;}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb{-webkit-appearance:none!important;width:14px!important;height:14px!important;border-radius:50%!important;background:#38bdf8!important;border:0!important;margin-top:-5px!important;box-shadow:none!important;}
body .mcb-radio-mini-actions,body.page-employees-php .mcb-radio-mini-actions{display:flex!important;flex-direction:row!important;align-items:center!important;gap:5px!important;flex:0 0 auto!important;width:auto!important;height:31px!important;min-height:31px!important;max-height:31px!important;padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;}
body .mcb-radio-mini-actions button,body.page-employees-php .mcb-radio-mini-actions button{display:grid!important;place-items:center!important;width:31px!important;height:31px!important;min-width:31px!important;min-height:31px!important;max-width:31px!important;max-height:31px!important;flex:0 0 31px!important;padding:0!important;margin:0!important;border:0!important;border-radius:12px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;box-shadow:none!important;line-height:1!important;transform:none!important;appearance:none!important;-webkit-appearance:none!important;cursor:pointer!important;font-size:0!important;}
body .mcb-radio-mini-actions button svg,body.page-employees-php .mcb-radio-mini-actions button svg{width:15px!important;height:15px!important;display:block!important;fill:currentColor!important;stroke:currentColor!important;stroke-width:1.8!important;margin:0!important;padding:0!important;}
@media(max-width:720px){body .mcb-radio-mini,body.page-employees-php .mcb-radio-mini{right:10px!important;bottom:10px!important;width:292px!important;max-width:calc(100vw - 20px)!important;height:46px!important;min-height:46px!important;max-height:46px!important;}}
@media print{body .mcb-radio-mini{display:none!important;}}

/* PATCH FINAL 2026-05-16 - Mini-widget Radio chantier uniforme sur toutes les pages admin (Accueil + Employés) */
body .mcb-radio-mini,
body.page-employees-php .mcb-radio-mini,
body.employee-space.page-employees-php .mcb-radio-mini{
  position:fixed!important;
  right:14px!important;
  left:auto!important;
  bottom:14px!important;
  z-index:2147483640!important;
  width:292px!important;
  max-width:calc(100vw - 28px)!important;
  height:46px!important;
  min-height:46px!important;
  max-height:46px!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  padding:7px 9px 7px 10px!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:rgba(6,16,31,.94)!important;
  border:1px solid rgba(148,190,255,.30)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.34)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
  color:#eaf5ff!important;
  box-sizing:border-box!important;
  transform:none!important;
}
body .mcb-radio-mini *,
body.page-employees-php .mcb-radio-mini *,
body.employee-space.page-employees-php .mcb-radio-mini *{
  box-sizing:border-box!important;
}
body .mcb-radio-mini-main,
body.page-employees-php .mcb-radio-mini-main,
body.employee-space.page-employees-php .mcb-radio-mini-main{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  width:100px!important;
  flex:0 0 100px!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-dot,
body.page-employees-php .mcb-radio-dot,
body.employee-space.page-employees-php .mcb-radio-dot{
  display:block!important;
  width:8px!important;
  height:8px!important;
  min-width:8px!important;
  min-height:8px!important;
  max-width:8px!important;
  max-height:8px!important;
  border-radius:50%!important;
  background:#64748b!important;
  flex:0 0 8px!important;
  box-shadow:0 0 0 3px rgba(100,116,139,.16)!important;
  padding:0!important;
  margin:0!important;
}
body .mcb-radio-dot.playing,
body.page-employees-php .mcb-radio-dot.playing,
body.employee-space.page-employees-php .mcb-radio-dot.playing{
  background:#22c55e!important;
  box-shadow:0 0 0 3px rgba(34,197,94,.20),0 0 14px rgba(34,197,94,.75)!important;
}
body .mcb-radio-mini-text,
body.page-employees-php .mcb-radio-mini-text,
body.employee-space.page-employees-php .mcb-radio-mini-text{
  width:85px!important;
  max-width:85px!important;
  min-width:0!important;
  line-height:1.05!important;
  overflow:hidden!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-text strong,
body .mcb-radio-mini-text small,
body.page-employees-php .mcb-radio-mini-text strong,
body.page-employees-php .mcb-radio-mini-text small,
body.employee-space.page-employees-php .mcb-radio-mini-text strong,
body.employee-space.page-employees-php .mcb-radio-mini-text small{
  display:block!important;
  width:85px!important;
  max-width:85px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-text strong,
body.page-employees-php .mcb-radio-mini-text strong,
body.employee-space.page-employees-php .mcb-radio-mini-text strong{
  font-size:11px!important;
  font-weight:950!important;
  color:#eef6ff!important;
}
body .mcb-radio-mini-text small,
body.page-employees-php .mcb-radio-mini-text small,
body.employee-space.page-employees-php .mcb-radio-mini-text small{
  font-size:9px!important;
  color:#9fbbe0!important;
  font-weight:700!important;
  margin-top:2px!important;
}
body .mcb-radio-mini-volume,
body.page-employees-php .mcb-radio-mini-volume,
body.employee-space.page-employees-php .mcb-radio-mini-volume{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  height:20px!important;
  min-height:20px!important;
  max-height:20px!important;
  flex:0 0 78px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body .mcb-radio-mini-volume input[type="range"],
body.page-employees-php .mcb-radio-mini-volume input[type="range"],
body.employee-space.page-employees-php .mcb-radio-mini-volume input[type="range"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  flex:0 0 78px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  color-scheme:dark!important;
  accent-color:#38bdf8!important;
}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,
body.employee-space.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track{
  height:4px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.32)!important;
  border:0!important;
}
body .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,
body.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,
body.employee-space.page-employees-php .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  width:14px!important;
  height:14px!important;
  border-radius:50%!important;
  background:#38bdf8!important;
  border:0!important;
  margin-top:-5px!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-actions,
body.page-employees-php .mcb-radio-mini-actions,
body.employee-space.page-employees-php .mcb-radio-mini-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
  width:auto!important;
  height:31px!important;
  min-height:31px!important;
  max-height:31px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body .mcb-radio-mini-actions button,
body.page-employees-php .mcb-radio-mini-actions button,
body.employee-space.page-employees-php .mcb-radio-mini-actions button{
  display:grid!important;
  place-items:center!important;
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  min-height:31px!important;
  max-width:31px!important;
  max-height:31px!important;
  flex:0 0 31px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  box-shadow:none!important;
  line-height:1!important;
  transform:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  font-size:0!important;
}
body .mcb-radio-mini-actions button svg,
body.page-employees-php .mcb-radio-mini-actions button svg,
body.employee-space.page-employees-php .mcb-radio-mini-actions button svg{
  width:15px!important;
  height:15px!important;
  display:block!important;
  fill:currentColor!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  margin:0!important;
  padding:0!important;
}
body .mcb-radio-mini-actions button:hover,
body.page-employees-php .mcb-radio-mini-actions button:hover,
body.employee-space.page-employees-php .mcb-radio-mini-actions button:hover{
  background:rgba(59,130,246,.30)!important;
}
@media(max-width:720px){
  body .mcb-radio-mini,
  body.page-employees-php .mcb-radio-mini,
  body.employee-space.page-employees-php .mcb-radio-mini{
    right:10px!important;
    bottom:10px!important;
    width:292px!important;
    max-width:calc(100vw - 20px)!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
  }
}
@media print{body .mcb-radio-mini{display:none!important;}}


/* =========================================================
   FIX 2026-05-16 - Radio chantier mini widget
   Suppression définitive de la bulle/encadrement autour du volume.
   Le volume redevient un simple curseur intégré entre le titre et les boutons.
   ========================================================= */
html body .mcb-radio-mini .mcb-radio-mini-volume,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume,
html body .radio-mini-volume,
html body .mini-volume,
html body [id="radioMiniWidget"] .mcb-radio-mini-volume{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  padding:0!important;
  margin:0!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  flex:0 0 78px!important;
  overflow:visible!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume::before,
html body .mcb-radio-mini .mcb-radio-mini-volume::after,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume::before,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume::after,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume::before,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume::after{
  content:none!important;
  display:none!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"],
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"],
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  width:78px!important;
  min-width:78px!important;
  max-width:78px!important;
  height:18px!important;
  min-height:18px!important;
  max-height:18px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  filter:none!important;
  accent-color:#38bdf8!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus,
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus-visible,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus-visible,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]:focus-visible{
  outline:0!important;
  box-shadow:none!important;
  border:0!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-runnable-track{
  height:4px!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.34)!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none!important;
  width:14px!important;
  height:14px!important;
  margin-top:-5px!important;
  border-radius:50%!important;
  background:#38bdf8!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-track,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-track,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-track{
  height:4px!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.34)!important;
}
html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-thumb,
html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-thumb,
html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]::-moz-range-thumb{
  width:14px!important;
  height:14px!important;
  border-radius:50%!important;
  background:#38bdf8!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
@media(max-width:720px){
  html body .mcb-radio-mini .mcb-radio-mini-volume,
  html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume,
  html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume,
  html body .mcb-radio-mini .mcb-radio-mini-volume input[type="range"],
  html body.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"],
  html body.employee-space.page-employees-php .mcb-radio-mini .mcb-radio-mini-volume input[type="range"]{
    width:78px!important;
    min-width:78px!important;
    max-width:78px!important;
    flex:0 0 78px!important;
  }
}


/* =========================================================
   FIX 2026-05-16 - Menu profil admin visible et non coupé
   ========================================================= */
html body .top-account{overflow:visible!important;}
html body .top-account details{position:static!important;}
html body .account-menu[open] .account-panel,
html body .notif-menu[open] .notif-panel{
  position:fixed!important;
  top:66px!important;
  right:12px!important;
  left:auto!important;
  width:310px!important;
  max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 86px)!important;
  overflow:auto!important;
  z-index:2147483000!important;
}
html body .account-panel a,
html body .notif-panel a{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
}
html body .account-card-head{min-width:0!important;}
html body .account-card-head b,
html body .account-card-head small{overflow:hidden!important;text-overflow:ellipsis!important;max-width:190px!important;}
@media(max-width:900px){
  html body .account-menu[open] .account-panel,
  html body .notif-menu[open] .notif-panel{top:70px!important;right:10px!important;left:10px!important;width:auto!important;}
}

/* =========================================================
   FIX 2026-05-16 - Profil admin à droite + menu jamais coupé
   ========================================================= */
.top-account,
.top-account details,
.account-menu,
.notif-menu{
  overflow:visible!important;
}
.account-menu[open] .account-panel,
.notif-menu[open] .notif-panel{
  position:fixed!important;
  top:66px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:310px!important;
  max-width:calc(100vw - 28px)!important;
  max-height:calc(100vh - 86px)!important;
  overflow:auto!important;
  z-index:2147483000!important;
  box-sizing:border-box!important;
}
.notif-menu[open] .notif-panel{
  right:160px!important;
}
.account-panel .account-card-head{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr)!important;
  align-items:center!important;
}
.account-panel .account-card-head b,
.account-panel .account-card-head small{
  display:block!important;
  max-width:100%!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.account-panel a,
.notif-panel a{
  width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .account-menu[open] .account-panel,
  .notif-menu[open] .notif-panel{
    top:68px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-width:none!important;
  }
}

/* ===== FIX FINAL V132 - menu profil admin desktop jamais coupé =====
   Le panneau était positionné par rapport au bouton, avec des règles !important
   contradictoires. On l'ancre maintenant directement dans la fenêtre sur PC. */
@media (min-width:901px){
  body.admin-space .top-account,
  body:not(.employee-space) .top-account{
    overflow:visible!important;
  }
  body.admin-space .top-account details,
  body:not(.employee-space) .top-account details{
    position:static!important;
  }
  body.admin-space .account-panel,
  body.admin-space .notif-panel,
  body:not(.employee-space) .account-panel,
  body:not(.employee-space) .notif-panel{
    position:fixed!important;
    top:68px!important;
    right:16px!important;
    left:auto!important;
    bottom:auto!important;
    width:320px!important;
    max-width:calc(100vw - 32px)!important;
    min-width:0!important;
    box-sizing:border-box!important;
    transform:none!important;
    max-height:calc(100vh - 86px)!important;
    overflow:auto!important;
    z-index:999999!important;
  }
  body.admin-space .account-card-head,
  body:not(.employee-space) .account-card-head{
    min-width:0!important;
  }
  body.admin-space .account-card-head div,
  body:not(.employee-space) .account-card-head div{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  body.admin-space .account-card-head b,
  body.admin-space .account-card-head small,
  body:not(.employee-space) .account-card-head b,
  body:not(.employee-space) .account-card-head small{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* FIX 2026-05-16 - bouton Réglages notifications : vrai bouton, pas de retour Accueil */
.notif-actions .notif-settings-btn{border:0;cursor:pointer;font:inherit;text-align:center;}
.notif-actions .notif-settings-btn:hover{filter:brightness(1.08);}

/* MCB 2026 notif settings scroll target */
#account-settings{scroll-margin-top:120px!important;}
#account-settings.mcb-account-settings-focus{outline:1px solid rgba(59,130,246,.55);outline-offset:6px;border-radius:18px;}
.notif-actions .notif-settings-btn{display:flex!important;align-items:center!important;justify-content:center!important;}


/* v20260516 - Comptable : catégories dynamiques selon permissions du rôle */
body.employee-space .accountant-top-nav{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  padding:12px 24px!important;
  margin-top:74px!important;
  background:rgba(6,16,32,.82)!important;
  border-bottom:1px solid rgba(148,190,255,.14)!important;
  position:relative!important;
  z-index:50!important;
}
body.employee-space .accountant-top-nav a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border-radius:14px!important;
  background:rgba(20,54,90,.78)!important;
  border:1px solid rgba(148,190,255,.20)!important;
  color:#eef6ff!important;
  text-decoration:none!important;
  font-weight:800!important;
}
body.employee-space .accountant-top-nav a:hover{background:rgba(0,117,255,.86)!important;}
body.employee-space .accountant-top-nav .ui-icon svg{stroke:#9ed8ff!important;}
body.employee-space .comptable-home{padding-top:22px!important;}
@media(max-width:760px){
  body.employee-space .accountant-top-nav{display:none!important;margin-top:0!important;}
}


/* === FIX FINAL 2026-05-16 : séparation comptable / salarié + header propre === */

/* Comptable : pas de sidebar, header propre, contenu aligné */
body.accountant-space{
  background:#061020!important;
  padding-top:96px!important;
  padding-left:0!important;
  overflow-x:hidden!important;
}
body.accountant-space .sidebar{display:none!important;}
body.accountant-space .main,
body.accountant-space main,
body.accountant-space .content,
body.accountant-space .page{
  margin-left:0!important;
  padding-left:clamp(18px,6vw,116px)!important;
  padding-right:clamp(18px,6vw,116px)!important;
  max-width:none!important;
}
body.accountant-space .top-account{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:72px!important;
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  padding:0 24px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.14)!important;
  z-index:4000!important;
}
body.accountant-space .accountant-top-nav{
  position:fixed!important;
  top:72px!important;
  left:0!important;
  right:0!important;
  min-height:54px!important;
  margin:0!important;
  padding:8px 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.14)!important;
  z-index:3000!important;
}
body.accountant-space .accountant-top-nav a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:8px 14px!important;
  border-radius:14px!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.24)!important;
  color:#eef6ff!important;
  text-decoration:none!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
body.accountant-space .accountant-top-nav a:hover{background:#12365d!important;}
body.accountant-space .comptable-home{
  padding-top:28px!important;
  max-width:1500px!important;
  margin:0 auto!important;
}
body.accountant-space .account-panel,
body.accountant-space .notif-panel{
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.25)!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.55)!important;
}

/* Salarié : ne doit PAS reprendre le rendu comptable */
body.employee-space:not(.accountant-space) .accountant-top-nav{display:none!important;}
body.employee-space:not(.accountant-space){
  background:#061020!important;
}

/* Neutralise anciens correctifs cassés qui poussaient la nav comptable trop bas */
body.employee-space .accountant-top-nav{
  margin-top:0!important;
}

/* Desktop : évite que la barre comptable se colle à gauche ou dépasse */
@media (min-width: 761px){
  body.accountant-space .account-summary{max-width:220px!important;}
  body.accountant-space .account-name{max-width:130px!important;}
}

/* Mobile comptable */
@media (max-width: 760px){
  body.accountant-space{
    padding-top:76px!important;
  }
  body.accountant-space .accountant-top-nav{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    justify-content:flex-start!important;
    padding:10px 14px!important;
    overflow-x:auto!important;
  }
  body.accountant-space .main,
  body.accountant-space main,
  body.accountant-space .content,
  body.accountant-space .page{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}


/* === FIX ULTRA APPROFONDI COMPTABLE 2026-05-16 ===
   Objectif : menu compte en haut à droite, nav comptable sous le header,
   plus de sidebar/fond salarié mélangé, pas de décalage horizontal.
*/
html, body.accountant-space{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
}
body.accountant-space{
  padding-top:142px!important;
  padding-left:0!important;
  background:
    radial-gradient(circle at 42% 0%, rgba(0,80,180,.20), transparent 36%),
    #061020!important;
}

/* Aucune sidebar pour comptable */
body.accountant-space .sidebar{
  display:none!important;
  width:0!important;
  min-width:0!important;
  overflow:hidden!important;
}

/* Le compte comptable reste uniquement en haut à droite */
body.accountant-space .top-account{
  position:fixed!important;
  top:14px!important;
  right:24px!important;
  left:auto!important;
  width:auto!important;
  max-width:calc(100vw - 48px)!important;
  height:48px!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  z-index:10000!important;
}
body.accountant-space .top-account::before{
  content:""!important;
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  height:72px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.14)!important;
  z-index:-1!important;
}

/* Nav comptable indépendante, sous le compte */
body.accountant-space .accountant-top-nav{
  position:fixed!important;
  top:72px!important;
  left:0!important;
  right:0!important;
  width:100vw!important;
  min-height:58px!important;
  height:auto!important;
  margin:0!important;
  padding:8px 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  background:#071120!important;
  border-top:0!important;
  border-bottom:1px solid rgba(148,190,255,.14)!important;
  box-shadow:0 10px 25px rgba(0,0,0,.18)!important;
  z-index:9000!important;
  overflow:visible!important;
}
body.accountant-space .accountant-top-nav a{
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:40px!important;
  height:40px!important;
  padding:0 16px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  border-radius:14px!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.24)!important;
  color:#eef6ff!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.accountant-space .accountant-top-nav a:hover{
  background:#14365a!important;
  border-color:rgba(125,211,252,.42)!important;
}
body.accountant-space .accountant-top-nav .ui-icon,
body.accountant-space .accountant-top-nav .ui-icon svg{
  width:18px!important;
  height:18px!important;
  stroke:#9ed8ff!important;
}

/* Contenu comptable : plus de marge sidebar, plus de vide énorme */
body.accountant-space .main,
body.accountant-space main.main{
  margin-left:0!important;
  padding:32px clamp(18px,6vw,112px) 38px!important;
  min-height:calc(100vh - 142px)!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
body.accountant-space .comptable-home{
  max-width:1480px!important;
  margin:0 auto!important;
  padding-top:0!important;
}
body.accountant-space .comptable-home .hero,
body.accountant-space .comptable-home .card:first-child{
  margin-top:0!important;
}

/* Bulle du profil : se place sous l'avatar, jamais à gauche */
body.accountant-space .account-menu,
body.accountant-space .notif-menu{
  position:relative!important;
  margin:0!important;
}
body.accountant-space .account-summary,
body.accountant-space .notif-btn{
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.24)!important;
}
body.accountant-space .account-panel,
body.accountant-space .notif-panel{
  position:fixed!important;
  top:66px!important;
  right:24px!important;
  left:auto!important;
  width:320px!important;
  max-width:calc(100vw - 48px)!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.25)!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.55)!important;
  z-index:11000!important;
}

/* Salarié séparé : ne prend pas le header comptable */
body.employee-space:not(.accountant-space) .accountant-top-nav{
  display:none!important;
}
body.employee-space:not(.accountant-space){
  background:#061020!important;
}

/* Mobile / petit écran */
@media(max-width:900px){
  body.accountant-space{
    padding-top:78px!important;
  }
  body.accountant-space .top-account{
    top:10px!important;
    right:10px!important;
    max-width:calc(100vw - 20px)!important;
  }
  body.accountant-space .accountant-top-nav{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:auto!important;
    justify-content:flex-start!important;
    padding:10px 12px!important;
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
  }
  body.accountant-space .main,
  body.accountant-space main.main{
    padding:18px 14px 30px!important;
  }
}


/* === FIX FINAL COMPTABLE 2026-05-16 : header identique logique salarié ===
   Objectif : plus de grosse zone vide, barre profil + navigation compacte en haut,
   contenu remonté et menu profil correctement placé sous l'avatar. */
body.accountant-space{
  background:#061020!important;
  padding-top:118px!important;
  padding-left:0!important;
  margin-left:0!important;
  overflow-x:hidden!important;
}
body.accountant-space .sidebar{display:none!important;}

body.accountant-space .top-account{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:78px!important;
  padding:10px clamp(14px,2vw,26px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.16)!important;
  z-index:6000!important;
}

/* navigation comptable collée sous le bandeau, même esprit que salarié */
body.accountant-space .accountant-top-nav{
  position:fixed!important;
  top:78px!important;
  left:0!important;
  right:0!important;
  min-height:52px!important;
  margin:0!important;
  padding:7px clamp(14px,2vw,26px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.16)!important;
  z-index:5000!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scrollbar-width:thin!important;
}
body.accountant-space .accountant-top-nav a{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:38px!important;
  padding:7px 14px!important;
  border-radius:14px!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.26)!important;
  color:#eef6ff!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
body.accountant-space .accountant-top-nav a:hover,
body.accountant-space .accountant-top-nav a.active{
  background:#12365d!important;
  border-color:rgba(96,165,250,.55)!important;
}
body.accountant-space .accountant-top-nav .ui-icon,
body.accountant-space .accountant-top-nav svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}

/* contenu comptable : mêmes marges confortables que l'espace employé */
body.accountant-space .main{
  margin-left:0!important;
  padding:34px clamp(18px,6vw,112px) 60px!important;
  max-width:none!important;
}
body.accountant-space .comptable-home{
  padding-top:0!important;
  margin:0 auto!important;
  max-width:1500px!important;
}
body.accountant-space .comptable-home > .hero,
body.accountant-space .comptable-home > .card:first-child,
body.accountant-space .dash-hero{
  margin-top:0!important;
}

/* menu profil : sous l'avatar, jamais au milieu de l'écran */
body.accountant-space .account-menu,
body.accountant-space .notif-menu{
  position:relative!important;
}
body.accountant-space .account-panel,
body.accountant-space .notif-panel{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  width:320px!important;
  max-width:calc(100vw - 24px)!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.26)!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.58)!important;
  z-index:9000!important;
}

/* salarié : ne pas reprendre les règles comptables */
body.employee-space:not(.accountant-space){
  padding-top:84px!important;
  background:#061020!important;
}
body.employee-space:not(.accountant-space) .accountant-top-nav{
  display:none!important;
}

/* mobile */
@media (max-width:760px){
  body.accountant-space{
    padding-top:84px!important;
  }
  body.accountant-space .top-account{
    height:74px!important;
    padding:10px 14px!important;
  }
  body.accountant-space .accountant-top-nav{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    justify-content:flex-start!important;
    padding:10px 14px!important;
    margin-top:0!important;
  }
  body.accountant-space .main{
    padding:18px 14px 52px!important;
  }
  body.accountant-space .account-panel,
  body.accountant-space .notif-panel{
    position:fixed!important;
    top:76px!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
  }
}


/* ==========================================================
   FIX ULTRA 2026-05-16 — ESPACE COMPTABLE IDENTIQUE CONFORT EMPLOYÉ
   Corrige le gros vide sous le header, la navigation trop basse
   et le contenu comptable qui démarre au milieu de la page.
   ========================================================== */

html body.accountant-space{
  margin:0!important;
  padding:0!important;
  padding-top:126px!important;
  padding-left:0!important;
  background:#061020!important;
  overflow-x:hidden!important;
}

html body.accountant-space .sidebar,
html body.accountant-space aside.sidebar{
  display:none!important;
  width:0!important;
  min-width:0!important;
}

/* Barre compte en haut, comme employé */
html body.accountant-space .top-account{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100vw!important;
  height:72px!important;
  min-height:72px!important;
  margin:0!important;
  padding:10px 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.16)!important;
  z-index:10000!important;
  box-sizing:border-box!important;
}

/* Barre catégories juste sous le header, sans vide */
html body.accountant-space .accountant-top-nav{
  position:fixed!important;
  top:72px!important;
  left:0!important;
  right:0!important;
  width:100vw!important;
  height:54px!important;
  min-height:54px!important;
  margin:0!important;
  padding:7px 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  background:#071120!important;
  border-top:0!important;
  border-bottom:1px solid rgba(148,190,255,.16)!important;
  z-index:9999!important;
  box-sizing:border-box!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}

/* Boutons nav compactes */
html body.accountant-space .accountant-top-nav a{
  flex:0 0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0 14px!important;
  margin:0!important;
  border-radius:14px!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.26)!important;
  color:#eef6ff!important;
  text-decoration:none!important;
  font-size:15px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
}
html body.accountant-space .accountant-top-nav a:hover{
  background:#12365d!important;
  border-color:rgba(96,165,250,.55)!important;
}
html body.accountant-space .accountant-top-nav .ui-icon,
html body.accountant-space .accountant-top-nav svg{
  width:18px!important;
  height:18px!important;
  flex:0 0 18px!important;
}

/* MAIN : le point important — suppression totale du gros vide */
html body.accountant-space main.main,
html body.accountant-space .main{
  margin:0!important;
  margin-left:0!important;
  padding:18px clamp(18px,5vw,92px) 60px!important;
  max-width:none!important;
  width:100%!important;
  box-sizing:border-box!important;
}

/* Container comptable remonté sous la nav */
html body.accountant-space .comptable-home{
  margin:0 auto!important;
  padding:0!important;
  padding-top:0!important;
  max-width:1500px!important;
  width:100%!important;
  transform:none!important;
}

/* On neutralise tous les vieux correctifs qui créaient du vide */
html body.accountant-space .comptable-home,
html body.accountant-space .dash,
html body.accountant-space .dashboard,
html body.accountant-space .page,
html body.accountant-space .content,
html body.accountant-space .container{
  margin-top:0!important;
}

/* Première carte : démarre directement, comme l’espace employé */
html body.accountant-space .comptable-home > *:first-child{
  margin-top:0!important;
}

/* Menu profil : sous l’avatar, pas au milieu */
html body.accountant-space .account-menu,
html body.accountant-space .notif-menu{
  position:relative!important;
}
html body.accountant-space .account-panel,
html body.accountant-space .notif-panel{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  bottom:auto!important;
  width:320px!important;
  max-width:calc(100vw - 24px)!important;
  transform:none!important;
  background:#0d1728!important;
  border:1px solid rgba(148,190,255,.26)!important;
  border-radius:18px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.58)!important;
  z-index:20000!important;
  box-sizing:border-box!important;
}

/* Salarié reste séparé : pas de rendu comptable */
html body.employee-space:not(.accountant-space) .accountant-top-nav{
  display:none!important;
}
html body.employee-space:not(.accountant-space){
  background:#061020!important;
}

/* Responsive */
@media (max-width:760px){
  html body.accountant-space{
    padding-top:74px!important;
  }
  html body.accountant-space .top-account{
    height:74px!important;
    min-height:74px!important;
    padding:10px 14px!important;
  }
  html body.accountant-space .accountant-top-nav{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    justify-content:flex-start!important;
    padding:10px 14px!important;
  }
  html body.accountant-space main.main,
  html body.accountant-space .main{
    padding:14px!important;
  }
  html body.accountant-space .account-panel,
  html body.accountant-space .notif-panel{
    position:fixed!important;
    top:76px!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
  }
}

/* ==========================================================
   FIX FINAL COMPTABLE 2026-05-16
   Objectif : même structure que l'espace employé.
   - navigation comptable dans le bandeau profil
   - suppression de la deuxième barre fixe qui créait un grand vide
   - menu profil ancré sous le bouton, sans fond cassé
   ========================================================== */
html body.accountant-space{
  margin:0!important;
  padding:84px 0 0 0!important;
  background:#061020!important;
  overflow-x:hidden!important;
}
html body.accountant-space .sidebar,
html body.accountant-space aside.sidebar{display:none!important;}
html body.accountant-space .top-account{
  position:fixed!important;
  top:0!important;left:0!important;right:0!important;
  width:100vw!important;height:84px!important;min-height:84px!important;
  margin:0!important;padding:0 52px!important;
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  gap:12px!important;
  background:#071120!important;
  border-bottom:1px solid rgba(148,190,255,.16)!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  z-index:10000!important;
}
html body.accountant-space .top-account .accountant-top-nav{
  position:static!important;
  order:1!important;
  width:auto!important;height:auto!important;min-height:0!important;
  margin:0 8px 0 0!important;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  flex-wrap:nowrap!important;gap:10px!important;
  background:transparent!important;border:0!important;
  overflow:visible!important;z-index:auto!important;
}
html body.accountant-space .top-account .notif-menu{order:2!important;position:relative!important;flex:0 0 auto!important;}
html body.accountant-space .top-account .account-menu{order:3!important;position:relative!important;flex:0 0 auto!important;}
html body.accountant-space .top-account .accountant-top-nav a{
  flex:0 0 auto!important;width:auto!important;min-width:0!important;max-width:none!important;
  height:44px!important;min-height:44px!important;
  padding:0 18px!important;
  display:inline-flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:8px!important;
  border-radius:16px!important;
  background:#0d1728!important;border:1px solid rgba(148,190,255,.26)!important;
  color:#eef6ff!important;text-decoration:none!important;
  font-size:15px!important;font-weight:900!important;line-height:1!important;white-space:nowrap!important;
  box-sizing:border-box!important;
}
html body.accountant-space .top-account .accountant-top-nav a:hover,
html body.accountant-space .top-account .accountant-top-nav a.active{
  background:#12365d!important;border-color:rgba(96,165,250,.55)!important;
}
html body.accountant-space .top-account .accountant-top-nav a .ui-icon,
html body.accountant-space .top-account .accountant-top-nav a .ui-icon svg{
  width:18px!important;height:18px!important;min-width:18px!important;flex:0 0 18px!important;
}
html body.accountant-space .account-summary,
html body.accountant-space .notif-btn{
  height:46px!important;min-height:46px!important;
  background:#0d1728!important;border:1px solid rgba(148,190,255,.26)!important;
  border-radius:16px!important;color:#eef6ff!important;
}
html body.accountant-space main.main,
html body.accountant-space .main{
  margin:0!important;margin-left:0!important;
  width:100%!important;max-width:none!important;
  padding:28px clamp(18px,5vw,92px) 60px!important;
  box-sizing:border-box!important;
}
html body.accountant-space .comptable-home{
  margin:0 auto!important;padding:0!important;max-width:1500px!important;width:100%!important;transform:none!important;
}
html body.accountant-space .comptable-home > *:first-child{margin-top:0!important;}
html body.accountant-space .account-menu[open] .account-panel,
html body.accountant-space .notif-menu[open] .notif-panel{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;left:auto!important;bottom:auto!important;
  width:320px!important;max-width:calc(100vw - 24px)!important;
  max-height:calc(100vh - 104px)!important;overflow:auto!important;
  transform:none!important;background:#0d1728!important;
  border:1px solid rgba(148,190,255,.26)!important;border-radius:18px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.58)!important;
  z-index:2147483000!important;box-sizing:border-box!important;
}
html body.accountant-space .notif-menu[open] .notif-panel{right:0!important;}
html body.accountant-space .account-panel .account-card-head{
  display:grid!important;grid-template-columns:52px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;
}
html body.accountant-space .account-panel .account-card-head div{min-width:0!important;overflow:hidden!important;}
html body.accountant-space .account-panel .account-card-head b,
html body.accountant-space .account-panel .account-card-head small{
  display:block!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
}
@media(max-width:1100px){
  html body.accountant-space .top-account{padding:10px 14px!important;height:auto!important;min-height:84px!important;display:grid!important;grid-template-columns:auto 1fr!important;grid-template-areas:"notif account" "nav nav"!important;align-items:center!important;gap:10px!important;}
  html body.accountant-space{padding-top:150px!important;}
  html body.accountant-space .top-account .notif-menu{grid-area:notif!important;justify-self:end!important;}
  html body.accountant-space .top-account .account-menu{grid-area:account!important;justify-self:end!important;}
  html body.accountant-space .top-account .accountant-top-nav{grid-area:nav!important;width:100%!important;overflow-x:auto!important;justify-content:flex-start!important;padding-bottom:2px!important;}
}
@media(max-width:760px){
  html body.accountant-space{padding-top:158px!important;}
  html body.accountant-space .top-account{grid-template-columns:auto 1fr!important;}
  html body.accountant-space .account-menu[open] .account-panel,
  html body.accountant-space .notif-menu[open] .notif-panel{
    position:fixed!important;top:78px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;
  }
  html body.accountant-space main.main,
  html body.accountant-space .main{padding:16px 14px 52px!important;}
}

/* ==========================================================
   FIX 2026-05-16 — Header comptable + espace salarié
   - Comptable : suppression de la ligne inutile sous le header
   - Salarié desktop : suppression du grand vide entre le header et Accueil
   ========================================================== */
html body.accountant-space .top-account,
html body.accountant-space .top-account::before,
html body.accountant-space .accountant-top-nav,
html body.accountant-space .top-account .accountant-top-nav{
  border-bottom:0!important;
  box-shadow:none!important;
}
html body.accountant-space main.main,
html body.accountant-space .main{
  padding-top:22px!important;
}

@media (min-width:901px){
  html body.employee-space:not(.accountant-space){
    padding-top:0!important;
  }
  html body.employee-space:not(.accountant-space) .top-account{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:72px!important;
    min-height:72px!important;
    margin:0!important;
    padding:10px 28px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:10px!important;
    background:#071120!important;
    border-bottom:1px solid rgba(148,190,255,.16)!important;
    border-radius:0!important;
    box-shadow:none!important;
    z-index:6000!important;
  }
  html body.employee-space:not(.accountant-space) .top-account .employee-top-nav{
    order:1!important;
    display:flex!important;
    width:auto!important;
    max-width:none!important;
    margin:0 10px 0 0!important;
    padding:0!important;
    gap:10px!important;
    align-items:center!important;
    justify-content:flex-end!important;
  }
  html body.employee-space:not(.accountant-space) .top-account .notif-menu{order:2!important;position:relative!important;}
  html body.employee-space:not(.accountant-space) .top-account .account-menu{order:3!important;position:relative!important;}
  html body.employee-space:not(.accountant-space) .top-account .employee-top-nav a{
    width:auto!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 18px!important;
    border-radius:16px!important;
    background:#0d1728!important;
    border:1px solid rgba(148,190,255,.26)!important;
    color:#eef6ff!important;
    font-size:15px!important;
    font-weight:900!important;
    white-space:nowrap!important;
  }
  html body.employee-space:not(.accountant-space) main.main,
  html body.employee-space:not(.accountant-space) .main{
    margin:0!important;
    margin-left:0!important;
    padding:88px 24px 80px!important;
    width:100%!important;
    max-width:none!important;
  }
  html body.employee-space:not(.accountant-space) .page-head-actions{
    margin:0 0 12px!important;
  }
  html body.employee-space:not(.accountant-space) .page-head-actions h1{
    margin-top:0!important;
  }
  html body.employee-space:not(.accountant-space) .account-menu[open] .account-panel,
  html body.employee-space:not(.accountant-space) .notif-menu[open] .notif-panel{
    position:absolute!important;
    top:calc(100% + 10px)!important;
    right:0!important;
    left:auto!important;
  }
}


/* MCB 2026-05-16 - correction approfondie mobile salarié + suppression visuelle anciens rôles */
@media (max-width: 760px){
  body.employee-space.page-employees-php{background:#06101f!important;overflow-x:hidden!important;}
  body.employee-space.page-employees-php .main{padding:12px 14px 96px!important;margin:0!important;width:100%!important;max-width:100vw!important;overflow-x:hidden!important;}
  body.employee-space .top-account{position:sticky!important;top:0!important;z-index:100!important;display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;gap:8px!important;align-items:center!important;padding:calc(8px + env(safe-area-inset-top)) 14px 8px!important;background:rgba(6,16,31,.98)!important;border-bottom:1px solid rgba(126,171,226,.22)!important;backdrop-filter:blur(14px)!important;min-height:64px!important;}
  body.employee-space .top-account .notif-menu{grid-column:1!important;width:48px!important;height:48px!important;margin:0!important;}
  body.employee-space .top-account .notif-toggle{width:48px!important;height:48px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;}
  body.employee-space .top-account .account-menu{grid-column:2!important;width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;}
  body.employee-space .top-account .account-summary{height:48px!important;min-height:48px!important;width:100%!important;padding:0 12px!important;display:flex!important;align-items:center!important;gap:10px!important;border-radius:20px!important;overflow:hidden!important;}
  body.employee-space .top-account .account-avatar{width:38px!important;height:38px!important;min-width:38px!important;font-size:13px!important;border-radius:999px!important;}
  body.employee-space .top-account .account-summary strong{font-size:17px!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;min-width:0!important;}
  body.employee-space .top-account .account-summary small,
  body.employee-space .top-account .account-summary .role-badge{display:none!important;}
  body.employee-space .mobile-category-nav{display:flex!important;position:sticky!important;top:64px!important;z-index:90!important;width:100%!important;max-width:100vw!important;padding:8px 14px!important;margin:0!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;background:rgba(6,16,31,.98)!important;border-bottom:1px solid rgba(126,171,226,.16)!important;scrollbar-width:none!important;}
  body.employee-space .mobile-category-nav::-webkit-scrollbar{display:none!important;}
  body.employee-space .mobile-category-nav a{flex:0 0 auto!important;min-width:112px!important;height:44px!important;padding:0 12px!important;border-radius:16px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:center!important;gap:7px!important;font-size:13px!important;line-height:1!important;font-weight:900!important;white-space:nowrap!important;background:rgba(15,31,52,.88)!important;border:1px solid rgba(126,171,226,.28)!important;color:#eaf5ff!important;overflow:hidden!important;}
  body.employee-space .mobile-category-nav a .ui-icon{width:18px!important;height:18px!important;min-width:18px!important;margin:0!important;}
  body.employee-space .mobile-category-nav a span{display:inline!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.employee-space.page-employees-php .page-head-actions{margin:18px 0 12px!important;padding:0!important;display:block!important;}
  body.employee-space.page-employees-php .page-head-actions h1{font-size:34px!important;line-height:1.05!important;margin:0 0 8px!important;}
  body.employee-space.page-employees-php .page-head-actions .muted{font-size:17px!important;line-height:1.45!important;max-width:100%!important;}
  body.employee-space.page-employees-php .employee-category-tabs{position:relative!important;top:auto!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin:18px 0 20px!important;padding:12px!important;border-radius:22px!important;overflow:visible!important;}
  body.employee-space.page-employees-php .employee-tab{width:100%!important;min-width:0!important;min-height:54px!important;padding:0 10px!important;border-radius:18px!important;font-size:16px!important;line-height:1.15!important;text-align:center!important;white-space:normal!important;}
  body.employee-space.page-employees-php .stock-stats.employee-stats{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;margin:0!important;}
  body.employee-space.page-employees-php .stock-stat{min-height:118px!important;width:100%!important;padding:22px!important;border-radius:24px!important;display:flex!important;align-items:center!important;gap:18px!important;}
  body.employee-space.page-employees-php .stock-stat strong{font-size:32px!important;}
  body.employee-space.page-employees-php .stock-stat span{font-size:16px!important;}
}

/* === MCB 2026-05-16 FINAL : mobile propre employé/comptable + suppression doublons === */
@media (max-width: 760px){
  html, body{max-width:100%!important;overflow-x:hidden!important;background:#06101f!important;}

  /* 1) Espace Employé : plus de grand vide et plus de catégories en double */
  body.employee-space.page-employees-php{padding-top:0!important;}
  body.employee-space.page-employees-php .top-quickbar{display:none!important;}
  body.employee-space.page-employees-php .mobile-category-nav{display:none!important;}
  body.employee-space.page-employees-php .top-account{
    position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:999!important;
    width:100%!important;max-width:100%!important;margin:0!important;
    padding:calc(8px + env(safe-area-inset-top)) 14px 8px!important;
    display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;align-items:center!important;
    background:rgba(6,16,31,.98)!important;border-bottom:1px solid rgba(126,171,226,.20)!important;
  }
  body.employee-space.page-employees-php .top-account .notif-menu{grid-column:1!important;grid-row:1!important;width:54px!important;height:54px!important;position:relative!important;margin:0!important;display:block!important;}
  body.employee-space.page-employees-php .top-account .notif-btn,
  body.employee-space.page-employees-php .top-account .notif-toggle{width:54px!important;height:54px!important;min-height:54px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;}
  body.employee-space.page-employees-php .top-account .account-menu{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;margin:0!important;position:relative!important;}
  body.employee-space.page-employees-php .top-account .account-summary{width:100%!important;height:54px!important;min-height:54px!important;border-radius:22px!important;padding:0 14px!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:hidden!important;}
  body.employee-space.page-employees-php .top-account .account-avatar{width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;font-size:14px!important;}
  body.employee-space.page-employees-php .top-account .account-name{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:17px!important;font-weight:900!important;}
  body.employee-space.page-employees-php .top-account .employee-top-nav{display:none!important;}
  body.employee-space.page-employees-php .main{padding-top:18px!important;margin-top:0!important;width:100%!important;max-width:100%!important;}
  body.employee-space.page-employees-php .page-head{margin-top:0!important;padding-top:0!important;}

  /* 2) Comptable mobile : header même logique que Employé, zéro débordement horizontal */
  body.accountant-space{padding-top:0!important;overflow-x:hidden!important;}
  body.accountant-space .top-quickbar{display:none!important;}
  body.accountant-space .top-account{
    position:sticky!important;top:0!important;left:0!important;right:0!important;z-index:999!important;
    width:100%!important;max-width:100vw!important;margin:0!important;box-sizing:border-box!important;
    padding:calc(8px + env(safe-area-inset-top)) 14px 8px!important;
    display:grid!important;grid-template-columns:54px minmax(0,1fr)!important;gap:8px!important;align-items:center!important;
    background:rgba(6,16,31,.98)!important;border-bottom:1px solid rgba(126,171,226,.20)!important;
  }
  body.accountant-space .top-account .notif-menu{grid-column:1!important;grid-row:1!important;width:54px!important;height:54px!important;position:relative!important;margin:0!important;display:block!important;}
  body.accountant-space .top-account .notif-btn,
  body.accountant-space .top-account .notif-toggle{width:54px!important;height:54px!important;min-height:54px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;}
  body.accountant-space .top-account .account-menu{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;margin:0!important;position:relative!important;}
  body.accountant-space .top-account .account-summary{width:100%!important;height:54px!important;min-height:54px!important;border-radius:22px!important;padding:0 14px!important;display:flex!important;align-items:center!important;gap:10px!important;overflow:hidden!important;}
  body.accountant-space .top-account .account-avatar{width:42px!important;height:42px!important;min-width:42px!important;border-radius:999px!important;font-size:14px!important;}
  body.accountant-space .top-account .account-name{display:block!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:17px!important;font-weight:900!important;}
  body.accountant-space .top-account .accountant-top-nav{display:none!important;}
  body.accountant-space .mobile-category-nav{
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;
    width:100%!important;max-width:100vw!important;box-sizing:border-box!important;
    margin:0!important;padding:10px 14px 12px!important;position:relative!important;top:auto!important;left:auto!important;right:auto!important;
    background:rgba(6,16,31,.98)!important;border-bottom:1px solid rgba(126,171,226,.18)!important;overflow:visible!important;
  }
  body.accountant-space .mobile-category-nav a{
    width:100%!important;min-width:0!important;height:58px!important;padding:0 10px!important;border-radius:18px!important;
    display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;
    background:rgba(15,31,52,.88)!important;border:1px solid rgba(126,171,226,.28)!important;color:#eef6ff!important;
    font-size:14px!important;font-weight:900!important;line-height:1.05!important;text-align:center!important;text-decoration:none!important;white-space:normal!important;
  }
  body.accountant-space .mobile-category-nav a.mobile-nav-logout{grid-column:1 / -1!important;}
  body.accountant-space .mobile-category-nav .ui-icon{width:21px!important;height:21px!important;min-width:21px!important;margin:0!important;}
  body.accountant-space .main{width:100%!important;max-width:100vw!important;margin:0!important;padding:18px 14px 32px!important;box-sizing:border-box!important;overflow-x:hidden!important;}
  body.accountant-space .home-v60,
  body.accountant-space .comptable-home{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-sizing:border-box!important;}
  body.accountant-space .home-v60-hero{width:100%!important;max-width:100%!important;margin:0 0 16px!important;padding:22px 18px!important;border-radius:24px!important;box-sizing:border-box!important;}
  body.accountant-space .home-v60-hero h1{font-size:34px!important;line-height:1.05!important;word-break:break-word!important;}
  body.accountant-space .home-v60-hero p{font-size:18px!important;line-height:1.45!important;}
  body.accountant-space .home-v60-actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important;}
  body.accountant-space .home-v60-actions .btn{width:100%!important;min-height:54px!important;justify-content:center!important;font-size:17px!important;border-radius:16px!important;}
  body.accountant-space .home-v60-stats{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:100%!important;}
  body.accountant-space .home-v60-stat{width:100%!important;min-height:86px!important;box-sizing:border-box!important;}
}


/* ==========================================================
   V108 - CORRECTION FINALE MOBILE EMPLOYÉ + COMPTABLE
   - un seul menu mobile (suppression des catégories en double)
   - header comptable repris sur le même modèle que salarié
   - suppression du grand espace au-dessus du header
   - menu profil salarié aligné sur le comportement comptable
   ========================================================== */
@media (max-width: 900px){
  html, body{
    margin:0 !important;
    padding:0 !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    background:#061020 !important;
  }
  body.employee-space,
  body.accountant-space{
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    background:#061020 !important;
    -webkit-text-size-adjust:100% !important;
  }
  body.employee-space *, body.employee-space *::before, body.employee-space *::after,
  body.accountant-space *, body.accountant-space *::before, body.accountant-space *::after{
    box-sizing:border-box !important;
  }

  /* Zéro doublon : la navigation est uniquement dans le header profil. */
  body.employee-space .mobile-category-nav,
  body.accountant-space .mobile-category-nav,
  body.employee-space .clean-topbar,
  body.employee-space .top-quickbar,
  body.accountant-space .clean-topbar,
  body.accountant-space .top-quickbar{
    display:none !important;
    visibility:visible !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
  }

  body.employee-space .top-account,
  body.accountant-space .top-account{
    position:relative !important;
    inset:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:8px max(12px, env(safe-area-inset-left)) 12px max(12px, env(safe-area-inset-right)) !important;
    display:grid !important;
    grid-template-columns:48px minmax(0,1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    gap:10px !important;
    align-items:center !important;
    justify-content:stretch !important;
    overflow:visible !important;
    background:linear-gradient(180deg, rgba(6,14,28,.98), rgba(7,18,36,.94)) !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.20) !important;
    border-radius:0 0 18px 18px !important;
    box-shadow:0 12px 24px rgba(0,0,0,.18) !important;
    z-index:50 !important;
  }

  body.employee-space .top-account details,
  body.accountant-space .top-account details{position:relative !important;min-width:0 !important;margin:0 !important;}

  body.employee-space .top-account .notif-menu,
  body.accountant-space .top-account .notif-menu{grid-area:notif !important;width:48px !important;min-width:48px !important;max-width:48px !important;height:48px !important;justify-self:start !important;}
  body.employee-space .top-account .notif-btn,
  body.accountant-space .top-account .notif-btn{width:48px !important;min-width:48px !important;max-width:48px !important;height:48px !important;min-height:48px !important;margin:0 !important;padding:0 !important;display:flex !important;align-items:center !important;justify-content:center !important;border-radius:16px !important;background:#0d1728 !important;border:1px solid rgba(148,190,255,.28) !important;box-shadow:none !important;}

  body.employee-space .top-account .account-menu,
  body.accountant-space .top-account .account-menu{grid-area:account !important;width:100% !important;min-width:0 !important;max-width:100% !important;justify-self:stretch !important;}
  body.employee-space .top-account .account-summary,
  body.accountant-space .top-account .account-summary{width:100% !important;min-width:0 !important;max-width:100% !important;height:48px !important;min-height:48px !important;margin:0 !important;padding:5px 10px 5px 6px !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;gap:10px !important;overflow:hidden !important;border-radius:17px !important;background:#0d1728 !important;border:1px solid rgba(148,190,255,.28) !important;box-shadow:none !important;}
  body.employee-space .top-account .account-avatar,
  body.accountant-space .top-account .account-avatar{width:38px !important;min-width:38px !important;max-width:38px !important;height:38px !important;min-height:38px !important;max-height:38px !important;flex:0 0 38px !important;font-size:15px !important;line-height:1 !important;}
  body.employee-space .top-account .account-name,
  body.accountant-space .top-account .account-name{flex:1 1 auto !important;display:block !important;min-width:0 !important;max-width:100% !important;overflow:hidden !important;white-space:nowrap !important;text-overflow:ellipsis !important;font-size:17px !important;line-height:1 !important;font-weight:900 !important;}
  body.employee-space .top-account .account-arrow,
  body.accountant-space .top-account .account-arrow{flex:0 0 auto !important;margin-left:4px !important;}

  body.employee-space .top-account .employee-top-nav,
  body.accountant-space .top-account .employee-top-nav,
  body.accountant-space .top-account .accountant-top-nav{
    grid-area:nav !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    gap:10px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }
  body.employee-space .top-account .employee-top-nav a,
  body.accountant-space .top-account .employee-top-nav a,
  body.accountant-space .top-account .accountant-top-nav a{
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.26) !important;
    color:#eaf4ff !important;
    font-size:16px !important;
    font-weight:900 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.employee-space .top-account .employee-top-nav a .ui-icon,
  body.accountant-space .top-account .employee-top-nav a .ui-icon,
  body.accountant-space .top-account .accountant-top-nav a .ui-icon{width:20px !important;min-width:20px !important;height:20px !important;}

  body.employee-space > .sidebar,
  body.accountant-space > .sidebar{display:none !important;visibility:visible !important;width:0 !important;height:0 !important;padding:0 !important;margin:0 !important;border:0 !important;overflow:hidden !important;}

  body.employee-space .main,
  body.accountant-space .main{margin:0 !important;padding:18px 14px 110px !important;width:100% !important;max-width:100vw !important;min-width:0 !important;overflow-x:hidden !important;}

  body.employee-space .page-head-actions,
  body.accountant-space .page-head-actions{margin:0 0 14px !important;padding:0 !important;}
  body.employee-space .page-head-actions h1,
  body.accountant-space .page-head-actions h1{font-size:32px !important;line-height:1.05 !important;margin:0 0 8px !important;}

  body.employee-space .notif-panel, body.employee-space .account-panel,
  body.accountant-space .notif-panel, body.accountant-space .account-panel{position:absolute !important;top:56px !important;right:0 !important;left:auto !important;width:min(330px, calc(100vw - 28px)) !important;max-width:calc(100vw - 28px) !important;max-height:72vh !important;overflow:auto !important;z-index:9999 !important;border-radius:18px !important;}
}

@media (max-width: 390px){
  body.employee-space .top-account,
  body.accountant-space .top-account{grid-template-columns:46px minmax(0,1fr) !important;padding-left:10px !important;padding-right:10px !important;gap:8px !important;}
  body.employee-space .top-account .notif-menu, body.employee-space .top-account .notif-btn,
  body.accountant-space .top-account .notif-menu, body.accountant-space .top-account .notif-btn{width:46px !important;min-width:46px !important;max-width:46px !important;height:46px !important;}
  body.employee-space .top-account .account-summary,
  body.accountant-space .top-account .account-summary{height:46px !important;min-height:46px !important;}
  body.employee-space .top-account .account-name,
  body.accountant-space .top-account .account-name{font-size:15px !important;}
  body.employee-space .top-account .employee-top-nav,
  body.accountant-space .top-account .employee-top-nav{gap:8px !important;}
  body.employee-space .top-account .employee-top-nav a,
  body.accountant-space .top-account .employee-top-nav a{font-size:14px !important;height:46px !important;min-height:46px !important;padding:0 6px !important;}
}

/* ==========================================================
   V999 - CORRECTION ULTRA APPROFONDIE FINALE MOBILE
   - Employé : plus d'espace vide au-dessus du header, plus de catégories en double
   - Comptable : header mobile aligné sur la structure Employé
   - Profil employé : panneau identique au comportement comptable
   ========================================================== */
@media (max-width: 900px){
  html, body{
    width:100% !important;
    max-width:100% !important;
    overflow-x:hidden !important;
    margin:0 !important;
    padding:0 !important;
  }
  body.employee-space,
  body.accountant-space{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    overflow-x:hidden !important;
    margin:0 !important;
    padding:0 !important;
    background:#061020 !important;
  }

  /* Le header doit commencer directement en haut : aucun grand vide iPhone/PWA. */
  body.employee-space .top-account,
  body.accountant-space .top-account{
    position:sticky !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    z-index:999 !important;
    transform:none !important;
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:calc(8px + env(safe-area-inset-top, 0px)) 14px 10px !important;
    display:grid !important;
    grid-template-columns:52px minmax(0, 1fr) !important;
    grid-template-areas:"notif account" "nav nav" !important;
    gap:10px !important;
    align-items:center !important;
    justify-content:stretch !important;
    overflow:visible !important;
    border:0 !important;
    border-bottom:1px solid rgba(148,190,255,.20) !important;
    border-radius:0 0 20px 20px !important;
    background:linear-gradient(180deg, rgba(6,16,31,.99), rgba(7,18,36,.96)) !important;
    box-shadow:0 14px 28px rgba(0,0,0,.20) !important;
  }

  body.employee-space .top-account .notif-menu,
  body.accountant-space .top-account .notif-menu{
    grid-area:notif !important;
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    max-width:52px !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    display:block !important;
  }
  body.employee-space .top-account .notif-btn,
  body.accountant-space .top-account .notif-btn,
  body.employee-space .top-account .notif-toggle,
  body.accountant-space .top-account .notif-toggle{
    width:52px !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:18px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.30) !important;
    box-shadow:none !important;
  }

  body.employee-space .top-account .account-menu,
  body.accountant-space .top-account .account-menu{
    grid-area:account !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    position:relative !important;
    justify-self:stretch !important;
  }
  body.employee-space .top-account .account-summary,
  body.accountant-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 13px 0 8px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:11px !important;
    overflow:hidden !important;
    border-radius:20px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.30) !important;
    box-shadow:none !important;
  }
  body.employee-space .top-account .account-avatar,
  body.accountant-space .top-account .account-avatar{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    max-width:42px !important;
    min-height:42px !important;
    max-height:42px !important;
    flex:0 0 42px !important;
    border-radius:999px !important;
    font-size:15px !important;
    line-height:1 !important;
  }
  body.employee-space .top-account .account-avatar img,
  body.accountant-space .top-account .account-avatar img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    border-radius:inherit !important;
  }
  body.employee-space .top-account .account-name,
  body.accountant-space .top-account .account-name,
  body.employee-space .top-account .account-summary strong,
  body.accountant-space .top-account .account-summary strong{
    flex:1 1 auto !important;
    min-width:0 !important;
    display:block !important;
    overflow:hidden !important;
    white-space:nowrap !important;
    text-overflow:ellipsis !important;
    font-size:18px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:#fff !important;
  }
  body.employee-space .top-account .account-arrow,
  body.accountant-space .top-account .account-arrow{
    flex:0 0 auto !important;
    margin-left:auto !important;
  }

  /* Employé : la page possède déjà ses boutons internes Accueil/Pointage/Congés/Planning.
     On masque donc la navigation du header sur employees.php pour supprimer le doublon. */
  body.employee-space.page-employees-php .top-account{
    grid-template-areas:"notif account" !important;
  }
  body.employee-space.page-employees-php .top-account .employee-top-nav{
    display:none !important;
    visibility:visible !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
  }

  /* Comptable : même logique graphique que l'employé, mais avec les modules comptables. */
  body.accountant-space .top-account .accountant-top-nav,
  body.accountant-space .top-account .employee-top-nav{
    grid-area:nav !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
    overflow:visible !important;
  }
  body.accountant-space .top-account .accountant-top-nav a,
  body.accountant-space .top-account .employee-top-nav a{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:52px !important;
    min-height:52px !important;
    margin:0 !important;
    padding:0 10px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:18px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
    color:#eaf4ff !important;
    text-decoration:none !important;
    font-size:15px !important;
    font-weight:900 !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.accountant-space .top-account .accountant-top-nav a .ui-icon,
  body.accountant-space .top-account .employee-top-nav a .ui-icon{
    width:20px !important;
    height:20px !important;
    min-width:20px !important;
    flex:0 0 20px !important;
  }

  /* Aucune ancienne barre horizontale ou catégorie mobile ne doit réapparaitre. */
  body.employee-space .mobile-category-nav,
  body.accountant-space .mobile-category-nav,
  body.employee-space .clean-topbar,
  body.accountant-space .clean-topbar,
  body.employee-space .top-quickbar,
  body.accountant-space .top-quickbar{
    display:none !important;
    visibility:visible !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    overflow:hidden !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }

  body.employee-space .main,
  body.accountant-space .main{
    width:100% !important;
    max-width:100vw !important;
    min-width:0 !important;
    margin:0 !important;
    padding:16px 14px 110px !important;
    overflow-x:hidden !important;
  }
  body.employee-space.page-employees-php .main{
    padding-top:16px !important;
  }

  /* Profil employé et comptable : même panneau, pas coupé, pas décalé. */
  body.employee-space .account-panel,
  body.employee-space .notif-panel,
  body.accountant-space .account-panel,
  body.accountant-space .notif-panel{
    position:fixed !important;
    top:calc(66px + env(safe-area-inset-top, 0px)) !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    max-width:calc(100vw - 24px) !important;
    max-height:70vh !important;
    overflow:auto !important;
    border-radius:20px !important;
    z-index:99999 !important;
    transform:none !important;
  }

  /* Accueil comptable : carte hero et boutons propres sur mobile. */
  body.accountant-space .hero,
  body.accountant-space .dashboard-hero,
  body.accountant-space .accountant-hero{
    width:100% !important;
    max-width:100% !important;
    margin:0 0 16px !important;
    padding:22px 18px !important;
    border-radius:24px !important;
  }
  body.accountant-space .hero-actions,
  body.accountant-space .accountant-hero-actions,
  body.accountant-space .dashboard-hero-actions{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
    width:100% !important;
  }
  body.accountant-space .hero-actions a,
  body.accountant-space .accountant-hero-actions a,
  body.accountant-space .dashboard-hero-actions a{
    width:100% !important;
    justify-content:center !important;
    text-align:center !important;
  }
}

@media (max-width: 430px){
  body.employee-space .top-account,
  body.accountant-space .top-account{
    grid-template-columns:50px minmax(0,1fr) !important;
    gap:8px !important;
    padding-left:12px !important;
    padding-right:12px !important;
  }
  body.employee-space .top-account .notif-menu,
  body.employee-space .top-account .notif-btn,
  body.employee-space .top-account .notif-toggle,
  body.accountant-space .top-account .notif-menu,
  body.accountant-space .top-account .notif-btn,
  body.accountant-space .top-account .notif-toggle{
    width:50px !important;
    height:50px !important;
    min-width:50px !important;
    min-height:50px !important;
  }
  body.employee-space .top-account .account-summary,
  body.accountant-space .top-account .account-summary{
    height:50px !important;
    min-height:50px !important;
  }
  body.accountant-space .top-account .accountant-top-nav{
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
  }
  body.accountant-space .top-account .accountant-top-nav a{
    height:48px !important;
    min-height:48px !important;
    font-size:13px !important;
    padding:0 6px !important;
  }
}

/* ==========================================================
   FIX 2026-05-16 - Mobile employé : catégories visibles dans Accueil
   Objectif : ne plus perdre les onglets Accueil / Pointage / Congés / Planning
   sur la page employees.php en mobile/PWA. Aucune logique PHP modifiée.
   ========================================================== */
@media (max-width: 900px){
  body.employee-space.page-employees-php .employee-category-tabs,
  body.page-employees-php .employee-category-tabs{
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
    position:relative !important;
    top:auto !important;
    z-index:5 !important;
    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    margin:12px 0 18px !important;
    padding:10px !important;
    overflow:visible !important;
    border-radius:22px !important;
    background:rgba(7,17,32,.94) !important;
    border:1px solid rgba(132,176,231,.28) !important;
    box-shadow:0 14px 34px rgba(0,0,0,.22) !important;
  }
  body.employee-space.page-employees-php .employee-category-tabs .employee-tab,
  body.page-employees-php .employee-category-tabs .employee-tab{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    min-height:50px !important;
    height:auto !important;
    padding:10px 8px !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    white-space:normal !important;
    line-height:1.15 !important;
    font-size:14px !important;
    font-weight:900 !important;
    border-radius:17px !important;
  }
  body.employee-space.page-employees-php .employee-category-tabs .employee-tab:nth-child(n+5),
  body.page-employees-php .employee-category-tabs .employee-tab:nth-child(n+5){
    grid-column:1 / -1 !important;
  }
}
@media (max-width: 380px){
  body.employee-space.page-employees-php .employee-category-tabs,
  body.page-employees-php .employee-category-tabs{
    grid-template-columns:1fr !important;
  }
}

/* ==========================================================
   FIX 2026-05-16 - Accueil employé mobile/PC
   - Le header garde les catégories comme dans Mon profil, y compris sur employees.php.
   - Suppression de l'espace inutile au-dessus du header Mon profil mobile.
   - Le premier bouton interne devient Dossiers personnels.
   ========================================================== */
@media (max-width: 900px){
  html body.employee-space.page-employees-php .top-account{
    grid-template-areas:"notif account" "nav nav" !important;
    grid-template-columns:54px minmax(0,1fr) !important;
    row-gap:10px !important;
    min-height:0 !important;
    height:auto !important;
  }
  html body.employee-space.page-employees-php .top-account .employee-top-nav{
    grid-area:nav !important;
    display:grid !important;
    visibility:visible !important;
    opacity:1 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }
  html body.employee-space.page-employees-php .top-account .employee-top-nav a{
    display:flex !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100% !important;
    min-width:0 !important;
    height:48px !important;
    min-height:48px !important;
    padding:0 10px !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:17px !important;
    background:#0d1728 !important;
    border:1px solid rgba(148,190,255,.28) !important;
    color:#eaf4ff !important;
    font-size:15px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    white-space:normal !important;
    line-height:1.05 !important;
  }
  html body.employee-space.page-employees-php .top-account .employee-top-nav .employee-nav-logout{
    grid-column:1 / -1 !important;
  }
  html body.employee-space.page-employees-php .main,
  html body.employee-space.page-employees-php main.main{
    padding-top:18px !important;
    margin-top:0 !important;
  }
  html body.employee-space.page-profile-php,
  html body.employee-space.page-profile-php .top-account{
    margin-top:0 !important;
  }
  html body.employee-space.page-profile-php .main,
  html body.employee-space.page-profile-php main.main{
    padding-top:18px !important;
    margin-top:0 !important;
  }
  html body.employee-space.page-profile-php .profile-page-card{
    margin-top:0 !important;
  }
}


/* === CORRECTION FINALE 2026-05-16 : profil salarié mobile + accès dossier personnel === */
@media (max-width: 760px){
  html, body.employee-space.page-profile-php{
    margin-top:0!important;
    padding-top:0!important;
  }
  html body.employee-space.page-profile-php .top-account{
    position:relative!important;
    top:0!important;
    left:0!important;
    right:auto!important;
    transform:none!important;
    margin:0!important;
    margin-top:0!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    padding-top:calc(8px + env(safe-area-inset-top))!important;
    padding-bottom:10px!important;
  }
  html body.employee-space.page-profile-php .main,
  html body.employee-space.page-profile-php main.main{
    padding-top:10px!important;
    margin-top:0!important;
  }
  html body.employee-space.page-profile-php .profile-page-card{
    margin-top:0!important;
  }
}


/* ==========================================================
   CORRECTION APPROFONDIE 2026-05-16
   Espace salarié : suppression du vide au-dessus du header sur toutes les catégories
   + renommage visuel Accueil -> Employés dans la navigation employé.
   ========================================================== */
html body.employee-space,
html body.employee-space.page-employees-php,
html body.employee-space.page-profile-php,
html body.employee-space.page-planning-php,
html body.employee-space.page-files-php{
  margin-top:0 !important;
  padding-top:0 !important;
}
html body.employee-space .clean-topbar,
html body.employee-space .top-quickbar{
  display:none !important;
}
html body.employee-space .top-account{
  top:0 !important;
  margin-top:0 !important;
}
html body.employee-space > .top-account:first-child,
html body.employee-space .top-account:first-of-type{
  margin-top:0 !important;
}
html body.employee-space .main,
html body.employee-space main.main,
html body.employee-space .content,
html body.employee-space .page-content{
  margin-top:0 !important;
}
html body.employee-space .page-head-actions{
  margin-top:0 !important;
}
html body.employee-space.page-profile-php .profile-page-card,
html body.employee-space.page-profile-php .card:first-of-type,
html body.employee-space.page-employees-php .employee-category-tabs{
  margin-top:0 !important;
}
@media (max-width:900px){
  html body.employee-space,
  html body.employee-space.page-employees-php,
  html body.employee-space.page-profile-php,
  html body.employee-space.page-planning-php,
  html body.employee-space.page-files-php{
    padding-top:0 !important;
    margin-top:0 !important;
  }
  html body.employee-space .top-account{
    position:relative !important;
    inset:auto !important;
    transform:none !important;
    width:100% !important;
    max-width:100vw !important;
    margin:0 !important;
    padding-top:calc(8px + env(safe-area-inset-top)) !important;
    padding-bottom:10px !important;
  }
  html body.employee-space .main,
  html body.employee-space main.main,
  html body.employee-space .content,
  html body.employee-space .page-content{
    padding-top:8px !important;
    margin-top:0 !important;
  }
  html body.employee-space .page-head-actions{
    margin-top:0 !important;
    padding-top:0 !important;
  }
  html body.employee-space.page-profile-php .profile-page-card,
  html body.employee-space.page-profile-php .card:first-of-type{
    margin-top:0 !important;
  }
  html body.employee-space.page-employees-php .employee-category-tabs{
    margin-top:0 !important;
  }
}


/* v130 - Comptables uniquement : header mobile propre + aucun espace vide au-dessus */
@media (max-width:900px){
  body.accountant-space{margin:0!important;padding:0!important;overflow-x:hidden!important;background-position:center top!important;}
  body.accountant-space .clean-topbar,
  body.accountant-space .top-quickbar,
  body.accountant-space .mobile-category-nav{display:none!important;}
  body.accountant-space .top-account{
    position:sticky!important;top:0!important;left:0!important;right:0!important;bottom:auto!important;inset:auto!important;
    width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;max-height:none!important;
    margin:0!important;padding:calc(10px + env(safe-area-inset-top)) 12px 12px!important;
    display:grid!important;grid-template-columns:50px minmax(0,1fr)!important;grid-template-areas:"notif account" "nav nav"!important;
    gap:10px!important;align-items:center!important;justify-content:stretch!important;
    background:linear-gradient(180deg,#071226 0%,#08172d 100%)!important;border:0!important;border-bottom:1px solid rgba(148,190,255,.22)!important;
    border-radius:0 0 20px 20px!important;box-shadow:0 16px 34px rgba(0,0,0,.28)!important;overflow:visible!important;z-index:5000!important;
  }
  body.accountant-space .top-account details{position:static!important;margin:0!important;min-width:0!important;}
  body.accountant-space .top-account summary{list-style:none!important;-webkit-tap-highlight-color:transparent!important;}
  body.accountant-space .top-account summary::-webkit-details-marker{display:none!important;}
  body.accountant-space .top-account .notif-menu{grid-area:notif!important;width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;}
  body.accountant-space .top-account .notif-btn{width:50px!important;height:50px!important;min-width:50px!important;max-width:50px!important;min-height:50px!important;display:flex!important;align-items:center!important;justify-content:center!important;margin:0!important;padding:0!important;border-radius:17px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.32)!important;color:#d9ecff!important;box-shadow:none!important;overflow:visible!important;}
  body.accountant-space .top-account .notif-badge{top:-8px!important;right:-8px!important;z-index:2!important;}
  body.accountant-space .top-account .account-menu{grid-area:account!important;width:100%!important;max-width:100%!important;min-width:0!important;}
  body.accountant-space .top-account .account-summary{width:100%!important;max-width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;margin:0!important;padding:6px 10px 6px 7px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;border-radius:18px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.32)!important;overflow:hidden!important;box-shadow:none!important;}
  body.accountant-space .top-account .account-avatar{width:38px!important;height:38px!important;min-width:38px!important;max-width:38px!important;flex:0 0 38px!important;font-size:15px!important;}
  body.accountant-space .top-account .account-name{display:block!important;flex:1 1 auto!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;font-size:17px!important;font-weight:900!important;line-height:1!important;}
  body.accountant-space .top-account .account-arrow{flex:0 0 auto!important;margin-left:auto!important;color:#9fb8d8!important;}
  body.accountant-space .employee-top-nav.accountant-top-nav{grid-area:nav!important;width:100%!important;max-width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:10px!important;margin:0!important;padding:0!important;overflow:visible!important;}
  body.accountant-space .employee-top-nav.accountant-top-nav a{width:100%!important;min-width:0!important;height:50px!important;min-height:50px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;margin:0!important;padding:0 8px!important;border-radius:18px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.28)!important;color:#eef6ff!important;font-size:15px!important;font-weight:900!important;text-decoration:none!important;line-height:1!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  body.accountant-space .employee-top-nav.accountant-top-nav a .ui-icon{width:20px!important;height:20px!important;min-width:20px!important;}
  body.accountant-space > .sidebar{display:none!important;}
  body.accountant-space .main{margin:0!important;padding:20px 14px 120px!important;width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:hidden!important;}
  body.accountant-space .notif-panel,body.accountant-space .account-panel{position:fixed!important;top:calc(126px + env(safe-area-inset-top))!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;min-width:0!important;max-height:calc(100vh - 150px)!important;overflow:auto!important;border-radius:18px!important;background:#0d1728!important;border:1px solid rgba(148,190,255,.26)!important;box-shadow:0 24px 70px rgba(0,0,0,.55)!important;z-index:99999!important;}
}
@media (max-width:390px){
  body.accountant-space .top-account{grid-template-columns:46px minmax(0,1fr)!important;padding-left:10px!important;padding-right:10px!important;gap:8px!important;}
  body.accountant-space .top-account .notif-menu,body.accountant-space .top-account .notif-btn{width:46px!important;height:46px!important;min-width:46px!important;max-width:46px!important;}
  body.accountant-space .top-account .account-summary{height:46px!important;min-height:46px!important;padding-right:8px!important;}
  body.accountant-space .top-account .account-avatar{width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important;flex-basis:34px!important;}
  body.accountant-space .top-account .account-name{font-size:15px!important;}
  body.accountant-space .employee-top-nav.accountant-top-nav{gap:8px!important;}
  body.accountant-space .employee-top-nav.accountant-top-nav a{height:46px!important;min-height:46px!important;font-size:13px!important;padding:0 6px!important;}
  body.accountant-space .notif-panel,body.accountant-space .account-panel{top:calc(118px + env(safe-area-inset-top))!important;left:10px!important;right:10px!important;}
}
.accountant-auto-password-note{grid-column:1/-1;margin:0 0 4px!important;color:#9fb8d8!important;font-weight:700!important;}

/* ==========================================================
   CORRECTION APPROFONDIE 2026-05-16 — COMPTABLE MOBILE UNIQUEMENT
   Header comptable propre : aucune catégorie coupée, pas de débordement,
   nav intégrée sous le compte comme l'espace salarié.
   ========================================================== */
@media (max-width: 900px){
  html body.accountant-space{
    margin:0!important;
    padding:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    background:#061020!important;
  }
  html body.accountant-space .top-account{
    position:sticky!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:calc(10px + env(safe-area-inset-top,0px)) 12px 12px!important;
    display:grid!important;
    grid-template-columns:50px minmax(0,1fr)!important;
    grid-template-areas:"notif account" "nav nav"!important;
    gap:10px!important;
    align-items:center!important;
    justify-content:stretch!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    background:linear-gradient(180deg,#071226 0%,#08172d 100%)!important;
    border:0!important;
    border-bottom:1px solid rgba(148,190,255,.22)!important;
    border-radius:0 0 20px 20px!important;
    box-shadow:0 16px 34px rgba(0,0,0,.28)!important;
    z-index:5000!important;
  }
  html body.accountant-space .top-account .notif-menu{
    grid-area:notif!important;
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
    height:50px!important;
    position:relative!important;
    margin:0!important;
  }
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle{
    width:50px!important;
    min-width:50px!important;
    height:50px!important;
    min-height:50px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:0!important;
    margin:0!important;
    border-radius:18px!important;
  }
  html body.accountant-space .top-account .account-menu{
    grid-area:account!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    position:relative!important;
    margin:0!important;
  }
  html body.accountant-space .top-account .account-summary{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:6px 10px 6px 7px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:10px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }
  html body.accountant-space .top-account .account-avatar{
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    max-width:38px!important;
    flex:0 0 38px!important;
  }
  html body.accountant-space .top-account .account-name{
    display:block!important;
    flex:1 1 auto!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:17px!important;
    line-height:1!important;
  }
  html body.accountant-space .top-account .account-arrow{
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav,
  html body.accountant-space .top-account .accountant-top-nav{
    grid-area:nav!important;
    position:relative!important;
    top:auto!important;
    left:auto!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:10px!important;
    align-items:stretch!important;
    justify-content:stretch!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav a,
  html body.accountant-space .top-account .accountant-top-nav a{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:50px!important;
    min-height:50px!important;
    margin:0!important;
    padding:0 8px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:7px!important;
    border-radius:18px!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
    white-space:normal!important;
    text-align:center!important;
    line-height:1.05!important;
    font-size:14px!important;
    font-weight:900!important;
  }
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav a .ui-icon,
  html body.accountant-space .top-account .accountant-top-nav a .ui-icon{
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
    flex:0 0 19px!important;
  }
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav a span,
  html body.accountant-space .top-account .accountant-top-nav a span{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav a.employee-nav-logout,
  html body.accountant-space .top-account .accountant-top-nav a.employee-nav-logout{
    grid-column:1 / -1!important;
  }
  html body.accountant-space .mobile-category-nav,
  html body.accountant-space .clean-topbar,
  html body.accountant-space .top-quickbar{
    display:none!important;
    height:0!important;
    max-height:0!important;
    overflow:hidden!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
  }
  html body.accountant-space .main,
  html body.accountant-space main.main{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:20px 14px 110px!important;
    overflow-x:hidden!important;
    box-sizing:border-box!important;
  }
  html body.accountant-space .notif-panel,
  html body.accountant-space .account-panel{
    position:fixed!important;
    top:calc(126px + env(safe-area-inset-top,0px))!important;
    left:10px!important;
    right:10px!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    max-height:calc(100vh - 150px)!important;
    overflow:auto!important;
    z-index:99999!important;
  }
}
@media (max-width:390px){
  html body.accountant-space .top-account{
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:8px!important;
    padding-left:10px!important;
    padding-right:10px!important;
  }
  html body.accountant-space .top-account .notif-menu,
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle{
    width:46px!important;
    min-width:46px!important;
    height:46px!important;
    min-height:46px!important;
  }
  html body.accountant-space .top-account .account-summary{
    height:46px!important;
    min-height:46px!important;
  }
  html body.accountant-space .top-account .account-avatar{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    flex-basis:34px!important;
  }
  html body.accountant-space .top-account .account-name{font-size:15px!important;}
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav,
  html body.accountant-space .top-account .accountant-top-nav{gap:8px!important;}
  html body.accountant-space .top-account .employee-top-nav.accountant-top-nav a,
  html body.accountant-space .top-account .accountant-top-nav a{
    height:46px!important;
    min-height:46px!important;
    font-size:12px!important;
    padding:0 6px!important;
  }
}

/* ==========================================================
   FIX DEFINITIF 2026-05-16 - Comptables uniquement
   Alignement strict de la bulle profil avec la cloche sur mobile.
   ========================================================== */
@media (max-width: 900px){
  html body.accountant-space .top-account{
    align-items:start!important;
  }
  html body.accountant-space .top-account .notif-menu,
  html body.accountant-space .top-account .account-menu{
    align-self:start!important;
    justify-self:stretch!important;
    margin-top:0!important;
    padding-top:0!important;
    top:auto!important;
    transform:none!important;
  }
  html body.accountant-space .top-account .notif-menu{
    justify-self:start!important;
  }
  html body.accountant-space .top-account .account-menu{
    justify-self:stretch!important;
  }
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle,
  html body.accountant-space .top-account .account-summary{
    height:52px!important;
    min-height:52px!important;
    max-height:52px!important;
    margin-top:0!important;
    margin-bottom:0!important;
    padding-top:0!important;
    padding-bottom:0!important;
    transform:none!important;
    display:flex!important;
    align-items:center!important;
  }
  html body.accountant-space .top-account .notif-menu,
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle{
    width:52px!important;
    min-width:52px!important;
    max-width:52px!important;
  }
  html body.accountant-space .top-account .account-summary{
    width:100%!important;
    box-sizing:border-box!important;
  }
  html body.accountant-space .top-account .account-avatar{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    margin:0!important;
    align-self:center!important;
  }
}
@media (max-width:390px){
  html body.accountant-space .top-account .notif-menu,
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle,
  html body.accountant-space .top-account .account-summary{
    height:50px!important;
    min-height:50px!important;
    max-height:50px!important;
  }
  html body.accountant-space .top-account .notif-menu,
  html body.accountant-space .top-account .notif-btn,
  html body.accountant-space .top-account .notif-toggle{
    width:50px!important;
    min-width:50px!important;
    max-width:50px!important;
  }
  html body.accountant-space .top-account .account-avatar{
    width:40px!important;
    height:40px!important;
    min-width:40px!important;
    max-width:40px!important;
  }
}

/* ==========================================================
   FIX 2026-05-16 - Comptables uniquement
   Décalage léger de la bulle profil mobile vers la droite.
   Ne touche pas aux salariés/admin.
   ========================================================== */
@media (max-width:900px){
  html body.accountant-space .top-account .account-menu{
    margin-left:8px !important;
    width:calc(100% - 8px) !important;
    max-width:calc(100% - 8px) !important;
    justify-self:stretch !important;
  }
  html body.accountant-space .top-account .account-summary{
    width:100% !important;
    max-width:100% !important;
  }
}
@media (max-width:390px){
  html body.accountant-space .top-account .account-menu{
    margin-left:7px !important;
    width:calc(100% - 7px) !important;
    max-width:calc(100% - 7px) !important;
  }
}


/* MCB Antivirus dashboard */
.mcb-av-section{margin:26px 0 28px;width:100%;display:block;grid-column:1/-1}.mcb-av-section-full{width:100%;max-width:none}.mcb-av-widget{width:100%;border:1px solid rgba(96,165,250,.32);background:radial-gradient(circle at 12% 0%,rgba(14,165,233,.2),transparent 34%),linear-gradient(135deg,rgba(12,31,58,.96),rgba(4,12,28,.98));box-shadow:0 22px 55px rgba(0,0,0,.22)}.mcb-av-live{display:flex;gap:16px;align-items:center;margin-top:16px;padding:16px;border-radius:22px;background:rgba(14,165,233,.1);border:1px solid rgba(125,211,252,.2)}.mcb-av-live strong{display:block;color:#fff;font-size:16px}.mcb-av-live p{margin:4px 0 10px;color:#bdd5ee}.mcb-av-radar{position:relative;width:58px;height:58px;border-radius:999px;background:rgba(14,165,233,.12);border:1px solid rgba(125,211,252,.28);display:grid;place-items:center;flex:0 0 auto;overflow:hidden}.mcb-av-radar:before{content:"";position:absolute;inset:9px;border-radius:999px;border:2px solid rgba(74,222,128,.55)}.mcb-av-radar span{width:14px;height:14px;border-radius:999px;background:#4ade80;box-shadow:0 0 20px rgba(74,222,128,.9);z-index:2}.mcb-av-radar i{position:absolute;width:50%;height:2px;background:linear-gradient(90deg,rgba(125,211,252,.9),transparent);transform-origin:right center;left:0;top:50%;animation:mcbRadar 1.8s linear infinite}.mcb-av-progress{height:8px;border-radius:999px;overflow:hidden;background:rgba(15,23,42,.7);border:1px solid rgba(148,163,184,.16)}.mcb-av-progress span{display:block;height:100%;width:42%;border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#22c55e,#38bdf8);animation:mcbAvProgress 2.4s ease-in-out infinite}.mcb-av-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.mcb-av-grid>div{padding:14px;border-radius:18px;background:rgba(15,31,54,.72);border:1px solid rgba(148,163,184,.18)}.mcb-av-grid b{display:block;color:#cbd5e1;font-size:13px;margin-bottom:6px}.mcb-av-grid span,.mcb-av-grid strong{color:#fff;font-weight:800}.mcb-av-grid .ok{color:#86efac}.mcb-av-grid .warn{color:#fde68a}.mcb-av-history-title{margin:16px 0 8px;color:#e2e8f0;font-weight:900}.mcb-av-history{display:grid;gap:8px}.mcb-av-history div{display:grid;grid-template-columns:90px 90px 1fr;gap:10px;align-items:center;padding:9px 12px;border-radius:14px;background:rgba(2,6,23,.42);border:1px solid rgba(148,163,184,.12)}.mcb-av-history div.clean b{color:#86efac}.mcb-av-history div.danger b{color:#fecaca}.mcb-av-history span{color:#94a3b8}.mcb-av-history b{color:#e2e8f0;text-transform:uppercase}.mcb-av-history em{font-style:normal;color:#cbd5e1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@keyframes mcbRadar{to{transform:rotate(360deg)}}@keyframes mcbAvProgress{0%{transform:translateX(-120%);width:35%}50%{width:70%}100%{transform:translateX(260%);width:35%}}@media(max-width:760px){.mcb-av-section{margin:18px 0 22px}.mcb-av-live{align-items:flex-start;padding:13px;border-radius:18px}.mcb-av-grid{grid-template-columns:1fr 1fr}.mcb-av-history div{grid-template-columns:70px 70px 1fr;font-size:12px}}

/* MCB - badge antivirus visible dans Messagerie MCB */
.mail-antivirus-status{
  display:flex;align-items:flex-start;gap:12px;margin:0 0 18px;padding:14px 16px;border:1px solid rgba(58,255,173,.26);
  border-radius:18px;background:linear-gradient(135deg,rgba(10,46,44,.92),rgba(4,20,34,.92));color:#eafff6;box-shadow:0 14px 34px rgba(0,0,0,.22);
}
.mail-antivirus-status .mail-antivirus-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(58,255,173,.13);font-size:22px;flex:0 0 auto;}
.mail-antivirus-status strong{display:block;font-size:15px;letter-spacing:-.01em;margin-bottom:4px;color:#fff;}
.mail-antivirus-status span{display:block;font-size:13px;color:#bfffe8;font-weight:800;}
.mail-antivirus-status small{display:block;margin-top:4px;color:rgba(234,255,246,.78);line-height:1.35;}
@media(max-width:760px){.mail-antivirus-status{margin:0 0 14px;padding:12px;border-radius:16px}.mail-antivirus-status span,.mail-antivirus-status small{font-size:12px}}

/* MCB - Messagerie antivirus dynamique envoi/réception */
.mail-antivirus-dynamic-widget{display:block;width:100%;margin:0 0 22px;clear:both;grid-column:1/-1}
.mail-antivirus-dynamic-widget .mcb-av-widget{width:100%;max-width:none;margin:0!important}
.mail-antivirus-dynamic-widget .mcb-av-history div{grid-template-columns:86px 150px 1fr}
.mail-attachment-scan{display:inline-flex;align-items:center;gap:6px;margin-left:8px;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.03em;text-transform:uppercase;border:1px solid rgba(134,239,172,.35);background:rgba(34,197,94,.12);color:#bbf7d0;vertical-align:middle}
.mail-attachment-scan.danger{border-color:rgba(248,113,113,.45);background:rgba(239,68,68,.14);color:#fecaca}
.mail-attachment-save-row{gap:10px;align-items:center;flex-wrap:wrap}
@media(max-width:760px){.mail-antivirus-dynamic-widget{margin:0 0 16px}.mail-antivirus-dynamic-widget .mcb-av-history div{grid-template-columns:68px 118px 1fr}.mail-attachment-scan{margin:6px 0 0;width:max-content}}

/* MCB 2026-05-17 - Messagerie : bloc antivirus différent de l'accueil et placé en bas */
.mail-antivirus-dynamic-widget-bottom{
  margin:34px 0 0 !important;
  padding-top:20px;
  border-top:1px solid rgba(148,163,184,.16);
}
.mail-antivirus-dynamic-widget-bottom .mcb-av-widget{
  border-color:rgba(45,212,191,.34) !important;
  background:
    linear-gradient(135deg,rgba(2,17,32,.98),rgba(6,30,52,.96)) !important;
  box-shadow:0 16px 38px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04) !important;
  border-radius:24px !important;
}
.mail-antivirus-dynamic-widget-bottom .home-v60-widget-head{
  align-items:center;
  border-bottom:1px solid rgba(148,163,184,.12);
  padding-bottom:14px;
  margin-bottom:14px;
}
.mail-antivirus-dynamic-widget-bottom .home-v60-widget-head h2:after{
  content:'Messagerie MCB';
  display:inline-flex;
  margin-left:10px;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(45,212,191,.12);
  border:1px solid rgba(45,212,191,.24);
  color:#99f6e4;
  font-size:11px;
  vertical-align:middle;
}
.mail-antivirus-dynamic-widget-bottom .mcb-av-live{
  background:rgba(15,23,42,.55) !important;
  border-color:rgba(45,212,191,.22) !important;
}
.mail-antivirus-dynamic-widget-bottom .mcb-av-grid>div,
.mail-antivirus-dynamic-widget-bottom .mcb-av-history div{
  background:rgba(2,6,23,.55) !important;
}
.login-card input[name="two_factor_code"]{
  text-align:center;
  font-size:24px;
  font-weight:900;
  letter-spacing:8px;
}
@media(max-width:760px){
  .mail-antivirus-dynamic-widget-bottom{margin-top:24px!important;padding-top:16px}
  .mail-antivirus-dynamic-widget-bottom .home-v60-widget-head h2:after{display:flex;width:max-content;margin:6px 0 0}
}

/* V136 - Planning individuel : réorganisation PC sans grand vide */
@media (min-width: 1001px){
  .planning-admin-grid.two{
    display:grid !important;
    grid-template-columns:minmax(320px,380px) minmax(260px,1fr) minmax(260px,1fr) !important;
    gap:18px !important;
    align-items:start !important;
    margin-bottom:20px !important;
  }
  .planning-add-form{
    grid-row:1 / span 2 !important;
    min-height:0 !important;
  }
  .planning-filter-card,
  .planning-send-card{
    min-height:0 !important;
    align-self:start !important;
  }
  .planning-filter-card{
    grid-column:2 !important;
  }
  .planning-send-card{
    grid-column:3 !important;
  }
  .planning-filter-card h2,
  .planning-send-card h2,
  .planning-add-form h2{
    margin-top:0 !important;
    margin-bottom:12px !important;
  }
  .planning-filter-card .muted,
  .planning-send-card .muted{
    margin-top:0 !important;
  }
  .planning-filter-card select,
  .planning-send-card select,
  .planning-add-form select,
  .planning-add-form input,
  .planning-add-form textarea{
    margin-bottom:10px !important;
  }
  .planning-add-form textarea{
    min-height:74px !important;
    resize:vertical !important;
  }
}
.planning-section-title{
  display:flex !important;
  align-items:end !important;
  justify-content:space-between !important;
  gap:14px !important;
  margin:8px 0 14px !important;
}
.planning-section-title h2{
  margin:0 !important;
  font-size:24px !important;
}
.planning-section-title span{
  color:#9fb2d0 !important;
  font-weight:800 !important;
}
.planning-filter-card,
.planning-send-card,
.planning-add-form{
  border-color:rgba(148,190,255,.20) !important;
}
@media (max-width: 1000px){
  .planning-admin-grid.two{
    grid-template-columns:1fr !important;
  }
  .planning-section-title{
    display:block !important;
  }
  .planning-section-title span{
    display:block !important;
    margin-top:6px !important;
  }
}

/* Correction Stock - impression aperçu + sélection épinglée */
.stock-preview-toolbar{align-items:flex-start!important;gap:14px!important;flex-wrap:wrap!important}
.stock-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.stock-selection-help{margin:-4px 0 14px;color:#aeb9cc;font-size:.92rem;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:10px 12px}
.stock-select-line{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#dbeafe;font-weight:800;font-size:.88rem;cursor:pointer;user-select:none}
.stock-select-line input{width:18px;height:18px;accent-color:#0d8bff;margin:0!important}
.stock-pinned-badge{margin-left:auto;font-style:normal;color:#fff;background:rgba(0,117,255,.22);border:1px solid rgba(0,117,255,.42);border-radius:999px;padding:4px 9px;font-size:.75rem}
.stock-card.stock-pinned{border-color:rgba(0,117,255,.65)!important;box-shadow:0 0 0 1px rgba(0,117,255,.18),0 12px 28px rgba(0,0,0,.16)}
#stock-print-area{display:none}
@media(max-width:1000px){.stock-toolbar-actions{width:100%;justify-content:flex-start}.stock-toolbar-actions .btn{width:100%;justify-content:center}.stock-selection-help{font-size:.86rem}}
@media print{
  body.stock-printing > *:not(#stock-print-area){display:none!important}
  body.stock-printing #stock-print-area{display:block!important;background:#fff!important;color:#0f172a!important;padding:0!important}
  body.stock-printing .stock-print-sheet{font-family:Arial,sans-serif;color:#0f172a;padding:18mm}
  body.stock-printing .stock-print-title{border-bottom:2px solid #0f172a;margin-bottom:14px;padding-bottom:10px}
  body.stock-printing .stock-print-title h1{font-size:22pt;margin:0;color:#0f172a!important}
  body.stock-printing .stock-print-title p{margin:6px 0 0;color:#475569!important;font-size:10pt}
  body.stock-printing .stock-print-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  body.stock-printing .stock-card{break-inside:avoid;background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;border-radius:10px!important;padding:12px!important;box-shadow:none!important}
  body.stock-printing .stock-card *{color:#0f172a!important;text-shadow:none!important}
  body.stock-printing .stock-select-line,body.stock-printing .stock-actions,body.stock-printing .no-print{display:none!important}
  body.stock-printing .stock-head{display:flex!important;justify-content:space-between!important;gap:12px!important}
  body.stock-printing .stock-head b{font-size:13pt!important;color:#0f172a!important}
  body.stock-printing .tag,body.stock-printing .stock-meta span{background:#eef2ff!important;border:1px solid #cbd5e1!important;color:#0f172a!important}
  body.stock-printing .stock-qty{background:#f8fafc!important;border:1px solid #cbd5e1!important;color:#0f172a!important;text-align:right!important}
  body.stock-printing .stock-notes{background:#f8fafc!important;border:1px solid #e2e8f0!important;color:#0f172a!important}
}

/* === Stock aperçu impression corrigé === */
.stock-preview-modal[hidden]{display:none!important}
.stock-preview-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(2,8,23,.72);backdrop-filter:blur(8px)}
.stock-preview-backdrop{position:absolute;inset:0}
.stock-preview-dialog{position:relative;width:min(1100px,calc(100vw - 36px));max-height:calc(100vh - 36px);overflow:auto;border:1px solid rgba(148,190,255,.25);border-radius:22px;background:#f8fafc;color:#0f172a;box-shadow:0 28px 90px rgba(0,0,0,.45)}
.stock-preview-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #dbe7ff;background:#fff;color:#0f172a}
.stock-preview-head h2{margin:0;font-size:24px;color:#0f172a}.stock-preview-head p{margin:5px 0 0;color:#64748b}.stock-preview-actions{display:flex;gap:8px;flex-wrap:wrap}.stock-print-area{padding:20px;background:#eef4ff}.stock-print-sheet{background:#fff;border:1px solid #dbe7ff;border-radius:18px;padding:22px;color:#0f172a;min-height:520px}.stock-print-title{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;border-bottom:2px solid #0b5fff;padding-bottom:12px;margin-bottom:16px}.stock-print-title h1{margin:0;color:#0f172a;font-size:26px}.stock-print-title p{margin:5px 0 0;color:#64748b}.stock-print-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stock-print-grid .stock-card{background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;border-radius:14px!important;box-shadow:none!important}.stock-print-grid .stock-card *{color:#0f172a!important;text-shadow:none!important}.stock-print-grid .stock-head{display:flex;justify-content:space-between;gap:12px}.stock-print-grid .stock-head b{font-size:18px}.stock-print-grid .stock-qty{background:#f8fafc!important;border:1px solid #cbd5e1!important;border-radius:12px!important;color:#0f172a!important;text-align:right}.stock-print-grid .tag,.stock-print-grid .stock-meta span{background:#eef2ff!important;border:1px solid #cbd5e1!important;color:#0f172a!important}.stock-print-grid .stock-notes{background:#f8fafc!important;border:1px solid #e2e8f0!important;color:#0f172a!important}.stock-preview-open{overflow:hidden}@media(max-width:760px){.stock-preview-modal{padding:10px}.stock-preview-head{display:block}.stock-preview-actions{margin-top:12px}.stock-print-grid{grid-template-columns:1fr}.stock-print-area{padding:10px}.stock-print-sheet{padding:14px}}
@media print{
  body.stock-printing{background:#fff!important;overflow:visible!important}
  body.stock-printing > *:not(#stock-preview-modal){display:none!important}
  body.stock-printing #stock-preview-modal{position:static!important;display:block!important;background:#fff!important;padding:0!important;backdrop-filter:none!important}
  body.stock-printing .stock-preview-backdrop,body.stock-printing .stock-preview-head,body.stock-printing .no-print{display:none!important}
  body.stock-printing .stock-preview-dialog{width:auto!important;max-height:none!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:#fff!important;color:#0f172a!important}
  body.stock-printing .stock-print-area{padding:0!important;background:#fff!important}
  body.stock-printing .stock-print-sheet{border:0!important;border-radius:0!important;padding:10mm!important;min-height:0!important;background:#fff!important;color:#0f172a!important}
  body.stock-printing .stock-print-title{break-after:avoid;page-break-after:avoid}
  body.stock-printing .stock-print-title h1{font-size:20pt!important}
  body.stock-printing .stock-print-grid{grid-template-columns:1fr 1fr!important;gap:6mm!important}
  body.stock-printing .stock-card{break-inside:avoid;page-break-inside:avoid;background:#fff!important;color:#0f172a!important;border:1px solid #cbd5e1!important;box-shadow:none!important}
  @page{size:A4;margin:10mm}
}


/* FIX ICONE CALENDRIER VISIBLE */
input[type="datetime-local"]::-webkit-calendar-picker-indicator{
    filter: invert(1) brightness(2) !important;
    opacity: 1 !important;
    cursor:pointer;
}

input[type="datetime-local"]{
    color-scheme: dark;
}
