:root{--orange:#e8730c;--orange-dark:#c45f08;--bg:#f5f5f5;--card:#fff;--text:#1a1a1a;--text-muted:#666;--border:#e0e0e0;--radius:12px;--shadow:0 2px 8px #00000014;font-family:Inter,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);min-height:100dvh;font-size:16px;line-height:1.5}#app{flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.header{background:var(--orange);color:#fff;z-index:10;align-items:center;gap:12px;padding:16px 20px;display:flex;position:sticky;top:0}.header h1{flex:1;font-size:18px;font-weight:700}.header .back-btn{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px;font-size:22px}.bottom-nav{background:var(--card);border-top:1px solid var(--border);z-index:10;display:flex;position:sticky;bottom:0}.bottom-nav a{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:4px;padding:10px 4px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.bottom-nav a.active{color:var(--orange)}.nav-icon{font-size:22px}.page{flex:1;padding:20px 16px 100px}.card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;padding:20px}.btn{border-radius:var(--radius);cursor:pointer;text-align:center;border:none;width:100%;min-height:52px;padding:16px;font-family:inherit;font-size:16px;font-weight:600;transition:opacity .15s;display:block}.btn:active{opacity:.85}.btn-primary{background:var(--orange);color:#fff}.btn-secondary{background:var(--bg);color:var(--text);border:1px solid var(--border)}.btn-sm{border-radius:8px;width:auto;min-height:36px;padding:8px 14px;font-size:14px}.btn-icon{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-family:inherit;font-size:18px;display:inline-flex}.form-group{margin-bottom:16px}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-size:13px;font-weight:600;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border);width:100%;color:var(--text);background:#fff;border-radius:10px;padding:14px;font-family:inherit;font-size:16px;transition:border-color .15s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--orange);outline:none}.form-group textarea{resize:vertical;min-height:80px}.section-title{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:13px;font-weight:700;display:flex}.dyn-table{margin-bottom:8px;overflow-x:auto}.dyn-table table{border-collapse:collapse;width:100%;min-width:360px}.dyn-table th{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:1px solid var(--border);text-align:left;padding:6px 4px;font-size:11px;font-weight:600}.dyn-table td{vertical-align:middle;padding:3px}.dyn-table input{border:1px solid var(--border);background:#fff;border-radius:6px;width:100%;padding:7px 6px;font-family:inherit;font-size:13px}.list-item{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);align-items:center;gap:12px;margin-bottom:12px;padding:16px;display:flex}.list-item-meta{flex:1}.list-item-meta strong{font-size:15px;display:block}.list-item-meta span{color:var(--text-muted);font-size:13px}.login-wrap{flex-direction:column;flex:1;justify-content:center;padding:32px 24px;display:flex}.login-logo{text-align:center;margin-bottom:32px}.logo-badge{background:var(--orange);color:#fff;letter-spacing:-1px;border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;font-size:32px;font-weight:800;display:inline-flex}.login-logo h2{margin-top:12px;font-size:22px;font-weight:700}.login-logo p{color:var(--text-muted);margin-top:4px;font-size:14px}.error-msg{color:#dc2626;background:#fee2e2;border-radius:8px;margin-bottom:16px;padding:10px 14px;font-size:14px}.baustelle-badge{color:var(--orange);background:#e8730c1f;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;font-weight:600;display:inline-flex}.empty-state{text-align:center;color:var(--text-muted);padding:48px 20px}.empty-icon{margin-bottom:12px;font-size:48px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.gap-8{gap:8px;display:flex}
