/* EnergieBoard. Konzept: KONZEPT.md (Typoskala, Icons, Rhythmus, Farbrollen). */
@font-face{font-family:"Manrope";src:url(/schriften/manrope.woff2) format("woff2");font-weight:400 800;font-display:swap}
@font-face{font-family:"DM Sans";src:url(/schriften/dmsans.woff2) format("woff2");font-weight:400 700;font-display:swap}
:root{
  color-scheme:light;color-scheme:only light;
  --grund:#101112;--grund2:#1c1d20;--grund3:#2a2c30;
  --gold:#e7b345;--gold-licht:#f3d9a2;--gold-grund:#fbf1de;--gold-tief:#745a22;--gold-mittel:#b07a1a;
  --cyan:#0fbedd;--cyan-grund:#e2f7fb;--cyan-tief:#085f6e;
  --tinte:#101112;--tinte2:#5b5f66;--tinte3:#666b73;--linie:#e6e0d3;--linie2:#efeadf;--hell:#f6f4ef;--hell2:#fbfaf6;--weiss:#fff;
  --gut:#176b3b;--gut-grund:#e7f4ec;--warn:#8a5200;--warn-grund:#fdf1dc;--rot:#b02c22;--rot-grund:#fbe9e7;--blau:#3368b8;
  --p-gold:#e7b345;--p-cyan:#0fbedd;--p-gruen:#2e8b3b;--p-violett:#6e5ac8;--p-rot:#c94a35;--p-pflaume:#9c3a86;--p-blau:#3368b8;--p-braun:#8a6d3b;--p-grau:#8a8f96;
  --kopf:"Manrope",system-ui,sans-serif;--text:"DM Sans","Manrope",system-ui,sans-serif;
  --r:10px;--r2:6px;--schatten:0 1px 2px rgba(16,17,18,.05),0 10px 28px rgba(16,17,18,.08);--schatten2:0 1px 2px rgba(16,17,18,.06);
  --leiste:256px;--akte:560px;
}
*{box-sizing:border-box}
html{height:100%;-webkit-text-size-adjust:100%}
body{margin:0;min-height:100%;background:var(--hell);color:var(--tinte);font-family:var(--text);font-size:14.5px;line-height:1.5;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--kopf);margin:0;line-height:1.15;letter-spacing:-.02em}
h1{font-size:28px;font-weight:800}
h2{font-size:20px;font-weight:700}
h3{font-size:15px;font-weight:700}
a{color:var(--cyan-tief)}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
.ic{display:inline-block;vertical-align:middle;flex:none}
.vs{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.laden{display:flex;align-items:center;gap:10px;padding:40px;color:var(--tinte2)}
.ladepunkt{width:12px;height:12px;border-radius:50%;background:var(--gold);animation:puls 1s infinite alternate}
@keyframes puls{from{opacity:.3}to{opacity:1}}
.noscript{padding:40px;text-align:center}
.erwaehnung{background:var(--gold-grund);color:var(--gold-tief);border-radius:4px;padding:0 3px;font-weight:600}

/* Knöpfe, Eingaben, Chips */
.knopf{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--r2);font-weight:600;font-size:14px;border:1px solid transparent;line-height:1.2;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}
.knopf.erst{background:var(--grund);color:#fff}
.knopf.erst:hover{background:var(--grund3)}
.knopf.gold{background:var(--gold);color:var(--grund)}
.knopf.gold:hover{background:#d9a52f}
.knopf.zweit{background:#fff;border-color:var(--linie);color:var(--tinte)}
.knopf.zweit:hover{background:var(--hell2);border-color:#cfc7b6}
.knopf.leise{color:var(--tinte2);padding:6px 10px}
.knopf.leise:hover{background:var(--hell);color:var(--tinte)}
.knopf.gefahr{color:var(--rot)}
.knopf.gefahr:hover{background:var(--rot-grund)}
.knopf.klein{padding:5px 10px;font-size:13px}
.knopf.rund{width:34px;height:34px;padding:0;justify-content:center;border-radius:50%}
.knopf[disabled]{opacity:.5;cursor:default}
.eingabe,.feld input,.feld select,.feld textarea{width:100%;padding:9px 11px;border:1px solid var(--linie);border-radius:var(--r2);background:#fff;font-size:14.5px}
.eingabe:focus,.feld input:focus,.feld select:focus,.feld textarea:focus{outline:2px solid var(--cyan);outline-offset:0;border-color:var(--cyan)}
.feld{display:flex;flex-direction:column;gap:5px;margin-bottom:14px}
.feld label{font-weight:600;font-size:13px;color:var(--tinte2)}
.zeile{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.zeile.rechts{justify-content:flex-end}
.chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:12.5px;font-weight:600;background:var(--hell);color:var(--tinte2);border:1px solid transparent;white-space:nowrap}
.chip.gold{background:var(--gold-grund);color:var(--gold-tief)}
.chip.cyan{background:var(--cyan-grund);color:var(--cyan-tief)}
.chip.gruen{background:var(--gut-grund);color:var(--gut)}
.chip.violett{background:#ebe7fb;color:#4b3d9a}
.chip.rot{background:var(--rot-grund);color:var(--rot)}
.chip.pflaume{background:#f6e3f0;color:#7b2b68}
.chip.blau{background:#e3ecfa;color:#1f4a8a}
.chip.braun{background:#f0e8dc;color:#6a4d22}
.chip.grau{background:#eceef0;color:#4a4f56}
.chip.ueberfaellig{background:var(--rot-grund);color:var(--rot)}
.chip.heute{background:var(--warn-grund);color:var(--warn)}
.chip.bald{background:var(--hell);color:var(--tinte2)}
.chip.erledigt{background:var(--gut-grund);color:var(--gut)}
.chip.leer{color:var(--tinte3);background:transparent;border:1px dashed var(--linie)}
.chip.knopfig{cursor:pointer}
.chip.knopfig:hover{border-color:#cfc7b6}
.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#fff;font-weight:700;font-family:var(--kopf);flex:none;letter-spacing:.02em;background:var(--tinte3)}
.avatar.leer{background:#fff;border:1px dashed #cfc7b6;color:var(--tinte3)}
.avatar.a28{width:28px;height:28px;font-size:11px}
.avatar.a24{width:24px;height:24px;font-size:10px}
.avatar.a36{width:36px;height:36px;font-size:13px}
.avatar.a56{width:56px;height:56px;font-size:20px}
.avatare{display:inline-flex}
.avatare .avatar{margin-left:-6px;border:2px solid #fff}
.avatare .avatar:first-child{margin-left:0}
.menge{display:inline-flex;align-items:center;gap:4px;color:var(--tinte2);font-size:12.5px}
.menge .ic{color:var(--tinte3)}
.kennzeile{font-size:12.5px;color:var(--tinte2);display:flex;align-items:center;gap:12px;flex-wrap:wrap}

/* Anmeldung */
.anmelden{min-height:100vh;display:grid;grid-template-columns:48% 1fr}
.anmelden .buehne{background:var(--grund);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:40px}
.anmelden .buehne img{width:220px;height:auto}
.anmelden .buehne h1{font-size:48px;margin-top:24px;color:#fff}
.anmelden .buehne p{color:#b9bdc4;font-size:16px;max-width:420px}
.anmelden .buehne .merk{display:grid;gap:14px;margin-top:40px}
.anmelden .buehne .merk div{display:flex;gap:12px;align-items:flex-start;color:#d7dadf}
.anmelden .buehne .merk .ic{color:var(--gold)}
.anmelden .formular{display:flex;align-items:center;justify-content:center;padding:40px}
.anmelden form{width:100%;max-width:380px}
.anmelden form h2{font-size:28px;font-weight:800;margin-bottom:6px}
.anmelden form .unter{color:var(--tinte2);margin:0 0 24px}
.fehlermeldung{background:var(--rot-grund);color:var(--rot);padding:10px 12px;border-radius:var(--r2);font-weight:600;margin-bottom:14px;display:flex;gap:8px;align-items:flex-start}
.hinweisfeld{background:var(--gold-grund);color:var(--gold-tief);padding:10px 12px;border-radius:var(--r2);margin-bottom:14px;display:flex;gap:8px}

/* Rahmen */
.app{display:grid;grid-template-columns:var(--leiste) 1fr;min-height:100vh}
.leiste{background:var(--grund);color:#d7dadf;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow:auto}
.leiste .marke{display:flex;align-items:center;gap:10px;padding:18px 18px 12px;color:#fff;font-family:var(--kopf);font-weight:800;font-size:18px;text-decoration:none}
.leiste .marke img{width:34px;height:34px}
.leiste nav{display:flex;flex-direction:column;padding:6px 10px;gap:2px}
.leiste .nav{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;color:#d7dadf;text-decoration:none;font-weight:500;position:relative}
.leiste .nav:hover{background:var(--grund2);color:#fff}
.leiste .nav.aktiv{background:var(--grund3);color:#fff}
.leiste .nav.aktiv::before{content:"";position:absolute;left:-10px;top:8px;bottom:8px;width:3px;border-radius:2px;background:var(--gold)}
.leiste .nav .ic{color:#9aa0a8}
.leiste .nav.aktiv .ic,.leiste .nav:hover .ic{color:var(--gold)}
.leiste .zahl{margin-left:auto;background:var(--gold);color:var(--grund);font-size:11px;font-weight:800;border-radius:999px;padding:1px 7px}
.leiste .abschnittkopf{display:flex;align-items:center;justify-content:space-between;padding:14px 20px 4px;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#8a8f96;font-weight:700}
.leiste .abschnittkopf button{color:#8a8f96;display:inline-flex}
.leiste .abschnittkopf button:hover{color:#fff}
.leiste .projektpunkt{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:8px;color:#d7dadf;text-decoration:none}
.leiste .projektpunkt:hover,.leiste .projektpunkt.aktiv{background:var(--grund2);color:#fff}
.leiste .projektpunkt .kachel{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:#fff}
.leiste .projektpunkt .name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.leiste .projektpunkt .offen{font-size:11.5px;color:#8a8f96}
.leiste .unten{margin-top:auto;padding:10px;border-top:1px solid var(--grund3)}
.leiste .ich{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;width:100%;text-align:left;color:#fff}
.leiste .ich:hover{background:var(--grund2)}
.leiste .ich small{display:block;color:#8a8f96;font-size:12px;font-weight:400}
.kachel.f-gold{background:var(--p-gold);color:var(--grund)!important}.kachel.f-cyan{background:var(--p-cyan)}.kachel.f-gruen{background:var(--p-gruen)}.kachel.f-violett{background:var(--p-violett)}.kachel.f-rot{background:var(--p-rot)}.kachel.f-pflaume{background:var(--p-pflaume)}.kachel.f-blau{background:var(--p-blau)}.kachel.f-braun{background:var(--p-braun)}
.seite{display:flex;flex-direction:column;min-width:0;min-height:100vh}
.kopf{height:56px;display:flex;align-items:center;gap:14px;padding:0 24px;background:#fff;border-bottom:1px solid var(--linie);position:sticky;top:0;z-index:5}
.kopf h1{font-size:20px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.kopf .kachel{width:30px;height:30px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:none}
.kopf .suchfeld{margin-left:auto;position:relative;width:260px}
.kopf .suchfeld input{padding:8px 10px 8px 36px;background:var(--hell);border:1px solid var(--linie);border-radius:var(--r2);width:100%;font-size:14px}
.kopf .suchfeld .ic{position:absolute;left:10px;top:9px;color:var(--tinte3)}
.kopf .menueknopf{display:none}
.reiter{display:flex;gap:2px;padding:0 24px;background:#fff;border-bottom:1px solid var(--linie);overflow-x:auto}
.reiter a{display:inline-flex;align-items:center;gap:7px;padding:10px 12px;color:var(--tinte2);text-decoration:none;font-weight:600;border-bottom:2px solid transparent;white-space:nowrap;font-size:13.5px}
.reiter a .ic{color:var(--tinte3)}
.reiter a:hover{color:var(--tinte)}
.reiter a.aktiv{color:var(--tinte);border-bottom-color:var(--gold)}
.reiter a.aktiv .ic{color:var(--gold-mittel)}
.werkzeuge{display:flex;align-items:center;gap:8px;padding:12px 24px;flex-wrap:wrap}
.werkzeuge .rechts{margin-left:auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.inhalt{flex:1;padding:0 24px 40px;min-width:0}
.inhalt.eng{max-width:980px}
.seitenkopf{padding:28px 0 16px}
.seitenkopf h1{font-size:28px}
.seitenkopf p{color:var(--tinte2);margin:4px 0 0}
.tafel{background:#fff;border:1px solid var(--linie);border-radius:var(--r);box-shadow:var(--schatten2)}
.tafel.pad{padding:20px}
.tafelkopf{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--linie2)}
.tafelkopf h3{display:flex;align-items:center;gap:8px}
.tafelkopf .ic{color:var(--gold-mittel)}
.tafelkopf .rechts{margin-left:auto;display:flex;gap:6px}
.raster{display:grid;gap:20px}
.raster.zwei{grid-template-columns:1fr 1fr}
.raster.drei{grid-template-columns:repeat(3,1fr)}
.raster.vier{grid-template-columns:repeat(4,1fr)}
.leerzustand{padding:40px 20px;text-align:center;color:var(--tinte2)}
.leerzustand .ic{color:var(--gold-mittel);margin-bottom:10px}
.leerzustand h3{margin-bottom:4px}
.dropzone.aktiv{outline:2px dashed var(--cyan);outline-offset:-2px;background:var(--cyan-grund)}

/* Aufklappmenüs, Dialoge, Hinweise */
.schweben{position:fixed;z-index:50;background:#fff;border:1px solid var(--linie);border-radius:var(--r);box-shadow:var(--schatten);min-width:220px;max-width:360px;max-height:70vh;overflow:auto;padding:6px}
.schweben .punkt{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:6px;text-align:left;font-size:14px}
.schweben .punkt:hover,.schweben .punkt.aktiv{background:var(--hell)}
.schweben .punkt.gefahr{color:var(--rot)}
.schweben .punkt .ic{color:var(--tinte2)}
.schweben .trenner{height:1px;background:var(--linie2);margin:6px 0}
.schweben .suchen{padding:4px 4px 8px}
.schweben .kopfzeile{padding:8px 10px 4px;font-size:12px;color:var(--tinte3);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.schweben input[type=date]{width:100%}
.schleier{position:fixed;inset:0;background:rgba(16,17,18,.45);z-index:60;display:flex;align-items:center;justify-content:center;padding:20px}
.dialog{background:#fff;border-radius:14px;box-shadow:var(--schatten);width:100%;max-width:520px;max-height:90vh;overflow:auto}
.dialog.breit{max-width:760px}
.dialog .dkopf{display:flex;align-items:center;gap:10px;padding:18px 22px 8px}
.dialog .dkopf h2{flex:1}
.dialog .dkoerper{padding:8px 22px 18px}
.dialog .dfuss{display:flex;justify-content:flex-end;gap:8px;padding:12px 22px 20px}
.hinweise{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:80;display:flex;flex-direction:column;gap:8px;pointer-events:none}
.hinweis{background:var(--grund);color:#fff;padding:10px 16px;border-radius:var(--r2);box-shadow:var(--schatten);font-weight:600;display:flex;gap:8px;align-items:center;pointer-events:auto}
.hinweis.fehler{background:var(--rot)}
.hinweis.gut{background:var(--gut)}

/* Liste */
.liste{background:#fff;border:1px solid var(--linie);border-radius:var(--r);overflow:hidden}
.liste .spalten,.liste .zeile-a{display:grid;grid-template-columns:var(--spalten,minmax(260px,1fr) 180px 140px);align-items:center;gap:8px}
.liste .spalten{padding:8px 16px;font-size:12px;color:var(--tinte3);font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--linie2);background:var(--hell2)}
.liste .spalten div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.liste .abschnitt{border-top:1px solid var(--linie2)}
.liste .abschnitt:first-of-type{border-top:0}
.liste .akopf{display:flex;align-items:center;gap:8px;padding:12px 16px 6px}
.liste .akopf button.auf{display:inline-flex;color:var(--tinte2)}
.liste .akopf h3{font-size:15px;letter-spacing:.02em}
.liste .akopf input{font-family:var(--kopf);font-weight:700;font-size:15px;border:0;background:transparent;padding:2px 4px;border-radius:4px;width:auto;min-width:40px}
.liste .akopf input:focus{outline:2px solid var(--cyan);background:#fff}
.liste .akopf .zahl{color:var(--tinte3);font-size:12.5px}
.liste .akopf .rechts{margin-left:auto;display:flex;gap:4px}
.liste .zeile-a{padding:0 16px;min-height:44px;border-top:1px solid var(--linie2);cursor:pointer;position:relative}
.liste .zeile-a:hover{background:var(--hell2)}
.liste .zeile-a.aktiv{background:var(--gold-grund)}
.liste .zeile-a.erledigt .name input{color:var(--tinte3);text-decoration:line-through}
.liste .zeile-a.ziehen{opacity:.4}
.liste .zeile-a.ziel-oben{box-shadow:inset 0 2px 0 var(--cyan)}
.liste .zeile-a.ziel-unten{box-shadow:inset 0 -2px 0 var(--cyan)}
.liste .zeile-a.unter{padding-left:44px}
.liste .name{display:flex;align-items:center;gap:8px;min-width:0}
.liste .name .griff{color:var(--tinte3);cursor:grab;display:inline-flex}
.liste .name input{flex:1 1 auto;border:0;background:transparent;padding:6px 6px;border-radius:4px;min-width:0;font-size:14.5px}
.liste .name input:focus{outline:2px solid var(--cyan);background:#fff}
.liste .name .zusatz{display:inline-flex;gap:6px;align-items:center;color:var(--tinte3);font-size:12px;flex:0 1 auto;min-width:0}
.liste .name .zusatz>*{flex:none}
.liste .name .zusatz>.elternhinweis{flex:0 1 200px;min-width:0}
.liste .name .zusatz .ic{width:16px;height:16px}
.liste .name .zusatz .wartet{color:var(--warn)}
.liste .hakenknopf{width:22px;height:22px;border-radius:50%;border:1.5px solid #c9cdd3;display:inline-flex;align-items:center;justify-content:center;color:transparent;flex:none;background:#fff}
.liste .hakenknopf:hover{border-color:var(--gut);color:var(--gut)}
.liste .zeile-a.erledigt .hakenknopf{background:var(--gut);border-color:var(--gut);color:#fff}
.liste .neu{display:flex;align-items:center;gap:8px;padding:6px 16px 10px 46px}
.liste .neu button{color:var(--tinte2);display:inline-flex;align-items:center;gap:6px;font-weight:600;padding:6px 8px;border-radius:6px}
.liste .neu button:hover{background:var(--hell);color:var(--tinte)}
.liste .neu input{flex:1;border:0;border-bottom:1px solid var(--linie);padding:6px 4px;background:transparent}
.liste .zelle{min-width:0;display:flex;align-items:center;gap:6px;font-size:13.5px}
.liste .zelle .name-kurz{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tinte2)}
.liste .zelle.feld{gap:4px;overflow:hidden}
.liste .zelle.feld .chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:1.6}
.liste .zelle.feld .chip.leer{color:var(--tinte3);border-color:transparent}
.liste .zeile-a:hover .zelle.feld .chip.leer{border-color:var(--linie)}
.liste.kompakt .spalten{display:none}
.unterliste{margin:8px 0 0}
.unterliste .zeile-a{padding-left:4px;border-top:1px solid var(--linie2);min-height:40px;display:grid;grid-template-columns:1fr 36px 120px;gap:8px;align-items:center;cursor:pointer}
.unterliste .zeile-a .name input{font-size:14px}

/* Board */
.board{display:flex;gap:16px;overflow-x:auto;padding-bottom:20px;align-items:flex-start;min-height:60vh}
.spalte{width:300px;flex:none;background:var(--hell2);border:1px solid var(--linie);border-radius:var(--r);display:flex;flex-direction:column;max-height:calc(100vh - 190px)}
.spalte .skopf{display:flex;align-items:center;gap:8px;padding:12px 14px 8px;position:sticky;top:0;background:var(--hell2);border-radius:var(--r) var(--r) 0 0;z-index:1}
.spalte .skopf h3{font-size:15px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.spalte .skopf input{font-family:var(--kopf);font-weight:700;font-size:15px;border:0;background:transparent;flex:1;min-width:0;padding:2px 4px;border-radius:4px}
.spalte .skopf input:focus{outline:2px solid var(--cyan);background:#fff}
.spalte .skopf .zahl{color:var(--tinte3);font-size:12.5px}
.spalte .karten{display:flex;flex-direction:column;gap:10px;padding:4px 10px 10px;overflow:auto;min-height:60px;flex:1}
.spalte .karten.ziel{background:var(--cyan-grund)}
.spalte .neu{padding:4px 10px 12px}
.spalte .neu button{display:inline-flex;align-items:center;gap:6px;color:var(--tinte2);font-weight:600;padding:6px 8px;border-radius:6px}
.spalte .neu button:hover{background:#fff;color:var(--tinte)}
.spalte .neu textarea{width:100%;border:1px solid var(--linie);border-radius:8px;padding:8px;resize:none;background:#fff}
.spalte.neuspalte{background:transparent;border-style:dashed;align-items:stretch;justify-content:flex-start}
.karte{background:#fff;border:1px solid var(--linie);border-radius:var(--r);padding:12px 12px 10px;box-shadow:var(--schatten2);cursor:pointer;display:flex;flex-direction:column;gap:8px;position:relative}
.karte:hover{border-color:#cfc7b6;box-shadow:var(--schatten)}
.karte.aktiv{border-color:var(--gold);box-shadow:0 0 0 2px var(--gold-grund)}
.karte.ziehen{opacity:.4}
.karte.erledigt .titel{color:var(--tinte3);text-decoration:line-through}
.karte .titel{font-weight:600;font-size:15px;line-height:1.35;display:flex;gap:8px;align-items:flex-start}
.karte .titel .hakenknopf{margin-top:2px;width:18px;height:18px;border-radius:50%;border:1.5px solid #c9cdd3;display:inline-flex;align-items:center;justify-content:center;color:transparent;flex:none}
.karte.erledigt .titel .hakenknopf{background:var(--gut);border-color:var(--gut);color:#fff}
.karte .titel .hakenknopf:hover{border-color:var(--gut);color:var(--gut)}
.karte .chips{display:flex;gap:5px;flex-wrap:wrap}
.karte .fuss{display:flex;align-items:center;gap:10px;justify-content:space-between}
.karte .fuss .mengen{display:flex;gap:8px}
.karte .art{position:absolute;top:10px;right:10px;color:var(--gold-mittel)}

/* Zeitleiste */
.zeitleiste{background:#fff;border:1px solid var(--linie);border-radius:var(--r);overflow:hidden;display:grid;grid-template-columns:280px 1fr}
.zeitleiste .namen{border-right:1px solid var(--linie)}
.zeitleiste .namen .kopfz{height:52px;border-bottom:1px solid var(--linie);display:flex;align-items:center;padding:0 14px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tinte3);background:var(--hell2)}
.zeitleiste .namen .gruppe{height:36px;display:flex;align-items:center;padding:0 14px;font-family:var(--kopf);font-weight:700;font-size:13.5px;background:var(--hell2);border-bottom:1px solid var(--linie2)}
.zeitleiste .namen .reihe{height:40px;display:flex;align-items:center;gap:8px;padding:0 14px;border-bottom:1px solid var(--linie2);cursor:pointer;font-size:13.5px}
.zeitleiste .namen .reihe:hover{background:var(--hell2)}
.zeitleiste .namen .reihe span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.zeitleiste .flaeche{overflow:auto;position:relative}
.zeitleiste .skala{height:52px;position:sticky;top:0;background:var(--hell2);border-bottom:1px solid var(--linie);z-index:2}
.zeitleiste .skala .monat{position:absolute;top:6px;font-size:12px;font-weight:700;color:var(--tinte2);padding-left:6px;border-left:1px solid var(--linie)}
.zeitleiste .skala .tag{position:absolute;top:28px;font-size:11px;color:var(--tinte3);text-align:center}
.zeitleiste .skala .tag.we{color:#cfc7b6}
.zeitleiste .raster-bg{position:absolute;inset:52px 0 0 0;pointer-events:none}
.zeitleiste .raster-bg .we{position:absolute;top:0;bottom:0;background:var(--hell2)}
.zeitleiste .raster-bg .heute{position:absolute;top:0;bottom:0;width:2px;background:var(--cyan)}
.zeitleiste .reihen{position:relative}
.zeitleiste .reihen .gruppe{height:36px;border-bottom:1px solid var(--linie2)}
.zeitleiste .reihen .reihe{height:40px;border-bottom:1px solid var(--linie2);position:relative}
.zeitleiste .balken{position:absolute;top:8px;height:24px;border-radius:6px;background:var(--cyan-tief);color:#fff;font-size:12.5px;font-weight:600;display:flex;align-items:center;padding:0 8px;cursor:grab;white-space:nowrap;overflow:hidden;box-shadow:var(--schatten2)}
.zeitleiste .balken.erledigt{background:var(--gut)}
.zeitleiste .balken.meilenstein{width:24px!important;padding:0;border-radius:4px;transform:rotate(45deg) scale(.8);background:var(--gold-mittel)}
.zeitleiste .balken .griff{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize}
.zeitleiste .balken .griff.l{left:0}.zeitleiste .balken .griff.r{right:0}
.zeitleiste .balken.ueberfaellig{background:var(--rot)}
.zeitleiste svg.pfeile{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}
.zeitleiste .balkenname{position:absolute;top:11px;font-size:12.5px;color:var(--tinte2);white-space:nowrap;cursor:pointer;max-width:260px;overflow:hidden;text-overflow:ellipsis}
.zeitleiste .ungeplant{padding:4px 14px;font-size:12.5px;color:var(--tinte3);display:flex;align-items:center;gap:6px}
.zeitleiste .reihe .setzen{position:absolute;left:8px;top:9px;font-size:12px;color:var(--tinte2);cursor:pointer;background:#fff;border:1px dashed var(--linie);border-radius:6px;padding:2px 8px}

/* Kalender */
.kalender{background:#fff;border:1px solid var(--linie);border-radius:var(--r);overflow:hidden}
.kalender .wt{display:grid;grid-template-columns:repeat(7,1fr);background:var(--hell2);border-bottom:1px solid var(--linie)}
.kalender .wt div{padding:8px 10px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tinte3)}
.kalender .tage{display:grid;grid-template-columns:repeat(7,1fr)}
.kalender .tag{min-height:120px;border-right:1px solid var(--linie2);border-bottom:1px solid var(--linie2);padding:6px;display:flex;flex-direction:column;gap:4px}
.kalender .tag:nth-child(7n){border-right:0}
.kalender .tag.fremd{background:var(--hell2);color:var(--tinte3)}
.kalender .tag.ziel{background:var(--cyan-grund)}
.kalender .tag .nr{font-size:12.5px;font-weight:700;display:flex;justify-content:space-between;align-items:center}
.kalender .tag.heute .nr span{background:var(--gold);color:var(--grund);border-radius:50%;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}
.kalender .tag .nr button{color:var(--tinte3);display:inline-flex}
.kalender .eintrag{font-size:12.5px;font-weight:600;padding:3px 6px;border-radius:6px;background:var(--cyan-grund);color:var(--cyan-tief);cursor:pointer;display:flex;gap:5px;align-items:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.kalender .eintrag.erledigt{background:var(--gut-grund);color:var(--gut);text-decoration:line-through}
.kalender .eintrag.ueberfaellig{background:var(--rot-grund);color:var(--rot)}
.kalender .eintrag .avatar{width:16px;height:16px;font-size:8px}
.kalender.woche .tag{min-height:300px}

/* Dashboard */
.kacheln{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px}
.kachelz{background:#fff;border:1px solid var(--linie);border-radius:var(--r);padding:18px 20px;box-shadow:var(--schatten2);display:flex;flex-direction:column;gap:6px}
.kachelz .ic{color:var(--gold-mittel)}
.kachelz .wert{font-family:var(--kopf);font-size:40px;font-weight:800;line-height:1}
.kachelz .wert.rot{color:var(--rot)}
.kachelz .wert.gut{color:var(--gut)}
.kachelz .titel{font-weight:600;color:var(--tinte2);display:flex;align-items:center;gap:8px}
.kachelz .einordnung{font-size:12.5px;color:var(--tinte3)}
.diagramm{padding:16px 18px}
.diagramm svg{width:100%;height:auto;display:block;font-family:var(--text)}
.diagramm .achse{stroke:var(--linie);stroke-width:1}
.diagramm text{fill:var(--tinte2);font-size:12px}
.diagramm .wertlabel{fill:var(--tinte);font-weight:700}
.diagramm .legende{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--tinte2);margin-top:8px}
.diagramm .legende span{display:inline-flex;align-items:center;gap:6px}
.diagramm .legende i{width:10px;height:10px;border-radius:3px;display:inline-block}
.diagramm .tabelle{width:100%;border-collapse:collapse;font-size:13.5px;margin-top:8px}
.diagramm .tabelle th,.diagramm .tabelle td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--linie2)}
.diagramm .tabelle th{font-size:12px;color:var(--tinte3);text-transform:uppercase;letter-spacing:.05em}
.diagramm .tabelle td.z{text-align:right;font-variant-numeric:tabular-nums}
.tooltip{position:fixed;z-index:70;background:var(--grund);color:#fff;font-size:12.5px;padding:6px 10px;border-radius:6px;pointer-events:none;box-shadow:var(--schatten);white-space:nowrap}
.schaltreihe{display:inline-flex;border:1px solid var(--linie);border-radius:var(--r2);overflow:hidden}
.schaltreihe button{padding:6px 10px;font-size:13px;font-weight:600;color:var(--tinte2);display:inline-flex;align-items:center;gap:5px}
.schaltreihe button.aktiv{background:var(--grund);color:#fff}
.schaltreihe button:not(:last-child){border-right:1px solid var(--linie)}
.listchen{list-style:none;margin:0;padding:0}
.listchen li{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--linie2);cursor:pointer}
.listchen li:last-child{border-bottom:0}
.listchen li:hover .ltitel{color:var(--cyan-tief)}
.listchen .ltitel{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.listchen .lnotiz{font-size:12.5px;color:var(--tinte3)}

/* Übersicht, Nachrichten, Dateien, Ablauf */
.uebersicht{display:grid;grid-template-columns:1fr 340px;gap:20px;padding-top:20px}
.beschreibung{min-height:60px;line-height:1.6}
.beschreibung[contenteditable=true]{outline:none;border:1px solid var(--linie);border-radius:var(--r2);padding:10px}
.beschreibung[contenteditable=true]:focus{border-color:var(--cyan);box-shadow:0 0 0 2px var(--cyan-grund)}
.beschreibung:empty::before,.editor:empty::before{content:attr(data-leer);color:var(--tinte3)}
.beschreibung p,.inhalt-html p{margin:0 0 8px}
.inhalt-html ul,.inhalt-html ol,.beschreibung ul,.beschreibung ol{margin:4px 0 8px;padding-left:22px}
.inhalt-html a{word-break:break-word}
.status-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-weight:700;font-size:12.5px}
.status-chip.im_plan{background:var(--gut-grund);color:var(--gut)}.status-chip.gefaehrdet{background:var(--warn-grund);color:var(--warn)}.status-chip.verzug{background:var(--rot-grund);color:var(--rot)}.status-chip.pausiert{background:#eceef0;color:#4a4f56}.status-chip.erledigt{background:var(--gut-grund);color:var(--gut)}
.statusliste .eintrag{padding:14px 0;border-bottom:1px solid var(--linie2)}
.statusliste .eintrag:last-child{border-bottom:0}
.statusliste .eintrag h4{font-size:15px;margin:6px 0 4px}
.mitgliederliste{display:flex;flex-direction:column;gap:8px}
.mitgliederliste div{display:flex;align-items:center;gap:10px}
.nachricht{padding:18px 20px;border-bottom:1px solid var(--linie2)}
.nachricht:last-child{border-bottom:0}
.nachricht .nkopf{display:flex;align-items:center;gap:10px;margin-bottom:8px}
.nachricht .nkopf .zeit{color:var(--tinte3);font-size:12.5px;margin-left:auto}
.nachricht h3{font-size:16px;margin-bottom:6px}
.nachricht .antworten{margin:12px 0 0 46px;display:flex;flex-direction:column;gap:10px}
.nachricht .antwort{display:flex;gap:10px;align-items:flex-start}
.nachricht .antwort .blase{background:var(--hell);border-radius:10px;padding:8px 12px;flex:1}
.nachricht .fuss{display:flex;gap:6px;margin-top:8px;align-items:center}
.dateiraster{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.dateikarte{background:#fff;border:1px solid var(--linie);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--schatten2)}
.dateikarte .typ{width:48px;height:48px;border-radius:10px;background:var(--gold-grund);color:var(--gold-tief);display:inline-flex;align-items:center;justify-content:center}
.dateikarte .typ img{width:48px;height:48px;object-fit:cover;border-radius:10px}
.dateikarte .dname{font-weight:600;word-break:break-word}
.dateikarte .dmeta{font-size:12.5px;color:var(--tinte3)}
.ablauf{display:flex;gap:12px;overflow-x:auto;padding:20px 0;align-items:stretch}
.ablauf .stufe{flex:none;width:240px;background:#fff;border:1px solid var(--linie);border-radius:var(--r);padding:14px;display:flex;flex-direction:column;gap:8px;position:relative}
.ablauf .stufe::after{content:"";position:absolute;right:-12px;top:50%;width:12px;height:2px;background:var(--linie)}
.ablauf .stufe:last-child::after{display:none}
.ablauf .stufe h3{display:flex;align-items:center;gap:8px}
.ablauf .stufe .zahl{font-family:var(--kopf);font-size:32px;font-weight:800}
.ablauf .regel{font-size:13px;background:var(--gold-grund);color:var(--gold-tief);border-radius:8px;padding:8px 10px;display:flex;gap:8px;align-items:flex-start}
.ablauf .regel button{margin-left:auto;color:var(--gold-tief)}

/* Aufgabenakte */
.akte{position:fixed;top:0;right:0;bottom:0;width:var(--akte);background:#fff;border-left:1px solid var(--linie);box-shadow:-10px 0 30px rgba(16,17,18,.08);z-index:40;display:flex;flex-direction:column}
.akte .akopf{height:64px;display:flex;align-items:center;gap:8px;padding:0 16px;border-bottom:1px solid var(--linie2);flex:none}
.akte .akopf .rechts{margin-left:auto;display:flex;gap:2px}
.akte .erledigtknopf{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:var(--r2);border:1px solid var(--linie);font-weight:600;font-size:13.5px;color:var(--tinte2)}
.akte .erledigtknopf:hover{border-color:var(--gut);color:var(--gut)}
.akte .erledigtknopf.ja{background:var(--gut);border-color:var(--gut);color:#fff}
.akte .koerper{flex:1;overflow:auto;padding:16px 20px 24px}
.akte .elternlink{font-size:12.5px;color:var(--tinte2);display:flex;align-items:center;gap:4px;margin-bottom:6px}
.akte .titel{width:100%;font-family:var(--kopf);font-size:22px;font-weight:800;border:1px solid transparent;border-radius:6px;padding:6px 8px;margin:0 -8px 8px;line-height:1.25;resize:none;overflow:hidden}
.akte .titel:hover{border-color:var(--linie)}
.akte .titel:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 2px var(--cyan-grund)}
.akte.erledigt .titel{color:var(--tinte3)}
.akte .eig{display:grid;grid-template-columns:150px 1fr;gap:10px 12px;align-items:center;margin:10px 0 14px}
.akte .eig .l{display:flex;align-items:center;gap:7px;color:var(--tinte2);font-size:13.5px;font-weight:600;min-width:0}
.akte .eig .l span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.akte .eig .l .ic{color:var(--tinte3)}
.akte .eig .w{min-height:30px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.akte .eig .wahl{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;border:1px solid transparent;font-size:13.5px;cursor:pointer;max-width:100%}
.akte .eig .wahl:hover{border-color:var(--linie);background:var(--hell2)}
.akte .eig .wahl.leer{color:var(--tinte3)}
.akte h3.ab{margin:18px 0 8px;display:flex;align-items:center;gap:8px;font-size:14px;color:var(--tinte2)}
.akte h3.ab .ic{color:var(--tinte3)}
.akte h3.ab .rechts{margin-left:auto}
.akte .abhliste{display:flex;flex-direction:column;gap:4px}
.akte .abhliste .punkt-a{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;cursor:pointer;background:var(--hell2)}
.akte .abhliste .punkt-a:hover{background:var(--hell)}
.akte .abhliste .punkt-a .ic.offen{color:var(--warn)}
.akte .abhliste .punkt-a .ic.fertig{color:var(--gut)}
.akte .abhliste .punkt-a span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.akte .abhliste .punkt-a button{color:var(--tinte3);display:inline-flex}
.akte .anhangliste{display:flex;flex-direction:column;gap:6px}
.akte .anhang{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--linie2);border-radius:8px}
.akte .anhang .typ{width:36px;height:36px;border-radius:8px;background:var(--gold-grund);color:var(--gold-tief);display:inline-flex;align-items:center;justify-content:center;flex:none;overflow:hidden}
.akte .anhang .typ img{width:36px;height:36px;object-fit:cover}
.akte .anhang .info{flex:1;min-width:0}
.akte .anhang .info a{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--tinte);text-decoration:none}
.akte .anhang .info a:hover{color:var(--cyan-tief)}
.akte .anhang .info small{color:var(--tinte3)}
.akte .verlauf{display:flex;flex-direction:column;gap:10px;margin-top:8px}
.akte .ereignis{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--tinte2)}
.akte .ereignis .ic{color:var(--tinte3);margin-top:2px}
.akte .ereignis b{color:var(--tinte);font-weight:600}
.akte .ereignis .zeit{color:var(--tinte3);margin-left:auto;white-space:nowrap;font-size:12px}
.akte .kommentar{display:flex;gap:10px;align-items:flex-start}
.akte .kommentar .blase{flex:1;min-width:0;background:var(--hell2);border:1px solid var(--linie2);border-radius:10px;padding:10px 12px}
.akte .kommentar .blase.angeheftet{border-color:var(--gold);background:var(--gold-grund)}
.akte .kommentar .bkopf{display:flex;align-items:center;gap:8px;margin-bottom:4px;font-size:13px}
.akte .kommentar .bkopf b{font-weight:700}
.akte .kommentar .bkopf .zeit{color:var(--tinte3);font-size:12px}
.akte .kommentar .bkopf .rechts{margin-left:auto;display:flex;gap:2px}
.akte .kommentar .bfuss{display:flex;gap:6px;margin-top:6px;align-items:center;font-size:12.5px;color:var(--tinte3)}
.akte .kommentar .bfuss button{display:inline-flex;align-items:center;gap:4px;color:var(--tinte3);padding:2px 6px;border-radius:6px}
.akte .schreiben{border-top:1px solid var(--linie2);padding:12px 20px 16px;display:flex;gap:10px;align-items:flex-start;flex:none;background:#fff}
.editor{flex:1;min-height:44px;max-height:200px;overflow:auto;border:1px solid var(--linie);border-radius:10px;padding:10px 12px;line-height:1.5;outline:none}
.editor:focus{border-color:var(--cyan);box-shadow:0 0 0 2px var(--cyan-grund)}
.schreibknoepfe{display:flex;flex-direction:column;gap:6px}
.werkzeugleiste{display:flex;gap:2px;margin-bottom:6px}
.werkzeugleiste button{width:28px;height:28px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;color:var(--tinte2);font-weight:700}
.werkzeugleiste button:hover{background:var(--hell)}
.vorschlaege{position:fixed;z-index:55;background:#fff;border:1px solid var(--linie);border-radius:8px;box-shadow:var(--schatten);padding:4px;min-width:200px}
.vorschlaege button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 8px;border-radius:6px;text-align:left}
.vorschlaege button.aktiv,.vorschlaege button:hover{background:var(--hell)}
.akte .fussleiste{display:flex;align-items:center;gap:8px;padding:8px 20px;border-top:1px solid var(--linie2);font-size:12.5px;color:var(--tinte3);flex:none}
.akte .fussleiste .rechts{margin-left:auto;display:flex;gap:4px;align-items:center}
.genehmigung{display:flex;gap:6px;flex-wrap:wrap}
.genehmigung button{padding:5px 10px;border-radius:6px;border:1px solid var(--linie);font-weight:600;font-size:13px}
.genehmigung button.aktiv.genehmigt{background:var(--gut);border-color:var(--gut);color:#fff}
.genehmigung button.aktiv.abgelehnt{background:var(--rot);border-color:var(--rot);color:#fff}
.genehmigung button.aktiv.aenderungen{background:var(--warn);border-color:var(--warn);color:#fff}
.genehmigung button.aktiv.ausstehend{background:var(--grund);border-color:var(--grund);color:#fff}

/* Eingang, Start, Einstellungen */
.eingangliste{display:flex;flex-direction:column}
.eingangliste .be{display:flex;gap:12px;align-items:flex-start;padding:12px 16px;border-bottom:1px solid var(--linie2);cursor:pointer}
.eingangliste .be:hover{background:var(--hell2)}
.eingangliste .be.ungelesen{background:var(--gold-grund)}
.eingangliste .be .text{flex:1;min-width:0}
.eingangliste .be .text b{font-weight:700}
.eingangliste .be .meta{font-size:12.5px;color:var(--tinte3);margin-top:2px}
.eingangliste .be .rechts{display:flex;gap:2px}
.start{padding-top:24px}
.start .gruss{margin-bottom:20px}
.start .gruss h1{font-size:32px}
.start .gruss p{color:var(--tinte2);margin:4px 0 0}
.projektkarten{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.projektkarte{display:flex;align-items:center;gap:12px;padding:14px;background:#fff;border:1px solid var(--linie);border-radius:var(--r);text-decoration:none;color:var(--tinte);box-shadow:var(--schatten2)}
.projektkarte:hover{border-color:#cfc7b6;box-shadow:var(--schatten)}
.projektkarte .kachel{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#fff;flex:none}
.projektkarte b{display:block}
.projektkarte small{color:var(--tinte3)}
.projektkarte.neu{border-style:dashed;color:var(--tinte2);background:transparent;box-shadow:none}
.einstellungen .block{margin-bottom:24px}
.benutzertabelle{width:100%;border-collapse:collapse}
.benutzertabelle th,.benutzertabelle td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--linie2);font-size:13.5px;vertical-align:middle}
.benutzertabelle th{font-size:12px;color:var(--tinte3);text-transform:uppercase;letter-spacing:.05em}
.farbwahl{display:flex;gap:8px;flex-wrap:wrap}
.farbwahl button{width:30px;height:30px;border-radius:50%;border:3px solid transparent}
.farbwahl button.aktiv{border-color:var(--grund)}
.suchergebnis h3{margin:18px 0 8px;color:var(--tinte2);display:flex;align-items:center;gap:8px;font-size:14px}
.trefferzahl{color:var(--tinte3);font-size:12.5px}

/* Handy */
@media (max-width:1100px){.kacheln{grid-template-columns:repeat(2,1fr)}.raster.zwei,.raster.drei,.raster.vier{grid-template-columns:1fr}.uebersicht{grid-template-columns:1fr}}
@media (max-width:900px){
  .app{grid-template-columns:1fr}
  .leiste{position:fixed;left:0;top:0;bottom:0;width:280px;z-index:45;transform:translateX(-100%);transition:transform .2s}
  .leiste.offen{transform:none;box-shadow:var(--schatten)}
  .leiste-schleier{position:fixed;inset:0;background:rgba(16,17,18,.4);z-index:44}
  .kopf{padding:0 14px;gap:10px}
  .kopf .menueknopf{display:inline-flex}
  .kopf .suchfeld{width:40px}
  .kopf .suchfeld input{padding-left:30px;color:transparent}
  .kopf .suchfeld input:focus{width:220px;position:absolute;right:0;top:-4px;color:inherit;background:#fff}
  .reiter{padding:0 8px}
  .werkzeuge,.inhalt{padding-left:14px;padding-right:14px}
  .akte{width:100%;--akte:100%}
  .liste .spalten{display:none}
  .liste .zeile-a{grid-template-columns:1fr auto auto;padding:6px 10px}
  .liste .zelle .name-kurz{display:none}
  .liste .name .griff{display:none}
  .liste .name:has(.elternhinweis){flex-wrap:wrap;row-gap:0}
  .liste .name .zusatz:has(.elternhinweis){flex-basis:100%;padding-left:36px;margin-top:-4px}
  .liste .name .zusatz>.elternhinweis{flex:0 1 auto;max-width:100%}
  .liste .zelle.feld{display:none}
  .anmelden{grid-template-columns:1fr}
  .anmelden .buehne{padding:28px 24px}
  .anmelden .buehne h1{font-size:34px}
  .anmelden .buehne .merk{display:none}
  .anmelden .buehne img{width:140px}
  .kacheln{grid-template-columns:1fr 1fr;gap:10px}
  .kachelz .wert{font-size:32px}
  .zeitleiste{grid-template-columns:150px 1fr}
  .kalender .tag{min-height:70px;padding:3px}
  .kalender .eintrag{font-size:11px;padding:2px 4px}
  .akte .eig{grid-template-columns:120px 1fr}
}
@media (max-width:360px){.kacheln{grid-template-columns:1fr}.kopf h1{font-size:17px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* Unteraufgaben: Herkunft außerhalb der Akte, Auf- und Zuklappen in der Liste, Vorschau beim Einfügen mehrerer Zeilen */
.elternhinweis{display:inline-flex;align-items:center;gap:4px;max-width:200px;color:var(--tinte2);font-size:12px;min-width:0}
.elternhinweis .ic{width:14px;height:14px;flex:none}
.elternhinweis span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.karte .eltern{margin:-2px 0 6px;display:flex;min-width:0}
.klappknopf{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:none;border-radius:4px;color:var(--tinte2)}
.klappknopf:hover{background:var(--hell)}
.klappknopf.leer{visibility:hidden}
.punktvorschau{margin:8px 0 0 18px;padding:0;color:var(--tinte2);font-size:13.5px;line-height:1.6}
.akte .kommentar .bfuss button:hover,.akte .kommentar .bfuss button.aktiv{color:var(--cyan-tief);background:var(--cyan-grund)}
/* Als installierte App: Platz für den Home-Balken des iPhones unter dem Inhalt. */
@media (display-mode: standalone){body{padding-bottom:env(safe-area-inset-bottom)}}
/* Einstellungen, Meldungen: Kästchen links, Text daneben, eine Zeile je Ereignis */
.ereignisse{display:grid;gap:2px}
.ereignis{display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:5px 0;cursor:pointer}
.ereignis input[type=checkbox]{width:18px;height:18px;margin:0;accent-color:var(--gold-mittel)}

/* Hinweis auf eine neue Fassung (bleibt stehen, bis neu geladen wird) */
.fassung { position: fixed; left: 50%; bottom: 18px; transform: translateX(-50%); z-index: 60; display: flex; gap: 12px; align-items: center; padding: 10px 14px; border-radius: 12px; background: var(--karte, #1b1d20); color: var(--text, #f6f4ef); box-shadow: 0 8px 28px rgba(0,0,0,.35); font-size: 14px; max-width: calc(100vw - 32px); }
