/* Angebots-Sets — portfolio editor surface (table, then a card over the list). */

.dealdesk-quote-presets {
  color: var(--fg, #F0F0F0);
  background: var(--surface, #1B201B);
  border: 1px solid var(--strong, #ffffff3d);
  border-radius: 8px;
  padding: 16px;
  font: 400 14px/1.45 Geist, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

html[data-theme="dark"] body.dealdesk-app-shell #dd-section-templates .dealdesk-quote-presets {
  color: var(--fg, #F0F0F0);
  background: var(--surface, #1B201B);
}

.dealdesk-quote-presets__toolbar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 8px;
}

.dealdesk-quote-presets h2,
.dealdesk-quote-presets-dialog h2,
.dealdesk-quote-presets-dialog .dealdesk-h2 {
  margin: 0;
  color: var(--fg, #F0F0F0);
  font: 600 18px/1.25 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets__hint,
.dealdesk-quote-presets-dialog .dealdesk-file-hint,
.dealdesk-quote-presets-dialog .dealdesk-field__label {
  margin: 4px 0 0;
  color: var(--muted, #A7ADA7);
  font: 400 14px/1.45 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets table,
.dealdesk-quote-presets__card table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px;
  color: var(--fg, #F0F0F0);
  font: 400 14px/1.45 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets th,
.dealdesk-quote-presets td,
.dealdesk-quote-presets__card th,
.dealdesk-quote-presets__card td {
  border-bottom: 1px solid var(--border, #ffffff24);
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets th,
.dealdesk-quote-presets__card th,
.dealdesk-quote-presets__field > span {
  font: 500 11px/1.3 "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: var(--muted, #A7ADA7);
}

.dealdesk-quote-presets__meta {
  margin: 4px 0 0;
  color: var(--muted, #A7ADA7);
  font: 500 12px/1.3 "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

.dealdesk-quote-presets tr.is-selected {
  box-shadow: inset 2px 0 0 var(--signal, #9EFF3D);
}

.dealdesk-quote-presets__open {
  border: 0;
  background: transparent;
  color: var(--fg, #F0F0F0);
  font: 500 13px/1.2 Geist, system-ui, sans-serif;
  cursor: pointer;
  padding: 0;
}

.dealdesk-quote-presets__open:hover {
  color: var(--signal, #9EFF3D);
}

.dealdesk-quote-presets__open:focus-visible,
.dealdesk-quote-presets__btn:focus-visible,
.dealdesk-quote-presets :is(input, textarea):focus-visible,
.dealdesk-quote-presets-dialog :is(input, textarea, select, button):focus-visible {
  outline: 2px solid var(--signal, #9EFF3D);
  outline-offset: 2px;
}

.dealdesk-quote-presets-backdrop {
  position: fixed;
  inset: 0;
  z-index: 80;
  background: #0006;
}

.dealdesk-quote-presets-dialog {
  position: fixed;
  inset: 0;
  z-index: 81;
  display: grid;
  place-items: center;
  padding: 32px;
  pointer-events: none;
  color: var(--fg, #F0F0F0);
  font: 400 14px/1.45 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets__card {
  pointer-events: auto;
  width: min(72rem, 100%);
  max-height: min(90vh, 52rem);
  overflow: auto;
  box-sizing: border-box;
  background: var(--surface, #1B201B);
  border: 1px solid var(--strong, #ffffff3d);
  border-radius: 8px;
  padding: 16px;
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets__card-head,
header.dealdesk-quote-presets__card-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  margin: 0 0 16px;
  padding: 0;
  position: static;
  z-index: auto;
  background: transparent;
}

.dealdesk-quote-presets__field,
.dealdesk-quote-presets-dialog .dealdesk-field {
  display: grid;
  gap: 8px;
  margin-top: 16px;
  min-width: 0;
}

.dealdesk-quote-presets :is(input:not([type="checkbox"]), textarea, select),
.dealdesk-quote-presets-dialog :is(input:not([type="checkbox"]), textarea, select) {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  border: 1px solid var(--border, #ffffff24);
  border-radius: 4px;
  padding: 8px 12px;
  color: var(--fg, #F0F0F0);
  background: var(--bg, #090B09);
  font: 400 14px/1.4 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets__money {
  display: flex;
  align-items: center;
  min-width: 8rem;
  border: 1px solid var(--border, #ffffff24);
  border-radius: 4px;
  background: var(--bg, #090B09);
}

.dealdesk-quote-presets__money input {
  width: auto;
  flex: 1;
  min-width: 0;
  border: 0;
  background: transparent;
}

.dealdesk-quote-presets__money input:focus-visible {
  outline: none;
}

.dealdesk-quote-presets__money:focus-within {
  outline: 2px solid var(--signal, #9EFF3D);
  outline-offset: 2px;
}

.dealdesk-quote-presets__currency {
  flex: none;
  padding: 0 12px;
  color: var(--muted, #A7ADA7);
  font: 500 11px/1 "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .07em;
}

.dealdesk-quote-presets__group {
  margin-top: 16px;
  padding: 12px;
  border: 1px solid var(--border, #ffffff24);
  border-radius: 8px;
  background: var(--bg, #090B09);
}

.dealdesk-quote-presets__group-settings {
  padding-bottom: 12px;
  border-bottom: 1px solid var(--border, #ffffff24);
}

.dealdesk-quote-presets__kicker,
.dealdesk-quote-presets__subhead {
  margin: 0 0 8px;
  color: var(--fg, #F0F0F0);
  font: 600 13px/1.3 Geist, system-ui, sans-serif;
  letter-spacing: 0;
}

.dealdesk-quote-presets-dialog h3.dealdesk-quote-presets__kicker--line,
.dealdesk-quote-presets__kicker--line {
  color: var(--muted, #A7ADA7);
  font: 500 11px/1.3 "Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.dealdesk-quote-presets__line {
  margin-top: 12px;
  padding: 12px;
  border: 1px solid var(--strong, #ffffff3d);
  border-radius: 8px;
  background: var(--surface, #1B201B);
}

.dealdesk-quote-presets__line-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.dealdesk-quote-presets__line-grid .dealdesk-quote-presets__field {
  margin-top: 0;
}

@media (max-width: 720px) {
  .dealdesk-quote-presets__line-grid {
    grid-template-columns: 1fr;
  }
}

.dealdesk-quote-presets__field--wide {
  grid-column: 1 / -1;
}

.dealdesk-quote-presets__checks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
  margin-top: 12px;
}

.dealdesk-quote-presets__checks label {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 32px;
  color: var(--fg, #F0F0F0);
  font: 500 13px/1.3 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets__checks input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--signal, #9EFF3D);
}

.dealdesk-quote-presets :is(input, textarea, select):disabled,
.dealdesk-quote-presets-dialog :is(input, textarea, select):disabled {
  opacity: 0.45;
}

.dealdesk-quote-presets__field[hidden] {
  display: none;
}

.dealdesk-quote-presets__actions,
.dealdesk-quote-presets-dialog .dealdesk-modal__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 16px;
}

.dealdesk-quote-presets__btn,
.dealdesk-quote-presets-dialog .dealdesk-btn,
.dealdesk-quote-presets-dialog .dealdesk-btn:hover:not(:disabled),
.dealdesk-quote-presets-dialog .dealdesk-btn:focus-visible:not(:disabled) {
  box-sizing: border-box;
  min-height: 32px;
  border: 1px solid var(--strong, #ffffff3d);
  border-radius: 4px;
  background: var(--surface, #1B201B);
  color: var(--fg, #F0F0F0);
  padding: 0 12px;
  cursor: pointer;
  font: 500 13px/32px Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets__btn--primary,
.dealdesk-quote-presets-dialog .dealdesk-btn.dealdesk-btn--primary,
.dealdesk-quote-presets-dialog .dealdesk-btn.dealdesk-btn--primary:hover:not(:disabled),
.dealdesk-quote-presets-dialog .dealdesk-btn.dealdesk-btn--primary:focus-visible:not(:disabled) {
  background: var(--signal, #9EFF3D);
  border-color: var(--signal, #9EFF3D);
  color: var(--bg, #090B09);
}

.dealdesk-quote-presets__btn--danger {
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets-dialog fieldset {
  margin: 16px 0 0;
  padding: 12px;
  border: 1px solid var(--border, #ffffff24);
  border-radius: 8px;
}

.dealdesk-quote-presets-dialog legend,
.dealdesk-quote-presets-dialog label,
.dealdesk-quote-presets-dialog p {
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets-dialog legend {
  padding: 0 8px;
  font: 500 13px/1.3 Geist, system-ui, sans-serif;
}

/* Vorlagen section: one design-system surface, including the page title. */
html[data-theme="dark"] body.dealdesk-app-shell #dd-section-templates,
#dd-section-templates.dealdesk-panel {
  --text-head: var(--fg, #F0F0F0);
  --text: var(--fg, #F0F0F0);
  color: var(--fg, #F0F0F0);
  background: var(--bg, #090B09);
  border: 1px solid var(--border, #ffffff24);
  border-radius: 8px;
  font: 400 14px/1.45 Geist, system-ui, sans-serif;
}

#dd-section-templates .dealdesk-section-head {
  display: grid;
  gap: 4px;
  align-items: start;
  justify-items: start;
  margin: 0 0 16px;
}

#dd-section-templates .dealdesk-section-head h2,
#dd-section-templates h2,
#dd-section-templates h3 {
  margin: 0;
  color: var(--fg, #F0F0F0);
  font: 600 18px/1.25 Geist, system-ui, sans-serif;
  letter-spacing: 0;
}

#dd-section-templates .dealdesk-empty,
#dd-section-templates .dealdesk-file-hint {
  color: var(--muted, #A7ADA7);
  background: transparent;
}

#dd-section-templates .dealdesk-template-kind-tabs {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: 4px;
  width: 100%;
  margin: 0 0 16px;
  padding: 0;
  border: 0;
  border-bottom: 1px solid var(--border, #ffffff24);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  min-height: 32px;
  margin: 0;
  padding: 0 12px;
  border: 0;
  border-radius: 4px 4px 0 0;
  background: transparent;
  color: var(--muted, #A7ADA7);
  box-shadow: none;
  font: 500 13px/32px Geist, system-ui, sans-serif;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab strong {
  font: inherit;
  font-weight: 500;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab:hover {
  background: transparent;
  color: var(--fg, #F0F0F0);
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab--active,
#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab--active:hover {
  border: 0;
  background: transparent;
  color: var(--fg, #F0F0F0);
  box-shadow: none;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab--active strong {
  font-weight: 600;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab--active strong::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  margin-right: 8px;
  background: var(--signal, #9EFF3D);
  transform: rotate(45deg);
  vertical-align: middle;
}

#dd-section-templates .dealdesk-template-kind-tabs .dealdesk-tabs__tab:focus-visible {
  outline: 2px solid var(--signal, #9EFF3D);
  outline-offset: 2px;
}

.dealdesk-quote-presets-dialog .dealdesk-experience-section-list {
  gap: 12px;
}

.dealdesk-quote-presets-dialog .dealdesk-experience-section-row {
  gap: 12px;
  padding: 12px;
  border: 1px solid var(--border, #ffffff24);
  border-radius: 8px;
  background: transparent;
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets-dialog .dealdesk-experience-section-row .dealdesk-field {
  margin-top: 0;
}

.dealdesk-quote-presets-dialog .dealdesk-field.dealdesk-field--checkbox {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  margin-top: 0;
}

.dealdesk-quote-presets-dialog .dealdesk-field--checkbox input {
  width: 16px;
  height: 16px;
  margin: 0;
  accent-color: var(--signal, #9EFF3D);
}

.dealdesk-quote-presets-dialog .dealdesk-field--checkbox span {
  color: var(--fg, #F0F0F0);
  font: 600 14px/1.3 Geist, system-ui, sans-serif;
}

.dealdesk-quote-presets-dialog .dealdesk-color-field input[type="color"] {
  width: 44px;
  min-width: 44px;
  height: 32px;
  padding: 2px;
}

.dealdesk-quote-presets-dialog .dealdesk-upload-box,
.dealdesk-quote-presets-dialog .dealdesk-card,
.dealdesk-quote-presets-dialog .dealdesk-panel,
.dealdesk-quote-presets-dialog .dealdesk-docs {
  background: transparent;
  border-color: var(--border, #ffffff24);
  color: var(--fg, #F0F0F0);
  box-shadow: none;
}

.dealdesk-quote-presets-dialog .dealdesk-empty,
.dealdesk-quote-presets-dialog .dealdesk-inspection-list,
.dealdesk-quote-presets-dialog h3,
.dealdesk-quote-presets-dialog h4,
.dealdesk-quote-presets-dialog summary {
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets-dialog .dealdesk-variable-tag {
  border-color: var(--border, #ffffff24);
  border-radius: 999px;
  background: var(--bg, #090B09);
  color: var(--fg, #F0F0F0);
}

.dealdesk-quote-presets-dialog .dealdesk-inline-form,
.dealdesk-quote-presets-dialog .dealdesk-template-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 16px;
}

.dealdesk-quote-presets-dialog .dealdesk-template-text {
  min-height: 16rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}
