@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/playfair-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/playfair-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary: #1e3d3b;--color-primary-light: #2a524f;--color-primary-dark: #152b2a;--color-accent: #d4a574;--color-accent-light: #e5c4a3;--color-accent-dark: #b8895a;--color-bg-light: #f8f5f0;--color-bg-cream: #ece6dc;--color-bg-beige: #e5ddd0;--color-text: #1e3d3b;--color-text-light: #4a635f;--color-text-muted: #6b7f7c;--color-text-white: #ffffff;--color-success: #2d6a4f;--color-error: #c1292e;--color-warning: #d4a574;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-xxl: 5rem;--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(30, 61, 59, .05);--shadow-md: 0 4px 6px rgba(30, 61, 59, .07);--shadow-lg: 0 10px 25px rgba(30, 61, 59, .1);--shadow-xl: 0 20px 40px rgba(30, 61, 59, .15);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{font-family:var(--font-body);font-size:1rem;line-height:1.6;color:var(--color-text);background-color:var(--color-bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-display);line-height:1.2}a{color:inherit;text-decoration:none}.loading-screen{min-height:100vh;display:grid;place-items:center;font-weight:500;color:var(--color-text)}.gastro-app{display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg-light)}.gastro-header{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:.75rem 1rem;background:var(--color-primary-dark);color:var(--color-text-white)}.gastro-header__brand{font-family:var(--font-display);font-size:1.3rem;color:var(--color-accent)}.gastro-header__actions{display:flex;align-items:center;gap:.75rem}.gastro-header__user{font-size:.85rem;color:#ffffffd9}.gastro-header__logout{display:grid;place-items:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:#ffffff1a;color:#fffc;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.gastro-header__logout:hover{background:#fff3;color:var(--color-text-white)}.gastro-main{flex:1;width:100%;max-width:800px;margin:0 auto;padding:var(--spacing-md) var(--spacing-sm);padding-bottom:calc(var(--spacing-md) + 72px)}.gastro-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:100;display:flex;justify-content:space-around;align-items:center;height:64px;background:var(--color-text-white);border-top:1px solid var(--color-bg-beige);box-shadow:0 -2px 8px #1e3d3b0f}.bottom-nav__item{display:flex;flex-direction:column;align-items:center;gap:.2rem;padding:.35rem .75rem;border-radius:var(--radius-md);color:var(--color-text-muted);font-size:.7rem;font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.bottom-nav__item:hover{color:var(--color-primary)}.bottom-nav__item--active{color:var(--color-accent-dark)}.bottom-nav__icon{display:flex}.bottom-nav__label{line-height:1}.page-layout{display:flex;flex-direction:column;gap:var(--spacing-md)}.page-layout__header h2{color:var(--color-primary);font-size:1.5rem}.ui-button{border:none;border-radius:var(--radius-md);padding:.65rem 1.15rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.ui-button:hover{transform:translateY(-1px)}.ui-button--primary{background:var(--color-accent);color:var(--color-primary-dark)}.ui-button--secondary{background:transparent;color:var(--color-text-white);border:1.5px solid rgba(255,255,255,.5)}.ui-button--ghost{background:transparent;color:var(--color-primary)}.ui-card{background:var(--color-text-white);border:1px solid var(--color-bg-beige);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--spacing-md)}.ui-badge{display:inline-flex;border-radius:var(--radius-full);padding:.3rem .7rem;font-size:.78rem;font-weight:600}.ui-badge--neutral{background:var(--color-bg-cream);color:var(--color-primary)}.ui-badge--success{background:#2d6a4f1f;color:var(--color-success)}.ui-badge--warning{background:#d4a5742e;color:var(--color-accent-dark)}.ui-badge--error{background:#c1292e1f;color:var(--color-error)}.ui-field{display:flex;flex-direction:column;gap:.35rem}.ui-field__label{font-size:.85rem;font-weight:600}.ui-field__error{color:var(--color-error);font-size:.78rem}.ui-input,.ui-textarea,.ui-select{width:100%;border:1px solid var(--color-bg-beige);border-radius:var(--radius-md);padding:.6rem .7rem;font:inherit;color:inherit;background:var(--color-text-white)}.ui-input:focus,.ui-textarea:focus,.ui-select:focus{outline:2px solid rgba(30,61,59,.2);outline-offset:1px}.ui-input--error,.ui-textarea--error,.ui-select--error{border-color:var(--color-error)}.ui-modal__backdrop{position:fixed;inset:0;background:#152b2a73;display:grid;place-items:center;z-index:1000;padding:1rem}.ui-modal{width:min(100%,520px);background:var(--color-text-white);border-radius:var(--radius-lg);border:1px solid var(--color-bg-beige);box-shadow:var(--shadow-xl)}.ui-modal__header{display:flex;justify-content:space-between;align-items:center;padding:.9rem 1rem;border-bottom:1px solid var(--color-bg-beige)}.ui-modal__body{padding:1rem}.ui-modal__footer{display:flex;justify-content:flex-end;gap:.6rem;padding:.9rem 1rem;border-top:1px solid var(--color-bg-beige)}.ui-modal__close{border:none;background:transparent;font-size:1.35rem;line-height:1;cursor:pointer}.login-page{min-height:100vh;display:grid;place-items:center;background:var(--color-bg-light);padding:1rem}.login-card{max-width:460px;width:min(100%,460px);display:flex;flex-direction:column;gap:var(--spacing-md)}.login-card h1{color:var(--color-primary)}.login-card p{margin:0;color:var(--color-text-light)}.access-denied{min-height:100vh;display:grid;place-items:center;text-align:center;padding:var(--spacing-lg)}.access-denied h1{color:var(--color-error);margin-bottom:var(--spacing-sm)}.access-denied p{color:var(--color-text-light);margin:0 0 var(--spacing-md)}.todo-badge{display:inline-flex;align-items:center;gap:.3rem;background:#d4a5742e;color:var(--color-accent-dark);border-radius:var(--radius-md);padding:.4rem .7rem;font-size:.85rem;font-weight:600}.feed-group{margin-bottom:var(--spacing-lg)}.feed-group__header{font-family:var(--font-display);font-size:.875rem;font-weight:600;color:var(--color-primary);padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-bg-beige);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.05em}.feed-group__list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.feed-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#fff;border:1px solid var(--color-bg-beige);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.feed-item:hover{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.feed-item__thumbnail{width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;background:var(--color-bg-light);display:flex;align-items:center;justify-content:center}.feed-item__thumbnail img{width:100%;height:100%;object-fit:cover}.feed-item__content{flex:1;min-width:0}.feed-item__top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--spacing-sm)}.feed-item__lieferant{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.feed-item__betrag{font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}.feed-item__bottom{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-xs);font-size:.8125rem;color:var(--color-text-muted)}.feed-item__konto{font-size:.75rem;color:var(--color-text-muted);margin-top:2px}.feed-empty{text-align:center;padding:var(--spacing-xxl) var(--spacing-lg);color:var(--color-text-muted)}.feed-empty svg{margin-bottom:var(--spacing-md);color:var(--color-accent)}.skeleton-row{height:64px;border-radius:var(--radius-md);background:var(--color-bg-cream);animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.upload-area{display:flex;flex-direction:column;gap:var(--spacing-lg)}.upload-card{padding:var(--spacing-xl);border:2px dashed var(--color-bg-beige);border-radius:var(--radius-lg);text-align:center;cursor:pointer;transition:var(--transition-base)}.upload-card:hover,.upload-card--active{border-color:var(--color-accent);background:#d4a5740d}.upload-card__icon{margin-bottom:var(--spacing-sm);color:var(--color-accent)}.upload-card__title{font-family:var(--font-display);font-weight:600;margin-bottom:var(--spacing-xs)}.upload-card__subtitle{font-size:.875rem;color:var(--color-text-muted)}.upload-bankkonto-hint{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--spacing-md);padding:var(--spacing-xxl) var(--spacing-xl);border:2px solid var(--color-warning, #e6a817);border-radius:var(--radius-md);background:#e6a8170f;color:var(--color-text)}.upload-bankkonto-hint h3{font-family:var(--font-display);font-weight:600;margin:0}.upload-bankkonto-hint p{margin:0;color:var(--color-text-muted);max-width:28rem;line-height:1.5}.upload-bankkonto-hint svg{color:var(--color-warning, #e6a817)}.upload-preview{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.upload-preview__image{width:80px;height:80px;object-fit:cover;border-radius:var(--radius-sm)}.upload-preview__info{flex:1}.upload-preview__name{font-weight:500;word-break:break-all}.upload-preview__size{font-size:.8125rem;color:var(--color-text-muted)}.camera-overlay{position:fixed;inset:0;z-index:1000;background:#000;display:flex;flex-direction:column}.camera-overlay video{flex:1;object-fit:cover}.camera-controls{display:flex;justify-content:center;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:#000000b3}.camera-shutter{width:64px;height:64px;border-radius:50%;border:4px solid white;background:transparent;cursor:pointer;transition:var(--transition-fast)}.camera-shutter:hover{background:#ffffff4d}.camera-shutter:active{transform:scale(.9)}.camera-close{color:#fff;background:transparent;border:none;font-size:1rem;cursor:pointer;padding:var(--spacing-sm)}.camera-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;text-align:center;padding:var(--spacing-xl)}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(min-width:768px){.gastro-bottom-nav{position:static;height:auto;justify-content:center;gap:var(--spacing-sm);padding:.5rem var(--spacing-md);border-top:none;border-bottom:1px solid var(--color-bg-beige);box-shadow:none}.bottom-nav__item{flex-direction:row;gap:.4rem;padding:.5rem 1rem;font-size:.85rem}.gastro-main{padding-bottom:var(--spacing-md)}}.beleg-detail{display:flex;flex-direction:column;gap:var(--spacing-lg)}@media(min-width:768px){.beleg-detail{flex-direction:row}.beleg-detail__image{flex:1;max-width:50%}.beleg-detail__info{flex:1}}.beleg-image{width:100%;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);background:var(--color-bg-light);min-height:200px;display:flex;align-items:center;justify-content:center}.beleg-image img{width:100%;border-radius:var(--radius-md)}.beleg-image iframe{width:100%;min-height:500px;border:none;border-radius:var(--radius-md)}.beleg-image--loading{color:var(--color-text-muted)}.extraction-fields{display:flex;flex-direction:column;gap:var(--spacing-sm)}.extraction-field{display:flex;justify-content:space-between;align-items:baseline;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--color-bg-beige)}.extraction-field:last-child{border-bottom:none}.extraction-field__label{font-size:.8125rem;color:var(--color-text-light);font-weight:500}.extraction-field__value{font-weight:500;text-align:right}.extraction-field__confidence{font-size:.6875rem;padding:1px 6px;border-radius:var(--radius-full);margin-left:var(--spacing-xs)}.extraction-field__confidence--high{background:#22c55e26;color:#16a34a}.extraction-field__confidence--medium{background:#eab30826;color:#ca8a04}.extraction-field__confidence--low{background:#ef444426;color:#dc2626}.kontierung-section{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:2px solid var(--color-primary)}.kontierung-section__title{font-family:var(--font-display);font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.kontierung-section__detail{font-size:.9375rem;margin:0}.kontierung-factors{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-xs)}.kontierung-factor{font-size:.6875rem;padding:2px 8px;border-radius:var(--radius-full);background:var(--color-bg-light);color:var(--color-text-light)}.beleg-detail__back{display:inline-flex;align-items:center;gap:var(--spacing-xs);color:var(--color-primary);text-decoration:none;font-size:.875rem;margin-bottom:var(--spacing-md)}.beleg-detail__back:hover{text-decoration:underline}.beleg-detail__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-top:var(--spacing-sm);font-size:.8125rem;color:var(--color-text-light)}.beleg-detail__status{margin-bottom:var(--spacing-md)}.correction-section{margin-top:var(--spacing-lg)}.correction-toggle{display:flex;align-items:center;gap:var(--spacing-xs);font-size:.875rem;color:var(--color-primary);cursor:pointer;background:none;border:none;font-weight:500}.correction-toggle:hover{text-decoration:underline}.correction-form{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--color-bg-light);border-radius:var(--radius-md)}.correction-form .ui-field{margin-bottom:var(--spacing-sm)}.correction-form__actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.bankkonto-card{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.bankkonto-card__info{flex:1}.bankkonto-card__name{font-weight:600;margin-bottom:var(--spacing-xs);display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-xs)}.bankkonto-card__iban{font-family:Courier New,monospace;font-size:.9375rem;letter-spacing:.05em;color:var(--color-text-light)}.bankkonto-card__bic{font-size:.8125rem;color:var(--color-text-muted);margin-top:2px}.bankkonto-card__actions{display:flex;flex-direction:column;gap:var(--spacing-xs);flex-shrink:0}.bankkonten-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.bankkonten-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.ui-button--danger{color:var(--color-error)}.ui-button--danger:hover{background:#c1292e14}@media(max-width:767px){.bankkonto-card{flex-direction:column}.bankkonto-card__actions{flex-direction:row;width:100%}}.settings-section{margin-bottom:var(--spacing-lg)}.settings-section__title{font-family:var(--font-display);font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-md);font-size:1.125rem}.profile-field{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--color-bg-beige)}.profile-field:last-child{border-bottom:none}.profile-field__label{font-size:.875rem;color:var(--color-text-light)}.profile-field__value{font-weight:500}.mandant-list{display:flex;flex-direction:column;gap:var(--spacing-xs)}.mandant-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-bg-beige);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast);background:transparent;font:inherit;color:inherit;width:100%;text-align:left}.mandant-item:hover{background:var(--color-bg-light)}.mandant-item--active{border-color:var(--color-primary);background:#1e3d3b0d;cursor:default}.mandant-item__check{color:var(--color-primary)}.logout-section{text-align:center;padding:var(--spacing-lg) 0}.logout-section__hint{font-size:.8125rem;color:var(--color-text-muted);margin-top:var(--spacing-xs)}
