*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#faf7f1;color:#26221c;font-size:14px}.app{max-width:1560px;margin:0 auto;padding:10px 16px 40px}header.kopf{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:space-between;padding:6px 0 10px;border-bottom:2px solid #e2d8c3;margin-bottom:10px}header.kopf h1{font-size:1.12rem;margin:0}header.kopf h1 small{font-weight:400;color:#7a6f5c}.steuerung{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.steuerung .zeit{font-variant-numeric:tabular-nums;font-weight:600;min-width:130px}.steuerung button{padding:6px 14px;border:1px solid #b9ac91;border-radius:8px;background:#fff;cursor:pointer;font-size:14px}.steuerung button.primaer{background:#2e6fd0;border-color:#2e6fd0;color:#fff;font-weight:600}.steuerung button:hover{filter:brightness(.96)}.tempo{display:flex;border:1px solid #b9ac91;border-radius:8px;overflow:hidden}.tempo button{border:none;border-radius:0;padding:6px 10px;background:#fff}.tempo button.aktiv{background:#4a4132;color:#fff}.zeitstrahl{width:220px;accent-color:#2e6fd0;cursor:ew-resize}.warnung{background:#fff3cd;border:1px solid #e0c866;border-radius:8px;padding:6px 12px;margin-bottom:10px}.layout{display:flex;gap:16px;align-items:flex-start}aside.panel{width:390px;flex-shrink:0;position:sticky;top:8px;max-height:calc(100vh - 20px);overflow-y:auto;padding-right:4px}main.inhalt{flex:1;min-width:0}.karteWrap{background:#f4efe6;border:1px solid #e2d8c3;border-radius:12px;padding:4px;position:relative}canvas.karte{display:block;width:100%;height:auto;cursor:crosshair}.inspektor{position:absolute;right:10px;top:10px;max-width:320px;background:#fffffdf5;border:1px solid #b9ac91;border-radius:10px;padding:8px 12px;font-size:12.5px;box-shadow:0 2px 8px #3c321e2e;pointer-events:none}.inspektor.fixiert{pointer-events:auto;border-color:#4a4132}.inspektorKopf{font-weight:700;display:flex;align-items:center;gap:8px}.inspektorZu{margin-left:auto;border:none;background:none;cursor:pointer;font-size:15px;line-height:1;color:#7a6f5c;padding:0 2px}.inspektorZeile{margin-top:3px;color:#3d3628}.inspektorZeile.klein{font-size:11.5px;color:#7a6f5c}details.gruppe{background:#fff;border:1px solid #e2d8c3;border-radius:10px;margin-bottom:8px;padding:0}details.gruppe>summary{cursor:pointer;padding:8px 12px;font-weight:600;-webkit-user-select:none;user-select:none;list-style-position:inside}details.gruppe>.gruppeInhalt{padding:4px 12px 10px}.feld{display:grid;grid-template-columns:1fr 92px;gap:8px;align-items:center;margin:4px 0}.feld label{color:#4d4536}.feld input[type=number]{width:100%;padding:3px 6px;border:1px solid #cfc4ab;border-radius:6px;font-size:13px}.feld input[type=checkbox]{justify-self:start;width:16px;height:16px}.panelKnoepfe{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.panelKnoepfe button{padding:5px 10px;border:1px solid #b9ac91;border-radius:8px;background:#fff;cursor:pointer;font-size:13px}.panelKnoepfe button:hover{filter:brightness(.96)}.panelKnoepfe .standardKnopf{background:#8a3b2a;border-color:#8a3b2a;color:#fff;font-weight:600;width:100%}.teamBlock{background:#fff;border:1px solid #e2d8c3;border-radius:10px;margin-bottom:8px}.teamBlock>summary{cursor:pointer;padding:8px 12px;font-weight:600;display:flex;align-items:center;gap:8px}.farbPunkt{display:inline-block;width:12px;height:12px;border-radius:50%}.teamBlock .teamInhalt{padding:4px 10px 10px;overflow-x:auto}.teamBlock select,.stratTabelle select{padding:3px 4px;border:1px solid #cfc4ab;border-radius:6px;font-size:12px;max-width:100%}.presetZeile{display:flex;align-items:center;gap:8px;margin-bottom:6px}.stratTabelle{width:100%;border-collapse:collapse;font-size:12px}.stratTabelle th,.stratTabelle td{padding:3px 4px;text-align:left;vertical-align:top}.stratTabelle th{color:#7a6f5c;font-weight:600}.stratTabelle input[type=number]{width:46px;padding:2px 3px;border:1px solid #cfc4ab;border-radius:5px;font-size:12px}.stratTabelle select{font-size:11px;padding:2px}.stratTabelle tr:nth-child(odd) td{background:#faf7f1}.liveStand{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.liveKarte{border-radius:10px;padding:8px 10px;color:#fff}.liveKarte .name{font-weight:700}.liveKarte .werte{font-size:12.5px;opacity:.95;margin-top:2px;line-height:1.45}.stadtSektion{margin-top:12px}.stadtSektion h3{margin:4px 0 8px;font-size:.98rem}.stadtGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px}.stadtKarte{background:#fff;border:1px solid #e2d8c3;border-radius:10px;overflow:hidden}.stadtKopf{color:#fff;font-weight:700;font-size:13px;padding:5px 10px}.stadtInhalt{padding:6px 10px 8px}.gebZeile{display:flex;align-items:center;gap:7px;padding:3px 0;border-bottom:1px dotted #eee6d5;font-size:12.5px}.gebZeile:last-child{border-bottom:none}.gebZeile.leer{color:#a49a86}.gebTyp{font-weight:600;min-width:44px}.gebStatus{color:#7a6f5c;font-size:11.5px;flex:1}.gebPunkte{font-weight:700;white-space:nowrap}.krone{color:#7a5b00;background:#f6e7b3;border:1px solid #d9a400;border-radius:6px;font-size:10.5px;padding:0 5px;white-space:nowrap}.duploStack{display:inline-flex;flex-direction:column;align-items:center;gap:1.5px}.duploKrone{color:#d9a400;font-size:15px;line-height:.9;text-shadow:0 1px 0 #7a5b00}.duploStack.klein .duploKrone{font-size:12px}.duploReihe{display:flex;gap:1px}.duploReihe.offen{opacity:.45}.duploReihe.verfallen{position:relative;opacity:.65}.duploReihe.verfallen:after{content:"";position:absolute;left:-2px;right:-2px;top:50%;border-top:2px solid #b02020;transform:rotate(-6deg)}.duploStein{width:9px;height:7px;border-radius:1.5px;border:1.5px solid;display:inline-block;box-sizing:border-box}.duploStein.leer{background:#fff}.duploStack.klein .duploStein{width:6px;height:5px;border-width:1px}.stadtInhalt.tiles{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end}.gebTile{border:1px solid #e2d8c3;border-radius:8px;background:#faf7f1;cursor:pointer;padding:6px 7px 4px;display:flex;flex-direction:column;align-items:center;gap:3px}.gebTile:hover{border-color:#b9ac91;background:#f4efe0}.gebTile.aktivTile{border:2px solid #4a4132;background:#f4efe0}.gebTileLabel{font-size:10.5px;color:#4d4536;white-space:nowrap}.gebDetail{border:2px solid #4a4132;border-radius:10px;margin-top:8px;overflow:hidden;background:#fff}.gebDetailKopf{color:#fff;font-weight:700;padding:6px 12px;display:flex;align-items:center;gap:8px}.gebDetailInhalt{padding:8px 12px 10px}.gebDetailZeile{display:flex;gap:16px;align-items:center;margin-bottom:6px}.gebDetailTabelle{margin:4px 0 6px}.gebDetailTabelle td,.gebDetailTabelle th{text-align:left}.rezeptVorschau{margin-top:8px;border-top:1px dashed #e2d8c3;padding-top:6px;font-size:12px}.rezeptTitel{font-weight:600;color:#4d4536;margin:4px 0 3px}.rezeptTabelle{border-collapse:collapse;width:100%;font-size:11.5px;margin-bottom:4px}.rezeptTabelle th,.rezeptTabelle td{border-bottom:1px solid #ece5d4;padding:2px 4px;text-align:left}.rezeptZeile{padding:1px 0 1px 8px}.rezeptHinweis{color:#7a6f5c;font-size:11px;margin-top:4px;line-height:1.35}.pips{display:inline-flex;gap:3px}.pip{width:11px;height:11px;border-radius:3px;display:inline-block;border:1.5px solid #cfc4ab;background:#faf7f1}.pip.teil{background:repeating-linear-gradient(45deg,#fff,#fff 2px,#e0d6bd 2px,#e0d6bd 4px)}.pip.verfallen{border-color:#b02020;background:#f6d9d9}.hinweis{font-size:12px;color:#7a6f5c;margin:2px 0 6px}.einkauf{background:#f7f3e8;border:1px dashed #b9ac91;border-radius:8px;padding:10px 12px;font-size:12px;white-space:pre-wrap}.historieBlock{font-size:12.5px;margin:4px 0}.historieListe{margin:2px 0 8px;padding-left:22px}.historieListe li{margin:2px 0;color:#4d4536}.chartsGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));gap:12px;margin-top:12px}.chartKarte{background:#fff;border:1px solid #e2d8c3;border-radius:10px;padding:8px 10px 2px}.chartKarte h3{margin:2px 0 6px;font-size:.95rem}.ergebnis{background:#fff;border:2px solid #b7a97f;border-radius:12px;padding:12px 16px;margin-top:14px}.ergebnis h2{margin:2px 0 10px;font-size:1.1rem}.ergebnis h3{margin:14px 0 6px;font-size:.98rem}table.daten{border-collapse:collapse;width:100%;font-size:13px}table.daten th,table.daten td{border-bottom:1px solid #ece5d4;padding:5px 8px;text-align:right}table.daten th:first-child,table.daten td:first-child,table.daten th:nth-child(2),table.daten td:nth-child(2){text-align:left}table.daten th{background:#f4efe6}.checkOk{color:#1d7a2f;font-weight:600}.checkFehler{color:#b02020;font-weight:700}.befund li{margin:3px 0}.gebListe{font-size:12.5px;color:#4d4536}.logSektion{background:#fff;border:1px solid #e2d8c3;border-radius:10px;padding:10px 12px;margin-top:14px}.logSektion h3{margin:0 0 8px;font-size:.98rem}.logFilter{display:flex;gap:8px;margin-bottom:6px}.logFilter select{padding:3px 6px;border:1px solid #cfc4ab;border-radius:6px;font-size:13px}.logListe{max-height:320px;overflow-y:auto;font-size:12.5px;font-variant-numeric:tabular-nums}.logListe .zeile{padding:2px 0;border-bottom:1px dotted #eee6d5;display:flex;gap:8px}.logListe .zeit{color:#7a6f5c;flex-shrink:0;width:46px}.logListe .typ{flex-shrink:0;width:78px;color:#7a6f5c}@media(max-width:1100px){.layout{flex-direction:column}aside.panel{width:100%;position:static;max-height:none}}
