/* LE CERVEAU v98 — score d’exploitation temps réel */
.operation-score-card {
  --score-color: var(--ginger);
  margin: 14px 0 16px;
  padding: 20px 22px 15px;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--prune-night) 18%, white);
  border-radius: 22px;
  color: var(--prune-night);
  background: linear-gradient(135deg, rgba(255,255,255,.96), var(--prune-mist-soft));
  box-shadow: 0 15px 34px rgba(55,34,63,.11);
}
.operation-score-card > header { height: auto; padding: 0 0 13px; display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; background: transparent; box-shadow: none; }
.operation-score-card h3 { margin: 3px 0 0; color: var(--prune-night); font-size: 22px; }
.operation-live { padding: 7px 10px; display: inline-flex; align-items: center; gap: 6px; flex: 0 0 auto; border: 1px solid #cbe3d7; border-radius: 999px; color: #27755e; background: #f3fbf7; font-size: 9px; font-weight: 900; }
.operation-live i { width: 7px; height: 7px; border-radius: 50%; background: #31a77f; box-shadow: 0 0 0 4px rgba(49,167,127,.12); }
.operation-score-body { display: grid; grid-template-columns: 168px 190px minmax(0,1fr); align-items: center; gap: 20px; }
.operation-gauge { width: 156px; height: 156px; padding: 17px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--score-color) calc(var(--operation-score) * 1%), rgba(55,34,63,.13) 0); box-shadow: 0 10px 28px rgba(55,34,63,.15); }
.operation-gauge > div { width: 100%; height: 100%; display: flex; align-items: baseline; justify-content: center; border-radius: 50%; color: #fff; background: var(--prune-night); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.operation-gauge strong { align-self: center; font-size: 48px; line-height: 1; letter-spacing: -3px; }
.operation-gauge span { align-self: center; margin: 26px 0 0 3px; font-size: 12px; }
.operation-state { min-width: 0; display: grid; gap: 7px; }
.operation-state > small { color: var(--muted); font-size: 11px; }
.operation-state > strong { display: flex; align-items: center; gap: 9px; color: var(--prune-night); font-size: 20px; }
.operation-state > strong i { width: 25px; height: 25px; display: grid; place-items: center; border: 2px solid currentColor; border-radius: 50%; color: #329b7c; font-size: 12px; font-style: normal; }
.operation-state p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.operation-factors { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.operation-factor { min-width: 0; min-height: 60px; padding: 9px 10px; display: grid; grid-template-columns: 21px minmax(0,1fr); align-items: center; gap: 2px 7px; border: 1px solid rgba(55,34,63,.12); border-radius: 12px; color: var(--prune-night); background: rgba(255,255,255,.76); text-align: left; }
.operation-factor:hover { border-color: var(--ginger); background: #fff; transform: translateY(-1px); }
.operation-factor > span { grid-row: 1/3; width: 21px; height: 21px; display: grid; place-items: center; border-radius: 50%; color: var(--prune-night); background: var(--ginger); font-size: 10px; font-weight: 950; }
.operation-factor strong,.operation-factor small { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.operation-factor strong { font-size: 10px; }
.operation-factor small { color: var(--muted); font-size: 8px; }
.operation-factor.needs-action > span { color: #8c332d; background: #ffd9d5; }
.operation-score-card > footer { margin-top: 12px; padding-top: 10px; border-top: 1px solid rgba(55,34,63,.1); color: var(--muted); font-size: 8px; }
.operation-score-card.score-controlled { --score-color: #aee747; }
.operation-score-card.score-watch { --score-color: #f0b848; }
.operation-score-card.score-priority { --score-color: #ef7169; }
.operation-score-card.score-watch .operation-state > strong i { color: #c88a20; }
.operation-score-card.score-priority .operation-state > strong i { color: #d64c45; }

@media(max-width:1050px){
  .operation-score-body { grid-template-columns: 150px minmax(150px,.7fr) minmax(280px,1.4fr); gap: 14px; }
  .operation-gauge { width: 138px; height: 138px; padding: 15px; }
  .operation-gauge strong { font-size: 41px; }
  .operation-factors { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px){
  .operation-score-card { padding: 17px 16px 13px; border-radius: 18px; }
  .operation-score-card > header { align-items: center; }
  .operation-score-card h3 { font-size: 18px; }
  .operation-score-body { grid-template-columns: 124px minmax(0,1fr); gap: 13px; }
  .operation-gauge { width: 118px; height: 118px; padding: 12px; }
  .operation-gauge strong { font-size: 35px; letter-spacing: -2px; }
  .operation-gauge span { margin-top: 20px; font-size: 10px; }
  .operation-state > strong { font-size: 17px; }
  .operation-factors { grid-column: 1/-1; grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:430px){
  .operation-live { padding: 6px 8px; font-size: 8px; }
  .operation-score-body { grid-template-columns: 108px minmax(0,1fr); }
  .operation-gauge { width: 102px; height: 102px; padding: 10px; }
  .operation-gauge strong { font-size: 31px; }
  .operation-factor { min-height: 56px; padding: 8px; grid-template-columns: 19px minmax(0,1fr); }
  .operation-factor > span { width: 19px; height: 19px; }
}
@media(prefers-reduced-motion:reduce){.operation-factor{transition:none}}
