*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a1a;background:#f0f2f5;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:18px}#root{width:100%;min-height:100vh}button{cursor:pointer;font-size:inherit}input,select{font-size:inherit}.login-container{background:linear-gradient(135deg,#1e3a5f 0%,#2d6a9f 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.login-box{background:#fff;border-radius:16px;width:100%;max-width:420px;padding:40px;box-shadow:0 20px 40px #0000004d}.login-titel{color:#1e3a5f;text-align:center;margin-bottom:8px;font-size:32px;font-weight:700}.login-untertitel{text-align:center;color:#666;margin-bottom:32px;font-size:16px}.login-form{flex-direction:column;gap:16px;display:flex}.login-label{color:#333;font-size:16px;font-weight:600}.login-input{border:2px solid #ddd;border-radius:10px;outline:none;width:100%;padding:16px;font-size:20px;transition:border-color .2s}.login-input:focus{border-color:#2d6a9f}.login-button{color:#fff;background:#1e3a5f;border:none;border-radius:10px;width:100%;margin-top:8px;padding:18px;font-size:22px;font-weight:700;transition:background .2s}.login-button:hover:not(:disabled){background:#2d6a9f}.login-button:disabled{opacity:.6}.login-fehler{color:#c00;text-align:center;background:#fee;border-radius:8px;padding:12px;font-size:16px}.stempel-container{background:#f0f2f5;flex-direction:column;min-height:100vh;display:flex}.stempel-header{color:#fff;background:#1e3a5f;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.stempel-name{font-size:24px;font-weight:700}.stempel-uhrzeit{letter-spacing:2px;font-size:48px;font-weight:300;line-height:1.1}.stempel-datum{opacity:.8;font-size:16px}.aktuelle-baustelle{background:#fff3;border-radius:20px;margin-top:6px;padding:4px 10px;font-size:15px;display:inline-block}.abmelden-button{color:#fff;background:#fff3;border:2px solid #ffffff80;border-radius:8px;padding:12px 20px;font-size:16px}.abmelden-button:hover{background:#ffffff4d}.pause-vorbei-banner{color:#fff;text-align:center;cursor:pointer;background:#c0392b;padding:18px;font-size:20px;font-weight:700;animation:1s infinite blinken}@keyframes blinken{0%,to{opacity:1}50%{opacity:.7}}.offline-banner{color:#fff;text-align:center;background:#e67e22;padding:12px;font-size:16px;font-weight:600}.meldung{text-align:center;border-radius:10px;margin:20px 24px 0;padding:16px;font-size:20px;font-weight:600}.meldung-erfolg{color:#155724;background:#d4edda}.meldung-fehler{color:#721c24;background:#f8d7da}.stempel-buttons{flex-direction:column;flex:1;gap:20px;padding:30px 24px;display:flex}.stempel-btn{color:#fff;border:none;border-radius:16px;width:100%;min-height:100px;padding:32px;font-size:28px;font-weight:700;transition:transform .1s,box-shadow .1s;box-shadow:0 4px 12px #0003}.stempel-btn:active{transform:scale(.97);box-shadow:0 2px 6px #0003}.stempel-btn:disabled{opacity:.5}.btn-kommen{background:#27ae60}.btn-kommen:hover:not(:disabled){background:#229954}.btn-ruestzeit{background:#2980b9}.btn-ruestzeit:hover:not(:disabled){background:#2471a3}.btn-gehen{background:#e74c3c}.btn-gehen:hover:not(:disabled){background:#c0392b}.btn-pause{background:#f39c12}.btn-pause:hover:not(:disabled){background:#d68910}.btn-pause-ende{background:#8e44ad}.btn-pause-ende:hover:not(:disabled){background:#7d3c98}.btn-material{background:#16a085}.btn-material:hover:not(:disabled){background:#138d75}.stempel-btn-zeile{gap:16px;display:flex}.stempel-btn-halb{color:#fff;border:none;border-radius:14px;flex:1;min-height:72px;padding:20px 12px;font-size:19px;font-weight:700;box-shadow:0 4px 12px #0003}.stempel-btn-halb:active{transform:scale(.97)}.stempel-btn-halb:disabled{opacity:.5}.btn-wechseln{background:#2980b9}.btn-firma{background:#7f8c8d}.btn-bericht{background:#d35400}.btn-foto{background:#34495e}.brett-banner{color:#7d6608;background:#fff8e1;border-bottom:2px solid #f1c40f;padding:14px 24px;font-size:17px;font-weight:600}.foto-aufnehmen-btn{color:#fff;text-align:center;cursor:pointer;background:#34495e;border-radius:10px;width:100%;margin-bottom:16px;padding:18px;font-size:19px;font-weight:700;display:block}.foto-raster{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:12px;display:grid}.foto-kachel{background:#f8f9fa;border-radius:10px;overflow:hidden}.foto-kachel img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.foto-kachel-fuss{color:#777;justify-content:space-between;align-items:center;padding:4px 8px;font-size:12px;display:flex}.bericht-dialog{max-height:85vh;overflow-y:auto}.bericht-textarea{resize:vertical;border:2px solid #ddd;border-radius:10px;outline:none;width:100%;margin-bottom:12px;padding:14px;font-family:inherit;font-size:17px}.bericht-textarea:focus{border-color:#d35400}.bericht-speichern-btn{color:#fff;background:#d35400;border:none;border-radius:10px;width:100%;margin-bottom:16px;padding:16px;font-size:19px;font-weight:700}.bericht-speichern-btn:disabled{opacity:.4}.bericht-liste h3{color:#777;margin-bottom:8px;font-size:15px}.bericht-karte{background:#f8f9fa;border-radius:10px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:12px;font-size:15px;display:flex}.bericht-karte-text{white-space:pre-wrap;flex:1}.bericht-karte-meta{color:#999;margin-bottom:4px;font-size:12px}.bericht-schliessen{width:100%;margin-top:8px}.bericht-abrechnung-zeile{gap:8px;margin-bottom:12px;display:flex}.bericht-abrechnung-btn{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:10px;flex:1;padding:12px 6px;font-size:14px}.bericht-abrechnung-btn.b-abrechnung-aktiv{font-weight:700}.b-abrechnung-grund.b-abrechnung-aktiv{background:#eaf3fa;border-color:#2980b9}.b-abrechnung-extra_bau.b-abrechnung-aktiv{background:#fdf0e3;border-color:#e67e22}.b-abrechnung-extra_kunde.b-abrechnung-aktiv{background:#f4ebf8;border-color:#8e44ad}.dauer-bereich{margin-bottom:12px}.dauer-label{color:#777;margin-bottom:8px;font-size:14px}.dauer-chips{flex-wrap:wrap;gap:8px;display:flex}.dauer-stepper{justify-content:center;align-items:center;gap:14px;display:flex}.dauer-wert{text-align:center;color:#1e3a5f;min-width:120px;font-size:24px;font-weight:700}.dauer-hinweis{color:#888;text-align:center;margin-top:6px;font-size:13px}.dauer-chip{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:20px;padding:10px 16px;font-size:15px}.dauer-chip-aktiv{background:#fdf0e3;border-color:#d35400;font-weight:700}.abrechnung-tag-klein{border-radius:10px;margin-left:6px;padding:1px 8px;font-size:11px;font-weight:700;display:inline-block}.dialog-hinweis{text-align:center;color:#777;margin-bottom:14px;font-size:14px}.dialog-btn-bestaetigen:disabled{opacity:.4}.baustellen-overlay{z-index:100;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.baustellen-dialog{background:#fff;border-radius:16px;width:100%;max-width:480px;padding:32px;box-shadow:0 20px 40px #0006}.baustellen-dialog h2{color:#1e3a5f;text-align:center;margin-bottom:20px;font-size:24px}.baustellen-select{border:2px solid #ddd;border-radius:10px;outline:none;width:100%;margin-bottom:24px;padding:16px;font-size:20px}.baustellen-select:focus{border-color:#1e3a5f}.baustellen-dialog-buttons{gap:12px;display:flex}.dialog-btn-abbrechen{color:#333;background:#eee;border:none;border-radius:10px;flex:1;padding:16px;font-size:18px}.dialog-btn-bestaetigen{color:#fff;background:#27ae60;border:none;border-radius:10px;flex:2;padding:16px;font-size:20px;font-weight:700}.letzter-status{text-align:center;color:#555;padding:0 24px 12px;font-size:18px}.urlaub-link-zeile{flex-wrap:wrap;justify-content:center;gap:12px;padding:0 24px 24px;display:flex}.urlaub-link-btn{color:#555;cursor:pointer;background:0 0;border:2px solid #bbb;border-radius:8px;padding:10px 24px;font-size:16px}.urlaub-link-btn:hover{color:#1e3a5f;border-color:#1e3a5f}.admin-container{background:#f0f2f5;flex-direction:column;min-height:100vh;display:flex}.admin-header{color:#fff;background:#1e3a5f;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.admin-header h1{color:#fff;margin:0;font-size:24px}.admin-header-rechts{align-items:center;gap:16px;font-size:16px;display:flex}.admin-nav{background:#fff;border-bottom:2px solid #ddd;display:flex}.nav-btn{color:#666;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;margin-bottom:-2px;padding:16px;font-size:18px;font-weight:600}.nav-btn.aktiv{color:#1e3a5f;border-bottom-color:#1e3a5f}.admin-section{padding:24px}.admin-section h2{color:#1e3a5f;margin-bottom:16px;font-size:20px}.filter-zeile{background:#fff;border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:16px;margin-bottom:20px;padding:16px;display:flex}.filter-zeile label{color:#555;flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}.filter-zeile input,.filter-zeile select{border:2px solid #ddd;border-radius:8px;padding:10px;font-size:16px}.export-button{color:#fff;white-space:nowrap;background:#27ae60;border-radius:8px;padding:12px 20px;font-size:16px;font-weight:700;text-decoration:none;display:inline-block}.export-button:hover{background:#229954}.zeiten-tabelle{border-collapse:collapse;background:#fff;border-radius:10px;width:100%;overflow:hidden;box-shadow:0 2px 8px #0000001a}.zeiten-tabelle th{color:#fff;text-align:left;background:#1e3a5f;padding:14px 16px;font-size:16px}.zeiten-tabelle td{border-bottom:1px solid #eee;padding:12px 16px;font-size:16px}.zeiten-tabelle tr:last-child td{border-bottom:none}.zeiten-tabelle tr:hover td{background:#f8f9fa}.leer{text-align:center;color:#999;padding:32px!important}.ma-form{background:#fff;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;padding:16px;display:flex}.ma-form input[type=text]{border:2px solid #ddd;border-radius:8px;flex:1;min-width:150px;padding:12px}.ma-anlegen-btn{color:#fff;background:#1e3a5f;border:none;border-radius:8px;padding:12px 24px;font-weight:700}.ma-anlegen-btn:hover{background:#2d6a9f}.checkbox-label{align-items:center;gap:8px;font-size:16px;display:flex}.loeschen-btn{color:#fff;background:#e74c3c;border:none;border-radius:6px;padding:6px 14px;font-size:14px}.loeschen-btn:disabled{opacity:.3}.status-aktiv{color:#155724;background:#d4edda;border-radius:12px;padding:4px 10px;font-size:14px;font-weight:600}.status-inaktiv{color:#721c24;background:#f8d7da;border-radius:12px;padding:4px 10px;font-size:14px;font-weight:600}.kein-eintrag{color:#bbb}.export-gruppe{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.export-button-abrechnung{background:#8e44ad}.export-button-abrechnung:hover{background:#7d3c98}.typ-badge{border-radius:10px;padding:3px 8px;font-size:13px;font-weight:600}.typ-kommen{color:#155724;background:#d4edda}.typ-gehen{color:#721c24;background:#f8d7da}.typ-pause_start,.typ-pause_ende{color:#856404;background:#fff3cd}.typ-ruestzeit_start{color:#004085;background:#cce5ff}.status-beantragt{color:#856404;background:#fff3cd;border-radius:12px;padding:4px 10px;font-size:14px;font-weight:600}.urlaub-header-zeile{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.urlaub-jahr-zeile{align-items:center;gap:12px;display:flex}.urlaub-jahr-zeile label{align-items:center;gap:8px;font-weight:600;display:flex}.urlaub-jahr-zeile select{border:2px solid #ddd;border-radius:8px;padding:8px;font-size:16px}.urlaub-aktionen{flex-wrap:wrap;gap:6px;display:flex}.genehmigen-btn{color:#fff;background:#27ae60;border:none;border-radius:6px;padding:6px 12px;font-size:16px;font-weight:700}.heute-raster{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;display:grid}.heute-karte{background:#fff;border-left:5px solid #ddd;border-radius:12px;align-items:center;gap:14px;padding:16px 18px;display:flex;box-shadow:0 1px 4px #00000014}.heute-arbeitet{border-left-color:#27ae60}.heute-pause{border-left-color:#f39c12}.heute-feierabend{border-left-color:#95a5a6}.heute-nicht_da{opacity:.7;border-left-color:#ddd}.heute-abwesend{border-left-color:#e74c3c}.heute-emoji{font-size:30px}.heute-name{font-size:17px;font-weight:700}.heute-detail{color:#666;font-size:14px}.brett-admin-zeile{background:#fff8e1;border:1px solid #f1c40f;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;font-size:16px;display:flex}.leer-text-klein{color:#999;padding:8px 0;font-size:14px}.foto-galerie-btn{color:#fff;background:#34495e;border:none;border-radius:6px;padding:6px 14px;font-size:14px}.galerie-overlay{z-index:150;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.galerie-box{background:#fff;border-radius:14px;width:100%;max-width:900px;max-height:85vh;padding:24px;overflow-y:auto}.galerie-kopf{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.galerie-kopf h2{margin:0!important}.galerie-raster{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;display:grid}.galerie-kachel{background:#f8f9fa;border-radius:10px;overflow:hidden}.galerie-kachel img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.galerie-kachel-fuss{color:#777;justify-content:space-between;align-items:center;gap:6px;padding:6px 8px;font-size:12px;display:flex}.loeschen-btn-mini{cursor:pointer;background:#eee;border:none;border-radius:4px;padding:2px 8px;font-size:12px}.bericht-zelle{white-space:pre-wrap;max-width:400px}.abrechnung-zelle{white-space:nowrap;border-radius:10px;padding:3px 10px;font-size:13px;font-weight:600}.abrechnung-zelle-grund{color:#1a5276;background:#eaf3fa}.abrechnung-zelle-extra_bau{color:#ba6516;background:#fdf0e3}.abrechnung-zelle-extra_kunde{color:#71368a;background:#f4ebf8}.import-label{color:#fff;cursor:pointer;background:#16a085;border-radius:8px;padding:12px 20px;font-weight:700;display:inline-block}.import-label:hover{background:#138d75}.import-hinweis{color:#888;margin-bottom:20px;font-size:14px}.ablehnen-btn{color:#fff;background:#e74c3c;border:none;border-radius:6px;padding:6px 12px;font-size:16px;font-weight:700}.urlaub-container{background:#f0f2f5;flex-direction:column;min-height:100vh;display:flex}.urlaub-header{color:#fff;background:#1e3a5f;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.urlaub-header h1{color:#fff;margin:0;font-size:24px}.urlaub-section{padding:24px}.urlaub-section h2{color:#1e3a5f;margin-bottom:16px;font-size:20px}.urlaub-form{background:#fff;border-radius:10px;flex-wrap:wrap;gap:16px;margin-bottom:16px;padding:20px;display:flex}.urlaub-form label{flex-direction:column;flex:1;gap:4px;min-width:160px;font-size:15px;font-weight:600;display:flex}.urlaub-form input{border:2px solid #ddd;border-radius:8px;padding:12px;font-size:16px}.urlaub-btn{color:#fff;background:#1e3a5f;border:none;border-radius:8px;align-self:flex-end;padding:12px 28px;font-size:18px;font-weight:700}.urlaub-karte{background:#fff;border-left:5px solid #ddd;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:12px;padding:16px 20px;display:flex}.urlaub-karte-beantragt{border-left-color:#f39c12}.urlaub-karte-genehmigt{border-left-color:#27ae60}.urlaub-karte-abgelehnt{border-left-color:#e74c3c}.urlaub-karte-datum{font-size:18px;font-weight:700}.urlaub-karte-tage{color:#555;font-size:15px}.urlaub-karte-notiz{color:#888;margin-top:4px;font-size:14px}.urlaub-karte-rechts{flex-direction:column;align-items:flex-end;gap:8px;display:flex}.u-beantragt{color:#856404;font-weight:700}.u-genehmigt{color:#155724;font-weight:700}.u-abgelehnt{color:#721c24;font-weight:700}.loeschen-btn-klein{color:#333;cursor:pointer;background:#eee;border:none;border-radius:6px;padding:6px 12px;font-size:14px}.fehler-text{color:#c00;margin-bottom:12px}.erfolg-text{color:#155724;margin-bottom:12px}.kalender-kopf{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.kalender-kopf h2{margin:0!important}.kalender-pfeil{color:#1e3a5f;cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:10px;width:52px;height:52px;font-size:28px}.kalender-pfeil:hover{border-color:#1e3a5f}.kalender-anleitung{color:#777;margin-bottom:12px;font-size:14px}.kalender-gitter{background:#fff;border-radius:12px;grid-template-columns:repeat(7,1fr);gap:4px;padding:12px;display:grid;box-shadow:0 1px 4px #00000014}.kalender-wochentag{text-align:center;color:#888;padding:6px 0;font-size:13px;font-weight:700}.kalender-zelle{cursor:pointer;border:2px solid #0000;border-radius:8px;flex-direction:column;align-items:center;min-height:58px;padding:4px;display:flex}.kalender-zelle:hover:not(.kalender-leer){border-color:#2d6a9f}.kalender-leer{cursor:default}.kalender-wochenende{background:#f6f7f9}.kalender-heute{background:#e8f1fb;font-weight:700}.kalender-ausgewaehlt{background:#1e3a5f!important}.kalender-ausgewaehlt .kalender-tagnummer{color:#fff}.kalender-tagnummer{color:#333;font-size:16px}.kalender-punkte{flex-wrap:wrap;justify-content:center;gap:3px;margin-top:3px;display:flex}.kalender-punkt{border-radius:50%;flex-shrink:0;width:10px;height:10px;display:inline-block}.punkt-beantragt{opacity:.45;outline-offset:1px;outline:2px dashed #888}.kalender-legende{color:#555;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:13px;display:flex}.legende-item{align-items:center;gap:5px;display:flex}.abwesend-liste{margin-top:20px}.abwesend-liste h3{color:#1e3a5f;margin-bottom:10px;font-size:16px}.abwesend-zeile{background:#fff;border-radius:8px;align-items:center;gap:10px;margin-bottom:6px;padding:10px 14px;font-size:15px;display:flex}.abwesend-typ{color:#888;margin-left:auto;font-size:14px}.dialog-zeitraum{text-align:center;color:#1e3a5f;margin-bottom:16px;font-size:18px;font-weight:700}.typ-auswahl{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.typ-btn{cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:10px;padding:16px 10px;font-size:17px}.typ-btn-aktiv{font-weight:700}.dialog-notiz{border:2px solid #ddd;border-radius:8px;width:100%;margin-bottom:16px;padding:12px;font-size:16px}.zeiten-container{background:#f0f2f5;flex-direction:column;min-height:100vh;padding-bottom:32px;display:flex}.zeiten-header{color:#fff;background:#1e3a5f;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.zeiten-header h1{color:#fff;margin:0;font-size:24px}.saldo-karte{text-align:center;background:#fff;border-radius:14px;margin:24px 24px 0;padding:24px;box-shadow:0 2px 8px #0000001a}.saldo-label{color:#777;margin-bottom:6px;font-size:15px}.saldo-wert{font-size:44px;font-weight:800}.saldo-plus{color:#27ae60}.saldo-minus{color:#e74c3c}.saldo-hinweis{color:#999;margin-top:6px;font-size:13px}.zeiten-filter{gap:16px;padding:16px 24px;display:flex}.zeiten-filter label{color:#555;flex-direction:column;flex:1;gap:4px;font-size:14px;font-weight:600;display:flex}.zeiten-filter input{border:2px solid #ddd;border-radius:8px;padding:10px;font-size:16px}.zeiten-liste{padding:0 24px}.tag-karte{background:#fff;border-radius:12px;margin-bottom:14px;padding:16px 20px;box-shadow:0 1px 4px #00000014}.tag-kopf{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.tag-datum{color:#1e3a5f;font-size:18px;font-weight:700}.tag-offen{color:#e67e22;font-size:14px;font-weight:600}.tag-saldo{font-size:16px;font-weight:700}.tag-zeiten{color:#777;margin-bottom:10px;font-size:14px}.tag-bloecke{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.block-zeile{border-radius:8px;justify-content:space-between;padding:8px 12px;font-size:15px;display:flex}.block-firma{color:#555;background:#f0f2f5}.block-kunde{color:#1e3a5f;background:#e8f1fb;font-weight:600}.block-dauer{font-weight:700}.tag-summe{color:#555;border-top:1px solid #eee;padding-top:8px;font-size:15px}.rangliste-section{padding:8px 24px}.rangliste-section h2{color:#1e3a5f;margin-bottom:12px;font-size:20px}.rangliste{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #00000014}.rang-zeile{border-bottom:1px solid #f0f0f0;align-items:center;gap:12px;padding:14px 18px;font-size:17px;display:flex}.rang-zeile:last-child{border-bottom:none}.rang-ich{background:#fff8e1;font-weight:700}.rang-platz{text-align:center;width:40px;font-size:22px}.rang-name{flex:1}.rang-stunden{color:#1e3a5f;font-weight:700}.badges-zeile{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:14px;display:grid}.badge-chip{background:#fff;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex;box-shadow:0 1px 4px #00000014}.badge-ich{background:#fff8e1;outline:2px solid #f1c40f}.badge-emoji{font-size:28px}.rangliste-hinweis{color:#999;text-align:center;margin-top:8px;font-size:13px}.leer-text{color:#999;text-align:center;padding:24px}.aufmass-container{background:#f0f2f5;flex-direction:column;min-height:100vh;padding-bottom:32px;display:flex}.aufmass-header{color:#fff;background:#16a085;justify-content:space-between;align-items:flex-start;padding:16px 24px;display:flex}.aufmass-header h1{color:#fff;margin:0 0 4px;font-size:24px}.aufmass-baustelle{opacity:.9;font-size:15px}.aufmass-section{padding:20px 24px 0}.aufmass-section h2{color:#1e3a5f;margin-bottom:12px;font-size:19px}.lieferant-umschalter{align-items:center;gap:12px;margin-bottom:16px;display:flex}.lieferant-label{color:#555;white-space:nowrap;font-size:16px;font-weight:600}.lieferant-schieber{background:#e4e7eb;border-radius:12px;flex:1;gap:5px;padding:5px;display:flex}.lieferant-option{color:#667;background:0 0;border:none;border-radius:9px;flex:1;padding:14px 8px;font-size:18px;font-weight:700;transition:background .15s,color .15s}.lieferant-option.lieferant-aktiv{color:#fff;background:#16a085;box-shadow:0 2px 6px #0003}.scan-button{color:#fff;background:#16a085;border:none;border-radius:14px;width:100%;margin-bottom:16px;padding:28px;font-size:24px;font-weight:700;box-shadow:0 4px 12px #0003}.scan-button:active{transform:scale(.98)}.scanner-hinweis{color:#856404;background:#fff3cd;border-radius:10px;margin-bottom:16px;padding:12px;font-size:14px}.scanner-overlay{z-index:200;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.scanner-video{object-fit:cover;width:100%;height:100%}.scanner-rahmen{aspect-ratio:1.4;border:3px solid #2ecc71;border-radius:16px;width:70%;max-width:400px;position:absolute;box-shadow:0 0 0 100vmax #00000073}.scanner-abbrechen{color:#fff;background:#e74c3cf2;border:none;border-radius:12px;padding:16px 36px;font-size:20px;font-weight:700;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.aufmass-suche{border:2px solid #ddd;border-radius:12px;outline:none;width:100%;margin-bottom:8px;padding:16px;font-size:18px}.aufmass-suche:focus{border-color:#16a085}.treffer-liste{background:#fff;border-radius:12px;margin-bottom:8px;overflow:hidden;box-shadow:0 2px 8px #0000001f}.treffer-zeile{text-align:left;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:14px 16px;font-size:16px;display:flex}.treffer-zeile:hover{background:#f0faf7}.treffer-zeile:last-child{border-bottom:none}.treffer-name{flex:1}.treffer-nummer{color:#999;white-space:nowrap;font-size:13px}.freitext-button{color:#666;background:0 0;border:2px dashed #bbb;border-radius:12px;width:100%;margin-top:4px;padding:14px;font-size:16px}.freitext-button:hover{color:#16a085;border-color:#16a085}.mengen-zeile{justify-content:center;align-items:center;gap:12px;margin-bottom:20px;display:flex}.mengen-btn{color:#fff;background:#1e3a5f;border:none;border-radius:14px;width:72px;height:72px;font-size:36px;font-weight:700}.mengen-btn:active{transform:scale(.95)}.mengen-input{text-align:center;border:2px solid #ddd;border-radius:14px;width:110px;height:72px;font-size:30px;font-weight:700}.abrechnung-auswahl{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.abrechnung-btn{text-align:left;cursor:pointer;background:#fff;border:2px solid #ddd;border-radius:10px;padding:14px;font-size:16px}.abrechnung-btn.abrechnung-aktiv{font-weight:700}.abrechnung-grund.abrechnung-aktiv{background:#eaf3fa;border-color:#2980b9}.abrechnung-extra_bau.abrechnung-aktiv{background:#fdf0e3;border-color:#e67e22}.abrechnung-extra_kunde.abrechnung-aktiv{background:#f4ebf8;border-color:#8e44ad}.abrechnung-hinweis{color:#888;text-align:center;margin-bottom:14px;font-size:13px}.abrechnung-tag{border-radius:10px;margin-left:8px;padding:2px 8px;font-size:12px;font-weight:700;display:inline-block}.tag-extra_bau{color:#ba6516;background:#fdf0e3}.tag-extra_kunde{color:#71368a;background:#f4ebf8}.az-label{color:#555;margin:6px 0 4px;font-size:14px;font-weight:600;display:block}.az-signatur{touch-action:none;background:#fff;border:2px dashed #bbb;border-radius:10px;width:100%;height:170px;margin-bottom:8px;display:block}.gruppe-kopf{color:#1e3a5f;cursor:pointer;text-align:left;background:#eef1f4;border:none;border-radius:10px;justify-content:space-between;align-items:center;width:100%;margin-bottom:8px;padding:14px 16px;font-size:16px;font-weight:700;display:flex}.gruppe-kopf:hover{background:#e4e8ec}.gruppe-anzahl{color:#fff;background:#16a085;border-radius:12px;flex-shrink:0;margin-left:8px;padding:2px 10px;font-size:14px}.position-karte{background:#fff;border-radius:10px;align-items:center;gap:12px;margin-bottom:8px;padding:12px 16px;display:flex;box-shadow:0 1px 4px #00000014}.position-info{flex:1}.position-name{font-size:16px;font-weight:600}.position-detail{color:#888;font-size:13px}.position-menge{color:#16a085;white-space:nowrap;font-size:18px;font-weight:700}
