/* CIOne 7.1.1 — ações de contratos em modal único e listagem estável. */
:root {
  --cione-contract-surface: #fff;
  --cione-contract-canvas: #f6f8fb;
  --cione-contract-border: #dfe6ef;
  --cione-contract-muted: #5f6f84;
  --cione-contract-text: #17243a;
  --cione-contract-shadow: 0 28px 80px rgba(15,35,65,.22);
}

.cione-contract-list-panel {
  background: var(--cione-contract-surface) !important;
  border-color: var(--cione-contract-border) !important;
  box-shadow: 0 8px 24px rgba(15,35,65,.05) !important;
}
.cione-contract-list-panel .fx-ti-table-wrap {
  background: var(--cione-contract-surface) !important;
  border: 1px solid var(--cione-contract-border) !important;
  border-radius: 14px !important;
  overflow: auto !important;
}
.cione-contract-list-panel .fx-ti-table tbody tr { background: var(--cione-contract-surface) !important; }
.cione-contract-list-panel .fx-ti-table tbody tr:hover { background: #f8fbff !important; }
.cione-contract-list-panel .fx-ti-table td,
.cione-contract-list-panel .fx-ti-table th { padding-top: 14px !important; padding-bottom: 14px !important; vertical-align: middle !important; }
.cione-contract-list-panel .fx-ti-contract-object { max-width: 36rem; line-height: 1.45 !important; }
.cione-contract-actions { display:inline-flex !important; align-items:center !important; justify-content:flex-end !important; gap:8px !important; white-space:nowrap; }

/* Regra defensiva: formulários de edição/alteração nunca participam do fluxo da página. */
.cione-contract-workspace[hidden],
.cione-contract-workspace[aria-hidden="true"]:not(.is-open) {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body > .cione-contract-workspace.is-open {
  position: fixed !important;
  inset: 0 !important;
  z-index: 100100 !important;
  display: grid !important;
  place-items: center !important;
  width: 100vw !important;
  height: 100dvh !important;
  padding: clamp(12px, 3vw, 32px) !important;
  overflow: hidden !important;
  background: transparent !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
body > .cione-contract-workspace .cione-contract-drawer__backdrop {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background: rgba(26,39,58,.34) !important;
  backdrop-filter: blur(3px) !important;
}
body > .cione-contract-workspace .cione-contract-drawer__dialog {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-rows: auto minmax(0,1fr) !important;
  width: min(780px, 100%) !important;
  max-width: 780px !important;
  height: min(88dvh, 920px) !important;
  max-height: calc(100dvh - clamp(24px, 6vw, 64px)) !important;
  margin: 0 !important;
  border: 1px solid var(--cione-contract-border) !important;
  border-radius: 18px !important;
  background: var(--cione-contract-surface) !important;
  color: var(--cione-contract-text) !important;
  box-shadow: var(--cione-contract-shadow) !important;
  overflow: hidden !important;
  animation: cione-contract-modal-in .16s ease-out both;
}
body > .cione-contract-workspace .cione-contract-drawer__header {
  padding: 18px 22px !important;
  border-bottom: 1px solid var(--cione-contract-border) !important;
  background: var(--cione-contract-surface) !important;
}
body > .cione-contract-workspace .cione-contract-drawer__header small {
  display:block; margin-bottom:4px; color:#1568c9 !important; font-size:11px !important; font-weight:700 !important; letter-spacing:.06em; text-transform:uppercase;
}
body > .cione-contract-workspace .cione-contract-drawer__header h2 { margin:0 !important; color:var(--cione-contract-text) !important; font-size:clamp(20px,2.4vw,25px) !important; line-height:1.2 !important; }
body > .cione-contract-workspace .cione-contract-drawer__header p { margin:5px 0 0 !important; color:var(--cione-contract-muted) !important; line-height:1.45 !important; }
.cione-contract-drawer__form { min-height:0; display:grid; grid-template-rows:minmax(0,1fr) auto; overflow:hidden; }
body > .cione-contract-workspace .cione-contract-drawer__body,
body > .cione-contract-workspace .cione-contract-edit-body { min-height:0 !important; padding:20px 22px 26px !important; overflow:auto !important; background:var(--cione-contract-canvas) !important; }
.cione-contract-form-section { min-width:0; margin:0 0 14px; padding:16px; border:1px solid var(--cione-contract-border); border-radius:13px; background:var(--cione-contract-surface); }
.cione-contract-form-section legend,
.cione-contract-form-subsection { padding:0 6px; color:var(--cione-contract-text); font-size:14px; font-weight:700; }
.cione-contract-form-grid,
body > .cione-contract-workspace .cione-contract-form { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:15px !important; }
.cione-contract-form-grid label,
body > .cione-contract-workspace .cione-contract-form label { min-width:0; margin:0 !important; color:var(--cione-contract-text) !important; font-weight:600 !important; }
.cione-contract-form-grid input,.cione-contract-form-grid select,.cione-contract-form-grid textarea,
body > .cione-contract-workspace .cione-contract-form input,
body > .cione-contract-workspace .cione-contract-form select,
body > .cione-contract-workspace .cione-contract-form textarea { width:100% !important; min-height:44px !important; margin-top:7px !important; border:1px solid #cfd9e6 !important; border-radius:10px !important; background:#fff !important; color:var(--cione-contract-text) !important; box-shadow:none !important; }
.cione-contract-form-grid textarea,
body > .cione-contract-workspace .cione-contract-form textarea { min-height:104px !important; resize:vertical; }
.cione-contract-form-grid input:focus,.cione-contract-form-grid select:focus,.cione-contract-form-grid textarea:focus,
body > .cione-contract-workspace .cione-contract-form input:focus,
body > .cione-contract-workspace .cione-contract-form select:focus,
body > .cione-contract-workspace .cione-contract-form textarea:focus { border-color:#3387e8 !important; outline:3px solid rgba(51,135,232,.18) !important; outline-offset:1px !important; }
.cione-contract-field-wide,
body > .cione-contract-workspace .cione-contract-form .fx-ti-wide-field,
body > .cione-contract-workspace .cione-contract-form .fx-ti-form-subsection,
body > .cione-contract-workspace .cione-contract-form .fx-ti-form-actions { grid-column:1 / -1 !important; }
body > .cione-contract-workspace .cione-contract-form .fx-ti-form-subsection { margin:4px 0 -2px !important; padding:14px 0 0 !important; border-top:1px solid var(--cione-contract-border) !important; }
.cione-contract-drawer__footer,
body > .cione-contract-workspace .cione-contract-form-actions { position:sticky !important; bottom:0 !important; z-index:3 !important; display:flex !important; justify-content:flex-end !important; gap:10px !important; margin:0 !important; padding:13px 22px !important; border-top:1px solid var(--cione-contract-border) !important; background:rgba(255,255,255,.97) !important; box-shadow:0 -8px 24px rgba(15,35,65,.05) !important; backdrop-filter:blur(8px); }
@keyframes cione-contract-modal-in { from { transform:translateY(10px) scale(.99); opacity:.72; } to { transform:none; opacity:1; } }
@media (max-width: 720px) {
  body > .cione-contract-workspace.is-open { padding:0 !important; }
  body > .cione-contract-workspace .cione-contract-drawer__dialog { width:100vw !important; max-width:100vw !important; height:100dvh !important; max-height:100dvh !important; border:0 !important; border-radius:0 !important; }
  .cione-contract-form-grid,body > .cione-contract-workspace .cione-contract-form { grid-template-columns:minmax(0,1fr) !important; }
  .cione-contract-field-wide,body > .cione-contract-workspace .cione-contract-form .fx-ti-wide-field,body > .cione-contract-workspace .cione-contract-form .fx-ti-form-subsection,body > .cione-contract-workspace .cione-contract-form .fx-ti-form-actions { grid-column:1 !important; }
  body > .cione-contract-workspace .cione-contract-drawer__header,body > .cione-contract-workspace .cione-contract-drawer__body,.cione-contract-drawer__footer,body > .cione-contract-workspace .cione-contract-form-actions { padding-left:16px !important; padding-right:16px !important; }
}
@media (prefers-reduced-motion:reduce) { body > .cione-contract-workspace .cione-contract-drawer__dialog { animation:none !important; } }
body.fx-ti-modal-theme-dark > .cione-contract-workspace .cione-contract-drawer__dialog,
body.fx-ti-modal-theme-dark > .cione-contract-workspace .cione-contract-drawer__header,
body.fx-ti-modal-theme-dark > .cione-contract-workspace .cione-contract-form-section,
body.fx-ti-modal-theme-dark > .cione-contract-workspace .cione-contract-drawer__footer { background:#172235 !important; color:#eef4fb !important; border-color:#34445b !important; }
body.fx-ti-modal-theme-dark > .cione-contract-workspace .cione-contract-drawer__body { background:#101a2a !important; }
body.fx-ti-modal-theme-dark > .cione-contract-workspace :is(h2,legend,label,.fx-ti-form-subsection) { color:#eef4fb !important; }
body.fx-ti-modal-theme-dark > .cione-contract-workspace :is(p,small) { color:#b7c4d6 !important; }
body.fx-ti-modal-theme-dark > .cione-contract-workspace :is(input,select,textarea) { background:#1d2a3f !important; color:#f4f7fb !important; border-color:#465872 !important; }
