/* CORRECTION URGENTE ROUE CRANTEE + NOTES */

.gear-dropdown {
  display: none !important;
  position: absolute !important;
  right: 0 !important;
  top: 52px !important;
  min-width: 235px !important;
  background: #ffffff !important;
  color: #222222 !important;
  border-radius: 14px !important;
  box-shadow: 0 10px 28px rgba(0,0,0,0.18) !important;
  padding: 8px !important;
  z-index: 9999 !important;
}

.gear-menu {
  position: relative !important;
  display: inline-block !important;
}

.gear-menu:hover .gear-dropdown,
.gear-menu:focus-within .gear-dropdown {
  display: block !important;
}

.gear-dropdown a,
.gear-dropdown span {
  display: block !important;
  padding: 10px 12px !important;
  border-radius: 10px !important;
  color: #222222 !important;
  text-decoration: none !important;
  background: transparent !important;
  font-weight: 600 !important;
}

.quick-note-form input,
.quick-note-form textarea,
.quick-note-form select {
  width: 100% !important;
  padding: 10px !important;
  border: 1px solid #ccc !important;
  border-radius: 8px !important;
  margin-bottom: 8px !important;
}

.quick-note-form textarea {
  min-height: 105px !important;
}

.quick-note-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr auto !important;
  gap: 8px !important;
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;background:var(--bg-color);color:#222}
header{background:var(--primary-color);color:white;padding:22px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}
h1{margin:0;font-size:28px} header p{margin:4px 0 0;color:#d8d3c4}
nav{display:flex;gap:8px;flex-wrap:wrap}nav a,.btn,button{background:var(--accent-color);color:white;text-decoration:none;border:0;border-radius:8px;padding:9px 12px;font-weight:700;cursor:pointer;display:inline-block}
main{max-width:1450px;margin:auto;padding:24px}
footer{text-align:center;color:#666;padding:30px}
.userbar{background:white;padding:12px 14px;border-radius:12px;margin-bottom:16px;box-shadow:0 2px 8px #0001}
.bad{background:#f8d7da!important}.warn{background:#fff3cd!important}.good{background:#d1e7dd!important}
.bad,.warn,.good{border-radius:6px}.badge{padding:5px 8px;border-radius:999px;margin-left:10px;font-size:13px}.badge.admin{background:#d1e7dd}.badge.read{background:#e2e3e5}
.cards{display:grid;grid-template-columns:repeat(6,1fr);gap:14px;margin-bottom:18px}
.card,.panel,.login-card{background:white;border-radius:14px;padding:18px;box-shadow:0 2px 8px #0001}
.card span{display:block;color:#666;margin-bottom:8px}.card strong{font-size:24px}
.panel{margin-bottom:18px}.hint{color:#666}
table{width:100%;border-collapse:collapse;font-size:14px;overflow:auto}th,td{border-bottom:1px solid #ddd;padding:9px;text-align:left;white-space:nowrap}th{background:#eee}
.grid-form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;align-items:end}.grid-form label{font-weight:700;font-size:13px}.grid-form input,.grid-form select,.grid-form textarea,.login-card input{width:100%;margin-top:5px;padding:10px;border:1px solid #ccc;border-radius:8px;background:white}
textarea{min-height:80px}.wide{grid-column:span 4}.actions{display:flex;gap:6px;align-items:center}.actions form{margin:0}.small{font-size:12px;padding:6px 8px}.danger{background:#9d2d2d}
.login-card{max-width:420px;margin:40px auto}.login-card label{display:block;margin:12px 0 4px}
.alert{padding:10px;border-radius:8px;margin-bottom:12px}.result{padding:16px;border-radius:12px;margin-top:16px}
@media(max-width:1000px){header{display:block}nav{margin-top:12px}.cards{grid-template-columns:1fr 1fr}.grid-form{grid-template-columns:1fr 1fr}.wide{grid-column:span 2}main{padding:14px}table{display:block;overflow:auto}}

.brand{display:flex;align-items:center;gap:16px}
.logo{max-width:120px;max-height:70px;object-fit:contain;background:white;border-radius:10px;padding:6px}
.logo-preview img{max-width:220px;max-height:120px;object-fit:contain;background:#fff;border:1px solid #ddd;border-radius:12px;padding:10px}
.inline{display:flex!important;align-items:center;gap:8px;margin-top:8px}
.inline input{width:auto!important}


.print-actions{display:flex;gap:10px;margin-bottom:16px}
.dossier-print{background:white;border-radius:16px;padding:28px;box-shadow:0 2px 8px #0001}
.dossier-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--primary-color);padding-bottom:18px;margin-bottom:18px}
.dossier-logo{max-width:180px;max-height:95px;object-fit:contain}
.dossier-title{text-align:right}.dossier-title h2{margin:0;font-size:26px}.dossier-title p{margin:5px 0 0;color:#666}
.dossier-main-title{margin-bottom:18px}.dossier-main-title h1{margin:0;font-size:30px}.dossier-main-title p{margin:5px 0;color:#666}
.dossier-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.dossier-box{border:1px solid #ddd;border-radius:14px;padding:16px;background:#fff}.dossier-box.full{margin-top:18px}
.dossier-box h3{margin-top:0;color:var(--primary-color)}
.dossier-box table th{width:45%;background:#f2f2f2}.total-row th,.total-row td{font-weight:700;background:#f8f8f8}
.bar-line{margin:12px 0}.bar-label{font-weight:700;margin-bottom:5px}.bar{height:14px;background:#e7e2d5;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:var(--accent-color)}
.notes{min-height:100px;white-space:normal;line-height:1.5}
.signature-zone{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.signature-line{height:60px;border-bottom:1px solid #333;margin-top:20px}

@media print{
  @page{size:A4;margin:12mm}
  body{background:white!important;color:#000;font-size:11pt}
  header,footer,.userbar,.no-print{display:none!important}
  main{padding:0;max-width:none}
  .dossier-print{box-shadow:none;border-radius:0;padding:0}
  .dossier-header{border-bottom:1.5pt solid #000}
  .dossier-title h2{font-size:18pt}
  .dossier-main-title h1{font-size:20pt}
  .dossier-grid{grid-template-columns:1fr 1fr;gap:10mm}
  .dossier-box{break-inside:avoid;border:1pt solid #999;padding:8mm}
  table{display:table;font-size:10pt}
  th,td{padding:5px;border-bottom:1px solid #ccc;white-space:normal}
  .bar span{background:#666!important}
  .signature-zone{break-inside:avoid}
}

.calendar-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.day-cell{min-height:130px;border:1px solid #ddd;border-radius:12px;padding:8px;background:#fff}
.day-cell.weekend{background:#eee}
.day-head{display:flex;justify-content:space-between;gap:6px;border-bottom:1px solid #eee;padding-bottom:5px;margin-bottom:6px}
.day-head span{font-size:12px;color:#666}
.calendar-event{display:block;background:var(--primary-color);color:white;text-decoration:none;padding:7px;border-radius:8px;margin:6px 0;font-size:13px}
.calendar-event small{color:#eee}
.dossier-hero{display:flex;justify-content:space-between;align-items:center;gap:14px}
.dossier-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.doc-link{display:block;padding:10px;border:1px solid #ddd;border-radius:10px;text-decoration:none;color:#222;margin:8px 0;background:#fafafa}
.workflow{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.workflow-step{border:1px solid #ddd;border-radius:12px;padding:12px;background:#fafafa}
.workflow-step strong{display:block;margin-bottom:8px;color:var(--primary-color)}
.workflow-step input,.workflow-step select{width:100%;margin:4px 0;padding:7px;border:1px solid #ccc;border-radius:7px}
.note-form textarea{width:100%;min-height:120px;margin:10px 0;padding:12px;border:1px solid #ccc;border-radius:10px}
.note-card{border-left:5px solid var(--accent-color);background:#fafafa;padding:12px;border-radius:10px;margin-top:10px}
.note-card small{display:block;color:#666;margin-top:4px}
@media(max-width:1000px){
  .calendar-grid{grid-template-columns:1fr}
  .dossier-columns{grid-template-columns:1fr}
  .workflow{grid-template-columns:1fr}
  .dossier-hero,.calendar-top{display:block}
}
/* Apparence avancée MFDB ERP */
body {
  font-family: var(--font-family);
  background: var(--bg-color);
  color: var(--text-color);
}

header {
  background: var(--primary-color);
}

header p,
.hint,
.card span,
small,
footer {
  color: var(--muted-text-color);
}

.card,
.panel,
.login-card,
.dossier-print,
.day-cell,
.dossier-box {
  background: var(--card-color);
  border-radius: var(--radius);
}

nav a,
.btn,
button {
  background: var(--accent-color);
  color: var(--button-text-color);
}

th {
  background: var(--table-header-color);
}

input,
select,
textarea {
  font-family: var(--font-family);
}

.logo {
  max-width: 135px;
  max-height: 78px;
}

.appearance-preview {
  border: 1px solid #ddd;
  border-radius: var(--radius);
  overflow: hidden;
  background: var(--card-color);
}

.preview-header {
  background: var(--primary-color);
  color: white;
  padding: 18px;
  display: flex;
  gap: 14px;
  align-items: center;
}

.preview-header img {
  max-width: 100px;
  max-height: 55px;
  background: white;
  border-radius: 10px;
  padding: 5px;
}

.preview-header strong {
  display: block;
  font-size: 22px;
}

.preview-header span {
  display: block;
  color: #eee;
}

.preview-content {
  padding: 18px;
  display: flex;
  gap: 12px;
  align-items: center;
}

.preview-card {
  background: var(--bg-color);
  border-radius: var(--radius);
  padding: 16px;
}
/* Notes rapides dashboard */
.dashboard-two-columns {
  display: grid;
  grid-template-columns: 1fr 1.35fr;
  gap: 18px;
  align-items: start;
}

.quick-note-form input,
.quick-note-form textarea,
.quick-note-form select {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 8px;
  margin-bottom: 8px;
}

.quick-note-form textarea {
  min-height: 105px;
}

.quick-note-row {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  align-items: start;
}

.quick-notes-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.quick-note-card {
  border-left: 5px solid var(--accent-color);
  background: #fafafa;
  border-radius: 10px;
  padding: 12px;
}

.quick-note-card.note-urgent {
  border-left-color: #842029;
  background: #fff5f5;
}

.quick-note-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.quick-note-head span {
  color: #666;
  font-size: 12px;
}

.quick-note-card p {
  margin: 8px 0;
  line-height: 1.35;
}

.quick-note-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.quick-note-actions form {
  margin: 0;
}

@media(max-width:1000px){
  .dashboard-two-columns {
    grid-template-columns: 1fr;
  }

  .quick-note-row {
    grid-template-columns: 1fr;
  }
}
/* Roue crantée administration */
.topbar-mfdb {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
}

.admin-corner {
  margin-left: auto;
  position: relative;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}

.gear-menu {
  position: relative;
  display: inline-block;
}

.gear-button {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.35);
  background: rgba(255,255,255,0.12);
  color: white;
  font-size: 22px;
  cursor: pointer;
  padding: 0;
  line-height: 1;
}

.gear-button:hover {
  background: rgba(255,255,255,0.22);
}

.gear-dropdown {
  display: none;
  position: absolute;
  right: 0;
  top: 52px;
  min-width: 235px;
  background: var(--card-color, #fff);
  color: var(--text-color, #222);
  border-radius: var(--radius, 14px);
  box-shadow: 0 10px 28px rgba(0,0,0,0.18);
  padding: 8px;
  z-index: 9999;
  border: 1px solid rgba(0,0,0,0.08);
}

.gear-menu:hover .gear-dropdown,
.gear-menu:focus-within .gear-dropdown {
  display: block;
}

.gear-dropdown a,
.gear-dropdown span {
  display: block;
  padding: 10px 12px;
  border-radius: 10px;
  color: var(--text-color, #222);
  text-decoration: none;
  background: transparent;
  font-weight: 600;
}

.gear-dropdown a:hover {
  background: var(--bg-color, #f5f3ee);
}

.gear-dropdown span {
  opacity: 0.55;
  cursor: default;
}

.gear-dropdown small {
  float: right;
  font-size: 11px;
  color: var(--muted-text-color, #666);
  margin-top: 2px;
}

@media(max-width:900px) {
  .topbar-mfdb {
    align-items: center;
  }

  .gear-dropdown {
    right: 0;
    min-width: 215px;
  }
}

.quick-note-form input,
.quick-note-form textarea,
.quick-note-form select {
  width: 100%;
  padding: 10px;
  border: 1px solid #ccc;
  border-radius: 8px;
  margin-bottom: 8px;
}

.quick-note-form textarea {
  min-height: 105px;
}

.quick-note-row {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 8px;
  align-items: start;
}

.quick-notes-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}

.topbar-mfdb {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
}

.admin-corner {
  margin-left: auto;
  position: relative;
}

.gear-menu {
  position: relative;
  display: inline-block;
}

.gear-button {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.35);
  background: rgba(255,255,255,0.12);
  color: white;
  font-size: 22px;
  cursor: pointer;
  padding: 0;
}