:root{--color-green:#347839;--color-green-hover:#2f6d34;--color-green-soft:#f3f8f2;--color-green-light:#5aa860;--linie-rahmen:1px solid var(--color-divider);--color-text-primary:#242833;--color-text-secondary:#6c6d72;--color-text-muted:#70747b;--color-text-on-green:#ffffff;--color-background:#ffffff;--color-surface:#ffffff;--color-surface-subtle:#fafbfa;--color-border:#e8ebe9;--color-divider:#eceeed;--color-input-border:#d8dcda;--color-backdrop:rgba(36,40,51,0.35);--color-placeholder:#8c9099;--color-icon-muted:#6e7179;--color-success:#347839;--color-warning:#9a5b08;--color-warning-border:#e8ba78;--color-warning-bg:#fff8ec;--color-danger:#d33a2c;--color-danger-border:#e8a39b;--color-danger-bg:#fff7f5;--radius-small:10px;--radius-control:12px;--radius-list:14px;--radius-icon:16px;--radius-card:18px;--radius-nav:22px;--radius-round:999px;--height-control:52px;--height-header-button:48px;--height-product-row:76px;--height-stock-row:84px;--height-bottom-nav:68px;--height-button-primary:56px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--shadow-card:0 2px 6px rgba(36,40,51,0.025),0 8px 20px rgba(36,40,51,0.035);--shadow-floating:0 8px 24px rgba(36,40,51,0.1);--shadow-scanner:0 8px 28px rgba(52,120,57,0.22);--touch-target-min:48px;--font-family-app:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",sans-serif;--farbe-hintergrund:var(--color-background);--farbe-flaeche:var(--color-surface-subtle);--farbe-hintergrund-abgesetzt:var(--color-surface-subtle);--farbe-text:var(--color-text-primary);--farbe-text-schwach:var(--color-text-secondary);--farbe-rahmen:var(--color-border);--farbe-primaer:var(--color-green);--farbe-primaer-druck:var(--color-green-hover);--farbe-primaer-text:var(--color-text-on-green);--farbe-ok:var(--color-success);--farbe-ok-flaeche:var(--color-green-soft);--farbe-eingeplant-flaeche:var(--color-green-soft);--farbe-erfolg:var(--color-success);--farbe-warnung:var(--color-warning);--farbe-warnung-flaeche:var(--color-warning-bg);--farbe-alarm:var(--color-danger);--farbe-alarm-flaeche:var(--color-danger-bg);--farbe-fehler:var(--color-danger);--farbe-deaktiviert:var(--color-text-muted);--farbe-deaktiviert-flaeche:var(--color-surface-subtle);--farbe-fokus:var(--color-green);--abstand-xs:var(--space-2);--abstand-s:var(--space-3);--abstand-m:var(--space-4);--abstand-l:var(--space-6);--abstand-xl:var(--space-8);--radius-s:var(--radius-small);--radius-m:var(--radius-control);--radius-l:var(--radius-card);--schrift-basis:16px;--schrift-klein:14px;--schrift-gross:18px;--schrift-titel:21px;--flaeche-min:var(--touch-target-min);--schaltflaeche-hoch:var(--height-button-primary);--kachel-hoch:96px;--trefferzeile-hoch:var(--height-product-row);--kachel-eingang:var(--color-green);--kachel-ausgang:var(--color-green);--kachel-umbuchen:var(--color-green);--kachel-verwaltung:var(--color-green)}.button-primary,.schaltflaeche-primaer{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:var(--height-button-primary);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-green);background:var(--color-green);color:var(--color-text-on-green);font-size:16px;font-weight:600}.button-primary:active:not(:disabled),.schaltflaeche-primaer:active:not(:disabled){background:var(--color-green-hover);border-color:var(--color-green-hover)}.button-secondary,.schaltflaeche-sekundaer{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--height-button-primary);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-green);background:var(--color-surface);color:var(--color-green);font-size:16px;font-weight:600}.button-secondary:active:not(:disabled),.schaltflaeche-sekundaer:active:not(:disabled){background:var(--color-green-soft)}.button-primary:disabled,.button-secondary:disabled,.schaltflaeche-primaer:disabled,.schaltflaeche-sekundaer:disabled{opacity:.55;cursor:not-allowed}.fehlertext{display:block;margin-top:var(--space-2);color:var(--color-danger);font-size:14px}.leerer-zustand{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:var(--space-2);padding:var(--space-12) var(--space-4);color:var(--color-text-secondary)}.dashboard-card,.kachel{border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-4)}.dashboard-card,.kachel,.product-row,.trefferzeile{background:var(--color-surface);box-shadow:var(--shadow-card)}.product-row,.trefferzeile{min-height:var(--height-product-row);padding:10px 16px;border:1px solid var(--color-border);border-radius:var(--radius-list)}.ampel-ok{color:var(--color-success)}.ampel-warnung{color:var(--color-warning);background:var(--color-warning-bg);border:1px solid var(--color-warning-border)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-family-app);font-size:16px;overflow-x:hidden}.page-content{max-width:1040px;margin-inline:auto;padding-inline:20px;width:100%;padding-bottom:calc(110px + env(safe-area-inset-bottom))}@media (min-width:430px){.page-content{padding-inline:24px}}.page-title{font-size:30px;font-weight:700;line-height:1.1;color:var(--color-green);margin:0 0 var(--space-2) 0}.page-description{font-size:14px;font-weight:400;line-height:1.35;color:var(--color-text-secondary);margin:0 0 var(--space-6) 0}.page-section{margin-bottom:var(--space-6)}a,button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--color-green);outline-offset:2px}.druckbar{cursor:pointer;touch-action:manipulation}.druckbar:active:not(:disabled){transform:scale(.985)}@media (hover:hover) and (pointer:fine){.druckbar:hover:not(:disabled){transform:translateY(-1px)}}.druckbar:disabled{cursor:not-allowed;opacity:.6}.laedt{position:relative;color:transparent!important;pointer-events:none}.laedt:after{content:"";position:absolute;top:50%;left:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border:2px solid;border-top:2px solid transparent;border-radius:50%;color:var(--color-text-on-green);animation:knopf-laedt-drehung .7s linear infinite}@keyframes knopf-laedt-drehung{to{transform:rotate(1turn)}}.form-control{width:100%;min-height:var(--height-control);padding:0 14px;border:1px solid var(--color-input-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text-primary);font-size:16px}.form-control::placeholder{color:var(--color-placeholder)}.form-control:focus-visible{outline:2px solid var(--color-green);outline-offset:2px;border-color:var(--color-green)}.form-control:disabled{background:var(--color-surface-subtle);color:var(--color-text-muted);cursor:not-allowed}.form-control--fehler{border-color:var(--color-danger-border)}.form-label{display:block;font-size:15px;font-weight:500;color:var(--color-text-primary);margin-bottom:var(--space-2)}.form-fehlertext{display:block;margin-top:var(--space-2);color:var(--color-danger);font-size:14px}.form-card{padding:var(--space-5)}.dashboard-card,.form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.dashboard-card{padding:var(--space-4)}.button-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;min-height:var(--height-button-primary);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-green);background:var(--color-green);color:var(--color-text-on-green);font-size:16px;font-weight:600}.button-primary:active:not(:disabled){background:var(--color-green-hover);border-color:var(--color-green-hover)}.button-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--height-button-primary);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-green);background:var(--color-surface);color:var(--color-green);font-size:16px;font-weight:600}.button-secondary:active:not(:disabled){background:var(--color-green-soft)}.button-neutral{border-radius:var(--radius-control);border:1px solid var(--color-input-border);color:var(--color-text-primary)}.button-danger,.button-neutral{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-target-min);padding:0 var(--space-4);background:var(--color-surface);font-size:16px;font-weight:600}.button-danger{border-radius:var(--radius-control);border:1px solid var(--color-danger-border);color:var(--color-danger)}.button-danger:disabled,.button-neutral:disabled,.button-primary:disabled,.button-secondary:disabled{opacity:.55;cursor:not-allowed}.subpage-header{min-height:74px;display:flex;align-items:center;justify-content:space-between;padding-inline:20px;background:var(--color-background);border-bottom:1px solid var(--color-divider)}.header-icon-button{width:var(--height-header-button);height:var(--height-header-button);min-width:var(--touch-target-min);min-height:var(--touch-target-min);display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:14px;background:var(--color-surface);flex-shrink:0}.bottom-nav{position:fixed;left:0;right:0;bottom:0;min-height:var(--height-bottom-nav);display:grid;grid-template-columns:repeat(3,1fr);align-items:center;background:var(--color-background);border:none;border-top:var(--linie-rahmen);border-radius:0;box-shadow:none;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav-mitte{position:relative;display:flex;height:100%}.bottom-nav-mitte,.bottom-nav-scanner{align-items:center;justify-content:center}.bottom-nav-scanner{position:absolute;left:50%;margin-left:-47px;top:-30px;width:94px;height:94px;display:inline-flex;border-radius:var(--radius-round);background:var(--color-green);color:var(--color-text-on-green);border:7px solid var(--color-surface);box-shadow:var(--shadow-scanner);touch-action:manipulation}.list-row{padding:12px 16px}.list-row,.product-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-list);box-shadow:var(--shadow-card)}.product-row{min-height:var(--height-product-row);padding:10px 16px}.inventory-filter{padding:8px 14px;display:flex}.inventory-filter,.scan-button{min-height:var(--height-control);align-items:center;gap:var(--space-2)}.scan-button{width:100%;display:inline-flex;justify-content:center;border:1px solid var(--color-green);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-green);font-size:16px;font-weight:600}.camera-preview{width:100%;border-radius:14px;overflow:hidden}