*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f3f3f3;color:#222}
.top{background:#000;color:#fff;padding:.7rem 1rem;display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;justify-content:space-between;padding-top:max(.7rem,env(safe-area-inset-top))}
.top b{color:#ff5f00}.top nav{display:flex;flex-wrap:wrap;gap:.8rem;align-items:center}.top a{color:#fff;text-decoration:none}.who{color:#aaa}
main{padding:1rem;max-width:1200px;margin:auto}.emp main{max-width:560px}
.card{background:#fff;border-radius:12px;padding:1rem;margin-bottom:1rem;box-shadow:0 1px 3px #0002}.narrow{max-width:380px;margin:2rem auto}
label{display:block;margin:.6rem 0;font-weight:600}input,select,textarea{width:100%;font-size:1.1rem;padding:.6rem;border:1px solid #ccc;border-radius:8px;margin-top:.25rem;font-family:inherit}
#plate{text-transform:uppercase;font-size:1.5rem;letter-spacing:.1em;text-align:center;font-weight:700}
button,.btn{background:#ff5f00;color:#fff;border:0;border-radius:8px;padding:.6rem 1rem;font-size:1rem;cursor:pointer;text-decoration:none;display:inline-block}
button:disabled{opacity:.5}button.big{width:100%;padding:1.1rem;font-size:1.25rem;font-weight:700}button.loc{background:#0a7d32;font-size:1.5rem;padding:1.4rem}
.seg{display:flex;gap:.5rem}.seg label{flex:1;margin:0}.seg input{display:none}.seg span{display:block;text-align:center;padding:1rem;border:2px solid #ccc;border-radius:10px;font-size:1.15rem}
.seg input:checked+span{border-color:#ff5f00;background:#fff1e8}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin:.8rem 0}.shot{position:relative;margin:0;aspect-ratio:4/3;border:2px dashed #bbb;border-radius:10px;overflow:hidden;background:#fafafa}
.shot input,.extra-btn input{position:absolute;opacity:0;width:1px;height:1px}.shot .ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:.95rem}
.shot .ph span{font-size:2rem}.shot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:none}.shot.done img{display:block}.shot.done{border:3px solid #0a7d32}.shot.busy{opacity:.5}
.extra-btn{position:relative;text-align:center;padding:.8rem;border:2px dashed #ff5f00;border-radius:10px;color:#ff5f00}
.thumbs{display:flex;flex-wrap:wrap;gap:.4rem}.thumbs img{width:80px;height:60px;object-fit:cover;border-radius:6px}
.err{color:#c00}.muted{color:#777}.center{text-align:center}.flash{background:#e8f5e9;padding:.6rem;border-radius:8px}
table{width:100%;border-collapse:collapse;background:#fff}th,td{padding:.5rem;border-bottom:1px solid #eee;text-align:left;font-size:.95rem}tr:hover td{background:#fff8f3}
.filters{display:flex;flex-wrap:wrap;gap:.6rem;align-items:end}.filters label{margin:0;flex:1;min-width:140px}
.badge{padding:.15rem .5rem;border-radius:20px;font-size:.8rem;font-weight:700}.abfahrt{background:#fff1e8;color:#c44a00}.ankunft{background:#e8f0ff;color:#1946b8}
.grid4{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.6rem}.grid4 figure{margin:0}.grid4 img{width:100%;border-radius:8px}figcaption{font-weight:600;font-size:.9rem}
.map{height:70vh;border-radius:12px}.map.small{height:320px}.inline{display:inline}.inline input{width:auto}
.big-link{display:block;text-align:center;padding:1rem;font-size:1.2rem;font-weight:700;background:#1946b8}
.emp .map{height:65vh}
.subtle-link{color:#555;font-size:.95rem;padding:.6rem 1rem;border:1px solid #ccc;border-radius:8px;display:inline-block;text-decoration:none;background:#fff}
.mm{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.mm input{text-align:center;font-size:1.3rem;font-weight:700}
.tread-red{background:#d32f2f;color:#fff;font-weight:700;padding:.15rem .45rem;border-radius:6px}.tread-orange{background:#f57c00;color:#fff;font-weight:700;padding:.15rem .45rem;border-radius:6px}.tread-ok{padding:.15rem .45rem}
fieldset.tire{border:1px solid #ddd;border-radius:10px;margin:.6rem 0;padding:.4rem .7rem .7rem}fieldset.tire legend{font-weight:700}fieldset.tire .shot{aspect-ratio:16/9}
.docbtns{display:flex;gap:.5rem;flex-wrap:wrap}.docbtns .btn{flex:1;text-align:center;margin:0}fieldset.doc.ok{border-color:#0a7d32}.docimg{width:100%;border-radius:8px;margin:.4rem 0}
.overview td,.overview th{text-align:center}.ov-ok{background:#e8f5e9}.ov-miss{background:#fdecea;color:#c00;font-size:.85rem}
.items{display:grid;grid-template-columns:1fr;gap:.2rem}.item{display:flex;align-items:center;gap:.5rem;border-bottom:1px solid #eee}.item .chk{flex:1;margin:.3rem 0;font-weight:500;display:flex;align-items:center;gap:.6rem;font-size:1.05rem}.item .chk input{width:1.6rem;height:1.6rem;margin:0}.item .qty{width:4.5rem;margin:0;padding:.35rem;font-size:1rem;text-align:center}
.mainbtns .big-link{margin-top:.5rem}.mainbtns .big-link:first-child{margin-top:0}
.bar{height:8px;background:#eee;border-radius:4px;overflow:hidden;margin-top:.3rem}.bar div{height:100%;width:0;background:#0a7d32;transition:width .3s}fieldset.vid.ok{border-color:#0a7d32}
