/* Postebote brand system - balanced, modern and contrast checked. */
:root {
  --pps-brand-primary: var(--pps-d-button-bg, #717f64);
  --pps-brand-secondary: var(--pps-d-accent, #93a383);
  --pps-brand-sand: #cdcbc0;
  --pps-brand-black: #000000;
  --pps-brand-white: #ffffff;
  --pps-brand-bg: var(--pps-d-bg, #ffffff);
  --pps-brand-text: var(--pps-d-text, #000000);
  --pps-brand-button-text: var(--pps-d-button-text, #000000);
  --pps-brand-soft: color-mix(in srgb, var(--pps-brand-sand) 42%, var(--pps-brand-white) 58%);
  --pps-brand-line: color-mix(in srgb, var(--pps-brand-sand) 84%, var(--pps-brand-black) 16%);
  --pps-brand-shadow: 0 14px 38px rgba(0, 0, 0, .09);
  --pps-brand-radius: 18px;
  --pps-brand-font: var(--pps-d-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
}

/* Shared interaction language. */
.pps-shop :where(button, input, select, textarea, a),
.pps-pos-wrap :where(button, input, select, textarea, a),
.pps-mpos :where(button, input, select, textarea, a),
.pps-mobile-orders :where(button, input, select, textarea, a),
.pps-inventory :where(button, input, select, textarea, a) {
  transition: border-color .16s ease, background-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.pps-shop :where(button, input, select, textarea, a):focus-visible,
.pps-pos-wrap :where(button, input, select, textarea, a):focus-visible,
.pps-mpos :where(button, input, select, textarea, a):focus-visible,
.pps-mobile-orders :where(button, input, select, textarea, a):focus-visible,
.pps-inventory :where(button, input, select, textarea, a):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--pps-brand-secondary) 70%, transparent) !important;
  outline-offset: 2px;
}

/* Public shop. */
.pps-shop {
  --pps-brand-primary: var(--pps-d-button-bg, #717f64);
  --pps-brand-secondary: var(--pps-d-accent, #93a383);
  --pps-brand-bg: var(--pps-d-bg, #ffffff);
  --pps-brand-text: var(--pps-d-text, #000000);
  color: var(--pps-brand-text);
  font-family: var(--pps-brand-font);
}

.pps-shop :where(h1, h2, h3, h4, strong, label, legend) { color: var(--pps-brand-text); }
.pps-shop .pps-products { gap: clamp(14px, 2vw, 24px); }
.pps-shop .pps-product,
.pps-shop .pps-cart,
.pps-shop .pps-checkout-view,
.pps-shop .pps-modal-content {
  border: 1px solid var(--pps-brand-sand) !important;
  border-radius: var(--pps-brand-radius) !important;
  background: var(--pps-brand-white) !important;
  color: var(--pps-brand-black) !important;
  box-shadow: var(--pps-brand-shadow) !important;
}

.pps-shop .pps-product:hover {
  border-color: var(--pps-brand-primary) !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, .13) !important;
  transform: translateY(-2px);
}

.pps-shop :where(.pps-button, .pps-add, .pps-checkout-button, button[type="submit"]) {
  border: 1px solid var(--pps-brand-primary) !important;
  border-radius: 12px !important;
  background: var(--pps-brand-primary) !important;
  color: var(--pps-brand-button-text) !important;
  font-weight: 800 !important;
  box-shadow: none !important;
}

.pps-shop :where(.pps-button, .pps-add, .pps-checkout-button, button[type="submit"]):hover {
  background: var(--pps-brand-secondary) !important;
  border-color: var(--pps-brand-secondary) !important;
  color: var(--pps-brand-black) !important;
}

.pps-shop :where(input, select, textarea) {
  border: 1px solid var(--pps-brand-line) !important;
  border-radius: 10px !important;
  background: var(--pps-brand-white) !important;
  color: var(--pps-brand-black) !important;
}

.pps-shop :where(.pps-category-button, .pps-size-option, .pps-pill) {
  border-color: var(--pps-brand-sand) !important;
  background: var(--pps-brand-soft) !important;
  color: var(--pps-brand-black) !important;
}

.pps-shop :where(.is-active, [aria-pressed="true"], input:checked + span) {
  border-color: var(--pps-brand-primary) !important;
}

.pps-shop .pps-opening-hours,
.pps-shop .pps-cart-empty,
.pps-shop .pps-summary {
  background: var(--pps-brand-soft) !important;
  color: var(--pps-brand-black) !important;
}

/* WordPress plugin administration and inventory. */
body.post-type-pps_pizza:not(.pps_pizza_page_pps-order-display) #wpbody-content,
body.post-type-pps_order #wpbody-content {
  color: var(--pps-brand-black);
  font-family: var(--pps-brand-font);
}

.pps-admin-grid .pps-image-field,
.pps-revenue-cards article,
.pps-revenue-filter,
.pps-revenue-detail,
.pps-profit-section,
.pps-profit-cards article,
.pps-inv-cards article,
.pps-inv-panel {
  border-color: var(--pps-brand-sand) !important;
  border-radius: 14px !important;
  background: var(--pps-brand-white) !important;
  color: var(--pps-brand-black) !important;
  box-shadow: 0 7px 24px rgba(0, 0, 0, .06) !important;
}

.pps-inventory {
  color: var(--pps-brand-black);
  font-family: var(--pps-brand-font);
}

.pps-inventory :where(h1, h2, h3, h4, strong, label) { color: var(--pps-brand-black); }
.pps-inventory .nav-tab-wrapper { border-color: var(--pps-brand-sand); }
.pps-inventory .nav-tab {
  border-color: var(--pps-brand-sand);
  border-radius: 10px 10px 0 0;
  background: var(--pps-brand-soft);
  color: var(--pps-brand-black);
}
.pps-inventory .nav-tab-active {
  border-bottom-color: var(--pps-brand-white);
  background: var(--pps-brand-white);
  color: var(--pps-brand-black);
}

.pps-inventory :where(input, select, textarea) {
  border-color: var(--pps-brand-line) !important;
  border-radius: 8px !important;
  background: var(--pps-brand-white) !important;
  color: var(--pps-brand-black) !important;
}

.pps-inventory :where(.button-primary, .pps-inv-sales-summary .button-primary) {
  border-color: var(--pps-brand-primary) !important;
  background: var(--pps-brand-primary) !important;
  color: var(--pps-brand-black) !important;
  box-shadow: none !important;
}

.pps-inventory .button:not(.button-primary) {
  border-color: var(--pps-brand-primary);
  color: var(--pps-brand-black);
}
.pps-inventory .button:not(.button-primary):hover {
  border-color: var(--pps-brand-secondary);
  background: var(--pps-brand-soft);
}

.pps-inv-recipe-overview,
.pps-inv-minimum-panel,
.pps-inv-flow-note,
.pps-inv-dough-global { border-color: var(--pps-brand-primary) !important; }
.pps-inv-section-number,
.pps-inv-recipe-jump a > span,
.pps-inv-step-head > span,
.pps-inv-row-number {
  background: var(--pps-brand-primary) !important;
  color: var(--pps-brand-black) !important;
}
.pps-inv-production-card,
.pps-inv-sales-step,
.pps-inv-sales-recipe .pps-inv-recipe-group,
.pps-inv-minimum-insight article,
.pps-inv-production-recipe-summary > header,
.pps-inv-edit-table th {
  border-color: var(--pps-brand-sand) !important;
  background: var(--pps-brand-soft) !important;
}
.pps-inv-production-inputs .pps-inv-input-row,
.pps-inv-recipe-row,
.pps-inv-production-footer,
.pps-inv-production-recipe-summary {
  border-color: var(--pps-brand-sand) !important;
  background: var(--pps-brand-white) !important;
}
.pps-inv-result-card,
.pps-inv-production-requirements,
.pps-inv-selected-output-meta.is-existing {
  border-color: var(--pps-brand-secondary) !important;
  background: color-mix(in srgb, var(--pps-brand-secondary) 18%, var(--pps-brand-white) 82%) !important;
  color: var(--pps-brand-black) !important;
}
.pps-inv-sales-summary {
  background: var(--pps-brand-black) !important;
  color: var(--pps-brand-white) !important;
}
.pps-inv-sales-summary :where(strong, span, small) { color: var(--pps-brand-white) !important; }
.pps-inv-sort:hover,
.pps-inv-sort:focus,
.pps-inv-sort[data-direction] .pps-inv-sort-icon i { color: var(--pps-brand-primary); }
.pps-revenue-bar i { background: var(--pps-brand-primary) !important; }

/* Backend POS: calm neutral canvas, white working cards, green actions. */
.pps-pos-wrap {
  --pps-pos-bg: var(--pps-d-bg, #cdcbc0);
  --pps-pos-card: #ffffff;
  --pps-pos-card-deep: color-mix(in srgb, #ffffff 82%, #cdcbc0 18%);
  --pps-pos-line: #cdcbc0;
  --pps-pos-orange: var(--pps-d-button-bg, #717f64);
  --pps-pos-accent2: var(--pps-d-accent, #93a383);
  --pps-pos-green: #93a383;
  --pps-pos-text: var(--pps-d-text, #000000);
  --pps-pos-btn-text: var(--pps-d-button-text, #000000);
  --pps-pos-muted: color-mix(in srgb, var(--pps-pos-text) 68%, var(--pps-pos-bg) 32%);
  background: var(--pps-pos-bg) !important;
  color: var(--pps-pos-text) !important;
}
.pps-pos-wrap :where(h1, h2, h3, label, legend, strong) { color: var(--pps-pos-text) !important; }
.pps-pos-wrap .pps-pos-title { border-color: color-mix(in srgb, var(--pps-pos-text) 22%, transparent) !important; }
.pps-pos-wrap .pps-pos-title p { color: var(--pps-pos-muted) !important; }
.pps-pos-wrap .pps-pos-catalog,
.pps-pos-wrap .pps-pos-order,
.pps-pos-wrap .pps-pos-dialog,
.pps-pos-dialog-content {
  border-color: var(--pps-pos-line) !important;
  background: var(--pps-pos-card) !important;
  color: var(--pps-pos-text) !important;
  box-shadow: var(--pps-brand-shadow) !important;
}
.pps-pos-wrap .pps-pos-stock-summary {
  border-color: var(--pps-pos-primary, var(--pps-pos-orange)) !important;
  border-left-color: var(--pps-pos-orange) !important;
  background: var(--pps-pos-card) !important;
  box-shadow: var(--pps-brand-shadow) !important;
}
.pps-pos-wrap .pps-pos-stock-summary > strong,
.pps-pos-wrap .pps-pos-stock-summary span { color: var(--pps-pos-text) !important; }
.pps-pos-wrap .pps-pos-stock-summary span { color: var(--pps-pos-orange) !important; }
.pps-pos-wrap .pps-pos-stock-summary small { color: var(--pps-pos-muted) !important; }
.pps-pos-wrap .pps-pos-product {
  border-color: var(--pps-pos-line) !important;
  border-radius: 14px !important;
  background: var(--pps-pos-card-deep) !important;
  color: var(--pps-pos-text) !important;
}
.pps-pos-wrap .pps-pos-product :where(strong) { color: var(--pps-pos-text) !important; }
.pps-pos-wrap .pps-pos-product > span { color: var(--pps-pos-orange) !important; }
.pps-pos-wrap .pps-pos-product:hover,
.pps-pos-wrap .pps-pos-product:focus {
  border-color: var(--pps-pos-orange) !important;
  background: var(--pps-pos-card) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, .11) !important;
}
.pps-pos-wrap :where(input, textarea, select) {
  border-color: var(--pps-pos-line) !important;
  background: var(--pps-pos-card) !important;
  color: var(--pps-pos-text) !important;
}
.pps-pos-wrap :where(.pps-pos-empty, .pps-pos-actions, .pps-pos-mode, .pps-pos-choice) {
  border-color: var(--pps-pos-line) !important;
  background: var(--pps-pos-card-deep) !important;
  color: var(--pps-pos-text) !important;
}
.pps-pos-wrap :where(.button-primary, .pps-pos-submit, .pps-pos-categories .button.is-active) {
  border-color: var(--pps-pos-orange) !important;
  background: var(--pps-pos-orange) !important;
  color: var(--pps-pos-btn-text) !important;
}
.pps-pos-wrap .button:not(.button-primary) {
  border-color: var(--pps-pos-orange) !important;
  background: transparent !important;
  color: var(--pps-pos-text) !important;
}
.pps-pos-wrap .button:not(.button-primary):hover {
  background: var(--pps-pos-orange) !important;
  color: var(--pps-pos-btn-text) !important;
}
.pps-pos-wrap .pps-pos-cart-item,
.pps-pos-wrap .pps-pos-total { border-color: var(--pps-pos-line) !important; }
.pps-pos-wrap .pps-pos-cart-controls .button { background: var(--pps-pos-card-deep) !important; }
.pps-pos-wrap .pps-pos-stock { background: var(--pps-pos-green) !important; color: var(--pps-brand-black) !important; }

/* Mobile POS. */
body.pps-mobile-pos-page {
  --pps-dark: var(--pps-d-bg, #cdcbc0);
  --pps-card: #ffffff;
  --pps-card-deep: color-mix(in srgb, #ffffff 82%, #cdcbc0 18%);
  --pps-orange: var(--pps-d-button-bg, #717f64);
  --pps-accent2: var(--pps-d-accent, #93a383);
  --pps-text: var(--pps-d-text, #000000);
  --pps-btn-text: var(--pps-d-button-text, #000000);
  --pps-green: #93a383;
  --pps-line: #cdcbc0;
  background: var(--pps-dark) !important;
  color: var(--pps-text) !important;
}
.pps-mpos-header {
  border-color: color-mix(in srgb, var(--pps-text) 18%, transparent) !important;
  background: var(--pps-dark) !important;
  color: var(--pps-text) !important;
}
.pps-mpos-header :where(h1, p) { color: var(--pps-text) !important; }
.pps-mpos-brand { color: var(--pps-orange) !important; }
.pps-mpos-header-nav a {
  border-color: var(--pps-orange) !important;
  color: var(--pps-text) !important;
}
.pps-mpos-header-nav a:hover { background: var(--pps-orange) !important; color: var(--pps-btn-text) !important; }
.pps-mpos-mode,
.pps-mpos-empty,
.pps-mpos-actions { background: var(--pps-card-deep) !important; color: var(--pps-text) !important; }
.pps-mpos-mode span { color: var(--pps-text) !important; }
.pps-mpos-mode input:checked + span { background: var(--pps-orange) !important; color: var(--pps-btn-text) !important; }
.pps-mpos-search { background: var(--pps-dark) !important; }
.pps-mpos :where(input, textarea, select) {
  border-color: var(--pps-line) !important;
  background: var(--pps-card) !important;
  color: var(--pps-text) !important;
}
.pps-mpos-categories button { background: var(--pps-card-deep) !important; color: var(--pps-text) !important; }
.pps-mpos-categories button.is-active { background: var(--pps-orange) !important; color: var(--pps-btn-text) !important; }
.pps-mpos-product,
.pps-mpos-order,
.pps-mpos-dialog,
.pps-mpos-dialog-inner {
  border-color: var(--pps-line) !important;
  background: var(--pps-card) !important;
  color: var(--pps-text) !important;
  box-shadow: var(--pps-brand-shadow) !important;
}
.pps-mpos :where(h1, h2, h3, label, legend, strong) { color: var(--pps-text) !important; }
.pps-mpos-product > span { color: var(--pps-orange) !important; }
.pps-mpos-product:hover { border-color: var(--pps-orange) !important; background: var(--pps-card) !important; }
.pps-mpos-stock-summary {
  border-color: var(--pps-orange) !important;
  border-left-color: var(--pps-orange) !important;
  background: var(--pps-card) !important;
  box-shadow: var(--pps-brand-shadow) !important;
}
.pps-mpos-stock-summary :where(strong, small) { color: var(--pps-text) !important; }
.pps-mpos-stock-summary span { color: var(--pps-orange) !important; }
.pps-mpos-item-controls button { background: var(--pps-card-deep) !important; color: var(--pps-text) !important; }
.pps-mpos-submit,
.pps-mpos-config-foot button {
  background: var(--pps-orange) !important;
  color: var(--pps-btn-text) !important;
}
.pps-mpos-product .pps-mpos-stock { background: var(--pps-green) !important; color: var(--pps-brand-black) !important; }

/* Mobile order management. */
body.pps-mobile-orders-page {
  --pps-bg: var(--pps-d-bg, #cdcbc0);
  --pps-ink: var(--pps-d-text, #000000);
  --pps-orange: var(--pps-d-button-bg, #717f64);
  --pps-orange-dark: var(--pps-d-accent, #93a383);
  background: var(--pps-bg) !important;
  color: var(--pps-ink) !important;
}
.pps-mo-header {
  border: 1px solid color-mix(in srgb, var(--pps-ink) 18%, transparent) !important;
  background: var(--pps-bg) !important;
  color: var(--pps-ink) !important;
  box-shadow: none !important;
}
.pps-mo-header :where(h1, p) { color: var(--pps-ink) !important; }
.pps-mo-header > div > span { color: var(--pps-orange) !important; }
.pps-mo-header a { border-color: var(--pps-orange) !important; color: var(--pps-ink) !important; }
.pps-mo-header a:hover { background: var(--pps-orange) !important; color: #000000 !important; }
.pps-mo-list,
.pps-mo-detail,
.pps-mo-items,
.pps-mo-print {
  border-color: var(--pps-brand-sand) !important;
  background: #ffffff !important;
  color: #000000 !important;
  box-shadow: var(--pps-brand-shadow) !important;
}
.pps-mo-order-link { border-color: var(--pps-brand-sand) !important; background: var(--pps-brand-soft) !important; color: #000000 !important; }
.pps-mo-order-link.is-active { border-color: var(--pps-orange) !important; background: color-mix(in srgb, var(--pps-orange) 25%, #ffffff 75%) !important; }
.pps-mo-form :where(input, select) { border-color: var(--pps-brand-sand) !important; background: #ffffff !important; color: #000000 !important; }
.pps-mo-primary { background: var(--pps-orange) !important; color: #000000 !important; }

/* Kitchen and internal order monitor. */
body.pps_pizza_page_pps-order-display,
body.pps-public-order-display {
  --pps-display-bg: var(--pps-d-bg, #000000);
  --pps-display-text: var(--pps-d-text, #ffffff);
  --pps-display-accent: var(--pps-d-button-bg, #93a383);
  --pps-display-accent2: var(--pps-d-accent, #cdcbc0);
  --pps-display-btn-text: var(--pps-d-button-text, #000000);
  --pps-display-card: #ffffff;
  --pps-display-line: #cdcbc0;
  background: var(--pps-display-bg) !important;
  color: var(--pps-display-text) !important;
}
.pps-display-header { border-color: var(--pps-display-accent2) !important; }
.pps-display-card {
  border-color: var(--pps-display-line) !important;
  background: var(--pps-display-card) !important;
  color: #000000 !important;
  box-shadow: 0 14px 36px rgba(0, 0, 0, .3) !important;
}
.pps-display-card :where(h1, h2, h3, strong, b, span, p) { color: inherit; }
.pps-display-card.status-in_zubereitung { border-color: #717f64 !important; background: #cdcbc0 !important; color: #000000 !important; }
.pps-display-card.status-abholbereit { border-color: #000000 !important; background: #93a383 !important; color: #000000 !important; }
.pps-display-time strong,
.pps-display-customer > strong,
.pps-display-items b { color: inherit !important; }
.pps-display-time span,
.pps-display-items li > strong,
.pps-display-card a { color: #000000 !important; }
.pps-display-badges span { background: rgba(0, 0, 0, .11) !important; color: #000000 !important; }
.pps-display-action { background: var(--pps-display-accent) !important; color: var(--pps-display-btn-text) !important; }
.pps-display-card{border-width:3px!important}.pps-display-card-head{border-color:rgba(0,0,0,.2)!important}
.pps-display-card.is-overdue .pps-display-time>span{color:#65140e!important}.pps-display-card.is-overdue{box-shadow:inset 0 5px 0 #65140e,0 14px 36px rgba(0,0,0,.3)!important}
.pps-display-card .pps-display-badges span{border:1px solid rgba(0,0,0,.22)!important;background:#f0f0ed!important;color:#000!important}
.pps-display-card.status-in_zubereitung .pps-display-badges .status-in_zubereitung{background:#000!important;color:#fff!important}
.pps-display-card.status-abholbereit .pps-display-badges .status-abholbereit{background:#000!important;color:#fff!important}
.pps-display-card .pps-display-action{border:3px solid transparent!important;background:var(--pps-display-accent)!important;color:var(--pps-display-btn-text)!important;box-shadow:none!important}
.pps-display-card .pps-display-action:hover,.pps-display-card .pps-display-action:focus{outline:3px solid #fff!important;outline-offset:-6px!important;filter:none!important}

/* Customer-facing pickup monitor. */
body.pps-customer-display {
  --pcd-bg: var(--pps-d-bg, #000000);
  --pcd-text: var(--pps-d-text, #ffffff);
  --pcd-orange: var(--pps-d-button-bg, #93a383);
  --pcd-accent2: var(--pps-d-accent, #cdcbc0);
  --pcd-btn-text: var(--pps-d-button-text, #000000);
  background: var(--pcd-bg) !important;
  color: var(--pcd-text) !important;
}
.pps-customer-header { border-color: var(--pcd-accent2) !important; }
.pps-customer-header p { color: var(--pcd-orange) !important; }
.pps-customer-preparing {
  border-color: #717f64 !important;
  background: #cdcbc0 !important;
  color: #000000 !important;
}
.pps-customer-ready {
  border: 2px solid #000000 !important;
  background: #93a383 !important;
  color: #000000 !important;
}
.pps-customer-capacity {
  border: 2px solid #93a383 !important;
  background: #717f64 !important;
  color: #000000 !important;
}
.pps-customer-preparing .pps-customer-section-head,
.pps-customer-ready .pps-customer-section-head { border-color: rgba(0, 0, 0, .22) !important; }
.pps-customer-preparing .pps-customer-section-head :where(span, small),
.pps-customer-ready .pps-customer-section-head :where(span, small),
.pps-customer-capacity :where(span, strong, p) { color: #000000 !important; }
.pps-customer-preparing-number {
  border-color: #717f64 !important;
  background: #ffffff !important;
  color: #000000 !important;
}
.pps-customer-preparing-number :where(strong, span) { color: #000000 !important; }
.pps-customer-ready-number {
  border-color: #000000 !important;
  background: #ffffff !important;
  color: #000000 !important;
}
.pps-customer-capacity > div {
  border: 2px solid #000000 !important;
  background: #000000 !important;
  color: #ffffff !important;
}
.pps-customer-capacity > div :where(strong, span) { color: #ffffff !important; }

/* Semantic danger remains reserved for errors and unavailable states. */
.pps-pos-stock.is-empty,
.pps-mpos-stock.is-empty,
.pps-pos-stock-summary.is-empty,
.pps-mpos-stock-summary.is-empty { color: #ffffff !important; }

@media (max-width: 782px) {
  .pps-pos-wrap { padding-top: 16px !important; }
  .pps-shop .pps-product,
  .pps-shop .pps-cart,
  .pps-shop .pps-checkout-view { border-radius: 14px !important; }
}

/* 1.5.3 - vereinfachte Vor-Ort-Kasse und eindeutige Mehrfachauswahl. */
.pps-pos-checkout,.pps-mpos-checkout{display:grid;gap:14px;padding:18px;border:1px solid #cdcbc0;border-radius:16px;background:#f7f6f2;color:#000}
.pps-pos-checkout-head,.pps-mpos-checkout-head{display:grid;gap:2px}
.pps-pos-checkout-head>span,.pps-mpos-checkout-head>span{color:#717f64;font-size:11px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}
.pps-pos-checkout-head>strong,.pps-mpos-checkout-head>strong{color:#000!important;font-size:20px}
.pps-pos-pager,.pps-mpos-pager{display:grid;gap:7px;color:#000!important;font-weight:800}
.pps-pos-pager>span,.pps-mpos-pager>span{color:#585b55!important;font-size:12px;font-weight:600}
.pps-pos-pager input,.pps-mpos-pager input{width:100%!important;min-height:52px!important;border:2px solid #b8b6ac!important;border-radius:12px!important;background:#fff!important;color:#000!important;font-size:18px!important;font-weight:800!important}
.pps-pos-pager input:focus,.pps-mpos-pager input:focus{border-color:#717f64!important;outline:3px solid rgba(113,127,100,.24)!important}
.pps-pos-ec-reference,.pps-mpos-ec-reference{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 16px;padding:14px 16px;border:2px solid #717f64;border-left-width:7px;border-radius:13px;background:#fff;color:#000!important}
.pps-pos-ec-reference>span,.pps-mpos-ec-reference>span{color:#59664f!important;font-size:11px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.pps-pos-ec-reference>strong,.pps-mpos-ec-reference>strong{grid-row:1/3;grid-column:2;color:#000!important;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(28px,4vw,38px)!important;line-height:1;letter-spacing:.12em;font-variant-numeric:tabular-nums;white-space:nowrap}
.pps-pos-ec-reference>small,.pps-mpos-ec-reference>small{color:#4e514b!important;font-weight:600;line-height:1.35}
.pps-pos-paid-confirm,.pps-mpos-paid-confirm{position:relative;display:grid!important;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:13px;min-height:78px;padding:14px 16px;border:3px solid #9b927d;border-radius:13px;background:#fbf8ef;color:#000!important;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.pps-pos-paid-confirm:hover,.pps-mpos-paid-confirm:hover{border-color:#717f64}
.pps-pos-paid-confirm.is-confirmed,.pps-mpos-paid-confirm.is-confirmed,.pps-pos-paid-confirm:has(input:checked),.pps-mpos-paid-confirm:has(input:checked){border-color:#617256;background:#dfe6d8;box-shadow:0 0 0 3px rgba(113,127,100,.18)}
.pps-pos-paid-confirm input,.pps-mpos-paid-confirm input{position:absolute!important;width:1px!important;height:1px!important;margin:0!important;opacity:0!important;pointer-events:none}
.pps-payment-copy{display:grid!important;gap:3px!important;padding:0!important;text-align:left!important}
.pps-pos-paid-confirm strong,.pps-mpos-paid-confirm strong{color:#000!important;font-size:16px}
.pps-pos-paid-confirm small,.pps-mpos-paid-confirm small{color:#4e514b!important;font-weight:600;line-height:1.35}
.pps-choice-check{display:grid!important;width:30px!important;height:30px!important;min-height:30px!important;padding:0!important;place-items:center;border:2px solid #767b72;border-radius:8px!important;background:#fff!important;color:#000!important;font-size:19px!important;font-weight:1000!important;line-height:1!important}
.pps-pos-paid-confirm.is-confirmed .pps-choice-check,.pps-mpos-paid-confirm.is-confirmed .pps-choice-check,.pps-pos-paid-confirm:has(input:checked) .pps-choice-check,.pps-mpos-paid-confirm:has(input:checked) .pps-choice-check,.pps-pos-mode-option.is-selected .pps-choice-check,.pps-mpos-mode-option.is-selected .pps-choice-check{border-color:#617256!important;background:#717f64!important}
.pps-pos-paid-confirm.is-confirmed .pps-choice-check::after,.pps-mpos-paid-confirm.is-confirmed .pps-choice-check::after,.pps-pos-paid-confirm:has(input:checked) .pps-choice-check::after,.pps-mpos-paid-confirm:has(input:checked) .pps-choice-check::after,.pps-pos-mode-option.is-selected .pps-choice-check::after,.pps-mpos-mode-option.is-selected .pps-choice-check::after{content:"✓"}
.pps-pos-paid-confirm:has(input:focus-visible),.pps-mpos-paid-confirm:has(input:focus-visible),.pps-pos-mode-option:has(input:focus-visible),.pps-mpos-mode-option:has(input:focus-visible){outline:3px solid rgba(113,127,100,.4);outline-offset:2px}
.pps-pos-mode,.pps-mpos-mode{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:10px!important}
.pps-pos-mode-option,.pps-mpos-mode-option{position:relative;display:grid!important;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:12px;min-height:68px;padding:12px 14px!important;border:2px solid #c2c0b7;border-radius:12px;background:#fff!important;color:#000!important;cursor:pointer}
.pps-pos-mode-option>input,.pps-mpos-mode-option>input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.pps-pos-mode-option>span:last-child,.pps-mpos-mode-option>span:last-child{display:grid!important;gap:2px!important;min-height:0!important;padding:0!important;border-radius:0!important;background:transparent!important;color:#000!important;text-align:left!important;box-shadow:none!important}
.pps-pos-mode-option strong,.pps-mpos-mode-option strong{color:#000!important;font-size:16px;line-height:1.2}.pps-pos-mode-option small,.pps-mpos-mode-option small{color:#555a51!important;font-size:12px;font-weight:600;line-height:1.3}
.pps-pos-mode-option.is-selected,.pps-mpos-mode-option.is-selected,.pps-pos-mode-option:has(input:checked),.pps-mpos-mode-option:has(input:checked){border-color:#617256;background:#e3e9dd!important;box-shadow:0 0 0 3px rgba(113,127,100,.15)}
.pps-pos-print-hint,.pps-mpos-print-hint{margin:0;padding:12px 14px;border-left:4px solid #93a383;border-radius:9px;background:#e9eee4;color:#20221f!important;line-height:1.45}
.pps-pos-print-hint strong,.pps-mpos-print-hint strong{color:#000!important}
.pps-pos-submit:disabled,.pps-mpos-submit:disabled{border-color:#c4c3bc!important;background:#deddd7!important;color:#686a65!important;cursor:not-allowed!important;opacity:1!important;box-shadow:none!important}

/* Backend-Produktdialog: Radio = eine Auswahl, Checkbox = mehrere Auswahlen. */
.pps-pos-dialog-content .pps-pos-option-group{display:grid!important;gap:9px!important;padding:14px!important;border:1px solid #cdcbc0!important;background:#f7f6f2!important}
.pps-pos-option-group legend{color:#000!important;font-size:14px}.pps-pos-option-group legend small{margin-left:6px;color:#5c6158;font-size:11px;font-weight:700}
.pps-pos-dialog-content .pps-pos-option{position:relative;display:grid!important;grid-template-columns:26px minmax(0,1fr) auto;align-items:center!important;gap:11px!important;min-height:58px;padding:10px 12px;border:2px solid #d3d1c8;border-radius:12px;background:#fff;color:#000!important;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.pps-pos-dialog-content .pps-pos-option:hover{border-color:#93a383}.pps-pos-dialog-content .pps-pos-option.is-selected{border-color:#717f64;background:#e3e9dd;box-shadow:0 0 0 2px rgba(113,127,100,.14)}
.pps-pos-dialog-content .pps-pos-option>input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.pps-pos-check,.pps-mpos-check{display:grid;width:24px;height:24px;place-items:center;border:2px solid #85897f;border-radius:7px;background:#fff;color:#000;font-size:15px;font-weight:1000}
.pps-pos-size-option .pps-pos-check,.pps-mpos-size-option .pps-mpos-check{border-radius:50%}
.pps-pos-option.is-selected .pps-pos-check,.pps-mpos-option.is-selected .pps-mpos-check{border-color:#717f64;background:#717f64}
.pps-pos-option.is-selected .pps-pos-check::after,.pps-mpos-option.is-selected .pps-mpos-check::after{content:"✓"}
.pps-pos-option:has(input:focus-visible),.pps-mpos-option:has(input:focus-visible){outline:3px solid rgba(113,127,100,.38);outline-offset:2px}
.pps-pos-option-copy,.pps-mpos-option-copy{display:grid;min-width:0;gap:3px}.pps-pos-option-copy strong,.pps-mpos-option-copy strong{color:#000!important;line-height:1.25}.pps-pos-option-copy small,.pps-mpos-option-copy small{color:#555a51!important;font-size:12px;line-height:1.3}
.pps-pos-option-price,.pps-mpos-option-price{color:#000!important;white-space:nowrap}.pps-pos-option.is-unavailable,.pps-mpos-option.is-unavailable{opacity:.48;cursor:not-allowed}
.pps-pos-selection-summary,.pps-mpos-selection-summary{margin:2px 2px 0;color:#50554d!important;font-size:12px;font-weight:800}.pps-pos-dialog-content,.pps-pos-dialog-content h2{color:#000!important}

/* Mobile Kasse: klare helle Arbeitsfläche und robuste Touchziele. */
body.pps-mobile-pos-page{--pps-dark:#f3f2ed!important;--pps-card:#fff!important;--pps-card-deep:#f7f6f2!important;--pps-text:#000!important;--pps-btn-text:#000!important;--pps-line:#cdcbc0!important;background:#f3f2ed!important;color:#000!important}
.pps-mpos{padding-bottom:42px!important}.pps-mpos-header{position:relative!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto;padding:18px clamp(16px,4vw,30px)!important;border:0!important;border-bottom:5px solid #717f64!important;background:#000!important;color:#fff!important}
.pps-mpos-header :where(h1,p){color:#fff!important}.pps-mpos-brand{color:#b7c6aa!important}.pps-mpos-header-nav{flex-wrap:wrap!important;overflow:visible!important}
.pps-mpos-header-nav a{min-height:44px;border:1px solid #93a383!important;background:#fff!important;color:#000!important}.pps-mpos-header-nav a:hover,.pps-mpos-header-nav a:focus{background:#93a383!important;color:#000!important}
.pps-mpos-main{width:min(1080px,100%)!important;padding:16px!important}.pps-mpos-mode{padding:5px!important;border:1px solid #cdcbc0;background:#e3e2dc!important}.pps-mpos-mode span{min-height:48px;color:#000!important}.pps-mpos-mode input:checked+span{background:#717f64!important;color:#000!important}
.pps-mpos-stock-summary{border:1px solid #cdcbc0!important;border-left:5px solid #717f64!important;background:#fff!important;color:#000!important;box-shadow:0 8px 22px rgba(0,0,0,.08)!important}.pps-mpos-stock-summary :where(span,strong,small){color:#000!important}.pps-mpos-stock-summary span{color:#5e6c53!important}
.pps-mpos-direct-hint{border-left-color:#93a383!important;background:#e8ede3!important;color:#000!important}.pps-mpos-search{position:sticky!important;top:0!important;z-index:12!important;padding:10px 0!important;background:#f3f2ed!important}.pps-mpos-search input{min-height:52px!important;border:2px solid #a9aaa2!important;background:#fff!important;color:#000!important;font-size:16px!important}.pps-mpos-search input::placeholder{color:#5f625c!important}
.pps-mpos-categories{gap:8px!important;padding-bottom:14px!important}.pps-mpos-categories button{min-height:44px;border:1px solid #b8b6ad!important;background:#fff!important;color:#000!important}.pps-mpos-categories button.is-active{border-color:#717f64!important;background:#717f64!important;color:#000!important}
.pps-mpos-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}.pps-mpos-product{min-height:116px!important;border:2px solid #d1cfc6!important;background:#fff!important;color:#000!important;box-shadow:0 5px 16px rgba(0,0,0,.07)!important}.pps-mpos-product :where(strong,span){color:#000!important}.pps-mpos-product:hover,.pps-mpos-product:focus{border-color:#717f64!important;background:#f7f8f4!important}.pps-mpos-product .pps-mpos-stock{align-self:flex-start;background:#dfe6d8!important;color:#000!important}
.pps-mpos-order{padding:clamp(16px,4vw,24px)!important;border:1px solid #cdcbc0!important;background:#fff!important;color:#000!important;box-shadow:0 10px 28px rgba(0,0,0,.09)!important}.pps-mpos-order :where(h2,label,legend,strong,.pps-mpos-total){color:#000!important}.pps-mpos-empty,.pps-mpos-actions{background:#f3f2ed!important;color:#4b4f48!important}.pps-mpos-item{border-color:#cdcbc0!important}.pps-mpos-item small,.pps-mpos-hint{color:#545950!important}.pps-mpos-item-controls button{border:1px solid #b9b8b0!important;background:#f0efe9!important;color:#000!important}.pps-mpos-item-controls button:active{background:#93a383!important;color:#000!important}.pps-mpos-submit{min-height:58px!important;background:#717f64!important;color:#000!important;font-size:18px!important}
.pps-mpos-dialog{border:1px solid #aaa89e!important;background:#fff!important;color:#000!important}.pps-mpos-dialog-inner{background:#fff!important;color:#000!important}.pps-mpos-dialog :where(h2,label,legend,strong){color:#000!important}.pps-mpos-dialog-close{color:#000!important}
.pps-mpos-dialog .pps-mpos-option-group{display:grid!important;gap:9px!important;padding:13px!important;border:1px solid #cdcbc0!important;background:#f7f6f2!important}.pps-mpos-option-group legend small{margin-left:5px;color:#555a51;font-size:11px}
.pps-mpos-dialog .pps-mpos-option{position:relative;display:grid!important;grid-template-columns:26px minmax(0,1fr) auto;align-items:center!important;gap:11px!important;min-height:60px;padding:10px 12px;border:2px solid #d2d0c7;border-radius:12px;background:#fff;color:#000!important;cursor:pointer}.pps-mpos-dialog .pps-mpos-option.is-selected{border-color:#717f64;background:#e3e9dd;box-shadow:0 0 0 2px rgba(113,127,100,.14)}.pps-mpos-dialog .pps-mpos-option>input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}
.pps-mpos-config-foot{position:sticky;bottom:0;padding:12px 0 2px;border-top:1px solid #cdcbc0;background:#fff}.pps-mpos-config-foot input{border:2px solid #b7b5ac!important;background:#fff!important;color:#000!important}.pps-mpos-config-foot button{min-height:52px;background:#717f64!important;color:#000!important}
@media(max-width:700px){.pps-mpos-header{grid-template-columns:1fr!important;gap:15px!important}.pps-mpos-header-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.pps-mpos-header-nav a{justify-content:center;text-align:center}.pps-mpos-stock-summary{grid-template-columns:1fr!important}.pps-mpos-stock-summary strong{grid-column:auto!important;grid-row:auto!important}}
@media(max-width:560px){.pps-mpos-main{padding:12px!important}.pps-mpos-products{grid-template-columns:1fr!important;gap:9px!important}.pps-mpos-product{min-height:86px!important}.pps-mpos-order{border-radius:14px!important}.pps-mpos-dialog{width:calc(100vw - 12px)!important;max-height:94vh!important;border-radius:14px!important}.pps-mpos-dialog-inner{padding:16px 12px!important}.pps-mpos-dialog .pps-mpos-option{grid-template-columns:26px minmax(0,1fr)}.pps-mpos-option-price{grid-column:2;justify-self:start}.pps-mpos-config-foot{align-items:stretch!important;flex-direction:column!important}.pps-mpos-config-foot input{width:100%!important}.pps-mpos-config-foot button{width:100%}}
@media(max-width:560px){.pps-pos-mode,.pps-mpos-mode{grid-template-columns:1fr!important}.pps-pos-ec-reference,.pps-mpos-ec-reference{grid-template-columns:1fr!important}.pps-pos-ec-reference>strong,.pps-mpos-ec-reference>strong{grid-row:auto;grid-column:auto;margin:5px 0 3px;font-size:34px!important}.pps-pos-paid-confirm,.pps-mpos-paid-confirm{min-height:84px}.pps-mpos-success p span{display:block;margin-top:8px}.pps-mpos-success p b{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:22px;letter-spacing:.1em}}
