.conditional-format-modal .modal-dialog { width:min(980px,calc(100vw - 32px)); max-width:980px; }
.conditional-format-modal .modal-body { overflow-x:hidden; overflow-y:auto; }
.conditional-format-list { display:grid; gap:8px; margin-bottom:8px; }
.conditional-format-rule { padding:12px; border:1px solid var(--color-border-soft); border-radius:var(--radius-md); background:var(--color-surface); }
.conditional-format-line { display:flex; align-items:center; gap:8px; }
.conditional-format-line-primary { width:100%; min-width:0; }
.conditional-format-line-secondary { width:max-content; max-width:100%; margin-top:8px; }
.conditional-format-remove { display:inline-flex; width:30px; height:30px; padding:0; border:0; align-items:center; justify-content:center; background:transparent; color:var(--color-danger); cursor:pointer; }
.conditional-format-target { width:130px; margin:0; }
.conditional-format-row-target { display:inline-flex; flex:0 0 auto; align-items:center; gap:5px; white-space:nowrap; }
.conditional-format-field-label { width:160px; min-width:120px; margin:0; flex:0 1 160px; }
.conditional-format-formula { width:0; min-width:180px; margin:0; flex:1 1 0; }
.conditional-format-formula > input { width:100%; }
.conditional-format-stop { display:inline-flex; align-items:center; gap:6px; margin:0; white-space:nowrap; }
.conditional-format-error { margin-top:10px; color:var(--color-danger); }
@media (max-width:700px) {
  .conditional-format-modal .modal-dialog { width:calc(100vw - 16px); }
  .conditional-format-line { align-items:stretch; flex-wrap:wrap; }
  .conditional-format-line-secondary { width:100%; }
  .conditional-format-formula { width:100%; min-width:180px; flex-basis:100%; }
  .conditional-format-style { max-width:100%; overflow-x:auto; }
}

.conditional-format-help-popup {
  position: fixed;
  inset: auto;
  margin: 0;
  box-sizing: border-box;
  width: min(420px, calc(100vw - 16px));
  max-height: calc(100vh - 16px);
  overflow: auto;
  padding: 12px;
  background: var(--color-surface);
  color: var(--color-text);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-control);
  font-family: var(--application-font);
  font-size: var(--font-size-base);
}
.conditional-format-help-popup p { margin: 8px 0 0; }
.conditional-format-help-popup ul { margin: 8px 0 0; padding-left: 20px; }
