:root{--deep:#0e2a47;--ocean:#1f5faf;--teal:#19b3a6;--grey:#6b7785;--bg:#f6f8fa;--card:#fff;--line:#e3e8ee;--soft:#eef2f6;--danger:#c2413b;--ok:#2e9d5b;--warn:#c98a12;--ink:var(--deep);--on-accent:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-modus=dunkel]{--ink:#e6eef5;--deep:#23476f;--grey:#9aabbc;--bg:#0b1622;--card:#142334;--line:#26384c;--soft:#1b2d41;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;margin:0;font-family:Figtree,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.4}button,input,select,textarea{font:inherit;color:inherit}#root{min-height:100dvh}.app{flex-direction:column;max-width:600px;min-height:100dvh;margin:0 auto;display:flex}.kopf{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);padding:10px 16px 0;position:sticky;top:0}.kopf-zeile{align-items:center;gap:8px;display:flex}.kopf h1{flex:1;margin:0;font-size:19px}.reiter{gap:4px;margin-top:8px;display:flex}.reiter button{color:var(--grey);cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;flex:1;padding:10px 4px;font-weight:600}.reiter button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--teal)}.inhalt{flex-direction:column;flex:1;gap:12px;padding:12px 16px 96px;display:flex}.woche{justify-content:space-between;align-items:center;gap:8px;display:flex}.woche strong{font-size:15px}.tage{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.tage button{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:12px;flex-direction:column;align-items:center;min-width:0;padding:6px 0;display:flex}.tage button small{color:var(--grey);font-size:11px}.tage button[aria-pressed=true]{background:var(--teal);border-color:var(--teal);color:var(--on-accent)}.tage button[aria-pressed=true] small{color:var(--on-accent)}.tage button.heute:not([aria-pressed=true]){border-color:var(--teal)}.karte{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:12px 14px}.karte h2,.karte h3{margin:0 0 6px;font-size:16px}.slot{align-items:center;gap:12px;display:flex}.slot .bild{background:var(--soft);border-radius:14px;flex:none;place-items:center;width:52px;height:52px;font-size:26px;display:grid}.slot .text{cursor:pointer;flex:1;min-width:0}.slot .text b{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.slot.ok .bild{background:color-mix(in srgb, var(--ok) 18%, transparent)}.klein{color:var(--grey);font-size:13px}.etikett{color:var(--grey);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.knopf{background:var(--teal);color:var(--on-accent);cursor:pointer;border:0;border-radius:999px;padding:10px 16px;font-weight:700}.knopf.zweit{background:var(--soft);color:var(--ink)}.knopf.gefahr{color:var(--danger);border:1px solid var(--danger);background:0 0}.knopf:disabled{opacity:.5}.rund{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:50%;flex:none;place-items:center;width:38px;height:38px;padding:0;font-size:17px;display:grid}.rund[aria-pressed=true]{background:var(--ok);border-color:var(--ok);color:#fff}.zeile{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.zeile.weit{justify-content:space-between}.balken{background:var(--soft);border-radius:6px;height:10px;position:relative;overflow:hidden}.balken>i{background:var(--teal);border-radius:6px;position:absolute;inset:0 auto 0 0}.balken>i.geplant{background:color-mix(in srgb, var(--teal) 35%, transparent)}.chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:14px}.chip[aria-pressed=true]{background:var(--teal);color:var(--on-accent);border-color:var(--teal)}label.feld{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}label.feld .wert{color:var(--grey);font-weight:400}input[type=range]{width:100%;accent-color:var(--teal)}input[type=text],input[type=number],input[type=date],select,textarea{border:1px solid var(--line);background:var(--card);border-radius:10px;width:100%;padding:9px 10px}.raster{grid-template-columns:1fr 1fr;gap:10px;display:grid}.schleier{z-index:20;background:#00000059;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.blatt{background:var(--bg);width:100%;max-width:600px;max-height:92dvh;padding:14px 16px calc(20px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;flex-direction:column;gap:12px;display:flex;overflow:auto}.blatt-kopf{align-items:center;gap:8px;display:flex}.blatt-kopf h2{flex:1;margin:0;font-size:18px}.liste{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.liste li{border-bottom:1px solid var(--line);justify-content:space-between;gap:8px;padding:8px 0;display:flex}.liste li:last-child{border-bottom:0}.liste li.erledigt span:first-child{color:var(--grey);text-decoration:line-through}.hinweis{background:color-mix(in srgb, var(--warn) 14%, transparent);border-radius:12px;padding:10px 12px;font-size:14px}.fehler{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:30;background:var(--deep);color:#fff;border-radius:12px;max-width:568px;margin:0 auto;padding:12px 14px;position:fixed}.naehr{text-align:center;grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.naehr div{background:var(--soft);border-radius:12px;padding:8px 2px}.naehr b{font-size:16px;display:block}.buehne{aspect-ratio:1;background:linear-gradient(180deg, var(--soft), var(--card));touch-action:none;border-radius:16px;width:100%;max-height:46dvh;position:relative;overflow:hidden}.buehne canvas{width:100%;height:100%;display:block}.buehne .marke{color:var(--grey);font-size:12px;position:absolute;bottom:8px;left:10px}.leer{text-align:center;color:var(--grey);padding:24px 0}.unten{padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:linear-gradient(transparent, var(--bg) 30%);z-index:4;justify-content:center;gap:8px;display:flex;position:fixed;bottom:0;left:0;right:0}svg.verlauf{width:100%;height:160px}
