/* Datei: wp-content/plugins/_nc-angebote/assets/css/_nc-angebote.css
 * Erstellt: 2026-09-13 17:58:16 Europe/Berlin
 * Letzte Änderung: 2026-10-10 15:43:34 Europe/Berlin */
.nc-angebote { --nc-blue: #2173ab; --nc-green: #2c5b32; --nc-line: #899bab; box-sizing: border-box; min-width: 0; flex: 1; display: flex; flex-direction: column; min-height: 0; width: 100%; max-height: inherit; margin: 0; padding: 12px; color: #263746; background: #fff; font: 400 14px/1.25 Inter, Roboto, sans-serif; }
.nc-angebote *, .nc-angebote *::before, .nc-angebote *::after { box-sizing: border-box; }
.nc-angebote [hidden] { display: none !important; }
.nc-angebote h2 { font-size: 20px; line-height: 1.2; font-weight: 600; margin: 0; color: var(--nc-blue); overflow-wrap: anywhere; }
.nc-angebote h3 { margin: 0; font-size: 18px; }
.nc-angebote p { margin: 0 0 8px; }
.nc-angebote__head { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; flex-shrink: 0; }
.nc-angebote__head > h2 { flex: 1; min-width: 0; }
.nc-angebote__form { display: flex; flex-direction: column; min-height: 0; margin: 0; }
/* Die Hilfespalte liegt innerhalb des Rasters und bleibt vor dem Scrollbalken frei. */
.nc-angebote__scroll { overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; min-height: 0; padding: 3px; overscroll-behavior: contain; }
.nc-angebote__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) 24px; gap: 8px 0; column-gap: 0; }
.nc-angebote__grid > .nc-angebote__field:not(.nc-angebote__wide) { grid-column: 1; margin-right: 4px; }
.nc-angebote__grid > .nc-angebote__field[data-offer-only], .nc-angebote__grid > .nc-angebote__field[data-wanted-only] { grid-column: 2; margin-left: 4px; margin-right: 0; }
.nc-angebote__wide { grid-column: 1 / 3; }
.nc-angebote__field { min-width: 0; }
/* Gemeinsame Rasterzeile: Gruppen oben und unten bündig, i-Fläche innerhalb der Rahmen. */
.nc-angebote__paired-groups { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; align-items: stretch; min-width: 0; }
.nc-angebote__field-group { display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 4px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-angebote__field-group:has(> [data-conditional="shipping"]:not([hidden])), .nc-angebote__field-group:has(> [data-planned]:not([hidden])) { border-color: var(--nc-line); }
.nc-angebote__field-group > .nc-angebote__field { padding-right: 24px; }
.nc-angebote__field-group > .nc-angebote__group-detail { margin-top: auto; min-width: 0; }
.nc-angebote .nc-angebote__period { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 4px; margin: 0; min-width: 0; font-size: 12px; color: #596b79; }
/* Zwei Textstücke: der bevorzugte Umbruch liegt genau nach dem ersten Datum. */
.nc-angebote__period > span { flex: 0 1 auto; max-width: 100%; overflow-wrap: anywhere; }
.nc-angebote__period strong { font-size: 13px; font-weight: 600; color: #263746; }
.nc-angebote .nc-offer-output .nc-angebote__period { margin-top: 8px; }
.nc-angebote__shipping > .nc-angebote__field { padding-right: 24px; }
.nc-angebote label.nc-angebote__shipping-choice { display: flex; align-items: center; gap: 6px; min-height: 44px; margin: 0; font-weight: 400; }
.nc-angebote__shipping-choice span { min-width: 0; overflow-wrap: anywhere; }
.nc-angebote .nc-angebote__shipping-choice input { appearance: auto; width: 18px; height: 18px; flex: 0 0 18px; margin: 0; accent-color: #2173ab; }

.nc-angebote label, .nc-angebote__label { display: block; font-size: 13px; line-height: 17px; font-weight: 500; margin: 0 0 3px; }
.nc-angebote input:not([type=checkbox]):not([type=radio]), .nc-angebote select, .nc-angebote textarea { display: block; width: 100%; max-width: 100%; min-width: 0; height: 36px; min-height: 0; margin: 0; border: 1px solid var(--nc-line); border-radius: 8px; background: #fff; color: #263746; padding: 6px 8px; font: 400 16px/1.25 Inter, Roboto, sans-serif; box-shadow: none; }
.nc-angebote textarea { height: 56px; min-height: 56px; resize: vertical; }
.nc-angebote input::placeholder, .nc-angebote textarea::placeholder { color: #596b79; opacity: 1; }
.nc-angebote .nc-angebote__field input.nc-angebote__amount { width: max(92px, calc(var(--nc-number-chars, 8) * 1ch + 16px)); max-width: 100%; height: 32px; padding: 4px 8px; text-align: right; font-variant-numeric: tabular-nums; }
.nc-angebote fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
.nc-angebote button { min-width: 44px; min-height: 44px; height: auto; margin: 0; border-radius: 14px; border: 1px solid #2173ab66; background: #2173ab1f; padding: 6px 8px; color: #174f77; font: 500 14px/1.2 Inter, Roboto, sans-serif; cursor: pointer; white-space: normal; text-transform: none; letter-spacing: normal; box-shadow: none; }
.nc-angebote button:hover { background: #2173ab38; }
.nc-angebote .nc-angebote__primary { background: rgba(44,91,50,.18); border-color: rgba(44,91,50,.4); color: #244b29; }
.nc-angebote .nc-angebote__primary:hover { background: rgba(44,91,50,.28); }
.nc-angebote button[data-discard], .nc-discard-question button:last-child { background: rgba(250,210,75,.18); border-color: rgba(250,210,75,.4); color: #594600; }
.nc-angebote button[data-discard]:hover, .nc-discard-question button:last-child:hover { background: rgba(250,210,75,.28); }
.nc-angebote button:disabled { opacity: .55; cursor: not-allowed; }
.nc-angebote :focus-visible { outline: 2px solid #2f53ab; outline-offset: 1px; }
.nc-angebote__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.nc-angebote__footer { display: flex; flex-wrap: wrap; flex-shrink: 0; gap: 4px; padding-top: 4px; margin-top: 4px; border-top: 1px solid #d9e1e8; }
.nc-angebote .nc-angebote__footer button { flex: 1 0 auto; min-width: min-content; max-width: 100%; white-space: nowrap; overflow-wrap: normal; word-break: normal; hyphens: none; }
.nc-angebote__message:not(:empty) { flex-shrink: 0; max-height: 20dvh; overflow-x: hidden; overflow-y: auto; overflow-wrap: anywhere; padding: 8px; margin-bottom: 8px; border-left: 3px solid var(--nc-green); background: #96d3a026; }
.nc-angebote .um-field-error { color: #8c2424; border-color: #8c2424; background: #fff0f0; }
.nc-angebote .um-error input, .nc-angebote .um-error textarea, .nc-angebote .um-error select,
.nc-angebote .um-error .nc-angebote__basis-control, .nc-angebote .um-error [data-select-text] { border-color: #8c2424; }
.nc-angebote .nc-angebote__field > .um-field-error { position: static; width: auto; max-width: 100%; margin: 4px 0 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: #8c2424; font: 400 13px/1.3 Inter, Roboto, sans-serif; box-shadow: none; }
.nc-angebote .nc-angebote__field > .um-field-error::before, .nc-angebote .nc-angebote__field > .um-field-error::after { display: none; }
/* Native selection keeps its keyboard/mobile menu; the mirrored label wraps. */
.nc-angebote__select { position: relative; min-width: 0; min-height: 44px; padding: 4px 0; }
.nc-angebote .nc-angebote__select select { position: absolute; inset: 0; z-index: 1; height: 100%; min-height: 44px; opacity: 0; cursor: pointer; }
.nc-angebote__select [data-select-text] { display: flex; align-items: center; min-height: 36px; padding: 6px 24px 6px 8px; border: 1px solid var(--nc-line); border-radius: 8px; background: #fff; overflow-wrap: anywhere; font-size: 14px; line-height: 17.5px; }
.nc-angebote__select::after { content: ''; position: absolute; right: 10px; top: 18px; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); pointer-events: none; }
.nc-angebote__select:has(select:focus-visible) [data-select-text] { outline: 2px solid #2f53ab; outline-offset: 1px; }
/* Die Gebührenzeile bleibt zusammen; ihr schwebender Hilfetext muss dagegen umbrechen. */
.nc-angebote .nc-context-help__topic-panel { white-space: normal; overflow-wrap: anywhere; word-break: normal; overflow-x: hidden; overflow-y: auto; }
.nc-angebote__edge-help { position: relative; min-width: 0; }
.nc-angebote__edge-help > .nc-context-help__topic { position: absolute; left: 100%; top: 50%; transform: translateY(-50%); }
.nc-angebote__control { display: flex; flex-wrap: wrap; align-items: center; gap: 0; width: max-content; max-width: 100%; min-width: 0; }
.nc-angebote__money-control { height: 32px; }
.nc-angebote__field-group .nc-angebote__money-control { width: 100%; height: 36px; flex-wrap: nowrap; }
.nc-angebote .nc-angebote__field-group input.nc-angebote__amount { max-width: calc(100% - 24px); flex-shrink: 1; }

.nc-angebote .nc-context-help__topic { margin: 0; padding: 0; width: 24px; min-width: 24px; height: 44px; flex: 0 0 24px; }
.nc-angebote .nc-context-help__topic > button.nc-context-help__topic-trigger { display: grid; align-items: center; justify-items: start; width: 24px; min-width: 24px; height: 44px; min-height: 44px; padding: 0 0 0 3px; margin: 0; border: 0; background: transparent; border-radius: 0; box-shadow: none; }
.nc-angebote .nc-context-help__topic-trigger > span { display: grid; place-items: center; width: 14px; height: 14px; border-radius: 50%; border: 1px solid #fff; background: #2f53ab; color: #fff; font: 600 11px/1 Inter, Roboto, sans-serif; }
.nc-angebote__free-choice, .nc-angebote__choices { display: flex; align-items: center; gap: 8px; }
.nc-angebote__free-choice { min-height: 44px; flex-wrap: wrap; }
.nc-angebote__free-choice > span:first-child { margin-right: auto; }
.nc-angebote__choices { flex-shrink: 0; }
.nc-angebote .nc-angebote__choices label { display: inline-flex; align-items: center; gap: 6px; min-width: 48px; min-height: 44px; margin: 0; font-size: 14px; font-weight: 400; }
.nc-angebote input[type=radio] { appearance: auto; width: 20px; height: 20px; margin: 0; flex: 0 0 20px; accent-color: #2173ab; }
.nc-angebote .nc-angebote__price { margin-top: -8px; }
.nc-angebote__price-line { display: flex; flex-wrap: wrap; gap: 4px 12px; align-items: flex-end; }
.nc-angebote__price-line > .nc-angebote__field { flex: 0 1 auto; max-width: 100%; }
.nc-angebote__price-line > .nc-angebote__fee-control { flex: 1 1 180px; }
.nc-angebote__price-value { display: flex; align-items: center; gap: 4px; min-width: 0; }
.nc-angebote .nc-angebote__price-value input.nc-angebote__amount { flex: 0 1 max(92px, calc(var(--nc-number-chars, 8) * 1ch + 16px)); min-width: 64px; }
.nc-angebote__price-value > span { min-width: 0; font-size: 13px; overflow-wrap: anywhere; }
.nc-angebote__basis-control { display: flex; align-items: baseline; gap: 4px; min-width: 0; min-height: 36px; border: 1px solid var(--nc-line); border-radius: 8px; padding: 6px 8px; }
.nc-angebote .nc-angebote__basis-control input:not([type=checkbox]):not([type=radio]) { flex: 0 1 calc(var(--nc-number-chars, 4) * 1ch); width: calc(var(--nc-number-chars, 4) * 1ch); min-width: 4ch; max-width: 100%; height: 22px; padding: 0; border: 0; border-radius: 0; background: transparent; }
.nc-angebote__basis-control > span { min-width: 0; flex: 1 1 0; font-size: 14px; overflow-wrap: anywhere; }
.nc-angebote__basis-control:has(input[aria-invalid=true]) { border-color: #8c2424; }
.nc-angebote__fee-control { display: flex; flex-wrap: wrap; align-items: center; gap: 0 4px; min-width: 0; min-height: 32px; }
.nc-angebote__fee-label { font-size: 13px; overflow-wrap: anywhere; }
.nc-angebote__fee-amount { display: inline-flex; align-items: center; flex: 0 0 auto; height: 32px; white-space: nowrap; }
.nc-angebote p.nc-angebote__fee-notice { margin: 6px 0 0; font-size: 13px; line-height: 1.35; color: #594600; overflow-wrap: anywhere; }
.nc-angebote__field-error { display: block; margin-top: 3px; color: #8c2424; font-size: 12px; line-height: 1.3; overflow-wrap: anywhere; }
.nc-angebote input[aria-invalid=true] { border-color: #8c2424; }
.nc-angebote__fee-control output { display: flex; align-items: center; min-height: 32px; font-size: 14px; font-weight: 600; white-space: nowrap; }
.nc-angebote input[type=date] { color-scheme: light; height: 36px; min-height: 36px; max-height: 36px; padding: 6px; font-size: 16px; }
.nc-angebote input[type=date]::-webkit-date-and-time-value { min-width: 0; height: 22px; margin: 0; text-align: left; }
.nc-angebote input[type=date]::-webkit-datetime-edit { min-width: 0; padding: 0; }
.nc-angebote__field-error.is-note { color: #596b79; }
.nc-angebote__quantities { min-width: 0; }
.nc-angebote__quantities summary { min-height: 28px; cursor: pointer; font-size: 13px; overflow-wrap: anywhere; }
.nc-angebote__quantity-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr) minmax(0, 1fr); align-items: end; gap: 8px; }
.nc-angebote .nc-angebote__quantities p, .nc-angebote .nc-angebote__total { margin: 4px 0 0; font-size: 12px; color: #596b79; overflow-wrap: anywhere; }
.nc-angebote__total output { color: #263746; font-weight: 600; }
.nc-angebote .nc-offer-output__quantity { display: flex; flex-wrap: wrap; gap: 3px 6px; min-width: 0; margin: 0 0 8px; padding: 8px; border: 1px solid #d9e1e8; border-radius: 8px; font-size: 14px; font-weight: 400; overflow-wrap: anywhere; }
.nc-offer-output__quantity strong { font-weight: 600; }
.nc-offer-output__quantity > span { min-width: 0; }
.nc-angebote__quantity-grid:not(:has([data-price-basis]:not([hidden]))) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#nc-offer-dialog { box-sizing: border-box; border: 0; padding: 0; margin: 0; width: 100%; max-width: 100%; height: 100dvh; max-height: 100dvh; overflow: hidden; color: #263746; background: #fff; }
#nc-offer-dialog[open] { display: flex; }
#nc-offer-dialog:not([open]) { display: none !important; }
#nc-offer-dialog::backdrop { background: #172d43b3; }
.nc-angebote [data-library], .nc-angebote [data-large] { min-width: 0; min-height: 0; overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; }
/* Only the black cross is visible; its transparent hit area stays 44 × 44 px. */
.nc-angebote button[data-close], .nc-offer-feed button[data-mine-close] { display: grid; place-items: center; width: 44px; min-width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; padding: 0; margin: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #000; font: 400 28px/1 Arial, sans-serif; }
.nc-discard-question { max-width: min(440px, calc(100% - 24px)); padding: 16px; border: 1px solid #d9e1e8; border-radius: 14px; color: #374151; font: 400 14px/1.4 Inter, Roboto, sans-serif; }
.nc-discard-question::backdrop { background: #172d4370; }
.nc-discard-question button { min-height: 44px; margin: 4px; padding: 6px 8px; border: 1px solid #2173ab66; border-radius: 14px; background: #2173ab1f; color: #174f77; font: inherit; cursor: pointer; }
/* Bildaktionen gehören zum Bild; nur die verbindliche Hauptaktion trägt eine Fläche. */
.nc-angebote .nc-offer-icon { width: 20px; height: 20px; flex: 0 0 20px; pointer-events: none; }
.nc-angebote button.nc-angebote__flat, .nc-angebote button.nc-angebote__icon-button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; border: 0; background: transparent; color: #174f77; border-radius: 8px; }
.nc-angebote button.nc-angebote__flat:hover, .nc-angebote button.nc-angebote__icon-button:hover { background: #2173ab1f; }
.nc-angebote .nc-angebote__footer button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; font-size: 13px; border-radius: 8px; }
.nc-angebote .nc-angebote__footer .nc-angebote__save { flex: 1 0 100%; min-width: 0; white-space: normal; justify-content: flex-start; text-align: left; }
.nc-angebote button.nc-angebote__flat[data-discard] { color: #594600; }
.nc-angebote button.nc-angebote__flat[data-discard]:hover { background: rgba(250,210,75,.18); }
.nc-angebote .nc-angebote__icon-button { width: 44px; height: 44px; padding: 0; flex: 0 0 44px; }
.nc-angebote__images-heading { display: flex; align-items: center; min-height: 28px; gap: 0; }
.nc-angebote__images-heading .nc-angebote__label { margin: 0; }
.nc-angebote .nc-angebote__images-heading .nc-context-help__topic, .nc-angebote .nc-angebote__images-heading button.nc-context-help__topic-trigger { height: 28px; min-height: 28px; }
.nc-angebote__image-row { display: flex; flex-wrap: wrap; align-items: flex-start; gap: 8px; padding-top: 0; }
.nc-angebote__uploading { display: flex; align-items: center; gap: 8px; min-width: 0; max-width: 100%; font-size: 13px; }
.nc-angebote__upload-tile { position: relative; width: 68px; height: 68px; flex: 0 0 68px; display: grid; place-items: center; border: 1px solid var(--nc-line); border-radius: 8px; background: #2173ab1f; color: #2173ab; }
.nc-angebote__loading { position: relative; align-self: center; width: 68px; height: 68px; flex: 0 0 68px; }
.nc-angebote__spinner { position: absolute; inset: 10px; border: 2px solid #2173ab33; border-top-color: #2173ab; border-radius: 50%; animation: nc-offer-upload-turn 1s linear infinite; }
@keyframes nc-offer-upload-turn { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .nc-angebote__spinner { animation: none; } }
#nc-offer-dialog .nc-offer-upload-status { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }

.nc-media-grid { display: grid; gap: 6px; margin: 0; min-width: 0; }
.nc-media-grid > div { position: relative; min-width: 0; }
.nc-media-grid img { display: block; width: 100%; height: 100%; object-fit: contain; background: #f3f5f7; }
.nc-angebote [data-selected-images] { display: contents; }
.nc-angebote [data-selected-images] > div { position: relative; width: 68px; height: 68px; flex: 0 0 68px; }
.nc-angebote .nc-angebote__thumbnail, .nc-angebote .nc-angebote__add-image { width: 68px; height: 68px; flex: 0 0 68px; padding: 0; border: 1px solid #899bab; border-radius: 8px; overflow: hidden; }
.nc-angebote .nc-angebote__add-image { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; border-style: dashed; background: #fff; font-size: 11px; }
.nc-angebote .nc-angebote__remove-image { position: absolute; top: -12px; right: -12px; display: grid; place-items: center; width: 44px; min-width: 44px; height: 44px; padding: 0; border: 0; background: transparent; }
.nc-angebote .nc-angebote__remove-image .nc-offer-icon { width: 24px; height: 24px; padding: 4px; background: #fff; color: #263746; border: 1px solid #899bab; border-radius: 50%; }
/* Kopf und Übernehmen bleiben erreichbar; nur der vollständige Bildbestand scrollt. */
#nc-offer-dialog.is-library { height: 100dvh; }
.nc-angebote [data-library] { display: flex; flex: 1 1 auto; flex-direction: column; overflow: hidden; scrollbar-gutter: auto; }
.nc-angebote__library-heading { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 8px; padding: 2px calc(2px + var(--nc-library-scrollbar, 0px)) 4px 2px; font-size: 13px; }
.nc-angebote__library-heading > span { min-width: 0; overflow-wrap: anywhere; }
.nc-angebote__library-scroll { flex: 1 1 auto; min-height: 0; min-width: 0; overflow-y: auto; overflow-x: hidden; scrollbar-gutter: stable; overscroll-behavior: contain; }
.nc-angebote [data-library-images] { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 2px; }
.nc-angebote [data-library-message] { margin: 4px 2px; font-size: 13px; overflow-wrap: anywhere; }
.nc-angebote [data-library-message]:empty { display: none; }
/* Flacher Größenregler wie in meine Medien; keine Rahmen oder Schatten aus Formstilen. */
.nc-angebote .nc-angebote__library-size { display: flex; flex: 0 1 220px; align-items: center; gap: 5px; width: 220px; min-width: min(100%, 120px); max-width: 220px; margin-left: auto; height: 44px; }
#nc-offer-dialog :is(.nc-angebote__library-size,.nc-angebote__library-size-track,[data-library-size],[data-library-smaller],[data-library-larger]) { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.nc-angebote .nc-angebote__library-size > button { flex: 0 0 44px; width: 44px; height: 44px; min-height: 44px; padding: 0; margin: 0; font-size: 24px; line-height: 1; }
.nc-angebote__library-size-track { position: relative; display: block; flex: 1 1 0; min-width: 0; height: 44px; }
.nc-angebote__library-size-track::before { content: ''; position: absolute; inset: 16px 0; background: #4a9daa66; clip-path: polygon(0 42%,100% 0,100% 100%,0 58%); pointer-events: none; }
.nc-angebote .nc-angebote__library-size-track input[type=range] { appearance: none; position: relative; display: block; width: 100%; max-width: 100%; min-width: 0; height: 44px; min-height: 44px; margin: 0; padding: 0; cursor: pointer; }
#nc-offer-dialog [data-library-size]::-webkit-slider-runnable-track { height: 44px; border: 0; background: transparent; box-shadow: none; }
#nc-offer-dialog [data-library-size]::-webkit-slider-thumb { appearance: none; width: 22px; height: 22px; margin-top: 11px; border: 0; border-radius: 50%; background: #4a9daa; box-shadow: none; }
#nc-offer-dialog [data-library-size]::-moz-range-track, #nc-offer-dialog [data-library-size]::-moz-range-progress { height: 44px; border: 0; background: transparent; box-shadow: none; }
#nc-offer-dialog [data-library-size]::-moz-range-thumb { width: 22px; height: 22px; border: 0; border-radius: 50%; background: #4a9daa; box-shadow: none; }
.nc-angebote__library-size-track:has(input:disabled) { opacity: .5; }
@media (forced-colors: active) { .nc-angebote__library-size-track::before { background: CanvasText; } #nc-offer-dialog [data-library-size]::-webkit-slider-thumb, #nc-offer-dialog [data-library-size]::-moz-range-thumb { background: Highlight; } }
.nc-angebote [data-library-images] > div { aspect-ratio: 1; }
.nc-angebote .nc-angebote__library-image { display: block; width: 100%; height: 100%; padding: 0; border: 1px solid #899bab; border-radius: 8px; overflow: hidden; }
.nc-angebote .nc-angebote__select-image { position: absolute; top: 0; right: 0; width: 44px; height: 44px; display: flex; align-items: flex-start; justify-content: flex-end; padding: 4px; border: 0; border-radius: 0; background: transparent; }
.nc-angebote__select-image > span { width: 24px; height: 24px; border: 1px solid #899bab; border-radius: 50%; display: grid; place-items: center; background: #fff; }
.nc-angebote__select-image[aria-pressed=true] > span { background: #2173ab; color: #fff; border-color: #2173ab; }
.nc-angebote__library-footer { display: flex; flex: 0 0 auto; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 8px; padding: 4px calc(2px + var(--nc-library-scrollbar, 0px)) 2px 2px; font-size: 13px; }
.nc-angebote__library-footer > span { min-width: 0; overflow-wrap: anywhere; }
.nc-media-large { overflow: clip; margin: 0; min-height: 0; touch-action: pan-y pinch-zoom; }
.nc-media-large img { display: block; width: auto; max-width: 100%; height: auto; max-height: min(60dvh, 560px); object-fit: contain; margin: auto; }
.is-zoomed .nc-media-large { touch-action: none; cursor: grab; }
.is-zoomed .nc-media-large:active { cursor: grabbing; }
.is-zoomed .nc-media-large img { transform-origin: center; user-select: none; }
.nc-angebote__large-meta { display: flex; justify-content: flex-end; }
.nc-angebote__image-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 0; }
.nc-angebote__image-toolbar [data-large-count] { font-size: 12px; }
.nc-angebote .nc-angebote__use-image { flex-direction: column; gap: 0; width: 60px; flex-basis: 60px; font-size: 11px; }
.nc-angebote__source { overflow-x: hidden; overflow-y: auto; width: min(380px, calc(100% - 24px)); max-width: calc(100% - 24px); max-height: calc(100dvh - 24px); margin: auto; padding: 12px; border: 1px solid #899bab; border-radius: 14px; background: #fff; color: #263746; }
.nc-angebote__source:not([open]) { display: none; }
.nc-angebote__source::backdrop { background: #172d4370; }
.nc-angebote__source-head { display: flex; align-items: center; justify-content: space-between; gap: 4px; }
.nc-angebote .nc-angebote__source > button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 48px; padding: 8px 4px; border: 0; border-top: 1px solid #d9e1e8; border-radius: 0; text-align: left; background: #fff; font-size: 14px; }
.nc-angebote .nc-angebote__source > button:hover { background: #2173ab1f; }

/* Gemeinsame Lesedarstellung für Angebotsansicht und Vorschau. */
.nc-offer-output { display: flex; flex-direction: column; min-width: 0; min-height: 0; }
.nc-offer-output__scroll { min-width: 0; min-height: 0; overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; padding: 3px; overflow-wrap: anywhere; }
/* fit-content verhindert das Strecken zwischen den nativen oberen/unteren Dialogkanten. */
#nc-offer-dialog.is-output { position: fixed; inset: 0; width: min(680px, calc(100% - 24px)); height: fit-content; min-height: 0; max-height: calc(100dvh - 24px); margin: auto; border-radius: 18px; flex-direction: column; }
#nc-offer-dialog.is-output > .nc-angebote { flex: 0 1 auto; min-height: 0; max-height: inherit; overflow: hidden; }
#nc-offer-dialog.is-output .nc-offer-output { flex: 0 1 auto; }
#nc-offer-dialog.is-output .nc-offer-output__scroll { flex: 0 1 auto; }
#nc-offer-dialog.is-output .nc-angebote__head { margin-bottom: 4px; }
#nc-offer-dialog.is-output .nc-angebote__head h2 { font-size: 13px; font-weight: 500; color: #596b79; }
.nc-offer-output__heading { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 6px 12px; padding-bottom: 12px; margin-bottom: 12px; border-bottom: 1px solid #d9e1e8; }
.nc-angebote .nc-offer-output__title { flex: 1 1 180px; min-width: 0; margin: 0; color: #263746; font-size: 22px; line-height: 1.2; font-weight: 600; }
.nc-angebote .nc-offer-output__price { flex: 0 1 auto; max-width: 100%; margin: 0; color: #244b29; font-size: 20px; line-height: 1.2; font-weight: 600; }
.nc-offer-output__body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; min-width: 0; }
.nc-offer-output__gallery, .nc-offer-output__content { min-width: 0; }
.nc-angebote .nc-offer-output__hero { display: block; width: 100%; min-width: 0; padding: 0; margin: 0; border: 0; border-radius: 8px; overflow: hidden; background: #f3f5f7; }
.nc-offer-output__hero img { display: block; width: 100%; height: auto; max-width: 100%; max-height: 240px; object-fit: contain; }
.nc-offer-output__thumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; padding: 2px; }
.nc-angebote .nc-offer-output__thumbs button { width: 52px; height: 52px; min-width: 52px; padding: 0; border: 1px solid #899bab; border-radius: 6px; overflow: hidden; background: #f3f5f7; }
.nc-offer-output__thumbs img { display: block; width: 100%; height: 100%; object-fit: contain; }
.nc-angebote .nc-offer-output__thumbs button[aria-pressed=true] { outline: 2px solid #2173ab; outline-offset: 1px; }
.nc-offer-output__content { container: nc-offer-details / inline-size; }
.nc-offer-output__facts { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin: 8px 0 0; padding: 0; }
@container nc-offer-details (min-width: 360px) { .nc-offer-output__facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.nc-angebote p.nc-offer-output__availability { margin: 8px 0 0; font-size: 14px; font-weight: 600; overflow-wrap: anywhere; }
.nc-angebote__image-message { margin: 4px 0; padding: 6px 8px; border-left: 3px solid var(--nc-green); background: #96d3a026; font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }
.nc-offer-output__facts > div { min-width: 0; padding: 8px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-offer-output__facts dt { margin: 0 0 3px; font-size: 14px; font-weight: 600; color: #263746; }
.nc-offer-output__facts dd { margin: 0; font-size: 14px; font-weight: 400; overflow-wrap: anywhere; }
.nc-offer-output__description-group { min-width: 0; padding: 8px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-angebote .nc-offer-output__description-group h4 { margin: 0 0 3px; color: #263746; font: 600 14px/1.4 Inter, Roboto, sans-serif; }
.nc-angebote .nc-offer-output__description { margin: 0; font-size: 14px; line-height: 1.55; white-space: pre-wrap; }
.nc-offer-output__contact { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin-top: 14px; padding-top: 12px; border-top: 1px solid #d9e1e8; }
.nc-angebote .nc-offer-output__contact button { max-width: 100%; opacity: 1; color: #596b79; background: #f3f5f7; border-color: #899bab; }
.nc-offer-output__contact > span { font-size: 12px; color: #596b79; }
.nc-offer-output__footer { flex-shrink: 0; display: flex; flex-wrap: wrap; gap: 8px; border-top: 1px solid #d9e1e8; padding-top: 4px; margin-top: 8px; }
@media (min-width: 600px) { .nc-offer-output.has-images .nc-offer-output__body { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); } }

@media (min-width: 680px) { #nc-offer-dialog { width: min(680px, calc(100% - 48px)); height: auto; max-height: calc(100dvh - 48px); margin: auto; border-radius: 18px; } .nc-angebote .nc-angebote__footer button { flex: 0 0 auto; } .nc-angebote .nc-angebote__footer .nc-angebote__save { flex: 1 1 250px; } }
@media (max-width: 679px) { .nc-angebote { padding-bottom: max(12px, env(safe-area-inset-bottom)); padding-left: max(12px, env(safe-area-inset-left)); padding-right: max(12px, env(safe-area-inset-right)); } }
@media (forced-colors: active) { .nc-angebote .nc-angebote__select select, .nc-angebote.is-reading .nc-angebote__select select:disabled { position: static; opacity: 1; } .nc-angebote__select [data-select-text], .nc-angebote__select::after { display: none; } }
.nc-offer-feed { min-height: var(--nc-open-filter-height, 0px); color: #374151; font: 400 1rem/1.55 Inter, Roboto, sans-serif; }
.elementor .elementor-element.nc-offers-host { min-height: 0; padding: 16px clamp(12px, 2vw, 24px); gap: 12px; }
.nc-offer-feed [hidden] { display: none !important; }
.nc-offer-feed [data-offer-cards] { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; }
.nc-offer-card { border: 1px solid #d9e1e8; border-radius: 14px; padding: 16px; background: #fff; overflow-wrap: anywhere; min-width: 0; }
.nc-offer-card--guest { min-height: 180px; background: repeating-linear-gradient(135deg, #f1f4f6, #f1f4f6 16px, #e8edf0 16px, #e8edf0 32px); display: flex; flex-direction: column; justify-content: center; }
.nc-offer-card--guest p { background: #fffffff0; padding: 8px; }
.nc-offer-card__images { display: flex; gap: 8px; }
.nc-offer-card__images a { width: 50%; }
.nc-offer-card__images img { width: 100%; height: 190px; object-fit: contain; }
.nc-offer-feed button { min-height: 44px; padding: 10px 16px; border: 1px solid #2173ab66; border-radius: 18px; color: #174f77; background: #2173ab1f; cursor: pointer; }
.nc-offer-feed :focus-visible { outline: 3px solid #2f53ab; outline-offset: 3px; }

#nc-my-offers-dialog { box-sizing: border-box; min-width: 0; max-width: 100%; }
#nc-my-offers-dialog { border: 0; border-radius: 18px; width: min(1200px, calc(100% - 24px)); max-height: calc(100dvh - 24px); padding: clamp(12px, 2vw, 24px); overscroll-behavior: contain; }
#nc-my-offers-dialog::backdrop { background: #172d43b3; }
#nc-my-offers-dialog:not([open]) { display: none; }
[data-mine-close] { float: right; }
.nc-offer-feed, .nc-offer-feed * { box-sizing: border-box; min-width: 0; }
.nc-offer-search { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 8px; margin: 12px 0 0; }
.nc-offer-search label { display: grid; gap: 4px; }
.nc-offer-search input, .nc-offer-search select { width: 100%; min-height: 44px; font: inherit; padding: 8px; background: #fff; border: 1px solid #aebac7; border-radius: 8px; }
.nc-offer-navigation { display: flex; gap: 8px; align-items: center; margin: 0 0 6px; }
.nc-offer-navigation [data-feed-message] { margin-right: auto; }
.nc-offer-feed [data-offer-cards] { grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--nc-card-min, 160px)), 1fr)); gap: clamp(6px, 1vw, 12px); }
/* Kompakte Kacheln: feste Schriftgrößen und Umbrüche nur zwischen Wörtern. */
.nc-offer-feed .nc-offer-card { padding: 0; border-radius: 10px; overflow: hidden; font-size: 14px; line-height: 1.35; overflow-wrap: normal; word-break: normal; hyphens: none; }
.nc-offer-feed .nc-offer-card__open { display: flex; flex-direction: column; align-items: stretch; gap: 6px; width: 100%; padding: 0 0 8px; background: #fff; border: 0; border-radius: 0; text-align: left; font: inherit; color: inherit; }
.nc-offer-card__open img, .nc-offer-card__no-image { width: 100%; aspect-ratio: 1; object-fit: contain; background: #f1f4f6; }
.nc-offer-card__no-image { display: grid; place-items: center; color: #5f6b78; }
.nc-offer-card__open > span:not(.nc-offer-card__no-image), .nc-offer-card > p { margin: 0; padding: 0 6px; }
.nc-offer-card__open > span.nc-offer-card__category { padding: 6px 6px 0; font-size: 12px; line-height: 1.4; font-weight: 400; white-space: normal; overflow-wrap: anywhere; }
.nc-offer-card__category strong { font-weight: 600; }
.nc-offer-card__title { font-weight: 600; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.nc-offer-feed .nc-offer-card > p { font-size: 12px; line-height: 1.4; padding-bottom: 8px; }
.nc-offer-card__date > span { display: block; white-space: normal; overflow-wrap: anywhere; }
.nc-offer-card__open > span:not(.nc-offer-card__title) { overflow-wrap: anywhere; }
.nc-offer-card--guest { min-height: 140px; padding: 8px; }
.nc-offer-feed button:disabled { opacity: .5; cursor: not-allowed; }


/* Marktplatzfilter: schrumpfbares Raster, native Mehrfachauswahl, gleiche Feldkanten. */
.nc-offer-feed .nc-offer-filter { display: grid; gap: 3px; font: 500 13px/17px Inter, Roboto, sans-serif; }
.nc-offer-filter__label { display: block; }
.nc-offer-feed .nc-offer-search input[type="search"], .nc-offer-feed .nc-offer-search select { height: 36px; min-height: 36px; border-color: #899bab; padding: 6px 8px; font: 400 16px/1.25 Inter, Roboto, sans-serif; }
.nc-offer-search__input-help { display: flex; align-items: center; min-height: 44px; }
.nc-offer-search__input-help > input { flex: 1 1 0; }
.nc-offer-feed .nc-offer-search .nc-context-help__topic { margin: 0; padding: 0; width: 24px; min-width: 24px; height: 44px; flex: 0 0 24px; }
.nc-offer-feed .nc-offer-search .nc-context-help__topic > button.nc-context-help__topic-trigger { display: grid; align-items: center; justify-items: start; width: 24px; min-width: 24px; height: 44px; min-height: 44px; margin: 0; padding: 0 0 0 3px; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.nc-offer-feed .nc-offer-search .nc-context-help__topic-trigger > span { display: grid; place-items: center; width: 14px; height: 14px; border: 1px solid #fff; border-radius: 50%; background: #2f53ab; color: #fff; font: 600 11px/1 Inter, Roboto, sans-serif; }
.nc-offer-multi { position: relative; }
.nc-offer-multi > summary { display: flex; align-items: center; justify-content: space-between; gap: 4px; min-height: 44px; padding: 6px 8px; border: 1px solid #899bab; border-radius: 8px; background: #fff; color: #374151; font: 400 14px/1.25 Inter, Roboto, sans-serif; cursor: pointer; list-style: none; overflow-wrap: anywhere; }
.nc-offer-multi > summary::-webkit-details-marker { display: none; }
.nc-offer-multi > summary::after { content: '⌄'; flex: 0 0 auto; }
.nc-offer-multi[open] > summary::after { content: '⌃'; }
/* Überlagert die Karten; nur fehlenden Platz am Bereichsende reserviert JavaScript. */
.nc-offer-multi__panel { position: absolute; z-index: 30; inset-inline: 0; top: 100%; margin: 0; max-height: min(360px, 50dvh); overflow-y: auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding: 4px; border: 1px solid #899bab; border-radius: 8px; background: #fff; box-shadow: 0 4px 12px #183d621a; }
.nc-offer-multi__actions { display: flex; flex-wrap: wrap; gap: 0 8px; border-bottom: 1px solid #d9e1e8; }
.nc-offer-feed .nc-offer-multi__actions button { min-height: 44px; max-width: 100%; padding: 4px; border: 0; border-radius: 4px; background: transparent; color: inherit; font: inherit; font-weight: 400; text-decoration: none; overflow-wrap: anywhere; }
.nc-offer-feed .nc-offer-multi__actions button:disabled { opacity: 1; cursor: default; }
.nc-offer-feed .nc-offer-multi__actions button.is-current { font-weight: 700; text-decoration: underline; }
.nc-offer-feed .nc-offer-multi__option { display: flex; align-items: center; gap: 6px; min-height: 44px; margin: 0; padding: 4px; border-radius: 4px; font: 400 14px/1.25 Inter, Roboto, sans-serif; cursor: pointer; overflow-wrap: anywhere; }
.nc-offer-feed .nc-offer-multi__option:has(input:checked) { background: #2173ab1f; color: #174f77; }
.nc-offer-feed .nc-offer-multi__option input { appearance: auto; width: 18px; height: 18px; min-height: 18px; margin: 0; padding: 0; flex: 0 0 18px; accent-color: #2173ab; }
.nc-offer-feed :is(.nc-offer-size,.nc-offer-size__control,.nc-offer-size__track) { border: 0; box-shadow: none; background: transparent; }
.nc-offer-size__control { display: flex; align-items: center; gap: 6px; min-height: 44px; }
.nc-offer-feed .nc-offer-size__control > button { flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: #18324b; text-align: center; font-size: 24px; line-height: 1; font-weight: 400; }
.nc-offer-size__track { position: relative; display: block; flex: 1 1 0; min-width: 0; height: 44px; }
/* Nur die dekorative Spur verjüngen; Griff, Fokus und native Bedienfläche bleiben vollständig. */
.nc-offer-size__track::before { content: ''; position: absolute; inset: 16px 0; background: #4a9daa66; clip-path: polygon(0 42%,100% 0,100% 100%,0 58%); pointer-events: none; }
.nc-offer-feed .nc-offer-size__track input[type="range"] { position: relative; appearance: none; display: block; width: 100%; max-width: 100%; min-width: 0; height: 44px; min-height: 44px; margin: 0; padding: 0; border: 0; border-radius: 0; box-shadow: none; background: transparent; cursor: pointer; }
.nc-offer-size__track input[type="range"]::-webkit-slider-runnable-track { height: 44px; border: 0; box-shadow: none; background: transparent; }
.nc-offer-size__track input[type="range"]::-webkit-slider-thumb { appearance: none; box-sizing: border-box; width: 22px; height: 22px; margin-top: 11px; border: 0; border-radius: 50%; background: #4a9daa; box-shadow: none; }
.nc-offer-size__track input[type="range"]::-moz-range-track { height: 44px; border: 0; box-shadow: none; background: transparent; }
.nc-offer-size__track input[type="range"]::-moz-range-progress { border: 0; box-shadow: none; background: transparent; }
.nc-offer-size__track input[type="range"]::-moz-range-thumb { box-sizing: border-box; width: 22px; height: 22px; border: 0; border-radius: 50%; background: #4a9daa; box-shadow: none; }
.nc-offer-size__track:has(input:disabled) { opacity: .5; }
@media (forced-colors: active) { .nc-offer-size__track::before { background: CanvasText; } .nc-offer-size__track input[type="range"]::-webkit-slider-thumb { background: Highlight; } .nc-offer-size__track input[type="range"]::-moz-range-thumb { background: Highlight; } }
.nc-offer-feed .nc-offer-card__title { display: block; -webkit-line-clamp: unset; overflow: visible; overflow-wrap: anywhere; }
.nc-offer-navigation { flex-wrap: wrap; }
@media (max-width: 800px) { .nc-offer-search { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nc-offer-search__keyword, .nc-offer-size { grid-column: 1 / -1; } }
@media (max-width: 359px) { .nc-offer-search { grid-template-columns: minmax(0, 1fr); } }

/* Einheitliche sichtbare Felder, mit vergrößerter Bedienfläche der Auswahl. */
.nc-offer-multi { padding: 4px 0; }
.nc-offer-multi > summary { position: relative; min-height: 36px; }
.nc-offer-multi > summary::before { content: ''; position: absolute; inset: -4px 0; }
.nc-offer-feed .nc-offer-filter > select { margin-block: 4px; }
/* Auswahl ohne Überschrift bündig mit den benachbarten beschrifteten Auswahlfeldern. */
.nc-offer-feed .nc-offer-kind:has(> select) { padding-top: 20px; }
@media (max-width: 359px) { .nc-offer-feed .nc-offer-kind:has(> select) { padding-top: 0; } }
.nc-offer-search__clearable { display: flex; align-items: center; position: relative; flex: 1 1 0; }
.nc-offer-feed .nc-offer-search .nc-offer-search__clearable input[type="search"] { padding-right: 36px; }
.nc-offer-search__clearable input::-webkit-search-cancel-button { appearance: none; }
.nc-offer-feed button[data-search-clear] { position: absolute; right: 0; top: -4px; width: 36px; height: 44px; min-height: 44px; padding: 0; border: 0; border-radius: 8px; background: transparent; color: #374151; font: 400 22px/1 Inter, sans-serif; }
/* Suchverknüpfung unmittelbar unter dem Stichwort, ohne eigene helle Fläche. */
.nc-offer-feed .nc-offer-search__keyword { row-gap: 0; }
.nc-offer-feed .nc-offer-search__keyword > label { margin-bottom: 3px; }
.nc-offer-feed .nc-offer-search__match { display: flex; flex-wrap: wrap; align-items: start; gap: 0 12px; width: fit-content; max-width: 100%; margin: 0; padding: 0; border: 0; background: transparent; }
.nc-offer-feed .nc-offer-search__match > label { display: flex; align-items: flex-start; gap: 5px; min-height: 32px; max-width: 100%; margin: 0; padding: 2px 0 0; border: 0; background: transparent; color: inherit; font: 400 13px/18px Inter, Roboto, sans-serif; cursor: pointer; }
.nc-offer-feed .nc-offer-search__match input[type="radio"] { appearance: auto; flex: 0 0 14px; width: 14px; height: 14px; min-height: 14px; margin: 2px 0 0; padding: 0; border: 0; background: transparent; accent-color: #2173ab; }
.nc-offer-feed .nc-offer-search__match input:checked + span { font-weight: 500; }
.nc-offer-feed .nc-offer-search__match span { overflow-wrap: anywhere; }
@media (pointer: coarse) { .nc-offer-feed .nc-offer-search__match > label { min-height: 44px; } }
.nc-offer-search [data-search-error] { font: 400 13px/1.3 Inter,Roboto,sans-serif; color: #8c2424; background: transparent; padding: 0; margin: 4px 0 0; overflow-wrap: anywhere; }
.nc-offer-feed .um-error input[type="search"] { border-color: #8c2424; }
.nc-offer-feed [data-offer-cards] { grid-template-columns: repeat(var(--nc-card-count,2), minmax(0,1fr)); }
/* Nur die öffentliche Kartenfläche läuft; Trefferzeile und Filter bleiben darüber stehen. */
.nc-offer-feed:not(.nc-my-offers) [data-offer-cards] { max-height: var(--nc-three-row-height, none); overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; overscroll-behavior-y: auto; align-content: start; }
.nc-owner-empty { display: none !important; }
.nc-offer-retention { padding: 6px; display: grid; gap: 4px; font: 400 12px/1.4 Inter,Roboto,sans-serif; }
.nc-offer-retention label, .nc-offer-retention-actions label { display: flex; gap: 6px; align-items: center; min-height: 44px; }
.nc-offer-retention input, .nc-offer-retention-actions input { width: 18px; height: 18px; accent-color: #2173ab; }
.nc-offer-retention__warning { color: #735500; }
.nc-offer-retention-actions { display: flex; flex-wrap: wrap; gap: 4px 8px; align-items: center; font-size: 13px; }
.nc-offer-feed .nc-offer-retention-actions button { border: 0; border-radius: 8px; padding: 6px 8px; font: inherit; }
.nc-offer-feed [data-retention-delete] { color: #8c2424; background: #8c24241f; }
.nc-offer-management { display: flex; flex-wrap: wrap; gap: 0 4px; padding: 0 6px; }
.nc-offer-feed .nc-offer-management button { min-height: 44px; max-width: 100%; padding: 4px; border: 0; border-radius: 4px; background: transparent; font: 400 12px/1.35 Inter,Roboto,sans-serif; white-space: normal; overflow-wrap: anywhere; text-align: left; }
.nc-offer-feed .nc-offer-management [data-offer-operation="delete"] { color: #8c2424; }
.nc-offer-retention-info { font-size: 12px; line-height: 1.4; }
.nc-offer-retention-summary { font-size: 14px; line-height: 1.4; }
.nc-offer-retention-summary[hidden] { display: none !important; }

/* Gegenstände: freigegebener Kopf aus dem Klickdummy. */
.nc-angebote .nc-angebote__head { margin: -12px -12px 4px; padding: 6px 18px; gap: 16px; border: 1px solid #fff; border-radius: 0; background: #142d5d; color: #fff; }
/* Der Außenrahmen folgt den oberen Dialogecken; die Unterkante bleibt gerade. */
#nc-offer-dialog.is-output .nc-angebote__head { border-top-left-radius: 18px; border-top-right-radius: 18px; }
@media (min-width: 680px) {
    #nc-offer-dialog .nc-angebote__head { border-top-left-radius: 18px; border-top-right-radius: 18px; }
}
.nc-angebote .nc-angebote__head h2 { color: #fff; }
.nc-angebote .nc-angebote__head button[data-close], .nc-angebote .nc-angebote__head .nc-angebote__icon-button { color: #fff; }
.nc-angebote__kind { display: flex; align-items: center; gap: 0; flex: 0 0 auto; }
.nc-angebote__kind legend.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.nc-angebote .nc-angebote__kind label { position: relative; display: inline-flex; align-items: center; min-height: 44px; margin: 0; cursor: pointer; }
.nc-angebote .nc-angebote__kind input[type=radio] { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; }
.nc-angebote__kind span { display: grid; place-items: center; min-height: 36px; padding: 7px 11px; border: 1px solid #b6d3df; border-radius: 0; background: #fff; color: #18324b; font-size: 14px; font-weight: 400; }
.nc-angebote__kind label:first-of-type span { border-radius: 7px 0 0 7px; }
.nc-angebote__kind label:last-of-type span { border-radius: 0 7px 7px 0; border-left: 0; }
.nc-angebote__kind input:checked + span { background: #d2eef1; color: #173750; font-weight: 500; }
.nc-angebote__kind input:focus-visible + span { outline: 2px solid #fff; outline-offset: 2px; }
.nc-angebote__description-control { position: relative; min-width: 0; }
.nc-angebote__description-control > .nc-context-help__topic { position: absolute; left: 100%; top: 0; }
/* Veröffentlichung bleibt bei beiden Anzeigenarten in derselben halben Rasterspalte. */
.nc-angebote__paired-groups > [data-publication] { grid-column: 1; }
.nc-angebote__paired-groups > [data-offer-only] { grid-column: 2; }
.nc-angebote__wanted-fee { min-width: 0; }
@media (max-width: 600px) {
    .nc-angebote .nc-angebote__head { flex-wrap: wrap; gap: 8px; }
    .nc-angebote__kind { order: 3; flex-basis: 100%; }
}
@media (max-width: 360px) {
    .nc-angebote .nc-angebote__field > label { overflow-wrap: anywhere; }
    .nc-angebote__field-group > [data-planned] { padding-right: 0; }
}
#nc-offer-dialog.is-output .nc-angebote__head h2 { color: #fff; }

/* Aktionen und Darstellungsgröße stehen bei den Ergebnissen. */
.nc-offer-feed__head, .nc-offer-results-head { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 16px; }
.nc-offer-feed__head { padding: 10px 14px; border-radius: 14px; background: #2173ab; color: #fff; }
.nc-offer-feed__head h2 { margin: 0; color: #fff; }
.nc-offer-feed .nc-offer-feed__head .nc-offer-new > summary { border-color: #ffffffaa; background: #ffffff24; color: #fff; }
.nc-offer-new { position: relative; flex: 0 0 auto; }
.nc-offer-new > summary { min-height: 44px; display: grid; place-items: center; padding: 8px 14px; border: 1px solid #2173ab66; border-radius: 10px; background: #2173ab1f; color: #174f77; cursor: pointer; list-style: none; font-weight: 600; }
.nc-offer-new > summary::-webkit-details-marker { display: none; }
.nc-offer-new__menu { position: absolute; z-index: 40; right: 0; top: 100%; width: min(270px, calc(100vw - 32px)); padding: 4px; border: 1px solid #899bab; border-radius: 10px; background: #fff; box-shadow: 0 8px 20px #183d6226; }
.nc-offer-feed .nc-offer-new__menu button { display: block; width: 100%; min-height: 44px; padding: 8px; border: 0; border-radius: 6px; background: #fff; color: #263746; text-align: left; font: inherit; overflow-wrap: anywhere; }
.nc-offer-feed .nc-offer-new__menu button:hover { background: #2173ab1f; }
.nc-offer-results-head { margin: 8px 0 6px; }
.nc-offer-results-head .nc-offer-navigation { margin: 0; }
.nc-offer-size { display: grid; gap: 2px; flex: 0 1 250px; min-width: min(100%, 200px); font: 500 13px/17px Inter, Roboto, sans-serif; }
/* Kategorie und Zustand/Suchart behalten auch mobil zwei gleich breite Spalten. */

/* Öffentliche Ergebnisfläche aus dem Klickmodell; persönliche Verwaltung separat. */
.nc-offer-feed.nc-offer-marketplace { width: 100%; max-width: 100%; min-height: max(var(--nc-open-filter-height,0px),var(--nc-open-new-height,0px)); margin: 0; padding: 15px; border: 0; border-radius: 13px; background: #fff; color: #18324b; font-family: Inter, Roboto, Arial, sans-serif; }
.nc-offer-marketplace .nc-offer-feed__head { display: grid; grid-template-columns: minmax(0,max-content) minmax(120px,1fr); justify-content: stretch; align-items: center; gap: 4px 8px; margin: 0 0 10px; padding: 0; border: 0; border-radius: 0; background: transparent; color: #18324b; }
.nc-offer-marketplace .nc-offer-feed__head h2 { margin: 0; padding: 0; color: #18324b; font: 500 18px/1.3 Inter, Roboto, Arial, sans-serif; }
.nc-offer-marketplace .nc-offer-feed__heading { display: contents; }
.nc-offer-marketplace .nc-offer-feed__titleline { grid-column: 1; grid-row: 1; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 10px; min-width: 0; }
.nc-offer-marketplace .nc-offer-feed__titleline h2 { overflow-wrap: anywhere; }
.nc-offer-marketplace [data-feed-message] { grid-column: 1 / -1; grid-row: 2; display: block; margin-top: 0; color: #587083; font: 400 12px/1.4 Inter, Roboto, Arial, sans-serif; overflow-wrap: anywhere; }
.nc-offer-marketplace [data-feed-message]:empty { display: none; }
.nc-offer-marketplace .nc-offer-feed__actions { grid-column: 2; grid-row: 1; justify-self: end; display: flex; align-items: center; width: 100%; max-width: 220px; }
.nc-offer-marketplace .nc-offer-feed__head .nc-offer-new > summary { min-height: 44px; padding: 9px 14px; border: 1px solid #4a9daa; border-radius: 8px; background: #eaf5f5; color: #1b5863; font: 400 14px/1.4 Inter, Roboto, Arial, sans-serif; }
.nc-offer-marketplace .nc-offer-new__menu { left: 0; right: auto; top: calc(100% + 4px); width: 235px; max-width: calc(100vw - 55px); padding: 6px; border-color: #b6c9d6; border-radius: 9px; box-shadow: 0 12px 25px #142d5d30; }
.nc-offer-marketplace .nc-offer-new__menu button { padding: 10px; color: #18324b; font: 400 14px/1.4 Inter, Roboto, Arial, sans-serif; }
.nc-offer-marketplace .nc-offer-new__menu button:is(:hover,:focus-visible) { background: #e9f3f5; }
.nc-offer-marketplace .nc-offer-size { display: grid; flex: 1 1 0; width: 100%; min-width: 0; margin: 0; gap: 0; color: #4a6074; font: 500 12px/15px Inter, Roboto, Arial, sans-serif; }
.nc-offer-marketplace .nc-offer-size__control { gap: 5px; min-height: 44px; }
.nc-offer-marketplace [data-offer-cards] { gap: 8px; align-items: stretch; padding: 3px; margin: -3px; }
.nc-offer-marketplace [data-offer-cards]:empty { padding: 0; margin: 0; }
.nc-offer-marketplace .nc-offer-card { container: nc-offer-card / inline-size; border: 1px solid #dbe5ea; border-radius: 9px; min-height: 132px; background: #fff; }
.nc-offer-marketplace .nc-offer-card__open { display: flex; flex-direction: row; align-items: stretch; gap: 0; height: 100%; min-height: 132px; padding: 0; color: #18324b; }
.nc-offer-marketplace .nc-offer-card__open:focus-visible { outline-offset: -3px; }
.nc-offer-marketplace .nc-offer-card__open > .nc-offer-card__media { position: relative; flex: 0 0 35%; width: 35%; aspect-ratio: 4 / 3; padding: 0; background: #f1f4f6; }
.nc-offer-marketplace .nc-offer-card__media :is(img,.nc-offer-card__no-image) { position: absolute; inset: 0; width: 100%; height: 100%; aspect-ratio: auto; object-fit: contain; font-size: 11px; }
.nc-offer-marketplace .nc-offer-card__open > .nc-offer-card__copy { display: flex; flex: 1 1 0; flex-direction: column; gap: 4px; min-width: 0; padding: 8px; }
.nc-offer-marketplace .nc-offer-card__category { color: #526b7d; font-size: 11px; font-weight: 400; line-height: 1.4; }
.nc-offer-marketplace .nc-offer-card__category strong { font-weight: 600; color: #24547d; }
.nc-offer-marketplace .nc-offer-card__title { color: #18324b; font-size: 13px; font-weight: 500; line-height: 1.35; overflow-wrap: anywhere; }
.nc-offer-marketplace .nc-offer-card__price { margin-top: auto; color: #24547d; font-size: 13px; line-height: 1.35; overflow-wrap: anywhere; }
.nc-offer-marketplace .nc-offer-card__date { color: #526b7d; font-size: 11px; line-height: 1.4; }
.nc-offer-marketplace :is(.nc-offer-card__excerpt,.nc-offer-card__facts,.nc-offer-card__shipping,.nc-offer-card__excerpt-long) { display: none; }
.nc-offer-marketplace :is(.nc-offer-card__excerpt,.nc-offer-card__facts,.nc-offer-card__shipping) { font-size: 12px; line-height: 1.4; overflow-wrap: anywhere; }
.nc-offer-marketplace .nc-offer-card__facts { flex-wrap: wrap; gap: 6px; color: #18324b; }
.nc-offer-marketplace .nc-offer-card__facts > span { display: grid; flex: 1 1 115px; min-width: 0; max-width: 100%; gap: 2px; padding: 4px 6px; border: 1px solid #dbe5ea; border-radius: 6px; overflow-wrap: anywhere; }
.nc-offer-marketplace :is(.nc-offer-card__facts,.nc-offer-card__shipping,.nc-offer-card__excerpt) strong { font-weight: 600; }
.nc-offer-marketplace .nc-offer-card__excerpt > strong { display: block; margin-bottom: 2px; }
.nc-offer-marketplace .nc-offer-card__shipping { padding: 4px 6px; border: 1px solid #dbe5ea; border-radius: 6px; }
.nc-offer-marketplace .nc-offer-card__shipping > strong { display: block; margin-bottom: 2px; }
/* Containerbreite ohne die beiden 1-px-Ränder: Karten insgesamt ab 320 bzw. 480 px. */
@container nc-offer-card (min-width: 318px) {
  .nc-offer-marketplace .nc-offer-card__excerpt { display: block; }
  .nc-offer-marketplace .nc-offer-card__facts { display: flex; }
}
@container nc-offer-card (min-width: 478px) {
  .nc-offer-marketplace .nc-offer-card__excerpt-short { display: none; }
  .nc-offer-marketplace :is(.nc-offer-card__excerpt-long,.nc-offer-card__shipping) { display: block; }
}
.nc-offer-marketplace .nc-offer-card--guest { padding: 8px; }
@media (max-width: 850px) {
  .nc-offer-feed.nc-offer-marketplace { padding: 11px; }
  .nc-offer-marketplace .nc-offer-card, .nc-offer-marketplace .nc-offer-card__open { min-height: 170px; }
  .nc-offer-marketplace .nc-offer-card__open { flex-direction: column; }
  .nc-offer-marketplace .nc-offer-card__open > .nc-offer-card__media { width: 100%; flex: 0 0 auto; min-height: 0; aspect-ratio: 4 / 3; }
  .nc-offer-marketplace .nc-offer-card__open > .nc-offer-card__copy { padding: 7px; }
  .nc-offer-marketplace :is(.nc-offer-card__title,.nc-offer-card__price) { font-size: 12px; }
}
/* Titel und +neu links, schrumpfbarer Regler rechts; Trefferstatus darunter.
   120 px lassen zwei 44-px-Aktionen, zwei 5-px-Lücken und den 22-px-Griff zu.
   Bei noch weniger Platz darf die Titelgruppe umbrechen. */

/* Dünne Gruppenrahmen trennen Gegenstand, Mengenpreis und Plattformgebühr. */
.nc-angebote__identity { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 8px; min-width: 0; }
.nc-angebote__identity, .nc-angebote__description-group, .nc-angebote__quantities, .nc-angebote__images { padding: 4px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-angebote__description-group { grid-column: 1 / -1; padding-right: 28px; }
.nc-angebote .nc-angebote__price { grid-column: 1 / -1; margin-top: 0; padding: 4px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-angebote__price-line { align-items: stretch; gap: 8px; }
.nc-angebote__price-line > .nc-angebote__field { flex: 1 1 180px; min-width: 0; padding: 4px; }
.nc-angebote__price-line > .nc-angebote__fee-control { align-content: center; flex: 1 1 180px; padding: 4px 8px; border: 1px solid #d9e1e8; border-radius: 8px; }
.nc-angebote__images { grid-column: 1 / -1; }

/* Persönliche Anzeigen: Originalverwaltung in meins, Kopf/Statistik stehen fest. */
#nc-my-offers-dialog[open] { display: flex; flex-direction: column; height: calc(100dvh - 24px); padding: 0; overflow: hidden; }
.nc-offer-feed.nc-my-offers { display: flex; flex: 1; flex-direction: column; min-width: 0; min-height: 0; max-width: 100%; padding: 8px 12px; color: #18324b; font: 400 13px/1.4 Inter, Roboto, sans-serif; }
.nc-my-offers--embedded > :is([data-mine-close],[data-own-native-head]) { display: none !important; }
.nc-my-offers__fixed { flex: 0 0 auto; min-width: 0; padding: 3px calc(3px + var(--nc-own-scrollbar-width,0px)) 3px 3px; overflow: visible; }
.nc-my-offers__filters { position: sticky; top: 0; z-index: 2; padding-bottom: 4px; background: #fff; }
.nc-my-offers__filters--flow { position: static; }
.nc-my-offers__toolbar { display: grid; grid-template-columns: max-content minmax(0,1fr) minmax(120px,220px); align-items: start; gap: 4px 12px; }
.nc-my-offers__toolbar .nc-offer-size { flex: 1 1 120px; width: 220px; min-width: 120px; max-width: min(100%,220px); margin-left: auto; }
.nc-my-offers .nc-offer-search { grid-template-columns: repeat(3,minmax(0,1fr)); margin-top: 4px; }
.nc-my-offers .nc-offer-multi__panel { position: static; width: 100%; max-width: 100%; box-shadow: none; }
/* Das native Aufklappmenü überlagert die Liste; seine Breite vergrößert +neu nicht. */
.nc-my-offers__toolbar > .nc-offer-new { width: max-content; max-width: 100%; justify-self: start; }
.nc-my-offers .nc-offer-new__menu { position: fixed; inset: auto; width: min(270px,calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: 0; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; visibility: hidden; box-shadow: none; }
.nc-my-offers .nc-offer-multi__panel { max-height: none; }
.nc-my-offers [data-feed-message] { margin: 4px 0; overflow-wrap: anywhere; }
.nc-my-offers [data-feed-message]:empty { display: none; }
.nc-my-offers__scroll { flex: 1; min-height: 0; padding: 3px; overflow-x: hidden; overflow-y: auto; scrollbar-gutter: stable; overscroll-behavior-y: contain; }
.nc-my-offers [data-offer-cards] { align-items: start; gap: 8px; max-height: none; overflow: visible; }
.nc-my-offers .nc-offer-card { overflow: visible; overflow-wrap: anywhere; }
.nc-my-offers .nc-offer-card__media { display: block; padding: 0 !important; }
.nc-my-offers .nc-offer-card__media img { display: block; width: 100%; aspect-ratio: 1; object-fit: contain; border-radius: 9px 9px 0 0; }
.nc-my-offers .nc-offer-card__title { font-size: 14px; overflow-wrap: anywhere; }
.nc-my-offers .nc-offer-management button { font-size: 13px; }
.nc-my-offers .nc-my-offers__status { font-weight: 600; padding-bottom: 4px; }
.nc-my-offers__footer { flex: 0 0 auto; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 0 12px; padding: 6px calc(3px + var(--nc-own-scrollbar-width,0px)) 0 3px; color: #587083; font-size: 12px; overflow-wrap: anywhere; }
.nc-my-offers :is(.nc-offer-size,.nc-offer-size__control,.nc-offer-size__track,.nc-offer-size__control > button,.nc-offer-size__track input[type="range"]) { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.nc-my-offers .nc-offer-size__track input[type="range"]::-webkit-slider-runnable-track { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.nc-my-offers .nc-offer-size__track input[type="range"]::-webkit-slider-thumb { box-shadow: none !important; }
.nc-my-offers .nc-offer-size__track input[type="range"]::-moz-range-track,
.nc-my-offers .nc-offer-size__track input[type="range"]::-moz-range-progress { border: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: transparent !important; }
.nc-my-offers .nc-offer-size__track input[type="range"]::-moz-range-thumb { box-shadow: none !important; }

/* Gewählter Text darf umbrechen; die native Auswahl bleibt die Bedienfläche. */
.nc-my-offers__select { position: relative; display: block; min-height: 44px; }
.nc-my-offers [data-own-select-text] { display: flex; align-items: center; min-height: 36px; margin: 4px 0; padding: 6px 28px 6px 8px; border: 1px solid #899bab; border-radius: 8px; background: #fff; font: 400 16px/1.25 Inter, Roboto, sans-serif; overflow-wrap: anywhere; }
.nc-my-offers__select::after { content: '⌄'; position: absolute; right: 8px; top: 12px; pointer-events: none; }
.nc-my-offers .nc-offer-search .nc-my-offers__select > select { position: absolute; z-index: 2; inset: 0; width: 100%; height: 100%; min-height: 44px; margin: 0; opacity: 0; cursor: pointer; }
.nc-my-offers__select:has(select:focus-visible) { outline: 3px solid #2f53ab; outline-offset: 2px; }
@media (forced-colors: active) { .nc-my-offers .nc-offer-search .nc-my-offers__select > select { position: static; opacity: 1; } .nc-my-offers [data-own-select-text], .nc-my-offers__select::after { display: none; } }

/* Direkte Bestandsansichten und Suchverknüpfung über die verfügbare Filterbreite. */
.nc-my-offers__views { display: flex; flex-wrap: wrap; align-items: start; gap: 4px; min-width: 0; margin: 0; padding: 0; border: 0; }
.nc-my-offers__views > legend.screen-reader-text { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); }
.nc-my-offers__views > label { position: relative; display: flex; flex: 0 1 auto; width: auto; max-width: 100%; margin: 0; padding: 0; cursor: pointer; }
.nc-my-offers__views input[type="radio"] { position: absolute; opacity: 0; width: 1px; height: 1px; min-height: 0; margin: 0; padding: 0; }
.nc-my-offers__views span { display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 6px 10px; border: 1px solid #c4d2dd; border-radius: 8px; color: #18324b; background: #fff; font: 400 13px/1.3 Inter,Roboto,sans-serif; overflow-wrap: anywhere; }
.nc-my-offers__views input:checked + span { background: #d2eef1; border-color: #4a9daa; font-weight: 500; }
.nc-my-offers__views input:focus-visible + span { outline: 3px solid #2f53ab; outline-offset: -3px; }
.nc-my-offers .nc-offer-search > .nc-offer-search__match { grid-column: 1 / -1; width: 100%; max-width: 100%; }
.nc-my-offers .nc-offer-search__match > label { flex: 0 1 auto; width: auto; }
.nc-my-offers__select:has(select:disabled) [data-own-select-text] { color: #587083; background: #f1f4f6; }
@media (max-width: 800px) { .nc-my-offers .nc-offer-search { grid-template-columns: repeat(2,minmax(0,1fr)); } .nc-my-offers .nc-offer-search__keyword { grid-column: 1 / -1; } }
@media (max-width: 650px) {
    .nc-my-offers__toolbar { grid-template-columns: minmax(75px,1fr) minmax(120px,1fr); }
    .nc-my-offers__toolbar > .nc-offer-new { grid-column: 1; grid-row: 1; justify-self: start; max-width: 100%; }
    .nc-my-offers__toolbar > .nc-offer-size { grid-column: 2; grid-row: 1; }
    .nc-my-offers__toolbar > .nc-my-offers__views { grid-column: 1 / -1; grid-row: 2; }
}
