:root{
  --blau:#1f4e79; --blau-hell:#2f6fb0; --bg:#f4f6fa; --karte:#ffffff;
  --text:#1a2330; --grau:#667; --linie:#d8dfea;
  --ok:#1e7d3c; --warn:#c0392b; --warn-bg:#fdecec;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--text);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  -webkit-text-size-adjust:100%;}
.wrap{max-width:520px;margin:0 auto;padding:16px 16px 48px;}
header.top{background:var(--blau);color:#fff;padding:16px;text-align:center;}
header.top .schiff{font-size:13px;opacity:.85;letter-spacing:.5px;text-transform:uppercase;}
header.top h1{font-size:19px;margin:2px 0 0;}
.karte{background:var(--karte);border:1px solid var(--linie);border-radius:14px;
  padding:18px;margin-top:16px;box-shadow:0 1px 3px rgba(20,40,80,.06);}
.karte h2{margin:0 0 4px;font-size:18px;}
.standort{color:var(--grau);font-size:14px;margin:0 0 14px;}
label{display:block;font-weight:600;font-size:14px;margin:14px 0 5px;}
input,select,textarea{width:100%;padding:13px 12px;font-size:16px;border:1px solid var(--linie);
  border-radius:10px;background:#fff;color:var(--text);}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--blau-hell);
  box-shadow:0 0 0 3px rgba(47,111,176,.15);}
textarea{min-height:64px;resize:vertical;}
.temp-eingabe{font-size:34px !important;text-align:center;font-weight:700;letter-spacing:1px;}
.btn{display:block;width:100%;padding:15px;font-size:17px;font-weight:700;border:none;
  border-radius:10px;background:var(--blau);color:#fff;margin-top:20px;cursor:pointer;text-decoration:none;text-align:center;}
.btn:active{background:var(--blau-hell);}
.btn:disabled{opacity:.55;}
.btn.sekundaer{background:#eef2f8;color:var(--blau);border:1px solid var(--linie);}
.hinweis{font-size:13px;color:var(--grau);margin-top:6px;}
.meldung{margin-top:16px;padding:14px;border-radius:10px;font-size:15px;display:none;}
.meldung.ok{display:block;background:#e8f7ee;color:var(--ok);border:1px solid #b6e2c6;}
.meldung.warn{display:block;background:var(--warn-bg);color:var(--warn);border:1px solid #f3c0c0;font-weight:600;}
.meldung.err{display:block;background:#fff3e0;color:#a15c00;border:1px solid #f0d3a0;}
.soll{display:inline-block;background:#eef2f8;color:var(--blau);border-radius:20px;
  padding:4px 12px;font-size:13px;font-weight:600;margin-bottom:4px;}
.liste a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;
  color:var(--text);background:var(--karte);border:1px solid var(--linie);border-radius:12px;
  padding:14px 16px;margin-top:10px;}
.liste a .pfeil{color:var(--blau-hell);font-size:20px;}
.pill{font-size:12px;padding:3px 9px;border-radius:20px;background:#eef2f8;color:var(--blau);}
.fuss{text-align:center;color:var(--grau);font-size:12px;margin-top:26px;line-height:1.5;}
.statusbox{border-radius:10px;padding:12px;font-size:14px;margin-bottom:14px;}
.statusbox.gruen{background:#e8f7ee;color:var(--ok);border:1px solid #b6e2c6;}
.statusbox.gelb{background:#fff6e5;color:#a15c00;border:1px solid #f0d3a0;}
table.log{width:100%;border-collapse:collapse;font-size:12px;margin-top:8px;}
table.log th,table.log td{border:1px solid var(--linie);padding:5px 7px;text-align:left;}
table.log th{background:#eef2f8;}
.qr-karte{display:inline-block;width:47%;text-align:center;border:1px dashed #99a;border-radius:12px;
  padding:12px 8px;margin:1%;vertical-align:top;background:#fff;}
.qr-karte img{width:150px;height:150px;}
.qr-karte .qn{font-weight:700;font-size:14px;margin-top:6px;}
.qr-karte .qs{font-size:11px;color:var(--grau);}
@media print{ .no-print{display:none !important;} body{background:#fff;} .qr-karte{page-break-inside:avoid;} }
