:root{--color-primary: #ee7f00;--color-dark: #213452;--color-white: #ffffff;--color-light-gray: #f5f5f5;--color-gray: #e0e0e0;--color-text: #333333;--color-text-light: #666666;--color-error: #dc3545;--color-success: #28a745}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--color-light-gray);color:var(--color-text);line-height:1.5}#root{min-height:100vh;display:flex;flex-direction:column}.header{background-color:var(--color-dark);color:var(--color-white);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:1.5rem;font-weight:600}.header-user{display:flex;align-items:center;gap:1rem}.header-user span{color:var(--color-primary)}.btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:500;transition:background-color .2s,opacity .2s}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover:not(:disabled){background-color:#d97200}.btn-secondary{background-color:var(--color-gray);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background-color:#d0d0d0}.btn-outline{background-color:transparent;border:1px solid var(--color-primary);color:var(--color-primary)}.btn-outline:hover:not(:disabled){background-color:var(--color-primary);color:var(--color-white)}.main-content{flex:1;display:flex;padding:1.5rem;gap:1.5rem}.tree-view{width:400px;background-color:var(--color-white);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.tree-view-header{background-color:var(--color-dark);color:var(--color-white);padding:1rem;font-weight:600}.tree-view-list{max-height:calc(100vh - 200px);overflow-y:auto}.tree-item{padding:.75rem 1rem;border-bottom:1px solid var(--color-gray);cursor:pointer;transition:background-color .2s}.tree-item:hover{background-color:var(--color-light-gray)}.tree-item.selected{background-color:#ee7f001a;border-left:3px solid var(--color-primary)}.tree-item-nummer{font-weight:600;color:var(--color-dark)}.tree-item-datum{font-size:.85rem;color:var(--color-text-light)}.tree-item-erbringer{font-size:.85rem;color:var(--color-text-light);margin-top:.25rem}.detail-container{flex:1;display:flex;gap:1.5rem}.detail-view{flex:1;background-color:var(--color-white);border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;display:flex;flex-direction:column}.detail-view .detail-content{flex:1;overflow-y:auto}.detail-header{background-color:var(--color-dark);color:var(--color-white);padding:1rem;font-weight:600}.detail-content{padding:1.5rem}.detail-placeholder{display:flex;align-items:center;justify-content:center;height:300px;color:var(--color-text-light)}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.detail-field{display:flex;flex-direction:column;gap:.25rem}.detail-field.full-width{grid-column:1 / -1}.detail-label{font-size:.8rem;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.detail-value{font-size:1rem;color:var(--color-text)}.detail-value.amount{font-size:1.25rem;font-weight:600;color:var(--color-primary)}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-dark)}.login-box{background-color:var(--color-white);padding:2rem;border-radius:8px;box-shadow:0 4px 12px #0003;width:100%;max-width:400px}.login-title{color:var(--color-dark);text-align:center;margin-bottom:1.5rem}.login-tabs{display:flex;margin-bottom:1.5rem;border-bottom:2px solid var(--color-gray)}.login-tab{flex:1;padding:.75rem;background:none;border:none;cursor:pointer;font-size:1rem;color:var(--color-text-light);transition:color .2s}.login-tab.active{color:var(--color-primary);border-bottom:2px solid var(--color-primary);margin-bottom:-2px}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text)}.form-group input{width:100%;padding:.75rem;border:1px solid var(--color-gray);border-radius:4px;font-size:1rem}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #ee7f0033}.form-error{color:var(--color-error);font-size:.85rem;margin-top:.5rem}.form-submit{width:100%;margin-top:1rem}.loading{display:flex;align-items:center;justify-content:center;padding:2rem;color:var(--color-text-light)}.loading-spinner{width:24px;height:24px;border:3px solid var(--color-gray);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-right:.5rem}@keyframes spin{to{transform:rotate(360deg)}}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500}.status-badge.paid{background-color:#28a7451a;color:var(--color-success)}.status-badge.pending{background-color:#ee7f001a;color:var(--color-primary)}.status-badge.overdue{background-color:#dc35451a;color:var(--color-error)}.detail-field.mismatch{background-color:#dc354514;border-left:3px solid var(--color-error);padding-left:.5rem;border-radius:4px}.mismatch-icon{margin-right:.25rem;color:var(--color-error);font-size:.85rem}.leistungen-table td.cell-mismatch{background-color:#dc354514;border-left:3px solid var(--color-error)}.leistungen-table{width:100%;border-collapse:collapse;margin-top:.5rem}.leistungen-table th,.leistungen-table td{padding:.75rem;text-align:left;border-bottom:1px solid var(--color-gray)}.leistungen-table th{background-color:var(--color-light-gray);font-weight:600;font-size:.85rem;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.5px}.leistungen-table td{font-size:.95rem}.leistungen-table td.center{text-align:center}.leistungen-table td.right{text-align:right;font-weight:500}.leistungen-table tbody tr:hover{background-color:var(--color-light-gray)}.workflow-badge{display:inline-block;padding:.25rem .65rem;border-radius:10px;font-size:.78rem;font-weight:600;letter-spacing:.2px;white-space:nowrap}.workflow-badge-small{font-size:.68rem;padding:.15rem .5rem}.workflow-badge-offen{background:#efefef;color:#888}.workflow-badge-in_pruefung{background:#ee7f001f;color:#c96b00}.workflow-badge-freigegeben{background:#28a7451f;color:#1e7e34}.workflow-badge-archiviert{background:#2134521f;color:#213452}.workflow-badge-abgelehnt{background:#dc35451f;color:#dc3545}.workflow-badge-zurueckgestellt{background:#ffc1072e;color:#8a6600}.workflow-bar{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background-color:var(--color-light-gray);border-bottom:1px solid var(--color-gray);flex-wrap:wrap}.workflow-bar-status{display:flex;align-items:center;gap:.5rem}.workflow-bar-status .detail-label{margin:0}.workflow-bar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.workflow-bar-actions .btn{font-size:.82rem;padding:.35rem .8rem}.tree-item-top-row{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.btn-success{background-color:var(--color-success);color:var(--color-white)}.btn-success:hover:not(:disabled){background-color:#1e7e34}.btn-danger{background-color:var(--color-error);color:var(--color-white)}.btn-danger:hover:not(:disabled){background-color:#c82333}.btn-warning{background-color:#ffc107;color:#212529}.btn-warning:hover:not(:disabled){background-color:#e0a800}.btn-dark{background-color:var(--color-dark);color:var(--color-white)}.btn-dark:hover:not(:disabled){background-color:#1a2840}
