:root{--bg:#f3f6fb;--card:#ffffff;--ink:#1f2933;--muted:#6b7280;--accent:#2c5282;--accent-dark:#1e3a5f;--accent-soft:#e6eef7;--border:#cdd9e8;--ok:#1f7a4d;--err:#b3261e;--radius:12px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}.wrap{max-width:1080px;margin:0 auto;padding:2rem 1.25rem 4rem}.layout{display:grid;grid-template-columns:1fr 340px;grid-gap:32px;gap:32px;align-items:start}.sidebar{position:-webkit-sticky;position:sticky;top:24px}.sidebar .card{margin-bottom:0}@media (max-width:768px){.layout{grid-template-columns:1fr}.hauptspalte{order:1}.sidebar{order:2;position:static;top:auto}}.welcome-text{background:var(--accent-soft);border-left:4px solid var(--accent);border-radius:var(--radius);padding:1.25rem 1.5rem;margin-bottom:1.5rem}.welcome-text h2{margin:0 0 .5rem;font-size:1.25rem;color:var(--accent)}.welcome-text p{margin:0}.slideshow{margin-bottom:1.5rem}.slideshow-buehne{position:relative;width:100%;height:380px;border-radius:var(--radius);overflow:hidden;background:var(--accent-soft)}.slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1s ease}.slide.aktiv{opacity:1}.slideshow-dots{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.dot{width:10px;height:10px;padding:0;border-radius:50%;border:1px solid var(--accent);background:transparent;cursor:pointer}.dot.aktiv{background:var(--accent)}.dot:hover:not(:disabled){background:var(--accent);border-color:var(--accent)}@media (max-width:768px){.slideshow-buehne{height:300px}}@media (prefers-reduced-motion:reduce){.slide{transition:none}}header.fest{text-align:center;margin-bottom:2rem}header.fest h1{font-size:1.9rem;margin:0 0 .25rem;color:var(--accent)}header.fest .meta{color:var(--muted);font-size:.95rem}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px rgba(0,0,0,.04)}.card h2{margin-top:0;font-size:1.25rem;color:var(--accent)}fieldset{border:none;padding:0;margin:0 0 1.5rem}fieldset legend{font-weight:600;font-size:1.05rem;margin-bottom:.5rem;padding:0}label.field{display:block;margin-bottom:1rem}label.field>span{display:block;font-weight:500;margin-bottom:.3rem}.req{color:var(--err)}input[type=email],input[type=password],input[type=text],textarea{width:100%;padding:.6rem .7rem;border:1px solid var(--border);border-radius:8px;font-size:1rem;font-family:inherit;background:#fff;color:var(--ink)}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}textarea{min-height:70px;resize:vertical}.pw-wrap{position:relative;display:block}.pw-wrap .pw-input{padding-right:3rem}.pw-toggle{position:absolute;top:50%;right:2px;transform:translateY(-50%);width:42px;height:42px;display:flex;align-items:center;justify-content:center;padding:0;border:none;border-radius:8px;background:transparent;color:var(--muted,#666);cursor:pointer}.pw-toggle:hover{color:var(--ink)}.pw-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.checks{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:.4rem 1rem;gap:.4rem 1rem}.check{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.check input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.row{display:flex;gap:.5rem;align-items:flex-start;margin-bottom:.6rem}.row input{flex:1 1}.row .item{flex:1.3 1}.row .menge{flex:1 1}button{font:inherit;cursor:pointer;border-radius:8px;border:1px solid var(--accent);background:var(--accent);color:#fff;padding:.6rem 1.1rem;font-weight:600}button:hover:not(:disabled){background:var(--accent-dark);border-color:var(--accent-dark)}button:disabled{opacity:.55;cursor:not-allowed}button.secondary{background:var(--accent-soft);color:var(--accent);border-color:var(--border);padding:.4rem .8rem;font-weight:500}button.secondary:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}button.remove{background:transparent;color:var(--err);border-color:var(--border);padding:.4rem .7rem}button.remove:hover:not(:disabled){background:transparent;border-color:var(--err);color:var(--err)}.submit{width:100%;padding:.9rem;font-size:1.05rem;margin-top:.5rem}.reminder-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:.75rem 0 .25rem}.notice{padding:.85rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:500}.notice.ok{background:#e6f4ec;color:var(--ok);border:1px solid #b7e0c8}.notice.err{background:#fbeae9;color:var(--err);border:1px solid #f2c2bf}.notice.warn{background:#fdf6e3;color:#8a6d1a;border:1px solid #ecd9a0}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:1rem;gap:1rem}.stat{text-align:center;background:var(--accent-soft);border-radius:var(--radius);padding:1rem}.stat .num{font-size:2rem;font-weight:700;color:var(--accent);line-height:1.1}.stat .lbl{font-size:.85rem;color:var(--muted)}table.buffet{width:100%;border-collapse:collapse}table.buffet td,table.buffet th{text-align:left;padding:.45rem .5rem;border-bottom:1px solid var(--border)}table.buffet th{color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.03em}.empty{font-style:italic}.empty,.hint{color:var(--muted)}.hint{font-size:.85rem;margin-top:.25rem}.buffet-tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}.buffet-tag{background:var(--accent-soft);border:1px solid var(--border);border-radius:999px;padding:.3rem .8rem;font-size:.95rem}.buffet-tag .x{color:var(--accent);font-weight:700}.orga-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.orga-top h1{font-size:1.6rem;margin:0 0 .2rem;color:var(--accent)}.orga-top .meta{color:var(--muted);font-size:.9rem;margin:0}.helfer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:1.5rem;gap:1.5rem}.helfer-grid h3{margin:0 0 .5rem;font-size:1rem;color:var(--accent)}.namelist{margin:0;padding-left:1.2rem}.namelist li{margin-bottom:.25rem}.note{color:var(--muted);font-style:italic}.anmeldungen{display:flex;flex-direction:column;gap:1rem}.anmeldung{border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem;background:var(--bg)}.anmeldung-kopf{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.anmeldung-kopf strong{font-size:1.05rem}.badge{background:var(--accent);color:#fff;border-radius:999px;padding:.1rem .6rem;font-size:.8rem;white-space:nowrap}.anmeldung-mail{color:var(--muted);font-size:.9rem;margin-bottom:.5rem}.anmeldung-zeile{font-size:.95rem;margin-top:.3rem}.anmeldung-zeile .k{font-weight:600;color:var(--accent)}button.stat{border:1px solid var(--border);color:var(--ink);font:inherit;cursor:pointer;width:100%;display:flex;flex-direction:column;gap:.15rem;box-shadow:0 1px 3px rgba(30,58,95,.08);transition:background .12s ease,border-color .12s ease,box-shadow .12s ease}button.stat .lbl,button.stat .num{display:block}button.stat:hover{background:#d9e5f4;border-color:var(--accent);box-shadow:0 2px 6px rgba(30,58,95,.16)}button.stat:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.stat[aria-expanded=true]{background:var(--accent);border-color:var(--accent-dark);box-shadow:0 2px 8px rgba(30,58,95,.28)}button.stat[aria-expanded=true] .num{color:#fff}button.stat[aria-expanded=true] .lbl{color:#e6eef7}button.stat-helfer{border-top:3px solid var(--accent)}.akkordeon-panel{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--border)}.akkordeon-panel h3{margin:0 0 .75rem;font-size:1.1rem;color:var(--accent)}.tabelle-scroll{overflow-x:auto}.orga-tabelle{width:100%;border-collapse:collapse;font-size:.95rem}.orga-tabelle td,.orga-tabelle th{border-bottom:1px solid var(--border);padding:.5rem .6rem;text-align:left;vertical-align:top}.orga-tabelle th{background:var(--accent-soft);color:var(--accent);font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.orga-tabelle .note{color:var(--muted);font-style:italic}.zeilen-aktionen{display:flex;gap:.4rem;white-space:nowrap}.form-aktionen{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.rolle-select{padding:.3rem .5rem;border:1px solid var(--border);border-radius:8px;font-size:.9rem;font-family:inherit;background:#fff;color:var(--ink)}.rolle-select:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.rolle-select:disabled{opacity:.55;cursor:not-allowed}.nav-boxen{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:1rem;gap:1rem}.nav-box{display:flex;align-items:center;justify-content:center;gap:.5rem;text-align:center;text-decoration:none;background:var(--card);border:2px solid var(--accent);border-radius:var(--radius);padding:1rem;color:var(--accent);font-weight:600;transition:background .12s ease,color .12s ease}.nav-box:after{content:"→";font-size:1.1em;line-height:1;transition:transform .12s ease}.nav-box:hover{background:var(--accent);color:#fff}.nav-box:hover:after{transform:translateX(3px)}.nav-box:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.reminder-bereich{margin-bottom:1.5rem}.reminder-toggle{display:inline-flex;align-items:center;gap:.5rem;background:transparent;color:var(--accent);border:1px solid var(--border);border-radius:999px;padding:.35rem .9rem;font-size:.9rem;font-weight:500}.reminder-toggle:hover:not(:disabled){background:var(--accent-soft);border-color:var(--accent);color:var(--accent-dark)}.reminder-chevron{font-size:.75em;line-height:1}.reminder-badge{background:var(--accent);color:#fff;border-radius:999px;padding:.05rem .5rem;font-size:.78rem;font-weight:600}.reminder-bereich #reminder-panel{margin-top:.75rem}.druck-leiste{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.druck-leiste .zurueck{color:var(--accent);text-decoration:none;font-weight:500}.liste-kopf h1{font-size:1.5rem;color:var(--accent);margin:0 0 1.25rem}.einlass-tabelle{width:100%;border-collapse:collapse;font-size:1rem}.einlass-tabelle td,.einlass-tabelle th{border:1px solid var(--border);padding:.5rem .65rem;text-align:left;vertical-align:middle}.einlass-tabelle th{background:var(--accent-soft);color:var(--accent)}.haken-th{width:3rem}.haken-th,.haken-zelle{text-align:center}.kasten{display:inline-block;width:18px;height:18px;border:1.5px solid #333;border-radius:3px}.kat-tabelle,.wunsch-tabelle{width:100%;border-collapse:collapse;font-size:1rem}.kat-tabelle td,.kat-tabelle th,.wunsch-tabelle td,.wunsch-tabelle th{border:1px solid var(--border);padding:.5rem .65rem;text-align:left;vertical-align:middle}.kat-tabelle th,.wunsch-tabelle th{background:var(--accent-soft);color:var(--accent)}.num-td,.num-th{text-align:right}.kat-tabelle input[type=number]{width:5rem;padding:.3rem .4rem;text-align:right}.wasser-schalter{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-weight:400}.wasser-schalter input{width:1.1rem;height:1.1rem;accent-color:var(--accent)}.richtwert-hinweis{color:var(--muted);font-size:.85rem;margin-top:1rem}@media print{.no-print{display:none!important}body{background:#fff;color:#000}.wrap{max-width:none;margin:0;padding:0}.druckbar .card{border:none;box-shadow:none;padding:0;margin:0 0 1rem;background:#fff}.einlass-tabelle th,.kat-tabelle th,.wunsch-tabelle th{background:#fff;color:#000}.einlass-tabelle td,.einlass-tabelle th,.kat-tabelle td,.kat-tabelle th,.wunsch-tabelle td,.wunsch-tabelle th{border-color:#000}.einlass-tabelle tr,.kat-tabelle tr,.wunsch-tabelle tr{page-break-inside:avoid;break-inside:avoid}.kasten{border-color:#000}.kat-tabelle input[type=number]{border:none;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}}