.writing-help{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:15px;padding:13px;border-radius:13px;background:#f1e5f6;color:#542071}.writing-help strong{grid-column:1/-1;font-size:15px}.writing-help span{padding:9px;border-radius:8px;background:#fff;font-weight:700}.writing-editor{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:11px;align-items:end;margin-bottom:16px}.writing-editor label{display:grid;gap:6px}.writing-editor .writing-active{display:flex;align-items:center;gap:7px}.writing-management-table{overflow:auto}.writing-management-table table{min-width:1180px}.writing-management-table input,.writing-management-table select{box-sizing:border-box;width:100%;min-height:34px;background:#fff}.writing-management-table tr.inactive{opacity:.62;background:#eee}.writing-management-table td:last-child{white-space:nowrap}.writing-management-table td:last-child button{margin:2px}.writing-impact-preview{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding:12px;border:1px solid #dac2e6;border-radius:12px;background:#fbf7fd}.writing-impact-preview b{width:100%;color:#552078}.writing-impact-preview span{padding:7px 9px;border-radius:8px;background:#ede0f3;color:#543565;font-weight:700}@media(max-width:900px){.writing-help,.writing-editor{grid-template-columns:1fr 1fr}}@media(max-width:600px){.writing-help,.writing-editor{grid-template-columns:1fr}}
.financial-reports-intro{margin-bottom:15px;padding:16px;border-radius:14px;background:linear-gradient(110deg,#3e1056,#7a32a0);color:#fff}.financial-reports-intro strong{font-size:17px}.financial-reports-intro p{margin:5px 0 0;opacity:.85}.financial-report-groups{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:14px}.financial-report-groups article{padding:14px;border:1px solid #dbc4e6;border-radius:15px;background:#fbf8fc}.financial-report-groups h3{margin:0 0 10px;color:#552078}.financial-report-groups article>button{display:grid;width:100%;margin:7px 0;padding:11px 13px;border:0;border-radius:10px;background:#eee1f4;color:#4d1768;text-align:left;font-weight:900;cursor:pointer}.financial-report-groups article>button:hover{background:#7030a0;color:#fff}.financial-report-groups button small{margin-top:3px;font-weight:600;opacity:.78}.financial-readiness{display:grid;gap:5px;margin-top:11px;padding:11px;border-radius:10px;background:#e4f4e9;color:#17683a}.financial-readiness b{margin-bottom:4px}.financial-report-view{margin-top:18px;padding:17px;border:2px solid #7a32a0;border-radius:15px;background:#fff}.financial-report-view header{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:12px}.financial-report-view h3{margin:3px 0;color:#552078;font-size:20px}.financial-report-view p{margin:4px 0}.financial-report-view header button{border:0;border-radius:8px;background:#702b94;color:#fff;padding:8px 12px;font-weight:800}.financial-report-view table{width:100%;border-collapse:collapse}.financial-report-view th,.financial-report-view td{padding:9px;border:1px solid #d6c4df}.financial-report-view td:last-child{text-align:right;font-weight:900}.financial-report-view li{margin:6px}.financial-report-warning{margin-top:12px!important;padding:10px;border-radius:9px;background:#fff0ca;color:#735200;font-weight:700}@media(max-width:950px){.financial-report-groups{grid-template-columns:1fr 1fr}}@media(max-width:650px){.financial-report-groups{grid-template-columns:1fr}}
.accounting-header{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:18px;border-radius:16px;background:linear-gradient(110deg,#2f0b42,#7030a0);color:#fff}.accounting-header small{letter-spacing:.12em;opacity:.75}.accounting-header h2{margin:3px 0;font-size:22px}.accounting-header p{margin:0;opacity:.82}.accounting-header button{min-height:40px;padding:0 15px;border:1px solid #fff;border-radius:9px;background:#fff;color:#552078;font-weight:900}.accounting-class-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:14px 0}.accounting-class-grid span{display:grid;place-items:center;gap:4px;padding:10px 5px;border:1px solid #d9c2e5;border-radius:11px;background:#f7effa;color:#542071;text-align:center;font-size:10px;font-weight:800}.accounting-class-grid b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#7030a0;color:#fff;font-size:14px}.accounting-view{min-height:120px}.accounting-empty{display:grid;place-items:center;gap:6px;padding:30px;border:1px dashed #bc91ce;border-radius:13px;color:#704087}.accounting-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-bottom:12px}.accounting-kpis article{display:grid;gap:4px;padding:12px;border-left:5px solid #7030a0;border-radius:10px;background:#f5ebf9}.accounting-kpis span{font-size:9px;font-weight:900}.accounting-kpis b{font-size:15px;color:#4d1768}.accounting-table-wrap{overflow:auto;border-radius:12px}.accounting-table-wrap table{width:100%;min-width:900px;border-collapse:collapse}.accounting-table-wrap th,.accounting-table-wrap td{padding:7px 9px;border:1px solid #d7c9dd}.accounting-table-wrap th{background:#2f0b42;color:#fff}.accounting-table-wrap td:nth-child(3),.accounting-table-wrap td:nth-child(4){text-align:right}.accounting-group td{background:#7030a0!important;color:#fff!important;font-weight:900}.accounting-total td{background:#e7d6ef!important;color:#4b1765!important;font-weight:900}.accounting-explanation{display:flex;flex-wrap:wrap;gap:8px;margin-top:13px;padding:12px;border-radius:11px;background:#fff2cd;color:#684d00}.accounting-explanation strong{width:100%}.accounting-explanation span{flex:1;min-width:220px}@media(max-width:1000px){.accounting-class-grid{grid-template-columns:repeat(4,1fr)}.accounting-kpis{grid-template-columns:1fr 1fr}}@media(max-width:600px){.accounting-header{align-items:stretch;flex-direction:column}.accounting-class-grid{grid-template-columns:repeat(2,1fr)}.accounting-kpis{grid-template-columns:1fr}}
:root {
  --excel: #217346;
  --excel-dark: #185c37;
  --excel-deep: #0f5132;
  --purple: #7030a0;
  --purple-dark: #552078;
  --black: #151515;
  --grid: #d4d4d4;
  --grid-soft: #e9e9e9;
  --chrome: #f3f3f3;
  --chrome-dark: #e5e5e5;
  --sheet-bg: #e6e6e6;
  --selection: #107c41;
  --danger: #c42b1c;
  --success: #008a3b;
}

* { box-sizing: border-box; }

html,
body {
  height: 100%;
  margin: 0;
  overflow: hidden;
  color: #171717;
  background: var(--sheet-bg);
  font-family: Calibri, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}

body {
  padding-top: 42px;
  padding-inline: 42px;
}

body::before,
body::after {
  content: "";
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 100;
  width: 42px;
  background: var(--purple);
  box-shadow: none;
  pointer-events: none;
}

body::before { left: 0; }
body::after { right: 0; }

button,
input,
select { font: inherit; }

button { -webkit-tap-highlight-color: transparent; }

.excel-app {
  position: relative;
  display: grid;
  grid-template-rows: 216px 31px minmax(0, 1fr) 42px;
  height: 100%;
  background: #fff;
}

.excel-app::before {
  content: "";
  position: fixed;
  top: 0;
  left: 42px;
  right: 42px;
  z-index: 100;
  height: 42px;
  background: var(--purple);
  pointer-events: none;
}

.titlebar {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 11px;
  padding: 0 14px;
  color: #fff;
  color: #4b176c;
  background: linear-gradient(90deg, #f3e6f8, #fff 45%, #ead5f3);
  box-shadow: inset 0 -1px #c99ddd;
  font-size: 13px;
  letter-spacing: .01em;
  user-select: none;
  overflow: hidden;
}

.brand-logo {
  position: absolute;
  left: 12px;
  top: 50%;
  width: 570px;
  height: 198px;
  object-fit: contain;
  object-position: left center;
  transform: translateY(-50%);
}

.excel-logo {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  color: #fff;
  background: #4b176c;
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 2px;
  box-shadow: 0 1px 2px rgb(0 0 0 / 20%);
  font-size: 15px;
  font-weight: 700;
}

.institution-identity {
  position: absolute;
  top: 9px;
  left: 50%;
  z-index: 3;
  max-width: 42%;
  display: grid;
  justify-items: center;
  gap: 3px;
  overflow: hidden;
  transform: translateX(-50%);
}
.institution-identity > b {
  max-width: 100%;
  overflow: hidden;
  font-size: 28px;
  font-weight: 800;
  letter-spacing: .1em;
  line-height: 1.1;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.currency-badges { display: flex; justify-content: center; gap: 6px; max-width: 100%; }
.currency-badges > span { overflow: hidden; padding: 2px 9px; color: #fff; background: #7030a0; border-radius: 10px; font-size: 10px; font-weight: 800; letter-spacing: .05em; text-overflow: ellipsis; white-space: nowrap; }
#exchangeRateBadge { background: #4b176c; }
.user-box { position:absolute; top:14px; right:18px; z-index:4; display:flex; align-items:center; gap:10px; color:var(--purple-dark); font-size:11px; font-weight:700; }
.user-box[hidden] { display:none; }
.user-box{align-items:flex-start}.user-box #currentUser{margin-top:45px;white-space:nowrap}
.user-actions { display: grid; justify-items: stretch; gap: 4px; }
.user-box button { padding:6px 10px; color:#fff; background:#c62828; border:0; border-radius:4px; cursor:pointer; box-shadow:0 2px 6px rgb(120 0 0 / 22%); font-size:9px; font-weight:800; }
.user-box button:hover { background:#971b1b; }
.analog-clock { position: relative; display: block; width: 124px; height: 124px; margin: 0 auto; padding: 0; background: radial-gradient(circle,#fff 68%,#ead5f3 70%); border: 6px solid #7030a0; border-radius: 50%; box-shadow: 0 5px 16px rgb(75 23 108 / 36%), inset 0 0 0 2px #c99ddd; }
.analog-clock::before { position: absolute; inset: 7px; content: ''; border-radius: 50%; background: repeating-conic-gradient(from -1deg,#7030a0 0 1.5deg,transparent 1.5deg 6deg); mask: radial-gradient(circle,transparent 83%,#000 85%); }
.analog-clock span { position: absolute; z-index: 1; width: 22px; height: 18px; margin: -9px 0 0 -11px; color: #4b176c; font-size: 12px; font-weight: 900; line-height: 18px; text-align: center; }
.analog-clock .n12 { top: 11%; left: 50%; }.analog-clock .n1 { top: 16%; left: 70%; }.analog-clock .n2 { top: 31%; left: 85%; }.analog-clock .n3 { top: 50%; left: 90%; }.analog-clock .n4 { top: 69%; left: 85%; }.analog-clock .n5 { top: 84%; left: 70%; }.analog-clock .n6 { top: 89%; left: 50%; }.analog-clock .n7 { top: 84%; left: 30%; }.analog-clock .n8 { top: 69%; left: 15%; }.analog-clock .n9 { top: 50%; left: 10%; }.analog-clock .n10 { top: 31%; left: 15%; }.analog-clock .n11 { top: 16%; left: 30%; }
.analog-clock i { position: absolute; bottom: 50%; left: 50%; z-index: 2; display: block; width: 2px; border-radius: 3px; background: #4b176c; transform-origin: 50% 100%; }
.analog-clock .hour-hand { height: 32px; width: 6px; }
.analog-clock .minute-hand { height: 44px; width: 4px; }
.analog-clock .second-hand { height: 50px; width: 2px; background: #c62828; }
.analog-clock .clock-center { bottom: calc(50% - 6px); width: 12px; height: 12px; margin-left: -6px; background: #7030a0; border-radius: 50%; transform: none; }
#loginScreen { position:fixed; inset:0; z-index:1000; display:grid; place-items:center; background:linear-gradient(135deg,#4b176c,#7030a0); }
#loginScreen[hidden] { display:none; }
#loginForm { display:grid; gap:14px; width:min(700px,calc(100% - 40px)); padding:34px 48px; background:#fff; border-radius:14px; box-shadow:0 24px 70px rgb(0 0 0 / 35%); }
#loginForm h1 { margin:0; color:var(--purple); font-size:58px; line-height:1; letter-spacing:3px; text-align:center; }
.login-logo { display:block; width:min(620px,100%); height:310px; margin:0 auto -12px; object-fit:contain; }
#loginForm p { margin:0 0 8px; color:#777; text-align:center; }
#loginForm input { height:43px; padding:8px 12px; border:1px solid #c9abd7; border-radius:6px; }
#loginForm button { height:43px; color:#fff; background:var(--purple); border:0; border-radius:6px; font-weight:800; cursor:pointer; }
#loginError { min-height:18px; color:#b42318; font-size:12px; text-align:center; }

.sheet-filters {
  position: absolute;
  top: 64px;
  left: 50%;
  right: auto;
  bottom: auto;
  z-index: 2;
  width: min(1120px, calc(100% - 80px));
  min-height: 116px;
  padding: 13px 16px 15px;
  overflow-x: auto;
  overflow-y: hidden;
  color: #4b176c;
  background: rgb(255 255 255 / 82%);
  border: 1px solid #d4addf;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgb(83 29 111 / 10%);
  backdrop-filter: blur(5px);
  scrollbar-width: thin;
  scrollbar-color: #b98acf transparent;
  transform: translateX(-50%);
}

.sheet-filters[hidden] { display: none; }
.filter-title { margin-bottom: 12px; font-size: 11px; font-weight: 800; letter-spacing: .08em; white-space: nowrap; }
.filter-controls { display: flex; align-items: end; justify-content: center; gap: 10px; min-width: max-content; }
.filter-controls label { display: grid; gap: 5px; min-width: 125px; color: #572075; font-size: 10px; font-weight: 700; }
.filter-controls input,
.filter-controls select { height: 31px; min-width: 120px; padding: 4px 9px; color: #2e1738; background: #fff; border: 1px solid #caa8da; border-radius: 5px; outline: 0; }
.filter-controls input[type="search"] { width: 210px; }
.filter-controls input[type="number"] { width: 105px; min-width: 105px; }
.filter-controls input:focus,
.filter-controls select:focus { border-color: var(--purple); box-shadow: 0 0 0 2px rgb(112 48 160 / 14%); }
.clear-filters,
.toggle-column-filters,
.toggle-column-sorting { height: 31px; padding: 0 15px; color: #fff; background: var(--purple); border: 0; border-radius: 5px; cursor: pointer; box-shadow: 0 2px 5px rgb(75 23 108 / 18%); font-size: 10px; font-weight: 800; white-space: nowrap; }
.clear-filters:hover,
.toggle-column-filters:hover,
.toggle-column-sorting:hover { background: var(--purple-dark); }
.toggle-column-filters.active,
.toggle-column-sorting.active { color: var(--purple-dark); background: #fff; outline: 2px solid #c99ddd; }

.column-filter-row th {
  position: sticky;
  top: 37px;
  z-index: 3;
  height: 34px;
  padding: 3px;
  background: var(--purple);
  border-color: #8d58ad;
}

.column-filter-row select {
  width: 100%;
  min-width: 92px;
  height: 26px;
  padding: 2px 22px 2px 6px;
  color: #fff;
  background: var(--purple-dark);
  border: 1px solid #c89bdf;
  border-radius: 3px;
  font-size: 10px;
}

.saved {
  margin-left: auto;
  padding: 4px 9px;
  color: #e8f5ed;
  border-radius: 3px;
  background: rgb(0 0 0 / 10%);
  font-size: 11px;
}

.ribbon {
  display: flex;
  align-items: stretch;
  gap: 1px;
  padding: 0 8px;
  background: linear-gradient(180deg, #4b176c, #351047);
  border-bottom: 1px solid #250b33;
  box-shadow: 0 1px 2px rgb(0 0 0 / 5%);
  user-select: none;
}

.ribbon span { flex: 1; }

.ribbon button {
  min-width: 65px;
  padding: 0 13px;
  color: #f5eafa;
  background: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  cursor: default;
  font-size: 12px;
}

.ribbon button:hover { background: rgb(255 255 255 / 12%); }

.ribbon button.active {
  color: #fff;
  border-bottom-color: #d9a8f4;
  font-weight: 600;
}

.ribbon #exportBtn {
  align-self: center;
  min-width: auto;
  height: 29px;
  color: #4b176c;
  background: #fff;
  border: 1px solid #ead8f5;
  border-radius: 3px;
  cursor: pointer;
  font-weight: 600;
}

.ribbon #exportBtn:hover { color: #351047; background: #f2e5fa; }

.institution-bar {
  min-height: 38px;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .8px;
  text-align: center;
  text-transform: uppercase;
}

.app-actions { overflow: visible; }
.ribbon-menu { position: relative; }
.ribbon-menu.open .ribbon-trigger,
.ribbon-trigger:hover { color: #fff; background: rgb(255 255 255 / 12%); }
.ribbon-dropdown {
  position: absolute;
  z-index: 120;
  top: calc(100% + 1px);
  left: 0;
  display: none;
  min-width: 210px;
  padding: 6px;
  background: #fff;
  border: 1px solid #d7bce8;
  border-radius: 0 0 7px 7px;
  box-shadow: 0 8px 22px rgb(45 10 68 / 22%);
}
.ribbon-menu.open .ribbon-dropdown { display: grid; }
.ribbon-dropdown button,
.ribbon-dropdown #exportBtn {
  width: 100%;
  height: auto;
  padding: 9px 11px;
  color: #351047;
  background: transparent;
  border: 0;
  border-radius: 4px;
  text-align: left;
  cursor: pointer;
}
.ribbon-dropdown button:hover,
.ribbon-dropdown #exportBtn:hover { background: #f2e5fa; }
.compact-view .grid td,
.compact-view .grid th { height: 24px; padding: 2px 5px; font-size: 11px; }
.compact-view .grid input,
.compact-view .grid select { min-height: 20px; padding: 1px 4px; font-size: 11px; }

.formula {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 0;
  color: #fff;
  background: #4b176c;
  border-bottom: 1px solid #351047;
  font-size: 12px;
}

.formula > * {
  height: 22px;
  margin: 4px 0;
  padding: 3px 9px;
  overflow: hidden;
  border-right: 1px solid rgb(255 255 255 / 24%);
  white-space: nowrap;
  text-overflow: ellipsis;
}

.formula #formulaText {
  width: 100%;
  border-right: 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .5px;
  text-align: center;
}

main {
  min-width: 0;
  min-height: 0;
  padding: 14px;
  overflow: auto;
  background-color: var(--sheet-bg);
  background-image:
    linear-gradient(rgb(255 255 255 / 28%) 1px, transparent 1px),
    linear-gradient(90deg, rgb(255 255 255 / 28%) 1px, transparent 1px);
  background-size: 22px 22px;
  scrollbar-color: #aaa #eee;
  scrollbar-width: thin;
}

main::-webkit-scrollbar,
nav::-webkit-scrollbar { width: 12px; height: 12px; }

main::-webkit-scrollbar-track,
nav::-webkit-scrollbar-track { background: #ededed; }

main::-webkit-scrollbar-thumb,
nav::-webkit-scrollbar-thumb {
  background: #aaa;
  border: 3px solid #ededed;
  border-radius: 8px;
}

.worksheet {
  min-width: max-content;
  min-height: 100%;
  overflow: visible;
  background: #fff;
  border: 1px solid #c4c4c4;
  box-shadow: 0 2px 8px rgb(0 0 0 / 13%);
}

.home {
  width: min(1040px, 100%);
  min-width: 650px;
  margin: 0 auto;
  padding: 18px 34px 50px;
}

.home .hero {
  overflow: hidden;
  color: #fff;
  background: var(--black);
  border: 1px solid #000;
  font-family: "Times New Roman", Times, serif;
  font-weight: 700;
  text-align: center;
}

.home .hero h1 {
  margin: 0;
  padding: 8px;
  border-bottom: 1px solid #333;
  font-size: 19px;
  letter-spacing: .09em;
}

.home .hero h2 {
  margin: 0;
  padding: 15px 12px 18px;
  font-size: clamp(38px, 6vw, 58px);
  line-height: 1;
  letter-spacing: .025em;
}

.home .contact {
  padding: 8px 14px;
  color: var(--purple);
  background: #fff;
  border: 1px solid var(--purple);
  border-top: 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}

.period-box {
  width: min(470px, 90%);
  margin: 42px auto 0;
  overflow: hidden;
  background: #fff;
  border: 1px solid #1c1c1c;
  box-shadow: 4px 4px 0 rgb(0 0 0 / 8%);
  font-family: "Times New Roman", Times, serif;
}

.period-box h3 {
  margin: 0;
  padding: 8px;
  color: #fff;
  background: var(--purple);
  border-bottom: 1px solid #1c1c1c;
  font-size: 15px;
  letter-spacing: .04em;
  text-align: center;
}

.period-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.period-row label {
  padding: 14px;
  font-size: 13px;
  font-weight: 700;
}

.period-row label + label { border-left: 1px solid var(--grid); }

.period-row input {
  width: 100%;
  height: 32px;
  margin-top: 7px;
  padding: 4px 7px;
  background: #fff;
  border: 1px solid #8e8e8e;
  border-radius: 0;
  outline: 0;
}

.period-row input:focus {
  border-color: var(--selection);
  box-shadow: inset 0 0 0 1px var(--selection);
}

.save-period {
  display: block;
  min-width: 180px;
  margin: 4px auto 15px;
  padding: 8px 18px;
  color: #fff;
  background: var(--purple);
  border: 1px solid var(--purple-dark);
  border-radius: 2px;
  cursor: pointer;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .03em;
}

.save-period:hover { background: var(--purple-dark); }

.grid {
  border-spacing: 0;
  border-collapse: separate;
  background: #fff;
  font-family: "Times New Roman", Times, serif;
  font-size: 12px;
  table-layout: auto;
}

.grid th,
.grid td {
  position: relative;
  min-width: 112px;
  height: 30px;
  padding: 0 7px;
  border: 0;
  border-right: 1px solid var(--grid);
  border-bottom: 1px solid var(--grid);
  text-align: center;
  white-space: nowrap;
}

.grid th {
  position: sticky;
  top: 0;
  z-index: 4;
  height: 39px;
  padding: 4px 9px;
  color: #fff;
  background: var(--black);
  border-right-color: #595959;
  border-bottom: 2px solid #000;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .015em;
  line-height: 1.15;
  white-space: normal;
}

.grid thead tr:first-child th.sortable { padding-right: 22px; cursor: pointer; }
.grid thead tr:first-child th.sortable::after { content: "⇅"; position: absolute; right: 6px; top: 50%; color: #d9b3ea; font: 12px Arial, sans-serif; transform: translateY(-50%); }
.grid thead tr:first-child th.sort-asc::after { content: "▲"; color: #fff; }
.grid thead tr:first-child th.sort-desc::after { content: "▼"; color: #fff; }
.grid thead tr:first-child th.sort-asc,
.grid thead tr:first-child th.sort-desc { background: var(--purple-dark); }

.grid tbody tr:hover td:not(.rownum) { background-color: #f8fbf9; }

.grid td.rownum,
.grid th.rownum {
  position: sticky;
  left: 0;
  z-index: 3;
  width: 42px;
  min-width: 42px;
  padding: 0;
  color: #555;
  background: var(--chrome);
  border-right: 1px solid #aaa;
  font-family: Calibri, "Segoe UI", sans-serif;
  font-size: 11px;
  font-weight: 400;
}

.grid th.rownum { z-index: 6; }

.grid thead .column-filter-row th,
.grid thead .column-filter-row th.rownum {
  top: 39px;
  z-index: 5;
  height: 34px;
  padding: 3px;
  color: #fff;
  background: var(--purple);
  border-right-color: #9d6cba;
  border-bottom: 2px solid var(--purple-dark);
}

.grid thead .column-filter-row select {
  width: 100%;
  min-width: 92px;
  height: 26px;
  margin: 0;
  padding: 2px 22px 2px 7px;
  color: #fff;
  background-color: var(--purple-dark);
  border: 1px solid #d2ace4;
  border-radius: 4px;
  font: 10px Calibri, "Segoe UI", sans-serif;
}

.grid input,
.grid select {
  display: block;
  width: calc(100% + 14px);
  min-width: 112px;
  height: 29px;
  margin: 0 -7px;
  padding: 3px 7px;
  color: #111;
  background: transparent;
  border: 0;
  border-radius: 0;
  outline: 0;
  font: 12px "Times New Roman", Times, serif;
  text-align: center;
}

.grid select { cursor: pointer; }

.grid input:focus,
.grid select:focus {
  z-index: 2;
  background: #fff;
  box-shadow: inset 0 0 0 2px var(--selection);
}

.grid td:has(input:focus),
.grid td:has(select:focus) { z-index: 2; }

.grid .computed {
  color: #333;
  background: #e1e1e1;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 32%);
  font-weight: 600;
  cursor: not-allowed;
}

.grid tbody tr:hover .computed { background: #d9d9d9; }

.grid .invalid { color: #d01818; font-weight: 700; }
.grid .valid { color: var(--success); font-weight: 700; }
.grid .total { color: #fff; background: #111; font-weight: 700; }

.grid button.save-row,
.grid button.delete {
  height: 23px;
  border-radius: 2px;
  cursor: pointer;
  font-size: 11px;
  font-weight: 700;
}

.grid button.save-row {
  padding: 0 11px;
  color: #fff;
  background: var(--purple);
  border: 1px solid var(--purple-dark);
}

.grid button.save-row:hover { background: var(--purple-dark); }

.grid button.delete {
  width: 25px;
  padding: 0;
  color: var(--danger);
  background: #fff;
  border: 1px solid #d6a09a;
  font-size: 15px;
}

.grid button.delete:hover { color: #fff; background: var(--danger); }

.grid .new-row td { background: #fffdf1; }
.grid .credit-new td { background: #fffdf1; }
.credit-grid td:not(.computed):not(.rownum):has(input:not([readonly])),
.credit-grid td:not(.computed):not(.rownum):has(select) { background: #fff !important; }
.credit-grid input[readonly] {
  color: #555;
  background: #d7d7d7;
  cursor: not-allowed;
}
.credit-grid td:has(input[readonly]) {
  background: #d7d7d7 !important;
  box-shadow: inset 0 0 0 1px rgb(255 255 255 / 35%);
}
.grid .summary-row td { position: sticky; bottom: 0; z-index: 2; }
.credit-grid th { min-width: 105px; }
.credit-grid tr.credit-risk td:not(.rownum):not(.computed):not(:has(input)):not(:has(select)) { background-color: #fff3f2; }
.credit-grid tr.credit-healthy td:not(.rownum):not(.computed):not(:has(input)):not(:has(select)) { background-color: #f3fbf5; }
.credit-grid tr.credit-healthy td,
.credit-grid tr.credit-healthy input,
.credit-grid tr.credit-healthy select,
.credit-grid tr.credit-healthy strong,
.credit-grid tr.credit-healthy button { color: #07853b !important; }
.credit-grid tr.credit-risk td,
.credit-grid tr.credit-risk input,
.credit-grid tr.credit-risk select,
.credit-grid tr.credit-risk strong,
.credit-grid tr.credit-risk button { color: #c62828 !important; }
.payment-cell { padding: 0 !important; }
.credit-grid .payment-cell { overflow: hidden; }
.credit-grid .payment-cell input[name^="installment_"] {
  width: 100%;
  min-width: 100%;
  margin: 0;
  padding-right: 7px;
  padding-left: 7px;
}
.payment-cell.unused-installment { background: repeating-linear-gradient(135deg,#f5f5f5,#f5f5f5 5px,#ededed 5px,#ededed 10px) !important; }
.payment-cell.unused-installment input { background: rgb(255 255 255 / 78%); }
.credit-grid td.credit-retard-cell,
.credit-grid tbody tr:hover td.credit-retard-cell {
  background: #eadcf2 !important;
  box-shadow: inset 0 0 0 1px rgb(112 48 160 / 14%);
  color: #4b176c;
}
.payment-add {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: 100%;
  height: 29px;
  color: #222;
  background: transparent;
  border: 0;
  cursor: pointer;
  font: 12px "Times New Roman", Times, serif;
}
.payment-add:hover { color: var(--excel-dark); background: #e8f4ec; }
.payment-add small { color: var(--excel); font: 700 14px Calibri, sans-serif; }
.interest-cell { min-width: 145px !important; }
.interest-cell strong { display: block; line-height: 14px; }
.interest-cell label { display: flex; align-items: center; justify-content: center; gap: 3px; color: #555; font: 9px Calibri, sans-serif; }
.interest-cell label input { width: 38px; min-width: 38px; height: 14px; margin: 0; padding: 0 2px; border-bottom: 1px solid #999; font: 10px Calibri, sans-serif; }
.dashboard-toolbar {
  position: sticky;
  top: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 1720px;
  height: 42px;
  padding: 6px 26px;
  color: #fff;
  background: #111;
  font-size: 12px;
  font-weight: 700;
}
.dashboard-toolbar select { height: 28px; padding: 2px 25px 2px 8px; border: 1px solid #777; }
.dashboard-toolbar span { margin-left: auto; font-weight: 400; }

.dashboard {
  display: grid;
  grid-template-columns: 505px 505px 478px;
  align-items: start;
  gap: 108px;
  min-width: 1720px;
  padding: 0 24px 14px;
  background: #fff;
  font-family: "Times New Roman", Times, serif;
}
.dashboard-sheet { background: #fff; }
.dashboard-sheet,.dashboard-sheet *{animation:none!important;transition:none!important}
.client-mobile-money-fields{display:contents}.mobile-money-settings .advanced-settings-form{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px}.mobile-money-settings .advanced-settings-form h3,.mobile-money-settings .advanced-settings-form p,.mobile-money-settings .advanced-settings-form button{grid-column:1/-1}.mobile-money-settings label{display:grid;gap:6px}@media(max-width:850px){.mobile-money-settings .advanced-settings-form{grid-template-columns:1fr}}
.client-form-grid{display:block!important}.client-form-section{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin:0 0 16px;padding:16px;border:1px solid #d9bde6;border-radius:14px;background:#fcf8fe}.client-form-section legend{padding:6px 13px;border-radius:999px;background:#552078;color:#fff;font-size:12px;font-weight:900;letter-spacing:.04em}.client-form-section label{display:grid;gap:6px;align-content:start}.client-form-section .client-wide{grid-column:1/-1}@media(max-width:1100px){.client-form-section{grid-template-columns:repeat(2,minmax(180px,1fr))}}@media(max-width:620px){.client-form-section{grid-template-columns:1fr;padding:12px}.client-form-section .client-wide{grid-column:auto}}
.dashboard-overview { min-width:1720px; padding:22px 24px 26px; background:linear-gradient(135deg,#f7eefb,#fff 48%,#f2e4f8); border-bottom:1px solid #d6b7e3; font-family:Calibri,"Segoe UI",sans-serif; }
.overview-heading { display:flex; align-items:center; justify-content:space-between; margin-bottom:17px; }
.overview-heading h1 { margin:0; color:var(--purple-dark); font-size:25px; letter-spacing:.06em; }
.overview-heading p { margin:4px 0 0; color:#715c7c; font-size:12px; }
.overview-heading > span { padding:7px 12px; color:#fff; background:var(--purple); border-radius:18px; font-size:11px; font-weight:700; }
.kpi-grid { display:grid; grid-template-columns:repeat(6,minmax(180px,1fr)); gap:12px; }
.kpi-card { position:relative; min-height:86px; padding:16px 16px 13px; overflow:hidden; background:#fff; border:1px solid #ded3e3; border-radius:9px; box-shadow:0 5px 14px rgb(54 21 70 / 8%); }
.kpi-card::before { content:""; position:absolute; top:0; left:0; bottom:0; width:5px; background:#858585; }
.kpi-card span { display:block; margin-bottom:10px; color:#65576c; font-size:11px; font-weight:700; text-transform:uppercase; }
.kpi-card strong { display:block; color:#251b2a; font-size:20px; white-space:nowrap; }
.kpi-card.purple::before { background:var(--purple); }
.kpi-card.success::before { background:#159447; }
.kpi-card.danger::before { background:#d12727; }
.kpi-card.success strong { color:#087333; }
.kpi-card.danger strong { color:#b51d1d; }
.excel-dash h2 {
  height: 30px;
  margin: 0;
  color: #fff;
  background: var(--purple);
  border: 1px solid #222;
  font-size: 24px;
  line-height: 28px;
  text-align: center;
}
.excel-dash table {
  width: 100%;
  background: #fff;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 15px;
}
.excel-dash th {
  height: 21px;
  padding: 0 4px;
  color: #fff;
  background: var(--purple);
  border: 1px solid #222;
  font-size: 15px;
  line-height: 19px;
  text-align: center;
}
.excel-dash td {
  height: 20px;
  padding: 0 3px;
  overflow: hidden;
  border: 1px solid #222;
  line-height: 18px;
  white-space: nowrap;
}
.excel-dash td:first-child { font-weight: 700; }
.excel-dash td:last-child {
  text-align: right;
  font-variant-numeric: tabular-nums;
  font-weight: 700;
}
.excel-dash .blank td { height: 20px; background: #fff; }
.excel-dash .blank.tall td { height: 40px; }
.excel-dash .purple-gap td,.excel-dash .purple-foot td { height: 20px; background: var(--purple); }
.excel-dash .grand-total td {
  height: 30px;
  color: var(--purple);
  background: #fff;
  font-size: 23px;
  font-weight: 700;
}
.credit-dash td:first-child,.credit-dash th:first-child { width: 58%; }
.credit-dash .late-row td { color: #f00; }
.credit-dash .risk-row td:first-child { color: #fff; background: #000; }
.credit-dash .risk-row td:nth-child(2) { color: #fff; background: #f00; text-align: center; }
.credit-dash .risk-row.healthy td:nth-child(2) { background: #00b050; }
.credit-dash .legend-row td { color: var(--purple); text-align: center; font-weight: 700; }
.credit-dash .purple-label td:first-child { color: #fff; background: var(--purple); }
.credit-dash .state-value { color: var(--purple); }
.treasury-dash table { font-size: 16px; }
.treasury-dash th:first-child { width: 83%; }
.treasury-dash .cash-in td { background: #c4dba2; }
.treasury-dash .product-title td,.treasury-dash .charge-title td {
  text-align: center;
  font-weight: 700;
}
.treasury-dash .product-title td,.treasury-dash .product td { background: #00b956; }
.treasury-dash .detail-title td { height:24px; text-align:center; font-size:13px; font-weight:800; letter-spacing:.03em; }
.treasury-dash .product-detail-title td { color:#075d2b; background:#a9e7c2; }
.treasury-dash .charge-detail-title td { color:#8f0b0b; background:#ffc6c6; }
.treasury-dash .writing-detail td { height:19px; padding-left:12px; font-size:13px; }
.treasury-dash .writing-detail td:first-child::before { content:"↳ "; font-weight:700; }
.treasury-dash .product-writing td { color:#075d2b; background:#e7f8ee; }
.treasury-dash .charge-writing td { color:#a31515; background:#fff0f0; }
.treasury-dash .product-total td { color: #008b42; }
.treasury-dash .money-in-total td { color: #008b42; font-weight: 700; }
.treasury-dash .cash-out td { background: #d79797; }
.treasury-dash .charge-title td,.treasury-dash .charge td { background: #f00; }
.treasury-dash .money-out-total td { color: #f00; font-weight: 700; }
.treasury-dash .result-row td { color: var(--purple); }
.treasury-dash .result-state td { color: var(--purple); text-align: center; font-weight: 700; }
.treasury-dash .nature-title td { color:#fff; background:linear-gradient(90deg,#45105f,#7835a5); text-align:center; font-weight:900; letter-spacing:.04em; }
.treasury-dash .treasury-funds-title td { background:linear-gradient(90deg,#5c2378,#8c4cb2); }
.treasury-dash .fund-resource td { color:#54206f; background:#eadcf2; font-weight:800; }
.treasury-dash .treasury-transfer-title td { background:linear-gradient(90deg,#5b2377,#7d35a1); }
.treasury-dash .transfer-in td { color:#185f38; background:#cce9d7; font-weight:800; }
.treasury-dash .transfer-out td { color:#812c45; background:#efccd5; font-weight:800; }
.treasury-dash .transfer-detail-title td { color:#5a2772; background:#e5d5ed; }
.treasury-dash .transfer-writing td { color:#54206f; background:#f4edf7; }
.treasury-dash .transfer-in-writing td { border-left-color:#5eaa7a; }
.treasury-dash .transfer-out-writing td { border-left-color:#c26a7e; }
.treasury-dash .transfer-total td { color:#5a2772; background:#eadcf2; font-weight:900; }
.treasury-dash .treasury-client-title td { background:linear-gradient(90deg,#55206f,#8040a2); }
.treasury-dash .treasury-information td { color:#54206f; background:#eee2f4; font-weight:700; }
.treasury-dash .treasury-summary-title td { background:linear-gradient(90deg,#3e0c58,#72309a); }
.administration-nature-groups{display:grid;gap:22px;margin-top:18px}.administration-nature{overflow:hidden;border:1px solid #d6b9e2;border-radius:18px;background:#fbf8fd;box-shadow:0 13px 34px rgb(64 20 86 / 12%)}.administration-nature>header{display:flex;align-items:center;gap:16px;padding:18px 22px;color:#fff;background:linear-gradient(110deg,#321047,#7030a0)}.administration-nature>header>span{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid rgb(255 255 255 / 35%);border-radius:13px;background:rgb(255 255 255 / 14%);font-size:20px;font-weight:900}.administration-nature>header h2{margin:0;font-size:17px;letter-spacing:.055em}.administration-nature>header p{margin:4px 0 0;color:#eadcf1;font-size:12px}.administration-nature-content{display:grid;gap:11px;padding:16px}.administration-nature-content>.plus-collapsible{margin:0}.administration-nature-content>.open-agent-form{width:100%;margin:0}.nature-institution>header{background:linear-gradient(110deg,#4c1767,#8843ad)}.nature-operations>header{background:linear-gradient(110deg,#244f3b,#3f8763)}.nature-credit>header{background:linear-gradient(110deg,#513169,#8151a0)}.nature-users>header{background:linear-gradient(110deg,#35214f,#644282)}.nature-control>header{background:linear-gradient(110deg,#4a284e,#7a497d)}.nature-operations .plus-section-button{background:linear-gradient(110deg,#2d644a,#4c9370)}.nature-control .plus-section-button{background:linear-gradient(110deg,#512859,#7c4a83)}
.balance-dash th { font-size: 16px; }
.balance-dash td { color: var(--purple); }
.balance-dash td:nth-child(2),.balance-dash td:nth-child(4) { text-align: right; }
.balance-dash .balance-sub td { text-align: center; font-weight: 700; }
.balance-dash .debt-title,.balance-dash tr:not(.blank) td:nth-child(3),.balance-dash tr:not(.blank) td:nth-child(4) { color: #f00; }
.balance-dash .balance-total td { font-weight: 700; }
.balance-dash .equilibrium td { color: #fff; background: var(--purple); text-align: center; font-weight: 700; }

.status {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 12px;
  color: #4a4a4a;
  background: #f6f6f6;
  border-top: 1px solid #c6c6c6;
  font-size: 11px;
  user-select: none;
}

.status span:nth-child(2) { padding: 0 16px; }
.status span:last-child { text-align: right; }

nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  min-width: 0;
  padding: 5px 10px;
  overflow-x: auto;
  overflow-y: hidden;
  background: var(--purple);
  border-top: 0;
  box-shadow: none;
  scrollbar-width: none;
  user-select: none;
}

nav::-webkit-scrollbar { display: none; }

nav button {
  flex: 0 0 auto;
  height: 28px;
  padding: 0 14px;
  color: rgb(255 255 255 / 92%);
  background: rgb(255 255 255 / 9%);
  border: 1px solid rgb(255 255 255 / 14%);
  border-radius: 6px;
  box-shadow: inset 0 1px rgb(255 255 255 / 8%);
  cursor: pointer;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .025em;
  white-space: nowrap;
  transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}

nav button:hover {
  color: #fff;
  background: rgb(255 255 255 / 19%);
  border-color: rgb(255 255 255 / 30%);
  transform: translateY(-1px);
}

nav button.active {
  height: 30px;
  color: #4d1c6d;
  background: linear-gradient(180deg, #fff, #f4eafa);
  border: 1px solid #fff;
  box-shadow: 0 3px 8px rgb(38 10 57 / 28%), inset 0 -2px #c798e5;
  font-weight: 700;
  transform: none;
}

nav button:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 1px;
}

#toast {
  position: fixed;
  top: 48px;
  right: 18px;
  z-index: 20;
  max-width: min(360px, calc(100vw - 36px));
  padding: 11px 16px;
  color: #fff;
  background: #252525;
  border-left: 4px solid var(--excel);
  border-radius: 2px;
  box-shadow: 0 8px 24px rgb(0 0 0 / 24%);
  opacity: 0;
  transform: translateY(-8px);
  transition: opacity .18s ease, transform .18s ease;
  pointer-events: none;
  font-size: 12px;
}

#toast.show { opacity: 1; transform: translateY(0); }
#toast{top:24px;right:auto;left:50%;z-index:10000;min-width:320px;max-width:min(620px,calc(100vw - 30px));padding:15px 22px;border:1px solid rgb(255 255 255 / 24%);border-left:6px solid #d7a6ee;border-radius:12px;background:linear-gradient(110deg,#2b073d,#712c9a);box-shadow:0 14px 38px rgb(31 3 45 / 42%);transform:translate(-50%,-18px);text-align:center;font-size:14px;font-weight:800}.login-visible+#toast,#toast.show{display:block!important}#toast.show{opacity:1;transform:translate(-50%,0)}
.titlebar>#toast{position:absolute;top:auto;right:auto;bottom:18px;left:50%;z-index:10000;min-width:420px;max-width:54%;transform:translate(-50%,10px)}.titlebar>#toast.show{transform:translate(-50%,0)}

@media (max-width: 900px) {
  .excel-app { grid-template-rows: 192px 31px minmax(0, 1fr) 42px; }
  .ribbon button:not(.active):not(#exportBtn) { display: none; }
  .saved { display: none; }
  main { padding: 7px; }
  .dashboard { grid-template-columns: 505px 505px 478px; min-width: 1720px; padding: 0 12px 14px; gap: 55px; }
  .home { padding-inline: 20px; }
  nav button { padding-inline: 11px; }
  nav { justify-content: flex-start; }
  .sheet-filters { top: 55px; left: 50%; right: auto; width: calc(100% - 28px); min-height: 116px; }
  .filter-controls input[type="search"] { width: 145px; }
}

@media (max-width: 600px) {
  .titlebar { padding-inline: 9px; }
  .brand-logo { left: 8px; width: 375px; height: 174px; }
  .sheet-filters { top: 68px; left: 50%; right: auto; width: calc(100% - 24px); min-height: 96px; padding: 8px; }
  .filter-title { display: none; }
  .filter-controls { gap: 5px; }
  .filter-controls label { min-width: 95px; }
  .filter-controls input,
  .filter-controls select { min-width: 95px; }
  .home { min-width: 560px; padding: 10px 18px 35px; }
  .period-box { margin-top: 24px; }
  .grid th, .grid td { min-width: 105px; }
  .grid input, .grid select { min-width: 105px; }
  .status span:nth-child(2) { display: none; }
  .status { grid-template-columns: 1fr 1fr; }
}

@media print {
  .titlebar, .ribbon, .formula, .status, nav, #toast { display: none !important; }
  .excel-app { display: block; height: auto; }
  main { overflow: visible; padding: 0; background: #fff; }
  .worksheet { min-height: 0; border: 0; box-shadow: none; }
  .grid th { position: static; }
}
.plus-sheet { min-height: 100%; padding: 28px; background: #fffdf8; }
.reference-panel { width: min(1180px, 100%); margin: 0 auto; }
.reference-panel > h1 { margin: 0 0 24px; color: var(--purple-dark); font-size: 28px; letter-spacing: .08em; text-align: center; }
.open-agent-form { display:block; width:100%; min-height:48px; margin:0 auto 13px; padding:10px 17px; color:#fff; background:linear-gradient(180deg,#8244ad,var(--purple-dark)); border:0; border-radius:8px; box-shadow:0 5px 14px rgb(75 23 108 / 18%); cursor:pointer; font-size:14px; font-weight:900; letter-spacing:.04em; text-align:left; }
.plus-collapsible { display: block; width: 100%; margin: 0 0 13px; }
.plus-section-button { display: flex; align-items: center; gap: 11px; width: 100%; height: 48px; min-height: 48px; padding: 10px 17px; color: #fff; background: linear-gradient(180deg,#8244ad,#4b176c); border: 0; border-radius: 8px; box-shadow: 0 5px 14px rgb(75 23 108 / 18%); cursor: pointer; font-size: 14px; font-weight: 900; letter-spacing: .04em; text-align: left; text-transform: uppercase; }
.plus-section-button span { display: grid; place-items: center; flex: 0 0 25px; height: 25px; background: rgb(255 255 255 / 18%); border-radius: 50%; font-size: 19px; line-height: 1; }
.plus-section-button[aria-expanded="true"] { border-radius: 8px 8px 0 0; background: #4b176c; }
.plus-collapsible > [hidden] { display: none !important; }
.plus-collapsible > :not(.plus-section-button) { margin-top: 0; border-radius: 0 0 8px 8px; }
.plus-collapsible > form { display: grid; gap: 12px; padding: 20px; background: #fff; border: 1px solid #d7b8e3; box-shadow: 0 6px 18px rgb(75 23 108 / 9%); }
.parameter-management { padding: 18px; background: #fff; border: 1px solid #d7b8e3; }
.parameter-management > h2 { margin-top: 0; color: #4b176c; text-align: center; }
.parameter-group { margin: 0 0 18px; }
.parameter-group h3 { margin: 0; padding: 8px 10px; color: #fff; background: #7030a0; font-size: 13px; }
.parameter-group table { width: 100%; border-collapse: collapse; }
.parameter-group th,.parameter-group td { padding: 8px; border: 1px solid #dcc9e5; text-align: left; }
.parameter-group td:last-child { width: 210px; white-space: nowrap; }
.parameter-group button { margin-right: 6px; padding: 6px 9px; color: #fff; background: #7030a0; border: 0; border-radius: 4px; cursor: pointer; font-size: 11px; font-weight: 800; }
.parameter-group .delete-parameter { background: #c62828; }
.additional-parameters { padding: 18px; background: #fff; border: 1px solid #d7b8e3; }
.additional-parameters h2 { margin-top: 0; color: #4b176c; text-align: center; }
.additional-parameters h3 { margin: 18px 0 8px; color: #4b176c; }
.additional-parameters form { display: grid; grid-template-columns: minmax(180px,1fr) minmax(180px,1fr) 120px; gap: 8px; margin-bottom: 8px; }
.additional-parameters form:first-of-type { grid-template-columns: 1fr 120px; }
.additional-parameters input,.additional-parameters select { min-height: 36px; padding: 6px 9px; border: 1px solid #caa8da; border-radius: 4px; }
.additional-parameters button { color: #fff; background: #7030a0; border: 0; border-radius: 4px; cursor: pointer; font-weight: 800; }
.managed-exchange { display: flex; justify-content: space-between; gap: 10px; padding: 8px; border-bottom: 1px solid #dcc9e5; }
.managed-exchange button { padding: 6px 9px; background: #c62828; }
.remaining-administration { padding: 20px; background: #fff; border: 1px solid #d7b8e3; }
.remaining-administration > h2 { margin-top: 0; color: #4b176c; text-align: center; }
.remaining-administration h3 { margin: 18px 0 9px; padding: 8px; color: #fff; background: #7030a0; }
.remaining-administration form { display: grid; grid-template-columns: repeat(auto-fit,minmax(145px,1fr)); gap: 8px; margin-bottom: 9px; padding: 9px; background: #faf6fc; border: 1px solid #ead8f5; }
.remaining-administration input,.remaining-administration select { min-height: 36px; padding: 6px 8px; border: 1px solid #caa8da; border-radius: 4px; }
.remaining-administration button { min-height: 36px; padding: 6px 9px; color: #fff; background: #7030a0; border: 0; border-radius: 4px; cursor: pointer; font-weight: 800; }
.remaining-administration .danger { background: #c62828; }
.profile-permissions { display: flex; grid-column: 1/-1; flex-wrap: wrap; gap: 8px 14px; padding: 8px; }
.profile-permissions label { white-space: nowrap; }
#agentLoadError { margin:-12px 0 15px; color:#b42318; text-align:center; }
.reference-forms { display: grid; grid-template-columns: repeat(3, minmax(230px, 1fr)); gap: 18px; }
.reference-forms form { display: grid; gap: 12px; padding: 20px; background: #fff; border: 1px solid #d7b8e3; border-radius: 10px; box-shadow: 0 6px 18px rgb(75 23 108 / 9%); }
.institution-settings { margin-bottom:22px; padding:20px; background:#fff; border:1px solid #d7b8e3; border-radius:10px; }
.institution-settings > h2 { margin-top:0; color:var(--purple-dark); }
#institutionForm { display:grid; grid-template-columns:repeat(3,minmax(180px,1fr)); gap:12px; }
#institutionForm label,
#institutionLogoForm label { display:grid; gap:5px; color:#572075; font-size:11px; font-weight:700; }
#institutionForm input,
#institutionForm select,
#institutionLogoForm input { height:38px; padding:7px 10px; border:1px solid #caa8da; border-radius:5px; }
#institutionForm button,
#institutionLogoForm button { height:38px; color:#fff; background:var(--purple); border:0; border-radius:5px; font-weight:800; cursor:pointer; }
#institutionForm button { grid-column:1/-1; }
#institutionLogoForm { display:grid; grid-template-columns:1fr auto; align-items:end; gap:12px; margin-top:15px; }
.reference-forms h2,
.reference-list h2 { margin: 0 0 5px; color: var(--purple-dark); font-size: 16px; }
.reference-forms input,
.reference-forms select { height: 38px; padding: 7px 10px; border: 1px solid #caa8da; border-radius: 5px; background: #fff; }
.reference-forms button { height: 38px; color: #fff; background: var(--purple); border: 0; border-radius: 5px; cursor: pointer; font-weight: 800; }
.reference-list { margin-top: 24px; padding: 20px; background: #fff; border: 1px solid #d7b8e3; border-radius: 10px; }
.reference-list table { width: 100%; border-collapse: collapse; }
.reference-list th { color: #fff; background: var(--purple); }
.reference-list th,
.reference-list td { padding: 10px; border: 1px solid #dcc9e5; text-align: left; }
.reference-settings { grid-template-columns: repeat(2, minmax(260px, 1fr)); margin-top: 18px; }
.currency-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.currency-tags span { padding: 7px 12px; color: #fff; background: var(--purple); border-radius: 18px; font-weight: 800; }
.currency-management { margin-top: 24px; padding: 20px; background: #fbf7fd; border: 2px solid #7030a0; border-radius: 10px; }
.currency-management > h2 { margin-top: 0; color: #4b176c; text-align: center; }
.currency-forms,.currency-history { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; margin-top: 16px; }
.currency-forms form { display: grid; gap: 9px; padding: 15px; background: #fff; border: 1px solid #d7bce8; border-radius: 7px; }
.currency-forms h3,.currency-history h3 { margin: 0 0 8px; color: #61288a; }
.currency-forms input,.currency-forms select { min-height: 38px; padding: 7px; border: 1px solid #c9abd7; border-radius: 4px; }
.currency-history table { width: 100%; border-collapse: collapse; background: #fff; }
.currency-history th,.currency-history td { padding: 7px; border: 1px solid #d7bce8; text-align: left; }
.dashboard-currency { display: flex; align-items: center; gap: 8px; font-weight: 700; }
.dashboard-currency select { padding: 7px 28px 7px 9px; border: 1px solid #c9abd7; border-radius: 5px; }
.currency-position-panel { margin-top: 18px; padding: 14px; background: #fff; border: 1px solid #d7bce8; border-radius: 8px; }
.currency-position-panel h2 { margin: 0 0 10px; color: #4b176c; font-size: 15px; }
.currency-position-panel > div { display: grid; grid-template-columns: repeat(auto-fit,minmax(190px,1fr)); gap: 10px; }
.currency-position-panel article { display: grid; gap: 3px; padding: 11px; background: #f7effb; border-left: 4px solid #7030a0; }
.currency-position-panel article span { color: #351047; font-size: 20px; font-weight: 800; }
.currency-position-panel article small { color: #695675; }
.currency-position-panel p { margin: 12px 0 0; text-align: right; }
.sheet-currency-totals { position: sticky; left: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 10px; padding: 9px 12px; color: #fff; background: #4b176c; }
.sheet-currency-totals > span { padding: 5px 9px; color: #351047; background: #f3e6f8; border-radius: 4px; }
.writing-lists { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.writing-lists ul { max-height:220px; margin:8px 0 0; padding:0; overflow:auto; list-style:none; }
.writing-lists li { padding:7px 9px; border-bottom:1px solid #eadff0; font-size:12px; }
.user-management { margin-top:24px; padding:20px; background:#fff; border:1px solid #d7b8e3; border-radius:10px; }
.user-management[hidden] { display:none; }
.user-management > h2 { color:var(--purple-dark); }
.user-help { margin:-4px 0 16px; padding:10px 12px; color:#572075; background:#f5eafa; border-left:4px solid var(--purple); font-size:12px; }
#userForm { display:grid; grid-template-columns:repeat(3,minmax(180px,1fr)); gap:10px; margin-bottom:20px; }
#userForm > input,
#userForm > select { height:38px; padding:7px 10px; border:1px solid #caa8da; border-radius:5px; }
#userForm .active-user { display:flex; align-items:center; gap:7px; }
.permission-grid { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:8px 16px; padding:12px; background:#f7effa; border-radius:6px; }
.permission-grid label { font-size:11px; }
#userForm > button { grid-column:1/-1; height:38px; color:#fff; background:var(--purple); border:0; border-radius:5px; font-weight:800; }
.user-management table { width:100%; border-collapse:collapse; }
.user-management th { color:#fff; background:var(--purple); }
.user-management th,.user-management td { padding:9px; border:1px solid #dbc7e4; }
.user-management td button { color:#fff; background:var(--purple); border:0; border-radius:4px; padding:6px 9px; cursor:pointer; }
.user-management td .delete-user { margin-left: 6px; background: #c62828; }
.user-error { color:#b42318; font-weight:700; text-align:center; }
@media (max-width: 900px) { .reference-forms,.writing-lists,#institutionForm { grid-template-columns: 1fr; } }
.clients-sheet{padding:20px;background:#f4eff8;min-height:100%}.client-card,.client-list-card{max-width:1600px;margin:0 auto 22px;background:#fff;border:1px solid #d7c5e6;box-shadow:0 5px 18px #40105b1a}.client-card h1,.client-list-head{margin:0;background:#562078;color:#fff;padding:14px 20px}.client-card h1{text-align:center;font-family:Georgia,serif;font-size:24px}.client-form-grid{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:13px;padding:20px}.client-form-grid label{display:flex;flex-direction:column;gap:5px;color:#47205d;font-weight:700;font-size:12px}.client-form-grid input,.client-form-grid select,.client-form-grid textarea,.client-list-head input{box-sizing:border-box;width:100%;min-height:38px;border:1px solid #c7b2d5;background:#fff;padding:8px 10px;color:#1c1520}.client-form-grid input[readonly]{background:#e4e4e4;color:#555}.client-form-grid textarea{min-height:64px;resize:vertical}.client-wide{grid-column:span 2}.client-form-actions{display:flex;justify-content:center;gap:12px;padding:0 20px 20px}.client-form-actions button,.client-actions button,.history-head button{border:0;background:#762da1;color:#fff;padding:9px 13px;font-weight:700;cursor:pointer}.client-form-actions .secondary,.client-actions .secondary,.history-head .secondary{background:#765b84}.client-actions .danger{background:#b4232f}.client-list-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.client-list-head h2{margin:0;font-size:18px}.client-list-head input{max-width:430px;border-color:#fff}.client-table-wrap{overflow:auto}.client-table,.clients-sheet #clientHistory table{width:100%;border-collapse:collapse;font-size:12px}.client-table th,.client-table td,.clients-sheet #clientHistory th,.clients-sheet #clientHistory td{border:1px solid #d6d0d9;padding:8px;white-space:nowrap}.client-table th,.clients-sheet #clientHistory th{background:#171717;color:#fff}.client-table tbody tr:nth-child(even){background:#faf7fc}.client-actions{display:flex;gap:5px}.client-actions button{padding:6px 8px;font-size:10px}.client-status{display:inline-block;min-width:60px;text-align:center;border-radius:12px;padding:4px 8px;font-weight:700}.status-active{background:#d9f3df;color:#126426}.status-inactive{background:#e6e6e6;color:#555}.status-blocked{background:#f8d8db;color:#931f29}.empty-clients{text-align:center;padding:30px!important;color:#666}.clients-sheet #clientHistory{margin:18px;padding:18px;border:2px solid #762da1;background:#fcf9ff}.history-head{display:flex;justify-content:space-between;align-items:center;gap:15px}.history-head h2{color:#562078}.clients-sheet #clientHistory h3{color:#762da1;margin-bottom:7px}.client-select{min-width:190px}
.client-actions .qr-client{background:#2f0847}.client-qr-card{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px}.client-qr-card #clientQrCode{padding:14px;background:#fff;border:5px solid #762da1}.client-qr-card #clientQrCode img,.client-qr-card #clientQrCode canvas{display:block}.client-qr-card strong{font-size:24px;color:#562078}.client-qr-card span{font-size:17px}.client-qr-card button,.client-qr-card .download-client-qr{margin-top:7px;border:0;background:#762da1;color:#fff;padding:11px 18px;font-weight:700;cursor:pointer;text-decoration:none}
.client-actions .card-client{background:linear-gradient(135deg,#8d45ab,#542070)}.client-card-download{display:flex;flex-direction:column;align-items:center;gap:20px;padding:30px;background:radial-gradient(circle at top,#f7ecfb,#eee2f3)}.client-card-download canvas{display:block;width:min(100%,820px);height:auto;border-radius:26px;box-shadow:0 24px 55px #32104452,0 3px 10px #32104435}.client-card-download button{border:0;border-radius:7px;background:linear-gradient(135deg,#7f35a4,#471460);color:#fff;padding:14px 26px;box-shadow:0 6px 16px #4e176b40;font-weight:900;letter-spacing:.04em;cursor:pointer}.client-card-download button:disabled{background:#8c7f92;cursor:wait}
.client-list-photo{width:34px;height:34px;margin-right:8px;border:2px solid #d0a9df;border-radius:50%;object-fit:cover;vertical-align:middle}.client-form-grid input[type="file"]{padding:6px;background:#f7effa}
.client-table th.balance-cdf{background:#542070}.client-table th.balance-usd{background:#2f0847}.client-balance{text-align:right;background:#fbf7fd}.client-balance strong{display:block;color:#401052;font-size:13px}.client-balance small{display:block;color:#82728a;font-size:9px;font-weight:800}
.client-table th.frozen-header{background:#a32942}.client-frozen-amount{text-align:right;background:#fff1f3;color:#a02038;font-weight:900}.client-frozen-reason{max-width:280px;white-space:normal!important;background:#fff8f9;color:#6c2533;font-size:10px}.client-actions .freeze-client{background:#a32942}.client-hold-form{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:13px;padding:20px;background:#f8effb;border:1px solid #d8bee4}.client-hold-form label{display:grid;gap:5px;color:#572075;font-size:11px;font-weight:800}.client-hold-form input,.client-hold-form select,.client-hold-form textarea{min-height:39px;border:1px solid #c9abd7;padding:8px}.client-hold-form .hold-reason{grid-column:1/-1}.client-hold-form textarea{min-height:80px;resize:vertical}.client-hold-form button{grid-column:1/-1;border:0;background:#a32942;color:#fff;padding:12px;font-weight:900;cursor:pointer}.active-client-holds{margin-top:18px}.active-hold{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:7px 0;padding:11px 13px;background:#fff1f3;border-left:5px solid #a32942}.active-hold button{border:0;background:#542070;color:#fff;padding:8px 12px;font-weight:800;cursor:pointer}
.client-filter-actions{display:flex;justify-content:center;gap:10px;padding:12px;background:#eee5f3}.client-filter-actions button{min-width:160px;border:0;border-radius:5px;background:#762da1;color:#fff;padding:9px 15px;font-weight:800;cursor:pointer}.client-filter-actions button.active{background:#35104c;box-shadow:0 0 0 3px #c89add}.client-advanced-filters{display:flex;justify-content:center;align-items:end;flex-wrap:wrap;gap:9px;padding:14px;background:#762da1;color:#fff}.client-advanced-filters[hidden]{display:none}.client-advanced-filters label{display:grid;gap:4px;font-size:10px;font-weight:800}.client-advanced-filters input,.client-advanced-filters select{min-width:125px;height:32px;border:1px solid #d9bce6;padding:4px 7px}.client-table.sorting-enabled th:not(:last-child){cursor:pointer}.client-table.sorting-enabled th[data-direction="asc"]::after{content:" ▲"}.client-table.sorting-enabled th[data-direction="desc"]::after{content:" ▼"}
@media(max-width:1000px){.client-form-grid{grid-template-columns:repeat(2,minmax(160px,1fr))}}@media(max-width:600px){.client-form-grid{grid-template-columns:1fr}.client-wide{grid-column:auto}.client-list-head{align-items:stretch;flex-direction:column}.client-list-head input{max-width:none}}
.clients-sheet{box-sizing:border-box;width:max-content;min-width:100%;padding:24px}.clients-sheet .client-card,.clients-sheet .client-list-card{width:2100px;max-width:none;margin-left:auto;margin-right:auto}.clients-sheet .client-form-grid{grid-template-columns:repeat(5,minmax(240px,1fr));gap:15px;padding:24px}.clients-sheet .client-table th,.clients-sheet .client-table td{padding:10px 12px}.clients-sheet .client-table-wrap{width:100%;overflow-x:auto}
@media(max-width:1100px){.clients-sheet .client-form-grid{grid-template-columns:repeat(3,minmax(220px,1fr))}}

/* Identité visuelle premium unifiée — inspirée de la carte client */
body{background:#270638}
.excel-app{background:#f4eff8}
.titlebar{background:linear-gradient(118deg,#f8effb 0%,#fff 46%,#ead5f3 100%);box-shadow:inset 0 -1px #d6b7e3,0 8px 28px rgb(39 6 56 / 10%)}
.titlebar::before{content:"";position:absolute;right:-80px;top:-145px;width:390px;height:390px;border-radius:50%;background:rgb(112 48 160 / 6%);pointer-events:none}
.institution-identity>b{color:#4b176c;text-shadow:0 1px #fff}
.currency-badges>span{padding:4px 12px;border:1px solid rgb(255 255 255 / 28%);box-shadow:0 4px 12px rgb(75 23 108 / 16%)}
.institution-bar{background:linear-gradient(100deg,#270638,#552078 48%,#7030a0);box-shadow:0 5px 18px rgb(39 6 56 / 28%)}
.formula{background:linear-gradient(90deg,#351047,#4b176c,#351047);box-shadow:inset 0 1px rgb(255 255 255 / 10%)}
main{padding:22px;background-color:#eee5f3;background-image:radial-gradient(circle at 12% 8%,rgb(112 48 160 / 10%),transparent 24%),radial-gradient(circle at 88% 82%,rgb(75 23 108 / 9%),transparent 25%),linear-gradient(rgb(255 255 255 / 25%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 25%) 1px,transparent 1px);background-size:auto,auto,28px 28px,28px 28px}
.worksheet{overflow:visible;border:1px solid #d7c5e6;border-radius:18px;box-shadow:0 18px 45px rgb(50 16 68 / 14%),0 3px 10px rgb(50 16 68 / 8%)}
.worksheet:not(.dashboard-sheet):not(.clients-sheet):not(.plus-sheet){padding:12px;background:linear-gradient(145deg,#fff,#fbf7fd)}
.grid{overflow:hidden;border-radius:12px;box-shadow:0 5px 18px rgb(45 10 68 / 8%)}
.grid thead tr:first-child th{background:linear-gradient(180deg,#242026,#111);border-color:#3c3540;letter-spacing:.025em}
.grid tbody tr{transition:background-color .15s ease,box-shadow .15s ease}
.grid tbody tr:hover td:not(.rownum){background-color:#faf4fc;box-shadow:inset 0 1px rgb(112 48 160 / 8%),inset 0 -1px rgb(112 48 160 / 8%)}
.grid input,.grid select{transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
.grid input:focus,.grid select:focus{border-color:#7030a0;box-shadow:inset 0 0 0 1px #7030a0,0 0 0 2px rgb(112 48 160 / 12%)}
.grid button.save-row{border-radius:5px;background:linear-gradient(135deg,#8244ad,#552078);box-shadow:0 3px 8px rgb(75 23 108 / 20%)}
nav#tabs{padding:5px 14px;background:linear-gradient(90deg,#270638,#552078 48%,#270638);box-shadow:0 -5px 20px rgb(39 6 56 / 22%)}
nav#tabs button{margin:2px 3px;padding:7px 14px;color:#ead8f5;background:transparent;border:1px solid transparent;border-radius:8px;font-weight:700;transition:.16s ease}
nav#tabs button:hover{color:#fff;background:rgb(255 255 255 / 9%)}
nav#tabs button.active{color:#4b176c;background:#fff;border-color:#d9bce6;box-shadow:0 4px 12px rgb(0 0 0 / 18%)}
nav#tabs button[hidden]{display:none!important}
.sheet-filters{background:rgb(255 255 255 / 92%);border-color:#c99ddd;box-shadow:0 16px 35px rgb(50 16 68 / 20%);backdrop-filter:blur(14px)}
.sheet-filters{left:600px;right:175px;width:auto;max-width:none;padding-left:20px;padding-right:20px;transform:none}.filter-controls{justify-content:center;width:max-content;min-width:100%;margin:0 auto}
.sheet-filters{top:78px}
@media(max-width:1500px){.sheet-filters{left:500px;right:165px}}
@media(max-width:1100px){.sheet-filters{left:240px;right:155px}}
@media(max-width:800px){.sheet-filters{left:12px;right:12px;width:auto;transform:none}}
@media(min-width:1501px){.sheet-filters{left:340px;right:175px;width:auto;transform:none}}
.filter-controls input,.filter-controls select{border-radius:8px;background:#fcf9fd}
.clear-filters,.toggle-column-filters,.toggle-column-sorting{border-radius:8px;background:linear-gradient(135deg,#8244ad,#552078);box-shadow:0 4px 10px rgb(75 23 108 / 20%)}
.dashboard-sheet{padding:14px;background:linear-gradient(145deg,#fbf5fd,#fff)}
.dashboard-overview{border-radius:14px 14px 0 0;background:linear-gradient(135deg,#f4e7f9,#fff 48%,#ead5f3);box-shadow:0 10px 30px rgb(75 23 108 / 10%)}
.excel-dash{overflow:hidden;border-radius:12px;box-shadow:0 10px 24px rgb(39 6 56 / 12%)}
.dashboard-toolbar{background:linear-gradient(90deg,#171219,#351047);border-radius:10px 10px 0 0}
.plus-sheet{padding:36px;background:radial-gradient(circle at 10% 10%,#f4e7f9,transparent 32%),linear-gradient(145deg,#fff,#f5edf8)}
.reference-panel{width:min(1320px,100%)}
.reference-panel>h1{padding:22px;color:#fff;background:linear-gradient(110deg,#270638,#7030a0);border-radius:18px;box-shadow:0 14px 32px rgb(50 16 68 / 22%);font-family:Georgia,serif}
.plus-section-button,.open-agent-form{height:56px;border:1px solid rgb(255 255 255 / 16%);border-radius:12px;background:linear-gradient(110deg,#270638,#7030a0);box-shadow:0 9px 22px rgb(75 23 108 / 18%);transition:transform .16s ease,box-shadow .16s ease}
.plus-section-button:hover,.open-agent-form:hover{transform:translateY(-1px);box-shadow:0 13px 28px rgb(75 23 108 / 25%)}
.plus-collapsible>:not(.plus-section-button),.institution-settings,.reference-forms form,.reference-list,.currency-management,.user-management,.parameter-management,.additional-parameters,.remaining-administration{border-color:#d7b8e3;border-radius:0 0 14px 14px;box-shadow:0 12px 28px rgb(75 23 108 / 10%)}
.reference-forms input,.reference-forms select,#institutionForm input,#institutionForm select,#institutionLogoForm input,#userForm>input,#userForm>select,.remaining-administration input,.remaining-administration select,.additional-parameters input,.additional-parameters select{border-radius:8px;background:#fcf9fd}
.reference-forms button,#institutionForm button,#institutionLogoForm button,#userForm>button,.remaining-administration button,.additional-parameters button{border-radius:8px;background:linear-gradient(135deg,#8244ad,#552078);box-shadow:0 4px 10px rgb(75 23 108 / 18%)}
.clients-sheet{background:radial-gradient(circle at 8% 8%,#ead5f3,transparent 28%),linear-gradient(145deg,#f8f0fb,#eee5f3)}
.clients-sheet .client-card,.clients-sheet .client-list-card{overflow:hidden;border-radius:18px;border-color:#d7b8e3;box-shadow:0 18px 42px rgb(50 16 68 / 15%)}
.client-card h1,.client-list-head{background:linear-gradient(105deg,#270638,#7030a0);padding:18px 24px}
.client-form-grid input,.client-form-grid select,.client-form-grid textarea,.client-list-head input{border-radius:9px;background:#fcf9fd;transition:border-color .15s ease,box-shadow .15s ease}
.client-form-grid input:focus,.client-form-grid select:focus,.client-form-grid textarea:focus,.client-list-head input:focus{outline:0;border-color:#7030a0;box-shadow:0 0 0 3px rgb(112 48 160 / 12%)}
.client-form-actions button,.client-actions button,.history-head button{border-radius:7px;box-shadow:0 4px 10px rgb(75 23 108 / 16%)}
.client-filter-actions{background:linear-gradient(90deg,#f1e5f6,#fbf7fd,#f1e5f6)}
.client-advanced-filters{background:linear-gradient(100deg,#351047,#7030a0)}
#loginScreen{overflow:hidden;background:linear-gradient(135deg,#270638 0%,#552078 48%,#7030a0 100%)}
#loginScreen::before,#loginScreen::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
#loginScreen::before{width:620px;height:620px;right:-180px;top:-220px;background:rgb(255 255 255 / 8%);box-shadow:0 0 0 55px rgb(255 255 255 / 3%),0 0 0 110px rgb(255 255 255 / 2%)}
#loginScreen::after{width:430px;height:430px;left:-160px;bottom:-190px;background:rgb(255 255 255 / 6%)}
#loginForm{position:relative;z-index:2;overflow:hidden;width:min(760px,calc(100% - 40px));padding:38px 58px 46px;border:1px solid rgb(255 255 255 / 42%);border-radius:28px;background:linear-gradient(145deg,rgb(255 255 255 / 98%),rgb(247 239 251 / 96%));box-shadow:0 35px 90px rgb(20 2 30 / 48%),inset 0 1px #fff}
#loginForm::before{content:"";position:absolute;inset:0 0 auto;height:9px;background:linear-gradient(90deg,#270638,#7030a0,#270638)}
#loginForm h1{color:#4b176c;text-shadow:0 2px #fff;font-family:Georgia,serif}
#loginForm p{color:#765b84;font-size:14px;letter-spacing:.08em;text-transform:uppercase}
#loginForm input{height:50px;padding:10px 16px;border:1px solid #c9abd7;border-radius:11px;background:#fff;box-shadow:inset 0 1px 3px rgb(75 23 108 / 5%);transition:.16s ease}
#loginForm input:focus{outline:0;border-color:#7030a0;box-shadow:0 0 0 4px rgb(112 48 160 / 12%)}
#loginForm button{height:52px;border-radius:11px;background:linear-gradient(110deg,#270638,#7030a0);box-shadow:0 9px 20px rgb(75 23 108 / 26%);letter-spacing:.08em;transition:.16s ease}
#loginForm button:hover{transform:translateY(-1px);box-shadow:0 13px 26px rgb(75 23 108 / 34%)}
.login-logo{filter:drop-shadow(0 10px 18px rgb(75 23 108 / 14%))}
@media(max-width:800px){#loginForm{padding:26px 24px 32px;border-radius:20px}.login-logo{height:220px}.plus-sheet{padding:18px}.worksheet{border-radius:12px}}

/* Coins arrondis sur l'ensemble des blocs de l'application */
.titlebar{margin:6px 8px 4px;border-radius:18px}
.institution-bar{margin:4px 8px;border-radius:12px}
.formula{margin:0 8px 5px;border-radius:10px}
nav#tabs{margin:4px 0 0;border-radius:0}
.worksheet,.home .hero,.sheet-filters,.dashboard-toolbar,.dashboard-overview,.excel-dash,.dashboard-overview article,.currency-position-panel,.currency-position-panel article,.sheet-currency-totals{border-radius:14px}
.grid,.client-table-wrap,.reference-list table,.parameter-group table,.currency-history table,.user-management table,.clients-sheet #clientHistory table{border-radius:11px;overflow:hidden}
.client-card,.client-list-card,.client-filter-actions,.client-advanced-filters,.clients-sheet #clientHistory,.client-hold-form,.active-hold,.client-qr-card #clientQrCode{border-radius:14px}
.reference-panel>h1,.plus-collapsible,.plus-section-button,.open-agent-form,.institution-settings,.reference-forms form,.reference-list,.currency-management,.user-management,.parameter-management,.parameter-group,.additional-parameters,.remaining-administration,.admin-block,.currency-forms form,.permission-grid,.user-help{border-radius:14px}
.plus-section-button[aria-expanded="true"]{border-radius:14px 14px 8px 8px}
.plus-collapsible>:not(.plus-section-button){border-radius:0 0 14px 14px}
.reference-panel input,.reference-panel select,.reference-panel textarea,.clients-sheet input,.clients-sheet select,.clients-sheet textarea,.filter-controls input,.filter-controls select,.column-filter-row select{border-radius:9px}
.reference-panel button,.clients-sheet button,.filter-controls button,.grid button,.ribbon-dropdown,.ribbon-dropdown button,.currency-tags span,.client-status{border-radius:9px}
@media(max-width:800px){.titlebar{margin:4px;border-radius:12px}.institution-bar,.formula{margin-left:4px;margin-right:4px}nav#tabs{margin-left:0;margin-right:0}}

.term-deposit-sheet{padding:18px;background:linear-gradient(135deg,#fbf7fd,#f1e5f8);min-height:70vh}.term-hero{display:flex;align-items:center;justify-content:space-between;padding:22px 28px;margin-bottom:16px;color:#fff;background:linear-gradient(135deg,#351047,#7b35a5);border-radius:20px;box-shadow:0 12px 30px rgb(75 23 108 / 18%)}.term-hero small{font-weight:800;letter-spacing:1px}.term-hero h1{margin:4px 0;font-size:30px}.term-hero p{margin:0;opacity:.9}.term-hero-mark{display:grid;place-items:center;width:76px;height:76px;border:2px solid rgb(255 255 255 / 55%);border-radius:22px;font-size:25px;font-weight:900}.term-layout{display:grid;grid-template-columns:minmax(310px,390px) minmax(700px,1fr);gap:16px}.term-form-card,.term-list-card{padding:20px;background:#fff;border:1px solid #dfc8eb;border-radius:20px;box-shadow:0 12px 30px rgb(75 23 108 / 10%)}.term-form-card h2,.term-list-card h2{margin:0 0 14px;color:#4b176c}.term-form-card form{display:grid;grid-template-columns:1fr 1fr;gap:11px}.term-form-card label{display:flex;flex-direction:column;gap:5px;color:#5b2a76;font-size:12px;font-weight:800}.term-form-card .wide{grid-column:1/-1}.term-form-card input,.term-form-card select,.term-list-head input{min-height:40px;padding:8px 10px;background:#fff;border:1px solid #cdaadd;border-radius:10px}.term-form-card button,.term-actions button,.term-rate-form button{min-height:38px;padding:8px 12px;color:#fff;background:linear-gradient(135deg,#8244ad,#552078);border:0;border-radius:9px;font-weight:800;cursor:pointer}.term-form-card button{grid-column:1/-1}.term-preview{display:flex;flex-direction:column;gap:5px;padding:11px;background:#f6eafa;border-left:4px solid #7030a0;border-radius:8px;color:#54206f}.term-list-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:12px}.term-list-head h2{margin-bottom:2px}.term-list-head input{width:260px}.term-table-wrap{overflow:auto}.term-list-card table,#termRateList table{width:100%;border-collapse:collapse}.term-list-card th,.term-list-card td,#termRateList th,#termRateList td{padding:9px 7px;border-bottom:1px solid #eadcf0;text-align:left;white-space:nowrap}.term-list-card th,#termRateList th{color:#fff;background:#4b176c;font-size:11px}.term-list-card td small{display:block;color:#7d6b85}.term-status{display:inline-block;padding:5px 8px;border-radius:999px;background:#eee;font-weight:800}.term-status.actif{color:#087b3f;background:#dff7e9}.term-status.echeance{color:#9a5b00;background:#fff0cf}.term-status.liquide{color:#fff;background:#0a9f59}.term-status.retrait_anticipe{color:#fff;background:#bd2929}.term-actions{display:flex;gap:5px}.term-actions button{font-size:10px}.term-actions .danger,#termRateList .danger{background:#c62828}.term-actions .secondary,.term-rate-form .secondary{background:#76647e}.term-rate-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:16px}.term-rate-form label{display:flex;flex-direction:column;gap:5px;font-weight:700}.term-rate-form label.check{flex-direction:row;align-items:center}.term-rate-form input,.term-rate-form select{min-height:38px;padding:7px;border:1px solid #caa8da;border-radius:8px}@media(max-width:1100px){.term-layout{grid-template-columns:1fr}.term-list-head{align-items:flex-start;flex-direction:column}.term-list-head input{width:100%}}
.client-lookup-head{min-width:230px!important;background:linear-gradient(180deg,#7030a0,#4b176c)!important}.client-lookup-cell{min-width:230px;padding:3px!important;background:#f7effa!important}.client-lookup-cell>div{display:flex;align-items:center;gap:4px}.client-code-lookup{min-width:150px!important;height:29px!important;padding:4px 7px!important;border:1px solid #b98acf!important;border-radius:7px!important;background:#fff!important}.client-code-lookup.lookup-invalid{border-color:#c62828!important;box-shadow:0 0 0 2px rgb(198 40 40 / 14%)!important}.scan-client-qr{height:29px;padding:3px 7px!important;border:0!important;border-radius:6px!important;color:#fff!important;background:#552078!important;font-size:10px!important;font-weight:900!important;cursor:pointer}.qr-scanner-overlay{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px;background:rgb(28 3 40 / 82%);backdrop-filter:blur(9px)}.qr-scanner-box{width:min(520px,100%);padding:24px;border:1px solid #d7b8e3;border-radius:22px;background:#fff;box-shadow:0 28px 80px #170220;text-align:center}.qr-scanner-box h2{color:#552078}.qr-scanner-box video{display:block;width:100%;max-height:420px;border:6px solid #7030a0;border-radius:18px;background:#111}.qr-scanner-box button{border:0;border-radius:8px;background:#552078;color:#fff;padding:10px 18px;font-weight:900;cursor:pointer}
.table-pagination{position:sticky;left:0;display:flex;align-items:center;justify-content:center;gap:14px;width:min(100%,760px);margin:12px auto;padding:10px 16px;border:1px solid #c7a1d8;border-radius:12px;background:#f8f0fb;box-shadow:0 5px 16px rgb(75 23 108 / 12%);color:#4b176c}.table-pagination button{padding:8px 14px;border:0;border-radius:8px;background:#7030a0;color:#fff;font-weight:800;cursor:pointer}.table-pagination button:disabled{opacity:.38;cursor:not-allowed}.table-pagination span{color:#765b84}.pagination-settings form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.pagination-settings input{width:180px}
.pagination-numbers{display:flex;align-items:center;justify-content:center;gap:5px}.table-pagination .page-number{min-width:34px;padding:8px 9px;background:#fff;color:#552078;border:1px solid #b98acf}.table-pagination .page-number:hover,.table-pagination .page-number.active{background:#552078;color:#fff;box-shadow:0 3px 9px rgb(75 23 108 / 25%)}.pagination-numbers i{padding:0 3px;color:#765b84;font-style:normal;font-weight:900}@media(max-width:700px){.table-pagination{flex-wrap:wrap;gap:8px}.table-pagination span{width:100%;text-align:center}}
.pos-workspace{min-height:calc(100vh - 300px);display:grid;place-items:start center;padding:28px;background:radial-gradient(circle at 20% 0,rgb(112 48 160 / 15%),transparent 32%),linear-gradient(145deg,#f7f0fb,#eee2f5)}.pos-phone{width:min(760px,100%);overflow:hidden;border:1px solid #d2b5de;border-radius:30px;background:#fff;box-shadow:0 25px 70px rgb(50 8 70 / 20%)}.pos-app-header{display:flex;align-items:center;gap:15px;padding:24px 28px;color:#fff;background:linear-gradient(125deg,#311044,#7030a0)}.pos-withdrawal .pos-app-header{background:linear-gradient(125deg,#4a102b,#a32960)}.pos-app-icon{display:grid;place-items:center;width:52px;height:52px;border:1px solid rgb(255 255 255 / 35%);border-radius:16px;background:rgb(255 255 255 / 14%);font-size:31px;font-weight:900}.pos-app-header small{opacity:.72;letter-spacing:.15em}.pos-app-header h1{margin:3px 0 0;font-size:22px}.pos-secure{margin-left:auto;padding:7px 10px;border-radius:20px;background:rgb(255 255 255 / 13%);font-size:10px;font-weight:900}#posForm{padding:25px 28px 30px}.pos-step{display:grid;grid-template-columns:38px 1fr;gap:13px;margin-bottom:20px}.pos-step>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#7030a0;color:#fff;font-weight:900}.pos-step>div>label,.pos-fields label{display:grid;gap:6px;color:#6b5276;font-size:11px;font-weight:900;letter-spacing:.05em}.pos-lookup{display:grid;grid-template-columns:1fr auto;gap:8px;margin:7px 0}.pos-lookup input,.pos-step select,.pos-step input{width:100%;height:48px;padding:9px 13px;border:1px solid #ceb3da;border-radius:12px;background:#fff;color:#321040;font-size:15px}.pos-lookup button{padding:0 17px;border:0;border-radius:12px;background:#552078;color:#fff;font-weight:900}.pos-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pos-fields .pos-wide{grid-column:1/-1}.pos-fields .pos-amount{grid-column:1/-1}.pos-fields .pos-amount input{height:68px;color:#552078;font-size:30px;font-weight:900;text-align:center;background:#fbf7fd}.pos-customer{display:flex;align-items:center;gap:14px;margin:0 28px 22px;padding:15px;border:1px solid #d9c2e3;border-radius:16px;background:#f9f4fc}.pos-customer img,.pos-avatar{width:58px;height:58px;object-fit:cover;border-radius:16px}.pos-avatar{display:grid;place-items:center;background:#7030a0;color:#fff;font-size:25px;font-weight:900}.pos-customer>div:last-child{display:grid;gap:3px}.pos-customer small{color:#80658c}.pos-customer b{color:#168348;font-size:12px}.pos-summary{display:flex;align-items:center;justify-content:space-between;margin:4px 0 18px;padding:17px 20px;border-radius:16px;background:#291039;color:#fff}.pos-summary span{font-size:11px;font-weight:800}.pos-summary strong{font-size:23px}.pos-confirm{width:100%;height:56px;border:0;border-radius:15px;background:linear-gradient(100deg,#552078,#8e42b0);box-shadow:0 12px 24px rgb(85 32 120 / 24%);color:#fff;font-size:15px;font-weight:900;letter-spacing:.06em}.pos-withdrawal .pos-confirm{background:linear-gradient(100deg,#7a1d48,#b8326f)}.pos-confirm:disabled{opacity:.55}.pos-receipt{padding:35px;text-align:center}.receipt-check{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 14px;border-radius:50%;background:#17a05a;color:#fff;font-size:42px}.pos-receipt h2{color:#552078}.pos-receipt dl{margin:22px auto;max-width:480px;border-top:1px dashed #c8afcf}.pos-receipt dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 2px;border-bottom:1px dashed #d8c6df}.pos-receipt dt{color:#80658c}.pos-receipt dd{margin:0;font-weight:800}.pos-receipt button{margin:5px;padding:11px 18px;border:0;border-radius:10px;background:#552078;color:#fff;font-weight:900}@media(max-width:650px){.pos-workspace{padding:8px}.pos-phone{border-radius:20px}.pos-app-header{padding:18px}.pos-secure{display:none}#posForm{padding:20px 16px}.pos-customer{margin-left:16px;margin-right:16px}.pos-fields{grid-template-columns:1fr}}
.thermal-slip{max-width:280px;margin:auto;color:#111;text-align:center}.thermal-slip h2,.thermal-slip h3,.thermal-slip p{margin:4px 0}.thermal-slip small{display:block;font-size:11px}.thermal-slip hr{margin:8px 0;border:0;border-top:1px dashed #555}.thermal-slip dl{margin:6px 0}.thermal-slip dl div{display:flex;justify-content:space-between;gap:8px;padding:3px 0;border:0;font-size:12px;text-align:left}.thermal-slip dd{margin:0;text-align:right;font-weight:700}.thermal-slip .thermal-amount{padding:7px 0;border-top:1px dashed #555;border-bottom:1px dashed #555;font-size:25px;line-height:1.1;font-weight:900}.thermal-slip .thermal-amount dt{font-size:12px;font-weight:800}.thermal-slip .thermal-amount dd{font-size:25px;font-weight:900}.thermal-reference{font-size:11px}.receipt-actions{margin-top:15px}
@page{size:58mm auto;margin:2mm}@media print{html,body{width:58mm!important;min-width:58mm!important;margin:0!important;padding:0!important;background:#fff!important}body>*{display:none!important}#app,#sheet,.pos-workspace,.pos-phone,.pos-receipt,.thermal-slip{display:block!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important}.pos-app-header,#posForm,nav,.titlebar,.institution-bar,.formula,.sheet-filters,.table-pagination,.receipt-actions{display:none!important}.pos-phone{border:0!important;box-shadow:none!important}.pos-receipt{padding:0!important}.thermal-slip{font-family:Arial,sans-serif;font-size:11px;color:#000}.thermal-slip h2{font-size:16px}.thermal-slip h3{font-size:13px}.thermal-slip dl div{font-size:10px;padding:2px 0}.thermal-slip .thermal-amount,.thermal-slip .thermal-amount dd{font-size:24px!important;line-height:1.05!important;font-weight:900!important}.thermal-slip .thermal-amount dt{font-size:10px!important}.thermal-slip hr{margin:5px 0}}

/* Cellules protégées et résultats calculés : mauve pâle */
.grid td.computed,
.grid td:has(input[readonly]),
.grid td:has(select:disabled),
.grid td:has(input:disabled),
.grid .summary-row td:not(.rownum),
.grid td.total {
  background: #eadcf2 !important;
  box-shadow: inset 0 0 0 1px rgb(112 48 160 / 14%);
  color: #4b176c;
}
.grid input[readonly],
.grid input:disabled,
.grid select:disabled,
.client-form-grid input[readonly],
.reference-panel input[readonly] {
  background: #eadcf2 !important;
  color: #4b176c;
  cursor: not-allowed;
}
.grid tbody tr:hover td.computed,
.grid tbody tr:hover td:has(input[readonly]) { background: #e2cdea !important; }

/* Graphiques dynamiques du tableau de bord */
.dashboard-charts{display:grid;grid-template-columns:1.05fr 1.2fr .9fr;gap:16px;min-width:1720px;padding:18px 24px;background:#f8f1fb}.chart-card{min-height:270px;padding:20px;border:1px solid #dbc5e5;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgb(75 23 108 / 9%)}.chart-card header{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:20px}.chart-card header small{color:#8b6a99;font-size:10px;font-weight:900;letter-spacing:.13em}.chart-card header h2{margin:4px 0 0;color:#3c164e;font-size:18px}.chart-card header>b{padding:7px 10px;border-radius:9px;background:#f1e5f6;color:#552078;font-size:12px}.donut-layout{display:flex;align-items:center;justify-content:center;gap:30px}.donut{position:relative;display:grid;place-items:center;width:150px;height:150px;flex:0 0 150px;border-radius:50%;background:conic-gradient(#12a85a 0 var(--healthy),#d9364f var(--healthy) 360deg);box-shadow:inset 0 0 0 1px rgb(0 0 0 / 5%)}.donut::before{content:"";position:absolute;inset:24px;border-radius:50%;background:#fff;box-shadow:0 2px 13px rgb(47 15 60 / 12%)}.donut span{position:relative;z-index:1;display:grid;text-align:center}.donut strong{color:#351047;font-size:24px}.donut small{color:#7a6285;font-size:10px;font-weight:900}.chart-legend{min-width:220px}.chart-legend p{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;margin:11px 0;color:#675272;font-size:12px}.chart-legend i{width:9px;height:9px;border-radius:50%}.chart-legend i.healthy{background:#12a85a}.chart-legend i.risk{background:#d9364f}.chart-legend i.late{background:#f0a126}.chart-legend b{color:#351047}.horizontal-bars{display:grid;gap:16px}.horizontal-bars label{display:flex;justify-content:space-between;margin-bottom:5px;color:#675272;font-size:12px}.horizontal-bars label b{color:#351047}.horizontal-bars em{display:block;height:12px;overflow:hidden;border-radius:8px;background:#eee5f2}.horizontal-bars i{display:block;height:100%;min-width:3px;border-radius:8px;transition:width .5s ease}.horizontal-bars .green{background:linear-gradient(90deg,#0b9850,#31c878)}.horizontal-bars .red{background:linear-gradient(90deg,#a91d39,#e35268)}.horizontal-bars .purple{background:linear-gradient(90deg,#552078,#9d55bd)}.horizontal-bars .orange{background:linear-gradient(90deg,#d07717,#f5b34c)}.currency-bars{display:flex;align-items:end;justify-content:center;gap:20px;height:180px;padding-top:10px}.currency-bars>div{display:grid;grid-template-rows:auto 125px auto;gap:6px;min-width:66px;text-align:center}.currency-bars>div>b{color:#552078;font-size:12px}.currency-bars em{display:flex;align-items:end;justify-content:center;border-radius:9px;background:#f3eaf7}.currency-bars i{display:block;width:34px;border-radius:8px 8px 3px 3px;background:linear-gradient(#9f57bd,#552078)}.currency-bars i.negative{background:linear-gradient(#e45a6b,#a92039)}.currency-bars span{color:#351047;font-size:11px;font-weight:800}.currency-bars span.negative{color:#b4233d}@media(max-width:1100px){.dashboard-charts{grid-template-columns:1fr;min-width:1100px}}
.agent-section-toggle{width:100%!important;margin:0!important;text-align:left}.agent-section-toggle+ #agentFormPanel{border-radius:0 0 14px 14px!important}
.pagination-collapsible{width:100%;margin-bottom:13px}.pagination-collapsible .pagination-settings{margin:0;padding:20px;border:1px solid #d7b8e3;border-top:0;background:#fff}.pagination-collapsible .pagination-settings form{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.pagination-collapsible .pagination-settings p{margin:13px 0 0;color:#765b84}

/* Zone horloge : dégradé intégré à deux mauves foncés */
.titlebar::after{
  content:"";
  position:absolute;
  z-index:1;
  top:0;
  right:0;
  width:860px;
  height:100%;
  background:linear-gradient(105deg,rgb(112 48 160 / 0) 0%,rgb(96 38 137 / 18%) 12%,#64268c 30%,#552078 50%,#43145f 72%,#270638 100%);
  clip-path:none;
  pointer-events:none;
}
.titlebar .user-box{z-index:5;color:#fff}.titlebar .user-box #currentUser{padding:5px 9px;border-radius:9px;background:rgb(255 255 255 / 11%);text-shadow:0 1px 2px #270638}.titlebar .analog-clock{background:radial-gradient(circle,#fff 66%,#ead5f3 68%,#c99ddd 100%);box-shadow:0 7px 20px rgb(16 1 24 / 48%),inset 0 0 0 2px #c99ddd}
.dashboard-welcome{position:absolute;z-index:6;left:50%;bottom:18px;display:flex;align-items:baseline;justify-content:center;gap:20px;max-width:54%;padding:12px 30px;border:1px solid rgb(112 48 160 / 20%);border-radius:20px;background:linear-gradient(105deg,rgb(255 255 255 / 94%),rgb(241 226 248 / 97%));box-shadow:0 12px 32px rgb(75 23 108 / 20%);color:#4b176c;transform:translateX(-50%);animation:welcomeAppear .5s ease both;white-space:nowrap}.dashboard-welcome small{flex:0 0 auto;font-size:40px;font-weight:950;letter-spacing:.07em;line-height:1}.dashboard-welcome strong{max-width:100%;overflow:hidden;font-size:62px;font-weight:950;line-height:1;text-overflow:ellipsis;text-transform:uppercase}@keyframes welcomeAppear{from{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%,0)}}
.dashboard-welcome.welcome-closing{opacity:0;transform:translate(-50%,-8px);transition:opacity .25s ease,transform .25s ease}
.dashboard-filter-controls{justify-content:center}.dashboard-filter-controls label{min-width:125px}.dashboard-filter-controls button{align-self:end;height:36px}
#resetDashboardFilters,#applyDashboardFilters{height:31px;padding:0 15px;color:#fff!important;background:linear-gradient(135deg,#8244ad,#552078)!important;border:0!important;border-radius:8px!important;outline:0!important;box-shadow:0 4px 10px rgb(75 23 108 / 20%)!important;cursor:pointer;font-size:10px;font-weight:800;white-space:nowrap}#resetDashboardFilters:hover,#applyDashboardFilters:hover{background:linear-gradient(135deg,#7030a0,#270638)!important;transform:translateY(-1px)}#applyDashboardFilters.active{color:#fff!important}
#applyDashboardFilters{display:none!important}
.sheet-filters.dashboard-filter-zone{min-height:136px;overflow:hidden;padding:10px 16px 12px}.dashboard-filter-zone .filter-title{margin-bottom:7px}.dashboard-filter-zone .filter-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;width:100%;min-width:0;gap:7px 9px}.dashboard-filter-zone .filter-controls label{min-width:0}.dashboard-filter-zone .filter-controls input,.dashboard-filter-zone .filter-controls select,.dashboard-filter-zone .filter-controls input[type="search"],.dashboard-filter-zone .filter-controls input[type="number"]{width:100%;min-width:0}.dashboard-filter-zone #resetDashboardFilters,.dashboard-filter-zone #applyDashboardFilters{width:100%;min-width:0}
@media(max-width:1100px){.sheet-filters.dashboard-filter-zone{min-height:178px}.dashboard-filter-zone .filter-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}
.sheet-filters{min-height:136px;overflow:hidden;padding:10px 16px 12px}.sheet-filters .filter-title{margin-bottom:7px}.sheet-filters .filter-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;width:100%;min-width:0;gap:7px 9px}.sheet-filters .filter-controls label{min-width:0}.sheet-filters .filter-controls input,.sheet-filters .filter-controls select,.sheet-filters .filter-controls input[type="search"],.sheet-filters .filter-controls input[type="number"]{width:100%;min-width:0}.sheet-filters .filter-controls>button{width:100%;min-width:0;margin:0;align-self:end}
.sheet-filters .precaution-filter-notice{grid-column:1/-1}
@media(max-width:1100px){.sheet-filters{min-height:178px}.sheet-filters .filter-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}
.precaution-dashboard{margin:18px 0;padding:20px;border:1px solid #d9b9ec;border-radius:18px;background:linear-gradient(135deg,#fff 0%,#f8effd 100%);box-shadow:0 10px 30px #4b126318}.precaution-dashboard header{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.precaution-dashboard header small{color:#7430a1;font-weight:800;letter-spacing:1px}.precaution-dashboard header h2{margin:3px 0;color:#401052}.precaution-dashboard header>strong{padding:9px 15px;border-radius:999px;background:#6f2da8;color:#fff}.precaution-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:10px}.precaution-kpis article{display:flex;flex-direction:column;gap:6px;padding:13px;border-radius:12px;background:#fff;border-left:5px solid #8e44ad}.precaution-kpis article.good{border-color:#00b95f}.precaution-kpis article.danger{border-color:#ed1c24}.precaution-kpis span{font-size:12px;font-weight:700;color:#555}.precaution-kpis b{font-size:20px;color:#4c165f}.precaution-cell{white-space:nowrap}.precaution-retard-de-precaution{background:#ffd8dc!important;color:#b00012!important;font-weight:800}.precaution-en-avance,.precaution-entierement-provisionne{background:#d9f5e5!important;color:#087b3c!important;font-weight:800}.precaution-a-jour{background:#f1e1fa!important;color:#662586!important;font-weight:800}@media(max-width:900px){.precaution-kpis{grid-template-columns:repeat(2,1fr)}}
.precaution-kpis button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:13px;border:1px solid #eadcf2;border-left:5px solid #8e44ad;border-radius:12px;background:#fff;cursor:pointer;text-align:left;transition:.18s transform,.18s box-shadow}.precaution-kpis button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #51126b22}.precaution-kpis button.good{border-left-color:#00b95f}.precaution-kpis button.danger{border-left-color:#ed1c24}.precaution-kpis button span{font-size:12px;font-weight:700;color:#555}.precaution-kpis button b{font-size:20px;color:#4c165f}.precaution-kpis button small{color:#75309b;font-weight:700}.precaution-filter-notice{flex:1 0 100%;display:flex;align-items:center;justify-content:center;gap:18px;padding:9px 14px;border-radius:10px;background:#ead8f5;color:#53146b}.precaution-filter-notice button{padding:7px 12px;border:0;border-radius:8px;background:#68258e;color:#fff;font-weight:800;cursor:pointer}
.accounting-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;margin:15px 0}.accounting-settings-grid label{display:flex;flex-direction:column;gap:6px;font-weight:700;color:#53146b}.accounting-settings-grid input{padding:10px;border:1px solid #d6b7e6;border-radius:9px}@media(max-width:700px){.accounting-settings-grid{grid-template-columns:1fr}}
.dashboard{grid-template-columns:repeat(3,720px);align-items:stretch;justify-content:space-between;column-gap:40px;width:100%;min-width:2288px;padding:0 24px 18px;box-sizing:border-box}.dashboard>.excel-dash{display:flex;flex-direction:column;width:720px;height:100%;min-width:720px}.dashboard>.excel-dash table{flex:1;height:100%}.dashboard>.excel-dash h2{flex:0 0 30px}.dashboard-sheet,.dashboard-overview,.dashboard-charts,.precaution-dashboard{min-width:2288px}@media(max-width:900px){.dashboard{grid-template-columns:repeat(3,720px);align-items:stretch;justify-content:space-between;column-gap:40px;width:100%;min-width:2288px;padding:0 24px 18px}}
.special-credit-sheet{display:grid;grid-template-columns:minmax(430px,620px) minmax(560px,1fr);gap:24px;padding:30px;background:linear-gradient(145deg,#f8effd,#fff)}.special-credit-form-card,.special-credit-preview{padding:24px;border:1px solid #dcc3e9;border-radius:22px;background:#fff;box-shadow:0 16px 40px #4b12631c}.special-credit-form-card header{display:flex;justify-content:space-between;align-items:center;padding:20px;margin:-24px -24px 22px;border-radius:22px 22px 0 0;background:linear-gradient(120deg,#2c073d,#7935a4);color:#fff}.special-credit-form-card h1{margin:4px 0;font-size:30px}.special-credit-form-card p{margin:0}.special-credit-icon{font-size:64px}.special-credit-form-card form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.special-credit-form-card label{display:flex;flex-direction:column;gap:6px;color:#57206f;font-weight:800}.special-credit-form-card .wide,.special-credit-form-card button{grid-column:1/-1}.special-credit-form-card input,.special-credit-form-card select{padding:12px;border:1px solid #d4b4e4;border-radius:10px;background:#fcf9fd}.special-credit-form-card button{padding:14px;border:0;border-radius:12px;background:linear-gradient(110deg,#401052,#8a42b5);color:#fff;font-weight:900;cursor:pointer}.special-credit-preview h2{color:#53146b}.special-credit-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.special-credit-kpis article{padding:14px;border-radius:12px;background:#f4e8fa;border-left:5px solid #7a31a3}.special-credit-kpis span,.special-credit-kpis b{display:block}.special-credit-kpis b{margin-top:8px;font-size:20px;color:#47105e}.special-schedule-wrap{max-height:540px;margin-top:18px;overflow:auto}.special-credit-preview table{width:100%;border-collapse:collapse}.special-credit-preview th{position:sticky;top:0;padding:10px;background:#632486;color:#fff}.special-credit-preview td{padding:8px;border-bottom:1px solid #e7d7ee;text-align:right}.special-credit-row{outline:2px solid #9a56bc;outline-offset:-2px}.special-credit-badge{display:block;width:max-content;margin:3px auto;padding:2px 7px;border-radius:10px;background:#6f2698;color:#fff;font-weight:800}.special-month-column{background:#4b145f!important}.special-month-cell{background:#fbf3ff!important}@media(max-width:1000px){.special-credit-sheet{grid-template-columns:1fr}.special-credit-kpis{grid-template-columns:repeat(2,1fr)}}
.special-client-lookup{grid-column:1/-1;padding:14px;border:1px solid #d8bce7;border-radius:14px;background:#f7ecfc}.special-client-lookup label{display:block}.special-client-lookup label>div{display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:7px}.special-client-lookup input{min-width:0}.special-client-lookup button{grid-column:auto!important;padding:0 18px!important;background:linear-gradient(110deg,#6e2795,#401052)!important}.special-client-lookup .lookup-invalid{border-color:#e22132!important;background:#fff0f2!important}
html{background:var(--purple)}body{background:var(--purple)}.excel-app{background:linear-gradient(to bottom,var(--purple) 0 22px,#f4eff8 22px 100%)}.excel-app::before{left:42px;right:42px;border-radius:0}.titlebar{border-radius:22px 22px 0 0;overflow:hidden}body::before,body::after{top:0;border-radius:0}
html,body{background:#f4eff8}body{padding:0}body::before,body::after,.excel-app::before{display:none}.excel-app{background:#f4eff8}.titlebar{border-radius:0;overflow:hidden}
.user-box #currentUser{margin-top:30px}.user-box .user-actions{justify-items:center;gap:12px}.user-box #logoutBtn{display:grid;place-items:center;justify-self:center;width:38px;height:38px;padding:0;border-radius:50%;font-size:23px;line-height:1;background:#cf2525;box-shadow:0 5px 13px rgb(120 0 0 / 35%)}.user-box #logoutBtn:hover{background:#a41414;transform:translateY(-1px)}
#loginForm input{color:#2c1735!important;background:#fff!important;border-color:#d8c6df!important}#loginForm input::placeholder{color:#817286!important}#loginForm input:focus{border-color:#8b43ad!important;box-shadow:0 0 0 3px rgb(112 48 160 / 18%)!important;outline:0}
#loginScreen #loginForm input,#loginScreen #loginForm input:-webkit-autofill,#loginScreen #loginForm input:-webkit-autofill:hover,#loginScreen #loginForm input:-webkit-autofill:focus{color:#24142c!important;background-color:#fff!important;background-image:none!important;-webkit-text-fill-color:#24142c!important;-webkit-box-shadow:0 0 0 1000px #fff inset!important;box-shadow:0 0 0 1000px #fff inset!important;caret-color:#24142c!important;color-scheme:light!important}
.session-timeout-settings form{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.session-timeout-settings label{display:grid;gap:7px;color:#53146b;font-weight:800}.session-timeout-settings input{width:190px;padding:11px;border:1px solid #d4b7e2;border-radius:9px}.session-timeout-settings p{margin:12px 0 0;color:#745b80}

/* Affichage léger : aucun effet décoratif ne doit ralentir l'interface. */
*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
.sheet-filters,.qr-scanner-overlay{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.sheet-filters.initial-filter-reserve:not(:has(.filter-controls)){visibility:hidden!important;pointer-events:none!important}
.brand-logo,.login-logo{filter:none!important}
.worksheet,.grid,.titlebar,.sheet-filters,.excel-dash,.chart-card,.kpi-card,.client-card,.client-list-card,.special-credit-form-card,.special-credit-preview,.pos-phone,.precaution-dashboard,#loginForm{box-shadow:none!important}
.grid tbody tr:hover td:not(.rownum){box-shadow:none!important}
.dashboard-welcome.welcome-closing{display:none!important}
.credit-grid td:last-child{min-width:130px;white-space:nowrap}.credit-grid td:last-child .save-row,.credit-schedule-button{display:inline-flex;width:auto;min-width:0;height:27px;align-items:center;justify-content:center;margin:2px;padding:4px 7px;border:0;border-radius:5px;vertical-align:middle;cursor:pointer;font-size:9px;font-weight:900}.credit-grid td:last-child .save-row{min-width:28px}.credit-schedule-button{color:#fff!important;background:#7030a0!important}.credit-schedule-modal{position:fixed;inset:0;z-index:15000;display:grid;place-items:center;padding:22px;background:rgb(24 7 33 / 78%)}.credit-schedule-document{display:flex;flex-direction:column;width:min(1050px,100%);max-height:94vh;overflow:hidden;border-radius:18px;background:#fff}.credit-schedule-document>header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;color:#fff;background:#552078}.credit-schedule-document h1{margin:3px 0 0;font-size:24px}.credit-schedule-document header small{font-weight:800}.schedule-close{width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:#552078;font-size:27px;cursor:pointer}.schedule-customer{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:16px 22px;background:#f5edf8}.schedule-customer p{display:grid;gap:3px;margin:0;padding:9px;border:1px solid #dfcce8;border-radius:8px;background:#fff}.schedule-customer span{color:#765b84;font-size:10px;font-weight:800;text-transform:uppercase}.schedule-customer strong{color:#3d174d}.schedule-table-wrap{overflow:auto;padding:0 22px}.credit-schedule-document table{width:100%;border-collapse:collapse;font-size:12px}.credit-schedule-document th,.credit-schedule-document td{padding:8px;border:1px solid #d9d0dd;text-align:right}.credit-schedule-document th{color:#fff;background:#7030a0}.credit-schedule-document td:nth-child(1),.credit-schedule-document td:nth-child(2),.credit-schedule-document td:last-child{text-align:center}.schedule-paid{color:#087b3c;font-weight:900}.schedule-late{color:#c62828;font-weight:900}.schedule-future{color:#6e4d7d;font-weight:900}.credit-schedule-document>footer{display:flex;justify-content:center;gap:12px;padding:16px}.credit-schedule-document>footer button{padding:11px 18px;border:0;border-radius:8px;background:#7030a0;color:#fff;font-weight:900;cursor:pointer}.credit-schedule-document>footer .schedule-print{background:#351047}@media(max-width:700px){.schedule-customer{grid-template-columns:1fr 1fr}.credit-schedule-modal{padding:6px}}
@media print{body:has(#creditScheduleModal)>*:not(#creditScheduleModal){display:none!important}#creditScheduleModal{position:static!important;display:block!important;padding:0!important;background:#fff!important}.credit-schedule-document{display:block!important;width:100%!important;max-height:none!important;overflow:visible!important;border-radius:0!important}.credit-schedule-document .schedule-close,.credit-schedule-document>footer{display:none!important}.schedule-table-wrap{overflow:visible!important;padding:0!important}.credit-schedule-document table{font-size:10px!important}}
.negative-repayment-settings form{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.negative-repayment-settings label{display:grid;gap:7px;color:#53146b;font-weight:800}.negative-repayment-settings select{min-width:390px;padding:11px;border:1px solid #d4b7e2;border-radius:9px;background:#fff}.negative-repayment-settings p{margin:14px 0 0;padding:10px;border-radius:8px;background:#f7effa;font-weight:800}
.repayment-history-cell{min-width:170px;max-width:260px;white-space:normal!important;font-size:10px;line-height:1.3}.credit-grid input[name^="installment_"]{min-width:85px}
.repayment-history-cell strong{display:block;color:#4b1468;font-size:14px;line-height:1.15}.repayment-history-cell small{display:block;margin-top:3px;color:#67596d;font-size:9px;font-weight:700;line-height:1.2}.repayment-history-cell strong:not(:empty)+small{white-space:normal}
.repayment-history-cell[data-history-tooltip]:not([data-history-tooltip=""]){position:relative;cursor:help}.repayment-history-cell[data-history-tooltip]:not([data-history-tooltip=""])::after{position:absolute;z-index:40;bottom:calc(100% + 7px);left:50%;width:max-content;max-width:310px;padding:9px 12px;border:1px solid #c99cdd;border-radius:9px;background:#f1ddf8;box-shadow:0 7px 18px rgb(70 22 95 / 22%);color:#49145f;font-size:10px;font-weight:700;line-height:1.45;text-align:left;white-space:pre-line;overflow-wrap:anywhere;content:attr(data-history-tooltip);opacity:0;pointer-events:none;transform:translate(-50%,5px);transition:opacity .12s ease,transform .12s ease}.repayment-history-cell[data-history-tooltip]:not([data-history-tooltip=""]):hover::after{opacity:1;transform:translate(-50%,0)}
.repayment-history-cell[data-history-tooltip]::after{display:none!important}.history-floating-tooltip{position:fixed;z-index:30000;width:max-content;max-width:min(340px,calc(100vw - 16px));padding:10px 13px;border:1px solid #c99cdd;border-radius:9px;background:#f1ddf8;box-shadow:0 8px 22px rgb(70 22 95 / 25%);color:#49145f;font-size:10px;font-weight:700;line-height:1.5;text-align:left;white-space:pre-line;overflow-wrap:anywhere;pointer-events:none}
.dashboard-sheet,.dashboard-overview,.dashboard-charts,.precaution-dashboard{min-width:0!important}.dashboard-overview,.dashboard-charts,.dashboard{width:100%;box-sizing:border-box}.dashboard{grid-template-columns:repeat(3,minmax(420px,1fr))!important;column-gap:24px!important;min-width:0!important}.dashboard>.excel-dash{width:100%!important;min-width:0!important}.dashboard-charts{grid-template-columns:repeat(3,minmax(300px,1fr));min-width:0}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.dashboard-management{margin:0;padding:20px 24px;background:#f8f1fb;font-family:Calibri,"Segoe UI",sans-serif}.dashboard-management>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:14px 18px;border-radius:14px;background:linear-gradient(90deg,#42105d,#7030a0);color:#fff}.dashboard-management header small{font-weight:900;letter-spacing:.12em}.dashboard-management header h2{margin:3px 0 0;font-size:17px}.dashboard-management header strong{font-size:11px;white-space:nowrap}.management-kpis{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:12px}.management-kpis article{display:grid;gap:7px;padding:14px;border:1px solid #dcc9e6;border-left:5px solid #7030a0;border-radius:13px;background:#fff}.management-kpis article.success{border-left-color:#0ca35a}.management-kpis article.danger{border-left-color:#d22d43}.management-kpis span{color:#71587e;font-size:10px;font-weight:900;text-transform:uppercase}.management-kpis b{color:#3f1453;font-size:19px}.management-kpis small{color:#745f7e;font-weight:700}.dashboard-management-grid{display:grid;grid-template-columns:1.35fr 1fr .8fr;gap:14px;margin-top:14px}.dashboard-management-grid>article{padding:16px;border:1px solid #dcc9e6;border-radius:14px;background:#fff}.dashboard-management-grid h3{margin:0 0 13px;color:#4b176c}.dashboard-trend-row{display:grid;grid-template-columns:62px repeat(4,1fr);align-items:center;gap:7px;margin:8px 0}.dashboard-trend-row>b{color:#533068;font-size:10px}.dashboard-trend-row>span{position:relative;height:28px;overflow:hidden;border-radius:7px;background:#f3e9f7}.dashboard-trend-row i{position:absolute;inset:0 auto 0 0;min-width:2px;opacity:.28}.dashboard-trend-row i.deposit{background:#0ca35a}.dashboard-trend-row i.withdrawal{background:#d22d43}.dashboard-trend-row i.credit{background:#7030a0}.dashboard-trend-row i.repayment{background:#2989b8}.dashboard-trend-row small{position:relative;z-index:1;display:block;padding:7px;color:#442550;font-size:9px;font-weight:800;white-space:nowrap}.dashboard-agencies table{width:100%;border-collapse:collapse;font-size:11px}.dashboard-agencies th{padding:8px;background:#5b2079;color:#fff}.dashboard-agencies td{padding:8px;border-bottom:1px solid #eadff0;text-align:right}.dashboard-agencies td:first-child{text-align:left;font-weight:800}.dashboard-dat p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:9px 2px;border-bottom:1px solid #eadff0}.dashboard-dat p span{color:#70567d}.dashboard-dat p b{color:#4b176c}
@media(max-width:1450px){.dashboard{grid-template-columns:1fr!important}.dashboard>.excel-dash{max-width:none!important}.dashboard-charts,.dashboard-management-grid{grid-template-columns:1fr}.management-kpis{grid-template-columns:repeat(2,minmax(170px,1fr))}}@media(max-width:760px){.dashboard-overview,.dashboard-charts,.dashboard,.dashboard-management{padding-left:10px;padding-right:10px}.management-kpis{grid-template-columns:1fr}.dashboard-management>header{align-items:flex-start;flex-direction:column}.dashboard-trend-row{grid-template-columns:55px 1fr}.dashboard-trend-row>span{grid-column:2}.dashboard{grid-template-columns:minmax(0,1fr)!important}.excel-dash table{font-size:11px}.excel-dash td{white-space:normal}}
.management-link{cursor:pointer}.management-link:hover,.management-link:focus{border-color:#9e5cbc;outline:2px solid rgb(112 48 160 / 18%);transform:translateY(-1px)}
.capital-overview{margin-bottom:14px;padding:20px;border:1px solid #dcc7e7;border-radius:16px;background:linear-gradient(145deg,#f8effc,#fff);font-family:Calibri,"Segoe UI",sans-serif}.capital-overview>header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;padding:15px 18px;border-radius:13px;background:linear-gradient(90deg,#42105d,#7832a6);color:#fff}.capital-overview header small{font-weight:900;letter-spacing:.12em}.capital-overview header h1{margin:3px 0;font-size:23px}.capital-overview header p{margin:0;font-size:11px}.capital-overview header>strong{padding:8px 12px;border-radius:999px;background:rgb(255 255 255 / 16%);white-space:nowrap}.capital-kpis{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:11px}.capital-kpis article{display:grid;gap:7px;padding:14px;border:1px solid #dfcee8;border-left:5px solid #7030a0;border-radius:12px;background:#fff}.capital-kpis article.success{border-left-color:#0b9e52}.capital-kpis article.danger{border-left-color:#d22d43}.capital-kpis span{color:#765d81;font-size:10px;font-weight:900;text-transform:uppercase}.capital-kpis b{color:#42105d;font-size:18px}.capital-kpis small{color:#75657c;font-weight:700}.capital-analysis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.capital-analysis>article{padding:15px;border:1px solid #dfcee8;border-radius:12px;background:#fff}.capital-analysis h2{margin:0 0 11px;color:#4b176c;font-size:15px}.capital-analysis p{display:flex;justify-content:space-between;gap:10px;margin:0;padding:8px 2px;border-bottom:1px solid #eee3f2}.capital-analysis p:last-child{border-bottom:0}.capital-analysis p span{color:#705a7a}.capital-analysis p b{color:#4b176c}.capital-trend>div{display:grid;grid-template-columns:65px 1fr 90px;align-items:center;gap:8px;margin:8px 0}.capital-trend>div span{color:#66516f;font-size:10px;font-weight:800}.capital-trend em{height:9px;overflow:hidden;border-radius:7px;background:#eee3f3}.capital-trend i{display:block;height:100%;border-radius:7px;background:linear-gradient(90deg,#7030a0,#ad65c9)}.capital-trend>div b{text-align:right;color:#4b176c;font-size:10px}.capital-overview>aside{margin-top:12px;padding:10px 13px;border-radius:10px;background:#eee1f5;color:#4d285e;font-size:11px}.capital-overview+.sheet-currency-totals{margin-top:0}@media(max-width:1100px){.capital-kpis{grid-template-columns:repeat(2,1fr)}.capital-analysis{grid-template-columns:1fr}}@media(max-width:650px){.capital-overview{padding:10px}.capital-overview>header{align-items:flex-start;flex-direction:column}.capital-kpis{grid-template-columns:1fr}}
th.registration-time,td.registration-time,.grid th:nth-last-child(2),.grid td:nth-last-child(2){min-width:145px;white-space:nowrap}

/* Largeur de travail renforcée pour les écrans CLIENTS et PARAMÈTRE. */
.clients-sheet{box-sizing:border-box;width:max-content;min-width:100%;padding:12px}
.clients-sheet .client-card,.clients-sheet .client-list-card{box-sizing:border-box;width:calc(100vw - 68px);min-width:2400px;max-width:none;margin-inline:0}
.clients-sheet .client-form-grid{grid-template-columns:repeat(5,minmax(320px,1fr))}
.plus-sheet{box-sizing:border-box;width:max-content;min-width:100%;padding:12px}
.plus-sheet .reference-panel{width:calc(100vw - 68px);min-width:2200px;max-width:none;margin-inline:0}
.plus-sheet .reference-forms,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration{width:100%;box-sizing:border-box}
@media(max-width:1100px){.clients-sheet .client-form-grid{grid-template-columns:repeat(5,minmax(260px,1fr))}}
.credit-bulk-toolbar{position:sticky;left:0;z-index:20;width:max-content;margin:0 0 10px}.filter-controls .save-all-credits,.save-all-credits{flex:0 0 auto!important;width:auto!important;min-width:0!important;height:31px!important;min-height:31px!important;padding:0 15px!important;border:0!important;border-radius:8px!important;background:linear-gradient(135deg,#8244ad,#552078)!important;box-shadow:0 4px 10px rgb(75 23 108 / 20%)!important;color:#fff!important;font-size:10px!important;font-weight:800!important;white-space:nowrap;cursor:pointer}.save-all-credits:disabled{opacity:.65;cursor:wait}

/* Présentation unique de la zone de filtres sur toutes les feuilles. */
.titlebar .sheet-filters{min-height:136px;padding:10px 16px 12px;overflow:hidden;border:1px solid #c99ddd;border-radius:14px;background:#fff;box-shadow:0 8px 22px rgb(50 16 68 / 14%);color:#4b176c}
.titlebar .sheet-filters .filter-title{height:14px;margin:0 0 7px;color:#552078;font-size:11px;font-weight:900;line-height:14px;letter-spacing:.08em;text-transform:uppercase}
.titlebar .sheet-filters .filter-controls{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;width:100%;min-width:0;gap:7px 9px;margin:0}
.titlebar .sheet-filters .filter-controls label{display:grid;gap:5px;min-width:0;margin:0;color:#572075;font-size:10px;font-weight:800;line-height:12px}
.titlebar .sheet-filters .filter-controls input,.titlebar .sheet-filters .filter-controls select{width:100%;min-width:0;height:31px;margin:0;padding:4px 9px;border:1px solid #caa8da;border-radius:8px;background:#fcf9fd;color:#2e1738;outline:0}
.titlebar .sheet-filters .filter-controls input:focus,.titlebar .sheet-filters .filter-controls select:focus{border-color:#7030a0;box-shadow:0 0 0 2px rgb(112 48 160 / 14%)}
.titlebar .sheet-filters .filter-controls>button,.titlebar .sheet-filters .filter-controls .save-all-credits{width:100%!important;min-width:0!important;height:31px!important;min-height:31px!important;margin:0!important;padding:0 10px!important;border:0!important;border-radius:8px!important;background:linear-gradient(135deg,#8244ad,#552078)!important;box-shadow:0 3px 8px rgb(75 23 108 / 18%)!important;color:#fff!important;font-size:10px!important;font-weight:900!important;white-space:nowrap;cursor:pointer}
.titlebar .sheet-filters .filter-controls>button:hover{background:linear-gradient(135deg,#7030a0,#270638)!important;transform:none}
.titlebar .sheet-filters .filter-controls>button.active,.titlebar .sheet-filters .filter-controls>button[aria-pressed="true"]{background:linear-gradient(135deg,#5d1d82,#270638)!important}
@media(max-width:1100px){.titlebar .sheet-filters{min-height:178px}.titlebar .sheet-filters .filter-controls{grid-template-columns:repeat(4,minmax(0,1fr))}}
.excel-app{grid-template-rows:238px 31px minmax(0,1fr) 42px}
@media(max-width:1100px){.excel-app{grid-template-rows:276px 31px minmax(0,1fr) 42px}}
.titlebar .sheet-filters.credit-filter-zone .filter-controls{grid-template-columns:repeat(7,minmax(0,1fr))}
@media(max-width:1100px){.titlebar .sheet-filters.credit-filter-zone{min-height:222px}.titlebar .sheet-filters.credit-filter-zone .filter-controls{grid-template-columns:repeat(4,minmax(0,1fr))}.excel-app:has(.credit-filter-zone){grid-template-rows:320px 31px minmax(0,1fr) 42px}}
.excel-app,.excel-app:has(.credit-filter-zone){grid-template-rows:var(--dynamic-header-height,238px) 31px minmax(0,1fr) 42px!important}
.special-credit-sheet.special-as-term{display:block;min-height:70vh;padding:18px;background:linear-gradient(135deg,#fbf7fd,#f1e5f8)}.special-as-term .special-term-hero{margin-bottom:16px}.special-as-term .special-term-layout{grid-template-columns:minmax(310px,390px) minmax(700px,1fr);gap:16px}.special-as-term .special-credit-form-card,.special-as-term .special-credit-preview{padding:20px;border:1px solid #dfc8eb;border-radius:20px;background:#fff;box-shadow:0 12px 30px rgb(75 23 108 / 10%)}.special-as-term .special-credit-form-card h2,.special-as-term .special-credit-preview h2{margin:0 0 14px;color:#4b176c}.special-as-term .special-credit-form-card form{gap:11px}.special-as-term .special-credit-form-card label{gap:5px;color:#5b2a76;font-size:12px;font-weight:800}.special-as-term .special-credit-form-card input,.special-as-term .special-credit-form-card select{min-height:40px;padding:8px 10px;border:1px solid #cdaadd;border-radius:10px;background:#fff}.special-as-term .special-credit-form-card button{min-height:38px;padding:8px 12px;border-radius:9px;background:linear-gradient(135deg,#8244ad,#552078)}.special-as-term .special-client-lookup{padding:0;border:0;background:transparent}.special-as-term .special-credit-kpis article{padding:11px;border-left:4px solid #7030a0;border-radius:8px;background:#f6eafa}.special-as-term .special-schedule-wrap{margin-top:16px}.special-as-term .special-credit-preview th{padding:9px 7px;background:#4b176c;font-size:11px}.special-as-term .special-credit-preview td{padding:9px 7px;border-bottom:1px solid #eadcf0}.special-as-term .term-hero-mark{font-size:22px}@media(max-width:1100px){.special-as-term .special-term-layout{grid-template-columns:1fr}}
.job-profile-content{padding:20px;border:1px solid #d7b8e3;background:#fff}.job-profile-content>p{margin-top:0;padding:12px;border-radius:9px;background:#f4e8f9;color:#52196d;font-weight:800}.job-profile-content form{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:12px;align-items:end}.job-profile-content form>label{display:grid;gap:6px;color:#4b176c;font-weight:800}.job-profile-content input,.job-profile-content select{box-sizing:border-box;width:100%;min-height:40px;padding:8px;border:1px solid #caa8da}.job-profile-content .job-active{display:flex;align-items:center}.job-profile-content .job-active input{width:auto}.job-permissions{grid-column:1/-1;display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:14px;border-radius:10px;background:#f8f2fa}.job-permissions strong{grid-column:1/-1;color:#4b176c}.job-permissions label{display:flex;align-items:center;gap:7px}.job-permissions input{width:auto;min-height:0}.job-profile-content form>button{min-height:40px;border:0;background:#7030a0;color:#fff;font-weight:900}.job-profile-content table{width:100%;margin-top:20px;border-collapse:collapse}.job-profile-content th,.job-profile-content td{padding:9px;border:1px solid #d8c8df}.job-profile-content th{background:#351047;color:#fff}.job-profile-content td button{margin:2px;padding:7px;border:0;background:#7030a0;color:#fff}.job-profile-content td .danger{background:#c62828}
#loginScreen #loginForm{width:min(420px,calc(100% - 28px));padding:17px 28px 21px;gap:7px}
#loginScreen .login-logo{height:220px}
#loginScreen #loginForm h1{font-size:68px}
.dashboard-overview .dashboard-currency{display:none!important}
.currency-precision{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:18px;padding:16px;border:1px solid #d8bee4;border-radius:12px;background:#faf6fc}.currency-precision h3{grid-column:1/-1;margin:0;color:#552078}.managed-currency-precision{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:9px;padding:10px;border:1px solid #e1d0e9;border-radius:9px;background:#fff}.managed-currency-precision label{display:grid;gap:4px;font-size:11px}.managed-currency-precision input{width:80px;padding:7px;border:1px solid #c9abd7;border-radius:6px}.multicurrency-closure-content{padding:18px;border:1px solid #d8bee4;background:#fff}.multicurrency-closure-content>p{color:#5e3671;font-weight:700}.multicurrency-closure-content form{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;align-items:end;margin-bottom:18px}.multicurrency-closure-content form label{display:grid;gap:5px;color:#4b176c;font-size:11px;font-weight:800}.multicurrency-closure-content input,.multicurrency-closure-content select{min-height:39px;padding:8px;border:1px solid #c9abd7;border-radius:7px;background:#fff}.multicurrency-closure-content table{width:100%;border-collapse:collapse;margin-bottom:18px;font-size:11px}.multicurrency-closure-content th{padding:9px;background:#552078;color:#fff}.multicurrency-closure-content td{padding:8px;border:1px solid #ddd2e2}.multicurrency-closure-content tbody tr:nth-child(even){background:#faf6fc}
.agent-balance-badges{display:flex;justify-content:center;gap:6px;margin:0}.agent-balance-badges span{overflow:hidden;padding:4px 12px!important;border:1px solid rgb(255 255 255 / 28%)!important;border-radius:10px!important;background:#7030a0!important;box-shadow:0 4px 12px rgb(75 23 108 / 16%)!important;color:#fff!important;font-size:10px!important;font-weight:800!important;letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap}
.notification-bell{position:relative;display:grid;place-items:center;width:30px;height:30px;margin-left:3px;padding:0;border:1px solid rgb(255 255 255 / 40%);border-radius:50%;background:linear-gradient(135deg,#8244ad,#4b176c);box-shadow:0 5px 12px rgb(75 23 108 / 25%);color:#fff;cursor:pointer}.notification-bell-icon{position:relative;width:13px;height:15px;border:2px solid currentColor;border-radius:8px 8px 5px 5px;font-size:0}.notification-bell-icon::before{content:'';position:absolute;left:50%;top:-5px;width:4px;height:4px;border-radius:50%;background:#fff;transform:translateX(-50%)}.notification-bell-icon::after{content:'';position:absolute;left:50%;bottom:-5px;width:6px;height:3px;border-radius:0 0 6px 6px;background:#fff;transform:translateX(-50%)}.notification-bell:hover{background:linear-gradient(135deg,#9b58c5,#5b2079)}.notification-count{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:2px solid #fff;border-radius:10px;background:#d32626;color:#fff;font-size:9px;font-weight:900}.notification-count[hidden]{display:none}
.notification-bell.has-unread{animation:notification-ring 2.8s ease-in-out infinite}@keyframes notification-ring{0%,86%,100%{transform:rotate(0)}89%{transform:rotate(10deg)}92%{transform:rotate(-9deg)}95%{transform:rotate(6deg)}98%{transform:rotate(-4deg)}}.notification-panel{position:fixed;z-index:10000;top:58px;right:18px;width:min(460px,calc(100vw - 30px));max-height:calc(100vh - 78px);overflow:hidden;border:1px solid #d5b8e2;border-radius:18px;background:#fff;box-shadow:0 22px 60px rgb(35 5 50 / 38%);color:#27152f}.notification-panel header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;color:#fff;background:linear-gradient(135deg,#321044,#7732a0)}.notification-panel header small{opacity:.78;font-weight:800}.notification-panel header h2{margin:2px 0 0;font-size:22px}.notification-panel header button{width:32px;height:32px;border:0;border-radius:50%;background:rgb(255 255 255 / 18%);color:#fff;font-size:23px;cursor:pointer}.notification-tools{display:flex;gap:6px;padding:10px;border-bottom:1px solid #eadcf0;background:#faf6fc}.notification-tools button{padding:7px 9px;border:1px solid #d2b6df;border-radius:8px;background:#fff;color:#552078;font-size:9px;font-weight:900;cursor:pointer}.notification-tools button.active{background:#7030a0;color:#fff}.notification-tools #readAllNotifications{margin-left:auto}#notificationItems{max-height:calc(100vh - 190px);overflow:auto}.notification-item{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:11px;align-items:start;padding:13px 15px;border-bottom:1px solid #eee5f1;cursor:pointer}.notification-item:hover{background:#faf3fd}.notification-item.read{opacity:.62}.notification-item i{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#7030a0}.notification-item.critical i{background:#d32626;box-shadow:0 0 0 4px #ffe1e1}.notification-item.warning i{background:#e28a14;box-shadow:0 0 0 4px #fff0d5}.notification-item.success i{background:#0b9c54;box-shadow:0 0 0 4px #dcf5e8}.notification-item.info i{background:#7030a0;box-shadow:0 0 0 4px #efe0f6}.notification-item h3{margin:0 0 3px;font-size:13px;color:#3e1554}.notification-item p{margin:0 0 5px;line-height:1.35;font-size:11px}.notification-item small{color:#827488}.notification-item>b{padding:3px 5px;border-radius:5px;background:#7030a0;color:#fff;font-size:8px}.notification-empty,.notification-loading{padding:40px;text-align:center;color:#76677c}.notification-target{outline:4px solid #e6a526!important;outline-offset:-4px;animation:notification-highlight 2s ease}@keyframes notification-highlight{0%,100%{background:inherit}50%{background:#fff2bd}}.notification-settings-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:11px}.notification-settings-form label{display:grid;gap:5px;color:#54206f;font-weight:800}.notification-settings-form input,.notification-settings-form select{min-height:39px;padding:7px;border:1px solid #caa8da;border-radius:8px}.notification-settings-form button{grid-column:1/-1;justify-self:center;min-width:280px;padding:11px;border:0;border-radius:8px;background:#7030a0;color:#fff;font-weight:900}@media(max-width:650px){.notification-panel{top:8px;right:8px;width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.notification-tools{flex-wrap:wrap}.notification-tools #readAllNotifications{margin-left:0}}
.credit-delete-button{display:inline-flex;width:auto;height:27px;align-items:center;justify-content:center;margin:2px;padding:4px 7px;border:0;border-radius:5px;background:#c62828!important;color:#fff!important;font-size:9px;font-weight:900;vertical-align:middle;cursor:pointer}
.job-permissions{display:grid!important;grid-template-columns:repeat(4,minmax(220px,1fr))!important}.job-page-access{overflow:hidden;border:1px solid #d8c1e3;border-radius:9px;background:#fff}.job-page-access>div{display:flex;align-items:center;gap:6px;padding:6px;background:#f0e2f6}.job-page-toggle{display:flex;justify-content:space-between;flex:1;padding:7px 9px;border:0;background:transparent!important;box-shadow:none!important;color:#4b176c!important;text-align:left;font-weight:900;cursor:pointer}.job-page-access section{display:grid;gap:7px;padding:10px}.job-page-access section label{display:flex;align-items:center;gap:7px;font-size:11px}.job-page-access section[hidden]{display:none}
.credit-grid td:last-child button{color:#fff!important}
.audit-history-block{width:100%}.audit-history-content{padding:14px;border:1px solid #d8bee4;border-radius:0 0 12px 12px;background:#fff}.audit-table-wrap{max-height:520px;overflow:auto;border-radius:10px}.audit-history-content table{width:100%;border-collapse:collapse;font-size:11px}.audit-history-content th{position:sticky;top:0;z-index:2;padding:10px;background:#42105d;color:#fff;white-space:nowrap}.audit-history-content td{padding:8px;border:1px solid #ddd2e2;vertical-align:top;white-space:nowrap}.audit-history-content tbody tr:nth-child(even){background:#f8f1fb}.audit-online{color:#07853b}.audit-history-content details{max-width:330px}.audit-history-content summary{color:#7030a0;font-weight:900;cursor:pointer}.audit-history-content pre{max-width:330px;max-height:180px;overflow:auto;white-space:pre-wrap;font:10px/1.4 monospace}
.audit-friendly-details{min-width:300px;margin:9px 0 0;padding:8px;background:#fff;border:1px solid #e0cee8;border-radius:9px;white-space:normal}.audit-friendly-details div{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(130px,1.1fr);gap:10px;padding:6px;border-bottom:1px solid #eee3f2}.audit-friendly-details div:last-child{border-bottom:0}.audit-friendly-details dt{color:#69407d;font-weight:800;text-transform:capitalize}.audit-friendly-details dd{margin:0;color:#24172a;font-weight:700;overflow-wrap:anywhere}.audit-no-detail{margin:8px 0;color:#766a7b;font-style:italic}.audit-method{display:inline-block;padding:5px 8px;border-radius:999px;background:#eee2f5;color:#552078;font-weight:800}.audit-history-content summary{list-style:none;padding:6px 9px;border-radius:7px;background:#eee2f5}.audit-history-content summary::before{content:'＋ ';font-weight:900}.audit-history-content details[open] summary::before{content:'− '}
.user-management th.agent-list-balance{background:#552078;color:#fff}.user-management td.agent-list-balance{text-align:right;color:#552078;font-weight:900;white-space:nowrap}
.sms-settings-content{padding:18px;border:1px solid #d8bee4;background:#fff}.sms-settings-content>p{color:#552078;font-weight:800}.sms-settings-form{display:grid;gap:15px}.sms-settings-form fieldset{display:grid;grid-template-columns:repeat(3,minmax(220px,1fr));gap:12px;padding:16px;border:1px solid #d9c2e5;border-radius:12px;background:#faf6fc}.sms-settings-form legend{padding:0 8px;color:#552078;font-weight:900}.sms-settings-form label{display:grid;gap:5px;color:#4b176c;font-size:11px;font-weight:800}.sms-settings-form input,.sms-settings-form select,.sms-settings-form textarea{box-sizing:border-box;width:100%;min-height:39px;padding:8px;border:1px solid #c9abd7;border-radius:7px;background:#fff}.sms-settings-form label:has(input[type="checkbox"]){display:flex;align-items:center}.sms-settings-form input[type="checkbox"]{width:auto;min-height:0}.sms-settings-form .sms-wide{grid-column:1/-1}.sms-settings-form>button{justify-self:center;min-width:280px;padding:12px;border:0;border-radius:9px;background:#7030a0;color:#fff;font-weight:900}
.client-phone-picker{display:grid;grid-template-columns:minmax(145px,.9fr) minmax(150px,1.2fr);gap:6px}.client-phone-picker select,.client-phone-picker input{min-width:0!important;width:100%!important}
.client-form-actions .cancel-client-edit{background:#b4232f}.client-form-actions .update-client-button{min-width:220px;background:linear-gradient(135deg,#552078,#8c3db2)}.client-editing{outline:2px solid #8a42b5;outline-offset:-2px;border-radius:0 0 14px 14px}
.term-client-lookup{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.term-client-lookup input{width:100%}.term-client-lookup button{grid-column:auto;white-space:nowrap;padding-inline:13px}
.client-actions .activate-client{background:#168447}.client-actions .deactivate-client{background:#d67a13}.client-table tr:has(.status-inactive){opacity:.72}
.notification-bell.has-unread{animation:none;box-shadow:0 0 0 3px rgb(211 38 38 / 18%),0 5px 12px rgb(75 23 108 / 25%)}
.message-button{position:relative;display:grid;place-items:center;width:30px;height:30px;margin-left:3px;padding:0;border:1px solid rgb(255 255 255 / 40%);border-radius:50%;background:linear-gradient(135deg,#8244ad,#4b176c);color:#fff;box-shadow:0 5px 12px rgb(75 23 108 / 25%);cursor:pointer}.message-button-icon{position:relative;width:15px;height:12px;border:2px solid currentColor;border-radius:5px}.message-button-icon:after{content:'';position:absolute;left:1px;bottom:-5px;width:5px;height:6px;border-left:2px solid currentColor;transform:skew(-27deg)}.message-count{position:absolute;right:-5px;top:-6px;display:grid;place-items:center;min-width:16px;height:16px;padding:0 3px;border:2px solid #fff;border-radius:10px;background:#d32626;color:#fff;font-size:9px;font-weight:900}.message-count[hidden]{display:none}.message-button.has-unread{box-shadow:0 0 0 3px rgb(211 38 38 / 18%),0 5px 12px rgb(75 23 108 / 25%)}
.message-panel{position:fixed;z-index:10020;top:58px;right:18px;display:flex;flex-direction:column;width:min(440px,calc(100vw - 30px));height:min(680px,calc(100vh - 78px));overflow:hidden;border:1px solid #d5b8e2;border-radius:18px;background:#fbf8fc;box-shadow:0 22px 60px rgb(35 5 50 / 38%);color:#27152f}.message-panel>header{display:flex;align-items:center;justify-content:space-between;min-height:72px;padding:13px 16px;color:#fff;background:linear-gradient(135deg,#321044,#7732a0)}.message-panel header small{opacity:.78;font-weight:800}.message-panel header h2{margin:2px 0 0;font-size:21px}.message-panel header>button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:50%;background:rgb(255 255 255 / 17%);color:#fff;font-size:25px;cursor:pointer}.message-search{padding:10px;background:#f1e5f6}.message-search input{width:100%;min-height:40px;padding:8px 12px;border:1px solid #c9a6da;border-radius:20px;background:#fff;color:#321044}.message-panel>section{flex:1;min-height:0;overflow:auto}.message-contact{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:11px 14px;border:0;border-bottom:1px solid #eadff0;background:#fff;color:#321044;text-align:left;cursor:pointer}.message-contact:hover{background:#f8effb}.message-contact>span:nth-child(2){min-width:0}.message-contact b,.message-contact small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-contact b{font-size:13px}.message-contact small{margin-top:4px;color:#7a6b80;font-size:10px}.message-contact time{align-self:start;color:#8c7c91;font-size:8px}.message-contact em{position:absolute;right:14px;bottom:10px;display:grid;place-items:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#7030a0;color:#fff;font-size:9px;font-style:normal;font-weight:900}.message-avatar{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#e7ccee,#9d61bb);color:#421354;font-size:17px;font-weight:900}.message-avatar i{position:absolute;right:0;bottom:1px;width:10px;height:10px;border:2px solid #fff;border-radius:50%;background:#aaa}.message-avatar i.online{background:#18a861}.message-chat-header{justify-content:flex-start!important}.message-chat-header>div{flex:1}.message-chat-header #messageBack{font-size:32px}.message-chat-header #closeMessages{font-size:24px}.message-panel #messageThread{display:flex;flex-direction:column;gap:6px;padding:15px;background-color:#f3eaf6;background-image:radial-gradient(rgb(112 48 160 / 7%) 1px,transparent 1px);background-size:18px 18px}.message-bubble{align-self:flex-start;max-width:82%;padding:8px 10px 5px;border-radius:4px 13px 13px 13px;background:#fff;box-shadow:0 1px 2px rgb(30 5 42 / 12%)}.message-bubble.sent{align-self:flex-end;border-radius:13px 4px 13px 13px;background:#ead7f2}.message-bubble p{margin:0;overflow-wrap:anywhere;line-height:1.38;font-size:12px;white-space:normal}.message-bubble small{display:block;margin-top:3px;color:#786b7d;text-align:right;font-size:8px}.message-checks{margin-left:3px;color:#706477;font-size:11px;font-weight:900;letter-spacing:-3px}.message-checks.read{color:#8d36b5}.message-panel #messageComposer{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px;padding:9px;background:#fff;border-top:1px solid #dfcce8}.message-panel #messageComposer textarea{min-height:40px;max-height:110px;padding:10px 13px;border:1px solid #cfb1dd;border-radius:20px;resize:none;color:#321044;font:inherit}.message-panel #messageComposer button{width:42px;height:42px;padding:0;border:0;border-radius:50%;background:#7030a0;color:#fff;font-size:18px;cursor:pointer}.message-empty,.message-loading{margin:auto;padding:42px 20px;color:#786b7d;text-align:center}.message-loading{width:100%}
@media(max-width:650px){.message-panel{inset:6px;width:auto;height:auto;max-height:none;border-radius:14px}.message-panel>header{min-height:62px}.message-contact{grid-template-columns:43px minmax(0,1fr) auto}.message-bubble{max-width:88%}}
.panel-pagination{display:flex;flex:0 0 auto;align-items:center;justify-content:center;gap:4px;min-height:42px;padding:6px 8px;border-top:1px solid #dfcce8;background:#fff}.panel-pagination button{display:grid;place-items:center;min-width:27px;height:27px;padding:0 6px;border:1px solid #cfb2dc;border-radius:7px;background:#fff;color:#552078;font-size:10px;font-weight:900;cursor:pointer}.panel-pagination button.active{border-color:#7030a0;background:#7030a0;color:#fff}.panel-pagination button:disabled{opacity:.35;cursor:default}.panel-pagination i{color:#8a7990;font-style:normal}.panel-pagination small{margin-left:5px;color:#796b7e;font-size:8px;font-weight:800}.message-panel>.panel-pagination{order:2}.message-panel #messageThread{order:3}.message-panel #messageComposer{order:4}.notification-panel>.panel-pagination{position:sticky;bottom:0}
.advanced-settings-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;align-items:end}.advanced-settings-form h3{grid-column:1/-1;margin:14px 0 2px;padding:9px 12px;color:#fff;background:linear-gradient(90deg,#42105f,#7936aa);border-radius:10px}.advanced-settings-form label,.writing-nature-list label{display:grid;gap:5px;font-weight:700;color:#4d176d}.advanced-settings-form input,.advanced-settings-form select,.writing-nature-list select{width:100%;min-height:38px;border:1px solid #d7bde5;border-radius:9px;background:#fff;padding:7px 10px}.advanced-settings-form button,.writing-nature-list button{min-height:40px;border:0;border-radius:10px;background:#702b9b;color:#fff;font-weight:800}.advanced-settings-form small{grid-column:1/-1;color:#654a72}.writing-nature-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.writing-nature-list button{grid-column:1/-1}
.administration-nature>header[role="button"]{cursor:pointer;position:relative;padding-right:48px}.administration-nature>header[role="button"]:after{content:"−";position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:24px;font-weight:900}.administration-nature>header[role="button"].collapsed:after{content:"＋"}.administration-nature>header[role="button"]:focus-visible{outline:3px solid #d7a9ef;outline-offset:2px}
.pos-location{display:grid;gap:8px;margin:14px 0;padding:13px;border:1px solid #d8bae5;border-radius:14px;background:#f8f0fb}.pos-location header{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#552078;font-size:11px}.pos-location header button{border:0;border-radius:8px;padding:7px 10px;background:#7030a0;color:#fff;font-size:10px;font-weight:900;cursor:pointer}.pos-location textarea{box-sizing:border-box;width:100%;margin-top:5px;resize:none;border:1px solid #d6c0df;border-radius:9px;background:#fff;color:#35104c;padding:8px;font:inherit}.pos-location-status{color:#6b4c77;font-size:10px;font-weight:700}
.pos-credit-status{display:flex;align-items:center;gap:12px;margin:-10px 28px 20px;padding:13px 15px;border:1px solid;border-radius:14px;cursor:help}.pos-credit-status>span{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;font-size:18px;font-weight:900}.pos-credit-status strong{display:block;font-size:12px;letter-spacing:.04em}.pos-credit-status p{margin:3px 0;font-size:12px}.pos-credit-status small{font-size:10px;opacity:.78}.pos-credit-status.credit-current{border-color:#8dcca6;background:#e4f6e9;color:#176c39}.pos-credit-status.credit-current>span{background:#bee8cb}.pos-credit-status.credit-late{border-color:#e4a3a3;background:#fbe3e3;color:#9e2424}.pos-credit-status.credit-late>span{background:#f3bfc0}@media(max-width:650px){.pos-credit-status{margin-left:16px;margin-right:16px}}
.encoding-dialog-overlay{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;padding:20px;background:rgb(28 3 40 / 65%)}.encoding-dialog{width:min(430px,100%);box-sizing:border-box;padding:26px;border:1px solid #d8bae5;border-radius:22px;background:#fff;box-shadow:0 24px 70px #21052e;color:#35104c}.encoding-dialog small{font-weight:900;color:#7c37a5}.encoding-dialog h2{margin:5px 0 8px;color:#552078}.encoding-dialog p{line-height:1.45}.encoding-dialog label{display:grid;gap:6px;font-weight:800}.encoding-dialog input{height:42px;border:1px solid #cba9da;border-radius:9px;padding:0 12px;font-size:17px}.encoding-dialog div{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.encoding-dialog button,.toggle-encoding-mode{border:0;border-radius:8px;background:linear-gradient(135deg,#8244ad,#552078);color:#fff;padding:9px 14px;font-weight:900;cursor:pointer}.encoding-dialog .secondary{background:#eee3f3;color:#552078}.toggle-encoding-mode.active{background:linear-gradient(135deg,#c62828,#8b1111)!important}.encoding-mode .encoding-extra{box-shadow:inset 4px 0 #9b59b6}
.table-general-search{display:flex;justify-content:flex-end;box-sizing:border-box;width:100%;padding:5px 2px}.table-general-search input{box-sizing:border-box;width:220px;max-width:100%;height:30px;padding:5px 10px;border:1px solid #cba9da;border-radius:8px;background:#fff;color:#35104c;font-size:11px;outline:0}.table-general-search input:focus{border-color:#7030a0;box-shadow:0 0 0 2px rgb(112 48 160 / 12%)}
.job-mode-note{grid-column:1/-1;padding:12px;border:1px solid #b990cc;border-radius:9px;background:#f1e3f7;color:#552078;font-weight:800}
.agent-cash-adjustment form{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;align-items:end}.agent-cash-adjustment form label{display:grid;gap:7px}.agent-cash-adjustment .cash-adjustment-reason{grid-column:1/-1}.agent-cash-adjustment textarea{min-height:82px;resize:vertical;border:1px solid #d4b5e7;border-radius:10px;padding:12px;background:#fff;color:#35104e;font:inherit}.agent-cash-adjustment form>button{min-height:42px}.cash-current-balance{display:flex;align-items:center;min-height:40px;padding:0 12px;border-radius:10px;background:#eadcf3;color:#542071;font-size:18px}.agent-cash-adjustment #agentCashAdjustmentHistory{margin-top:20px;overflow:auto}@media(max-width:900px){.agent-cash-adjustment form{grid-template-columns:1fr 1fr}}@media(max-width:600px){.agent-cash-adjustment form{grid-template-columns:1fr}}
.transaction-adjustment form{display:grid;grid-template-columns:repeat(3,minmax(190px,1fr));gap:14px;align-items:end}.transaction-adjustment form>label{display:grid;gap:7px}.transaction-adjustment form>label:first-child,.transaction-adjustment-reason,.selected-transaction-details{grid-column:1/-1}.transaction-adjustment textarea{min-height:82px;resize:vertical;border:1px solid #d4b5e7;border-radius:10px;padding:12px;background:#fff;color:#35104e;font:inherit}.selected-transaction-details{display:flex;flex-wrap:wrap;gap:10px 24px;padding:14px;border-radius:12px;background:#f0e3f7;color:#4a1765}.selected-transaction-details strong{width:100%;font-size:16px}.transaction-adjustment #transactionAdjustmentHistory{margin-top:22px;overflow:auto}@media(max-width:800px){.transaction-adjustment form{grid-template-columns:1fr}}
.transaction-adjustment .transaction-search-form{display:block;margin:16px 0;padding:16px;border:1px solid #d7b7e8;border-radius:14px;background:#f8f1fb}.transaction-search-form .filter-title{margin-bottom:12px;color:#5e247b;font-weight:800}.transaction-search-controls{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(6,minmax(135px,1fr)) auto;gap:10px;align-items:end}.transaction-search-controls label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#654576}.transaction-search-controls input,.transaction-search-controls select{width:100%;min-height:39px;background:#fff}.transaction-search-controls button{min-height:39px}.transaction-search-form>strong{display:block;margin-top:10px;color:#6c2b8a}@media(max-width:1300px){.transaction-search-controls{grid-template-columns:repeat(4,minmax(160px,1fr))}}@media(max-width:700px){.transaction-search-controls{grid-template-columns:1fr 1fr}}@media(max-width:480px){.transaction-search-controls{grid-template-columns:1fr}}
.table-general-search.advanced-table-search{display:flex;flex-wrap:wrap;align-items:end;gap:9px;padding:11px 12px;border:1px solid #ddc4eb;border-radius:12px;background:#f8f1fb}.advanced-table-search>input[type=search]{flex:1 1 260px;min-height:38px}.advanced-table-search label{display:grid;gap:4px;min-width:135px;color:#654576;font-size:11px;font-weight:800}.advanced-table-search label input,.advanced-table-search label select{min-height:38px;background:#fff}.advanced-table-search button{min-height:38px}
.repayment-mode-button{background:linear-gradient(135deg,#4b1169,#8539aa)!important;color:#fff!important}.repayment-mode-button span{font-size:15px}.repayment-mode-dialog{width:min(760px,94vw);max-height:88vh;overflow:hidden;display:flex;flex-direction:column}.repayment-mode-dialog>label{display:grid;gap:7px}.repayment-mode-dialog>label input{min-height:46px;background:#fff;border:2px solid #b47ad1;border-radius:11px;padding:0 14px;font-size:16px}.repayment-mode-results{display:grid;gap:12px;overflow:auto;min-height:160px;padding:4px;margin:8px 0}.repayment-mode-results article{border:1px solid #d9bce8;border-radius:14px;background:#fff;overflow:hidden}.repayment-mode-results article>header{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;background:#f2e6f8}.repayment-mode-results article>header div{display:grid;gap:3px}.repayment-mode-results article>header strong{font-size:16px;color:#471660}.repayment-mode-results article>header span{font-size:12px;color:#765286}.repayment-mode-results article>div{display:grid;grid-template-columns:repeat(3,minmax(145px,1fr));gap:8px;padding:11px}.repayment-choice{display:grid!important;gap:4px!important;text-align:left!important;min-height:72px!important;padding:10px!important;border:1px solid #d3afe6!important;border-radius:10px!important;background:#f9f3fc!important;color:#4a1765!important}.repayment-choice:hover,.repayment-choice:focus{background:#ead7f4!important;box-shadow:0 0 0 3px rgba(124,52,159,.18)}.repayment-choice.already-paid{border-color:#72bd8a!important;background:#edf9f1!important}.repayment-choice.late{border-color:#e79a9a!important;background:#fff0f0!important}.repayment-choice span,.repayment-choice small{font-size:11px}.repayment-no-result{padding:28px;text-align:center;color:#765286}.payment-cell.repayment-target-cell{position:relative!important;background:#d8afea!important;box-shadow:inset 0 0 0 4px #7a2f9f,0 0 18px rgba(96,25,130,.75)!important;animation:repaymentTargetPulse .65s ease-in-out 3}.payment-cell.repayment-target-cell input{background:#fff!important;font-size:16px!important;font-weight:800!important;color:#4d1269!important}@keyframes repaymentTargetPulse{50%{background:#f3d563;box-shadow:inset 0 0 0 4px #7a2f9f,0 0 28px rgba(96,25,130,.9)}}@media(max-width:650px){.repayment-mode-results article>div{grid-template-columns:1fr 1fr}}
.repayment-search-field{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:8px}.repayment-search-field input{width:100%}.repayment-search-field button{border:0;border-radius:11px;background:#702b94;color:#fff;font-weight:800}
.qr-scanner-overlay{z-index:40000!important}.repayment-mode-overlay{z-index:5000}
.repayment-mode-button.active{background:linear-gradient(135deg,#c62828,#8b1111)!important;color:#fff!important;box-shadow:0 4px 12px rgb(139 17 17 / 30%)!important}
.export-excel-button{position:relative;z-index:25;display:block;min-width:150px;height:34px;margin:10px 22px 10px auto;padding:0 18px;border:1px solid #9d63bb;border-radius:9px;background:linear-gradient(135deg,#7f3aa5,#4b176c);box-shadow:0 5px 14px rgb(75 23 108 / 22%);color:#fff;font-size:10px;font-weight:900;letter-spacing:.04em;cursor:pointer}.export-excel-button:hover{background:linear-gradient(135deg,#914ab7,#5b2079);box-shadow:0 7px 18px rgb(75 23 108 / 30%)}
.table-excel-export{margin-left:auto!important;min-width:125px!important;background:linear-gradient(135deg,#7f3aa5,#4b176c)!important;color:#fff!important;font-size:9px!important;font-weight:900!important}
.export-pdf-button{position:relative;z-index:25;display:block;min-width:150px;height:34px;margin:-44px 182px 10px auto;padding:0 18px;border:1px solid #c28a8a;border-radius:9px;background:linear-gradient(135deg,#a52d3c,#731522);box-shadow:0 5px 14px rgb(115 21 34 / 22%);color:#fff;font-size:10px;font-weight:900;letter-spacing:.04em;cursor:pointer}.export-pdf-button:hover{background:linear-gradient(135deg,#ba3b4d,#861d2c)}.table-pdf-export{min-width:125px!important;background:linear-gradient(135deg,#a52d3c,#731522)!important;color:#fff!important;font-size:9px!important;font-weight:900!important}
.export-excel-button{border-color:#16894b!important;background:linear-gradient(135deg,#22a85f,#08743d)!important;box-shadow:0 5px 14px rgb(8 116 61 / 24%)!important}.export-excel-button:hover{background:linear-gradient(135deg,#2bbb6d,#096a39)!important;box-shadow:0 7px 18px rgb(8 116 61 / 32%)!important}.table-excel-export{background:linear-gradient(135deg,#22a85f,#08743d)!important;color:#fff!important}.table-excel-export:hover{background:linear-gradient(135deg,#2bbb6d,#096a39)!important}
.pos-agent-interface .titlebar{min-height:150px}.pos-agent-interface .sheet-filters{display:none!important}.pos-agent-interface .institution-bar{margin-top:6px}.pos-agent-interface #sheet{padding-bottom:76px}.pos-agent-interface .pos-workspace{min-height:calc(100vh - 260px);padding:12px}.pos-agent-interface .pos-phone{width:min(980px,100%);border-radius:22px}.pos-agent-interface .pos-app-header{padding:20px 24px}.pos-agent-interface #posForm{padding:22px 26px 26px}.pos-agent-interface .pos-step select,.pos-agent-interface .pos-step input,.pos-agent-interface .pos-lookup input{min-height:54px;font-size:17px}.pos-agent-interface .pos-fields .pos-amount input{height:78px;font-size:36px}.pos-agent-interface .pos-confirm{height:64px;font-size:17px}.pos-agent-interface nav#tabs{display:flex;justify-content:center;gap:14px;padding:8px}.pos-agent-interface nav#tabs button:not([hidden]){min-width:180px;min-height:44px;font-size:12px}@media(max-width:700px){.pos-agent-interface .titlebar{min-height:112px}.pos-agent-interface .brand-logo{max-width:150px}.pos-agent-interface .institution-name{font-size:20px}.pos-agent-interface .pos-workspace{padding:4px}.pos-agent-interface .pos-phone{border-radius:14px}.pos-agent-interface .pos-app-header{padding:15px}.pos-agent-interface #posForm{padding:16px 12px 20px}.pos-agent-interface nav#tabs{gap:5px}.pos-agent-interface nav#tabs button:not([hidden]){min-width:0;flex:1;padding:8px 5px}}
.administration-nature-groups .nature-institution>header{background:linear-gradient(110deg,#8f142b,#d92b42)}.administration-nature-groups .nature-institution>header p{color:#ffe7eb}
.administration-nature-groups .nature-institution .plus-section-button,.administration-nature-groups .nature-institution .open-agent-form{border-color:#e96d7e;background:linear-gradient(110deg,#851127,#c9233a);box-shadow:0 9px 22px rgb(143 20 43 / 20%)}.administration-nature-groups .nature-institution .plus-section-button[aria-expanded="true"]{background:linear-gradient(110deg,#741022,#ad1b31)}

/* Identité visuelle propre à chaque famille de l'Administration. */
.administration-nature-groups .administration-nature{
  --admin-color:#7030a0;
  --admin-dark:#3f1558;
  --admin-light:#f5ecf9;
  --admin-border:#d7bde4;
  border-color:var(--admin-border);
  background:var(--admin-light);
}
.administration-nature-groups .nature-institution{--admin-color:#d92b42;--admin-dark:#851127;--admin-light:#fff4f6;--admin-border:#ef9eaa}
.administration-nature-groups .nature-operations{--admin-color:#18875c;--admin-dark:#14573f;--admin-light:#f0faf5;--admin-border:#8bcdb0}
.administration-nature-groups .nature-credit{--admin-color:#d37a16;--admin-dark:#8b4809;--admin-light:#fff8e9;--admin-border:#efbd76}
.administration-nature-groups .nature-users{--admin-color:#246eb5;--admin-dark:#174574;--admin-light:#f0f7ff;--admin-border:#91bce4}
.administration-nature-groups .nature-control{--admin-color:#7b35a5;--admin-dark:#45145f;--admin-light:#f7f0fb;--admin-border:#c5a0da}
.administration-nature-groups .nature-exchange{--admin-color:#3d8790;--admin-dark:#285f66;--admin-light:#f1fafb;--admin-border:#a7d3d7}.administration-nature-groups .nature-communication{--admin-color:#8a6b42;--admin-dark:#654b2d;--admin-light:#fcf8f1;--admin-border:#d9c5a8}
.administration-nature-groups .administration-nature>header{
  background:linear-gradient(110deg,var(--admin-dark),var(--admin-color));
}
.administration-nature-groups .administration-nature>header p{color:rgb(255 255 255 / 86%)}
.administration-nature-groups .administration-nature>header>span{
  border-color:rgb(255 255 255 / 48%);
  background:rgb(255 255 255 / 18%);
  box-shadow:inset 0 0 0 1px rgb(255 255 255 / 8%);
}
.administration-nature-groups .administration-nature-content{
  border-top:4px solid var(--admin-color);
  background:linear-gradient(180deg,var(--admin-light),#fff 150px);
}
.administration-nature-groups .administration-nature .plus-section-button,
.administration-nature-groups .administration-nature .open-agent-form{
  border-color:var(--admin-border)!important;
  background:linear-gradient(110deg,var(--admin-dark),var(--admin-color))!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--admin-color) 24%,transparent)!important;
  color:#fff!important;
}
.administration-nature-groups .administration-nature .plus-section-button[aria-expanded="true"]{
  background:var(--admin-dark)!important;
}
.administration-nature-groups .administration-nature .admin-block{
  border-color:var(--admin-border);
  border-top:3px solid var(--admin-color);
  background:#fff;
}
.cash-control-guide{display:grid;grid-template-columns:auto repeat(3,1fr);gap:9px;align-items:center;margin-bottom:14px;padding:12px;border:1px solid #8bcdb0;border-radius:12px;background:#edf9f3;color:#14573f}.cash-control-guide span{padding:8px;border-radius:8px;background:#fff;font-size:11px;font-weight:700}.cash-control-form,.cash-control-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:11px;align-items:end}.cash-control-form label,.cash-control-filters label{display:grid;gap:5px;color:#14573f;font-weight:800}.cash-control-form input,.cash-control-form select,.cash-control-form textarea,.cash-control-filters input,.cash-control-filters select{width:100%;min-height:40px;box-sizing:border-box;border:1px solid #9dcdb8;border-radius:9px;background:#fff;padding:7px 10px}.cash-control-form strong{display:flex;align-items:center;min-height:40px;padding:0 11px;border-radius:9px;background:#edf9f3}.cash-control-observation{grid-column:span 2}.cash-control-form textarea{min-height:70px;resize:vertical}.cash-control-form button,.cash-control-filters button{min-height:41px;border:0;border-radius:9px;background:#18875c;color:#fff;font-weight:900}.cash-control-filters{margin:18px 0 12px;padding:12px;border:1px solid #b9dcca;border-radius:12px;background:#f3faf6}.cash-control-filters .secondary{background:#e2efe8;color:#14573f}.cash-control-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0}.cash-control-kpis span{display:grid;gap:4px;padding:12px;border-left:5px solid #18875c;border-radius:10px;background:#edf9f3}.cash-control-kpis span.danger{border-color:#c62828;background:#fff0f1}.cash-control-kpis span.warning{border-color:#d37a16;background:#fff7e8}.cash-control-kpis small{font-size:9px;font-weight:900}.cash-control-kpis b{font-size:22px}.cash-control-table{overflow:auto;border:1px solid #aed8c4;border-radius:12px}.cash-control-table table{width:100%;min-width:1450px;border-collapse:collapse}.cash-control-table th{padding:9px;background:#14573f;color:#fff;font-size:9px}.cash-control-table td{padding:8px;border:1px solid #d6e7de;font-size:10px;vertical-align:top}.cash-control-table td small{display:block;margin-top:3px}.cash-control-manquant td{background:#fff1f2;color:#991f31}.cash-control-surplus td{background:#fff8e9;color:#81500e}.cash-control-conforme td{background:#effaf4;color:#12603f}.cash-control-status{display:inline-block;padding:5px 7px;border-radius:999px;background:#e9ddeF;color:#552078;font-weight:900;white-space:nowrap}.status-conforme,.status-regularisee{background:#d7f2e3;color:#12603f}.status-a_justifier{background:#fde2e5;color:#a31f33}.status-validee{background:#fff0cc;color:#795000}.status-rejetee{background:#e8e8e8;color:#555}.cash-control-actions{min-width:210px}.cash-control-actions input{width:100%;box-sizing:border-box;margin-bottom:6px;padding:7px;border:1px solid #c7a6d7;border-radius:7px}.cash-control-actions button{margin:2px;padding:6px 8px;border:0;border-radius:6px;background:#18875c;color:#fff;font-size:9px;font-weight:900}.cash-control-actions button.danger{background:#b82438}.warning{color:#9a5b08}@media(max-width:800px){.cash-control-guide{grid-template-columns:1fr}.cash-control-kpis{grid-template-columns:1fr 1fr}.cash-control-observation{grid-column:auto}}
.pos-workspace,.pos-agent-interface .pos-workspace{min-height:0;padding:14px 18px 22px}.pos-phone,.pos-agent-interface .pos-phone{width:min(650px,100%);border-radius:20px}.pos-app-header,.pos-agent-interface .pos-app-header{gap:11px;padding:14px 18px}.pos-app-icon{width:42px;height:42px;border-radius:12px;font-size:24px}.pos-app-header h1{font-size:18px}.pos-secure{padding:5px 8px}#posForm,.pos-agent-interface #posForm{padding:15px 18px 18px}.pos-step{grid-template-columns:31px 1fr;gap:9px;margin-bottom:12px}.pos-step>span{width:29px;height:29px;font-size:12px}.pos-lookup input,.pos-step select,.pos-step input,.pos-agent-interface .pos-step select,.pos-agent-interface .pos-step input,.pos-agent-interface .pos-lookup input{height:41px;min-height:41px;padding:6px 10px;border-radius:10px;font-size:13px}.pos-lookup button{padding:0 13px;border-radius:10px;font-size:11px}.pos-fields{gap:9px 11px}.pos-fields .pos-amount input,.pos-agent-interface .pos-fields .pos-amount input{height:54px;font-size:25px}.pos-customer{gap:10px;margin:0 18px 12px;padding:10px;border-radius:12px}.pos-customer img,.pos-avatar{width:45px;height:45px;border-radius:11px}.pos-location{gap:5px;margin:9px 0;padding:9px}.pos-summary{margin:3px 0 11px;padding:12px 15px;border-radius:12px}.pos-summary strong{font-size:19px}.pos-confirm,.pos-agent-interface .pos-confirm{height:47px;font-size:13px}
.pos-agent-interface .excel-app{--dynamic-header-height:58px}.pos-agent-interface .titlebar{min-height:58px;height:58px;justify-content:flex-end;background:linear-gradient(110deg,#f7eefb,#e7d3f0)}.pos-agent-interface .titlebar .brand-logo,.pos-agent-interface .titlebar .institution-identity,.pos-agent-interface .titlebar #sheetFilters,.pos-agent-interface .titlebar #currentUser,.pos-agent-interface .titlebar .analog-clock{display:none!important}.pos-agent-interface .titlebar .user-box{top:10px;right:16px;display:flex!important}.pos-agent-interface .titlebar .user-actions{display:block}.pos-agent-interface .titlebar #logoutBtn{display:grid!important;width:38px;height:38px;margin:0}
.pos-agent-interface .titlebar .dashboard-welcome{top:8px;bottom:auto;max-width:calc(100% - 130px);height:42px;gap:8px;padding:6px 15px;border-radius:12px;white-space:nowrap}.pos-agent-interface .titlebar .dashboard-welcome small{font-size:15px}.pos-agent-interface .titlebar .dashboard-welcome strong{font-size:21px}
.pos-agent-interface .titlebar{margin:0;border-radius:0}.pos-agent-interface .formula{margin:0;border-radius:0}.pos-agent-interface .institution-bar{display:none!important;margin:0}
@media(max-width:600px),(max-height:700px){#loginScreen{padding:8px;place-items:center}#loginScreen #loginForm{box-sizing:border-box;width:min(360px,100%);max-height:calc(100dvh - 16px);gap:5px;padding:11px 18px 14px;overflow-x:hidden;overflow-y:auto;border-radius:16px}#loginScreen .login-logo{width:100%;height:125px;margin:0 auto -4px}#loginScreen #loginForm h1{font-size:42px;line-height:.95}#loginScreen #loginForm input{height:41px;padding:7px 11px}#loginScreen #loginForm button{height:43px}}
@media(max-height:480px){#loginScreen #loginForm{display:grid;grid-template-columns:1fr;width:min(330px,100%);padding:7px 14px 9px;gap:3px}#loginScreen .login-logo{grid-column:auto;grid-row:auto;height:78px;margin:0 auto -2px}#loginScreen #loginForm h1{grid-column:auto;font-size:30px}#loginScreen #loginForm input,#loginScreen #loginForm button{grid-column:auto;height:34px}#loginScreen #loginError{grid-column:auto}}
#loginScreen #loginForm{width:min(350px,calc(100% - 24px));gap:8px;padding:14px 22px 18px;border:1px solid rgb(255 255 255 / 65%);border-radius:20px;background:linear-gradient(155deg,#fff 0%,#fbf7fd 62%,#f0e2f6 100%)}#loginScreen #loginForm::after{content:"";position:absolute;inset:8px;z-index:-1;border:1px solid rgb(112 48 160 / 9%);border-radius:14px;pointer-events:none}#loginScreen .login-logo{width:100%;height:140px;margin:0 auto -7px}#loginScreen #loginForm h1{font-size:46px;letter-spacing:5px}#loginScreen #loginForm input{height:41px;padding:8px 13px;border:1px solid #d2b9dd!important;border-radius:10px;background:#fff!important;font-size:13px}#loginScreen #loginForm input:focus{border-color:#7b35a0!important;box-shadow:0 0 0 3px rgb(112 48 160 / 12%)!important}#loginScreen #loginForm button{height:43px;border-radius:10px;background:linear-gradient(110deg,#3b1051,#7030a0 58%,#8a42ad);font-size:12px;letter-spacing:.1em}#loginError{min-height:12px;color:#b01f37;font-size:11px;text-align:center}
@media(max-width:600px){#loginScreen #loginForm{width:min(310px,calc(100% - 18px));gap:6px;padding:10px 16px 13px;border-radius:16px}#loginScreen .login-logo{height:100px;margin-bottom:-4px}#loginScreen #loginForm h1{font-size:34px}#loginScreen #loginForm input{height:37px}#loginScreen #loginForm button{height:39px}}
@media(max-height:480px){#loginScreen #loginForm{width:min(290px,calc(100% - 14px));gap:3px;padding:6px 13px 8px}#loginScreen .login-logo{height:68px}#loginScreen #loginForm h1{font-size:27px}#loginScreen #loginForm input{height:32px}#loginScreen #loginForm button{height:34px}}
.agent-photo-field{display:grid;grid-template-columns:1fr auto;align-items:center;gap:9px;padding:10px 12px;border:1px solid #d7b9e3;border-radius:12px;background:#faf5fc;color:#552078;font-weight:800}.agent-photo-field input{min-width:0}.agent-photo-field img{grid-column:2;grid-row:1/3;width:62px;height:72px;object-fit:cover;border:3px solid #fff;border-radius:12px;box-shadow:0 4px 12px rgb(75 23 108 / 18%)}.agent-list-photo,.agent-list-avatar{display:grid;place-items:center;width:42px;height:48px;margin:auto;object-fit:cover;border-radius:9px}.agent-list-photo{border:2px solid #d8bee3}.agent-list-avatar{background:#eadcf1;color:#552078;font-size:19px;font-weight:900}.agent-card-button{background:linear-gradient(135deg,#7f3aa5,#4b176c)!important;color:#fff!important}.agent-service-card-view{display:grid;justify-items:center;gap:14px;margin:18px 0;padding:20px;border:1px solid #d5b9e0;border-radius:18px;background:radial-gradient(circle at top,#f8effb,#eadcf1)}.agent-service-card-view .history-head{width:100%}.agent-service-card-view canvas{display:block;width:min(360px,100%);height:auto;border-radius:22px;box-shadow:0 18px 38px rgb(39 6 56 / 28%)}.agent-card-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.agent-card-actions button{min-width:160px;padding:11px 16px;border:0;border-radius:10px;background:linear-gradient(135deg,#7030a0,#3a104f);color:#fff;font-weight:900;cursor:pointer}.agent-card-actions button:disabled{opacity:.55}
.salary-agent-required{background:#f4e3b7!important;box-shadow:inset 0 0 0 2px #c68a16}.salary-agent-required select{background:#fff8e6!important;font-weight:800}.salary-advance-settings form{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:13px;align-items:end}.salary-advance-settings label{display:grid;gap:6px}.salary-advance-title td{background:#b36b00!important;color:#fff!important}.salary-advance-out td{background:#f7dddd!important;color:#9c2434!important}.salary-advance-in td{background:#e1f3e7!important;color:#16743d!important}.salary-advance-withholding td{background:#fff0ca!important;color:#7d5700!important}.salary-advance-balance td{background:#e9dcf2!important;color:#542071!important;font-weight:900!important}@media(max-width:800px){.salary-advance-settings form{grid-template-columns:1fr}}
.treasury-readable .treasury-reading-guide{display:grid;grid-template-columns:auto repeat(3,1fr);gap:8px;align-items:center;padding:10px 12px;background:#f5ecf9;color:#4b1765;font:700 10px Arial}.treasury-reading-guide strong{font-size:11px}.treasury-reading-guide span{padding:7px 9px;border:1px solid #dbc3e6;border-radius:8px;background:#fff;text-align:center}.treasury-readable .treasury-main-title td{padding:10px!important;color:#fff!important;text-align:center!important}.treasury-main-title b{display:block;font-size:14px;letter-spacing:.05em}.treasury-main-title small{display:block;margin-top:3px;font:600 9px Arial;opacity:.9}.treasury-in-title td{background:linear-gradient(90deg,#08783a,#12a859)!important}.treasury-out-title td{background:linear-gradient(90deg,#a8182e,#de3549)!important}.treasury-noncash-title td{background:linear-gradient(90deg,#5c2875,#8250a0)!important}.treasury-tfr-title td{background:linear-gradient(90deg,#321044,#7030a0)!important}.treasury-readable .treasury-nature-title td{padding:5px 10px!important;background:#dff3e7!important;color:#176b3b!important;text-align:left!important;font-size:10px!important;letter-spacing:.04em}.treasury-readable .treasury-nature-title.out td{background:#f8dddd!important;color:#9b2535!important}.treasury-readable .treasury-subtitle td{padding-left:20px!important;background:#f8f3fa!important;color:#6c4d77!important;font-size:9px!important;text-align:left!important}.treasury-readable .treasury-divider td{height:38px!important;padding:0!important;border-top:5px solid #552078!important;border-bottom:5px solid #552078!important;background:#fff!important;color:#552078!important;text-align:center!important}.treasury-divider span{display:inline-block;margin:0 25px;font:900 10px Arial}.treasury-divider b{font-size:18px}.treasury-section-total td{padding:8px!important;font-size:12px!important;font-weight:900!important}.treasury-in-total td{background:#08a04b!important;color:#fff!important}.treasury-out-total td{background:#d71f36!important;color:#fff!important}.treasury-cash-result td{padding:10px!important;background:#fff3cd!important;color:#684b00!important;font-weight:900!important}.treasury-cash-result small,.treasury-operating-result small{display:block;margin-top:2px;font:600 9px Arial}.treasury-operating-result td{padding:11px!important;font-size:13px!important;font-weight:900!important}.treasury-operating-result td:last-child small{font-size:9px}.treasury-operating-result.profit td{background:#08a04b!important;color:#fff!important}.treasury-operating-result.loss td{background:#d71f36!important;color:#fff!important}.treasury-readable .treasury-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;padding:10px;background:#faf6fc;color:#523563;font:700 9px Arial}.treasury-legend span{display:flex;align-items:center;gap:5px}.treasury-legend i{width:10px;height:10px;border-radius:3px}.treasury-legend .green{background:#08a04b}.treasury-legend .red{background:#d71f36}.treasury-legend .orange{background:#d28b19}.treasury-legend .purple{background:#7030a0}@media(max-width:850px){.treasury-readable .treasury-reading-guide{grid-template-columns:1fr 1fr}.treasury-reading-guide strong{grid-column:1/-1}.treasury-divider span{margin:0 8px}}
.status-annule{background:#3f3f46!important;color:#fff!important}.cash-control-actions .cash-control-cancel{display:inline-block;width:auto;margin:2px!important;padding:6px 8px;border:0;border-radius:6px;background:#b82438;color:#fff;font-size:9px;font-weight:900}.cash-control-table tr:has(.status-annule) td{background:#f1f1f3!important;color:#666!important}
.required-field-label{position:relative}.required-field-label::after{content:"*";position:absolute;top:1px;right:3px;color:#9a1771;font-size:13px;font-weight:1000;line-height:1}.required-field-without-label{border-color:#bb8dcd!important}.required-field-without-label::placeholder{color:#765183;opacity:1}
.plus-sheet{box-sizing:border-box!important;width:100%!important;min-width:0!important;padding:20px!important;background:linear-gradient(145deg,#f8f1fb,#efe2f5)!important}.plus-sheet .reference-panel{box-sizing:border-box!important;width:min(1600px,calc(100vw - 40px))!important;min-width:0!important;margin:0 auto!important}.plus-sheet .reference-panel>h1{margin:0 0 18px!important;padding:17px 22px!important;border:1px solid #8e58a9!important;border-radius:18px!important;background:linear-gradient(110deg,#351047,#7030a0 72%,#9145b2)!important;font-family:Calibri,"Segoe UI",sans-serif!important;font-size:22px!important;box-shadow:none!important}.plus-sheet .administration-nature-groups{gap:16px!important;margin-top:14px!important}.plus-sheet .administration-nature{border-width:1px!important;border-radius:20px!important;box-shadow:none!important}.plus-sheet .administration-nature>header{min-height:48px;padding:14px 18px!important}.plus-sheet .administration-nature>header>span{flex-basis:38px!important;height:38px!important;border-radius:11px!important}.plus-sheet .administration-nature>header h2{font-size:15px!important}.plus-sheet .administration-nature-content{gap:12px!important;padding:14px!important}.plus-sheet .plus-section-button,.plus-sheet .open-agent-form{min-height:48px!important;height:48px!important;border-radius:12px!important;box-shadow:none!important;transition:none!important}.plus-sheet .plus-section-button:hover,.plus-sheet .open-agent-form:hover{transform:none!important;box-shadow:none!important}.plus-sheet .admin-block,.plus-sheet .institution-settings,.plus-sheet .reference-forms form,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration{box-sizing:border-box;border-radius:14px!important;background:#fff;box-shadow:none!important}.plus-sheet .reference-panel input,.plus-sheet .reference-panel select,.plus-sheet .reference-panel textarea{box-sizing:border-box;min-height:42px;border-radius:10px!important;background:#fff!important}.plus-sheet .reference-panel button{min-height:40px;border-radius:10px!important}.plus-sheet .advanced-settings-form{gap:14px}.plus-sheet .advanced-settings-form h3{padding:11px 14px;border-radius:10px}.plus-sheet table{background:#fff}.plus-sheet .table-general-search{border-radius:12px;background:#fff}@media(max-width:800px){.plus-sheet{padding:10px!important}.plus-sheet .reference-panel{width:100%!important}.plus-sheet .reference-panel>h1{padding:14px!important;font-size:18px!important}.plus-sheet .administration-nature>header{padding:12px!important}.plus-sheet .administration-nature-content{padding:10px!important}.plus-sheet .advanced-settings-form,.plus-sheet .reference-forms{grid-template-columns:1fr!important}}
.plus-sheet{background:linear-gradient(145deg,#fbf8fc,#f4edf7)!important}.plus-sheet .reference-panel>h1{border-color:#bfa3cd!important;background:linear-gradient(110deg,#634174,#82599a 72%,#9a72ac)!important}.plus-sheet .nature-institution{--admin-color:#b86474;--admin-dark:#8c4453;--admin-light:#fff8f9;--admin-border:#e4b8c0}.plus-sheet .nature-operations{--admin-color:#579274;--admin-dark:#3f7058;--admin-light:#f6fbf8;--admin-border:#b7d8c8}.plus-sheet .nature-credit{--admin-color:#bf8749;--admin-dark:#936333;--admin-light:#fffbf4;--admin-border:#e5c89f}.plus-sheet .nature-users{--admin-color:#5c87b2;--admin-dark:#41678e;--admin-light:#f7faff;--admin-border:#bad0e5}.plus-sheet .nature-control{--admin-color:#88639b;--admin-dark:#684876;--admin-light:#faf7fc;--admin-border:#d2bddc}.plus-sheet .advanced-settings-form h3{background:linear-gradient(90deg,#684876,#9370a5)}
.plus-sheet .nature-exchange{--admin-color:#5f969c;--admin-dark:#48777d;--admin-light:#f5fbfb;--admin-border:#b9d8db}.plus-sheet .nature-communication{--admin-color:#9a805d;--admin-dark:#756044;--admin-light:#fdfaf5;--admin-border:#ddcfba}
.administration-permission-group{margin:7px 0;border:1px solid #d8c2e2;border-radius:10px;background:#faf6fc}.administration-section-right{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:10px 12px!important;cursor:pointer}.administration-section-right>span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;background:#eadcf1;color:#552078;font-weight:900}.administration-permission-group>div{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:7px;padding:9px 12px 12px;border-top:1px solid #e5d7eb;background:#fff}.administration-permission-group>div label{display:flex!important;align-items:center;gap:7px;padding:8px;border-radius:8px;background:#f7f0fa}@media(max-width:800px){.administration-permission-group>div{grid-template-columns:1fr}}
.job-permissions{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;align-items:start;overflow:visible!important}.job-page-access{min-width:0;overflow:hidden}.job-page-access.expanded{grid-column:1/-1;overflow:visible}.job-page-access.expanded>section{width:100%;box-sizing:border-box}.job-page-access section{min-width:0}.page-permission-group{display:grid;gap:7px;padding:10px;border:1px solid #e0cee8;border-radius:10px;background:#fbf8fc}.page-permission-group>strong{color:#684079;font-size:10px;letter-spacing:.055em}.page-permission-group>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:7px}.page-permission-group label{box-sizing:border-box;min-width:0;padding:8px;border-radius:8px;background:#f4eaf8}.job-page-access[data-administration-tree="1"] section,.job-page-access.expanded section{overflow:visible}.administration-permission-group{box-sizing:border-box;min-width:0}.administration-permission-group>div{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));overflow:visible}@media(max-width:700px){.job-permissions{grid-template-columns:1fr!important}.job-page-access.expanded{grid-column:auto}.page-permission-group>div,.administration-permission-group>div{grid-template-columns:1fr}}
.plus-sheet .reference-panel{width:calc(100vw - 24px)!important;max-width:none!important}.plus-sheet .administration-nature-content,.plus-sheet .admin-block,.plus-sheet form,.plus-sheet table{color:#32233a}.plus-sheet .administration-nature>header h2{font-size:17px!important;font-weight:900}.plus-sheet .administration-nature>header p{font-size:13px!important;font-weight:600}.plus-sheet .plus-section-button,.plus-sheet .open-agent-form{font-size:13px!important;letter-spacing:.035em!important}.plus-sheet label{color:#40284d!important;font-size:12px!important;font-weight:800!important}.plus-sheet input,.plus-sheet select,.plus-sheet textarea{color:#27172f!important;font-size:13px!important;font-weight:600}.plus-sheet input::placeholder,.plus-sheet textarea::placeholder{color:#846f8e!important;opacity:1}.plus-sheet th{font-size:11px!important;letter-spacing:.025em}.plus-sheet td{font-size:12px}.plus-sheet p,.plus-sheet small{line-height:1.45}.plus-sheet h2,.plus-sheet h3{letter-spacing:.025em}@media(max-width:800px){.plus-sheet .reference-panel{width:100%!important}.plus-sheet label{font-size:11px!important}.plus-sheet input,.plus-sheet select,.plus-sheet textarea{font-size:12px!important}}
.plus-sheet .reference-panel{width:calc(100vw - 64px)!important;max-width:1900px!important;margin-inline:auto!important}@media(max-width:1100px){.plus-sheet .reference-panel{width:calc(100vw - 32px)!important}}@media(max-width:600px){.plus-sheet .reference-panel{width:100%!important}.plus-sheet{padding:8px!important}}
.dashboard-sheet .dashboard-overview,.dashboard-sheet .dashboard-charts,.dashboard-sheet .dashboard-management,.dashboard-sheet .precaution-dashboard,.dashboard-sheet .excel-dash,.dashboard-sheet .kpi-card,.dashboard-sheet .chart-card,.dashboard-sheet .currency-position-panel,.dashboard-sheet .currency-position-panel article,.dashboard-sheet .management-kpis article,.dashboard-sheet .dashboard-management-grid>article{box-sizing:border-box;border:1px solid #7030a0!important}.dashboard-sheet .dashboard-overview,.dashboard-sheet .dashboard-charts,.dashboard-sheet .dashboard-management{border-radius:14px;margin-bottom:12px}.dashboard-sheet .kpi-card,.dashboard-sheet .management-kpis article{border-left-width:5px!important}
.pos-step>.pos-change-toggle,.pos-step>.pos-client-exchange,.pos-step>.pos-fields{grid-column:2;min-width:0}.pos-change-toggle{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:2px 9px;width:100%;box-sizing:border-box;margin:0 0 12px;padding:11px 13px;border:1px solid #cdaede;border-radius:12px;background:#f7effb;color:#552078!important;cursor:pointer}.pos-change-toggle input{grid-row:1/3;width:20px;height:20px;accent-color:#7030a0}.pos-change-toggle span{font-size:12px;font-weight:900}.pos-change-toggle small{font-size:10px;font-weight:600;color:#80658c}.pos-client-exchange{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;width:100%;box-sizing:border-box;margin:0 0 13px;padding:12px;border:1px solid #cdaede;border-radius:12px;background:#fbf7fd}.pos-client-exchange label{display:grid;gap:5px;min-width:0;color:#6b5276;font-size:10px;font-weight:900}.pos-client-exchange select{width:100%;min-width:0;height:42px;padding:7px 10px;border:1px solid #ceb3da;border-radius:10px;background:#fff;color:#321040}.pos-client-exchange>div{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:8px 12px;border-radius:10px;background:#552078;color:#fff}.pos-client-exchange>div span{font-size:9px;font-weight:800}.pos-client-exchange>div strong{overflow-wrap:anywhere;font-size:18px}.pos-client-exchange>small{grid-column:1/-1;color:#7030a0;font-weight:800}.pos-phone,.pos-agent-interface .pos-phone,.pos-workspace .pos-phone,.pos-agent-interface .pos-workspace .pos-phone{width:min(560px,100%)!important;max-width:560px!important}@media(max-width:580px){.pos-client-exchange{grid-template-columns:1fr}.pos-client-exchange>small{grid-column:auto}.pos-phone,.pos-agent-interface .pos-phone,.pos-workspace .pos-phone,.pos-agent-interface .pos-workspace .pos-phone{width:100%!important;max-width:100%!important}}
.logo-bar-permission-group{grid-column:1/-1;overflow:hidden;border:1px solid #caa8da;border-radius:12px;background:#fff}.logo-bar-permission-toggle{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;min-height:46px!important;padding:11px 14px!important;border:0!important;border-radius:0!important;background:#e9d9f1!important;color:#54206f!important;text-align:left;box-shadow:none!important;cursor:pointer}.logo-bar-permission-toggle strong{font-size:13px}.logo-bar-permission-toggle small{font-size:9px}.logo-bar-permission-toggle span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:#552078;font-size:15px;font-weight:900}.logo-bar-permission-group.expanded{overflow:visible}.logo-bar-permission-group>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:7px;padding:12px}.logo-bar-permission-group>div[hidden]{display:none}.logo-bar-permission-group label{display:flex!important;align-items:center;gap:8px;min-height:38px;padding:8px 10px!important;border-radius:8px;background:#f7f0fa;color:#4d2a5c;font-size:10px!important;font-weight:800}@media(max-width:700px){.logo-bar-permission-group>div{grid-template-columns:1fr}}
/* Barre de logo adaptative : aucun groupe ne se superpose sur les écrans étroits. */
body:not(.pos-agent-interface) .titlebar .currency-badges{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px;min-width:0;overflow:visible}
body:not(.pos-agent-interface) .titlebar .currency-badges>span,body:not(.pos-agent-interface) .titlebar .agent-balance-badges span{max-width:100%;flex:0 1 auto}
body:not(.pos-agent-interface) .titlebar .agent-balance-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;min-width:0}
@media(max-width:1450px){body:not(.pos-agent-interface) .excel-app{grid-template-rows:auto 31px minmax(0,1fr) 42px!important}body:not(.pos-agent-interface) .titlebar{display:grid;grid-template-columns:minmax(210px,280px) minmax(320px,1fr) minmax(220px,280px);grid-template-rows:minmax(150px,auto) auto;align-items:center;gap:8px 14px;min-height:0;height:auto;padding:8px 12px 12px;overflow:hidden}body:not(.pos-agent-interface) .titlebar .brand-logo{position:relative;grid-column:1;grid-row:1;left:auto;top:auto;width:100%;height:135px;max-width:280px;transform:none}body:not(.pos-agent-interface) .titlebar .institution-identity{position:relative;grid-column:2;grid-row:1;top:auto;left:auto;width:100%;max-width:none;overflow:visible;transform:none}body:not(.pos-agent-interface) .titlebar .institution-identity>b{font-size:clamp(20px,2.2vw,28px)}body:not(.pos-agent-interface) .titlebar .user-box{position:relative;grid-column:3;grid-row:1;top:auto;right:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;width:100%;min-width:0;gap:8px}body:not(.pos-agent-interface) .titlebar .user-box #currentUser{max-width:100%;margin:0;overflow-wrap:anywhere;white-space:normal;text-align:right}body:not(.pos-agent-interface) .titlebar .sheet-filters{position:relative;grid-column:1/-1;grid-row:2;top:auto;right:auto;left:auto;width:100%;max-width:none;margin:0;transform:none}body:not(.pos-agent-interface) .titlebar .dashboard-welcome{grid-column:1/-1;max-width:80%}}
@media(max-width:900px){body:not(.pos-agent-interface) .titlebar{grid-template-columns:minmax(125px,170px) minmax(220px,1fr) minmax(120px,170px);grid-template-rows:minmax(130px,auto) auto}body:not(.pos-agent-interface) .titlebar .brand-logo{height:110px}body:not(.pos-agent-interface) .titlebar .analog-clock{width:88px;height:88px;border-width:4px}body:not(.pos-agent-interface) .titlebar .analog-clock span{font-size:9px}body:not(.pos-agent-interface) .titlebar .analog-clock .hour-hand{height:22px}body:not(.pos-agent-interface) .titlebar .analog-clock .minute-hand{height:31px}body:not(.pos-agent-interface) .titlebar .analog-clock .second-hand{height:36px}body:not(.pos-agent-interface) .titlebar .institution-identity>b{font-size:20px}body:not(.pos-agent-interface) .titlebar .currency-badges>span,body:not(.pos-agent-interface) .titlebar .agent-balance-badges span{padding:3px 7px!important;font-size:8px!important}body:not(.pos-agent-interface) .titlebar .user-box #currentUser{font-size:9px}}
@media(max-width:620px){body:not(.pos-agent-interface) .titlebar{display:grid;grid-template-columns:92px minmax(0,1fr) 62px;grid-template-rows:auto auto auto;gap:5px 8px;padding:6px 7px 9px}body:not(.pos-agent-interface) .titlebar .brand-logo{grid-column:1;grid-row:1;width:92px;height:82px}body:not(.pos-agent-interface) .titlebar .institution-identity{grid-column:2;grid-row:1;align-self:start;padding-top:3px}body:not(.pos-agent-interface) .titlebar .institution-identity>b{font-size:16px;letter-spacing:.055em;white-space:normal}body:not(.pos-agent-interface) .titlebar .currency-badges{margin-top:5px;gap:3px}body:not(.pos-agent-interface) .titlebar .currency-badges>span,body:not(.pos-agent-interface) .titlebar .agent-balance-badges span{padding:2px 5px!important;font-size:7px!important;letter-spacing:0}body:not(.pos-agent-interface) .titlebar .notification-bell,body:not(.pos-agent-interface) .titlebar .message-button{width:26px;height:26px}body:not(.pos-agent-interface) .titlebar .user-box{display:contents}body:not(.pos-agent-interface) .titlebar .user-box #currentUser{grid-column:1/-1;grid-row:2;justify-self:center;max-width:calc(100% - 16px);margin:0;padding:4px 8px;text-align:center}body:not(.pos-agent-interface) .titlebar .user-actions{grid-column:3;grid-row:1;align-self:start;justify-self:end;gap:5px}body:not(.pos-agent-interface) .titlebar #logoutBtn{width:30px;height:30px;font-size:18px}body:not(.pos-agent-interface) .titlebar .analog-clock{width:58px;height:58px;border-width:3px}body:not(.pos-agent-interface) .titlebar .analog-clock span{width:14px;height:10px;margin:-5px 0 0 -7px;font-size:6px;line-height:10px}body:not(.pos-agent-interface) .titlebar .analog-clock .hour-hand{height:14px;width:3px}body:not(.pos-agent-interface) .titlebar .analog-clock .minute-hand{height:20px;width:2px}body:not(.pos-agent-interface) .titlebar .analog-clock .second-hand{height:23px;width:1px}body:not(.pos-agent-interface) .titlebar .analog-clock .clock-center{bottom:calc(50% - 3px);width:6px;height:6px;margin-left:-3px}body:not(.pos-agent-interface) .titlebar .sheet-filters{grid-column:1/-1;grid-row:3;margin-top:2px;overflow:visible}body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}body:not(.pos-agent-interface) .titlebar .dashboard-welcome{position:fixed;top:8px;bottom:auto;max-width:calc(100vw - 20px);padding:8px 12px}body:not(.pos-agent-interface) .titlebar .dashboard-welcome small{font-size:18px}body:not(.pos-agent-interface) .titlebar .dashboard-welcome strong{font-size:25px}}

/* Page Clients adaptative : les fiches occupent l'ecran, seuls les tableaux defilent. */
.clients-sheet{width:100%!important;min-width:0!important;max-width:100%;overflow-x:hidden}
.clients-sheet .client-card,.clients-sheet .client-list-card{width:100%!important;min-width:0!important;max-width:100%!important;margin-inline:auto!important}
.clients-sheet .client-form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}
.clients-sheet .client-form-section{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}
.clients-sheet .client-table-wrap,.clients-sheet #clientHistory{box-sizing:border-box;max-width:100%;overflow-x:auto}
.clients-sheet .client-table{width:max-content;min-width:100%}
@media(max-width:620px){.clients-sheet{padding:8px!important}.clients-sheet .client-form-grid,.clients-sheet .client-form-section{grid-template-columns:minmax(0,1fr)!important;padding:12px}.clients-sheet .client-wide{grid-column:auto}.clients-sheet .client-form-actions,.clients-sheet .client-filter-actions{flex-wrap:wrap}.clients-sheet .client-form-actions button,.clients-sheet .client-filter-actions button{flex:1 1 150px}.clients-sheet #clientHistory{margin:10px 0;padding:10px}}

/* Separation structurelle entre l'identite et les filtres : aucun chevauchement. */
body:not(.pos-agent-interface) .excel-app{grid-template-rows:auto 31px minmax(0,1fr) 42px!important}
body:not(.pos-agent-interface) .titlebar{display:grid!important;grid-template-columns:minmax(220px,340px) minmax(320px,1fr) minmax(220px,320px);grid-template-rows:minmax(150px,auto) auto;align-items:center;gap:10px 18px;height:auto!important;min-height:0;padding:8px 14px 12px;overflow:hidden}
body:not(.pos-agent-interface) .titlebar .brand-logo{position:relative;grid-column:1;grid-row:1;top:auto;left:auto;width:100%;max-width:340px;height:140px;transform:none}
body:not(.pos-agent-interface) .titlebar .institution-identity{position:relative;grid-column:2;grid-row:1;top:auto;left:auto;width:100%;max-width:none;min-width:0;overflow:visible;transform:none}
body:not(.pos-agent-interface) .titlebar .user-box{position:relative;grid-column:3;grid-row:1;top:auto;right:auto;width:100%;min-width:0}
body:not(.pos-agent-interface) .titlebar .sheet-filters{position:relative!important;grid-column:1/-1;grid-row:2;top:auto!important;right:auto!important;left:auto!important;bottom:auto;width:100%!important;max-width:100%!important;min-height:0!important;height:auto;box-sizing:border-box;margin:0!important;overflow-x:auto!important;overflow-y:visible!important;transform:none!important}
body:not(.pos-agent-interface) .titlebar .sheet-filters[hidden]{display:none!important}
@media(max-width:900px){body:not(.pos-agent-interface) .titlebar{grid-template-columns:minmax(125px,180px) minmax(220px,1fr) minmax(120px,180px);gap:8px 10px}}
@media(max-width:620px){body:not(.pos-agent-interface) .titlebar{grid-template-columns:92px minmax(0,1fr) 62px;grid-template-rows:auto auto auto}body:not(.pos-agent-interface) .titlebar .sheet-filters{grid-row:3}body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-controls{grid-template-columns:minmax(0,1fr)}}

/* Barre de logo mauve, lisible et sans contenu masque. */
body:not(.pos-agent-interface) .titlebar{isolation:isolate;overflow:visible!important;color:#fff;background:linear-gradient(115deg,#351047 0%,#552078 42%,#7030a0 72%,#43145f 100%)!important;box-shadow:inset 0 -1px rgb(255 255 255 / 18%),0 7px 20px rgb(39 6 56 / 16%)}
body:not(.pos-agent-interface) .titlebar::after{z-index:0;background:linear-gradient(105deg,transparent 0%,rgb(255 255 255 / 7%) 48%,rgb(25 3 37 / 16%) 100%)}
body:not(.pos-agent-interface) .titlebar::before{z-index:0;background:rgb(255 255 255 / 5%)}
body:not(.pos-agent-interface) .titlebar .brand-logo,body:not(.pos-agent-interface) .titlebar .institution-identity,body:not(.pos-agent-interface) .titlebar .user-box,body:not(.pos-agent-interface) .titlebar .sheet-filters{z-index:2}
body:not(.pos-agent-interface) .titlebar .brand-logo{box-sizing:border-box;padding:5px 9px;border:1px solid rgb(255 255 255 / 28%);border-radius:14px;background:rgb(255 255 255 / 90%);object-fit:contain}
body:not(.pos-agent-interface) .titlebar .institution-identity>b{overflow:visible;color:#fff!important;text-shadow:0 2px 4px rgb(24 2 35 / 42%);text-overflow:clip;white-space:normal}
body:not(.pos-agent-interface) .titlebar .currency-badges,body:not(.pos-agent-interface) .titlebar .agent-balance-badges{max-width:100%;overflow:visible}
body:not(.pos-agent-interface) .titlebar .currency-badges>span,body:not(.pos-agent-interface) .titlebar .agent-balance-badges span{overflow:visible;border:1px solid rgb(255 255 255 / 24%);background:rgb(255 255 255 / 15%)!important;color:#fff!important;text-overflow:clip;white-space:normal;text-shadow:0 1px 2px rgb(25 3 37 / 45%)}
body:not(.pos-agent-interface) .titlebar .user-box,body:not(.pos-agent-interface) .titlebar .user-box #currentUser{color:#fff!important}
body:not(.pos-agent-interface) .titlebar .user-box #currentUser{overflow:visible;max-width:100%;white-space:normal}

/* Filtre effet verre mauve clair : transparence et controles toujours nets. */
body:not(.pos-agent-interface) .titlebar .sheet-filters{border:1px solid rgb(255 255 255 / 48%)!important;background:linear-gradient(120deg,rgb(250 241 253 / 78%),rgb(225 195 239 / 66%))!important;box-shadow:inset 0 1px rgb(255 255 255 / 65%),0 9px 24px rgb(25 3 37 / 18%)!important;-webkit-backdrop-filter:blur(10px) saturate(120%)!important;backdrop-filter:blur(10px) saturate(120%)!important;color:#351047!important}
body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-title,body:not(.pos-agent-interface) .titlebar .sheet-filters label{color:#43145f!important;text-shadow:0 1px rgb(255 255 255 / 65%)}
body:not(.pos-agent-interface) .titlebar .sheet-filters input,body:not(.pos-agent-interface) .titlebar .sheet-filters select{border-color:rgb(112 48 160 / 42%)!important;background:rgb(255 255 255 / 88%)!important;color:#2e1738!important}
@media(max-width:620px){body:not(.pos-agent-interface) .titlebar{padding-inline:6px}body:not(.pos-agent-interface) .titlebar .brand-logo{padding:3px;border-radius:9px}body:not(.pos-agent-interface) .titlebar .sheet-filters{padding:9px!important}}

/* Glassmorphism moderne pour la zone de filtres. */
body:not(.pos-agent-interface) .titlebar .sheet-filters{
  position:relative;
  overflow:visible!important;
  border:1px solid rgb(255 255 255 / 38%)!important;
  background:linear-gradient(125deg,rgb(255 255 255 / 20%),rgb(255 255 255 / 8%))!important;
  box-shadow:inset 0 1px 0 rgb(255 255 255 / 42%),inset 0 -1px 0 rgb(255 255 255 / 10%),0 14px 35px rgb(20 2 31 / 24%)!important;
  -webkit-backdrop-filter:blur(22px) saturate(145%)!important;
  backdrop-filter:blur(22px) saturate(145%)!important;
}
body:not(.pos-agent-interface) .titlebar .sheet-filters::before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(105deg,rgb(255 255 255 / 18%),transparent 45%,rgb(206 151 231 / 12%));pointer-events:none}
body:not(.pos-agent-interface) .titlebar .sheet-filters::after{content:"";position:absolute;top:-70px;left:8%;width:220px;height:120px;border-radius:50%;background:rgb(255 255 255 / 16%);filter:blur(28px);pointer-events:none}
body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-title,body:not(.pos-agent-interface) .titlebar .sheet-filters label{position:relative;z-index:1;color:#fff!important;text-shadow:0 1px 3px rgb(31 4 45 / 62%)}
body:not(.pos-agent-interface) .titlebar .sheet-filters input,body:not(.pos-agent-interface) .titlebar .sheet-filters select{position:relative;z-index:1;border:1px solid rgb(255 255 255 / 42%)!important;background:rgb(255 255 255 / 19%)!important;box-shadow:inset 0 1px rgb(255 255 255 / 22%);color:#fff!important;text-shadow:0 1px 2px rgb(31 4 45 / 45%)}
body:not(.pos-agent-interface) .titlebar .sheet-filters input::placeholder{color:rgb(255 255 255 / 76%)!important;text-shadow:none}
body:not(.pos-agent-interface) .titlebar .sheet-filters input:focus,body:not(.pos-agent-interface) .titlebar .sheet-filters select:focus{border-color:rgb(255 255 255 / 78%)!important;background:rgb(255 255 255 / 27%)!important;box-shadow:0 0 0 3px rgb(255 255 255 / 13%),inset 0 1px rgb(255 255 255 / 28%)!important}
body:not(.pos-agent-interface) .titlebar .sheet-filters select option{background:#552078;color:#fff}
body:not(.pos-agent-interface) .titlebar .sheet-filters .filter-controls>button{position:relative;z-index:1;border:1px solid rgb(255 255 255 / 30%)!important;background:linear-gradient(135deg,rgb(126 52 165 / 82%),rgb(55 14 77 / 88%))!important;box-shadow:0 6px 14px rgb(27 3 40 / 23%),inset 0 1px rgb(255 255 255 / 22%)!important}

/* Support du logo entierement arrondi. */
body:not(.pos-agent-interface) .titlebar .brand-logo{border-color:rgb(235 207 247 / 72%)!important;border-radius:999px!important;background:linear-gradient(135deg,rgb(238 216 248 / 94%),rgb(211 174 229 / 88%))!important;box-shadow:inset 0 1px rgb(255 255 255 / 65%),0 7px 18px rgb(31 4 45 / 20%)}
@media(max-width:620px){body:not(.pos-agent-interface) .titlebar .brand-logo{border-radius:999px!important}}

/* Administration habillee comme une feuille de calcul CREDIT. */
.plus-sheet{padding:18px!important;background-color:#f6edf9!important;background-image:linear-gradient(rgb(255 255 255 / 38%) 1px,transparent 1px),linear-gradient(90deg,rgb(255 255 255 / 38%) 1px,transparent 1px)!important;background-size:32px 32px!important}
.plus-sheet .reference-panel{overflow:hidden;border:1px solid #7030a0!important;border-radius:14px!important;background:#fff!important;box-shadow:0 8px 22px rgb(50 16 68 / 12%)!important}
.plus-sheet .reference-panel>h1{margin:0!important;padding:10px 16px!important;border:0!important;border-bottom:2px solid #270638!important;border-radius:0!important;background:#7030a0!important;color:#fff!important;text-align:center;font-family:Georgia,"Times New Roman",serif!important;font-size:22px!important;letter-spacing:.035em!important;box-shadow:none!important}
.plus-sheet .administration-nature-groups{gap:14px!important;padding:14px!important;background:#fff}
.plus-sheet .administration-nature{overflow:hidden;border:1px solid #242124!important;border-left:5px solid var(--admin-color,#7030a0)!important;border-radius:10px!important;background:#fff!important;box-shadow:none!important}
.plus-sheet .administration-nature>header{border-bottom:1px solid #000!important;background:#171717!important;color:#fff!important}
.plus-sheet .administration-nature>header h2,.plus-sheet .administration-nature>header p{color:#fff!important}
.plus-sheet .administration-nature>header>span{border:1px solid rgb(255 255 255 / 38%);background:#7030a0!important;color:#fff!important}
.plus-sheet .administration-nature-content{background:#fff!important}
.plus-sheet .plus-section-button,.plus-sheet .open-agent-form{border:1px solid #050505!important;border-left:5px solid #7030a0!important;border-radius:4px!important;background:#171717!important;color:#fff!important;box-shadow:none!important;text-align:left}
.plus-sheet .plus-section-button:hover,.plus-sheet .open-agent-form:hover,.plus-sheet .plus-section-button[aria-expanded="true"]{background:#2b0b3b!important}
.plus-sheet .plus-section-button>span,.plus-sheet .open-agent-form>span{color:#fff!important}
.plus-sheet .admin-block,.plus-sheet .institution-settings,.plus-sheet .reference-forms form,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration{border:1px solid #2b2b2b!important;border-radius:4px!important;background:#fff!important;box-shadow:none!important}
.plus-sheet .admin-block h2,.plus-sheet .admin-block h3,.plus-sheet .institution-settings h2,.plus-sheet .reference-forms h2,.plus-sheet .reference-list h2,.plus-sheet .currency-management>h2,.plus-sheet .user-management>h2,.plus-sheet .parameter-management>h2,.plus-sheet .additional-parameters>h2,.plus-sheet .remaining-administration>h2{margin-top:0!important;padding:8px 10px!important;border-bottom:2px solid #7030a0!important;background:#171717!important;color:#fff!important;text-align:center!important;font-family:Georgia,"Times New Roman",serif!important}
.plus-sheet input,.plus-sheet select,.plus-sheet textarea{border:1px solid #bcaec3!important;border-radius:2px!important;background:#fff!important;color:#24162b!important;box-shadow:none!important}
.plus-sheet input:focus,.plus-sheet select:focus,.plus-sheet textarea:focus{border-color:#7030a0!important;outline:2px solid rgb(112 48 160 / 14%)!important}
.plus-sheet table{width:100%;border-collapse:collapse!important;border:1px solid #171717!important;background:#fff!important}
.plus-sheet th{padding:8px!important;border:1px solid #3b3b3b!important;background:#171717!important;color:#fff!important;text-align:center!important;font-family:Georgia,"Times New Roman",serif!important}
.plus-sheet td{padding:8px!important;border:1px solid #c8c1cb!important;background:#fff!important;color:#25172c!important}
.plus-sheet tbody tr:nth-child(even) td{background:#f1e3f6!important}
.plus-sheet tbody tr:hover td{background:#e6d1ef!important}
.plus-sheet form{border-radius:3px!important}
.plus-sheet form>button,.plus-sheet td button{border-radius:3px!important;background:#7030a0!important;color:#fff!important;box-shadow:none!important}
.plus-sheet form>button.danger,.plus-sheet td button.danger,.plus-sheet td .delete-user,.plus-sheet td .delete-parameter{background:#c62828!important}
@media(max-width:700px){.plus-sheet{padding:7px!important}.plus-sheet .administration-nature-groups{padding:7px!important}.plus-sheet .reference-panel>h1{font-size:18px!important}.plus-sheet th,.plus-sheet td{padding:6px!important}}

/* Structure Excel stricte : suppression de l'apparence en cartes. */
.plus-sheet{padding:8px!important;font-family:Calibri,"Segoe UI",sans-serif!important}
.plus-sheet .reference-panel{border:1px solid #111!important;border-radius:0!important;box-shadow:none!important}
.plus-sheet .reference-panel>h1{height:34px;box-sizing:border-box;padding:4px 10px!important;border-bottom:1px solid #111!important;font-size:20px!important;line-height:25px}
.plus-sheet .administration-nature-groups{display:block!important;margin:0!important;padding:0!important}
.plus-sheet .administration-nature{margin:0!important;border:0!important;border-bottom:1px solid #111!important;border-left:0!important;border-radius:0!important}
.plus-sheet .administration-nature>header{min-height:34px!important;padding:5px 12px!important;border:0!important;border-bottom:1px solid #111!important;border-radius:0!important;background:#171717!important}
.plus-sheet .administration-nature>header>span{display:none!important}
.plus-sheet .administration-nature>header>div{width:100%;text-align:center}
.plus-sheet .administration-nature>header h2{font-family:Georgia,"Times New Roman",serif!important;font-size:15px!important;line-height:18px}
.plus-sheet .administration-nature>header p{margin:1px 0 0!important;font-size:10px!important;line-height:12px!important}
.plus-sheet .administration-nature>header[role="button"]{padding-right:36px!important}
.plus-sheet .administration-nature>header[role="button"]::after{right:12px;font-size:18px}
.plus-sheet .administration-nature-content{display:block!important;padding:0!important;border-top:5px solid #7030a0!important;border-radius:0!important;background:#fff!important}
.plus-sheet .administration-nature-content>.plus-collapsible{margin:0!important}
.plus-sheet .plus-collapsible{margin:0!important;border:0!important;border-radius:0!important}
.plus-sheet .plus-section-button,.plus-sheet .open-agent-form{display:flex!important;width:100%!important;height:34px!important;min-height:34px!important;margin:0!important;padding:4px 10px!important;border:0!important;border-bottom:1px solid #575057!important;border-left:0!important;border-radius:0!important;background:#171717!important;font-family:Georgia,"Times New Roman",serif!important;font-size:12px!important;line-height:25px!important;text-align:left!important}
.plus-sheet .plus-section-button>span{flex:0 0 20px!important;height:20px!important;border-radius:0!important;background:#7030a0!important;font-family:Arial,sans-serif!important;font-size:14px!important;line-height:20px!important}
.plus-sheet .plus-collapsible>:not(.plus-section-button),.plus-sheet .open-agent-form+*{margin:0!important;border:0!important;border-bottom:2px solid #7030a0!important;border-radius:0!important;box-shadow:none!important}
.plus-sheet .admin-block,.plus-sheet .institution-settings,.plus-sheet .reference-forms form,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration{margin:0!important;padding:10px!important;border:0!important;border-bottom:2px solid #7030a0!important;border-radius:0!important}
.plus-sheet .admin-block h2,.plus-sheet .admin-block h3,.plus-sheet .institution-settings h2,.plus-sheet .reference-forms h2,.plus-sheet .reference-list h2,.plus-sheet .currency-management>h2,.plus-sheet .user-management>h2,.plus-sheet .parameter-management>h2,.plus-sheet .additional-parameters>h2,.plus-sheet .remaining-administration>h2{margin:-10px -10px 9px!important;padding:5px 8px!important;border:0!important;border-bottom:1px solid #111!important;border-radius:0!important;background:#7030a0!important;font-size:13px!important;line-height:20px!important}
.plus-sheet form{margin:0!important;padding:8px!important;border:1px solid #b9b4bb!important;border-radius:0!important;background:#fff!important;box-shadow:none!important}
.plus-sheet input,.plus-sheet select,.plus-sheet textarea,.plus-sheet button{border-radius:0!important}
.plus-sheet input,.plus-sheet select,.plus-sheet textarea{min-height:32px!important;height:auto;border:1px solid #8d888f!important}
.plus-sheet .reference-forms,.plus-sheet .currency-forms,.plus-sheet .currency-history{gap:0!important;margin:0!important}
.plus-sheet table{border:1px solid #111!important;border-radius:0!important}
.plus-sheet th{height:30px;padding:4px 7px!important;border-color:#555!important;background:#171717!important;font-size:11px!important}
.plus-sheet td{height:29px;padding:4px 7px!important;border-color:#aaa!important}
.plus-sheet form>button,.plus-sheet td button{min-height:30px!important;height:30px!important;padding:3px 10px!important;border:1px solid #51206c!important;border-radius:0!important}
@media(max-width:700px){.plus-sheet{padding:2px!important}.plus-sheet .administration-nature>header p{display:none}.plus-sheet .reference-panel>h1{height:31px;font-size:16px!important;line-height:22px}.plus-sheet .plus-section-button,.plus-sheet .open-agent-form{font-size:10px!important}}

/* Administration large sans perdre l'adaptation aux petits ecrans. */
.plus-sheet{width:100%!important;max-width:100%!important;padding:10px!important}
.plus-sheet .reference-panel{width:calc(100vw - 48px)!important;max-width:2000px!important;min-width:0!important;margin-inline:auto!important}
.plus-sheet .administration-nature-content,.plus-sheet .plus-collapsible,.plus-sheet .admin-block,.plus-sheet form,.plus-sheet table{box-sizing:border-box;max-width:100%}
.plus-sheet .advanced-settings-form,.plus-sheet .reference-forms{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important}
@media(max-width:800px){.plus-sheet{padding:5px!important}.plus-sheet .reference-panel{width:calc(100vw - 20px)!important}.plus-sheet .advanced-settings-form,.plus-sheet .reference-forms{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:480px){.plus-sheet{padding:2px!important}.plus-sheet .reference-panel{width:calc(100vw - 8px)!important}}

/* Tous les contours de la page Administration sont mauves. */
.plus-sheet .reference-panel,.plus-sheet .administration-nature,.plus-sheet .administration-nature>header,.plus-sheet .plus-collapsible,.plus-sheet .plus-section-button,.plus-sheet .open-agent-form,.plus-sheet .admin-block,.plus-sheet .institution-settings,.plus-sheet .reference-forms form,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration,.plus-sheet form,.plus-sheet fieldset,.plus-sheet table,.plus-sheet th,.plus-sheet td,.plus-sheet input,.plus-sheet select,.plus-sheet textarea{border-color:#7030a0!important}
.plus-sheet .administration-nature-content,.plus-sheet .plus-collapsible>:not(.plus-section-button),.plus-sheet .admin-block,.plus-sheet .institution-settings,.plus-sheet .reference-list,.plus-sheet .currency-management,.plus-sheet .user-management,.plus-sheet .parameter-management,.plus-sheet .additional-parameters,.plus-sheet .remaining-administration{border-bottom-color:#7030a0!important}
.plus-sheet tbody tr td{box-shadow:inset 0 0 0 .25px rgb(112 48 160 / 30%)}

/* Bandeau principal Administration plus haut avec quatre coins arrondis. */
.plus-sheet .reference-panel>h1{display:flex;align-items:center;justify-content:center;width:calc(100% - 16px);height:54px;margin:8px!important;padding:8px 16px!important;border:1px solid #7030a0!important;border-radius:13px!important;line-height:1.15!important}
@media(max-width:700px){.plus-sheet .reference-panel>h1{width:calc(100% - 10px);height:46px;margin:5px!important;border-radius:10px!important;font-size:16px!important}}

/* Largeur Administration : 80 % sur grand ecran, fluide sur ecran etroit. */
.plus-sheet .reference-panel{width:80%!important;max-width:2000px!important;margin-inline:auto!important}
@media(max-width:1100px){.plus-sheet .reference-panel{width:92%!important}}
@media(max-width:800px){.plus-sheet .reference-panel{width:calc(100% - 12px)!important}}
@media(max-width:480px){.plus-sheet .reference-panel{width:100%!important}}

/* Meme emprise horizontale que les contenus du Tableau de bord. */
.plus-sheet{box-sizing:border-box!important;width:100%!important;padding:18px 24px!important}
.plus-sheet .reference-panel{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important}
@media(max-width:760px){.plus-sheet{padding:10px!important}.plus-sheet .reference-panel{width:100%!important}}

/* Repere des retraits provenant de la page POS. */
.pos-withdrawal-badge{display:block;width:max-content;margin:3px auto 0;padding:2px 8px;border:1px solid #8f58ad;border-radius:10px;background:#7030a0;color:#fff;font-size:9px;font-weight:900;line-height:14px;letter-spacing:.06em}

/* Les quatre coins de la barre de logo restent arrondis sur tous les écrans. */
.excel-app .titlebar,.pos-agent-interface .titlebar{border-radius:18px!important;background-clip:padding-box!important}
@media(max-width:620px){.excel-app .titlebar,.pos-agent-interface .titlebar{border-radius:13px!important}}

/* Validation du contrôle : ligne indépendante, largeur stable et libellé non coupé. */
#agentCashControlForm>button[type="submit"]{grid-column:1/-1;justify-self:center;width:min(360px,100%);min-height:44px;padding:9px 22px;line-height:1.2;white-space:nowrap}
@media(max-width:480px){#agentCashControlForm>button[type="submit"]{width:100%;white-space:normal}}

.agent-cash-control .cash-control-kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.cash-control-kpis span.success{border-color:#18875c;background:#edf9f3}.cash-control-kpis span.neutral{border-color:#6f5b79;background:#f3eef5}.cash-control-kpis span.remitted{border-color:#7030a0;background:#f3e8f8;color:#552078}.cash-control-register-guide{display:grid;grid-template-columns:auto repeat(4,minmax(170px,1fr));gap:8px;align-items:center;margin:12px 0;padding:11px;border:1px solid #cba9da;border-radius:12px;background:#f8f1fb;color:#4e2362;font-size:10px}.cash-control-register-guide span{padding:7px 9px;border-radius:8px;background:#fff}.cash-control-table td[data-after-remittance-value],.cash-control-table td[data-receiver-value]{background:#f8f1fb;color:#552078}.cash-control-table td[data-after-remittance-value] small,.cash-control-table td[data-receiver-value] small{display:block;margin-top:3px}@media(max-width:900px){.cash-control-register-guide{grid-template-columns:1fr 1fr}.cash-control-register-guide>b{grid-column:1/-1}}@media(max-width:520px){.cash-control-register-guide{grid-template-columns:1fr}}
/* État actif commun des modes de saisie guidée. */
.toggle-encoding-mode.active,
.repayment-mode-button.active,
#loadPosDeposits.active {
  background: linear-gradient(135deg, #21a366, #087f4c) !important;
  color: #fff !important;
  box-shadow: 0 4px 12px rgb(8 127 76 / 30%) !important;
}
.account-action-buttons{display:flex;align-items:center;justify-content:center;gap:7px}.user-box #changePasswordBtn{display:grid;place-items:center;width:38px;height:38px;padding:0;border-radius:50%;background:#7030a0;color:#fff;font-size:17px;box-shadow:0 5px 13px rgb(54 9 76 / 35%)}.user-box #changePasswordBtn:hover{background:#51206f}.password-dialog-overlay{position:fixed;inset:0;z-index:61000;display:grid;place-items:center;padding:16px;background:rgb(28 3 40 / 65%)}.password-dialog{display:grid;gap:13px;width:min(440px,100%);box-sizing:border-box;overflow:hidden;padding:0 22px 22px;border:1px solid #d6b9e3;border-radius:22px;background:#fff;box-shadow:0 25px 70px rgb(26 3 38 / 45%);color:#401456}.password-dialog>header{margin:0 -22px 4px;padding:20px 22px;background:linear-gradient(120deg,#351047,#7d32a5);color:#fff}.password-dialog header small{font-weight:900;letter-spacing:.08em;opacity:.8}.password-dialog h2{margin:4px 0 5px;font-size:20px}.password-dialog header p{margin:0;font-size:11px;opacity:.82}.password-dialog>label{display:grid;gap:6px;font-size:12px;font-weight:900}.password-dialog label input{box-sizing:border-box;width:100%;height:43px;padding:0 12px;border:1px solid #cba9da;border-radius:10px;background:#fff;color:#35104c;font-size:15px}.password-dialog label input:focus{border-color:#7030a0;box-shadow:0 0 0 3px rgb(112 48 160 / 13%);outline:0}.password-dialog label small{color:#80698b;font-size:9px}.password-dialog-error{min-height:17px;margin:0;color:#b22134;font-size:11px;font-weight:800}.password-dialog footer{display:grid;grid-template-columns:1fr 1.6fr;gap:9px}.password-dialog button{min-height:42px;border:0;border-radius:9px;background:#7030a0;color:#fff;font-weight:900;cursor:pointer}.password-dialog button.secondary{background:#eee3f3;color:#552078}.password-dialog button:disabled{opacity:.55}@media(max-width:620px){.user-box #changePasswordBtn{width:30px;height:30px;font-size:14px}.password-dialog footer{grid-template-columns:1fr}.password-dialog footer .secondary{order:2}}
.clients-sheet.clients-as-term{display:block!important;box-sizing:border-box!important;width:100%!important;min-width:0!important;padding:18px!important;background:linear-gradient(135deg,#fbf7fd,#f1e5f8)!important}.client-term-hero{box-sizing:border-box;width:100%;margin-bottom:16px}.client-term-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;width:100%;min-width:0}.clients-as-term .client-card,.clients-as-term .client-list-card{box-sizing:border-box!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:20px!important;border:1px solid #dfc8eb!important;border-radius:20px!important;background:#fff!important;box-shadow:0 12px 30px rgb(75 23 108 / 10%)!important}.clients-as-term .client-form-title{margin:0 0 16px;color:#4b176c;font-size:20px}.clients-as-term .client-form-grid{padding:0!important}.clients-as-term .client-form-section{margin-bottom:14px;border-color:#dfc8eb;border-radius:14px;background:#fbf7fd}.clients-as-term .client-form-section legend{background:linear-gradient(135deg,#8244ad,#552078)}.clients-as-term .client-form-actions{padding:4px 0 0}.clients-as-term .client-form-actions button,.clients-as-term .client-actions button,.clients-as-term .history-head button{border-radius:9px;background:linear-gradient(135deg,#8244ad,#552078);color:#fff}.clients-as-term .client-form-actions .secondary,.clients-as-term .client-actions .secondary{background:#76647e}.clients-as-term .client-actions .danger{background:#c62828}.clients-as-term .client-list-head{margin:0 0 14px;padding:0;background:transparent;color:#4b176c}.clients-as-term .client-list-head h2{font-size:20px}.clients-as-term .client-list-head input{min-height:40px;border:1px solid #cdaadd;border-radius:10px;background:#fff}.clients-as-term .client-table-wrap{overflow:auto;border:1px solid #eadcf0;border-radius:12px}.clients-as-term .client-table th{background:#4b176c;color:#fff}.clients-as-term .client-table td{border-color:#eadcf0}.clients-as-term #clientHistory{margin:18px 0 0;border:1px solid #dfc8eb;border-radius:16px;background:#fbf7fd}@media(max-width:620px){.clients-sheet.clients-as-term{padding:8px!important}.client-term-hero{padding:16px 18px}.client-term-hero h1{font-size:24px}.client-term-hero .term-hero-mark{width:58px;height:58px;border-radius:16px}.clients-as-term .client-card,.clients-as-term .client-list-card{padding:12px!important;border-radius:15px!important}}
.message-bubble{position:relative;padding-right:25px}.message-delete-trigger{position:absolute;top:3px;right:4px;display:grid;place-items:center;width:20px;height:20px;padding:0;border:0;border-radius:50%;background:transparent;color:#755d80;font-size:15px;cursor:pointer;opacity:.35}.message-bubble:hover .message-delete-trigger,.message-delete-trigger:focus{background:rgb(112 48 160 / 12%);opacity:1}.message-bubble.message-deleted p{color:#806f87;font-style:italic}.message-delete-overlay{position:fixed;inset:0;z-index:60000;display:grid;place-items:center;padding:18px;background:rgb(28 3 40 / 60%)}.message-delete-overlay>section{display:grid;gap:9px;width:min(360px,100%);box-sizing:border-box;padding:22px;border:1px solid #d6b9e3;border-radius:18px;background:#fff;box-shadow:0 24px 60px rgb(30 5 42 / 35%);color:#42145a}.message-delete-overlay small{color:#7c37a5;font-weight:900}.message-delete-overlay h3{margin:0 0 6px}.message-delete-overlay button{min-height:41px;border:0;border-radius:9px;background:#7030a0;color:#fff;font-weight:900;cursor:pointer}.message-delete-overlay button.danger{background:#bb2435}.message-delete-overlay button.secondary{background:#eee3f3;color:#552078}.message-delete-overlay button:disabled{opacity:.55}
.clients-as-term .term-form-card #clientForm{display:block!important}

/* Le premier bandeau Administration reprend la carte d'en-tête de Clients. */
.plus-sheet .reference-panel>h1{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-height:116px!important;
  height:auto!important;
  margin:0 0 16px!important;
  padding:22px 120px 22px 28px!important;
  overflow:visible!important;
  border:0!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#351047,#7b35a5)!important;
  box-shadow:0 12px 30px rgb(75 23 108 / 18%)!important;
  color:#fff!important;
  font-family:Calibri,"Segoe UI",Arial,sans-serif!important;
  text-align:left!important;
  font-size:30px!important;
  font-weight:900!important;
  line-height:1.08!important;
  letter-spacing:.01em!important;
}
.plus-sheet .reference-panel>h1:has(>.page-signal-lights){z-index:120!important}
.plus-sheet .reference-panel>h1>.page-signal-lights{z-index:130!important}
.plus-sheet .reference-panel>h1>.page-signal-lights::after{z-index:140!important}
.plus-sheet .administration-nature-groups{position:relative;z-index:1}

/* Horloge modernisée sans modification de ses dimensions. */
.titlebar .analog-clock{
  border-color:#d7b7e6;
  background:
    radial-gradient(circle at 36% 27%,rgb(255 255 255 / 88%) 0 9%,transparent 24%),
    radial-gradient(circle,#fbf6fd 0 57%,#f0e1f6 58% 66%,#dfc4eb 67% 73%,#bd87d3 74% 77%,#ead6f2 78% 100%);
  box-shadow:0 9px 22px rgb(49 15 65 / 34%),0 2px 5px rgb(255 255 255 / 70%),inset 0 0 0 2px #f5ebf9,inset 0 0 15px rgb(156 94 184 / 17%);
}
.titlebar .analog-clock::before{
  inset:6px;
  background:repeating-conic-gradient(from -1deg,#9862b1 0 1.3deg,transparent 1.3deg 6deg);
  opacity:.66;
  mask:radial-gradient(circle,transparent 82%,#000 84%);
}
.titlebar .analog-clock span{
  color:#66327d;
  font-family:Arial,sans-serif;
  font-variant-numeric:tabular-nums;
  text-shadow:0 1px 0 #fff,0 0 4px rgb(151 92 178 / 16%);
}
.titlebar .analog-clock .hour-hand{
  border:1px solid #552078;
  background:linear-gradient(90deg,#552078,#a864c4,#552078);
  box-shadow:0 1px 3px rgb(26 3 38 / 42%);
}
.titlebar .analog-clock .minute-hand{
  border:1px solid #7030a0;
  background:linear-gradient(90deg,#7030a0,#c18ada,#7030a0);
  box-shadow:0 1px 3px rgb(26 3 38 / 38%);
}
.titlebar .analog-clock .second-hand{background:#dc2638;box-shadow:0 0 4px rgb(220 38 56 / 48%)}
.titlebar .analog-clock .clock-center{
  border:2px solid #fff;
  background:radial-gradient(circle at 38% 32%,#f3dfff 0 18%,#af71ca 22% 56%,#63307a 60% 100%);
  box-shadow:0 0 0 2px #b77dce,0 2px 5px rgb(59 19 76 / 40%);
}
.plus-sheet .reference-panel>h1::before{
  content:"ADMINISTRATION";
  display:block;
  margin-bottom:7px;
  color:#eadcf2;
  font-family:Arial,sans-serif;
  font-size:11px;
  font-weight:900;
  line-height:1;
  letter-spacing:.11em;
}
.plus-sheet .reference-panel>h1::after{
  content:"ADM";
  position:absolute;
  top:50%;
  right:28px;
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  transform:translateY(-50%);
  border:1px solid rgb(255 255 255 / 42%);
  border-radius:20px;
  background:rgb(255 255 255 / 12%);
  color:#fff;
  font-family:Arial,sans-serif;
  font-size:19px;
  font-weight:900;
  letter-spacing:.06em;
}
@media(max-width:620px){
  .plus-sheet .reference-panel>h1{
    min-height:92px!important;
    margin-bottom:12px!important;
    padding:16px 82px 16px 18px!important;
    border-radius:16px!important;
    font-size:21px!important;
  }
  .plus-sheet .reference-panel>h1::before{margin-bottom:5px;font-size:9px}
.plus-sheet .reference-panel>h1::after{right:17px;width:52px;height:52px;border-radius:15px;font-size:14px}
}

/* Bandeau d'identité commun à toutes les pages de l'application. */
#sheet>.universal-page-hero{
  position:relative;
  box-sizing:border-box;
  width:calc(100% - 36px);
  max-width:none;
  min-height:116px;
  margin:4px auto 16px;
  flex:0 0 auto;
}
#sheet>.universal-page-hero.pos-deposit-page-hero{background:linear-gradient(110deg,#351047 0%,#612383 20%,#326b68 36%,#0b9759 50%,#25aa6d 58%,#713095 80%,#351047 100%)!important}
#sheet>.universal-page-hero.pos-withdrawal-page-hero{background:linear-gradient(110deg,#351047 0%,#652381 20%,#8e294f 38%,#c52e4f 52%,#a82a55 62%,#713095 80%,#351047 100%)!important}
.pos-page-hero-center{position:absolute;z-index:2;top:50%;left:50%;display:flex;align-items:center;gap:13px;min-width:390px;transform:translate(-50%,-50%);color:#fff}
.pos-page-hero-icon{display:grid;width:48px;height:48px;place-items:center;flex:0 0 48px;border:1px solid rgb(255 255 255 / 45%);border-radius:14px;background:rgb(255 255 255 / 14%);font-size:27px;font-weight:900}
.pos-page-hero-center>span:nth-child(2){display:grid;gap:3px}.pos-page-hero-center small{color:rgb(255 255 255 / 78%);font-size:10px;font-weight:800;letter-spacing:.16em}.pos-page-hero-center strong{font-size:20px;letter-spacing:.03em}.pos-page-hero-center>b{margin-left:auto;padding:6px 10px;border-radius:999px;background:rgb(255 255 255 / 15%);font-size:9px;white-space:nowrap}
.pos-workspace .pos-phone>.pos-app-header{display:none!important}
.pos-deposit .pos-confirm{background:linear-gradient(105deg,#087a4c,#20aa69)!important;color:#fff!important}
.term-hero{position:relative}
.credit-followup-report .evaluation-official-header{grid-template-columns:96px minmax(0,1fr) auto}.credit-followup-report .evaluation-ratio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.credit-followup-report .evaluation-seal{background:#fff}.credit-followup-dialog .evaluation-fields fieldset:last-child{grid-column:span 1}@media(max-width:800px){.credit-followup-report .evaluation-official-header{grid-template-columns:70px minmax(0,1fr)}.credit-followup-report .evaluation-status{grid-column:1/-1}.credit-followup-report .evaluation-ratio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.credit-followup-report .evaluation-ratio-grid{grid-template-columns:1fr}}
.page-signal-lights{position:absolute;z-index:5;top:18px;left:50%;display:flex;align-items:center;gap:11px;padding:8px 13px;border:1px solid rgb(255 255 255 / 38%);border-radius:999px;background:rgb(30 7 42 / 24%);transform:translateX(-50%)}
.signal-light{display:block;width:15px;height:15px;border-radius:50%;border:1px solid rgb(255 255 255 / 55%)}
.signal-green{background:#19b867;box-shadow:0 0 6px rgb(25 184 103 / 65%)}.signal-purple{background:#b272d0;box-shadow:0 0 5px rgb(178 114 208 / 55%)}.signal-red{background:#df3544;box-shadow:0 0 6px rgb(223 53 68 / 65%)}
.page-signal-lights[data-dominant="positive"] .signal-green{background:#eafff3;border-color:#fff;box-shadow:0 0 3px 2px #fff,0 0 9px 4px #35f58e,0 0 19px 8px rgb(24 191 105 / 82%),0 0 32px 13px rgb(53 245 142 / 55%);transform:scale(1.12)}
.page-signal-lights[data-dominant="negative"] .signal-red{background:#fff0f1;border-color:#fff;box-shadow:0 0 3px 2px #fff,0 0 9px 4px #ff4c58,0 0 19px 8px rgb(224 24 45 / 82%),0 0 32px 13px rgb(255 76 88 / 55%);transform:scale(1.12)}
.page-signal-lights[data-dominant="neutral"] .signal-purple{background:#fbf0ff;border-color:#fff;box-shadow:0 0 3px 2px #fff,0 0 9px 4px #d39bea,0 0 19px 8px rgb(154 76 189 / 82%),0 0 32px 13px rgb(211 155 234 / 55%);transform:scale(1.12)}
.page-signal-lights::after{position:absolute;z-index:50;top:calc(100% + 8px);left:50%;display:none;width:520px;max-width:min(520px,86vw);padding:15px 17px;border:1px solid #c99cdd;border-radius:11px;background:#f1ddf8;color:#49145f;box-shadow:0 8px 20px rgb(70 22 95 / 20%);font-size:12px;font-weight:700;line-height:1.55;text-align:left;white-space:pre-line;content:attr(data-signal-tooltip);transform:translateX(-50%)}
.page-signal-lights:hover::after,.page-signal-lights:focus-within::after{display:block}
@media(max-width:800px){.page-signal-lights{top:12px;left:auto;right:76px;gap:7px;padding:6px 9px;transform:none}.signal-light{width:12px;height:12px}}
@media(max-width:800px){.pos-page-hero-center{position:relative;top:auto;left:auto;min-width:0;margin:12px 0 0;transform:none}.pos-page-hero-center>b{display:none}#sheet>.universal-page-hero.pos-deposit-page-hero,#sheet>.universal-page-hero.pos-withdrawal-page-hero{padding-bottom:16px!important}}
main#sheet{padding-top:6px}

/* Administration : aucun cadre global autour de l'ensemble des contenus. */
.plus-sheet .reference-panel{
  border:0!important;
  box-shadow:none!important;
}

/* L'ancien bandeau étroit de titre est remplacé par les nouveaux bandeaux de page. */
.excel-app>.formula{display:none!important}
/* Après sa suppression, la grille ne conserve que : en-tête, contenu et menu. */
.excel-app,
body:not(.pos-agent-interface) .excel-app,
.pos-agent-interface .excel-app{
  grid-template-rows:auto minmax(0,1fr) 42px!important;
}
nav#tabs{
  box-sizing:border-box!important;
  min-height:42px!important;
  height:42px!important;
  align-self:stretch!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
.page-hero-actions{
  position:absolute;
  top:50%;
  right:124px;
  z-index:3;
  display:flex;
  align-items:center;
  gap:10px;
  transform:translateY(-50%);
  pointer-events:auto!important;
}
.term-hero:has(>.page-hero-actions){position:relative}
.page-hero-actions .export-pdf-button,
.page-hero-actions .export-excel-button{
  position:static!important;
  display:block!important;
  min-width:142px!important;
  width:auto!important;
  height:38px!important;
  margin:0!important;
  padding:0 17px!important;
  border-radius:10px!important;
  color:#fff!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
  touch-action:manipulation;
}
.plus-sheet .reference-panel>h1>.page-hero-actions{right:124px;font-family:Arial,sans-serif;letter-spacing:normal}
.term-hero .page-hero-currency-totals{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:6px;
  max-width:100%;
  margin-top:10px;
  color:#fff;
  font-family:Arial,sans-serif;
}
.term-hero .page-hero-currency-totals strong{
  font-size:9px;
  letter-spacing:.08em;
}
.term-hero .page-hero-currency-totals span{
  padding:5px 9px;
  border:1px solid rgb(255 255 255 / 28%);
  border-radius:7px;
  background:rgb(255 255 255 / 14%);
  color:#fff;
  font-size:10px;
  line-height:1.25;
}
.term-hero .page-hero-currency-totals span b{color:#fff}
.term-hero:has(>.page-hero-actions)>div:first-child{max-width:calc(100% - 500px)}
.credit-guidance-ticker{
  position:absolute;
  top:50%;
  left:31%;
  right:485px;
  z-index:2;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:10px;
  height:42px;
  overflow:hidden;
  padding:0 10px;
  transform:translateY(-50%);
  border:1px solid rgb(255 255 255 / 28%);
  border-radius:12px;
  background:rgb(25 3 38 / 30%);
  box-shadow:inset 0 1px rgb(255 255 255 / 12%);
  color:#fff;
  font-family:Arial,sans-serif;
}
.credit-guidance-ticker>b{position:relative;z-index:2;padding:6px 8px;border-radius:7px;background:#fff;color:#552078;font-size:8px;letter-spacing:.08em;white-space:nowrap}
.credit-guidance-window{min-width:0;overflow:hidden}
.credit-guidance-track{display:flex;width:max-content;min-width:max-content;will-change:transform;animation:credit-guidance-scroll 65s linear infinite!important}
.credit-guidance-track span{display:block;flex:0 0 auto;padding-right:90px;font-size:11px;font-weight:800;white-space:nowrap}
.credit-guidance-ticker:hover .credit-guidance-track{animation-play-state:paused!important}
@keyframes credit-guidance-scroll{0%{transform:translate3d(0,0,0)}100%{transform:translate3d(-50%,0,0)}}
@media(max-width:1500px){.credit-guidance-ticker{left:34%;right:455px}.credit-guidance-ticker>b{display:none}}
@media(max-width:1100px){
  #sheet>.universal-page-hero[data-page="credit"]{min-height:174px;padding-bottom:66px}
  #sheet>.universal-page-hero[data-page="credit"]>div:first-child{max-width:calc(100% - 110px)}
  .credit-guidance-ticker{top:auto;right:28px;bottom:58px;left:28px;height:38px;transform:none}
}
@media(max-width:700px){
  #sheet>.universal-page-hero:has(.page-hero-actions),
  .term-hero:has(>.page-hero-actions),
  .plus-sheet .reference-panel>h1:has(>.page-hero-actions){min-height:150px!important;padding-bottom:66px!important}
  .page-hero-actions,.plus-sheet .reference-panel>h1>.page-hero-actions{top:auto;right:16px;bottom:14px;left:16px;justify-content:flex-end;transform:none}
  .page-hero-actions .export-pdf-button,.page-hero-actions .export-excel-button{min-width:0!important;max-width:155px!important;height:36px!important;flex:1 1 125px;padding:0 9px!important;font-size:8px!important}
  .term-hero:has(>.page-hero-actions)>div:first-child{max-width:100%}
  .term-hero .page-hero-currency-totals{margin-top:7px;gap:4px}
  .term-hero .page-hero-currency-totals span{padding:4px 6px;font-size:8px}
  #sheet>.universal-page-hero[data-page="credit"]{min-height:210px!important;padding-bottom:64px!important}
  #sheet>.universal-page-hero[data-page="credit"]>div:first-child{max-width:100%;padding-right:48px}
  .credit-guidance-ticker{right:16px;bottom:58px;left:16px;height:36px;padding:0 7px}
  .credit-guidance-track span{font-size:9px}
}
#sheet>.universal-page-hero h1{overflow-wrap:anywhere}
#sheet>.universal-page-hero p{max-width:760px}
@media(max-width:760px){
  #sheet>.universal-page-hero{width:calc(100% - 20px);min-height:96px;margin:3px auto 12px;padding:16px 18px;border-radius:16px}
  #sheet>.universal-page-hero h1{font-size:23px}
  #sheet>.universal-page-hero p{font-size:11px}
  #sheet>.universal-page-hero .term-hero-mark{width:54px;height:54px;border-radius:15px;font-size:15px}
}
@media(max-width:430px){
  #sheet>.universal-page-hero{align-items:flex-start;padding-right:72px}
  #sheet>.universal-page-hero h1{font-size:19px}
  #sheet>.universal-page-hero p{margin-top:5px;line-height:1.3}
  #sheet>.universal-page-hero .term-hero-mark{position:absolute;top:16px;right:14px;width:44px;height:44px;border-radius:13px;font-size:12px}
}

/* Évaluation financière depuis le tableau de bord. */
#dashboardEvaluateButton{background:#7030a0!important;color:#fff!important;font-weight:900!important}
.dashboard-evaluation-overlay,.dashboard-evaluation-report-overlay{position:fixed;inset:0;z-index:65000;display:grid;place-items:center;box-sizing:border-box;padding:18px;background:rgb(27 3 39 / 72%);backdrop-filter:blur(3px)}
.dashboard-evaluation-dialog{display:grid;width:min(900px,96vw);max-height:92vh;overflow:auto;box-sizing:border-box;border:1px solid #d7bbe4;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgb(24 2 35 / 48%);color:#351047}
.dashboard-evaluation-dialog>header{padding:24px 28px;background:linear-gradient(125deg,#351047,#7732a0 70%,#9b4abd);color:#fff}
.dashboard-evaluation-dialog>header small{font-weight:900;letter-spacing:.12em;opacity:.8}.dashboard-evaluation-dialog>header h2{margin:5px 0;font-size:27px}.dashboard-evaluation-dialog>header p{margin:0;line-height:1.45;opacity:.87}
.evaluation-types{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:20px 22px 8px}.evaluation-types label{position:relative;display:block;cursor:pointer}.evaluation-types input{position:absolute;opacity:0}.evaluation-types span{display:grid;gap:5px;min-height:88px;box-sizing:border-box;padding:15px;border:2px solid #eadcf1;border-radius:15px;background:#fbf7fd}.evaluation-types small{color:#795b87;line-height:1.35}.evaluation-types input:checked+span{border-color:#7c35a4;background:#f0e1f7;box-shadow:0 0 0 3px rgb(112 48 160 / 10%)}
.evaluation-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px 22px}.evaluation-fields fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;padding:13px;border:1px solid #dec5e9;border-radius:13px;background:#fcf9fd}.evaluation-fields fieldset[hidden]{display:none}.evaluation-fields legend{padding:0 6px;color:#7030a0;font-size:11px;font-weight:900}.evaluation-fields label{display:grid;gap:5px;min-width:0;font-size:11px;font-weight:800}.evaluation-fields input,.evaluation-fields select{width:100%;height:41px;box-sizing:border-box;padding:0 10px;border:1px solid #cda9dd;border-radius:9px;background:#fff;color:#351047}.evaluation-hint{margin:3px 22px 13px;padding:10px 12px;border-radius:10px;background:#f1e5f6;color:#6c4b7b;font-size:11px}.evaluation-hint.important{background:#fff2d9;color:#7f5100}.dashboard-evaluation-dialog>footer{display:flex;justify-content:flex-end;gap:9px;padding:0 22px 22px}.dashboard-evaluation-dialog button{min-height:42px;padding:0 18px;border:0;border-radius:10px;background:#7030a0;color:#fff;font-weight:900}.dashboard-evaluation-dialog button.secondary{background:#eee3f3;color:#552078}.dashboard-evaluation-dialog button:disabled{opacity:.55}
.dashboard-evaluation-report-overlay{place-items:start center;overflow:auto}.dashboard-evaluation-report{width:min(1180px,96vw);box-sizing:border-box;border-radius:20px;background:#fff;box-shadow:0 28px 90px rgb(24 2 35 / 55%);color:#291530;overflow:hidden}.dashboard-evaluation-report>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 30px;background:linear-gradient(125deg,#351047,#7030a0 72%,#9746b8);color:#fff}.dashboard-evaluation-report header small{font-weight:900;letter-spacing:.12em;opacity:.8}.dashboard-evaluation-report h1{margin:5px 0;font-size:28px}.dashboard-evaluation-report header p{margin:0}.evaluation-status{padding:10px 14px;border-radius:999px;background:#be8c31;font-size:11px;font-weight:900;white-space:nowrap}.evaluation-status.favorable{background:#148455}.evaluation-status.attention{background:#c62838}.evaluation-report-actions{display:flex;justify-content:flex-end;gap:8px;padding:12px 24px;background:#f3e9f7}.evaluation-report-actions button{min-height:37px;padding:0 14px;border:0;border-radius:8px;background:#7030a0;color:#fff;font-weight:900}.dashboard-evaluation-report>section{margin:16px 24px;border:1px solid #dec8e8;border-radius:13px;background:#fff;overflow:hidden}.dashboard-evaluation-report section>h2,.evaluation-findings article>h2{margin:0;padding:10px 13px;background:#552078;color:#fff;font-size:13px}.dashboard-evaluation-report section>p{margin:12px 15px;line-height:1.55}.evaluation-executive{background:#f9f3fc!important}.evaluation-table-wrap{overflow:auto}.dashboard-evaluation-report table{width:100%;border-collapse:collapse}.dashboard-evaluation-report th{padding:9px;border:1px solid #5d4568;background:#1b171d;color:#fff;font-size:10px}.dashboard-evaluation-report td{padding:9px;border:1px solid #d8cedc;font-size:11px}.dashboard-evaluation-report tbody tr:nth-child(even) td{background:#f6edf9}.dashboard-evaluation-report td.up{color:#087b4a;font-weight:900}.dashboard-evaluation-report td.down{color:#b21f34;font-weight:900}.evaluation-findings{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;border:0!important;background:transparent!important}.evaluation-findings article{overflow:hidden;border:1px solid #d8c3e2;border-radius:12px}.evaluation-findings article:first-child h2{background:#158253}.evaluation-findings article:last-child h2{background:#b92639}.evaluation-findings article p{margin:10px 13px;line-height:1.45}.evaluation-action-plan{min-width:820px}.dashboard-evaluation-report>footer{display:flex;justify-content:space-between;gap:20px;padding:18px 25px;background:#351047;color:#fff;font-size:10px}.dashboard-evaluation-report>footer p{max-width:700px;margin:0;line-height:1.4}
@media(max-width:700px){.dashboard-evaluation-overlay{padding:7px}.dashboard-evaluation-dialog{width:100%;max-height:96vh;border-radius:16px}.dashboard-evaluation-dialog>header{padding:18px}.dashboard-evaluation-dialog>header h2{font-size:21px}.evaluation-types{grid-template-columns:1fr;padding:12px}.evaluation-types span{min-height:0}.evaluation-fields{grid-template-columns:1fr;padding:10px 12px}.evaluation-fields fieldset{grid-template-columns:1fr}.evaluation-hint{margin:2px 12px 12px}.dashboard-evaluation-dialog>footer{padding:0 12px 14px}.dashboard-evaluation-report>header{align-items:flex-start;flex-direction:column;padding:18px}.dashboard-evaluation-report h1{font-size:21px}.evaluation-findings{grid-template-columns:1fr}.dashboard-evaluation-report>section{margin:10px}.dashboard-evaluation-report>footer{flex-direction:column}}

.evaluation-objective-choice{margin:10px 22px 0;padding:14px 16px;border:1px solid #cba9dd;border-radius:14px;background:#f3e9f8}.evaluation-objective-choice label{display:grid;gap:6px;font-weight:900;color:#4b1767}.evaluation-objective-choice select{min-height:42px;border:1px solid #9b60bc;border-radius:9px;background:#fff}.evaluation-objective-choice p{margin:7px 0 0;color:#755385}
.performance-objectives .admin-block{border:1px solid #7030a0}.objective-admin-header{padding:18px 20px;border-radius:12px;background:linear-gradient(110deg,#421255,#8738af);color:#fff}.objective-admin-header h2,.objective-admin-header p{margin:4px 0}.objective-admin-header small{font-weight:900;letter-spacing:1px}.performance-objectives form{display:grid;gap:14px;padding:18px}.performance-objectives fieldset{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;border:1px solid #d8bce6;border-radius:13px;padding:14px;background:#fcf9fd}.performance-objectives legend{padding:0 8px;color:#632283;font-weight:900}.performance-objectives label{display:grid;gap:5px;color:#4c2b59;font-weight:800}.performance-objectives input,.performance-objectives select,.performance-objectives textarea{box-sizing:border-box;width:100%;min-height:40px;border:1px solid #b67bd0;border-radius:8px;background:#fff;padding:8px;color:#351047}.performance-objectives textarea{min-height:72px}.objective-form-actions{display:flex;gap:10px}.objective-list-wrap{max-width:100%;overflow:auto;border:1px solid #b879d2;border-radius:12px}.objective-list-wrap table{width:100%;min-width:1050px;border-collapse:collapse}.objective-list-wrap th{background:#351047;color:#fff}.objective-list-wrap th,.objective-list-wrap td{padding:9px;border:1px solid #d6b9e2;text-align:left}.objective-list-wrap td small{display:block;color:#7a6284}.objective-list-wrap button{margin:2px;padding:7px 9px}.objective-list-wrap .danger{background:#b42435}.performance-objectives #performanceObjectiveList{padding:0 18px 20px}.objective-performance-report .objective-summary{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;margin-bottom:14px;padding:15px;border-left:7px solid #7030a0;border-radius:11px;background:#f3e9f8}.objective-summary div{display:grid;gap:3px}.objective-summary strong{font-size:30px}.objective-summary p{grid-column:1/-1;margin:0}.objective-summary.good{border-color:#069447;background:#e6f7ee}.objective-summary.medium{border-color:#a96a00;background:#fff4df}.objective-summary.bad{border-color:#c32638;background:#fff0f2}.objective-notes{margin-top:12px;padding:14px;border-radius:10px;background:#f1e5f7}.evaluation-cell small{display:block;line-height:1.35}.evaluation-table-wrap th small{display:block;margin-top:3px;font-size:10px;font-weight:500}
@media(max-width:1050px){.evaluation-types{grid-template-columns:repeat(2,1fr)}}
.credit-followup-dialog .evaluation-types{max-height:390px;overflow-y:auto;align-content:start;margin:10px 22px 0;padding:10px;border:1px solid #dec5e9;border-radius:16px;background:#fdfaff;scrollbar-color:#8a43ae #f1e5f6}.credit-followup-dialog .evaluation-types span{min-height:82px}.credit-report-number{display:inline-grid;place-items:center;width:24px;height:24px;margin-right:7px;border-radius:50%;background:#7030a0;color:#fff;font-style:normal;font-size:11px}.credit-report-count{display:inline-flex;margin-top:12px;padding:7px 12px;border:1px solid rgb(255 255 255 / 45%);border-radius:999px;background:rgb(255 255 255 / 14%);font-size:12px;letter-spacing:.08em}.credit-followup-dialog .evaluation-types::-webkit-scrollbar{width:10px}.credit-followup-dialog .evaluation-types::-webkit-scrollbar-thumb{border:2px solid #f1e5f6;border-radius:10px;background:#8a43ae}@media(max-width:700px){.credit-followup-dialog .evaluation-types{max-height:46vh;margin:8px 12px 0}.credit-followup-dialog .evaluation-types span{min-height:0}}
@media(max-width:700px){.evaluation-objective-choice{margin:8px 12px}.objective-form-actions{flex-direction:column}.objective-performance-report .objective-summary{grid-template-columns:1fr}.objective-summary p{grid-column:auto}}

/* Rapport d'évaluation enrichi : identité institutionnelle et lecture détaillée. */
.dashboard-evaluation-report>.evaluation-official-header{
  display:grid;
  grid-template-columns:110px minmax(0,1fr) auto;
  align-items:center;
  gap:22px;
}
.evaluation-report-logo{
  display:grid;
  place-items:center;
  width:108px;
  height:88px;
  box-sizing:border-box;
  padding:7px;
  border:1px solid rgb(255 255 255 / 45%);
  border-radius:15px;
  background:rgb(255 255 255 / 92%);
}
.evaluation-report-logo img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.evaluation-institution-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
  padding:13px 18px;
  border-color:#d7bee3!important;
  background:linear-gradient(90deg,#fbf6fd,#f1e2f7)!important;
}
.evaluation-institution-card>div{display:grid;align-content:start;gap:4px;min-width:0}
.evaluation-institution-card b{color:#552078;font-size:16px;text-transform:uppercase}
.evaluation-institution-card span{color:#5f486b;font-size:10px;line-height:1.45}
.evaluation-deep-analysis>h2,.evaluation-methodology>h2{letter-spacing:.04em}
.evaluation-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:14px}
.evaluation-detail-grid article{overflow:hidden;border:1px solid #d9c5e2;border-radius:11px;background:#fcf9fd}
.evaluation-detail-grid h3,.evaluation-comparison-comment h3,.evaluation-management-comment h3{
  margin:0;
  padding:9px 12px;
  background:#eee0f4;
  color:#552078;
  font-size:11px;
  letter-spacing:.035em;
}
.evaluation-detail-grid p{display:flex;justify-content:space-between;gap:12px;margin:0;padding:7px 11px;border-top:1px solid #eadfed;font-size:10px;line-height:1.35}
.evaluation-detail-grid p span{color:#65516e}
.evaluation-detail-grid p b{text-align:right;color:#351047}
.evaluation-detail-grid p b.positive{color:#087b4a}.evaluation-detail-grid p b.negative{color:#b21f34}
.evaluation-comparison-comment,.evaluation-management-comment{margin:0 14px 14px;overflow:hidden;border:1px solid #dac3e4;border-radius:11px;background:#faf5fc}
.evaluation-comparison-comment p,.evaluation-management-comment p{margin:0!important;padding:10px 13px;border-top:1px solid #eadfed;font-size:11px;line-height:1.55}
.evaluation-management-comment h3{background:#552078;color:#fff}
.evaluation-methodology{background:#f6eff9!important}
.evaluation-methodology p{color:#5e4869;font-size:10px}
.print-report-toolbar .close{display:none!important}
.evaluation-scope-banner{display:flex;flex-wrap:wrap;align-items:center;gap:7px;padding:13px;background:linear-gradient(110deg,#e9f3ff,#f4edfa)}
.evaluation-scope-banner b{margin-right:auto;color:#174d7d;font-size:13px}.evaluation-scope-banner span{padding:5px 8px;border-radius:999px;background:#fff;color:#5c4a65;font-size:9px;font-weight:800}
.evaluation-trend-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}
.evaluation-trend-grid article{display:grid;align-content:start;gap:5px;min-height:125px;padding:13px;border-left:5px solid #7030a0;border-radius:10px;background:#f6eff9}
.evaluation-trend-grid article.good{border-color:#16945e;background:#eaf8f1}.evaluation-trend-grid article.bad{border-color:#d02b3e;background:#fff0f2}.evaluation-trend-grid article.stable{border-color:#b07a12;background:#fff7e8}
.evaluation-trend-grid small{font-size:8px;font-weight:900;letter-spacing:.07em}.evaluation-trend-grid b{font-size:16px}.evaluation-trend-grid span{font-size:10px;font-weight:900}.evaluation-trend-grid p{margin:3px 0 0!important;color:#66556e;font-size:9px;line-height:1.4}
.evaluation-ratio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px}
.evaluation-ratio-grid article{min-height:150px;padding:13px;border-top:7px solid #7030a0;border-radius:10px;background:#f6eff9}.evaluation-ratio-grid article.green{border-color:#15935b;background:#eaf8f1}.evaluation-ratio-grid article.amber{border-color:#dc9417;background:#fff6e5}.evaluation-ratio-grid article.red{border-color:#ce263a;background:#ffeff1}.evaluation-ratio-grid article.purple{border-color:#7030a0}
.evaluation-ratio-grid article>b{font-size:22px}.evaluation-ratio-grid h3{margin:6px 0;color:#432050;font-size:11px}.evaluation-ratio-grid p{margin:0!important;color:#5f5066;font-size:9px;line-height:1.5}
.evaluation-conclusion{margin:14px;padding:14px 17px;border-left:7px solid #d79822;border-radius:10px;background:#fff5df}.evaluation-conclusion.favorable{border-color:#148b57;background:#e9f8f0}.evaluation-conclusion.critique{border-color:#c8273a;background:#ffedf0}.evaluation-conclusion>b{font-size:13px}.evaluation-conclusion p{margin:6px 0 0!important;font-size:11px;line-height:1.55}
.evaluation-roadmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 14px}.evaluation-roadmap article{padding:12px;border:1px solid #d9c5e2;border-radius:10px;background:#fbf8fc}.evaluation-roadmap article:nth-child(1){border-top:5px solid #c8273a}.evaluation-roadmap article:nth-child(2){border-top:5px solid #dc9417}.evaluation-roadmap article:nth-child(3){border-top:5px solid #2678b7}.evaluation-roadmap b{font-size:9px}.evaluation-roadmap p{margin:6px 0 0!important;font-size:9px;line-height:1.5}
.evaluation-validation{background:#fff!important}.evaluation-validation-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:30px;align-items:center;min-height:210px;padding:24px 35px}.evaluation-validation-grid>div:first-child{display:grid;gap:8px}.evaluation-validation-grid span{color:#66516f;font-size:10px;font-weight:800}.evaluation-validation-grid i{display:block;height:40px;border-bottom:1px solid #705779}
.evaluation-seal{display:grid;place-items:center;align-content:center;gap:8px;width:190px;height:150px;justify-self:center;border:3px dashed #9d7baa;border-radius:50%;color:#6a4579;text-align:center}.evaluation-seal b{font-size:12px}.evaluation-seal span{max-width:130px;font-size:8px;font-weight:700}
@media(max-width:900px){.evaluation-trend-grid,.evaluation-ratio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){
  .dashboard-evaluation-report>.evaluation-official-header{grid-template-columns:72px minmax(0,1fr);gap:12px}
  .evaluation-report-logo{width:70px;height:62px;border-radius:11px}
  .evaluation-official-header .evaluation-status{grid-column:1/-1}
  .evaluation-institution-card,.evaluation-detail-grid{grid-template-columns:1fr}
  .evaluation-institution-card{gap:8px}
  .evaluation-trend-grid,.evaluation-ratio-grid,.evaluation-roadmap,.evaluation-validation-grid{grid-template-columns:1fr}
  .evaluation-validation-grid{padding:20px}.evaluation-seal{width:165px;height:130px}
}
@media print{.evaluation-report-actions,.print-report-toolbar,[data-print],[data-close]{display:none!important}.evaluation-trend-grid,.evaluation-ratio-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.evaluation-roadmap{grid-template-columns:repeat(3,minmax(0,1fr))}.evaluation-validation{break-before:auto;break-inside:avoid}.evaluation-validation-grid{min-height:230px}}
.dashboard-evaluation-report th small{display:block;margin-top:4px;color:#e5caef;font-size:8px;line-height:1.35}
.evaluation-cell{min-width:210px}
.evaluation-cell b,.evaluation-cell small{display:block}
.evaluation-cell b{margin-bottom:4px;font-size:11px}
.evaluation-cell small{font-size:9px;line-height:1.4}
.evaluation-cell.good{border-left:5px solid #168c58!important;background:#e5f7ed!important;color:#087347}
.evaluation-cell.bad{border-left:5px solid #cc283c!important;background:#ffedf0!important;color:#a31c30}
.evaluation-cell.neutral{border-left:5px solid #287ab8!important;background:#eaf4fb!important;color:#185985}
.evaluation-cell.stable{border-left:5px solid #8a5b9d!important;background:#f2e9f6!important;color:#5b316d}
.evaluation-intelligence{display:contents}.evaluation-score-layout{display:grid;grid-template-columns:230px 1fr;gap:14px;padding:15px}.evaluation-main-score{display:grid;place-items:center;align-content:center;gap:5px;min-height:190px;border:2px solid #9e72b5;border-radius:18px;background:#f3e9f8;text-align:center}.evaluation-main-score.good{border-color:#15915a;background:#e6f7ee}.evaluation-main-score.medium{border-color:#d58b13;background:#fff4df}.evaluation-main-score.bad{border-color:#c7283b;background:#ffedf0}.evaluation-main-score>small{font-weight:900;letter-spacing:.08em}.evaluation-main-score>b{font-size:54px;line-height:1}.evaluation-main-score b i{font-size:17px;font-style:normal}.evaluation-main-score>span{max-width:180px;font-size:11px;font-weight:900}.evaluation-score-factors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evaluation-score-factors article{display:grid;gap:4px;padding:13px;border-left:5px solid #7030a0;border-radius:10px;background:#f8f3fa}.evaluation-score-factors b{font-size:20px}.evaluation-score-factors span{font-size:10px;font-weight:900}.evaluation-score-factors small{color:#6c5874;font-size:9px;line-height:1.4}.score-method{margin:0 15px 15px!important;padding:10px 13px;border-radius:9px;background:#f4eef7;color:#6b5873;font-size:9px!important}.intelligent-reading-head{display:flex;flex-wrap:wrap;gap:8px;padding:12px 15px;background:#ede1f3}.intelligent-reading-head b{margin-right:auto}.intelligent-reading-head span{padding:4px 8px;border-radius:999px;background:#fff;font-size:9px;font-weight:800}.evaluation-observation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.evaluation-observation-grid article{padding:13px;border-left:6px solid #7030a0;border-radius:10px;background:#f6eff9}.evaluation-observation-grid article.green{border-color:#138b55;background:#e7f7ee}.evaluation-observation-grid article.amber{border-color:#d99216;background:#fff5e2}.evaluation-observation-grid article.red{border-color:#c9283b;background:#ffedf0}.evaluation-observation-grid h3{margin:0 0 6px;font-size:11px}.evaluation-observation-grid p{margin:0!important;font-size:10px;line-height:1.5}.period-identification{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.period-identification article{display:grid;gap:5px;padding:13px;border:1px solid #d8c2e3;border-radius:10px;background:#f8f3fa}.period-identification article.good{border-color:#168d58;background:#e7f7ee}.period-identification article.bad{border-color:#c9283b;background:#ffedf0}.period-identification small{font-size:8px;font-weight:900}.period-identification b{font-size:11px}.period-identification span{font-size:9px;line-height:1.4}.comparison-causes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:0 14px 14px}.comparison-causes p{display:grid;gap:4px;margin:0!important;padding:10px;border-top:5px solid #168d58;border-radius:8px;background:#eef9f3}.comparison-causes p.bad{border-color:#c9283b;background:#fff0f2}.comparison-causes b{font-size:9px}.comparison-causes span{font-size:12px;font-weight:900}.comparison-causes small{font-size:8px;line-height:1.35}.targeted-accountability{display:flex;flex-wrap:wrap;gap:8px;padding:15px}.targeted-accountability>b{width:100%;font-size:15px}.targeted-accountability p{width:100%;margin:0 0 5px!important;line-height:1.55}.targeted-accountability span{padding:7px 10px;border-radius:8px;background:#efe4f4;font-size:9px;font-weight:900}.evaluation-decision-matrix .priority-urgent,.evaluation-decision-matrix .priority-high,.evaluation-decision-matrix .priority-normal{display:inline-block;padding:5px 7px;border-radius:999px;background:#bf2639;color:#fff;font-size:8px}.evaluation-decision-matrix .priority-high{background:#ce8112}.evaluation-decision-matrix .priority-normal{background:#148b57}.evaluation-next-review{margin:12px;padding:13px;border-left:6px solid #2976b0;border-radius:9px;background:#eaf4fb}.evaluation-next-review p{margin:5px 0 0!important;font-size:10px;line-height:1.5}
@media(max-width:800px){.evaluation-score-layout{grid-template-columns:1fr}.evaluation-score-factors,.evaluation-observation-grid,.period-identification{grid-template-columns:1fr}.comparison-causes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media print{.evaluation-score-layout{grid-template-columns:190px 1fr}.evaluation-score-factors,.evaluation-observation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.period-identification{grid-template-columns:repeat(3,minmax(0,1fr))}.comparison-causes{grid-template-columns:repeat(5,minmax(0,1fr))}.evaluation-scorecard,.evaluation-intelligent-reading,.evaluation-period-verdict,.evaluation-decision-matrix{break-inside:avoid}}
.evaluation-triple-depth{display:contents}.financial-bridge-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:14px}.financial-bridge-grid article{padding:13px;border:1px solid #d8c1e3;border-top:6px solid #7030a0;border-radius:11px;background:#fbf8fc}.financial-bridge-grid article:nth-child(2){border-top-color:#c22a3c}.financial-bridge-grid article:nth-child(3){border-top-color:#198b59}.financial-bridge-grid article:nth-child(4){border-top-color:#2d78b4}.financial-bridge-grid article:nth-child(5){border-top-color:#bc7b16}.financial-bridge-grid h3{margin:0 0 9px;color:#51206b;font-size:10px}.financial-bridge-grid p{display:flex;justify-content:space-between;gap:8px;margin:5px 0!important;padding-bottom:4px;border-bottom:1px dotted #dbcce1;font-size:9px}.financial-bridge-grid p b{text-align:right}.financial-bridge-grid small{display:block;margin-top:8px;color:#6d5b74;font-size:8px;line-height:1.45}.risk-register-summary{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:13px 15px;background:#f4edf7}.risk-register-summary>b,.risk-register-summary>span{padding:6px 9px;border-radius:999px;background:#c72639;color:#fff;font-size:9px}.risk-register-summary>span{background:#b97a15}.risk-register-summary>span+span{background:#178a58}.risk-register-summary p{width:100%;margin:2px 0 0!important;font-size:9px}.risk-high,.risk-medium,.risk-low{display:inline-block;padding:5px 7px;border-radius:999px;background:#c72639;color:#fff;font-size:8px;font-weight:900}.risk-medium{background:#bd7a13}.risk-low{background:#168b58}.scenario-warning{margin:12px 14px 0!important;padding:10px;border-left:5px solid #287ab6;background:#eaf4fb;font-size:9px!important}.scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;padding:14px}.scenario-grid article{padding:14px;border-top:7px solid #7030a0;border-radius:11px;background:#f5edf8}.scenario-grid article.green{border-color:#178c59;background:#e9f8f0}.scenario-grid article.red{border-color:#c6263a;background:#ffedf0}.scenario-grid h3{margin:0 0 7px;font-size:11px}.scenario-grid p{min-height:34px;margin:0 0 9px!important;font-size:9px}.scenario-grid span{display:flex;justify-content:space-between;gap:8px;margin-top:5px;font-size:9px}.scenario-grid small{display:block;margin-top:10px;font-weight:800;line-height:1.4}.governance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.governance-grid article{display:grid;grid-template-columns:32px 1fr;gap:7px;padding:12px;border:1px solid #d8c3e2;border-radius:10px;background:#fbf8fc}.governance-grid article>b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#7030a0;color:#fff}.governance-grid p{margin:3px 0!important;font-size:10px;font-weight:800}.governance-grid span,.governance-grid i{grid-column:2}.governance-grid span{font-size:8px}.governance-grid i{height:18px;border-bottom:1px solid #796485}.management-certification{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 14px 14px}.management-certification p{display:grid;gap:4px;margin:0!important;padding:10px;border-radius:9px;background:#eee3f3}.management-certification b{font-size:9px}.management-certification span{font-size:8px}.evaluation-key-drivers>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:14px}.evaluation-key-drivers article{display:grid;grid-template-columns:30px 1fr;gap:5px;padding:11px;border-left:5px solid #7030a0;border-radius:9px;background:#f5edf8}.evaluation-key-drivers article.good{border-color:#168b58;background:#e9f8f0}.evaluation-key-drivers article.bad{border-color:#c6263a;background:#ffedf0}.evaluation-key-drivers article>b{grid-row:1/4;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#7030a0;color:#fff}.evaluation-key-drivers span{font-size:9px;font-weight:900}.evaluation-key-drivers strong{font-size:12px}.evaluation-key-drivers p{margin:2px 0 0!important;font-size:8px;line-height:1.4}.appendix-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.appendix-grid article{padding:12px;border:1px solid #d9c8e1;border-radius:9px;background:#faf7fb}.appendix-grid h3{margin:0 0 6px;color:#552078;font-size:10px}.appendix-grid p{margin:4px 0!important;font-size:9px;line-height:1.45}
@media(max-width:850px){.financial-bridge-grid,.scenario-grid,.management-certification{grid-template-columns:1fr}.governance-grid,.appendix-grid{grid-template-columns:1fr}}
@media print{.financial-bridge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.scenario-grid,.management-certification{grid-template-columns:repeat(3,minmax(0,1fr))}.governance-grid,.appendix-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.evaluation-financial-bridge,.evaluation-risk-register,.evaluation-scenarios,.evaluation-governance,.evaluation-appendix{break-inside:avoid}}
/* Garantie de lisibilité intégrale des rapports sur toutes les largeurs. */
.dashboard-evaluation-report,.dashboard-evaluation-report *{box-sizing:border-box}.dashboard-evaluation-report{max-width:min(1180px,calc(100vw - 24px));overflow-x:hidden}.dashboard-evaluation-report>header,.dashboard-evaluation-report>section,.dashboard-evaluation-report>div,.evaluation-intelligence,.evaluation-triple-depth{min-width:0;max-width:100%}.dashboard-evaluation-report>section{overflow:visible}.dashboard-evaluation-report p,.dashboard-evaluation-report span,.dashboard-evaluation-report small,.dashboard-evaluation-report b,.dashboard-evaluation-report strong,.dashboard-evaluation-report td,.dashboard-evaluation-report th{overflow-wrap:anywhere;word-break:normal}.dashboard-evaluation-report img{max-width:100%;height:auto}.evaluation-table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.evaluation-table-wrap table{width:100%;max-width:none}.evaluation-detail-grid>*,.evaluation-trend-grid>*,.evaluation-ratio-grid>*,.evaluation-roadmap>*,.evaluation-score-factors>*,.evaluation-observation-grid>*,.financial-bridge-grid>*,.scenario-grid>*,.governance-grid>*,.management-certification>*,.evaluation-key-drivers>div>*,.appendix-grid>*{min-width:0}.dashboard-evaluation-report-overlay{padding:12px;overflow-x:hidden;overflow-y:auto}
@media(max-width:900px){.dashboard-evaluation-report{width:100%;max-width:100%}.dashboard-evaluation-report>header{flex-wrap:wrap}.evaluation-status{max-width:100%;white-space:normal}.evaluation-table-wrap table{min-width:720px}.evaluation-action-plan{min-width:820px}.evaluation-report-actions{position:sticky;z-index:4;top:0;flex-wrap:wrap}.comparison-causes{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dashboard-evaluation-report-overlay{padding:4px}.dashboard-evaluation-report{border-radius:12px}.dashboard-evaluation-report>section{margin:8px}.dashboard-evaluation-report>header{padding:16px}.dashboard-evaluation-report h1{font-size:19px;line-height:1.2}.evaluation-report-actions{padding:8px}.evaluation-report-actions button{flex:1;min-width:130px}.evaluation-score-layout,.evaluation-score-factors,.evaluation-observation-grid,.financial-bridge-grid,.scenario-grid,.governance-grid,.management-certification,.appendix-grid,.period-identification,.comparison-causes,.evaluation-validation-grid{grid-template-columns:1fr!important}.evaluation-main-score{min-height:150px}.evaluation-main-score>b{font-size:44px}.intelligent-reading-head{align-items:flex-start;flex-direction:column}.intelligent-reading-head b{margin-right:0}.targeted-accountability{align-items:stretch;flex-direction:column}.targeted-accountability span{width:100%}.evaluation-scope-banner{align-items:flex-start;flex-direction:column}.evaluation-scope-banner b{margin-right:0}.evaluation-table-wrap{border-right:1px solid #dcc6e6;border-left:1px solid #dcc6e6}.evaluation-validation-grid{gap:14px}.evaluation-seal{max-width:100%}}
@media print{.dashboard-evaluation-report{width:100%!important;max-width:none!important;overflow:visible!important}.dashboard-evaluation-report>section,.dashboard-evaluation-report>div,.evaluation-intelligence,.evaluation-triple-depth,.evaluation-table-wrap{max-width:none!important;overflow:visible!important}.dashboard-evaluation-report table,.evaluation-action-plan,.evaluation-table-wrap table{width:100%!important;min-width:0!important;table-layout:fixed!important}.dashboard-evaluation-report th,.dashboard-evaluation-report td{padding:4px!important;font-size:7px!important;overflow-wrap:anywhere!important}.financial-bridge-grid,.evaluation-trend-grid,.evaluation-ratio-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.scenario-grid,.period-identification,.management-certification{grid-template-columns:repeat(3,minmax(0,1fr))!important}.governance-grid,.appendix-grid,.evaluation-observation-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.comparison-causes{grid-template-columns:repeat(5,minmax(0,1fr))!important}.dashboard-evaluation-report>section{break-inside:auto}.dashboard-evaluation-report tr,.dashboard-evaluation-report article{break-inside:avoid}}
.operational-followup-controls{justify-content:flex-end}
.operational-followup-dialog{width:min(900px,96vw)}
.operational-followup-dialog .evaluation-types{grid-template-columns:repeat(2,minmax(0,1fr))}
.operational-followup-report{width:min(1180px,96vw)}
.operational-followup-report .evaluation-table-wrap{overflow:auto;max-width:100%}
.operational-followup-report table{min-width:980px}
.operational-followup-report td{white-space:normal;word-break:break-word}
.operational-action-plan{overflow:hidden!important}
.plus-sheet h1>.page-hero-actions,.plus-sheet .administration-page-header>.page-hero-actions{float:right;display:inline-flex;margin-left:16px}
@media(max-width:760px){.operational-followup-dialog .evaluation-types{grid-template-columns:1fr}.operational-followup-dialog{width:100%}.operational-followup-report{width:100%}}
@media print{.operational-followup-report .evaluation-report-actions{display:none!important}}
/* Modèle Word et contrat de crédit individuel */
.contract-template-admin{padding:18px!important;border:1px solid #8b48b7!important;background:#f7f0fb!important}.contract-template-admin>header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border-radius:14px;background:linear-gradient(120deg,#3b0c50,#843ab0);color:#fff}.contract-template-admin>header small{letter-spacing:.12em;font-weight:800}.contract-template-admin>header h2{margin:4px 0;font-size:24px}.contract-template-admin>header p{margin:0;max-width:780px}.contract-template-admin>header>strong{max-width:250px;padding:10px 14px;border:1px solid #ffffff55;border-radius:12px;text-align:center;background:#ffffff18}.contract-word-toolbar{position:sticky;z-index:12;top:0;display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:12px;padding:8px;border:1px solid #cfa8e4;border-radius:10px;background:#fff;box-shadow:0 3px 12px #3a0c501a}.contract-word-toolbar button,.contract-word-toolbar select{width:auto!important;min-width:36px!important;min-height:34px!important;margin:0!important;padding:5px 9px!important;border:1px solid #d9c0e8!important;border-radius:6px!important;background:#fff!important;color:#401056!important;font-size:12px!important}.contract-word-toolbar button:hover{background:#f0e1f8!important}.contract-word-toolbar #creditContractPlaceholder{margin-left:auto!important;max-width:360px!important}.contract-word-page{width:min(850px,100%);min-height:820px;margin:14px auto;padding:64px 70px;border:1px solid #cdb6da;border-radius:3px;background:#fff;color:#18121c;box-shadow:0 10px 28px #32104422;font-family:Arial,sans-serif;font-size:15px;line-height:1.65;outline:none}.contract-word-page:focus{border-color:#7a31a5;box-shadow:0 0 0 3px #8e46b429,0 10px 28px #32104422}.contract-word-page h1{font-size:24px}.contract-word-page h2{padding:6px;border:1px solid #444;font-size:17px}.contract-word-page h3{margin:17px 0 3px;font-size:16px}.contract-word-page p{margin:5px 0;text-align:justify}.contract-template-admin>footer{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.contract-template-admin>footer span{margin-right:auto;color:#5d3d6f}.contract-template-admin>footer span.unsaved{color:#a32236;font-weight:800}.contract-template-admin>footer button{width:auto!important;min-width:180px!important}.contract-template-admin>footer .secondary{background:#eee3f4!important;color:#4c1d65!important}.credit-contract-choice{grid-column:1/-1!important;border-color:#7b36a6!important;background:#f6ebfb!important}.credit-contract-choice label{min-width:min(390px,100%)}.credit-contract-choice-help{align-self:end;margin:0;padding:10px;border-radius:8px;background:#fff;color:#63317e;font-weight:700}.credit-contract-report{width:min(960px,96vw)!important;max-height:94vh!important;padding:0!important;background:#e9e1ee!important;overflow-y:auto!important;color:#17121b!important}.credit-contract-cover,.credit-contract-document,.credit-contract-annex{box-sizing:border-box;width:210mm;max-width:100%;min-height:297mm;margin:18px auto;padding:22mm 19mm;background:#fff;box-shadow:0 5px 24px #250b3033}.credit-contract-cover{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;color:#281044}.credit-contract-cover .credit-contract-institution{width:100%;padding:12px;border-top:2px solid #32104b;border-bottom:2px solid #32104b;font-size:25px;font-weight:900;text-transform:uppercase}.credit-contract-cover img{width:150px;height:150px;margin:55px 0;object-fit:contain}.credit-contract-cover h1{margin:20px 0 150px;font-size:31px;line-height:1.35}.credit-contract-cover strong{font-size:21px;text-transform:uppercase}.credit-contract-cover span{margin-top:12px;color:#68467d}.credit-contract-document>header,.credit-contract-annex>header{display:flex;align-items:center;gap:15px;margin-bottom:18px;padding-bottom:10px;border-bottom:2px solid #4c1b68}.credit-contract-document>header img,.credit-contract-annex>header img{width:72px;height:72px;object-fit:contain}.credit-contract-document>header div,.credit-contract-annex>header div{display:flex;flex-direction:column}.credit-contract-document>header b{font-size:19px;color:#401158;text-transform:uppercase}.credit-contract-body{font-family:Arial,sans-serif;font-size:13.5px;line-height:1.55}.credit-contract-body h1{text-align:center;font-size:20px}.credit-contract-body h2{padding:6px;border:1px solid #444;text-align:center;font-size:15px}.credit-contract-body h3{margin:13px 0 2px;font-size:14px}.credit-contract-body p{margin:4px 0;text-align:justify}.credit-contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:55px}.credit-contract-signatures>div{display:flex;min-height:110px;flex-direction:column;gap:8px;text-align:center}.credit-contract-signatures span{font-weight:700}.credit-contract-signatures i{margin-top:auto;border-top:1px solid #555;padding-top:5px;font-size:11px}.credit-contract-annex header h2{margin:2px 0}.credit-contract-annex table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px}.credit-contract-annex th,.credit-contract-annex td{padding:7px 4px;border:1px solid #6c4e78;text-align:right}.credit-contract-annex th:nth-child(-n+2),.credit-contract-annex td:nth-child(-n+2),.credit-contract-annex th:last-child,.credit-contract-annex td:last-child{text-align:center}.credit-contract-annex thead{background:#48135f;color:#fff}.credit-contract-annex tfoot{background:#eee0f5;color:#3e1055}.contract-preview-warning,.credit-contract-annex-placeholder{margin:18px;padding:14px;border-radius:10px;background:#f1e2f7;color:#5a2674;font-weight:800}.contract-preview .credit-contract-body{margin:18px;padding:35px;background:#fff}.credit-contract-report>.evaluation-report-actions{position:sticky;z-index:20;bottom:0;display:flex;justify-content:center;gap:10px;padding:12px;background:#351047}.credit-contract-report>.evaluation-report-actions button{width:auto!important;min-width:170px!important}
@media(max-width:760px){.contract-template-admin>header{align-items:flex-start;flex-direction:column}.contract-word-page{min-height:650px;padding:30px 22px}.contract-word-toolbar #creditContractPlaceholder{width:100%!important;max-width:none!important;margin-left:0!important}.credit-contract-cover,.credit-contract-document,.credit-contract-annex{min-height:auto;margin:8px auto;padding:26px 18px}.credit-contract-cover h1{margin-bottom:80px;font-size:25px}.credit-contract-signatures{gap:20px}.credit-contract-annex table{font-size:8px}.credit-contract-annex th,.credit-contract-annex td{padding:4px 2px}.contract-template-admin>footer button{width:100%!important}.credit-contract-choice label{min-width:100%}}
@media print{.credit-contract-report{width:100%!important;max-height:none!important;background:#fff!important;overflow:visible!important}.credit-contract-cover,.credit-contract-document,.credit-contract-annex{width:100%!important;min-height:277mm;margin:0!important;padding:15mm!important;box-shadow:none!important;break-after:page}.credit-contract-annex{break-after:auto}.credit-contract-report>.evaluation-report-actions,.contract-preview-warning{display:none!important}.credit-contract-body h3,.credit-contract-body p,.credit-contract-annex tr{break-inside:avoid}}
/* Repères visuels des pages A4 dans l'éditeur et l'aperçu. */
.contract-word-page,.credit-contract-document,.credit-contract-annex{--a4-page-height:297mm;--a4-separator-size:12px;background-color:#fff;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--a4-page-height) - var(--a4-separator-size)),#d7bce5 calc(var(--a4-page-height) - var(--a4-separator-size)),#f1e6f6 calc(var(--a4-page-height) - 2px),#6f2b94 calc(var(--a4-page-height) - 2px),#6f2b94 var(--a4-page-height));background-position:0 0;background-size:100% var(--a4-page-height)}
.contract-word-page{box-sizing:border-box;width:min(210mm,100%);min-height:297mm;padding:22mm 19mm}.contract-word-page::selection{background:#d9b7eb;color:#26102f}.contract-template-admin::after{display:block;margin:8px auto 0;padding:8px 12px;border:1px dashed #a46bc1;border-radius:9px;background:#f3e9f8;color:#60277c;text-align:center;font-size:12px;font-weight:800;content:'REPÈRES A4 : chaque bande mauve indique la fin d’une page. Elle ne sera pas imprimée.'}
.credit-contract-report .credit-contract-document,.credit-contract-report .credit-contract-annex{position:relative}.credit-contract-report .credit-contract-document::before,.credit-contract-report .credit-contract-annex::before{position:absolute;z-index:3;top:8px;right:12px;padding:4px 8px;border-radius:6px;background:#eee0f5;color:#5a2474;font-size:10px;font-weight:900;content:'APERÇU A4 — REPÈRES DE FIN DE PAGE';pointer-events:none}.credit-contract-report .credit-contract-cover{outline:2px solid #b98acd;outline-offset:-2px}.credit-contract-report .credit-contract-cover::after{margin-top:auto;padding:5px 10px;border-radius:8px;background:#f0e2f6;color:#65307d;font-size:10px;font-weight:800;content:'PAGE DE GARDE A4'}
@media(max-width:760px){.contract-word-page,.credit-contract-document,.credit-contract-annex{--a4-page-height:920px;--a4-separator-size:10px}.contract-word-page{width:100%;padding:30px 22px}}
@media print{.contract-word-page,.credit-contract-cover,.credit-contract-document,.credit-contract-annex{background:#fff!important;background-image:none!important;outline:0!important}.credit-contract-report .credit-contract-document::before,.credit-contract-report .credit-contract-annex::before,.credit-contract-report .credit-contract-cover::after,.contract-template-admin::after{display:none!important}}
.contract-variable-palette{margin:10px 0 14px;padding:12px;border:1px solid #c995df;border-radius:12px;background:#f5ebfa}.contract-variable-palette>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;color:#502069}.contract-variable-palette>header div{display:grid;gap:2px}.contract-variable-palette>header small{font-weight:600;opacity:.76}.contract-variable-palette>header>span{padding:5px 9px;border-radius:20px;background:#7030a0;color:#fff;font-size:10px;font-weight:900}.contract-variable-palette>div{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:7px;max-height:235px;padding-right:4px;overflow-y:auto}.contract-variable-palette button{display:grid!important;width:100%!important;min-height:54px!important;margin:0!important;padding:7px 9px!important;border:1px solid #dec5e9!important;border-radius:8px!important;background:#fff!important;color:#4a1762!important;text-align:left!important;cursor:pointer}.contract-variable-palette button:hover{border-color:#7030a0!important;background:#ead8f3!important}.contract-variable-palette button b{font-size:11px}.contract-variable-palette button code{margin-top:3px;color:#813da6;font-size:9px;overflow-wrap:anywhere}.credit-contract-cover img{width:240px!important;height:240px!important;margin:38px 0!important}.credit-contract-report>.evaluation-report-actions{position:sticky!important;z-index:30;top:0!important;bottom:auto!important;order:-1;justify-content:flex-end!important;padding:10px 16px!important;border-bottom:1px solid #ffffff44;background:linear-gradient(90deg,#351047,#7030a0)!important}.credit-contract-fixed-page{position:relative;min-height:297mm!important;break-after:page}.credit-contract-page-label{position:absolute;top:8px;right:12px;z-index:4;padding:4px 8px;border-radius:6px;background:#eee0f5;color:#5a2474;font-size:10px;font-weight:900}.credit-contract-fixed-page::before{display:none!important}
@media(max-width:900px){.contract-variable-palette>div{grid-template-columns:repeat(2,minmax(150px,1fr))}.credit-contract-cover img{width:190px!important;height:190px!important}}
@media(max-width:560px){.contract-variable-palette>header{align-items:flex-start;flex-direction:column}.contract-variable-palette>div{grid-template-columns:1fr}.credit-contract-report>.evaluation-report-actions{justify-content:center!important}.credit-contract-report>.evaluation-report-actions button{min-width:130px!important}.credit-contract-cover img{width:160px!important;height:160px!important}}
@media print{.contract-variable-palette{display:none!important}.credit-contract-page-label{display:none!important}.credit-contract-fixed-page{min-height:277mm!important}.credit-contract-report>.evaluation-report-actions{display:none!important}}
.contract-variable-palette>header[role="button"]{margin-bottom:0;padding:4px;border-radius:8px;cursor:pointer;user-select:none;transition:background-color .12s ease}.contract-variable-palette>header[role="button"]:hover,.contract-variable-palette>header[role="button"]:focus-visible{background:#ead8f3;outline:2px solid #9f63bc;outline-offset:2px}.contract-variable-palette>header[aria-expanded="true"]{margin-bottom:9px}.contract-variable-palette>header[role="button"]>span{min-width:155px;text-align:center}.contract-variable-palette>div[hidden]{display:none!important}
.contract-share-overlay{position:fixed;z-index:100500;inset:0;display:grid;place-items:center;padding:18px;background:#260b3dbd;backdrop-filter:blur(5px)}
.contract-share-overlay>section{position:relative;width:min(510px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:22px;border:1px solid #d8b6ed;border-radius:20px;background:linear-gradient(180deg,#fff 0,#fff 88%,#fbf6fd 100%);color:#351047;box-shadow:0 22px 65px #19042466}
.contract-share-overlay>section::before{position:absolute;inset:0 0 auto;height:6px;background:linear-gradient(90deg,#351047,#8d3db5,#351047);content:''}.contract-share-overlay small{font-size:11px;font-weight:900;letter-spacing:.13em;color:#7b2fa5}.contract-share-overlay h2{margin:5px 0 8px;font-size:21px;line-height:1.15}.contract-share-overlay p{margin:0 0 14px;color:#563566;font-size:14px;line-height:1.45}.contract-share-overlay label{display:grid;gap:5px;margin:10px 0;color:#421653;font-size:14px;font-weight:800}.contract-share-overlay input,.contract-share-overlay select{box-sizing:border-box;width:100%;min-height:42px;padding:0 12px;border:1px solid #c994e5;border-radius:11px;background:#fff;color:#351047;font-size:14px;outline:0;transition:border-color .12s,box-shadow .12s}.contract-share-overlay input:focus,.contract-share-overlay select:focus{border-color:#7030a0;box-shadow:0 0 0 3px #7030a020}.contract-share-link{display:grid;gap:4px;margin:14px 0;padding:11px 13px;border:1px solid #e3cdee;border-radius:12px;background:linear-gradient(135deg,#f5eafa,#eee0f5)}.contract-share-link span{font-size:10px;font-weight:900;letter-spacing:.04em}.contract-share-link code{overflow-wrap:anywhere;color:#64248c;font-size:13px}.contract-share-overlay footer{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap;margin-top:15px;padding-top:2px}.contract-share-overlay button{min-height:40px;padding:0 17px;border:0;border-radius:10px;background:linear-gradient(135deg,#117c4a,#1a985f);color:#fff;font-size:13px;font-weight:900;box-shadow:0 5px 13px #168b5528}.contract-share-overlay button.secondary{background:#eee2f4;color:#572071;box-shadow:none}.contract-share-overlay button:hover{filter:brightness(1.05)}.internal-message-link{color:inherit;font-weight:900;text-decoration:underline;overflow-wrap:anywhere}
@media(max-width:560px){.contract-share-overlay{padding:10px}.contract-share-overlay>section{padding:19px 16px;border-radius:17px}.contract-share-overlay h2{font-size:19px}.contract-share-overlay footer button{flex:1;min-width:130px}}
.open-shared-contract-link{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:10px 12px;border:1px solid #b97adb;border-radius:12px;background:#f1e2f8;color:#4b1767!important;text-decoration:none!important;box-shadow:0 3px 10px #4b176719}.open-shared-contract-link span{font-size:12px;font-weight:950}.open-shared-contract-link small{font-size:9px;color:#764590;text-align:right}.open-shared-contract-link:hover{background:#e8cef4;border-color:#7b2fa5}
.shared-report-viewer{padding:78px 18px 30px!important;overflow:auto!important;background:#eee6f2!important}.shared-report-viewer>.dashboard-evaluation-report{margin:0 auto!important}.shared-report-viewer-actions{position:fixed;z-index:100600;top:0;right:0;left:0;display:flex;justify-content:center;gap:12px;padding:13px;background:#351047;box-shadow:0 3px 12px #0005}.shared-report-viewer-actions button{min-height:42px;padding:0 20px;border:0;border-radius:9px;background:#7030a0;color:#fff;font-weight:900}.shared-report-viewer-actions button:last-child{background:#a92234}@media print{.shared-report-viewer-actions{display:none!important}.shared-report-viewer{padding:0!important;background:#fff!important}}
.pos-agent-interface .titlebar .account-action-buttons{display:flex!important;align-items:center;gap:9px}.pos-agent-interface .titlebar .account-action-buttons .message-button{display:grid!important;flex:0 0 38px;width:38px;height:38px;margin:0;padding:0!important;border-radius:50%!important;background:linear-gradient(135deg,#8244ad,#4b176c)!important}.pos-agent-interface .titlebar .account-action-buttons .message-button-icon{width:17px;height:14px}
.pos-agent-interface #sheet>.universal-page-hero[data-page="depotpos"],.pos-agent-interface #sheet>.universal-page-hero[data-page="retraitpos"]{display:none!important}

/* Thème POS cohérent dans toute l'application : vert pour les dépôts, rouge pour les retraits. */
.pos-deposit{--pos-accent:#148a53;--pos-accent-dark:#075f38;--pos-accent-soft:#edf9f3;--pos-border:#91d1b0;--pos-text:#115f3d;--pos-shadow:rgb(20 138 83 / 22%)}
.pos-withdrawal{--pos-accent:#bd2d40;--pos-accent-dark:#7f1727;--pos-accent-soft:#fff0f2;--pos-border:#e4a2ab;--pos-text:#8d2030;--pos-shadow:rgb(189 45 64 / 22%)}
.pos-deposit.pos-workspace,.pos-withdrawal.pos-workspace{background:radial-gradient(circle at 20% 0,var(--pos-shadow),transparent 32%),linear-gradient(145deg,var(--pos-accent-soft),#fff)!important}
.pos-deposit .pos-phone,.pos-withdrawal .pos-phone{border-color:var(--pos-border)!important;box-shadow:0 25px 70px var(--pos-shadow)!important}
.pos-deposit .pos-app-header,.pos-withdrawal .pos-app-header{background:linear-gradient(105deg,var(--pos-accent-dark),var(--pos-accent))!important}
#sheet>.universal-page-hero.pos-deposit-page-hero{background:linear-gradient(110deg,#075f38,#148a53 52%,#37a875)!important}
#sheet>.universal-page-hero.pos-withdrawal-page-hero{background:linear-gradient(110deg,#751624,#bd2d40 52%,#d95768)!important}
.pos-deposit .pos-step>span,.pos-withdrawal .pos-step>span,.pos-deposit .pos-avatar,.pos-withdrawal .pos-avatar{background:var(--pos-accent)!important}
.pos-deposit .pos-step>div>label,.pos-deposit .pos-fields label,.pos-deposit .pos-location header,.pos-deposit .pos-location-status,.pos-deposit .pos-client-exchange label,.pos-deposit .pos-client-exchange>small,.pos-deposit .pos-change-toggle,
.pos-withdrawal .pos-step>div>label,.pos-withdrawal .pos-fields label,.pos-withdrawal .pos-location header,.pos-withdrawal .pos-location-status,.pos-withdrawal .pos-client-exchange label,.pos-withdrawal .pos-client-exchange>small,.pos-withdrawal .pos-change-toggle{color:var(--pos-text)!important}
.pos-deposit .pos-lookup input,.pos-deposit .pos-step select,.pos-deposit .pos-step input,.pos-deposit .pos-location textarea,.pos-deposit .pos-client-exchange select,
.pos-withdrawal .pos-lookup input,.pos-withdrawal .pos-step select,.pos-withdrawal .pos-step input,.pos-withdrawal .pos-location textarea,.pos-withdrawal .pos-client-exchange select{border-color:var(--pos-border)!important}
.pos-deposit .pos-lookup input:focus,.pos-deposit .pos-step select:focus,.pos-deposit .pos-step input:focus,.pos-deposit .pos-location textarea:focus,
.pos-withdrawal .pos-lookup input:focus,.pos-withdrawal .pos-step select:focus,.pos-withdrawal .pos-step input:focus,.pos-withdrawal .pos-location textarea:focus{outline:2px solid var(--pos-accent)!important;outline-offset:1px}
.pos-deposit .pos-lookup button,.pos-deposit .pos-location header button,.pos-deposit .pos-client-exchange>div,.pos-deposit .pos-receipt button,
.pos-withdrawal .pos-lookup button,.pos-withdrawal .pos-location header button,.pos-withdrawal .pos-client-exchange>div,.pos-withdrawal .pos-receipt button{background:var(--pos-accent)!important}
.pos-deposit .pos-change-toggle,.pos-deposit .pos-client-exchange,.pos-deposit .pos-location,.pos-deposit .pos-customer,
.pos-withdrawal .pos-change-toggle,.pos-withdrawal .pos-client-exchange,.pos-withdrawal .pos-location,.pos-withdrawal .pos-customer{border-color:var(--pos-border)!important;background:var(--pos-accent-soft)!important}
.pos-deposit .pos-change-toggle small,.pos-withdrawal .pos-change-toggle small{color:var(--pos-text)!important;opacity:.78}
.pos-deposit .pos-change-toggle input,.pos-withdrawal .pos-change-toggle input{accent-color:var(--pos-accent)!important}
.pos-deposit .pos-fields .pos-amount input,.pos-withdrawal .pos-fields .pos-amount input{color:var(--pos-text)!important;background:var(--pos-accent-soft)!important}
.pos-deposit .pos-summary,.pos-withdrawal .pos-summary{background:var(--pos-accent-dark)!important}
.pos-deposit .pos-confirm,.pos-withdrawal .pos-confirm{background:linear-gradient(105deg,var(--pos-accent-dark),var(--pos-accent))!important;box-shadow:0 12px 24px var(--pos-shadow)!important}
.pos-deposit .pos-receipt h2,.pos-withdrawal .pos-receipt h2{color:var(--pos-text)!important}
.client-form-grid label[data-client-morale]{background:#f7edfb;border:1px solid #d9b8e8;border-radius:12px;padding:10px;color:#51206f}
.client-form-grid label[data-client-morale][hidden],.client-form-grid label[data-client-physique][hidden]{display:none!important}
.client-kind-badge{display:inline-flex;margin-top:5px;padding:3px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.04em}
.client-kind-badge.physique{background:#f0e3f7;color:#632482}
.client-kind-badge.morale{background:#dff4e9;color:#146b43}
.client-company-info{display:inline-block;margin-top:4px;color:#6d5478;font-size:11px;line-height:1.35}
.collection-sheet-fields{grid-column:1/-1!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;border:1px solid #d5b2e5!important;border-radius:18px!important;background:linear-gradient(135deg,#fbf7fd,#f3e5f9)!important;padding:18px!important;box-shadow:0 10px 28px rgba(75,24,102,.08)}
.collection-sheet-fields[hidden]{display:none!important}
.collection-sheet-fields legend{padding:0 10px;color:#592276;font-weight:900;letter-spacing:.04em;text-transform:uppercase}
.collection-sheet-fields label{display:grid;gap:7px;color:#4a275a;font-weight:800}
.collection-sheet-fields select{width:100%;min-height:44px;border:1px solid #bd85d5;border-radius:12px;background:#fff;color:#351047;padding:0 12px}
.client-collection-overlay{overflow:auto;padding:24px;background:rgba(37,9,52,.88)}
.client-collection-overlay>.evaluation-report-actions{position:sticky;top:0;z-index:5;display:flex;justify-content:center;gap:12px;margin:0 auto 18px;padding:12px;background:#351047;border-radius:14px;max-width:210mm}
.client-collection-document{display:grid;gap:22px;margin:auto;width:min(210mm,100%)}
.client-collection-page{box-sizing:border-box;width:210mm;height:297mm;min-height:297mm;max-height:297mm;margin:auto;padding:8mm 10mm;border:1px solid #3d3241;background:#fff;color:#173f32;font-family:Georgia,'Times New Roman',serif;display:flex;flex-direction:column;overflow:hidden;break-after:page;page-break-after:always}
.client-collection-page:last-child{page-break-after:auto}
.client-collection-page>header{display:grid;grid-template-columns:34mm 1fr 34mm;align-items:start;gap:8mm;min-height:36mm}
.client-collection-page>header img{width:30mm;height:30mm;object-fit:contain;border-radius:50%}
.client-collection-page>header div{text-align:center}
.client-collection-page>header h1{margin:5mm 0 3mm;color:#2b2730;font:800 25pt/1 Arial,sans-serif;letter-spacing:.04em}
.client-collection-page>header p{margin:2mm 0;color:#29242d;font-size:10pt}
.client-collection-page>header strong{padding:4mm 2mm;border:1px solid #4d444f;text-align:center;color:#322b34;font-size:9pt}
.collection-report-title{display:flex;align-items:center;justify-content:space-between;margin:1mm 0 3mm;padding:3mm 5mm;border-radius:4mm;background:linear-gradient(100deg,#351047,#8136a5);color:#fff;font-family:Arial,sans-serif}
.collection-report-title small{font-size:7.5pt;letter-spacing:.14em}.collection-report-title b{font-size:14pt;letter-spacing:.05em}
.collection-meta,.collection-scope{display:flex;justify-content:space-between;gap:8mm;padding:3mm 0;border-bottom:1px solid #4d444f;font-size:9pt;text-transform:uppercase}
.collection-scope{border-bottom:0;color:#572274}
.client-collection-page table{width:100%;border-collapse:collapse;table-layout:fixed;color:#163f32;font-size:8.5pt}
.client-collection-page th,.client-collection-page td{box-sizing:border-box;border:1px solid #403942;padding:.55mm 1.4mm;height:5.2mm;vertical-align:middle;line-height:1.1}
.client-collection-page th{text-align:left;background:#f7f5f8;font-weight:800}
.client-collection-page th:nth-child(1){width:14%}.client-collection-page th:nth-child(2){width:29%}.client-collection-page th:nth-child(3),.client-collection-page th:nth-child(4){width:16%}.client-collection-page th:nth-child(5){width:10%}.client-collection-page th:nth-child(6){width:15%}
.client-collection-page td small{display:block;color:#765886;font-size:7pt}
.client-collection-page>footer{display:flex;justify-content:space-between;align-items:end;margin-top:auto;padding-top:7mm;color:#4f4652;font-size:8pt}
.client-collection-page>footer b{min-width:12mm;padding:2mm;background:#6f2a91;color:#fff;text-align:center}
@media(max-width:850px){.collection-sheet-fields{grid-template-columns:1fr}.client-collection-overlay{padding:8px}.client-collection-document{width:210mm;transform-origin:top left}.client-collection-page{margin:0}}
@media print{.client-collection-overlay>.evaluation-report-actions{display:none!important}.client-collection-document{display:block;width:210mm;margin:0;gap:0}.client-collection-page{width:210mm;height:297mm;min-height:297mm;max-height:297mm;margin:0;border:0;padding:8mm 10mm;box-shadow:none;overflow:hidden;break-after:page;page-break-after:always}.client-collection-page:last-child{break-after:auto;page-break-after:auto}}
.audit-reading-help{margin:0!important;padding:14px 16px!important;border-left:5px solid #7030a0;background:#f4e9f9!important;color:#3f1a51;font-size:13px;line-height:1.55}.audit-friendly-table{min-width:1180px!important;table-layout:auto!important}.audit-friendly-table th{white-space:normal!important;line-height:1.25}.audit-friendly-table td{min-width:110px;padding:10px 9px!important;vertical-align:top!important;line-height:1.45;overflow-wrap:anywhere}.audit-friendly-table td:first-child{min-width:120px;font-variant-numeric:tabular-nums}.audit-friendly-table td:nth-child(5){min-width:210px;font-weight:700;color:#4d1b68}.audit-friendly-table td:last-child{min-width:380px;background:#fcf9fd}.audit-glossary>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.audit-glossary p{display:grid;gap:5px;margin:0!important;padding:13px;border:1px solid #ddc4e9;border-radius:11px;background:#fbf7fd}.audit-glossary p b{color:#5b2177}.audit-glossary p span{color:#4d3b55;line-height:1.45}@media(max-width:700px){.audit-glossary>div{grid-template-columns:1fr}}@media print{.audit-friendly-table{min-width:0!important;font-size:7.5pt}.audit-friendly-table td{min-width:0!important;padding:5px!important}.audit-friendly-table td:last-child{min-width:0}.audit-glossary>div{grid-template-columns:repeat(2,1fr)}}
.sql-console-block>.admin-block{display:grid;gap:16px}.sql-console-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border-radius:15px;background:linear-gradient(110deg,#351047,#7832a0);color:#fff}.sql-console-intro small{font-size:10px;font-weight:900;letter-spacing:.12em}.sql-console-intro h2{margin:4px 0;font-size:25px}.sql-console-intro p{max-width:760px;margin:0;line-height:1.45}.sql-console-intro>strong{padding:9px 13px;border:1px solid #ffffff66;border-radius:999px;background:#ffffff19;white-space:nowrap}.sql-safety-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sql-safety-grid p{display:grid;gap:5px;margin:0;padding:13px;border:1px solid #d8bce5;border-radius:12px;background:#f8f1fb}.sql-safety-grid b{color:#5a2077}.sql-safety-grid span{font-size:12px;line-height:1.4}.sql-console-block form{display:grid;grid-template-columns:minmax(260px,34%) 1fr;gap:12px;padding:16px;border:1px solid #cda6df;border-radius:14px;background:#fcf9fd}.sql-console-block form label{display:grid;align-content:start;gap:6px;font-weight:800;color:#4a1c60}.sql-query-field{grid-column:1/-1}.sql-console-block textarea{box-sizing:border-box;width:100%;min-height:180px;padding:15px;border:1px solid #a967c8;border-radius:12px;background:#211729;color:#f5eafa;font:13px/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2;resize:vertical}.sql-console-block textarea:focus{outline:3px solid #b979d644}.sql-confirm-field{padding:12px;border:1px solid #db8d99;border-radius:11px;background:#fff2f4}.sql-confirm-field input{text-transform:uppercase}.sql-confirm-field small{font-weight:500}.sql-console-block form footer{display:flex;align-items:end;justify-content:flex-end;gap:10px}.sql-console-block form footer button{min-width:190px}.sql-tables{border:1px solid #d5b5e4;border-radius:12px;background:#faf5fc}.sql-tables summary{padding:12px 14px;cursor:pointer;font-weight:900;color:#552071}.sql-tables>div{display:flex;flex-wrap:wrap;gap:6px;padding:0 12px 12px}.sql-tables button{min-height:28px!important;padding:4px 9px!important;border-radius:7px!important;background:#eadbf2!important;color:#52206c!important;font:700 10px ui-monospace,monospace!important}.sql-result-summary,.sql-result-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-radius:11px;background:#e4f6ed;color:#11663e}.sql-result-error{background:#fff0f2;color:#9b2434}.sql-result-summary span,.sql-result-error span{font-size:12px}.sql-console-block .table-scroll{max-height:420px;overflow:auto;border:1px solid #d8bde5;border-radius:11px}.sql-console-block table{width:100%;min-width:760px;border-collapse:collapse}.sql-console-block th{position:sticky;z-index:1;top:0;background:#351047;color:#fff}.sql-console-block td{max-width:520px;padding:8px;vertical-align:top;overflow-wrap:anywhere}.sql-console-block td code{font-size:10px;white-space:pre-wrap}.sql-type-badge{display:inline-flex;padding:3px 7px;border-radius:999px;background:#eee0f5;color:#5b2077;font-size:9px;font-weight:900;text-transform:uppercase}.sql-type-badge.insert,.sql-type-badge.update{background:#e5f5ec;color:#167049}.sql-type-badge.delete,.sql-type-badge.structure{background:#ffe8eb;color:#a11e31}@media(max-width:760px){.sql-console-intro{align-items:flex-start;flex-direction:column}.sql-safety-grid,.sql-console-block form{grid-template-columns:1fr}.sql-console-block form footer{grid-column:1;flex-direction:column}.sql-console-block form footer button{width:100%}.sql-result-summary,.sql-result-error{align-items:flex-start;flex-direction:column}}
.financial-statements-report .financial-regulatory-notice{border-color:#d3a62e;background:#fff9e8}.financial-statements-report .financial-regulatory-notice h2{background:#9b7410}.financial-statement-block .financial-statement-total td{background:#e8d8f1!important;color:#351047;font-weight:900}.financial-statement-block td:last-child{text-align:right;font-variant-numeric:tabular-nums}.financial-equilibrium{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ddc9e7!important}.financial-equilibrium h2{grid-column:1/-1}.financial-equilibrium p{display:grid;gap:5px;margin:0!important;padding:14px;background:#faf6fc}.financial-equilibrium p span{font-size:10px;font-weight:800;text-transform:uppercase}.financial-equilibrium p b{font-size:17px}.financial-equilibrium.unbalanced{border-color:#c7283b!important}.financial-equilibrium.unbalanced h2{background:#b32236}.financial-equilibrium.balanced h2{background:#138354}.financial-result{display:flex;align-items:center;justify-content:space-between;background:#f5ebfa!important}.financial-result h2{flex:1}.financial-result strong{padding:12px 18px;font-size:18px}.financial-result .positive{color:#087b4a}.financial-result .negative{color:#b21f34}.financial-notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.financial-notes-grid p{display:grid;gap:6px;margin:0!important;padding:13px;border:1px solid #e1cfea;border-radius:10px;background:#fbf7fd}.financial-notes-grid p b{color:#552078}.financial-notes-grid p span{line-height:1.45}.financial-statements-report .evaluation-validation-grid>div:first-child{display:grid;gap:9px}.financial-statements-report .evaluation-validation-grid i{display:block;height:22px;border-bottom:1px solid #775b83}@media(max-width:650px){.financial-equilibrium,.financial-notes-grid{grid-template-columns:1fr}.financial-result{align-items:stretch;flex-direction:column}.financial-statement-block table{min-width:560px}}@media print{.financial-statements-report>header,.financial-statements-report>section{break-inside:avoid}.financial-statements-report .financial-regulatory-notice{break-after:page}.financial-statements-report .financial-result{break-after:page}.financial-statements-report{font-size:9pt}}
.accounting-report td:nth-child(5),.accounting-report td:nth-child(6),.accounting-report td:nth-child(7){text-align:right;font-variant-numeric:tabular-nums}.accounting-report table{min-width:850px}.accounting-unused-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:14px}.accounting-unused-grid span{display:grid;gap:3px;padding:10px;border:1px solid #dec9e8;border-radius:9px;background:#faf5fc;color:#70547d;font-size:10px}.accounting-unused-grid span b{color:#552078;font-size:11px}@media(max-width:700px){.accounting-unused-grid{grid-template-columns:1fr}}@media print{.accounting-report table{min-width:0!important}.accounting-report>section{break-inside:avoid}.accounting-unused-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.accounting-section-intro{padding:0 14px;color:#6f557b}.accounting-warning-row td{background:#fff1f2!important;color:#a51f32}.accounting-check-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.accounting-check-grid article{padding:13px;border:1px solid #d9c5e3;border-left:5px solid #178958;border-radius:10px;background:#f4fcf8}.accounting-check-grid article.alert{border-left-color:#c42b3c;background:#fff3f4}.accounting-check-grid article>b{display:inline-block;padding:4px 7px;border-radius:999px;background:#178958;color:#fff;font-size:9px}.accounting-check-grid article.alert>b{background:#c42b3c}.accounting-check-grid h3{margin:8px 0 4px;color:#351047;font-size:12px}.accounting-check-grid p{margin:0;font-size:10px}.accounting-close-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;padding:14px}.accounting-close-steps span{display:flex;align-items:center;gap:9px;padding:11px;border:1px solid #e0cce9;border-radius:10px;background:#fbf7fd;font-size:10px;line-height:1.4}.accounting-close-steps b{display:grid;flex:0 0 25px;place-items:center;height:25px;border-radius:50%;background:#7030a0;color:#fff}.accounting-executive-dashboard .evaluation-ratio-grid{padding:14px}@media(max-width:800px){.accounting-check-grid,.accounting-close-steps{grid-template-columns:1fr}}@media print{.accounting-check-grid,.accounting-close-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.accounting-check-grid article,.accounting-close-steps span{break-inside:avoid}}
.financial-cash-reconciliation{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:14px}.financial-cash-reconciliation p{display:grid;gap:5px;margin:0!important;padding:11px;border:1px solid #ddc9e7;border-radius:9px;background:#faf6fc}.financial-cash-reconciliation span{font-size:9px;font-weight:800;text-transform:uppercase}.financial-cash-reconciliation b{color:#552078;font-size:14px}.financial-ratio-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.financial-ratio-table p{display:grid;gap:6px;margin:0!important;padding:13px;border:1px solid #dec9e8;border-radius:11px;background:#faf6fc}.financial-ratio-table span{font-size:10px;font-weight:900;text-transform:uppercase}.financial-ratio-table b{color:#7030a0;font-size:20px}.financial-ratio-table small{color:#765f80;line-height:1.4}.financial-policies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px}.financial-policies article{padding:13px;border-left:4px solid #7030a0;border-radius:8px;background:#f8f0fb}.financial-policies b{color:#4d176c}.financial-policies p{margin:7px 0 0;line-height:1.5}.financial-readiness-report>p{padding:0 14px 14px}@media(max-width:760px){.financial-cash-reconciliation,.financial-ratio-table,.financial-policies{grid-template-columns:1fr}}@media print{.financial-cash-reconciliation{grid-template-columns:repeat(4,minmax(0,1fr))}.financial-ratio-table{grid-template-columns:repeat(3,minmax(0,1fr))}.financial-policies{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin-report-pagination{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin:15px auto 4px;padding:10px 14px;border:1px solid #d5b2e5;border-radius:14px;background:#f7effb;color:#51206d;box-shadow:0 6px 18px #4c176716}.admin-report-pagination>div{display:flex;align-items:center;gap:5px}.admin-report-pagination button{min-width:36px;min-height:34px;padding:6px 10px;border:0;border-radius:8px;background:#d7b9e6;color:#4b1765;font-weight:900;cursor:pointer}.admin-report-pagination button.active{background:#632184;color:#fff;box-shadow:0 3px 9px #4a155c44}.admin-report-pagination button:disabled{opacity:.45;cursor:default}.admin-report-pagination span{font-size:12px}.admin-report-pagination i{font-style:normal}@media(max-width:620px){.admin-report-pagination{gap:7px}.admin-report-pagination span{order:-1;width:100%;text-align:center}.admin-report-pagination>button{flex:1}}@media print{.admin-report-pagination{display:none!important}.audit-friendly-table tbody tr{display:table-row!important}}
.no-authorized-reports{grid-column:1/-1;margin:0;padding:18px;border:1px solid #d8b5e7;border-radius:12px;background:#f7effb;color:#57216f;font-weight:800;line-height:1.5}.administration-report-permissions{border-color:#8e55ac!important;background:#f6ebfa!important}.administration-report-permissions>.administration-section-right strong{color:#52206b}
.database-config-form{display:grid;gap:13px;margin-top:16px;padding:16px;border:1px solid #d69aa4;border-radius:13px;background:#fff7f8}.database-config-form h4{margin:0;color:#7d1f30}.database-config-form>div,.database-config-form fieldset{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;border:0}.database-config-form fieldset{grid-template-columns:repeat(2,minmax(0,1fr));padding:13px;border:1px solid #e2bdc4;border-radius:11px}.database-config-form legend{color:#7d1f30;font-weight:900}.database-config-form label{display:grid;gap:6px;color:#4a2757;font-weight:800}.database-config-form input{box-sizing:border-box;width:100%}.database-config-form>button{justify-self:end;min-width:340px;background:#a82035!important}@media(max-width:760px){.database-config-form>div,.database-config-form fieldset{grid-template-columns:1fr}.database-config-form>button{width:100%;min-width:0}}
.database-sql-manager{display:grid;gap:14px;padding:16px;border:1px solid #c5a0d7;border-radius:14px;background:#fbf7fd}.database-sql-manager>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.database-sql-manager small{color:#7b3a99;font-weight:900;letter-spacing:.1em}.database-sql-manager h3{margin:4px 0;color:#4d1767}.database-sql-manager header p{margin:0;color:#67516f}.database-sql-manager header>strong{padding:7px 10px;border-radius:999px;background:#16905a;color:#fff;font-size:10px}.database-sql-manager header>strong.warning{background:#c7283b}.database-sql-manager>[data-sql-file-details]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.database-sql-manager>[data-sql-file-details] span{display:grid;gap:5px;padding:12px;border:1px solid #dec9e7;border-radius:10px;background:#fff}.database-sql-manager>[data-sql-file-details] b{color:#61237d;font-size:10px;text-transform:uppercase}.database-sql-manager form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px}.database-sql-manager form label{display:grid;gap:6px;color:#4d275c;font-weight:800}.database-sql-manager form button{min-width:230px}.database-sql-warning{margin:0;padding:11px;border-left:4px solid #c7283b;background:#fff0f2;color:#842437}@media(max-width:800px){.database-sql-manager>header{align-items:flex-start;flex-direction:column}.database-sql-manager>[data-sql-file-details],.database-sql-manager form{grid-template-columns:1fr}.database-sql-manager form button{width:100%}}
.deployment-settings-block>.admin-block{display:grid;gap:16px}.deployment-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px;border-radius:15px;background:linear-gradient(110deg,#351047,#8136a5);color:#fff}.deployment-intro small{font-size:10px;font-weight:900;letter-spacing:.12em}.deployment-intro h2{margin:5px 0;font-size:24px}.deployment-intro p{max-width:780px;margin:0;line-height:1.5}.deployment-intro>strong{padding:9px 13px;border:1px solid #ffffff66;border-radius:999px;background:#ffffff18;white-space:nowrap}.deployment-status-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.deployment-status{display:grid;align-content:start;gap:5px;min-height:120px;padding:14px;border:1px solid #badfce;border-left:5px solid #16905a;border-radius:12px;background:#f1fbf6}.deployment-status.warning{border-color:#efc2c8;border-left-color:#c7283b;background:#fff3f4}.deployment-status>span{width:max-content;padding:3px 7px;border-radius:999px;background:#16905a;color:#fff;font-size:8px;font-weight:900}.deployment-status.warning>span{background:#c7283b}.deployment-status h3{margin:2px 0;color:#4b1a64;font-size:12px}.deployment-status b{font-size:15px;overflow-wrap:anywhere}.deployment-status small{color:#66546e;line-height:1.35}.deployment-form{display:grid;gap:12px;padding:16px;border:1px solid #d2afe2;border-radius:14px;background:#fbf7fd}.deployment-form fieldset{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:0}.deployment-form legend{grid-column:1/-1;color:#552071;font-weight:900}.deployment-form label{display:grid;gap:6px;color:#4a215d;font-weight:800}.deployment-form small{font-weight:500}.deployment-form button{justify-self:end;min-width:280px}.deployment-database-guide,.deployment-checklist{padding:16px;border:1px solid #d3b5e1;border-radius:14px;background:#faf5fc}.deployment-database-guide h3,.deployment-checklist h3{margin-top:0;color:#542071}.deployment-database-guide pre{overflow:auto;padding:15px;border-radius:10px;background:#211729;color:#f6ebfa;font:12px/1.6 ui-monospace,monospace}.deployment-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.deployment-checklist h3{grid-column:1/-1}.deployment-checklist label{padding:10px;border-radius:9px;background:#fff;color:#4b3156;font-weight:700}@media(max-width:1000px){.deployment-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.deployment-intro{align-items:flex-start;flex-direction:column}.deployment-status-grid,.deployment-form fieldset,.deployment-checklist{grid-template-columns:1fr}.deployment-checklist h3{grid-column:1}.deployment-form button{width:100%;min-width:0}}
.deployment-stage{position:relative;box-sizing:border-box;padding:18px;border:1px solid #d9bde6!important;border-radius:18px!important;background:linear-gradient(145deg,#fff 0%,#fbf6fd 100%)!important;box-shadow:0 8px 24px #3e0d5510}.deployment-stage>header{display:flex;align-items:center;gap:12px;margin:0 0 16px}.deployment-stage>header>span,.deployment-step-number{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,#421255,#8437a8);color:#fff;font-weight:900}.deployment-stage>header h3{margin:0;color:#4d1767;font-size:16px}.deployment-stage>header p{margin:3px 0 0;color:#705b79}.deployment-stage-diagnostic>header>span{width:auto;padding:0 12px}.deployment-database-guide{display:grid;grid-template-columns:minmax(250px,.7fr) minmax(0,1.8fr);gap:16px}.deployment-database-guide>header{grid-column:1/-1}.deployment-config-reference{align-self:stretch;padding:14px;border:1px solid #dfcce8;border-radius:13px;background:#f5ebf9}.deployment-config-reference h4{margin:0;color:#56206f}.deployment-config-reference pre{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}.database-config-form{margin:0!important}.database-config-form>button{background:linear-gradient(110deg,#4b1764,#8238a6)!important}.database-sql-manager>header{margin-bottom:0}.database-sql-manager>header>strong{margin-left:auto}.deployment-checklist>header{grid-column:1/-1}.deployment-checklist label{border:1px solid #eadcf0}.deployment-checklist label:has(input:checked){border-color:#94d3b3;background:#edf9f3;color:#14643e}.deployment-settings-block>.admin-block{gap:14px;overflow:visible}.deployment-settings-block input,.deployment-settings-block select,.deployment-settings-block button{min-height:40px}@media(max-width:950px){.deployment-database-guide{grid-template-columns:1fr}.deployment-database-guide>header{grid-column:1}.deployment-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.deployment-stage{padding:13px}.deployment-stage>header{align-items:flex-start}.deployment-intro h2{font-size:19px}.deployment-status-grid{grid-template-columns:1fr}.deployment-database-guide{display:grid}.database-config-form>div,.database-config-form fieldset{grid-template-columns:1fr}.database-sql-manager>header>strong{margin-left:0}.deployment-checklist{grid-template-columns:1fr}.deployment-checklist>header{grid-column:1}}
.deployment-database-guide .database-config-form{border-color:#d7bce3;background:#fff}.deployment-database-guide .database-config-form h4,.deployment-database-guide .database-config-form legend{color:#552071}

/* Administration unifiée : toutes les sections reprennent exactement la coque de Gérer les postes. */
.plus-sheet .administration-nature-groups{
  display:grid!important;
  gap:16px!important;
  padding:0!important;
  background:transparent!important;
}
.plus-sheet .administration-nature{
  --admin-color:#7030a0!important;
  --admin-dark:#351047!important;
  --admin-light:#f8f2fa!important;
  --admin-border:#d7b8e3!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #d7b8e3!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 8px 22px rgb(75 23 108 / 9%)!important;
}
.plus-sheet .administration-nature>header{
  min-height:54px!important;
  padding:11px 18px!important;
  border:0!important;
  border-radius:0!important;
  background:linear-gradient(110deg,#351047,#7030a0)!important;
  color:#fff!important;
}
.plus-sheet .administration-nature>header>span{
  display:grid!important;
  place-items:center!important;
  flex:0 0 36px!important;
  width:36px!important;
  height:36px!important;
  border:1px solid rgb(255 255 255 / 35%)!important;
  border-radius:10px!important;
  background:rgb(255 255 255 / 14%)!important;
}
.plus-sheet .administration-nature>header>div{text-align:left!important}
.plus-sheet .administration-nature>header h2{font-family:Calibri,"Segoe UI",sans-serif!important;font-size:16px!important;line-height:20px!important}
.plus-sheet .administration-nature>header p{display:block!important;margin:3px 0 0!important;color:#eadcf1!important;font-size:11px!important;line-height:15px!important}
.plus-sheet .administration-nature-content{
  display:grid!important;
  gap:12px!important;
  padding:14px!important;
  border:0!important;
  border-top:4px solid #7030a0!important;
  border-radius:0!important;
  background:#f8f2fa!important;
}
.plus-sheet .administration-nature-content>.plus-collapsible,
.plus-sheet .administration-nature-content>.open-agent-form{
  width:100%!important;
  margin:0!important;
  overflow:visible!important;
  border:0!important;
  border-radius:13px!important;
  background:transparent!important;
}
.plus-sheet .administration-nature-content .plus-section-button,
.plus-sheet .administration-nature-content>.open-agent-form{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  width:100%!important;
  height:52px!important;
  min-height:52px!important;
  padding:9px 16px!important;
  border:1px solid rgb(255 255 255 / 16%)!important;
  border-radius:12px!important;
  background:linear-gradient(110deg,#351047,#7030a0)!important;
  box-shadow:0 7px 18px rgb(75 23 108 / 15%)!important;
  color:#fff!important;
  font-family:Calibri,"Segoe UI",sans-serif!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:20px!important;
  letter-spacing:.035em!important;
  text-align:left!important;
}
.plus-sheet .administration-nature-content .plus-section-button>span{
  display:grid!important;
  place-items:center!important;
  flex:0 0 25px!important;
  width:25px!important;
  height:25px!important;
  border-radius:50%!important;
  background:rgb(255 255 255 / 18%)!important;
  color:#fff!important;
  font:700 18px/25px Arial,sans-serif!important;
}
.plus-sheet .administration-nature-content .plus-section-button[aria-expanded="true"]{
  border-radius:12px 12px 0 0!important;
  background:#351047!important;
  box-shadow:none!important;
}
.plus-sheet .administration-nature-content .plus-collapsible>:not(.plus-section-button){
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:20px!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  border:1px solid #d7b8e3!important;
  border-top:0!important;
  border-radius:0 0 13px 13px!important;
  background:#fff!important;
  box-shadow:0 9px 22px rgb(75 23 108 / 8%)!important;
}
.plus-sheet .administration-nature-content .plus-collapsible>:not(.plus-section-button)[hidden]{display:none!important}
.plus-sheet .administration-nature-content .job-profile-content{padding:20px!important}
.plus-sheet .administration-nature-content .admin-block>h2,
.plus-sheet .administration-nature-content .admin-block>h3{
  margin:0 0 12px!important;
  padding:10px 13px!important;
  border:0!important;
  border-radius:9px!important;
  background:#f1e5f7!important;
  color:#4b176c!important;
  font-family:Calibri,"Segoe UI",sans-serif!important;
  font-size:14px!important;
  text-align:left!important;
}
.plus-sheet .administration-nature-content table{display:table;width:100%!important;min-width:720px;max-width:none!important;margin-top:16px!important}
.plus-sheet .administration-nature-content .table-scroll,
.plus-sheet .administration-nature-content .client-table-wrap,
.plus-sheet .administration-nature-content .objective-list-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media(max-width:760px){
  .plus-sheet .administration-nature-groups{gap:10px!important}
  .plus-sheet .administration-nature{border-radius:12px!important}
  .plus-sheet .administration-nature>header{min-height:48px!important;padding:9px 12px!important}
  .plus-sheet .administration-nature>header>span{flex-basis:30px!important;width:30px!important;height:30px!important}
  .plus-sheet .administration-nature>header h2{font-size:13px!important}
  .plus-sheet .administration-nature>header p{font-size:9px!important}
  .plus-sheet .administration-nature-content{gap:8px!important;padding:8px!important}
  .plus-sheet .administration-nature-content .plus-section-button,.plus-sheet .administration-nature-content>.open-agent-form{height:46px!important;min-height:46px!important;padding:8px 11px!important;font-size:11px!important}
  .plus-sheet .administration-nature-content .plus-collapsible>:not(.plus-section-button){padding:12px!important}
}

/* Intérieur commun des sections Administration, calqué sur Gestion des postes. */
.plus-sheet .administration-nature-content .plus-collapsible>:not(.plus-section-button){color:#32233a!important}
.plus-sheet .administration-nature-content .plus-collapsible>:not(.plus-section-button)>p:first-child,
.plus-sheet .administration-nature-content .admin-block>.user-help:first-child,
.plus-sheet .administration-nature-content .admin-block>.valid:first-child,
.plus-sheet .administration-nature-content .admin-block>.invalid:first-child{
  box-sizing:border-box!important;
  width:100%!important;
  margin:0 0 15px!important;
  padding:12px 14px!important;
  border:1px solid #dfc9e9!important;
  border-left:5px solid #7030a0!important;
  border-radius:9px!important;
  background:#f4e8f9!important;
  color:#52196d!important;
  font-weight:800!important;
  line-height:1.5!important;
}
.plus-sheet .administration-nature-content form{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:16px!important;
  border:1px solid #d7b8e3!important;
  border-radius:11px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.plus-sheet .administration-nature-content form:not(.login-form){
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:12px;
  align-items:end;
}
.plus-sheet .administration-nature-content form>h2,
.plus-sheet .administration-nature-content form>h3,
.plus-sheet .administration-nature-content form>h4,
.plus-sheet .administration-nature-content form>p,
.plus-sheet .administration-nature-content form>fieldset,
.plus-sheet .administration-nature-content form>footer,
.plus-sheet .administration-nature-content form>[class$="-actions"]{
  grid-column:1/-1;
}
.plus-sheet .administration-nature-content form>h2,
.plus-sheet .administration-nature-content form>h3,
.plus-sheet .administration-nature-content form>h4{
  margin:0!important;
  padding:10px 13px!important;
  border:0!important;
  border-radius:9px!important;
  background:#f1e5f7!important;
  color:#4b176c!important;
  font-family:Calibri,"Segoe UI",sans-serif!important;
  font-size:14px!important;
  text-align:left!important;
}

/* Administration : un en-tête coloré ne doit pas contenir un second bandeau. */
.plus-sheet .administration-nature-content header h1,
.plus-sheet .administration-nature-content header h2,
.plus-sheet .administration-nature-content header h3,
.plus-sheet .administration-nature-content header h4{
  width:auto!important;
  max-width:none!important;
  margin:3px 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:inherit!important;
  text-align:left!important;
}
.plus-sheet .administration-nature-content form fieldset{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:12px!important;
  min-width:0!important;
  margin:0!important;
  padding:14px!important;
  border:1px solid #dcc6e7!important;
  border-radius:10px!important;
  background:#faf6fc!important;
}
.plus-sheet .administration-nature-content form legend{
  padding:0 8px!important;
  color:#4b176c!important;
  font-size:12px!important;
  font-weight:900!important;
}
.plus-sheet .administration-nature-content form label{
  display:grid!important;
  align-content:end!important;
  gap:6px!important;
  min-width:0!important;
  color:#4b176c!important;
  font-size:12px!important;
  font-weight:800!important;
}
.plus-sheet .administration-nature-content form label:has(>input[type="checkbox"]),
.plus-sheet .administration-nature-content form label:has(>input[type="radio"]){
  display:flex!important;
  align-items:center!important;
  align-content:center!important;
  gap:8px!important;
}
.plus-sheet .administration-nature-content input:not([type="checkbox"]):not([type="radio"]),
.plus-sheet .administration-nature-content select,
.plus-sheet .administration-nature-content textarea{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:40px!important;
  padding:8px 10px!important;
  border:1px solid #caa8da!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#2e1838!important;
  box-shadow:none!important;
}
.plus-sheet .administration-nature-content textarea{min-height:82px!important;resize:vertical}
.plus-sheet .administration-nature-content input:focus,
.plus-sheet .administration-nature-content select:focus,
.plus-sheet .administration-nature-content textarea:focus{
  border-color:#7030a0!important;
  outline:3px solid rgb(112 48 160 / 12%)!important;
}
.plus-sheet .administration-nature-content input[type="checkbox"],
.plus-sheet .administration-nature-content input[type="radio"]{
  flex:0 0 auto!important;
  width:17px!important;
  height:17px!important;
  min-height:0!important;
  accent-color:#7030a0;
}
.plus-sheet .administration-nature-content form button,
.plus-sheet .administration-nature-content td button,
.plus-sheet .administration-nature-content .secondary{
  min-height:38px!important;
  padding:7px 13px!important;
  border:0!important;
  border-radius:7px!important;
  background:#7030a0!important;
  color:#fff!important;
  font-family:Calibri,"Segoe UI",sans-serif!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.2!important;
  box-shadow:none!important;
}
.plus-sheet .administration-nature-content form>button[type="submit"]{justify-self:end;min-width:220px}
.plus-sheet .administration-nature-content button.secondary{background:#705d79!important}
.plus-sheet .administration-nature-content button.danger,
.plus-sheet .administration-nature-content td .danger{background:#c62828!important}
.plus-sheet .administration-nature-content button:disabled{cursor:not-allowed;opacity:.55}
.plus-sheet .administration-nature-content .job-permissions,
.plus-sheet .administration-nature-content .permission-grid,
.plus-sheet .administration-nature-content [class*="permission"]{
  box-sizing:border-box;
  border-radius:10px!important;
  background:#f8f2fa!important;
}
.plus-sheet .administration-nature-content table{
  width:100%!important;
  margin:18px 0 0!important;
  border-collapse:collapse!important;
  border:1px solid #351047!important;
  background:#fff!important;
}
.plus-sheet .administration-nature-content th,
.plus-sheet .administration-nature-content td{
  height:auto!important;
  padding:8px 9px!important;
  border:1px solid #d8c8df!important;
  font-family:Calibri,"Segoe UI",sans-serif!important;
  font-size:11px!important;
  line-height:1.35!important;
  vertical-align:middle!important;
}
.plus-sheet .administration-nature-content th{
  background:#351047!important;
  color:#fff!important;
  font-weight:900!important;
  text-align:center!important;
}
.plus-sheet .administration-nature-content td{background:#fff!important;color:#2f2036!important}
.plus-sheet .administration-nature-content tbody tr:nth-child(even) td{background:#f5ecf9!important}
.plus-sheet .administration-nature-content tbody tr:hover td{background:#ecdcf3!important}
.plus-sheet .administration-nature-content .table-general-search,
.plus-sheet .administration-nature-content [class*="-filters"]{
  box-sizing:border-box!important;
  max-width:100%!important;
  margin:12px 0!important;
  padding:12px!important;
  border:1px solid #d7b8e3!important;
  border-radius:10px!important;
  background:#f8f2fa!important;
}
@media(max-width:760px){
  .plus-sheet .administration-nature-content form:not(.login-form),
  .plus-sheet .administration-nature-content form fieldset{grid-template-columns:minmax(0,1fr)!important;padding:11px!important}
  .plus-sheet .administration-nature-content form>button[type="submit"]{justify-self:stretch;width:100%;min-width:0}
  .plus-sheet .administration-nature-content th,.plus-sheet .administration-nature-content td{padding:7px!important;font-size:10px!important}
}

/* Déploiement minimal : un formulaire, un bouton, deux fichiers. */
.simple-deployment{display:grid;gap:16px;width:100%;box-sizing:border-box}
.simple-deployment>header{padding:18px 20px;border-radius:14px;background:linear-gradient(110deg,#351047,#7030a0);color:#fff}
.simple-deployment>header small{font-size:10px;font-weight:900;letter-spacing:.1em}
.simple-deployment>header h2{margin:5px 0!important;padding:0!important;background:transparent!important;color:#fff!important;font-size:21px!important;text-align:left!important}
.simple-deployment>header p{margin:0;line-height:1.5}
.plus-sheet .simple-deployment .database-config-form{display:grid!important;grid-template-columns:1fr!important;gap:14px!important;margin:0!important;padding:18px!important;border:1px solid #d7b8e3!important;border-radius:13px!important;background:#fff!important}
.plus-sheet .simple-deployment .database-config-form fieldset{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.plus-sheet .simple-deployment .database-config-form fieldset:first-child{grid-template-columns:1fr!important}
.simple-deployment-result{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:12px 14px;border:1px solid #d8c0e4;border-radius:10px;background:#f4e8f9;color:#4b176c}
.simple-deployment-result b{margin-right:auto}.simple-deployment-result span{padding:5px 9px;border-radius:999px;background:#fff;font:700 11px ui-monospace,monospace}
.plus-sheet .simple-deployment .database-config-form>button{justify-self:end!important;min-width:300px!important;background:linear-gradient(110deg,#351047,#7030a0)!important}
@media(max-width:800px){.plus-sheet .simple-deployment .database-config-form fieldset{grid-template-columns:1fr!important}.plus-sheet .simple-deployment .database-config-form>button{justify-self:stretch!important;width:100%!important;min-width:0!important}.simple-deployment-result{align-items:flex-start;flex-direction:column}.simple-deployment-result b{margin-right:0}}
.carnet-movement-table .carnet-entry-column{background:#dff5e8!important;color:#087a3b!important;font-weight:800}.carnet-movement-table .carnet-withdrawal-column{background:#fde3e6!important;color:#b21f2d!important;font-weight:800}.carnet-movement-table thead .carnet-entry-column{background:#159557!important;color:#fff!important}.carnet-movement-table thead .carnet-withdrawal-column{background:#c62835!important;color:#fff!important}@media print{.carnet-movement-table .carnet-entry-column{background:#dff5e8!important;color:#087a3b!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.carnet-movement-table .carnet-withdrawal-column{background:#fde3e6!important;color:#b21f2d!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.carnet-movement-table thead .carnet-entry-column{background:#159557!important;color:#fff!important}.carnet-movement-table thead .carnet-withdrawal-column{background:#c62835!important;color:#fff!important}}
.carnet-movement-table tfoot .carnet-movement-total th{border-top:3px solid #572078;background:#f1e5f6;color:#351143;font-weight:900;white-space:nowrap}.carnet-movement-table tfoot .carnet-movement-total .carnet-entry-column{background:#bcebcf!important;color:#05662f!important}.carnet-movement-table tfoot .carnet-movement-total .carnet-withdrawal-column{background:#f7c4ca!important;color:#9d1522!important}
.administration-nature>header[role="button"]::after{display:none!important}.administration-nature>header .administration-nature-toggle{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;min-height:38px!important;margin-left:auto!important;padding:0!important;border:1px solid rgb(255 255 255 / 45%)!important;border-radius:50%!important;background:rgb(255 255 255 / 14%)!important;color:#fff!important;font-size:25px!important;font-weight:900!important;line-height:1!important;cursor:pointer!important;box-shadow:none!important}.administration-nature>header .administration-nature-toggle:hover,.administration-nature>header .administration-nature-toggle:focus-visible{background:rgb(255 255 255 / 28%)!important;outline:2px solid #fff!important;outline-offset:2px}.administration-nature>header.collapsed .administration-nature-toggle{background:rgb(255 255 255 / 20%)!important}@media(max-width:700px){.administration-nature>header .administration-nature-toggle{flex-basis:30px!important;width:30px!important;height:30px!important;min-height:30px!important;font-size:20px!important}}
.plus-sheet .administration-nature>.administration-nature-content[hidden]{display:none!important}
