:root{color-scheme:light;--grund: #f3f2fa;--grund-2: #ece9f8;--karte: #ffffff;--karte-2: #faf9fe;--linie: #e4e1f0;--linie-weich: #f0eef8;--ink: #211d30;--ink-2: #635d78;--ink-auf-farbe:#ffffff;--lila: #6741e0;--lila-tief: #5330c4;--lila-weich: #efeafe;--lila-rand: #d9cffb;--pink: #d63a90;--pink-weich: #fdeaf5;--gruen: #14875a;--gruen-weich: #e2f4ea;--gelb: #a06b06;--gelb-weich: #fcf1da;--rot: #cf3f4a;--rot-weich: #fdeaeb;--rot-rand: #f6cdd0;--blau: #1f6fc0;--blau-weich: #e6f0fb;--radius: 14px;--radius-s: 10px;--radius-l: 20px;--schatten: 0 1px 2px rgb(33 29 48 / 6%), 0 6px 20px rgb(33 29 48 / 5%);--schatten-hoch:0 12px 40px rgb(33 29 48 / 18%);--tempo: .14s ease}@media(prefers-color-scheme:dark){:root{color-scheme:dark;--grund: #16141f;--grund-2: #1c1829;--karte: #211e2c;--karte-2: #272335;--linie: #363146;--linie-weich: #2c2839;--ink: #ece9f5;--ink-2: #a29cba;--lila: #a48bff;--lila-tief: #b9a5ff;--lila-weich: #2b2444;--lila-rand: #453a6b;--pink: #f47ac0;--pink-weich: #3b2136;--gruen: #4cc98d;--gruen-weich: #17332a;--gelb: #e0ab48;--gelb-weich: #372c17;--rot: #f2777f;--rot-weich: #3a2027;--rot-rand: #5b2f38;--blau: #6fb0f0;--blau-weich: #17273a;--schatten: 0 1px 2px rgb(0 0 0 / 30%), 0 6px 20px rgb(0 0 0 / 25%);--schatten-hoch:0 12px 40px rgb(0 0 0 / 55%)}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--grund);touch-action:manipulation;background-image:linear-gradient(170deg,var(--grund-2),var(--grund) 55%);background-attachment:fixed;font-size:15px;line-height:1.45;overscroll-behavior-y:none}button,label,input,summary{-webkit-tap-highlight-color:transparent}:focus-visible{outline:2px solid var(--lila);outline-offset:2px;border-radius:4px}.wrap{max-width:1200px;margin:0 auto;padding:calc(24px + env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) calc(80px + env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left))}.muted,.klein{color:var(--ink-2)}.klein{font-size:13px}.small{font-size:12px}.akzent{color:var(--lila);font-weight:600}code{background:var(--lila-weich);color:var(--lila-tief);padding:1px 6px;border-radius:6px;font-size:12px}header.app{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.title h1{margin:0 0 4px;font-size:24px;letter-spacing:-.3px}.star{color:var(--pink)}.grpline{color:var(--ink-2);font-size:14px}button{font:inherit;cursor:pointer;white-space:nowrap;font-weight:600;color:var(--ink);background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius-s);padding:9px 14px;transition:background var(--tempo),border-color var(--tempo),color var(--tempo)}button:hover{border-color:var(--lila-rand);background:var(--karte-2)}button:disabled{opacity:.5;cursor:not-allowed}button:disabled:hover{background:var(--karte);border-color:var(--linie)}button.primary{background:var(--lila);border-color:var(--lila);color:var(--ink-auf-farbe)}button.primary:hover{background:var(--lila-tief);border-color:var(--lila-tief)}button.primary:disabled:hover{background:var(--lila);border-color:var(--lila)}button.ghost{background:transparent;border-color:transparent}button.ghost:hover{background:var(--lila-weich);border-color:transparent;color:var(--lila-tief)}button.danger{color:var(--rot);border-color:var(--rot-rand);background:var(--rot-weich)}button.danger:hover{background:var(--rot);border-color:var(--rot);color:var(--ink-auf-farbe)}button.small{padding:5px 9px;font-size:13px;border-radius:8px}button.gross{width:100%;padding:15px;font-size:16px;margin-top:12px}button.breit{width:100%;justify-content:center;margin-top:4px}button.breit+button.breit{margin-top:8px}input,select,textarea{font:inherit;font-size:16px;color:var(--ink);background:var(--karte-2);border:1px solid var(--linie);border-radius:var(--radius-s);padding:9px 11px;max-width:100%;transition:border-color var(--tempo),background var(--tempo)}input:hover,select:hover{border-color:var(--lila-rand)}input:focus,select:focus,textarea:focus{background:var(--karte);border-color:var(--lila);outline:none;box-shadow:0 0 0 3px var(--lila-weich)}select{padding:7px 10px;background:var(--karte)}::placeholder{color:var(--ink-2);opacity:.7}.banner{padding:10px 14px;border-radius:var(--radius-s);margin-bottom:16px;font-size:14px;border:1px solid transparent}.banner.error{background:var(--rot-weich);color:var(--rot);border-color:var(--rot-rand)}.banner.info{background:var(--lila-weich);color:var(--lila-tief);border-color:var(--lila-rand);display:flex;align-items:center;gap:10px;justify-content:space-between}.banner.warn{background:var(--gelb-weich);color:var(--gelb);border-color:var(--gelb)}.banner .btns{display:flex;gap:8px;flex-shrink:0}.banner button{padding:6px 10px;font-size:13px}.share{display:inline-block;font-weight:700}.hinweis{font-size:12px;color:var(--ink-2);margin:8px 0 0;line-height:1.4}.hinweis.warnung{color:var(--gelb);font-weight:600}.empty{padding:40px;text-align:center;color:var(--ink-2)}.credit{text-align:center;color:var(--ink-2);font-size:12px;margin-top:24px}.zurueck{margin-bottom:14px}.zeile{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.zeile input{flex:1;min-width:150px}.kachel,.punkt,.mkarte,.ukarte,.dokknopf,.terminbtn,.minitermine button,.chip{white-space:normal}.mk-name,.anwname,.gebname,.modal h2,.p-namen,.pr-details,.karte h2{overflow-wrap:anywhere}.karte,.grpcard,.tablecard,.terminliste,.erfassung,.ukarte,.mkarte,.kachel,.stat{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten)}.karte{padding:16px}.karte h2{margin:2px 0 10px;font-size:20px}.karte h3,.terminliste .listhead,.beitragsteil summary{margin:0 0 12px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--ink-2)}.grpcard{padding:14px 18px;margin-bottom:20px}.grpcard summary{cursor:pointer;font-weight:600;list-style:none;display:flex;align-items:center;gap:8px;-webkit-user-select:none;user-select:none}.grpcard summary::-webkit-details-marker{display:none}.grpcard summary:before{content:"⚙";color:var(--ink-2)}.grpgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 20px;margin-top:14px}.grpgrid label,.field label{display:block;font-size:12px;color:var(--ink-2);margin-bottom:5px;font-weight:700;text-transform:uppercase;letter-spacing:.4px}.grpgrid input:not([type=checkbox]),.field input:not([type=checkbox]),.field select,.beitragsteil .field input,.anmeldekarte .field input{width:100%}.field{margin-bottom:14px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stats{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:18px}.stat{padding:12px 16px;min-width:120px;flex:1}.stat .n{font-size:26px;font-weight:700;line-height:1}.stat .l{font-size:12px;color:var(--ink-2);margin-top:6px}.kacheln{display:flex;gap:10px}.kachel{flex:1;min-width:0;padding:12px 10px;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.kachel:hover{border-color:var(--lila-rand);background:var(--karte-2)}.kachel.alsanzeige{cursor:default}.kachel .k-n{font-size:24px;font-weight:700;line-height:1}.kachel .k-l{font-size:11px;color:var(--ink-2);font-weight:600;line-height:1.25}.kachel.warn,.stat.warn{background:var(--gelb-weich);border-color:var(--gelb-weich)}.kachel.warn .k-n,.stat.warn .n{color:var(--gelb)}.kachel.warn .k-l,.stat.warn .l{color:var(--gelb);opacity:.85}.kachel.ok,.stat.ok{background:var(--gruen-weich);border-color:var(--gruen-weich)}.kachel.ok .k-n,.stat.ok .n{color:var(--gruen)}.kachel.ok .k-l,.stat.ok .l{color:var(--gruen);opacity:.85}.kachel.warn:hover{background:var(--gelb-weich);border-color:var(--gelb)}.kachel.ok:hover{background:var(--gruen-weich);border-color:var(--gruen)}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}.search{flex:1;min-width:200px;position:relative}.search input{width:100%;padding-left:36px;background:var(--karte)}.search:before{content:"🔍";position:absolute;left:11px;top:50%;transform:translateY(-50%);font-size:14px;opacity:.5}.tablecard{overflow:hidden}.tablescroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}thead th{background:var(--karte-2);text-align:left;padding:10px 12px;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--ink-2);font-weight:700;border-bottom:1px solid var(--linie);white-space:nowrap}thead th.grp{text-align:center;border-left:1px solid var(--linie)}thead tr.sub th{padding:6px 8px;font-size:10px;text-align:center}thead th.sortable{cursor:pointer}thead th.sortable:hover{color:var(--lila)}tbody td{padding:9px 12px;border-bottom:1px solid var(--linie-weich);vertical-align:middle}tbody tr:hover{background:var(--karte-2)}tbody tr:last-child td{border-bottom:none}td.center,th.center{text-align:center}td.name{font-weight:600;white-space:nowrap}td.name .vn{color:var(--ink-2);font-weight:500}td.nr{color:var(--ink-2);width:34px}td.grp{border-left:1px solid var(--linie-weich)}.age{color:var(--ink-2);font-size:12px}.note{cursor:help}.rowbtns{display:flex;gap:6px;justify-content:flex-end}.chk{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:22px;height:22px;padding:0;border:1.5px solid var(--linie);border-radius:6px;background:var(--karte);cursor:pointer;position:relative;vertical-align:middle;transition:background var(--tempo),border-color var(--tempo)}.chk:hover{border-color:var(--lila)}.chk:checked{background:var(--gruen);border-color:var(--gruen)}.chk:checked:after{content:"✓";color:var(--ink-auf-farbe);font-size:14px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.chk.z:checked{background:var(--lila);border-color:var(--lila)}.checkgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin-top:6px}.checkgrid .box{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--linie);border-radius:var(--radius-s);font-size:13px;cursor:pointer;transition:border-color var(--tempo),background var(--tempo);text-transform:none;letter-spacing:0;color:var(--ink);font-weight:400;margin-bottom:0}.checkgrid .box:hover{border-color:var(--lila-rand);background:var(--karte-2)}.checkgrid .box span.cat{font-weight:600}.checkgrid .box.gesperrt{opacity:.5;cursor:not-allowed}.checkgrid .box.gesperrt:hover{border-color:var(--linie);background:none}.schalter{display:flex;align-items:center;gap:9px;margin-bottom:12px;font-size:13px;cursor:pointer}.marke{display:inline-block;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:var(--linie-weich);color:var(--ink-2);margin-left:6px}.marke.gruen{background:var(--gruen-weich);color:var(--gruen)}.marke.gelb{background:var(--gelb-weich);color:var(--gelb)}.marke.rot{background:var(--rot-weich);color:var(--rot)}tr.gesperrt td{opacity:.55}.overlay{position:fixed;z-index:50;padding:20px;top:var(--sicht-oben, 0);left:var(--sicht-links, 0);width:var(--sicht-breite, 100%);height:var(--sicht-hoehe, 100%);background:#1410207f;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center}.modal{background:var(--karte);border-radius:var(--radius-l);width:100%;max-width:520px;max-height:100%;overflow-y:auto;box-shadow:var(--schatten-hoch);overscroll-behavior:contain}body:has(.overlay){overflow:hidden}.modal h2{margin:0;padding:20px 22px;font-size:18px;border-bottom:1px solid var(--linie)}.modal .body{padding:20px 22px}.modal .footer{padding:16px 22px;border-top:1px solid var(--linie);display:flex;justify-content:space-between;gap:10px;background:var(--karte-2);border-radius:0 0 var(--radius-l) var(--radius-l)}.tabs{display:flex;gap:6px;margin-bottom:18px;border-bottom:1px solid var(--linie)}.tabs button{border:none;background:transparent;border-radius:0;padding:10px 16px;color:var(--ink-2);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button:hover{color:var(--ink);background:transparent}.tabs button.aktiv{color:var(--lila);border-bottom-color:var(--lila)}.leiste{position:fixed;left:0;right:0;bottom:0;z-index:30;display:flex;background:color-mix(in srgb,var(--karte) 88%,transparent);-webkit-backdrop-filter:saturate(180%) blur(12px);backdrop-filter:saturate(180%) blur(12px);border-top:1px solid var(--linie);padding-bottom:env(safe-area-inset-bottom)}.leiste button{flex:1;border:none;background:none;border-radius:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 4px 7px;color:var(--ink-2);font-size:11px;font-weight:600;min-height:52px}.leiste button:hover{background:none;color:var(--ink)}.leiste svg{width:22px;height:22px;fill:currentColor}.leiste button.aktiv{color:var(--lila)}.leiste button.aktiv svg{background:var(--lila-weich);border-radius:999px;padding:3px 12px;box-sizing:content-box;margin-bottom:-1px}.wrap.mitleiste{padding-bottom:calc(84px + env(safe-area-inset-bottom))}.fab{position:fixed;right:16px;z-index:25;bottom:calc(76px + env(safe-area-inset-bottom));border-radius:999px;padding:14px 20px;font-size:15px;background:linear-gradient(135deg,var(--lila),var(--pink));border-color:transparent;color:var(--ink-auf-farbe);box-shadow:0 6px 20px #6741e059}.fab:hover{background:linear-gradient(135deg,var(--lila-tief),var(--pink));border-color:transparent}.kopfrechts{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.benutzermenu{position:relative}.benutzermenu summary{cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:8px;padding:9px 14px;font-weight:600;font-size:14px;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius-s)}.benutzermenu summary::-webkit-details-marker{display:none}.benutzermenu summary:hover{border-color:var(--lila-rand)}.benutzermenu[open] summary{border-color:var(--lila)}.menuinhalt{position:absolute;right:0;top:calc(100% + 6px);z-index:20;min-width:190px;background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten-hoch);padding:6px;display:flex;flex-direction:column;gap:2px}.menuinhalt button{border:none;text-align:left;width:100%;border-radius:8px;background:none}.menuinhalt button:hover{background:var(--lila-weich);color:var(--lila-tief)}.dash{display:flex;flex-direction:column;gap:14px}.aktionskarte{border-color:var(--lila-rand);background:radial-gradient(120% 100% at 100% 0%,var(--pink-weich),transparent 60%),linear-gradient(160deg,var(--lila-weich),var(--karte) 70%)}.fortschritt{margin:10px 0 2px}.balken{height:8px;background:var(--linie-weich);border-radius:999px;overflow:hidden;margin-bottom:7px}.balken span{display:block;height:100%;border-radius:999px;transition:width .25s ease;background:linear-gradient(90deg,var(--gruen),color-mix(in srgb,var(--gruen) 70%,var(--blau)))}.punkte{list-style:none;margin:0;padding:0}.punkte>li+li{border-top:1px solid var(--linie-weich)}.punkt{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:none;background:none;border-radius:0;padding:11px 0}.punkt:hover{background:none}.punkt:hover .p-text{color:var(--lila)}.p-zahl{flex-shrink:0;min-width:30px;height:30px;border-radius:var(--radius-s);background:var(--gelb-weich);color:var(--gelb);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center}.p-text{flex:1;min-width:0;font-size:14px;font-weight:600;transition:color var(--tempo)}.p-namen{display:block;font-size:12px;color:var(--ink-2);font-weight:400;margin-top:2px}.p-pfeil{color:var(--linie);font-size:22px;line-height:1}.gebzeile{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 0}.gebname{font-weight:600;font-size:14px}.minitermine{list-style:none;margin:0 0 10px;padding:0}.minitermine>li+li{border-top:1px solid var(--linie-weich)}.minitermine button{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;border:none;background:none;border-radius:0;padding:10px 0;text-align:left}.minitermine button:hover{background:none}.minitermine button:hover .mt-datum{color:var(--lila)}.mt-datum{font-size:14px;font-weight:600;transition:color var(--tempo)}.mt-titel{color:var(--lila);font-weight:500}.mt-zahl{font-size:13px;color:var(--ink-2);white-space:nowrap}.kartenliste{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.mkarte{position:relative;width:100%;text-align:left;padding:12px 30px 12px 14px}.mkarte:hover{border-color:var(--lila-rand)}.mkarte:disabled{opacity:1}.mk-kopf{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.mk-name{font-weight:700;font-size:15px}.mk-alter{font-size:12px;color:var(--ink-2);white-space:nowrap}.mk-marken{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.mk-marken .marke{margin-left:0}.mk-pfeil{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--linie);font-size:22px}.mkarte.ausgetreten{background:var(--karte-2)}.mkarte.ausgetreten .mk-name{color:var(--ink-2)}.trainlayout{display:grid;grid-template-columns:280px 1fr;gap:16px;align-items:start}@media(max-width:800px){.trainlayout{grid-template-columns:1fr}}.terminliste,.erfassung{overflow:hidden}.terminliste .listhead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;margin:0;background:var(--karte-2);border-bottom:1px solid var(--linie)}.terminliste ul,.anwliste{list-style:none;margin:0;padding:0}.terminliste li+li{border-top:1px solid var(--linie-weich)}.terminbtn{display:block;width:100%;text-align:left;border:none;border-radius:0;background:transparent;padding:10px 14px;border-left:3px solid transparent}.terminbtn:hover{background:var(--karte-2)}.terminbtn.aktiv{background:var(--lila-weich);border-left-color:var(--lila)}.terminbtn .td{display:block;font-weight:600;font-size:14px}.terminbtn .tz{display:block;font-size:12px;color:var(--ink-2);font-weight:500;margin-top:2px}.terminbtn .ttitel{color:var(--lila)}.erfassung{padding:0 0 8px}.erfhead{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid var(--linie)}.erfhead h2{margin:0 0 2px;font-size:17px}.erfassung .toolbar{padding:12px 16px 0;margin-bottom:8px}.erfkopf{position:sticky;top:0;z-index:5;background:var(--karte);border-bottom:1px solid var(--linie);padding:12px 14px}.erfkopf-zeile{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.erfkopf h2{margin:0;font-size:17px}.sammelaktionen{display:flex;gap:8px;margin-top:10px}.anwliste li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 16px;border-bottom:1px solid var(--linie-weich)}.anwliste li:last-child{border-bottom:none}.anwliste li:hover{background:var(--karte-2)}.anwliste li.nochoffen .anwname{color:var(--ink-2)}.anwname{font-weight:600;font-size:14px}.anwname .vn{color:var(--ink-2);font-weight:500}.segment{display:flex;gap:4px;flex-shrink:0}.segment .seg{padding:6px 10px;font-size:13px;border-radius:8px;min-width:38px;color:var(--ink-2);background:var(--karte-2)}.segment .seg .lang,.segment .seg.aktiv .kurz{display:none}.segment .seg.aktiv .lang{display:inline}.segment .seg.aktiv{color:var(--ink-auf-farbe)}.segment .seg.anwesend.aktiv,.segment .seg.bezahlt.aktiv{background:var(--gruen);border-color:var(--gruen)}.segment .seg.entschuldigt.aktiv{background:var(--gelb);border-color:var(--gelb)}.segment .seg.fehlt.aktiv{background:var(--rot);border-color:var(--rot)}.segment .seg.aktiv:hover{color:var(--ink-auf-farbe)}.terminchips{display:flex;gap:8px;align-items:stretch;margin-bottom:12px}.chipscroll{display:flex;gap:8px;overflow-x:auto;flex:1;padding-bottom:2px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chipscroll::-webkit-scrollbar{display:none}.chip{flex-shrink:0;display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:8px 12px;border-radius:var(--radius-s);background:var(--karte);border:1px solid var(--linie)}.chip.aktiv{border-color:var(--lila);background:var(--lila-weich)}.chip-datum{font-size:13px;font-weight:700;white-space:nowrap}.chip-zahl{font-size:11px;color:var(--ink-2)}.chip.aktiv .chip-datum{color:var(--lila-tief)}.neuchip{flex-shrink:0}.uebersicht{margin-top:20px}.uebersicht summary:before{content:"📊"}.uebersicht .tablescroll{margin-top:6px}.quote{font-weight:700;color:var(--gruen)}.quote.warn{color:var(--rot)}.beitragsteil{border:1px solid var(--linie);border-radius:var(--radius-s);padding:10px 12px;margin-bottom:14px}.beitragsteil summary{cursor:pointer;margin:0}.beitragsteil[open] summary{margin-bottom:10px}.zellja{color:var(--gruen);font-weight:700}.zellnein{color:var(--rot);font-weight:700;font-size:18px}.ukarte{padding:13px 14px}.ukarte.gesperrt{opacity:.6}.ukarte-aktionen{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.ukarte-aktionen select{flex-basis:100%}.einladungneu{border-color:var(--lila);background:var(--lila-weich)}.einladungslink{display:block;margin:10px 0 0;padding:11px 12px;background:var(--karte);color:var(--ink);border:1px solid var(--linie);border-radius:var(--radius-s);font-size:12px;word-break:break-all;-webkit-user-select:all;user-select:all;line-height:1.5}.protokoll{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.protokoll li{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten);padding:11px 13px}.protokoll li.abgewiesen{background:var(--rot-weich);border-color:var(--rot-rand)}.pr-kopf{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.pr-aktion{font-weight:700;font-size:14px}.pr-zeit{font-size:11px;color:var(--ink-2);white-space:nowrap}.pr-zeile2{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:3px}.pr-wer{font-size:13px;font-weight:600;color:var(--lila)}.pr-objekt{font-size:11px;color:var(--ink-2);background:var(--linie-weich);padding:1px 6px;border-radius:5px}.pr-details{font-size:12px;color:var(--ink-2);margin-top:5px}.anmeldeseite{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:calc(20px + env(safe-area-inset-top)) 20px calc(20px + env(safe-area-inset-bottom))}.anmeldekarte{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius-l);box-shadow:var(--schatten-hoch);padding:26px 24px;width:100%;max-width:380px}.anmeldekarte.breit2{max-width:520px}.anmeldekarte h1{margin:0 0 4px;font-size:21px}.anmeldekarte>p{margin:0 0 18px;font-size:14px}.anmeldekarte .field input{padding:11px}.codefeld{letter-spacing:.35em;font-size:20px!important;text-align:center;font-variant-numeric:tabular-nums}.schritte{margin:0 0 18px;padding-left:20px;font-size:14px}.schritte li{margin-bottom:12px}.btnlink{display:inline-block;margin-top:8px;padding:10px 14px;border-radius:var(--radius-s);background:var(--lila);color:var(--ink-auf-farbe);text-decoration:none;font-weight:600;font-size:14px}.btnlink:hover{background:var(--lila-tief)}.geheimnis{display:block;margin-top:8px;padding:10px 12px;background:var(--karte-2);color:var(--ink);border:1px solid var(--linie);border-radius:8px;font-size:15px;letter-spacing:.08em;word-break:break-all;-webkit-user-select:all;user-select:all}.qrbereich{text-align:center;margin:4px 0 16px}.qrbild{width:220px;height:220px;max-width:100%;border:1px solid var(--linie);border-radius:var(--radius);background:#fff;padding:6px}.qrtext{margin:10px 0 0;font-size:14px;color:var(--ink-2)}.andersweg{border:1px solid var(--linie);border-radius:var(--radius-s);padding:10px 12px;margin-bottom:16px;font-size:14px}.andersweg summary{cursor:pointer;font-weight:600;color:var(--ink-2);-webkit-user-select:none;user-select:none}.andersweg[open] summary{margin-bottom:8px;color:var(--ink)}.andersweg p{margin:10px 0 0}.dokwahl{display:flex;flex-direction:column;gap:8px}.dokknopf{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:12px 14px;width:100%;border:1px solid var(--linie);border-radius:var(--radius-s);background:var(--karte)}.dokknopf.aktiv{border-color:var(--lila);background:var(--lila-weich)}.dok-label{font-weight:700;font-size:14px}.dokknopf.aktiv .dok-label{color:var(--lila-tief)}.dok-hilfe{font-size:12px;color:var(--ink-2);font-weight:400}.exportknoepfe{display:flex;gap:10px;margin-top:16px}.exportknoepfe button{flex:1;justify-content:center;padding:13px}.druckbereich{background:var(--karte);border:1px solid var(--linie);border-radius:var(--radius);box-shadow:var(--schatten);padding:20px;margin-top:16px;overflow-x:auto}.druckkopf{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:14px}.druckkopf h1{margin:0;font-size:19px}.druckmeta{font-size:13px;color:var(--ink-2);margin-top:3px}.druckdatum{font-size:12px;color:var(--ink-2);white-space:nowrap}.druckuntertitel{font-size:16px;margin:0 0 6px}.drucksumme{font-size:13px;margin:0 0 12px}.drucklegende{font-size:11px;color:var(--ink-2);margin-top:10px}.drucktabelle{width:100%;border-collapse:collapse;font-size:12px}.drucktabelle th{text-align:left;border-bottom:1px solid var(--ink);padding:5px 6px;font-size:11px;text-transform:none;background:none;white-space:nowrap}.drucktabelle td{padding:5px 6px;border-bottom:1px solid var(--linie-weich)}.drucktabelle td.name{white-space:nowrap;font-weight:600}.drucktabelle .nr{width:26px;color:var(--ink-2)}@media(pointer:coarse){button{font-size:16px;padding:11px 16px}button.small{padding:9px 12px;font-size:14px}.tabs button{padding:12px 18px}.chk{width:26px;height:26px}tbody td.center .chk{margin:-6px;padding:6px;background-clip:content-box}.segment .seg{min-height:44px;min-width:46px;padding:8px 12px}.terminbtn{padding:14px}.anwliste li{padding:10px 14px}}@media(max-width:700px){.wrap{padding-top:calc(16px + env(safe-area-inset-top))}header.app{flex-wrap:nowrap;align-items:center;gap:10px;margin-bottom:16px}.title{min-width:0;flex:1}.title h1{font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kopfrechts{width:auto;flex:0 0 auto}.benutzermenu{flex:0 0 auto}.benutzermenu summary{padding:8px 12px;font-size:13px}.benutzermenu summary .marke{display:none}.stat{min-width:0;padding:10px 12px}.stat .n{font-size:20px}.stat .l{font-size:11px}.erfhead{padding:12px 14px}.terminliste .listhead{padding:10px 12px}.tablescroll{-webkit-overflow-scrolling:touch}.tablescroll td.name,.tablescroll thead tr:first-child th:nth-child(2){position:sticky;left:0;z-index:2;background:var(--karte);box-shadow:1px 0 0 var(--linie)}.tablescroll thead tr:first-child th:nth-child(2){background:var(--karte-2);z-index:3}.tablescroll td.nr,.tablescroll thead th.nr,.trainstats,.uebersicht .nurbreit{display:none}.uebersicht td,.uebersicht th{padding-left:8px;padding-right:8px}.uebersicht td.name{white-space:normal}}@media(max-width:600px){.overlay{align-items:flex-end;padding:0}.modal{max-width:none;border-radius:var(--radius-l) var(--radius-l) 0 0;max-height:100%}.modal .footer{padding-bottom:calc(16px + env(safe-area-inset-bottom));border-radius:0}.row2,.checkgrid{grid-template-columns:1fr}}@media print{:root{color-scheme:light;--karte: #fff;--karte-2: #fff;--grund: #fff;--ink: #000;--ink-2: #444;--linie: #ccc;--linie-weich: #ddd;--schatten: none;--schatten-hoch: none}body{background:#fff;background-image:none;color:#000}.wrap{padding:0;max-width:none}header.app,.leiste,.tabs,.banner,.nichtdrucken,.fab,.credit,.benutzermenu{display:none!important}.druckbereich{border:none;box-shadow:none;padding:0;margin:0;overflow:visible}.drucktabelle{font-size:10pt}.drucktabelle th{border-bottom:1pt solid #000}.drucktabelle td{border-bottom:.5pt solid #ccc}.drucktabelle tr{page-break-inside:avoid}.drucktabelle thead{display:table-header-group}a[href]:after{content:""}@page{margin:15mm}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
