.kim-info-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;font-family:var(--font-body, "IBM Plex Sans", system-ui, -apple-system, sans-serif)}.kim-info-card{background:var(--surface, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:var(--radius-lg, 12px);box-shadow:0 12px 30px #0003;padding:1.5rem;max-width:560px;width:100%;max-height:calc(100vh - 2rem);overflow-y:auto;color:var(--ink, #1a1a1a)}.kim-info-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.kim-info-title{margin:0;font-family:var(--font-display, "Instrument Serif", Georgia, serif);font-size:1.75rem;font-weight:400;line-height:1.2;color:var(--ink, #1a1a1a)}.kim-info-close{background:transparent;border:1px solid var(--border, #e2e8f0);color:var(--ink-soft, #475569);width:32px;height:32px;border-radius:var(--radius, 8px);font-size:1.4rem;line-height:1;cursor:pointer;flex-shrink:0;transition:background .15s ease,color .15s ease}.kim-info-close:hover{background:var(--surface-soft, #f8fafc);color:var(--ink, #1a1a1a)}.kim-info-close:focus-visible{outline:2px solid var(--cyan, #06b6d4);outline-offset:2px}.kim-info-section{margin-top:1rem}.kim-info-section:first-of-type{margin-top:0}.kim-info-section-title{margin:0 0 .5rem;font-family:var(--font-body, "IBM Plex Sans", system-ui, sans-serif);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--cyan-light, #1ca5bd)}.kim-info-list{margin:0;padding-left:1.25rem;font-size:.95rem;line-height:1.55;color:var(--ink, #1a1a1a)}.kim-info-list li{margin-bottom:.4rem}.kim-info-list li:last-child{margin-bottom:0}.kim-info-list strong{font-weight:600}.kim-info-bubble{position:absolute;top:calc(100% + 10px);right:0;z-index:9000;background:var(--ink, #1a1a1a);color:#fff;font-family:var(--font-body, "IBM Plex Sans", system-ui, -apple-system, sans-serif);font-size:.85rem;line-height:1.35;padding:.55rem .8rem;border-radius:var(--radius, 8px);box-shadow:0 6px 18px #0000002e;max-width:240px;cursor:pointer;animation:kim-info-bubble-in .22s ease-out}.kim-info-bubble-caret{position:absolute;top:-5px;right:10px;width:10px;height:10px;background:var(--ink, #1a1a1a);transform:rotate(45deg);border-radius:1px}@keyframes kim-info-bubble-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}:root{--kim-primary: #1ca5bd;--kim-primary-dark: #17879b;--kim-lila: #7a5fb8;--kim-text: #0f172a;--kim-text-soft: #3a414f;--kim-text-muted: #6a7281;--kim-text-faint: #9aa3b0;--kim-bg: #fcfbf7;--kim-card-bg: #ffffff;--kim-border: #e6e8ec;--kim-border-soft: #f0f1f4;--kim-success: #2f7d4f;--kim-warn-bg: #fef3c7;--kim-warn-border: #facc15;--kim-warn-text: #92400e;--kim-error-bg: #fee2e2;--kim-error-border: #f87171;--kim-error-text: #991b1b;--radius: 14px;--radius-s: 8px;--tap: 44px}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--kim-bg);color:var(--kim-text);font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,sans-serif;font-size:17px;line-height:1.5;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}h1,h2{font-family:"Instrument Serif",Georgia,serif;font-weight:400;letter-spacing:.01em;margin:0 0 .4em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.05rem;font-weight:700;margin:0 0 .4em}p{margin:0 0 .8em}.muted{color:var(--kim-text-muted)}.faint{color:var(--kim-text-faint);font-size:.9rem}.app{max-width:780px;margin:0 auto;padding:1rem 1rem calc(5.5rem + env(safe-area-inset-bottom))}.kopf{display:flex;align-items:center;gap:.75rem;padding:.5rem 0 1rem}.kopf h1{margin:0;font-size:1.6rem;flex:1}.zurueck{background:none;border:none;color:var(--kim-primary);font:inherit;font-weight:600;cursor:pointer;padding:.5rem .25rem;min-height:var(--tap)}.card{background:var(--kim-card-bg);border:1px solid var(--kim-border);border-radius:var(--radius);padding:1.1rem;margin-bottom:1rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:var(--tap);padding:.65rem 1.2rem;border-radius:var(--radius-s);border:1px solid transparent;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.btn-primary{background:var(--kim-primary);color:#fff}.btn-primary:active{background:var(--kim-primary-dark)}.btn-secondary{background:#fff;color:var(--kim-text);border-color:var(--kim-border)}.btn-gefahr{background:#fff;color:var(--kim-error-text);border-color:var(--kim-error-border)}.btn:disabled{opacity:.45;cursor:default}.btn-reihe{display:flex;flex-wrap:wrap;gap:.6rem}.btn-voll{width:100%}label{display:block;font-weight:600;font-size:.95rem;margin-bottom:.3rem}input[type=text],select,textarea{width:100%;min-height:var(--tap);padding:.6rem .7rem;border:1px solid var(--kim-border);border-radius:var(--radius-s);font:inherit;font-size:16px;background:#fff;color:var(--kim-text)}textarea{min-height:9rem;resize:vertical}.feld{margin-bottom:.9rem}.hinweis,.warnung,.fehler{border-radius:var(--radius-s);padding:.7rem .85rem;margin-bottom:1rem;font-size:.95rem;border:1px solid}.hinweis{background:#ecfafd;border-color:#bde8f1;color:#10606f}.warnung{background:var(--kim-warn-bg);border-color:var(--kim-warn-border);color:var(--kim-warn-text)}.fehler{background:var(--kim-error-bg);border-color:var(--kim-error-border);color:var(--kim-error-text)}.liste{list-style:none;margin:0;padding:0}.listen-knopf{display:flex;align-items:center;gap:.75rem;width:100%;min-height:60px;padding:.8rem .9rem;margin-bottom:.6rem;background:var(--kim-card-bg);border:1px solid var(--kim-border);border-radius:var(--radius);font:inherit;text-align:left;cursor:pointer;color:inherit}.listen-knopf:active{background:var(--kim-border-soft)}.listen-titel{font-weight:600}.listen-zeile{flex:1;min-width:0}.pfeil{color:var(--kim-text-faint);font-size:1.3rem}.raum{background:var(--kim-card-bg);border:1px solid var(--kim-border);border-radius:var(--radius);padding:.8rem .6rem;overflow-x:auto}.raum-kante{text-align:center;font-size:.8rem;color:var(--kim-text-faint);letter-spacing:.08em;text-transform:uppercase;padding:.3rem 0}.raum-mitte{display:flex;align-items:stretch;gap:.5rem}.seiten-marke{display:flex;align-items:center;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--kim-text-faint);padding:0 .1rem}.seiten-marke.rechts{transform:rotate(180deg)}.reihen{flex:1;display:flex;flex-direction:column;gap:.5rem;min-width:0}.reihe{display:grid;align-items:stretch;gap:.3rem}.reihe-stufe{display:flex;align-items:center;justify-content:flex-end;font-size:.7rem;color:var(--kim-text-faint);white-space:nowrap}.platz{min-width:0;min-height:54px;padding:.3rem .15rem;border:1px solid var(--kim-border);border-radius:var(--radius-s);background:#fff;font:inherit;font-size:.78rem;line-height:1.15;cursor:pointer;color:var(--kim-text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;overflow:hidden}.platz-name{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-hyphens:none;hyphens:none}.platz.frei{background:var(--kim-border-soft);border-style:dashed;color:var(--kim-text-faint)}.platz.gewaehlt{border-color:var(--kim-primary);box-shadow:0 0 0 2px #1ca5bd47}.platz.ziel{border-color:var(--kim-success);background:#eef8f1}.platz-foto{width:34px;height:34px;border-radius:50%;object-fit:cover;flex:none}.platz-kein-foto{width:34px;height:34px;border-radius:50%;background:var(--kim-border-soft);color:var(--kim-text-faint);display:flex;align-items:center;justify-content:center;font-size:.9rem;flex:none}.pult{margin:.7rem auto .2rem;max-width:62%;padding:.5rem;text-align:center;border:1px solid var(--kim-border);border-radius:var(--radius-s);background:var(--kim-border-soft);color:var(--kim-text-muted);font-size:.85rem;font-weight:600}.karte{background:var(--kim-card-bg);border:1px solid var(--kim-border);border-radius:var(--radius);padding:1.5rem 1rem;text-align:center;min-height:62vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;cursor:pointer;-webkit-user-select:none;user-select:none}.karte-foto{width:min(62vw,260px);height:min(62vw,260px);border-radius:18px;object-fit:cover;background:var(--kim-border-soft)}.karte-name{font-family:"Instrument Serif",Georgia,serif;font-size:2.1rem;line-height:1.15}.karte-frage{color:var(--kim-text-faint);font-size:2.6rem}.fortschritt{text-align:center;color:var(--kim-text-muted);font-size:.9rem;margin-bottom:.6rem}.fussleiste{position:fixed;left:0;right:0;bottom:0;display:flex;background:#fcfbf7f5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--kim-border);padding-bottom:env(safe-area-inset-bottom);z-index:20}.fuss-knopf{flex:1;min-height:58px;background:none;border:none;font:inherit;font-size:.8rem;font-weight:600;color:var(--kim-text-muted);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;padding:.4rem .2rem}.fuss-knopf.aktiv{color:var(--kim-primary)}.fuss-symbol{font-size:1.15rem}.chip-reihe{display:flex;flex-wrap:wrap;gap:.45rem}.chip{min-height:var(--tap);padding:.5rem .8rem;border-radius:999px;border:1px solid var(--kim-border);background:#fff;font:inherit;font-size:.95rem;cursor:pointer;color:inherit}.chip.aktiv{background:var(--kim-primary);border-color:var(--kim-primary);color:#fff}.leer{text-align:center;color:var(--kim-text-muted);padding:2rem 1rem}.trenner{border:none;border-top:1px solid var(--kim-border-soft);margin:1rem 0}.blatt-hintergrund{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:flex;align-items:flex-end;justify-content:center;z-index:40}.blatt{width:100%;max-width:560px;max-height:86vh;overflow-y:auto;background:var(--kim-card-bg);border-radius:var(--radius) var(--radius) 0 0;padding:1rem 1rem calc(1.2rem + env(safe-area-inset-bottom));animation:hoch .16s ease-out}@keyframes hoch{0%{transform:translateY(14px);opacity:.6}}@media (prefers-reduced-motion: reduce){.blatt{animation:none}}.blatt-kopf{display:flex;align-items:center;gap:.5rem;margin-bottom:.8rem}.blatt-kopf h3{flex:1;margin:0}.blatt-zu{min-width:var(--tap);min-height:var(--tap);border:none;background:none;font-size:1.1rem;color:var(--kim-text-muted);cursor:pointer}.quer-hinweis{display:none}@media (max-width: 620px) and (orientation: portrait){.quer-hinweis{display:block}.platz{font-size:.7rem}}.vorschau{list-style:none;margin:0 0 1rem;padding:.6rem .8rem;background:var(--kim-border-soft);border-radius:var(--radius-s);font-size:.95rem}.vorschau li+li{margin-top:.15rem}.tacker-leiste{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.8rem}.raum.tacker .platz{padding:0;gap:0;min-height:62px;justify-content:stretch}.zelle-name{display:flex;align-items:center;justify-content:center;width:100%;min-height:26px;padding:.15rem .2rem;border:none;border-bottom:1px solid var(--kim-border);border-radius:var(--radius-s) var(--radius-s) 0 0;background:var(--kim-border-soft);font:inherit;font-size:.76rem;font-weight:600;color:var(--kim-text);cursor:pointer;overflow:hidden}.zelle-name:active{background:#dff2f6}.zelle-knoepfe{display:flex;flex:1;width:100%;gap:1px}.wert{flex:1;min-width:0;border:none;background:#fff;font:inherit;font-size:1.15rem;font-weight:600;line-height:1;color:var(--kim-text-muted);cursor:pointer;border-radius:0 0 var(--radius-s) var(--radius-s)}.wert-plus{color:var(--kim-primary);font-size:1.4rem}.wert-minus{color:var(--kim-error-text);background:#fff7f7}.wert:active{background:var(--kim-border-soft)}.platz.gewaehlt .zelle-name{background:var(--kim-primary);color:#fff}.platz.echo-1{animation:echo-gut .26s ease-out}.platz.echo-0{animation:echo-neutral .26s ease-out}.platz.echo--1{animation:echo-minus .26s ease-out}@keyframes echo-gut{0%{background:var(--kim-primary)}}@keyframes echo-neutral{0%{background:var(--kim-border)}}@keyframes echo-minus{0%{background:var(--kim-error-border)}}@media (prefers-reduced-motion: reduce){.platz.echo-1,.platz.echo-0,.platz.echo--1{animation:none}}.zelle-ganz{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:100%;height:100%;min-height:62px;border:none;background:none;font:inherit;font-size:.76rem;color:inherit;cursor:pointer;border-radius:var(--radius-s);overflow:hidden}.zelle-gesperrt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;width:100%;min-height:62px;font-size:.76rem;opacity:.5}.anwesenheit-marke{font-size:.66rem;color:var(--kim-text-muted)}.platz.abwesend{background:repeating-linear-gradient(-45deg,var(--kim-border-soft),var(--kim-border-soft) 5px,#fff 5px,#fff 10px)}.platz.verspaetet .anwesenheit-marke{color:var(--kim-warn-text);font-weight:600}.platz-leer{display:block;min-height:62px}.zuruecknehmen{min-height:var(--tap);padding:.45rem .9rem;border:1px solid var(--kim-border);border-radius:999px;background:#fff;font:inherit;font-size:.9rem;font-weight:600;color:var(--kim-text-soft);cursor:pointer;white-space:nowrap}.ruf-marke{padding:.4rem .8rem;border-radius:999px;background:var(--kim-primary);color:#fff;font-size:.9rem;font-weight:600;white-space:nowrap}.quer-noetig{display:none}@media (max-width: 620px) and (orientation: portrait){.quer-noetig{display:block}}body.vollbild .fussleiste{display:none}body.vollbild .app{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.zelle-name-fest{cursor:default}.raum-hintergrund{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:url(/klassenzimmer.jpg);background-size:cover;background-position:center;opacity:.08}@media (max-width: 620px) and (orientation: portrait){.raum-hintergrund{background-position:center 35%;opacity:.07}}.kopf-mit-rechts{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.info-wrapper{position:relative;display:inline-flex;flex-shrink:0}.info-knopf{width:2.25rem;height:2.25rem;border-radius:50%;border:1.5px solid var(--kim-primary);background:#fff;color:var(--kim-primary);font:700 1.05rem/1 "Instrument Serif",Georgia,serif;font-style:italic;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation}.info-knopf:hover,.info-knopf:focus-visible{background:var(--kim-primary);color:#fff;outline:none}
