
:root{
  --serif-d:Gabarito,ui-rounded,system-ui,sans-serif;
  --serif-l:Gabarito,ui-rounded,system-ui,sans-serif;
  --radius:6px;--ws:1;
  --bg:#f5f4f1;--panel:#fbfaf8;--panel2:#ffffff;--field:#ffffff;--line:#ddd6c9;--line2:#c4bcad;
  --text:#262019;--muted:#6a6258;--dim:#4a443b;--accent:#ea425b;--accent-hover:#6f2c20;--accent-soft:rgba(138,58,44,.09);
  --bar:#b9ad9a;--ok:#47653c;--warn:#8a6411;--danger:#9c3320;--on-text:#f5f4f1;--on-ok:#fff;--on-danger:#fff;
  --ph:#a39a8b;--backdrop:rgba(38,32,25,.55);--shadow:0 10px 30px rgba(38,32,25,.15);--serif:var(--serif-l);color-scheme:light;--p0:#262019;--p1:#ea425b;--p2:#2a5a8a;--p3:#47653c;--p4:#6a6258;--p5:#9c3320;--p6:#52646d;--p7:#8a6411;
}
@media not all{:root:not([data-theme="light"]){
  --bg:#0e1524;--panel:#131c2f;--panel2:#18233a;--field:#0b1220;--line:#233049;--line2:#33435f;
  --text:#e9eef6;--muted:#8a9bb4;--dim:#b4c1d4;--accent:#e83f8c;--accent-hover:#f27ab0;--accent-soft:rgba(232,63,140,.14);
  --bar:#4b6285;--ok:#6fcf97;--warn:#e6b85c;--danger:#e8756f;--on-text:#0e1524;--on-ok:#0e1524;--on-danger:#1b0909;
  --ph:#55657f;--backdrop:rgba(6,10,18,.88);--shadow:0 10px 30px rgba(0,0,0,.4);--serif:var(--serif-d);color-scheme:dark;--p0:#e9eef6;--p1:#e83f8c;--p2:#9badc2;--p3:#f27ab0;--p4:#c7d3e3;--p5:#6b7f9a;--p6:#f4a6c8;--p7:#b4c1d4;
}}
:root[data-theme="dark"]{
  --bg:#0e1524;--panel:#131c2f;--panel2:#18233a;--field:#0b1220;--line:#233049;--line2:#33435f;
  --text:#e9eef6;--muted:#8a9bb4;--dim:#b4c1d4;--accent:#e83f8c;--accent-hover:#f27ab0;--accent-soft:rgba(232,63,140,.14);
  --bar:#4b6285;--ok:#6fcf97;--warn:#e6b85c;--danger:#e8756f;--on-text:#0e1524;--on-ok:#0e1524;--on-danger:#1b0909;
  --ph:#55657f;--backdrop:rgba(6,10,18,.88);--shadow:0 10px 30px rgba(0,0,0,.4);--serif:var(--serif-d);color-scheme:dark;--p0:#e9eef6;--p1:#e83f8c;--p2:#9badc2;--p3:#f27ab0;--p4:#c7d3e3;--p5:#6b7f9a;--p6:#f4a6c8;--p7:#b4c1d4;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{background:var(--bg)}
body{margin:0;min-height:100vh;color:var(--text);font-family:Onest,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  background:var(--bg);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;line-height:1.6;font-size:15px}
button,input,textarea,select{font:inherit;color:inherit}
a{color:var(--accent);text-underline-offset:3px}
a:hover{color:var(--accent-hover)}
.wrap{max-width:1120px;margin:0 auto;padding:calc(28px + env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) calc(48px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}
.wrap.narrow{max-width:600px}
.hidden{display:none!important}
.demonav{position:sticky;bottom:0;z-index:6;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:16px;padding:10px 0 calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line)}
.demonav .dn-c{text-align:center;font-size:.85rem;white-space:nowrap}
.demoleave{display:grid;margin-top:10px}
.dropzone{position:relative;border:1.5px dashed var(--line2);border-radius:var(--radius);padding:14px;text-align:center;color:var(--muted);font-size:.86rem;cursor:pointer;transition:all .18s;background:transparent}
.dropzone:hover,.dropzone.over{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.dropzone.busy{opacity:.6;pointer-events:none}
.dz-prev{display:flex;align-items:center;gap:12px;text-align:left}
.dz-prev img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.muted{color:var(--muted)}
.center{text-align:center}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.spread{justify-content:space-between}
.grow{flex:1;min-width:0}
.stack>*+*{margin-top:12px}
.eyebrow{font-size:.68rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* Karten */
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.rate{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);text-align:left}
.rate h3{margin:0 0 2px;font-size:1rem}
.stars{display:flex;gap:2px;margin:6px 0}
.stars button{background:none;border:0;font-size:2rem;line-height:1;cursor:pointer;color:var(--line);padding:2px 4px}
.stars button.on{color:#e0a526}
.stars button:focus-visible{outline:2px solid var(--accent,#ea425b);border-radius:6px}
.rate textarea{width:100%;resize:vertical;margin-top:4px}
.card h2{font-family:var(--serif);font-weight:400;font-size:1.3rem;margin:0 0 4px;letter-spacing:-.005em}
.card .sub{margin:0 0 18px;color:var(--muted);font-size:.9rem;line-height:1.6}
.fade{animation:fade .4s ease both}
@keyframes fade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}

/* Felder & Buttons */
input,textarea,select{width:100%;background:var(--field);border:1px solid var(--line);border-radius:4px;padding:11px 13px;outline:none;transition:border-color .18s}
input:focus,textarea:focus,select:focus{border-color:var(--accent)}
::placeholder{color:var(--ph)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--text);color:var(--on-text);border:1px solid var(--text);border-radius:4px;padding:10px 18px;cursor:pointer;font-weight:500;font-size:.88rem;letter-spacing:.01em;white-space:nowrap;transition:background .18s,border-color .18s,color .18s}
.btn:hover{background:var(--accent);border-color:var(--accent);color:#fff}
.btn:focus-visible,.opt:focus-visible,.seg button:focus-visible,.slide-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--line2)}
.btn.ghost:hover{background:transparent;border-color:var(--accent);color:var(--accent)}
.btn.danger{background:transparent;border-color:var(--line2);color:var(--muted)}
.btn.danger:hover{border-color:var(--danger);color:var(--danger);background:transparent}
.btn.danger.armed{background:var(--danger);color:var(--on-danger);border-color:var(--danger)}
.btn.small{padding:6px 12px;font-size:.8rem}
.btn.icon{padding:6px 10px}
.btn.big{padding:13px 26px;font-size:.95rem}
.btn:disabled{opacity:.4;cursor:not-allowed}

/* Chips & Status */
.pill{display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:99px;border:1px solid var(--line);font-size:.78rem;color:var(--muted);max-width:100%}
.pill.ok{color:var(--dim)}
.pill.off{color:var(--warn);border-color:var(--warn)}
.dot{width:7px;height:7px;border-radius:50%;background:var(--ok);display:inline-block;flex:none}
.dot.live{animation:pulse 2.2s ease-in-out infinite}
.dot.bad{background:var(--danger);animation:none}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.code{font-family:var(--serif);font-weight:400;letter-spacing:.12em;color:var(--text)}
.code.xl{font-size:clamp(2.2rem,6vw,3.4rem)}
.big{font-family:var(--serif);font-size:clamp(1.5rem,3.8vw,2.2rem);font-weight:400;margin:0 0 18px;line-height:1.25;letter-spacing:-.01em;overflow-wrap:anywhere}

/* Landing */
.hero{text-align:left;margin:9vh 0 44px;max-width:600px}
.hero .logo{width:36px;height:2px;background:var(--accent);margin-bottom:26px}
.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2.3rem,6vw,3.4rem);margin:0 0 .3em;letter-spacing:-.02em;line-height:1.1}
.hero p{margin:0;color:var(--dim);font-size:1rem;max-width:460px}
.hero p.herostack{display:grid}.hero p.herostack>span{grid-area:1/1}.hero p.herostack>span[hidden]{display:block;visibility:hidden}
.join-input{font-family:var(--serif);font-size:clamp(1.8rem,7vw,2.5rem);text-align:center;letter-spacing:.3em;padding:14px 10px 14px calc(10px + .3em)}
.grid{display:grid;gap:20px;grid-template-columns:minmax(0,1fr)}.grid>*{min-width:0}
@media(min-width:820px){.grid.two{grid-template-columns:1fr 1fr}.grid.host{grid-template-columns:minmax(300px,370px) 1fr;align-items:start}.grid.host>.stage{position:sticky;top:14px;max-height:calc(100vh - 28px);overflow:auto}.stage.dropover{outline:3px dashed var(--accent);outline-offset:-6px}}
.mylist a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 2px;border-bottom:1px solid var(--line);text-decoration:none;color:var(--text);transition:color .18s,padding .18s}
.mylist a:hover{color:var(--accent);padding-left:6px}
details.card>summary{cursor:pointer;font-family:var(--serif);font-size:1.15rem;list-style:none;display:flex;align-items:center;justify-content:space-between}
details.card>summary::-webkit-details-marker{display:none}
details.card>summary::after{content:"+";color:var(--muted);font-family:Onest,system-ui,sans-serif;font-size:1.2rem}
details.card[open]>summary::after{content:"–"}
details.card[open]>summary{margin-bottom:14px}

/* Teilnehmende */
.backbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}.backbar .donebar{margin-left:auto;display:inline-flex;align-items:center;gap:10px}.dlg.donedlg{max-width:520px}@media(max-width:560px){.seg.listseg{grid-template-columns:1fr 1fr}}.dlg.donedlg p{margin:8px 0 0}
.profhead{display:grid;grid-template-columns:1fr auto;gap:18px 28px;align-items:end;margin:10px 0 0;padding-bottom:22px;border-bottom:1px solid var(--line)}
.proftitle{font-family:var(--serif);font-weight:400;font-size:clamp(1.8rem,4vw,2.6rem);margin:2px 0 0;line-height:1.1;overflow-wrap:anywhere}
.profstats{display:flex;gap:26px}
.pstat{display:flex;flex-direction:column;gap:2px}.pstat b{font-family:var(--serif);font-weight:400;font-size:1.8rem;line-height:1}.pstat span{font-size:.74rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}
.profnew{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}.profnew input{flex:1 1 260px}
.profgrid .stagewrap{height:200px}
.profgrid .libcard.show h3{font-size:1.08rem}
.proftile a.stagewrap{text-decoration:none;color:inherit}
.chip.on{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}


.dlg-back{position:fixed;inset:0;background:rgba(20,14,10,.55);display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000;animation:fade .15s ease both}
.dlg{background:var(--panel2);border:1px solid var(--line2);border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.35);max-width:420px;width:100%;padding:24px}
.dlg h2{margin:0 0 8px;font-size:1.2rem}.dlg p{margin:0 0 20px;color:var(--dim);line-height:1.5;overflow-wrap:anywhere}.dlg .row{justify-content:flex-end;gap:10px}.dlg .btn.danger{background:#b3261e;border-color:#b3261e;color:#fff}.dlg .btn.danger:hover{background:#8f1d17}
.pf{display:grid;grid-template-columns:230px 1fr;gap:28px;align-items:start;margin-top:6px}
.pside{position:sticky;top:76px;display:flex;flex-direction:column;gap:4px}
.pside .who{display:flex;align-items:center;gap:12px;padding:4px 6px 16px;border-bottom:1px solid var(--line);margin-bottom:10px}
.avatar{width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-size:1.3rem;flex:none}
.who b{display:block;line-height:1.2;overflow-wrap:anywhere}.who small{color:var(--muted);font-size:.78rem}
.pnav{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;text-align:left;background:transparent;border:0;border-radius:10px;padding:9px 12px;color:var(--dim);font:inherit;font-size:.92rem;cursor:pointer;min-height:40px}
.pnav:hover{background:var(--accent-soft);color:var(--accent)}.pnav.on{background:var(--accent-soft);color:var(--accent);font-weight:600}
.pnav.ftint:hover,.pnav.ftint.on{background:color-mix(in srgb,var(--fc) 15%,transparent);color:var(--text)}
.pnav .n{font-size:.76rem;color:var(--muted);font-weight:400}.pnav .fx{display:none;gap:2px}.pnav:hover .fx{display:inline-flex}
.pnav .fx span{padding:0 5px;border-radius:6px;color:var(--muted)}.pnav .fx span:hover{background:var(--panel2);color:var(--accent)}
.pgroup{font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:14px 12px 4px}
.ptool{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 16px}.ptool input[type=search]{flex:1 1 200px;margin:0}.ptool select{width:auto;margin:0}
.ptitle{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px}.ptitle h1{font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,3.5vw,2.2rem);margin:0}
.pdash{display:flex;gap:24px;flex-wrap:wrap;margin:0 0 20px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel)}
.proftile.dim{opacity:.62}.proftile .tools{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin:2px 0 20px}
.proftile .tools select{width:auto;margin:0;padding:6px 8px;font-size:.82rem;max-width:150px}
.plist{display:flex;flex-direction:column;gap:8px}
.proftile.tinted,.prow.tinted{background:color-mix(in srgb,var(--tint) 9%,var(--card,var(--panel)));border-color:color-mix(in srgb,var(--tint) 38%,var(--line));box-shadow:inset 4px 0 0 var(--tint)}
.cpick>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.cpick>summary::-webkit-details-marker{display:none}
.cpick .crow{display:flex;flex-wrap:wrap;gap:6px;padding:8px 2px 2px}
.cdot{display:inline-block;width:14px;height:14px;border-radius:50%;flex:none;border:2px solid transparent;padding:0}
button.cdot{width:26px;height:26px;cursor:pointer;box-shadow:0 0 0 1px rgba(0,0,0,.08)}button.cdot.on{border-color:var(--panel);box-shadow:0 0 0 2px var(--text)}
.cdot.none{background:repeating-linear-gradient(135deg,var(--line) 0 3px,transparent 3px 6px)!important;box-shadow:0 0 0 1px var(--line)}
.proftile.tinted .tools,.prow .tools{flex-wrap:wrap}.proftile .cpick[open],.prow .cpick[open]{flex-basis:100%}.prow{display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.prow.dim{opacity:.62}.prow h3{margin:0;font-size:1rem}.prow .meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.8rem;margin-top:2px}
.prow .tools{display:flex;gap:6px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.prow .tools select{width:auto;margin:0;padding:6px 8px;font-size:.82rem;max-width:150px}
.instcard .insthead{display:flex;gap:14px;align-items:center}.instcard .insthead img{border-radius:22%;flex:none}.instcard h2{margin:0 0 2px}.instcard .sub{margin:0}
.instok{display:flex;align-items:center;gap:8px;margin:14px 0 0;color:var(--ok);font-weight:600}
.instgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;margin-top:16px}
.inststep{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin-top:14px}.instgrid .inststep{margin-top:0}.inststep.cur{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.inststep h3{font-size:.95rem;margin:0 0 6px}.inststep ol{margin:0;padding-left:1.2em}.inststep li{margin:3px 0}.instfacts{margin:0;padding-left:1.2em}.instfacts li{margin:6px 0}
html.is-app .sitefoot a[href="/installieren"]{display:none}
.setgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.setgrid .card h2{margin-top:0}
.skv{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line);font-size:.92rem}.skv span:first-child{color:var(--muted)}
/* Avatare: Buchstabe, eigenes Foto oder animierte Illustration (nur transform/opacity, bei reduzierter Bewegung still) */
.av{position:relative;flex:none;display:inline-grid;place-items:center;border-radius:50%;overflow:hidden;background:var(--accent);color:#fff;font-family:var(--serif);font-weight:700;line-height:1;vertical-align:middle;user-select:none}
.av.pic{background:var(--line)}.av img{width:100%;height:100%;object-fit:cover;display:block}
.av svg{width:100%;height:100%;display:block}.av.hz{border-radius:26%;background:#ea425b}
.av svg [class]{transform-box:fill-box;transform-origin:center}
.av .ey{animation:avBlink 4.6s infinite}.av .bob{animation:avBob 3.2s ease-in-out infinite}
.av .wav{transform-origin:20% 90%;animation:avWave 4s ease-in-out infinite}.av .wavr{transform-origin:80% 90%;animation:avWave 4s ease-in-out infinite reverse}
.av .twl{transform-origin:70% 100%;animation:avTwitch 5s ease-in-out infinite}.av .twr{transform-origin:30% 100%;animation:avTwitch 5s ease-in-out 1.3s infinite}
.av .sway{transform-origin:50% 100%;animation:avSway 5s ease-in-out infinite}.av .slow{transform-origin:50% 0%;animation:avSway 7s ease-in-out infinite}
.av .wig{transform-origin:50% 0%;animation:avWig 1.8s ease-in-out infinite}.av .wig2{transform-origin:50% 0%;animation:avWig 1.8s ease-in-out .5s infinite}
.av .bloom{animation:avBloom 4s ease-in-out infinite}.av .spin{animation:avSpin 24s linear infinite}
.av .fall{animation:avFall 6s ease-in infinite}
.av .spout{transform-origin:50% 100%;animation:avSpout 3.6s ease-out infinite}
.av .buzz{transform-origin:90% 90%;animation:avWig .22s ease-in-out infinite}.av .buzz2{transform-origin:10% 90%;animation:avWig .22s ease-in-out .11s infinite}
@keyframes avSpout{0%,45%{transform:scaleY(.2);opacity:0}60%{transform:scaleY(1.1);opacity:1}80%{transform:scaleY(1);opacity:1}100%{transform:scaleY(1);opacity:0}}
@keyframes avBlink{0%,90%,96%,100%{transform:scaleY(1)}93%{transform:scaleY(.1)}}
@keyframes avBob{0%,100%{transform:translateY(0)}50%{transform:translateY(-1.6px)}}
@keyframes avWave{0%,55%,100%{transform:rotate(0)}65%{transform:rotate(-16deg)}75%{transform:rotate(10deg)}85%{transform:rotate(-8deg)}}
@keyframes avTwitch{0%,80%,100%{transform:rotate(0)}85%{transform:rotate(-9deg)}90%{transform:rotate(4deg)}}
@keyframes avSway{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes avWig{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes avBloom{0%,100%{transform:scale(.95)}50%{transform:scale(1.05)}}
@keyframes avSpin{to{transform:rotate(360deg)}}
@keyframes avFall{0%{transform:translate(0,0) rotate(0);opacity:0}15%{opacity:1}100%{transform:translate(-6px,22px) rotate(120deg);opacity:0}}
/* Kleine Avatare (Byline, Listen) bewegen sich erst beim Darüberfahren – spart Rechenzeit bei vielen Karten */
.av.sm svg *{animation-play-state:paused}.libcard:hover .av.sm svg *,.av.sm:hover svg *{animation-play-state:running}
@media(prefers-reduced-motion:reduce){.av svg *{animation:none!important}}
/* Einstellung „Bewegung reduzieren: Immer“ (.rm) wirkt wie prefers-reduced-motion; „Große Schrift“ (.lt) skaliert rem und die Grundschrift */
html.rm .av svg *{animation:none!important}
html.rm *,html.rm *::before,html.rm *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
html.rm .conf{display:none}
html.lt{font-size:112%}html.lt body{font-size:16.8px}
@media(max-width:560px){html.lt body{font-size:18px}}
.byline .av{margin-right:6px}.byline>span:first-child{display:inline-flex;align-items:center;flex-wrap:wrap}.byline>span:first-child>a,.byline>span:first-child>span[data-ugc]{margin-left:.3em}
/* Einstellungen */
.psubs{display:flex;flex-direction:column;gap:2px;margin:2px 0 4px 12px;padding-left:8px;border-left:1px solid var(--line)}
.pnav.psub{min-height:34px;padding:6px 10px;font-size:.86rem}.pnav.psub.on{font-weight:600}
@media(min-width:821px){.chips.setnav{display:none!important}.setsec{scroll-margin-top:84px}}
@media(max-width:820px){.psubs{display:none}.pnav.pset svg{display:none}}
.chips.setnav{position:sticky;top:0;z-index:40;background:var(--bg);margin:0 0 4px;padding:8px 0;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.setnav::-webkit-scrollbar{display:none}.setnav .chip{flex:none}
.setsec{scroll-margin-top:120px;margin:26px 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.setsec:first-of-type{margin-top:6px}
.setsub{font-size:.95rem;margin:18px 0 2px}
.loginlist{display:flex;flex-direction:column;gap:2px}
.loginrow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.loginrow:first-child{border-top:0}
.loginrow b{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.95rem}.loginrow small{display:block}
.loginrow .chip{cursor:default;color:var(--accent);border-color:var(--accent);background:var(--accent-soft);font-weight:600}
.setgrid .card{border-radius:12px;min-width:0}.setgrid .card .sub{margin-top:0}
.setgrid label.fl{display:block;font-size:.84rem;font-weight:600;margin:12px 0 4px}.setgrid label.fl:first-of-type{margin-top:0}
.setgrid .hint{font-size:.8rem;color:var(--muted);margin:4px 0 0}
.avpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:8px;margin:8px 0 4px}
.avpick button{position:relative;display:grid;place-items:center;aspect-ratio:1;padding:4px;border:1.5px solid var(--line);border-radius:8px;background:var(--panel);cursor:pointer;min-width:0}
.avpick button:hover{border-color:var(--line2)}.avpick button[aria-pressed="true"]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.avpick button .av{width:100%!important;height:100%!important;max-width:52px;max-height:52px}
.qk-masc{display:flex;justify-content:center;margin:4px 0 18px}.qk-masc .av{box-shadow:0 6px 18px rgba(0,0,0,.12);animation:mascIn .6s cubic-bezier(.3,1.5,.5,1) both,mascBob 3.4s ease-in-out .6s infinite}
@keyframes mascIn{from{opacity:0;transform:scale(.4) rotate(-12deg)}to{opacity:1;transform:none}}
@keyframes mascBob{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.qk-masc .av{animation:none}}
.avpick .up{color:var(--muted);font-size:.72rem;line-height:1.2;text-align:center;gap:2px}.avpick .up svg{width:20px;height:20px}
.avhead{display:flex;gap:14px;align-items:center;margin-bottom:6px}.avhead b{display:block;font-family:var(--serif);font-size:1.1rem;overflow-wrap:anywhere}
.avgrp{font-size:.78rem;color:var(--muted);margin:12px 0 0;font-weight:600}
.tgl{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line);cursor:pointer}.tgl input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:var(--accent)}.tgl span{display:block}.tgl small{display:block;color:var(--muted);font-size:.8rem}
.dangerzone{border-color:color-mix(in srgb,var(--danger) 40%,var(--line))!important}
.ubio{margin:8px 0 0;max-width:60ch;color:var(--text)}.uweb{display:inline-flex;align-items:center;gap:6px;margin-top:6px;font-size:.9rem;overflow-wrap:anywhere}
.uhandle{color:var(--muted);font-size:.92rem;margin-top:2px}
.pf>*{min-width:0}.ptool>*,.profnew>*{min-width:0}.pdash{gap:16px 24px}
@media(max-width:820px){.pf{grid-template-columns:minmax(0,1fr)}.profnew input,.ptool input[type=search]{flex:1 1 100%}.pside{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}.pside .who,.pgroup{display:none}.pnav{width:auto;border:1px solid var(--line)}.pnav .fx{display:none!important}.prow{grid-template-columns:1fr}.prow .tools{justify-content:flex-start}}
@media(max-width:700px){.profhead{grid-template-columns:1fr}.profstats{gap:20px}}
.sitehead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-bottom:1px solid var(--line);margin:-6px 0 18px;padding-bottom:4px;position:sticky;top:0;z-index:50;background:var(--bg)}.sitehead.flat{position:static}.sitehead nav{display:flex;gap:4px;flex-wrap:wrap}.sitehead nav a{font-size:.92rem;color:var(--dim);text-decoration:none;padding:10px 12px;border-radius:99px;min-height:44px;display:inline-flex;align-items:center}.sitehead nav a:hover{background:var(--accent-soft);color:var(--accent)}.sitehead nav a.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.sitehead nav a.cta{background:var(--accent);color:#fff}.sitehead nav a.cta:hover{background:var(--accent-hover);color:#fff}
@media (max-width:640px){.sitehead{flex-wrap:nowrap;gap:4px}.sitehead nav{flex-wrap:nowrap;gap:0;min-width:0}.sitehead nav a{padding:10px 8px;font-size:.85rem;white-space:nowrap}.sitehead nav a.hm{display:none}.sitehead .homelink{font-size:0;gap:0;padding:8px 4px 8px 0}.sitehead .homelink:before{margin:0}}
.homelink{display:inline-flex;align-items:center;gap:8px;font-family:var(--serif);font-weight:650;font-size:1rem;color:var(--text);text-decoration:none;padding:8px 4px;min-height:44px}.homelink:before{content:'';width:26px;height:26px;border-radius:7px;background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%3E%3Crect%20width='32'%20height='32'%20rx='8'%20fill='%23ea425b'/%3E%3Cg%20fill='%23fff'%3E%3Crect%20x='6.5'%20y='19.5'%20width='5'%20height='6.5'%20rx='2.5'/%3E%3Crect%20x='13.5'%20y='15'%20width='5'%20height='11'%20rx='2.5'/%3E%3Crect%20x='20.5'%20y='10'%20width='5'%20height='16'%20rx='2.5'/%3E%3C/g%3E%3Ccircle%20cx='23'%20cy='5.5'%20r='2.8'%20fill='%2300eabd'/%3E%3C/svg%3E") center/contain no-repeat}.homelink:hover{color:var(--accent)}.homelink small{color:var(--muted);font-weight:400;font-size:.8rem}
.histo{display:flex;align-items:flex-end;gap:3px;height:clamp(140px,22vh,300px);border-bottom:2px solid var(--line)}
.histo .hb{flex:1;background:var(--c);border-radius:4px 4px 0 0;height:0;transition:height .5s}
.htrack{position:relative;margin-top:26px}
.avgmark{position:absolute;top:-4px;bottom:0;width:2px;background:var(--text);transform:translateX(-1px);transition:left .5s}
.avgmark span{position:absolute;top:-20px;left:50%;transform:translateX(-50%);font-size:.72rem;white-space:nowrap;color:var(--muted)}
.minemark{position:absolute;bottom:-9px;width:14px;height:14px;border-radius:50%;background:var(--accent);border:3px solid var(--bg);transform:translateX(-50%)}
.plane{position:relative;aspect-ratio:1/1;max-width:min(100%,520px);margin:36px auto;border:1.5px solid var(--line);border-radius:18px;background:linear-gradient(var(--line),var(--line)) center/1px 100% no-repeat,linear-gradient(var(--line),var(--line)) center/100% 1px no-repeat,var(--field);touch-action:none;user-select:none}
.plane.pick{cursor:crosshair;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}
.plane .ax{position:absolute;font-size:.95rem;font-weight:650;color:var(--text);max-width:46%;line-height:1.25;padding:3px 9px;border-radius:9px;background:var(--panel2);border:1px solid var(--line);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.plane .ax.t{top:0;left:50%;transform:translate(-50%,-50%)}.plane .ax.b{bottom:0;left:50%;transform:translate(-50%,50%)}
.plane .ax.l{left:8px;top:50%;transform:translateY(calc(-100% - 8px))}.plane .ax.r{right:8px;top:50%;transform:translateY(calc(-100% - 8px));text-align:right}
.plane .dot{position:absolute;width:24px;height:24px;margin:-12px 0 0 -12px;border-radius:50%;background:var(--accent);opacity:.38;pointer-events:none}
.plane .dot.me{opacity:1;width:20px;height:20px;margin:-10px 0 0 -10px;border:3px solid var(--bg);box-shadow:0 0 0 2px var(--accent)}
.plane .cmark{position:absolute;transform:translate(-50%,-50%);font-size:1.5rem;line-height:1;pointer-events:none;color:var(--text)}
.p-slide .plane{max-width:min(100%,60vh)}.p-slide .plane .ax{font-size:clamp(1rem,1.7vw,1.6rem);padding:.2em .55em}
.rangebox{margin:22px 0 6px}.rangebox output{display:block;text-align:center;font-family:var(--serif);font-size:3rem;font-weight:650;margin-bottom:6px}
.rangebox input[type=range]{touch-action:none;width:100%;height:44px;accent-color:var(--accent);padding:0;background:none;border:0}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px}
.opt{display:flex;align-items:center;gap:16px;width:100%;text-align:left;margin:10px 0;padding:16px 18px;border-radius:var(--radius);background:var(--field);border:1px solid var(--line);cursor:pointer;font-size:1.02rem;transition:border-color .18s,background .18s}
.opt:hover{border-color:var(--accent);background:var(--accent-soft)}
.opt:active{background:var(--accent-soft)}
.opt:disabled{opacity:.5;cursor:default}
.badge{flex:none;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;font-family:var(--serif);font-size:.9rem;color:var(--dim);background:transparent;border:1px solid var(--line2)}
.scale{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:6px}
.scale .opt{justify-content:center;font-family:var(--serif);font-size:1.7rem;margin:0;padding:22px 0}
.scale-hint{display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem;margin-top:12px}
.board{list-style:none;margin:10px 0 0;padding:0;border-top:1px solid var(--line)}
.board li{display:flex;align-items:baseline;gap:12px;padding:9px 2px;border-bottom:1px solid var(--line)}
.board .rk{width:1.6em;font-family:var(--serif);font-size:1.15em;color:var(--muted);text-align:right}
.board .nm{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.board .pt{font-variant-numeric:tabular-nums;color:var(--muted)}
.board li.me{font-weight:600}.board li.me .nm{color:var(--accent)}
.board li:first-child .rk{color:var(--accent)}
.podium{display:flex;align-items:flex-end;justify-content:center;gap:12px;margin:18px 0 8px}
.podium .pl{flex:1;max-width:200px;text-align:center;min-width:0}
.podium .pn{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.podium .ps{color:var(--muted);font-size:.8em;font-variant-numeric:tabular-nums}
.podium .bar{margin-top:6px;border-radius:10px 10px 0 0;background:var(--accent);color:#fff;font-family:var(--serif);font-size:1.6em;padding:8px 0;opacity:.9}
.podium .p1 .bar{height:110px;opacity:1}.podium .p2 .bar{height:80px;opacity:.7}.podium .p3 .bar{height:56px;opacity:.5}
.p-board{margin-top:22px;max-width:640px;font-size:clamp(1.1rem,2.2vw,1.8rem)}
.gamefeed{margin:0 0 16px}.gamefeed .gl{font-family:var(--serif);font-size:1.5rem;margin:0}.gamefeed .gs{margin:2px 0 0;color:var(--muted);font-size:.92rem}
.thanks{display:flex;align-items:center;gap:10px;color:var(--dim);margin:0 0 18px;font-size:.9rem}
.thanks svg{width:20px;height:20px;color:var(--accent)}
.thanks path{stroke-dasharray:30;stroke-dashoffset:30;animation:draw .5s .1s ease forwards}
@keyframes draw{to{stroke-dashoffset:0}}
.wait{padding:64px 20px;text-align:center}
.wait .ring{width:34px;height:34px;margin:0 auto 24px;border-radius:50%;border:1px solid var(--line2);border-top-color:var(--accent);animation:spin 1.2s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.conn{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translateX(-50%);z-index:60}

/* Ergebnisse */
.results .rrow{margin:20px 0}
.rtop{display:flex;align-items:center;gap:12px;margin-bottom:8px}
.rlabel{flex:1;min-width:0;font-size:1rem;overflow-wrap:anywhere}
.rrow.mine .rlabel::after{content:" · deine Wahl";color:var(--accent);font-size:.78em}
.val{color:var(--muted);font-size:.88rem;white-space:nowrap}
.rrow.lead .val{color:var(--text)}
.rrow.lead .badge{border-color:var(--accent);color:var(--accent)}
.bar{height:6px;border-radius:99px;background:var(--field);overflow:hidden}
.bar>i{display:block;height:100%;width:0;border-radius:99px;background:var(--bar)!important;transition:width .8s cubic-bezier(.2,.8,.2,1)}
.rrow.lead .bar>i{background:var(--accent)!important}
.avg{text-align:center;margin:26px 0 0;font-family:var(--serif);font-size:clamp(2.4rem,6vw,3.6rem);letter-spacing:-.02em}
.avg small{display:block;font-family:Onest,system-ui,sans-serif;font-size:.75rem;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:4px}
.total{margin:22px 0 0;text-align:center;color:var(--muted);font-size:.8rem;letter-spacing:.04em}
.cloud{display:flex;flex-wrap:wrap;gap:4px 24px;align-items:center;justify-content:center;min-height:220px;padding:14px 6px}
.cloud .w{font-family:var(--serif);line-height:1.15;font-weight:400;animation:pop .5s ease both;transition:font-size .5s ease;cursor:default}
.cloud .w.mine{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:6px}
@keyframes pop{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.empty{color:var(--muted);text-align:center;padding:28px 0}

/* Admin */
.share{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.share .url{font-size:.95rem;text-decoration:none;word-break:break-all;color:var(--dim)}
.qr-box{background:#fff;padding:7px;border-radius:4px;display:inline-block;cursor:pointer;line-height:0}
.rklist{display:flex;flex-direction:column;gap:8px}
.rkrow{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:8px 10px;transition:box-shadow .15s,border-color .15s}
.rkrow .grip{font-size:1.4rem;line-height:1;color:var(--muted);cursor:grab;touch-action:none;padding:8px 6px;user-select:none}
.rkrow .rt{flex:1;min-width:0;overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
@media(max-width:420px){.rkrow{gap:6px;padding:4px 6px}.rkrow .grip{padding:6px 2px}.rkrow .btn.icon{width:34px;height:34px;padding:0}}
.vcard.vtight .verdict{font-size:1rem;margin-bottom:6px}.vcard.vtight .rklist{gap:5px}.vcard.vtight .rkrow{padding:2px 6px}
.rkrow{transition:box-shadow .2s,border-color .15s,scale .18s ease,rotate .18s ease}
.rkrow.drag{position:relative;z-index:5;border-color:var(--accent);will-change:translate}
.rkrow.lift{scale:1.035;rotate:-1.2deg;box-shadow:0 14px 30px rgba(0,0,0,.28),0 3px 8px rgba(0,0,0,.18);cursor:grabbing}
.rkrow.drag .grip{cursor:grabbing;color:var(--accent)}
body.grabbing,body.grabbing *{cursor:grabbing!important;user-select:none;-webkit-user-select:none}
@media (prefers-reduced-motion:reduce){.rkrow.lift{rotate:0deg}}

.kinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.kind{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:8px;cursor:pointer;display:flex;flex-direction:column;gap:6px;text-align:left;font:inherit;color:var(--text);transition:border-color .15s,background .15s}
.kind:hover{border-color:var(--muted)}
.kind.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent)}
.kind b{font-weight:500;font-size:.82rem;line-height:1.2}
.kind .kd{font-size:.72rem;line-height:1.25;color:var(--muted)}
.kgroups{display:flex;flex-direction:column;gap:14px}
.kghead{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
.kv{height:76px;border-radius:5px;background:var(--field);border:1px solid var(--line);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:4px;padding:6px 8px}
.kv i{display:block;height:6px;border-radius:3px;background:var(--accent);opacity:.8}
.kv i.g{background:var(--line);opacity:1}
.kv .row2{display:flex;gap:3px;align-items:flex-end;height:100%}
.kv .row2 i{flex:1;opacity:.85}
.kv .w{display:flex;flex-wrap:wrap;gap:2px 5px;align-items:center;justify-content:center;font-weight:600;line-height:1}
.kv.cl{padding:4px;align-items:center}
.kv .pl{position:relative;height:100%;aspect-ratio:1/1;border:1px solid var(--line);border-radius:6px;background:linear-gradient(var(--line),var(--line)) center/1px 100% no-repeat,linear-gradient(var(--line),var(--line)) center/100% 1px no-repeat,var(--panel)}
.kv .pl u{position:absolute;width:5px;height:5px;margin:-2.5px 0 0 -2.5px;border-radius:50%;background:var(--accent);opacity:.65}
.kv .pl span{position:absolute;font-size:.5rem;line-height:1;color:var(--muted)}
.kv .tx{font-size:.62rem;color:var(--muted);line-height:1.1}
.kindinfo{margin-top:10px;padding:10px 12px;border-left:2px solid var(--accent);background:var(--field);border-radius:0 6px 6px 0;font-size:.86rem;color:var(--muted);line-height:1.45}
.kindinfo b{color:var(--text);font-weight:500}
.pubcard{display:flex;flex-direction:column;gap:10px;margin-top:16px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--field)}
.pubcard.on{border-color:var(--accent);background:var(--accent-soft)}
.pubcard .ph{font-weight:600;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pubcard .pd{margin:0;font-size:.86rem;color:var(--muted);line-height:1.45}
.cpeople{display:flex;flex-direction:column;gap:8px}
.cperson{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.cperson a{font-weight:600;text-decoration:none;color:inherit}
.cperson .muted{font-size:.84rem}
.cperson .btn{margin-left:auto}
.namegrid{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}
@media (max-width:560px){.namegrid{grid-template-columns:1fr}}
.cav{width:30px;height:30px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-weight:700;flex:none}
.pubcard .pm{display:flex;gap:14px;align-items:flex-start}
.pubcard .pt{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:10px}
.pubcard .pq{flex:none;display:flex;flex-direction:column;align-items:center;gap:5px;background:none;border:0;padding:0;cursor:zoom-in;color:var(--muted);font:inherit;font-size:.74rem}
.pubcard .pq .qr-box{cursor:zoom-in}
.pubcard .pq svg{width:150px!important;height:150px!important;display:block}
.pubcard .pql{font-weight:600}
@media(max-width:560px){.pubcard .pm{flex-direction:column;align-items:stretch}.pubcard .pq{order:-1;align-self:center}.pubcard .pq svg{width:min(190px,52vw)!important;height:min(190px,52vw)!important}}

.seg{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:4px;overflow:hidden}
.seg button{background:transparent;border:0;border-right:1px solid var(--line);padding:10px 6px;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.8rem;color:var(--muted);transition:background .18s,color .18s}
.seg button:last-child{border-right:0}
.seg.listseg{grid-template-columns:repeat(4,1fr);margin-top:12px;border-radius:8px}.seg.listseg button{font-size:.88rem;padding:9px 6px}
.seg button span{display:none}
.seg button:hover{color:var(--text)}
.seg button.on{color:var(--text);background:var(--accent-soft);box-shadow:inset 0 -2px 0 var(--accent)}
.optrow{display:flex;gap:8px;margin-top:8px;align-items:center}
.optrow .badge{width:24px;height:24px;font-size:.78rem}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
.chip{background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:99px;padding:3px 11px;font-size:.76rem;cursor:pointer;transition:all .18s}
.chip:hover{color:var(--accent);border-color:var(--accent)}
.cardnav{margin-top:0}.grid.host details.card{scroll-margin-top:14px}
.slide-item{display:flex;gap:12px;align-items:center;padding:12px 4px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .18s,padding .18s}
.slide-item:hover{padding-left:8px}
.slide-item.active{box-shadow:inset 2px 0 0 var(--accent);padding-left:12px;background:var(--accent-soft)}
.slide-item .ico{font-family:var(--serif);font-size:.85rem;color:var(--muted);flex:none;min-width:1.4em}
.slide-item .t{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.slide-item .live{font-size:.62rem;font-weight:500;letter-spacing:.14em;color:var(--accent)}
.stage{min-height:420px}
.stage-tools{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:space-between;margin-bottom:22px}
.kbd{display:inline-block;border:1px solid var(--line2);border-radius:3px;padding:0 6px;font-size:.74rem;color:var(--muted);font-family:ui-monospace,Menlo,monospace}

/* Reveal, Quiz, Ideen */
.masked{padding:48px 8px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:8px 0}
.masked .big{margin-bottom:8px;color:var(--dim)}
.masked p{margin:0}
.masked .reveal-big{margin-top:20px;display:inline-flex;align-items:center;justify-content:center;gap:.55em;font-size:clamp(1rem,1.6vw,1.4rem);padding:.7em 1.2em;max-width:100%;box-sizing:border-box;white-space:normal;pointer-events:auto}
.masked .reveal-big svg{width:1.3em;height:1.3em}
.hiddenhint{margin:0 0 14px;font-size:.8rem;color:var(--warn);border-left:2px solid var(--warn);padding-left:10px}
.verdict{margin:0 0 14px;font-family:var(--serif);font-size:1.2rem}
.verdict.ok{color:var(--ok)}
.verdict.no{color:var(--dim)}
.rrow.correct .badge{border-color:var(--ok);color:var(--ok)}
.rrow.correct .bar>i{background:var(--ok)!important}
.rrow.correct .rlabel{color:var(--ok);font-weight:700}
.quizres .rrow{padding:10px 12px;border-radius:10px;border:2px solid transparent;margin:10px 0;transition:opacity .3s}
.quizres .rrow:not(.correct){opacity:.5}
.quizres .rrow.correct{opacity:1;border-color:var(--ok);background:color-mix(in srgb,var(--ok) 14%,transparent)}
.quizres .rrow.correct .val{color:var(--ok);font-weight:700}
.quizres .rrow.correct .rlabel::after{content:" · richtig";font-size:.8em;font-weight:700}
.quizres .rrow.correct.mine .rlabel::after{content:" · richtig, deine Wahl"}
.quizres .rrow.mine:not(.correct){border-color:var(--danger);opacity:.8}
.quizres .rrow.mine:not(.correct) .rlabel::after{content:" · deine Wahl (falsch)";color:var(--danger)}
html[lang=en] .rrow.mine .rlabel::after{content:" · your choice"}
html[lang=en] .quizres .rrow.correct.mine .rlabel::after{content:" · correct, your choice"}
html[lang=en] .quizres .rrow.mine:not(.correct) .rlabel::after{content:" · your choice (wrong)"}
.tick{flex:none;width:34px;height:34px;border-radius:4px;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;transition:all .18s}
.tick:hover{border-color:var(--ok);color:var(--ok)}
.tick.on{background:var(--ok);border-color:var(--ok);color:var(--on-ok)}
.check{display:flex;gap:10px;align-items:flex-start;margin-top:16px;color:var(--dim);font-size:.86rem;cursor:pointer;line-height:1.45}
.check input{width:auto;margin-top:3px;accent-color:var(--accent)}
.ideas{display:flex;flex-direction:column}
.idea{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);animation:fade .3s ease both}
.idea.old{animation:none}
.idea .itext{flex:1;min-width:0;overflow-wrap:anywhere;font-size:1.02rem}
.idea .tag{font-size:.7rem;color:var(--accent);letter-spacing:.1em;text-transform:uppercase;flex:none}
.like{flex:none;display:inline-flex;align-items:center;gap:7px;min-width:62px;justify-content:center;padding:7px 11px;border-radius:99px;border:1px solid var(--line2);background:transparent;color:var(--dim);font-size:.82rem;cursor:pointer;transition:all .18s}
.like b{font-weight:500;font-variant-numeric:tabular-nums}
button.like:hover{border-color:var(--accent);color:var(--accent)}
.like.on{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}
.like.static{cursor:default;border-color:var(--line)}
.p-slide .idea .itext{font-size:clamp(1.1rem,2.3vw,1.9rem)}
.p-slide .like{font-size:clamp(.9rem,1.6vw,1.3rem);min-width:84px}
.compose{display:flex;gap:10px;margin:2px 0 6px}
.compose .btn{flex:none}

/* Beamer-Ansicht */
.present{position:fixed;inset:0;z-index:90;display:flex;flex-direction:column;padding:max(clamp(22px,4vw,56px),env(safe-area-inset-top));--ws:1.7;background:var(--bg);overflow:auto}
.p-head{display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--muted);font-size:clamp(.9rem,1.4vw,1.15rem);padding-bottom:18px;border-bottom:1px solid var(--line)}
.p-join{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.p-join b{color:var(--text);font-weight:500}
.p-main{flex:1;display:flex;gap:clamp(24px,5vw,80px);align-items:center;padding:3vh 0}
.p-slide{flex:1;min-width:0}
.p-slide .big{font-size:clamp(2.2rem,5vw,4.4rem);margin-bottom:5vh}
.p-slide .masked{padding:clamp(18px,4vh,40px) 14px}
/* Beamer-Fenster (zweiter Bildschirm): nur Folien, keine Steuerung */
.present.beamer .kbdhint,.present.beamer .p-foot>.row,.present.beamer .p-rsz{display:none}
.bm-fs{position:fixed;left:0;right:0;bottom:14px;margin:0 auto;width:max-content;z-index:95;font-size:.85rem;opacity:.9}.btn.bm-fs:hover,.btn.bm-fs:active{transform:none;opacity:1}
/* Sprecheransicht */
.speaker{position:fixed;inset:0;z-index:91;background:var(--bg);display:flex;flex-direction:column;gap:14px;padding:clamp(12px,2vw,28px);overflow:auto}
.sp-head{display:flex;align-items:center;gap:10px 16px;flex-wrap:wrap;color:var(--muted);font-size:.9rem}
.sp-title{font-weight:600;color:var(--text);flex:1 1 200px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1rem}
.sp-timer{font-variant-numeric:tabular-nums;font-size:1.5rem;color:var(--text);font-weight:600;background:none;border:0;padding:0;cursor:pointer;font-family:inherit}
.sp-pill{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;padding:4px 10px;border-radius:99px;background:var(--panel2);color:var(--dim)}
.sp-pill.on{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text)}
.sp-body{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:16px;flex:1;min-height:0}
.sp-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px;min-width:0}
.sp-cur{display:flex;flex-direction:column;gap:12px;overflow:auto}
.sp-q{font-family:var(--serif);font-size:clamp(1.25rem,2.3vw,2rem);margin:0;line-height:1.2;overflow-wrap:anywhere}
.sp-cur .slide-img{max-width:100%;max-height:30vh;border-radius:10px;object-fit:contain}
.sp-ctrl{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.sp-ctrl .sp-big{font-size:1.05rem;padding:12px 22px}
.sp-side{display:flex;flex-direction:column;gap:14px;min-height:0;overflow:auto}
.sp-side h3{margin:0 0 8px;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}
.sp-next{display:flex;gap:10px;align-items:center;padding:8px;border-radius:10px;cursor:pointer;border:1px solid transparent;background:none;width:100%;text-align:left;color:inherit;font:inherit}
.sp-next:hover,.sp-next:focus-visible{border-color:var(--line2)}
.sp-next .sp-n{flex:none;width:28px;height:28px;border-radius:8px;background:var(--panel2);display:grid;place-items:center;font-size:.8rem;color:var(--dim)}
.sp-next .sp-t{flex:1;min-width:0}
.sp-next .sp-t b{display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sp-next .sp-t small{color:var(--muted)}
.sp-next img{flex:none;width:60px;height:38px;object-fit:cover;border-radius:6px}
.sp-qs .sp-qi{display:flex;gap:8px;align-items:flex-start;padding:8px 0;border-top:1px solid var(--line)}
.sp-qs .sp-qi span[data-ugc]{flex:1;min-width:0;overflow-wrap:anywhere}
@media(max-width:860px){.sp-body{grid-template-columns:1fr;flex:none}.speaker{gap:10px}.sp-cur,.sp-side{overflow:visible}.sp-keys{display:none}}
/* Niedrige Beamer (z. B. 1280×720): Frage kleiner, damit Bild und Ergebnisse daneben Platz haben */
@media(min-width:900px) and (max-height:820px){.p-slide .big{font-size:clamp(1.8rem,3.6vw,3.2rem);margin-bottom:3vh}}
.p-slide .masked .big{font-size:clamp(1.1rem,2.2vw,1.8rem);margin:0 0 6px;overflow-wrap:normal;hyphens:none}
.p-slide .bar{height:clamp(10px,1.5vh,18px)}
.p-slide .rlabel{font-size:clamp(1.4rem,3.3vw,3.1rem)}
.p-slide .val{font-size:clamp(1.1rem,2.2vw,2rem)}
.p-slide .badge{width:clamp(34px,5vh,58px);height:clamp(34px,5vh,58px);font-size:clamp(1.05rem,2.2vw,1.8rem)}
.p-slide .total{font-size:clamp(.85rem,1.4vw,1.1rem)}
.p-slide .avg{font-size:clamp(3.5rem,10vw,8rem)}
.p-side{flex:none;text-align:center}
.p-side .qr-box{cursor:zoom-in;padding:10px;width:clamp(200px,24vw,320px)}
.p-count{font-variant-numeric:tabular-nums;color:var(--text);font-weight:600;font-size:1.05em;padding:2px 10px;border:1px solid var(--line);border-radius:999px}
.p-lobby{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:3vh}
.p-lobby .qr-box{cursor:default;padding:14px}
.p-lobby .qr-box svg,.p-side .qr-box svg{width:100%!important;height:auto!important}
.p-lobby .code{font-size:clamp(3.2rem,10vw,7rem)}
.p-lobby h1{margin:0;font-family:var(--serif);font-weight:400;font-size:clamp(1.6rem,4vw,3rem)}
.p-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.85rem;padding-top:18px;border-top:1px solid var(--line)}

/* Toasts */
#toasts{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:200;display:flex;flex-direction:column;gap:8px;align-items:center;width:min(92vw,420px);pointer-events:none}
.toast{pointer-events:auto;background:var(--panel2);border:1px solid var(--line2);border-radius:4px;padding:10px 16px;box-shadow:var(--shadow);animation:fade .25s ease both;font-size:.9rem}
.toast.err{border-color:rgba(232,117,111,.6)}
.toast.ok{border-color:rgba(111,207,151,.5)}
.toast.out{opacity:0;transition:opacity .3s}

/* Modal */
.modal-backdrop{position:fixed;inset:0;background:var(--backdrop);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;animation:fade .2s ease both}
.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:32px;max-width:520px;width:100%;text-align:center}

/* Admin-Panel */
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:20px}
.stat{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;background:var(--panel)}
.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:2rem;line-height:1.1}
.stat span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.arow{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:10px 16px;align-items:center;padding:14px 2px;border-bottom:1px solid var(--line)}
.arow .nm{font-weight:500;overflow-wrap:anywhere}
.arow .meta{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.arow .acts{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.arow input[type=date]{width:auto;padding:5px 8px;font-size:.8rem}
.pill.good{color:var(--ok);border-color:var(--ok)}
.pill.bad{color:var(--danger);border-color:var(--danger)}
.form-grid{display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:700px){.form-grid{grid-template-columns:1fr 1fr}.form-grid .full{grid-column:1/-1}}
.lbl{display:block;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
.cred{font-family:ui-monospace,Menlo,monospace;font-size:.95rem;text-align:left;background:var(--field);border:1px solid var(--line);border-radius:4px;padding:14px;margin:16px 0;line-height:1.8;overflow-wrap:anywhere;white-space:pre-wrap}
.admtabs{display:flex;gap:2px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;touch-action:pan-x;margin:10px 0 20px;box-shadow:inset 0 -1px 0 var(--line);position:sticky;top:0;z-index:5;background:var(--bg);scrollbar-width:none}
.admtabs::-webkit-scrollbar{display:none}
.atypes{display:grid;gap:6px;margin-top:6px}.atype{display:grid;grid-template-columns:minmax(90px,150px) 1fr auto;gap:10px;align-items:center;font-size:.86rem}.atype i{display:block;height:10px;border-radius:5px;background:var(--accent);min-width:2px}.atype b{font-variant-numeric:tabular-nums}
.ahm{display:grid;grid-template-columns:26px repeat(24,minmax(0,1fr));gap:2px;margin-top:10px;font-size:.68rem;color:var(--muted)}.ahm i{display:block;aspect-ratio:1;border-radius:2px;background:var(--accent)}.ahm i.z{background:var(--line);opacity:.5}.ahm span{text-align:center;line-height:1.6;white-space:nowrap;overflow:visible}.ahm .d{text-align:left}
.afun{display:grid;gap:8px;margin-top:10px}.afun-r{display:grid;grid-template-columns:minmax(120px,210px) 1fr auto;gap:10px;align-items:center;font-size:.88rem}.afun-r i{display:block;height:14px;border-radius:4px;background:var(--accent);min-width:2px}.afun-r b{font-variant-numeric:tabular-nums}.afun-r small{color:var(--muted);font-weight:400}
@media(max-width:520px){.afun-r{grid-template-columns:1fr auto}.afun-r i{grid-column:1/-1;order:3}}
.admtabs button{flex:none;background:none;border:0;border-bottom:2px solid transparent;padding:11px 12px;font:inherit;font-weight:600;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.admtabs button:hover{color:var(--text)}
.admtabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--accent)}
.admtabs button:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.admbadge{min-width:20px;padding:1px 6px;border-radius:999px;background:var(--accent);color:#fff;font-size:.72rem;line-height:1.4;text-align:center}
.admbadge[hidden]{display:none}
.admpanel>.card,.admpanel>details.card{margin:0 0 20px!important}
.stat-link{text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%}
.stat-link:hover{border-color:var(--accent)}
.stat-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.acharts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-bottom:20px}
.achart{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;background:var(--panel)}
.achart-h{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px}
.achart-h b{font-size:1.3rem}
.abars{display:flex;align-items:stretch;gap:2px;height:72px;border-bottom:1px solid var(--line2)}
.abar{flex:1;min-width:0;display:flex;flex-direction:column-reverse}
.abar span{display:block;border-radius:2px 2px 0 0;min-height:2px}
.abar:hover{background:var(--accent-soft)}
.achart-f{display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);margin-top:6px}
.achart-l{display:flex;gap:12px;font-size:.75rem;color:var(--muted);margin-top:6px}
.achart-l i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:5px;vertical-align:middle}
.admtools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:14px 0 6px}
.admtools input[type=search]{flex:1 1 220px;width:auto;min-width:0}
.admtools select{width:auto;max-width:100%}
.admcheck{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;cursor:pointer}
.admcheck input{width:auto;margin:0}
.fbsum{display:grid;grid-template-columns:minmax(170px,auto) minmax(0,1fr);gap:16px 32px;align-items:center;margin-top:16px}
.fbavg b{display:block;font-size:2.6rem;line-height:1;font-weight:650}
.fbstars{color:var(--warn);letter-spacing:.08em}
.fbdist{display:grid;gap:2px}
.fbrow{display:grid;grid-template-columns:42px minmax(0,1fr) 48px;gap:10px;align-items:center;background:none;border:0;padding:4px 0;font:inherit;color:inherit;cursor:pointer;text-align:left;width:100%}
.fbrow span:last-child{text-align:right;font-size:.85rem;color:var(--muted)}
.fbrow:hover .fbbar i{opacity:.8}
.fbbar{height:10px;background:var(--field);border-radius:999px;overflow:hidden}
.fbbar i{display:block;height:100%;background:var(--warn);border-radius:999px}
.fbitem{padding:12px 2px;border-bottom:1px solid var(--line)}
.fbtext{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.fbtext.muted{color:var(--muted);font-size:.88rem}
.fbitem .meta{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.admlim{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted);white-space:nowrap}
.admlim input{width:62px;padding:5px 8px;font-size:.85rem;text-align:center}
.arow.mini{grid-template-columns:minmax(0,1fr) auto;padding:8px 2px}
.topgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:4px 28px}
.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:10px}
.kv .lbl{margin-bottom:2px}
@media(max-width:560px){.fbsum{grid-template-columns:1fr}.admtabs button{padding:10px 9px}}
@media(max-width:700px){.arow{grid-template-columns:1fr}.arow .acts{justify-content:flex-start}}
/* Admin: Filter-Chips, Konto-Karten, Präsi-Karten */
.admchips{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0 4px}
.admchip{display:inline-flex;align-items:center;gap:7px;padding:6px 12px;border-radius:99px;border:1px solid var(--line);background:transparent;color:var(--dim);font:inherit;font-size:.84rem;cursor:pointer;transition:background .15s,border-color .15s}
.admchip i{font-style:normal;font-size:.74rem;font-weight:600;color:var(--muted);background:var(--field);border-radius:99px;padding:0 7px;min-width:20px;text-align:center}
.admchip:hover{border-color:var(--line2)}
.admchip[aria-pressed=true]{background:var(--text);border-color:var(--text);color:var(--bg)}
.admchip[aria-pressed=true] i{background:color-mix(in srgb,var(--bg) 22%,transparent);color:var(--bg)}
.admchip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:14px;margin-top:10px}
.acard{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--panel);display:flex;flex-direction:column;gap:14px;min-width:0;transition:border-color .15s,box-shadow .15s}
.acard:hover{border-color:var(--line2);box-shadow:0 6px 22px -14px rgba(0,0,0,.35)}
.acard.off{background:color-mix(in srgb,var(--field) 55%,var(--panel))}
.acard.off .aavatar{filter:grayscale(1);opacity:.6}
.acard.want{border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}
.acard-top{display:flex;gap:12px;align-items:center}
.acard .nm{font-weight:600;font-size:1.02rem;display:flex;align-items:center;gap:7px;flex-wrap:wrap;overflow-wrap:anywhere}
.acard .meta{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.aavatar{flex:none;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem;letter-spacing:.02em;color:hsl(var(--h) 45% 30%);background:hsl(var(--h) 60% 88%)}
.abadge{font-size:.68rem;font-weight:700;letter-spacing:.04em;padding:1px 8px;border-radius:99px;line-height:1.5}
.abadge.pro{background:var(--accent);color:#fff}
.abadge.new{background:color-mix(in srgb,var(--ok) 16%,transparent);color:var(--ok)}
.astatus{flex:none;display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:600;padding:3px 10px;border-radius:99px}
.astatus i{width:7px;height:7px;border-radius:50%;background:currentColor}
.astatus.good{color:var(--ok);background:color-mix(in srgb,var(--ok) 12%,transparent)}
.astatus.bad{color:var(--danger);background:color-mix(in srgb,var(--danger) 12%,transparent)}
.astats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:12px;overflow:hidden}
.astat{background:var(--panel);padding:9px 10px;min-width:0;display:flex;flex-direction:column;gap:2px}
.acard.off .astat{background:transparent}
.astat .lbl{font-size:.62rem;margin:0;line-height:1.25;overflow-wrap:anywhere}
.astat b{font-weight:600;font-size:.88rem;overflow-wrap:anywhere}
.aquota{display:block;height:4px;border-radius:99px;background:var(--field);overflow:hidden;margin-top:3px}
.aquota i{display:block;height:100%;background:var(--ok);border-radius:99px}
.aquota.full i{background:var(--warn)}
.awant{font-size:.88rem;padding:10px 12px;border-radius:10px;background:var(--accent-soft);overflow-wrap:anywhere}
.awant b{color:var(--accent)}
.awant div{margin-top:4px;white-space:pre-wrap}
.acard-acts{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding-top:12px;border-top:1px dashed var(--line);margin-top:auto}
.acard-acts .agroup{display:inline-flex;gap:4px;align-items:center}
.acard-acts input[type=date]{width:auto;padding:5px 8px;font-size:.8rem}
.acard-acts .moremenu{margin-left:auto}
.acard-acts .morepop,.scard .morepop{left:auto;right:0;background:var(--panel)}
.scard{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;align-items:center;padding:14px 12px;margin:0 -12px;border-bottom:1px solid var(--line);border-radius:12px;transition:background .15s}
.scard:hover{background:var(--field)}
.scard.off{opacity:.7}
.scard-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:4px}
.scard h3.nm{margin:0 0 2px;font-size:1.02rem;font-weight:600;overflow-wrap:anywhere}
.scard h3.nm a{color:inherit;text-decoration:none}
.scard h3.nm a:hover{text-decoration:underline}
.scard .meta{font-size:.82rem;color:var(--muted);overflow-wrap:anywhere}
.sorigin{font-size:.68rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:6px}
.sorigin.o-new{color:var(--ok);background:color-mix(in srgb,var(--ok) 13%,transparent)}
.sorigin.o-tpl{color:var(--warn);background:color-mix(in srgb,var(--warn) 14%,transparent)}
.sorigin.o-crowd{color:var(--muted);background:var(--field)}
.sorigin.o-sys{color:var(--accent);background:var(--accent-soft)}
.slive{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:600;color:var(--danger)}
.slive i{width:7px;height:7px;border-radius:50%;background:currentColor;animation:hzpulse 1.6s ease-in-out infinite}
@keyframes hzpulse{50%{opacity:.35}}
.schips{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.schip{font-size:.75rem;color:var(--muted);border:1px solid var(--line);border-radius:99px;padding:1px 9px;background:var(--panel)}
.schip.strong{color:var(--text)}
.schip.acc{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.schip.bad{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 45%,var(--line))}
.scard-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.scard-side .acts{display:flex;gap:6px}
.scode{font-family:ui-monospace,Menlo,monospace;letter-spacing:.12em;font-size:.86rem;color:var(--dim)}
@media(max-width:560px){.astats{grid-template-columns:repeat(2,minmax(0,1fr))}.scard{grid-template-columns:1fr;margin:0 -6px;padding:14px 6px}.scard-side{flex-direction:row;align-items:center;justify-content:space-between}.admchip{padding-top:6px;padding-bottom:6px}}

@media(max-width:560px){.p-main{flex-direction:column;align-items:stretch}.p-side{order:-1}.card{padding:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.theme-btn{flex:none;width:34px;height:34px;display:grid;place-items:center;background:var(--panel);color:var(--muted);border:1px solid var(--line2);border-radius:50%;cursor:pointer;padding:0}
.theme-btn:hover{color:var(--accent);border-color:var(--accent)}
.dk-tabs{border:1px solid var(--line);border-radius:99px;padding:3px;background:var(--panel)}
.dk-tabs button{border:0;background:transparent;color:var(--muted);font:inherit;font-weight:600;font-size:.88rem;padding:8px 18px;border-radius:99px;cursor:pointer;min-height:0}
.dk-tabs button[aria-selected=true]{background:var(--accent);color:var(--on,#fff)}
.wm{display:inline-flex;align-items:center;gap:7px;font-family:inherit;font-weight:600;font-size:.74rem;line-height:1;color:var(--muted);opacity:.8;text-decoration:none;padding:6px 11px;border-radius:99px;background:var(--panel);border:1px solid var(--line);white-space:nowrap}
.wm:hover{opacity:1;color:var(--accent);border-color:var(--accent)}
.wm i{display:inline-flex;width:22px;height:22px;flex:none}.wm i svg{width:100%;height:100%;display:block}.wm b{font-weight:800;color:var(--ink,inherit)}
/* Kostenlos: Logo + „Mit Handzeichen gemacht“, dezent; Pro: kleiner Punkt */
.wm:not(.pro){font-size:.86rem;padding:6px 13px 6px 7px;gap:8px;opacity:.9}
.wm.pro{font-size:.74rem;padding:6px 11px}.wm.pro i{width:8px;height:8px;border-radius:50%;background:var(--accent)}.wm.pro i svg{display:none}.wm.pro b{font-weight:600;color:inherit}
body.wm-pro .wm.fixed:not(.pro){font-size:.74rem;padding:6px 11px;gap:7px;box-shadow:none}body.wm-pro .wm.fixed i{width:8px;height:8px;border-radius:50%;background:var(--accent)}body.wm-pro .wm.fixed i svg{display:none}body.wm-pro .wm.fixed b{font-weight:600;color:inherit}
.wm.fixed{position:fixed;left:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:60}
body.has-wm #app{padding-bottom:58px}
/* Handy: Badge nicht schwebend, sonst liegt es beim Scrollen über Reaktionen, Terminraster und Buttons; es steht dann am Seitenende */
@media(max-width:700px){.wm.fixed{position:static;display:flex;width:max-content;max-width:calc(100% - 28px);margin:24px auto calc(16px + env(safe-area-inset-bottom))}body.has-wm{display:flex;flex-direction:column}body.has-wm>#app{flex:1 0 auto}body.has-wm #app{padding-bottom:0}}
/* Touch: Like-Knöpfe groß genug zum Tippen */
@media(pointer:coarse){.like{min-height:40px}}
.seg{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:1px;background:var(--line)}
.seg button{background:var(--panel);border-right:0}
.seg button.on{background:linear-gradient(var(--accent-soft),var(--accent-soft)),var(--panel)}
.opt.sel{border-color:var(--accent);background:var(--accent-soft)}
.notick .tick{display:none}
.slide-img{display:block;max-width:100%;max-height:min(40vh,360px);margin:0 auto 18px;border-radius:var(--radius);object-fit:contain}
/* Teilnehmer-Ansicht: Bild richtet sich nach der Bildschirmhöhe; nach der Antwort wird es kleiner, damit Ergebnis und Weiter auf den Screen passen */
.vcard>.slide-img{max-height:min(var(--fit,999px),26vh,260px)}
.vcard.vres>.slide-img{max-height:min(var(--fit,999px),13vh,140px);margin-bottom:12px;animation:imgShrink .35s ease-out}
.vcard>.slide-img.fit-hide{display:none}
.vcard.vtight .big{font-size:1.2rem;margin-bottom:8px}.vcard.vtight .thanks{margin-bottom:6px;font-size:.85rem}.vcard.vtight .results .rrow{margin:5px 0}.vcard.vtight .quizres .rrow{padding:4px 8px;margin:4px 0}.vcard.vtight .rtop{margin-bottom:3px}.vcard.vtight .bar{height:7px}.vcard.vtight .avg{font-size:1.3rem;margin-top:4px}
@keyframes imgShrink{from{max-height:min(26vh,260px)}}
@media(prefers-reduced-motion:reduce){.vcard.vres>.slide-img{animation:none}}
@media(max-width:600px),(max-height:820px){.vcard .thanks{margin-bottom:10px}.vcard .results .rrow{margin:10px 0}.vcard .quizres .rrow{padding:6px 10px;margin:6px 0}.vcard .rtop{margin-bottom:5px;gap:10px}.vcard .badge{width:26px;height:26px;font-size:.82rem}.vcard .bar{height:10px}.vcard .avg{display:flex;align-items:baseline;justify-content:center;gap:10px;margin-top:8px;font-size:1.6rem}.vcard .avg small{margin:0}.vcard .results .total{margin:4px 0 0}}
.imain{flex:1;min-width:0}
.reacts{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.rx{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:transparent;border-radius:99px;padding:1px 9px;font-size:.88rem;cursor:pointer;line-height:1.5}
.rx b{font-weight:500;font-size:.75rem;color:var(--muted)}
button.rx:hover{border-color:var(--accent)}
.rx.on{border-color:var(--accent);background:var(--accent-soft)}
.rx.static{cursor:default}
.p-slide .rx{font-size:clamp(1rem,1.6vw,1.4rem)}

.libcard.show{padding:0;overflow:hidden;gap:0}
.libcard.show>*:not(.stagewrap):not(.pdots){margin-left:20px;margin-right:20px}
.libcard.show h3{margin-top:4px}
.libcard.show .desc{margin-bottom:10px}
.libcard.show .meta{margin-bottom:10px}
.libcard.show .acts,.libcard.show>.row{margin-bottom:20px}
.stagewrap{position:relative;height:270px;overflow:hidden;background:var(--accent-soft);border-bottom:1px solid var(--line)}
.pstage{padding:14px 16px;pointer-events:none;user-select:none;max-height:100%;overflow:hidden;-webkit-mask-image:linear-gradient(#000 78%,transparent);mask-image:linear-gradient(#000 78%,transparent)}
.prev .pq{font-weight:600;font-size:.98rem;line-height:1.3;margin:0 0 10px}
.prev .results{font-size:.9rem}
.prev .plane{max-height:190px;aspect-ratio:auto;height:190px}
.coverimg{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:linear-gradient(135deg,#0f172a,#1e1b4b);display:block}
.coverimg.hidden,.pstage.hidden{display:none}
@keyframes sk{0%,100%{opacity:.5}50%{opacity:1}}
.skel{height:340px;border-radius:16px;background:var(--accent-soft);animation:sk 1.2s ease-in-out infinite}
.pdots{position:relative}.pdots .prevtag{top:7px;bottom:auto}
.prevtag{position:absolute;right:10px;bottom:8px;font-size:.68rem;color:var(--muted);background:var(--bg,#fff);padding:2px 8px;border-radius:99px;border:1px solid var(--line)}
.pdots{display:flex;gap:6px;justify-content:center;padding:10px 0 4px}
.pdot{width:8px;height:8px;border-radius:50%;border:0;background:var(--line);padding:0;cursor:pointer}
.pdot.on{background:var(--accent)}
/* Vorschau-Karten: Titelbild + Story beim Hovern */
.stagewrap.story{display:block;margin-bottom:14px;color:inherit;text-decoration:none;isolation:isolate}
.scover{position:absolute;inset:0;z-index:0;display:flex;align-items:flex-end;padding:20px;transition:opacity .35s ease;background:radial-gradient(120% 90% at 100% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),var(--accent-soft)}
.scover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}
.scover.wimg{background:#111}
.scover.wimg::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(transparent 35%,rgba(0,0,0,.72))}
.sctext{position:relative;min-width:0}
.scbar{display:block;width:28px;height:3px;border-radius:2px;background:var(--accent);margin-bottom:10px}
.sctitle{font-family:var(--serif);font-weight:700;font-size:1.45rem;line-height:1.15;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--text)}
.scsub{margin-top:6px;font-size:.82rem;color:var(--muted)}
.scover.wimg .sctitle{color:#fff}.scover.wimg .scsub{color:rgba(255,255,255,.8)}.scover.wimg .scbar{background:#fff}
.splay{position:absolute;top:12px;right:12px;display:inline-flex;align-items:center;gap:5px;font-size:.7rem;font-weight:600;padding:4px 9px;border-radius:99px;background:rgba(0,0,0,.55);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:opacity .25s}
.splay svg{width:12px;height:12px}
.sstage{position:absolute;inset:0;padding:26px 16px 14px;pointer-events:none;user-select:none;overflow:hidden;background:var(--accent-soft);opacity:0;transition:opacity .35s ease;-webkit-mask-image:linear-gradient(#000 82%,transparent);mask-image:linear-gradient(#000 82%,transparent)}
.sstage>.prev{position:absolute;inset:26px 16px 14px;opacity:0;transition:opacity .35s ease}
.sstage>.prev.in{opacity:1}
.prev.wimg{display:grid;grid-template-columns:40% 1fr;gap:12px;align-items:start}
.prev .spimg{width:100%;height:100%;max-height:220px;object-fit:cover;border-radius:8px;display:block}
.profgrid .prev .spimg{max-height:150px}
.prev.sinfo{display:flex;flex-direction:column;gap:10px}
.prev.sinfo .pq{font-family:var(--serif);font-size:1.2rem}
.prev.sinfo.wimg .spimg{max-height:170px;order:-1}
.profgrid .prev.sinfo.wimg .spimg{max-height:110px}
.sbars{position:absolute;top:10px;left:12px;right:12px;display:flex;gap:4px;opacity:0;transition:opacity .25s;z-index:2}
.sbars span{flex:1;height:3px;border-radius:2px;background:color-mix(in srgb,var(--text,#000) 15%,transparent);overflow:hidden}
.sbars i{display:block;height:100%;width:0;background:var(--accent)}
.sbars .done i{width:100%}
.sbars .run i{animation:sbar 3.5s linear forwards}
@keyframes sbar{to{width:100%}}
.stagewrap.story .prevtag{opacity:0;transition:opacity .25s;z-index:2}
.stagewrap.story.playing .sstage,.stagewrap.story.playing .sbars,.stagewrap.story.playing .prevtag{opacity:1}
.stagewrap.story.playing .scover{opacity:0}
.stagewrap.story:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
@media (prefers-reduced-motion:reduce){.scover,.sstage,.sstage>.prev{transition:none}.sbars .run i{animation:none;width:100%}}
.dfacts{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;font-size:.82rem;color:var(--muted);margin-bottom:10px}
.dfacts .dn{font-weight:600;color:var(--text)}
.dfacts .dks{display:inline-flex;gap:4px}
.dfacts .dk{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;background:var(--accent-soft);color:var(--accent)}
.dfacts .dk svg{width:14px;height:14px}
.dfacts .dkm{font-size:.75rem;align-self:center}
.showgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.steps{margin:6px 0 16px;padding-left:1.3em;line-height:1.6}
.steps li{margin:2px 0}
.embgrid{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start}
.snip{display:block;font-size:.8rem;padding:8px 10px;border:1px solid var(--line);border-radius:10px;word-break:break-all;background:var(--accent-soft);margin-top:4px;user-select:all}
.howto{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.howto summary{cursor:pointer;font-weight:500}
.howto p{font-size:.92rem;line-height:1.5;color:var(--dim)}
.proimport{margin-top:16px;border:1px dashed var(--line);border-radius:16px;padding:14px 16px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.proimport.off{opacity:.62}
.probadge{font-size:.68rem;font-weight:600;letter-spacing:.06em;padding:2px 8px;border-radius:99px;background:var(--accent);color:#fff}
.btn[disabled].soon{cursor:not-allowed}
.proimport.big{margin:0 0 18px;border-style:solid;border-color:color-mix(in srgb,var(--accent) 45%,var(--line));background:color-mix(in srgb,var(--accent) 7%,transparent);padding:18px 20px}
.proimport.big.off{opacity:1}
.proimport.big{font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5;letter-spacing:normal}.proimport.big .ttl{font-weight:600}
.ibusy{margin-top:4px;font-size:.86rem;color:var(--muted)}.ibusy .ibar{height:4px;border-radius:99px;background:color-mix(in srgb,var(--accent) 14%,transparent);overflow:hidden;margin-bottom:8px}.ibusy .ibar i{display:block;height:100%;width:0;border-radius:99px;background:var(--accent);transition:width .6s ease}.ibusy .istep{display:flex;align-items:center;gap:8px;animation:fade .3s}.ibusy .istep::before{content:'';width:12px;height:12px;flex:none;border-radius:50%;border:2px solid color-mix(in srgb,var(--accent) 25%,transparent);border-top-color:var(--accent);animation:spin .8s linear infinite}
.prostar{display:inline-flex;color:var(--accent)}
.proview .prohero{border:1px solid color-mix(in srgb,var(--accent) 40%,var(--line));background:color-mix(in srgb,var(--accent) 7%,var(--panel));border-radius:16px;padding:20px 22px;margin-bottom:8px}
.proview .prohero-t{display:flex;align-items:center;gap:10px;font-size:1.08rem}
.proview .prohero p{margin:10px 0 0;max-width:62ch}
.proview .proask{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.proview .proask input{flex:1 1 260px;margin:0}
.proview .prowrap{margin-top:30px}
.proview .prosec{scroll-margin-top:84px;margin-bottom:12px}.proview .prosec h2{margin:0;font-size:1.2rem}.proview .prosec p{margin:4px 0 0;font-size:.92rem;max-width:68ch}
.proview .prolock{display:flex;align-items:center;gap:8px;font-size:.88rem;color:var(--muted);margin:0 0 10px}
.proview .proimport.big{margin:0}
.probrandshow{margin:0;padding:10px}.probrandshow img{display:block;width:100%;height:auto;border-radius:10px}.probrandshow figcaption{font-size:.86rem;margin:10px 4px 2px}
.protiles2{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}
.protile2{display:flex;flex-direction:column;gap:6px;border:1px solid var(--line);border-radius:14px;padding:16px 18px;background:var(--panel)}
.protile2 b{font-size:1.02rem}.protile2 p{margin:0;flex:1;font-size:.88rem;color:var(--muted)}
.protile2 .pt2f{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;font-size:.88rem}.protile2 .pt2f a{color:var(--accent);text-decoration:none}.protile2 .pt2f a:hover{text-decoration:underline}
.profeat{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.pfeat{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:var(--panel)}
.pfeat .pfi{flex:none;display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}
.pfeat b{display:block;font-size:.98rem}.pfeat p{margin:4px 0 0;font-size:.88rem;color:var(--muted)}
.pfeat a,.pfeat .linkbtn{display:inline-block;margin-top:8px;font-size:.88rem;color:var(--accent);background:none;border:0;padding:0;cursor:pointer;font:inherit;font-size:.88rem;text-decoration:none}.pfeat a:hover,.pfeat .linkbtn:hover{text-decoration:underline}
.importmin{display:flex;align-items:center;gap:8px;margin:28px 0 0;padding-top:14px;border-top:1px solid var(--line);font-size:.86rem;color:var(--muted)}.importmin .probadge{transform:scale(.85)}.importmin .linkbtn{background:none;border:0;padding:6px 2px;color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}.importmin .linkbtn:hover{color:var(--accent)}
.moremenu{position:relative;display:inline-block}
.moremenu>summary{list-style:none;cursor:pointer}
.moremenu>summary::-webkit-details-marker{display:none}
.morepop{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;gap:6px;padding:10px;background:var(--card,#fff);border:1px solid var(--line);border-radius:14px;box-shadow:0 8px 24px rgba(0,0,0,.18);min-width:210px}
.morepop .btn{justify-content:flex-start;text-align:left}
.calsplit{display:inline-flex;align-items:stretch;gap:6px;min-width:0;max-width:100%}.qk-row .calsplit{flex:1 1 240px}
.calsplit>a.btn{flex:1 1 auto;min-width:0;text-decoration:none;text-align:center}.calsplit>a.btn>span{overflow:hidden;text-overflow:ellipsis}
.calsplit .calmore>summary{height:100%;padding-left:12px;padding-right:12px}
.card:has(.calmore[open]),.dt-fin:has(.calmore[open]){position:relative;z-index:30}
.calmore .morepop{min-width:230px;left:auto;right:0}.calmore .morepop .btn{flex:none;width:100%;text-decoration:none}.calmore .morepop p{margin:0 2px 2px;font-size:.78rem}
.proimport.big .ttl{font-weight:600;font-size:1.05rem}
.deckrow{padding:14px 0;border-bottom:1px solid var(--line)}
.tagrow{display:flex;gap:6px;flex-wrap:wrap}
.tag{border:0;background:var(--soft,rgba(138,58,44,.1));color:var(--accent,inherit);border-radius:99px;padding:2px 10px;font:600 .76rem inherit;cursor:default}
button.tag{cursor:pointer}button.tag:hover{filter:brightness(1.15)}
.pwforgot{margin-top:4px;font-size:.9rem}.pwforgot summary{cursor:pointer;color:var(--muted,#888);width:max-content}
.tagbar{display:grid;gap:12px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px}
.taggrp{display:grid;grid-template-columns:170px 1fr;gap:6px 12px;align-items:baseline}
.taggrp-h{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted,#888)}
.taggrp-l{display:flex;gap:6px;flex-wrap:wrap}
@media (max-width:600px){.taggrp{grid-template-columns:1fr}}
.tagbar .tag{cursor:pointer;padding:5px 12px;border:1px solid var(--line)}
.tagbar .tag.on{background:var(--accent,#ea425b);color:var(--on,#fff);border-color:transparent}
.libtools{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.libtools input{flex:1;min-width:200px;margin:0}
.byline{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.88rem;margin-bottom:10px;color:var(--muted)}
.byline a{color:var(--ink);font-weight:600;text-decoration:none}.byline a:hover{text-decoration:underline}
.byline .off{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:1px 7px;border-radius:99px;background:var(--accent);color:#fff;margin-left:6px;vertical-align:1px}
.upbtn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:transparent;color:var(--ink);border-radius:99px;padding:5px 12px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.upbtn.on{background:var(--accent);border-color:var(--accent);color:#fff}
.rstars{--rs:14px;display:inline-flex;gap:1px;vertical-align:-2px;flex:none}
.rstars i{width:var(--rs);height:var(--rs);display:block;background:linear-gradient(90deg,#e0a526 calc(var(--f)*100%),var(--line) calc(var(--f)*100%));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6-4.9-4.6 6.6-.8z'/%3E%3C/svg%3E") center/contain no-repeat}
.rbadge{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:99px;padding:4px 11px;font-size:.84rem;font-weight:700;text-decoration:none;white-space:nowrap;color:var(--text)}
.rbadge:hover{border-color:#e0a526}
.rbadge small{font-weight:500;color:var(--muted);font-size:.8rem}
.rbadge.none{font-weight:600;color:var(--muted)}
.rbadge.none .hzi{color:#e0a526}
.rsum{display:grid;grid-template-columns:minmax(140px,auto) 1fr;gap:18px 28px;align-items:center}
.rbig{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.rbig b{font-size:2.6rem;line-height:1;font-weight:800;letter-spacing:-.02em}
.rbig .muted{font-size:.85rem}
.rdist{display:grid;gap:5px;min-width:0}
.rdrow{display:grid;grid-template-columns:2.4em 1fr 2em;gap:10px;align-items:center;font-size:.84rem}
.rdrow .fbbar{height:8px}
.rdrow .fbbar i{background:#e0a526}
#bewertungen .rate{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
#bewertungen .rate textarea{width:100%}
.rcoms{margin-top:20px;padding-top:14px;border-top:1px solid var(--line);display:grid;gap:10px}
.rcoms h3{margin:0 0 2px}
.rcom{background:var(--field);border-radius:12px;padding:10px 14px}
.rcom-h{display:flex;align-items:center;gap:10px;font-size:.8rem}
.rcom p{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:480px){.rsum{grid-template-columns:1fr}.rbig{flex-direction:row;align-items:center;gap:10px;flex-wrap:wrap}}
.uhead{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:7vh 0 28px}
.uav{flex:none;width:72px;height:72px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:2rem;font-weight:700;text-transform:uppercase}
.uhead h1{margin:0;font-size:1.8rem}.ustats{display:flex;gap:16px;flex-wrap:wrap;color:var(--muted);font-size:.92rem;margin-top:4px}
.libgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.libsec{grid-column:1/-1;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:14px 0 -4px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.libsec:first-child{margin-top:0}.libsec p{flex-basis:100%;margin:0;font-size:.88rem;color:var(--muted)}
.srcseg{display:inline-flex;border:1px solid var(--line);border-radius:99px;padding:3px;gap:3px;background:var(--panel)}
.srcseg button{border:0;background:transparent;color:var(--muted);font:inherit;font-size:.92rem;font-weight:600;padding:8px 16px;min-height:40px;border-radius:99px;cursor:pointer;display:inline-flex;align-items:center;gap:8px}
.srcseg button b{font-size:.75rem;font-weight:700;padding:1px 7px;border-radius:99px;background:var(--line);color:var(--text)}
.srcseg button.on{background:var(--accent);color:#fff}.srcseg button.on b{background:rgba(255,255,255,.25);color:#fff}
.srcseg button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.libcard{display:flex;flex-direction:column;gap:10px;padding:20px;border:1px solid var(--line);border-radius:20px;background:var(--card,transparent)}
.libcard h3{margin:0;font-size:1.1rem;line-height:1.3}
.libcard .desc{color:var(--dim);font-size:.9rem;line-height:1.45;flex:1}
.libcard .meta{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:.8rem;color:var(--dim)}
.libcard .acts{display:flex;gap:8px;flex-wrap:wrap}
.libcard .acts .btn.main{flex:1 1 100%}
.forkbadge{display:inline-block;padding:2px 9px;border-radius:99px;background:var(--line);font-size:.74rem;color:var(--dim);white-space:nowrap}
details.settings>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px}
details.settings>summary::-webkit-details-marker{display:none}
details.settings>summary::after{content:'';flex:none;width:7px;height:7px;margin:0 4px 4px 0;border:solid var(--dim);border-width:0 1.9px 1.9px 0;border-radius:0 0 2px 0;transform:rotate(45deg);transition:transform .2s}
details.settings[open]>summary::after{content:'';transform:translateY(4px) rotate(225deg)}
.check.switch input{appearance:none;-webkit-appearance:none;flex:none;width:46px;height:28px;margin:0;border-radius:99px;background:var(--line);position:relative;cursor:pointer;transition:background .2s}
.check.switch input::after{content:'';position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:transform .2s}
.check.switch input:checked{background:var(--accent)}
.check.switch input:checked::after{transform:translateX(18px)}
.report{position:fixed;inset:0;z-index:120;overflow:auto;background:#fff;color:#111;color-scheme:light;-webkit-print-color-adjust:exact;print-color-adjust:exact;
  --bg:#fff;--panel:#fff;--field:#f1eee8;--line:#ddd6c9;--line2:#c4bcad;--text:#111;--muted:#666;--dim:#333;--accent:#ea425b;--bar:#b9ad9a;--ok:#47653c;--warn:#8a6411;
  --p0:#262019;--p1:#ea425b;--p2:#2a5a8a;--p3:#47653c;--p4:#6a6258;--p5:#9c3320;--p6:#52646d;--p7:#8a6411}
.rbar{position:sticky;top:0;display:flex;gap:10px;padding:calc(12px + env(safe-area-inset-top)) 24px 12px;background:#fff;border-bottom:1px solid var(--line);z-index:1}
.rpage{max-width:820px;margin:0 auto;padding:24px}
.rpage h1{font-family:var(--serif);font-weight:400;margin:0 0 4px}
.rslide{padding:20px 0;border-bottom:1px solid var(--line);break-inside:avoid}
.rslide h3{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:4px 0 12px}
.report .bar>i{transition:none}
.report .cloud .w{animation:none}
.report .btn.danger,.report .hiddenhint{display:none}
@media print{body>*:not(.report){display:none!important}body{overflow:visible!important}.report{position:static;overflow:visible}.noprint{display:none!important}}
.theme-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
/* ===== Design 2: weich, bunt, in Bewegung ===== */
@font-face{font-family:Gabarito;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/gabarito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Gabarito;font-style:normal;font-weight:400 900;font-display:swap;src:url(/fonts/gabarito-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:Onest;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/onest-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
:root{
  --serif:Gabarito,ui-rounded,system-ui,sans-serif;
  --radius:18px;--r-sm:12px;
  --bg:#f7f1e6;--panel:#fffcf5;--panel2:#ffffff;--field:#f1eadb;--line:#e6dcc9;--line2:#cfc2a8;
  --text:#2a2018;--muted:#7a6d5c;--dim:#52463a;--accent:#d8472b;--accent-hover:#b93a22;--accent-soft:rgba(216,71,43,.1);
  --bar:#cfc2a8;--ok:#3f8a57;--warn:#a8700a;--danger:#c23a22;--on-text:#fffcf5;--shadow:0 14px 34px -14px rgba(60,40,20,.35);
  --card-sh:0 1px 0 rgba(255,255,255,.9) inset,0 10px 30px -18px rgba(70,45,20,.35);
  --p0:#d8472b;--p1:#c4850a;--p2:#3f8a57;--p3:#25798a;--p4:#8a4f9e;--p5:#d4608d;--p6:#3f6bd1;--p7:#a8683a;
}
@media not all{:root:not([data-theme="light"]){
  --bg:#1b1511;--panel:#251d17;--panel2:#2e251d;--field:#171210;--line:#3a2f25;--line2:#53443a;
  --text:#f6ede0;--muted:#a99985;--dim:#d6c8b4;--accent:#ff7a5c;--accent-hover:#ff9a82;--accent-soft:rgba(255,122,92,.14);
  --bar:#53443a;--ok:#7fcf93;--warn:#f0b44c;--danger:#ff8a72;--on-text:#1b1511;--shadow:0 14px 34px -14px rgba(0,0,0,.7);
  --card-sh:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);
  --p0:#ff7a5c;--p1:#f5b73b;--p2:#7fcf93;--p3:#4fb8cb;--p4:#c08bdb;--p5:#f391b5;--p6:#82a3f5;--p7:#dca674;
}}
:root[data-theme="dark"]{
  --bg:#1b1511;--panel:#251d17;--panel2:#2e251d;--field:#171210;--line:#3a2f25;--line2:#53443a;
  --text:#f6ede0;--muted:#a99985;--dim:#d6c8b4;--accent:#ff7a5c;--accent-hover:#ff9a82;--accent-soft:rgba(255,122,92,.14);
  --bar:#53443a;--ok:#7fcf93;--warn:#f0b44c;--danger:#ff8a72;--on-text:#1b1511;--shadow:0 14px 34px -14px rgba(0,0,0,.7);
  --card-sh:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);
  --p0:#ff7a5c;--p1:#f5b73b;--p2:#7fcf93;--p3:#4fb8cb;--p4:#c08bdb;--p5:#f391b5;--p6:#82a3f5;--p7:#dca674;
}
body{font-family:Onest,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.card{border-radius:24px;box-shadow:var(--card-sh);border-color:var(--line)}
.card h2,.big,.hero h1,.stat b,.verdict,details.card>summary,.avg,.rpage h1,.rslide h3,.p-lobby h1{font-weight:650;letter-spacing:-.02em}
.code,.join-input{font-weight:700}
/* Live-Ansicht (Deck/Embed): weichere Schrift, ruhigere Balken */
.embed .big,.embed .avg,.embed .p-lobby h1,.embed .code{font-weight:500;letter-spacing:-.012em}
.embed .p-head{font-weight:400}
.embed .rlabel{font-weight:400}
.embed .val{font-weight:500}
.emb-rv{position:fixed;right:12px;bottom:12px;z-index:2147483000;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;border:1px solid var(--line);background:color-mix(in srgb,var(--bg) 88%,transparent);color:var(--text);font:500 .9rem/1 var(--sans,system-ui);cursor:pointer;opacity:.45;transition:opacity .15s}
.emb-rv:hover,.emb-rv:focus-visible,.emb-rv.on{opacity:1}.emb-rv.on{background:var(--accent);color:var(--on,#fff);border-color:var(--accent)}
.emb-rv svg{width:18px;height:18px}.emb-rv.hidden{display:none}
.wchips{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.wchips:empty{display:none}.wchip{padding:5px 12px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-size:.95rem;overflow-wrap:anywhere}
.modetgl{position:relative;display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:420px;margin:0 0 12px;padding:4px;border:1px solid var(--line);border-radius:12px;background:var(--field,var(--bg));cursor:pointer;font:600 1rem/1 var(--serif);color:var(--muted)}
.modetgl .mt-knob{position:absolute;top:4px;bottom:4px;left:4px;width:calc(50% - 4px);border-radius:8px;background:var(--panel);box-shadow:0 1px 3px rgba(0,0,0,.14);transition:translate .25s cubic-bezier(.2,.7,.3,1),background .2s}
.modetgl.on .mt-knob{translate:100% 0;background:var(--accent)}
.modetgl .mt-opt{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 10px;transition:color .2s}
.modetgl .mt-opt svg{width:18px;height:18px}
.modetgl:not(.on) .mt-live,.modetgl.on .mt-async{color:var(--text)}.modetgl.on .mt-async{color:var(--on,#fff)}
.modetgl:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media (prefers-reduced-motion:reduce){.modetgl .mt-knob{transition:none}}
.rm .modetgl .mt-knob{transition:none}
body.embed .p-main{flex-direction:row;align-items:center}body.embed .p-side{order:0}
body.embed .p-head{flex-direction:row;align-items:center}body.embed .p-join{justify-content:flex-end}
input,textarea,select{border-radius:var(--r-sm);border-width:1.5px;padding:12px 14px}
input:focus,textarea:focus,select:focus{box-shadow:0 0 0 4px var(--accent-soft)}
.btn{border-radius:99px;padding:11px 22px;font-weight:600;box-shadow:0 2px 0 rgba(0,0,0,.18);transition:transform .15s cubic-bezier(.3,1.6,.5,1),background .18s,border-color .18s,color .18s,box-shadow .15s}
.btn:hover{transform:translateY(-1px) rotate(-.4deg)}
.btn:active{box-shadow:none}
.btn.ghost,.btn.danger{box-shadow:none;border-width:1.5px}
.btn.small{padding:6px 14px}
.btn.big{padding:15px 32px;font-size:1rem}
.pill{border-width:1.5px}
.qr-box{border-radius:var(--r-sm)}
.seg{border-radius:var(--r-sm);border:1.5px solid var(--line)}
.seg button.on{box-shadow:inset 0 -3px 0 var(--accent);font-weight:600}
.toast{border-radius:var(--r-sm)}
.modal{border-radius:26px;box-shadow:var(--shadow)}
.stat{border-radius:var(--radius);box-shadow:var(--card-sh)}
.stat:nth-child(4n+1) b{color:var(--p0)}.stat:nth-child(4n+2) b{color:var(--p3)}.stat:nth-child(4n+3) b{color:var(--p2)}.stat:nth-child(4n+4) b{color:var(--p4)}
.tick{border-radius:var(--r-sm);border-width:1.5px}
.cred{border-radius:var(--r-sm)}
.dropzone{border-radius:var(--radius);border-width:2px}
.slide-item{border-radius:var(--r-sm);border-bottom-color:transparent;margin-bottom:2px}
.slide-item.active{box-shadow:inset 4px 0 0 var(--accent);border-radius:var(--r-sm)}
.like,.chip,.rx{border-width:1.5px}
.like{transition:transform .18s cubic-bezier(.3,1.8,.5,1),all .18s}
.like:active,.rx:active{opacity:.8}
.like.on,.rx.on{animation:none}
.ideas.spotlit .idea{justify-content:center;text-align:center;padding:28px 22px}.ideas.spotlit .itext{font-size:clamp(1.3rem,3.4vw,2.6rem);font-family:var(--serif);line-height:1.25;flex:none;max-width:100%}.p-slide .ideas.spotlit .itext{font-size:clamp(1.8rem,4.6vw,3.6rem)}.idea.spot{outline:2px solid var(--accent)}
.idea{border-bottom-color:transparent;background:var(--field);border-radius:var(--radius);padding:14px 16px;margin-bottom:8px}
.slide-img{border-radius:var(--radius)}
.masked{border-radius:var(--radius);border:2px dashed var(--line2)}

/* Teilnehmende: dicke, tastenartige Antwortfelder */
.opt{border-radius:20px;border:2px solid var(--line);background:var(--panel2);padding:18px 20px;font-size:1.08rem;font-weight:500;
  box-shadow:0 4px 0 var(--line2);transform:translateY(0);
  transition:transform .14s cubic-bezier(.3,1.8,.5,1),box-shadow .14s,border-color .18s,background .18s;animation:rise .5s cubic-bezier(.2,.9,.3,1.2) both}
.opt:hover{border-color:var(--oc,var(--accent));background:var(--panel2)}
.opt:active,.opt.pressed{background:var(--accent-soft)}
.opt.sel{border-color:var(--oc,var(--accent));background:var(--accent-soft)}
.opt:disabled{opacity:.7}
.badge{width:32px;height:32px;font-weight:700;font-size:.92rem;border-width:1.5px;transition:transform .2s cubic-bezier(.3,1.8,.5,1)}
.opt:hover .badge{transform:rotate(-8deg) scale(1.1)}
.scale .opt{font-weight:700;padding:24px 0;border-radius:18px}
.scale .opt:nth-of-type(1){animation-delay:0s}.scale .opt:nth-of-type(2){animation-delay:.05s}.scale .opt:nth-of-type(3){animation-delay:.1s}.scale .opt:nth-of-type(4){animation-delay:.15s}.scale .opt:nth-of-type(5){animation-delay:.2s}
.card>.opt:nth-of-type(1){animation-delay:.04s}.card>.opt:nth-of-type(2){animation-delay:.1s}.card>.opt:nth-of-type(3){animation-delay:.16s}.card>.opt:nth-of-type(4){animation-delay:.22s}.card>.opt:nth-of-type(5){animation-delay:.28s}.card>.opt:nth-of-type(n+6){animation-delay:.34s}
@keyframes rise{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}
@keyframes plop{0%{transform:scale(.8)}60%{transform:scale(1.18)}100%{transform:scale(1)}}
.fade{animation:rise .5s cubic-bezier(.2,.9,.3,1.2) both}

/* Ergebnisse: jede Option mit eigener Farbe, Balken federn */
.bar{height:16px;background:var(--field);box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}
.bar>i{background:var(--c,var(--bar))!important;transition:width 1s cubic-bezier(.34,1.45,.5,1);position:relative}
.bar>i::after{content:"";position:absolute;left:5px;right:5px;top:3px;height:4px;border-radius:99px;background:rgba(255,255,255,.28)}
.rrow.lead .bar>i{background:var(--c,var(--accent))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--c,var(--accent)) 25%,transparent)}
.rrow.correct .bar>i{background:var(--ok)!important}
.rrow .badge[style*="--c"]{background:var(--c);border-color:transparent;color:#fff}
.rrow.lead .badge{transform:scale(1.12)}
.rrow.correct .badge[style*="--c"]{background:var(--ok);color:#fff}
.rrow{animation:rise .5s cubic-bezier(.2,.9,.3,1.2) both}
.rrow:nth-child(2){animation-delay:.05s}.rrow:nth-child(3){animation-delay:.1s}.rrow:nth-child(4){animation-delay:.15s}.rrow:nth-child(5){animation-delay:.2s}.rrow:nth-child(n+6){animation-delay:.25s}
.rrow.lead .val{font-weight:700}
.p-slide .bar{height:clamp(14px,2vh,26px)}
.p-slide .slide-img{max-height:min(62vh,900px);width:auto;max-width:100%;margin-bottom:3vh;cursor:zoom-in}
/* Folie mit Bild: Bild links groß, Ergebnisse rechts */
@media(min-width:900px){
  .p-slide:has(>.p-img>.slide-img){display:grid;grid-template-columns:minmax(0,calc(var(--pis,1) * 68%)) minmax(260px,1fr);column-gap:clamp(24px,3vw,48px);align-items:center;align-content:center}
  .p-slide:has(>.p-img>.slide-img)>*{grid-column:1/-1}
  .p-slide:has(>.p-img>.slide-img)>.p-img{grid-column:1}
  .p-slide:has(>.p-img>.slide-img)>.p-res{grid-column:2;min-width:0;container-type:inline-size}
  .p-slide:has(>.p-img>.slide-img) .p-img>.slide-img{width:100%!important;max-width:100%!important}
  .p-slide:has(>.p-img>.slide-img) .p-res .rlabel{font-size:clamp(1.15rem,6.5cqi,3.1rem)}
  .p-slide:has(>.p-img>.slide-img) .p-res .val{font-size:clamp(1rem,4.4cqi,2rem)}
  .p-slide:has(>.p-img>.slide-img) .p-res .badge{width:clamp(30px,8cqi,58px);height:clamp(30px,8cqi,58px);font-size:clamp(1rem,4.4cqi,1.8rem)}
  .p-slide:has(>.p-img>.slide-img) .slide-img{width:100%;height:auto;max-height:min(68vh,1100px);margin:0;object-fit:contain}
  .p-slide:has(>.p-img>.slide-img) .big{margin-bottom:3vh}
  .p-main:has(.p-img>.slide-img){gap:clamp(20px,2.5vw,40px)}
  .p-main:has(.p-img>.slide-img) .p-side .qr-box{width:min(13vw,22vh)!important;padding:8px}
  .p-main:has(.p-img>.slide-img) .p-side .code{font-size:1.1rem!important}
}
@media(max-width:560px){.p-slide .slide-img{max-height:36vh}}
.img-zoom{position:fixed;inset:0;z-index:200;display:grid;place-items:center;background:rgba(0,0,0,.88);cursor:zoom-out;animation:fade .2s ease both}
.img-zoom img{width:96vw;height:94vh;object-fit:contain}
.avg{font-weight:700;color:var(--accent)}
.cloud .w{font-weight:650;transition:font-size .6s cubic-bezier(.34,1.45,.5,1),transform .2s;animation:pop .6s cubic-bezier(.3,1.8,.5,1) both}
.cloud .w:hover{transform:scale(1.12) rotate(-2deg)}
@keyframes pop{from{opacity:0;transform:scale(.4) rotate(-6deg)}to{opacity:1;transform:none}}
.thanks{font-weight:600;color:var(--ok)}
.thanks svg{color:var(--ok)}
.wait .ring{border-width:3px;border-color:var(--line);border-top-color:var(--accent)}

/* Konfetti */
.conf{position:fixed;z-index:999;pointer-events:none;width:10px;height:14px;border-radius:3px;will-change:transform,opacity}
.conf.dot{width:10px;height:10px;border-radius:50%}
@media(prefers-reduced-motion:reduce){.conf{display:none}}


/* Folien-Übersicht mit Mini-Vorschau */
.slide-item{align-items:center;gap:8px;padding:8px 4px;touch-action:pan-y}
.slide-item .si-grip{flex:none;width:28px;align-self:stretch;display:grid;place-items:center;color:var(--muted);cursor:grab;touch-action:none;user-select:none;font-size:1.25rem;line-height:1;border-radius:8px}
.slide-item .si-grip.off{visibility:hidden}
.slide-item .si-num{flex:none;min-width:1.3em;text-align:center;font-size:.8rem;color:var(--muted);font-weight:600}
.slide-item .si-main{flex:1;min-width:0;position:relative}
.slide-item .si-acts{flex:none;display:flex;flex-direction:column;gap:4px}
.thumb{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:10px;border:1px solid var(--line2);background:var(--panel);pointer-events:none;user-select:none}
.slide-item.active .thumb{border-color:var(--accent)}
.th-in{position:absolute;left:0;top:0;width:480px;height:270px;transform-origin:0 0;padding:20px 24px;overflow:hidden;font-size:15px;line-height:1.4}
.th-in .pq{font-weight:600;font-size:21px;line-height:1.25;margin:0 0 10px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.th-in .results .rrow{margin:10px 0}
.th-in .slide-img{max-height:90px;border-radius:8px;margin:0 0 8px}
.th-in .total,.th-in .verdict{display:none}
.thumb.demo .results{opacity:.5}
.thumb.info .th-in{display:flex;align-items:center;justify-content:center;text-align:center}
.thumb.info .pq{font-size:26px;-webkit-line-clamp:5;margin:0}
.si-tags{display:flex;gap:6px;align-items:center;pointer-events:none;margin-top:5px;flex-wrap:wrap}
.si-tags .k{font-size:.68rem;padding:2px 8px;border-radius:99px;background:var(--bg);border:1px solid var(--line2);color:var(--muted);white-space:nowrap}
.si-tags .live{margin-left:auto;font-size:.62rem;font-weight:600;letter-spacing:.12em;color:#fff;background:var(--accent);padding:2px 8px;border-radius:99px}
.slide-item.lift{position:relative;z-index:6;background:var(--panel);box-shadow:0 14px 36px rgba(0,0,0,.35);transition:none}
.slide-item.lift .si-grip{cursor:grabbing}
.sorting .slide-item,.sorting .slide-item:hover{transition:none}
.sorting .slide-item:not(.active):hover{padding-left:4px}
.sorting .slide-item.lift{scale:1.03;will-change:translate}

/* ===== Mobile ===== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;touch-action:manipulation}
.btn.pnav{display:none}
@media(pointer:coarse){.btn.pnav{display:inline-flex}.p-foot .kbdhint{display:none}}
/* Kleinere Beamer: Tastenkürzel ausblenden, damit die Fußzeile einzeilig bleibt und die Folie mehr Höhe hat */
@media(max-width:1500px){.present .p-foot .kbdhint{display:none}}
body{min-height:100vh;min-height:100dvh;overflow-wrap:break-word}
img,video{max-width:100%}
.present{height:100vh;height:100dvh;padding-left:max(clamp(22px,4vw,56px),env(safe-area-inset-left));padding-right:max(clamp(22px,4vw,56px),env(safe-area-inset-right))}
.modal-backdrop{overflow-y:auto;align-items:flex-start;padding-top:max(20px,env(safe-area-inset-top))}
.modal{margin:auto}
/* Hover-Effekte nur mit Maus, sonst bleiben sie nach dem Tippen hängen */
@media(hover:none){
  .btn:hover{transform:none}
  .opt:hover .badge,.cloud .w:hover{transform:none}
  .slide-item:hover{padding-left:4px}.slide-item.active:hover{padding-left:12px}
  .mylist a:hover{padding-left:2px}
}
@media(max-width:820px){
  /* Bühne zuerst, Folienliste und Formular danach */
  .grid.host>:first-child{order:2}
  .stage{min-height:0}
  .stage-tools{gap:10px}
  .stage-tools>.row{flex:1 1 auto}
}
@media(max-width:560px){
  body{font-size:16px}
  /* mind. 16px, sonst zoomt iOS beim Fokussieren in das Feld */
  input,textarea,select{font-size:16px;min-height:46px}
  textarea{min-height:92px}
  input[type=checkbox],input[type=radio]{min-height:0}
  .wrap{padding:calc(16px + env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) calc(72px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}
  .card{padding:18px 16px;border-radius:20px}
  .hero{margin:5vh 0 28px}
  .topbar{flex-wrap:wrap}
  /* Tap-Flächen mind. 44px */
  .btn{min-height:44px;padding:10px 18px}
  .btn.small,.btn.icon{min-height:40px;padding:8px 14px}
  .btn.icon{min-width:44px}
  .check{min-height:44px;align-items:center}
  .libgrid{grid-template-columns:1fr}
  .libcard .acts .btn{flex:1 1 auto}
  .chip{padding:7px 13px;font-size:.82rem}
  .tick{width:44px;height:44px}
  .like{min-height:40px;padding:8px 13px}
  .rx{padding:5px 12px;font-size:1rem}
  .slide-item{padding:8px 2px;gap:6px}
  .slide-item .si-grip{width:36px}
  .slide-item .si-acts .btn{min-height:38px;min-width:38px;padding:6px}
  .opt{padding:16px;margin:10px 0;gap:12px}
  .scale{gap:6px}
  .scale .opt{padding:20px 0;font-size:1.5rem}
  .compose{flex-direction:column}
  .compose .btn{width:100%}
  .idea{gap:10px;padding:12px}
  .share{gap:14px;flex-direction:column;align-items:stretch}
  .share .grow{min-width:0!important;flex:none;width:100%}
  .share>.row{justify-content:space-between;width:100%}
  .pill{max-width:100%}
  .stage-tools>.row{width:100%}
  .stage-tools .btn{flex:1 1 auto}
  .modal{padding:22px 18px;border-radius:22px}
  .optrow{flex-wrap:nowrap}.optrow input{flex:1 1 0;min-width:0}
  .kinds{grid-template-columns:repeat(2,minmax(0,1fr))}
  #formcard .row .btn,.formcard-add{width:100%}
  .pubcard{padding:16px}
  .pubcard .row .btn{flex:1 1 auto}
  .stats{grid-template-columns:repeat(2,1fr);gap:10px}
  .cloud{gap:2px 14px;min-height:160px}
  .join-input{letter-spacing:.22em}
  .rtop{gap:8px}
  .seg{grid-template-columns:repeat(auto-fit,minmax(72px,1fr))}
  .rbar{padding:10px 14px;flex-wrap:wrap}
  .rpage{padding:16px 14px}
  .p-head{flex-direction:column;align-items:flex-start;gap:10px}
  .p-join{justify-content:flex-start}
  .p-foot{font-size:.8rem}
  #toasts{top:max(12px,env(safe-area-inset-top))}
}
@media(max-width:360px){
  .scale .opt{font-size:1.25rem}
  .btn{padding-left:14px;padding-right:14px}
}
/* Querformat auf dem Handy: Beamer-Ansicht nicht stapeln */
@media(max-height:480px) and (orientation:landscape){
  .present{padding-top:12px;padding-bottom:12px}
  .p-main{padding:1vh 0}
  .p-slide .big{margin-bottom:2vh}
  .p-slide .slide-img{max-height:44vh}
  .wait{padding:28px 16px}
}
/* Library: Reiter „Mitmachen“ (Petrol) und „Vorlagen“ (Orangerot) unterscheiden sich in der Akzentfarbe */
.t-mit{--accent:#1f7a6d;--accent-hover:#17594f;--accent-soft:rgba(31,122,109,.1)}
@media not all{:root:not([data-theme="light"]) .t-mit{--accent:#4fd1b8;--accent-hover:#7fe3cf;--accent-soft:rgba(79,209,184,.14)}}
:root[data-theme="dark"] .t-mit{--accent:#4fd1b8;--accent-hover:#7fe3cf;--accent-soft:rgba(79,209,184,.14)}
.t-mit .libcard.show,.t-vor .libcard.show{border-top:3px solid var(--accent)}
.t-mit .hero h1,.t-vor .hero h1{color:var(--accent)}
.t-mit .libtools input:focus,.t-mit .libtools select:focus{border-color:var(--accent)}
/* Handzeichen-Theme */
:root{--bg:#f4f4f4;--panel:#ffffff;--field:#f4f4f4;--card:#ffffff;--line:#e3e3e3;--line2:#cfcfcf;--text:#141414;--muted:#525252;--dim:#282828;--accent:#ea425b;--hover:#d63c53;--soft:#fce1e5;--bar:#d7d7d7;--ok:#0a9b7a;--warn:#b7791f;--danger:#c0273f;--on:#ffffff;--accent-soft:#fce1e5;--accent-hover:#d63c53;--accent-h:#d63c53;--on-text:#ffffff;--panel2:#ffffff;--shadowc:0 8px 24px -16px rgba(20,20,20,.22);--card-sh:0 8px 24px -16px rgba(20,20,20,.22);--shadow:0 14px 34px -14px rgba(20,20,20,.25);--p0:#ea425b;--p1:#0063f2;--p2:#9900f4;--p3:#00a98a;--p4:#f2a51e;--p5:#ff8598;--p6:#6a7bd0;--p7:#525252;--serif:Gabarito,ui-rounded,system-ui,sans-serif;--sans:Onest,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--backdrop:rgba(20,20,20,.5);--ph:#525252;--on-ok:#fff;--on-danger:#fff}
@media not all{:root:not([data-theme="light"]){--bg:#141414;--panel:#1b1b1b;--field:#101010;--card:#212121;--line:#2e2e2e;--line2:#444444;--text:#f4f4f4;--muted:#a3a3a3;--dim:#d7d7d7;--accent:#ff6177;--hover:#ff8598;--soft:rgba(255,97,119,.15);--bar:#444444;--ok:#00eabd;--warn:#f0c04c;--danger:#ff8598;--on:#141414;--accent-soft:rgba(255,97,119,.15);--accent-hover:#ff8598;--accent-h:#ff8598;--on-text:#141414;--panel2:#212121;--shadowc:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);--card-sh:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);--shadow:0 14px 34px -14px rgba(0,0,0,.7);--p0:#ff6177;--p1:#4d97ff;--p2:#c25cff;--p3:#00eabd;--p4:#ffbf4d;--p5:#ff8598;--p6:#9aa8ff;--p7:#a3a3a3;--serif:Gabarito,ui-rounded,system-ui,sans-serif;--sans:Onest,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--backdrop:rgba(10,10,10,.85);--ph:#a3a3a3;--on-ok:#141414;--on-danger:#141414}
}
:root[data-theme="dark"]{--bg:#141414;--panel:#1b1b1b;--field:#101010;--card:#212121;--line:#2e2e2e;--line2:#444444;--text:#f4f4f4;--muted:#a3a3a3;--dim:#d7d7d7;--accent:#ff6177;--hover:#ff8598;--soft:rgba(255,97,119,.15);--bar:#444444;--ok:#00eabd;--warn:#f0c04c;--danger:#ff8598;--on:#141414;--accent-soft:rgba(255,97,119,.15);--accent-hover:#ff8598;--accent-h:#ff8598;--on-text:#141414;--panel2:#212121;--shadowc:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);--card-sh:0 1px 0 rgba(255,255,255,.04) inset,0 10px 30px -18px rgba(0,0,0,.8);--shadow:0 14px 34px -14px rgba(0,0,0,.7);--p0:#ff6177;--p1:#4d97ff;--p2:#c25cff;--p3:#00eabd;--p4:#ffbf4d;--p5:#ff8598;--p6:#9aa8ff;--p7:#a3a3a3;--serif:Gabarito,ui-rounded,system-ui,sans-serif;--sans:Onest,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--backdrop:rgba(10,10,10,.85);--ph:#a3a3a3;--on-ok:#141414;--on-danger:#141414}
:root h1 em{background:linear-gradient(100deg,#ea425b,#9900f4);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
:root[data-theme="dark"] h1 em{background:linear-gradient(100deg,#ff6177,#c25cff);-webkit-background-clip:text;background-clip:text}
:root .mock{border-top:3px solid #ea425b}
:root .fill.top{background:linear-gradient(90deg,#ea425b,#9900f4)}
@media not all{:root:not([data-theme="light"]) h1 em{background:linear-gradient(100deg,#ff6177,#c25cff);-webkit-background-clip:text;background-clip:text}:root:not([data-theme="light"]) .mock{border-top-color:#ff6177}}
body{font-family:var(--sans,Onest,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif)}

/* ruhiger: keine Verläufe, keine Wippeffekte, weniger Rundung */
:root h1 em,:root[data-theme="dark"] h1 em{background:none;-webkit-background-clip:border-box;background-clip:border-box;color:var(--accent);-webkit-text-fill-color:currentColor;font-style:italic}
:root .fill.top{background:var(--accent)}
.btn{border-radius:6px;box-shadow:none;font-weight:500;padding:10px 18px;transition:background .18s,border-color .18s,color .18s}
.btn:active{transform:none}
.card{border-radius:12px;box-shadow:none}
.opt{border-radius:8px;border-width:1px}
.scale .opt{border-radius:8px}
.opt:hover .badge{transform:none}
.bar{box-shadow:none}
.prow h3,.proftile h3{font-size:1.9rem;font-weight:700;line-height:1.15;letter-spacing:-.015em;margin:0 0 4px;overflow-wrap:anywhere}
.proftile h3{margin-top:12px}
.prow .meta,.proftile .meta{font-size:.82rem}
@media(max-width:560px){.prow h3,.proftile h3{font-size:1.5rem}}
article.libcard.proftile h3{font-size:1.3rem!important;font-weight:700;line-height:1.2;letter-spacing:-.01em}
article.libcard.proftile .acts .btn,article.libcard.proftile .acts .btn.main{font-size:.8rem;padding:6px 12px;min-height:0}
/* Profil-Liste: kompakte Zeilen, Titel links, wenige Knöpfe rechts, Rest im Mehr-Menü */
.plist{gap:0;border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:visible}
.plist .prow{grid-template-columns:minmax(0,1fr) auto;border:0;border-radius:0;background:transparent;border-top:1px solid var(--line);padding:12px 16px}
.plist .prow:first-child{border-top:0}
.plist .prow h3{font-size:1.02rem!important;font-weight:600;line-height:1.3;letter-spacing:0;margin:0;overflow-wrap:anywhere}
.plist .prow .meta{gap:4px 12px;margin-top:3px;font-size:.8rem}
.plist .prow .tools{flex-wrap:nowrap;gap:6px}
.plist .prow .tools .btn{min-height:36px;padding:6px 12px;font-size:.82rem}
.plist .morepop{left:auto;right:0}
.plist .morepop select{width:100%;margin:0}
.pfhead{display:flex;gap:8px;flex-wrap:wrap;margin:-6px 0 14px}
.layseg{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--panel)}
.layseg button{background:transparent;border:0;padding:7px 12px;font:inherit;font-size:.84rem;color:var(--dim);cursor:pointer;min-height:38px}
.layseg button+button{border-left:1px solid var(--line)}
.layseg button.on{background:var(--accent-soft);color:var(--accent);font-weight:600}
.pnav.drop{outline:2px dashed var(--accent);outline-offset:-2px;background:var(--accent-soft)}
@media(max-width:820px){.plist .prow{grid-template-columns:minmax(0,1fr)}.plist .prow .tools{flex-wrap:wrap}.plist .morepop{left:0;right:auto}}

/* Host-Ansicht: Vorschau oben, Folien als Raster darunter */
.hostmain .stage{min-height:300px;margin-bottom:12px}
.slidegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px;margin-top:12px}
.slidegrid .slide-item{flex-direction:column;align-items:stretch;gap:6px;padding:8px;margin:0;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.slidegrid .slide-item:hover{padding:8px;border-color:var(--muted)}
.slidegrid .slide-item.active,.slidegrid .slide-item.active:hover{padding:8px;border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent)}
.slidegrid .si-foot{display:flex;align-items:center;gap:4px}
.slidegrid .si-grip{width:24px;align-self:auto}
.slidegrid .si-acts{flex-direction:row;margin-left:auto;gap:2px}
.slidegrid .si-acts .btn{min-width:30px;padding:4px 6px}
/* Handy: Folien-Aktionen (Bearbeiten, Verschieben, Löschen) mit ausreichend großer Tap-Fläche */
@media(max-width:640px){.slidegrid .si-acts{gap:6px}.slidegrid .si-acts .btn{min-width:40px;min-height:40px}}
/* Editor: Teilen-Block als kompakte Leiste, Details aufklappbar */
.sharecard{padding-top:16px;padding-bottom:16px}
.sharebar{display:flex;align-items:center;justify-content:space-between;gap:12px 18px;flex-wrap:wrap}
.sb-info{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;min-width:0}
.sb-code{display:inline-flex;align-items:baseline;gap:7px;font-size:.85rem}
.sb-code b{font-size:1.45rem;letter-spacing:.08em;font-variant-numeric:tabular-nums;color:var(--text)}
.sb-info .url{font-size:.9rem;overflow-wrap:anywhere}
.sb-acts{gap:8px}
.sharebar .morepop{left:auto;right:0}
.sharefold svg{transition:transform .18s}.sharefold.on svg{transform:rotate(180deg)}
.sharemore{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
/* Regler-Bereich im Editor */
.rgbox{margin-top:12px}
.rgpre{gap:6px;margin-bottom:8px}
.rgrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,1.6fr);gap:8px}
.rgfld{display:flex;flex-direction:column;gap:3px;font-size:.78rem;color:var(--muted);min-width:0}
.rgfld input{width:100%;min-width:0}
@media(max-width:480px){.rgrow{grid-template-columns:repeat(3,minmax(0,1fr))}.rgrow .rgfld:last-child{grid-column:1/-1}}
/* Aufgeräumter Editor: Library-Hinweis, Formular in der Folienliste, schmale Karten links */
.libpill{cursor:pointer;display:inline-flex;gap:6px;align-items:baseline;font:inherit;font-size:.8rem}
.libpill.on b{color:var(--accent)}
.sharemore .visbar{margin:0 0 14px !important;padding:0;border:0;background:none;box-shadow:none}
.slidescard details.formcard:not([open]){display:none}
.slidescard details.formcard{margin:10px 0 0 !important;padding:14px;box-shadow:none;border:1px dashed var(--line)}
.slidescard .addslide.hidden{display:none}
.hostside details.card.settings:not([open]){padding-top:4px;padding-bottom:4px}
.hostside details.card.settings:not([open])>summary h2{font-size:1rem}
/* Folien-Ansicht umschalten: Liste (untereinander, nummeriert) oder Raster */
.slidescard .layseg.sv button{min-height:34px;padding:5px 9px;display:grid;place-items:center}
.slidescard .addslide{width:100%;margin-top:10px;border-style:dashed;justify-content:center}
.slidegrid .si-q{display:none}
.slidegrid.as-list{grid-template-columns:minmax(0,1fr);gap:6px;margin-top:10px}
.slidegrid.as-list .slide-item{display:grid;grid-template-columns:auto auto 104px minmax(0,1fr);grid-template-areas:"gr nm th q" "gr nm tg ac";gap:6px 8px;align-items:start}
.slidegrid.as-list .si-main,.slidegrid.as-list .si-foot{display:contents}
.slidegrid.as-list .thumb{grid-area:th;border-radius:7px}
.slidegrid.as-list .si-q{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;grid-area:q;font-size:.88rem;font-weight:600;line-height:1.3;overflow-wrap:anywhere;padding-top:1px}
.slidegrid.as-list .si-tags{grid-area:tg;margin-top:0;align-self:center}
.slidegrid.as-list .si-grip{grid-area:gr;align-self:stretch}
.slidegrid.as-list .si-num{grid-area:nm;font-size:1rem;min-width:1.2em;padding-top:2px;color:var(--dim)}
.slidegrid.as-list .slide-item.active .si-num{color:var(--accent)}
.slidegrid.as-list .si-tags .live{display:none}
.slidegrid.as-list .si-acts{grid-area:ac;justify-self:end;align-self:center}
@media(min-width:641px){.slidegrid.as-list .slide-item{grid-template-columns:auto auto 150px minmax(0,1fr) auto;grid-template-areas:"gr nm th q ac" "gr nm th tg ac";align-items:center}.slidegrid.as-list .si-q{align-self:end;font-size:.98rem}.slidegrid.as-list .si-tags{align-self:start}.slidegrid.as-list .si-acts{align-self:center}}
@media(max-width:640px){.slidegrid.as-list .slide-item{grid-template-columns:auto auto 88px minmax(0,1fr)}.slidegrid.as-list .si-acts{gap:4px}.slidegrid.as-list .si-acts .btn{min-width:36px}}
/* Mit KI erstellen (Dialog) */
body.kiopen{overflow:hidden}
.kiback{align-items:flex-start;overflow-y:auto;overscroll-behavior:contain}
.dlg.ki{max-width:620px;margin:auto 0;padding:22px 24px 20px;position:relative}
.dlg.ki p{margin:0}
/* KI-Zusammenfassung (Host, Pro) */
.dlg.sum{max-width:600px;max-height:calc(100dvh - 40px);overflow:auto}
.dlg.sum .sum-said{margin:0 0 14px;color:var(--text);line-height:1.55}
.dlg.sum h3{margin:14px 0 6px;font-size:.95rem}
.dlg.sum ul{margin:0;padding-left:1.2em;line-height:1.5}
.dlg.sum .sum-text{width:100%;box-sizing:border-box;min-height:150px;resize:vertical;font:inherit;font-size:.9rem;line-height:1.5;margin-top:4px}
.dlg.sum .sum-note{font-size:.82rem;color:var(--muted);margin:12px 0 0;line-height:1.45}
.dlg.sum .row{flex-wrap:wrap;margin-top:14px}
.dlg.sum .sum-msg{min-height:1.2em;font-size:.9rem;margin:10px 0 0}
.dlg.sum .sum-msg.err{color:#b3261e}
.kitop{display:flex;align-items:center;justify-content:space-between;gap:12px}
.kitop h2{margin:0}
.kix{flex:none;min-width:40px;min-height:40px;padding:0;font-size:1rem}
.ki .kisub{margin:6px 0 4px;color:var(--dim);font-size:.92rem;line-height:1.5}
.kistep{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}
.kistep h3{display:flex;align-items:center;gap:10px;margin:0 0 10px;font-size:1rem}
.kin{flex:none;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--accent-soft);color:var(--text);font-size:.85rem;font-weight:600}
.kifield{display:flex;flex-direction:column;gap:5px;font-size:.86rem;color:var(--dim);min-width:0}
.kifield>span{font-weight:500}
.kigrid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1.3fr);gap:10px;margin-top:10px}
.kigrid>*{min-width:0}
.ki .kitext{font-size:.9rem;color:var(--dim);line-height:1.5}
.kilinks{margin-top:10px;gap:8px;flex-wrap:wrap}
.kilinks .btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center}
.ki textarea{width:100%;resize:vertical;font-size:.88rem;line-height:1.45}
.ki textarea.kiprompt{margin-top:8px;font-size:.8rem;min-height:120px}
.ki details summary{cursor:pointer;font-size:.88rem;color:var(--dim);margin-top:6px}
.ki .kierr{color:var(--danger);font-size:.9rem;line-height:1.45;margin-top:8px;overflow-wrap:anywhere}
.ki .kierr:empty{display:none}
.ki .kiok{color:var(--ok);font-size:.9rem;margin-top:10px;font-weight:500}
.kiprev:empty{display:none}
.kiprev{margin-top:10px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:var(--accent-soft)}
.kiprevhead{display:flex;justify-content:space-between;gap:10px;align-items:baseline;flex-wrap:wrap;overflow-wrap:anywhere}
.kiprev ol{margin:8px 0 0;padding-left:1.4em;display:flex;flex-direction:column;gap:6px;font-size:.9rem}
.kiprev li{line-height:1.4;overflow-wrap:anywhere}
.kitype{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--dim);border:1px solid var(--line2);border-radius:99px;padding:1px 8px;margin-right:6px;vertical-align:1px}
.kitype.quiz{color:var(--ok);border-color:currentColor}
.kimode{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:6px}
.kimode .check{margin-top:8px}
.ki .kinote{font-size:.82rem;line-height:1.45;margin-top:10px}
.kiactions{justify-content:flex-end;gap:10px;margin-top:14px}
.kitabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:14px 0 10px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--panel2,transparent)}
.kitabs button{border:0;background:transparent;color:var(--dim);font:inherit;font-size:.88rem;font-weight:500;padding:9px 10px;border-radius:999px;cursor:pointer;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .18s,color .18s}
.kitabs button[aria-selected="true"]{background:var(--accent-soft);color:var(--text);box-shadow:0 0 0 1px var(--accent) inset}
.img-lock{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center}
.img-lock .kipro{font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;border:1px solid currentColor;border-radius:99px;padding:0 6px;color:var(--accent)}
.img-lock a{color:var(--accent);font-weight:600}
.kitabs .kipro{font-size:.68rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;border:1px solid currentColor;border-radius:99px;padding:0 6px}
.ki textarea.kigen{min-height:130px;font-size:.95rem}
.kilock{margin-top:10px;border:1px dashed var(--line2);border-radius:10px;padding:12px 14px;font-size:.9rem;line-height:1.5}
.kirow{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin:10px 0 4px;font-size:.88rem}
@media(max-width:560px){
  .kiback{padding:0}
  .dlg.ki{max-width:none;min-height:100%;border-radius:0;border:0;padding:16px 16px calc(20px + env(safe-area-inset-bottom))}
  .dlg.ki.sum{min-height:0;border-radius:16px;border:1px solid var(--line2)}
  .kigrid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .kigrid>:first-child{grid-column:1/-1}
  .kiactions .btn{flex:1 1 0}
  .ki textarea{min-height:150px}
  .kilinks .btn{flex:1 1 0}
}
/* --- Schnell-Umfrage --- */
.qkside .qkmain{max-width:600px;min-width:0}.qkside .pside a.pnav{text-decoration:none}
.ebways{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}@media(max-width:700px){.ebways{grid-template-columns:1fr}}
.ebway{display:flex;flex-direction:column;gap:6px;padding:20px 22px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:inherit;text-decoration:none;transition:border-color .18s,background .18s}.ebway:hover{border-color:var(--accent);background:var(--accent-soft)}.ebway h3{margin:0;font-size:1.15rem}.ebway p{margin:0;color:var(--dim);font-size:.95rem;line-height:1.5}.ebway .eblink{margin-top:6px;color:var(--accent);font-weight:600;font-size:.92rem}
.ebtitle{font-family:var(--serif);font-weight:700;font-size:clamp(1.8rem,5vw,2.4rem);margin:4px 0 10px;line-height:1.1;letter-spacing:-.02em}
/* Design-Angleichung an Start- und Preisseite (10.11.2026): Karten 12 px, Handy-Rand 16 px (Buttons sind überall 8 px) */
.card,.pdash,.modal{border-radius:12px}@media(max-width:560px){.wrap{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}}
.wall{display:grid;grid-template-columns:400px minmax(0,1fr);gap:44px;padding:44px 52px;min-height:100vh;box-sizing:border-box;background:var(--bg)}
.wall h1{font-family:var(--serif);font-weight:700;font-size:clamp(2rem,4.4vw,3.3rem);line-height:1.06;margin:6px 0 12px;white-space:pre-line;letter-spacing:-.02em}
.wsub{color:var(--muted);font-size:1.12rem;margin:0 0 20px}
.wqr{width:250px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px}.wqr svg{width:100%;height:auto;display:block}
.wlink{font-family:var(--serif);font-weight:700;color:var(--accent);font-size:1.45rem;margin:12px 0 0}
.wcount{color:var(--muted);margin:22px 0 0;font-size:1rem}.wcount b{font-family:var(--serif);font-size:2.2rem;color:var(--text);margin-right:8px;vertical-align:-2px}
.wfeed{display:flex;flex-direction:column;gap:12px}.wempty{color:var(--muted);font-size:1.1rem;margin:8px 0}
.wcard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.wcard.new{animation:wpop .55s cubic-bezier(.2,.9,.3,1.2)}
@keyframes wpop{from{opacity:0;transform:translateY(-16px) scale(.98)}to{opacity:1;transform:none}}
.wq{font-family:var(--serif);font-weight:700;font-size:1.4rem;line-height:1.2;overflow-wrap:anywhere}
.wmeta{color:var(--muted);font-size:.92rem;margin-top:6px}.wv{color:var(--accent);font-weight:600}
.wallnote{margin:10px 0 0;padding:10px 14px;border-radius:10px;background:var(--accent-soft);color:var(--accent);font-weight:600;font-size:.95rem}
@media(max-width:900px){.wall{grid-template-columns:1fr;padding:28px 20px}}
.qk .btn{min-height:44px}
.qk h1{font-family:var(--serif);font-weight:700;font-size:clamp(1.8rem,6vw,2.4rem);margin:4px 0 6px;line-height:1.1}
.qk .lbl2{display:block;font-weight:600;font-size:.9rem;margin:18px 0 6px}
.qk-seg{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.qk-seg button{min-height:44px;background:transparent;border:0;color:var(--muted);font:inherit;font-weight:600;cursor:pointer}
.qk-seg button+button{border-left:1px solid var(--line)}
.qk-seg button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}
.qk-opt{display:flex;gap:8px;align-items:center;margin:0 0 8px}.qk-opt input{flex:1;min-width:0;min-height:44px}
.qk-x{flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);font-size:1.2rem;cursor:pointer}
.qk-x:hover{color:var(--danger);border-color:var(--danger)}
.qk-q+.qk-q{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.qk-qhead{display:flex;align-items:center;justify-content:space-between;gap:8px}.qk-qhead .qk-x{width:36px;height:36px;font-size:1rem}
.qk-qres+.qk-qres{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.qk-ex{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.qk-ex button{min-height:40px;border:1px solid var(--line);border-radius:99px;background:transparent;color:var(--dim);padding:6px 14px;font:inherit;font-size:.85rem;cursor:pointer}
.qk-ex button:hover{border-color:var(--accent);color:var(--accent)}
.qk-check{display:flex;align-items:center;gap:10px;min-height:44px;cursor:pointer;font-weight:600;font-size:.9rem}.qk-check input{width:22px;height:22px;flex:none;margin:0;accent-color:var(--accent)}
.qk-link{display:flex;gap:8px;flex-wrap:wrap}.qk-link input{flex:1 1 220px;min-width:0;min-height:44px;font-size:.9rem}
.qk-share{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;margin-top:16px}
@media(min-width:720px){.qk-share{grid-template-columns:200px minmax(0,1fr)}}
.qk-qr{background:#fff;border:1px solid var(--line);border-radius:8px;padding:8px;max-width:200px}
.qk-top{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.qk-top h2{margin-top:0}
.qk-topqr{display:flex;flex-direction:column;align-items:center}.qk-topqr .qk-qr{width:168px}.qk-topqr .qk-qr svg{display:block;width:100%;height:auto}
@media(min-width:640px){.qk-top{grid-template-columns:184px minmax(0,1fr)}.qk-topqr .qk-qr{width:184px}}
.qk-top .qk-link .btn{flex:1 1 120px}
@media(max-width:820px){.qkside .pf:has(.qk-top)>.qkmain{order:-1}}
.qk-row .btn.qk-self{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700}
.qk-og{width:100%;height:auto;display:block;border:1px solid var(--line);border-radius:8px;aspect-ratio:1200/630;background:var(--panel)}
.qk-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.qk-row .btn{flex:1 1 160px}
.qk-seg.n3{grid-template-columns:repeat(3,1fr)}
.qk-media{margin-top:10px}
.qk-pick{display:flex;align-items:center;gap:12px;min-width:0}
.qk-pick img{width:72px;height:72px;flex:none;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:var(--field)}
.qk-pick .btn{flex:none}
.qk-pick>span:empty{display:none}
.qk-mprev .m-gal,.qk-mprev .m-link{margin:0}
.qk-foot{display:flex;gap:8px 16px;flex-wrap:wrap;align-items:center;justify-content:center;margin:18px 0 0;font-size:.88rem;color:var(--muted)}
.qk-foot a,.qk-foot button{min-height:40px;display:inline-flex;align-items:center;color:var(--muted);background:none;border:0;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:0 4px}
.qk-foot a:hover,.qk-foot button:hover{color:var(--accent)}
.qk-mine a{display:flex;justify-content:space-between;gap:10px;align-items:center;min-height:44px;padding:8px 0;border-bottom:1px solid var(--line);color:var(--text);text-decoration:none}
.qk-mine a:hover{color:var(--accent)}
.qk-pend{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--line)}.qk-pend span{flex:1 1 200px;overflow-wrap:anywhere}
.qk-stat{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:10px 0}
.qk-wk{display:grid;grid-template-columns:auto 1fr auto auto auto;gap:4px 12px;font-size:.85rem;font-variant-numeric:tabular-nums}
.tm .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.tm-calnav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.tm-calnav b{text-transform:capitalize}
.tm-calnav .qk-x{font-size:1.4rem;line-height:1}.tm-calnav .qk-x:disabled{opacity:.3;cursor:default}
.tm-cal{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.tm-wd{text-align:center;font-size:.75rem;color:var(--muted);padding:4px 0}
.tm-cal button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;padding:0}
.tm-cal button:disabled{opacity:.3;cursor:default;border-color:transparent}
.tm-cal button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:700}
.tm-cal button:not(:disabled):hover{border-color:var(--accent)}
.tm-days{display:grid;gap:8px;margin-top:10px}
.tm-day{border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.tm-dayhead{display:flex;align-items:center;justify-content:space-between;gap:8px}
.tm-times{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.tm-time{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--line);border-radius:8px;padding:0 0 0 4px}.tm-time input{border:0;min-height:40px;padding:0 4px;background:transparent;width:auto}
.tm-tx{width:36px;height:36px;border:0;background:transparent;color:var(--muted);cursor:pointer;border-radius:6px;flex:none}.tm-tx:hover{color:var(--danger)}
.btn.tm-add{min-height:40px;padding:6px 12px;font-size:.88rem}
.tm-more{margin-top:14px}.tm-more summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;font-size:.9rem}
.tm-note{margin:10px 0 0;white-space:pre-line;color:var(--dim)}
.tm-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 0;border-bottom:1px solid var(--line)}
.tm-row.best .tm-when b::after{content:" ★";color:var(--accent)}
.tm-when{display:flex;flex-direction:column;min-width:0;flex:1 1 160px}.tm-when .muted{font-size:.82rem}
.tm-ans{display:flex;gap:4px;flex:none}
.tm-a{min-height:44px;min-width:44px;padding:0 10px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--dim);font:inherit;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.tm-a span[aria-hidden]{font-weight:700}
.tm-a.yes[aria-pressed=true]{background:var(--ok);border-color:var(--ok);color:var(--on-ok)}
.tm-a.maybe[aria-pressed=true]{background:var(--warn);border-color:var(--warn);color:#fff}
.tm-a.no[aria-pressed=true]{background:var(--danger);border-color:var(--danger);color:var(--on-danger)}
@media(max-width:420px){.tm-a .tm-al{display:none}.tm-ans{width:100%}.tm-a{flex:1;justify-content:center}}
.tm-scroll{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -6px;padding:0 6px}
.tm-tbl{border-collapse:separate;border-spacing:0;font-size:.85rem;min-width:100%}
.tm-tbl th,.tm-tbl td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:center;white-space:nowrap}
.tm-tbl thead th{font-weight:600;font-size:.78rem;color:var(--dim);white-space:normal;min-width:84px;vertical-align:bottom}
.tm-tbl th[scope=row],.tm-tbl thead th:first-child{position:sticky;left:0;background:var(--panel);text-align:left;z-index:1;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.tm-tbl th[scope=row]{display:flex;align-items:center;gap:2px;justify-content:space-between;font-weight:600}
.tm-tbl th[scope=row] .tm-tx{width:28px;height:28px}
.tm-tbl td.yes{color:var(--ok);font-weight:700}.tm-tbl td.maybe{color:var(--warn);font-weight:700}.tm-tbl td.no{color:var(--muted)}
.tm-tbl thead th.best,.tm-tbl td.best{color:var(--accent);font-weight:700}
.tm-tbl thead th.fin{background:var(--accent-soft);color:var(--accent)}
.tm-tbl tr.me th[scope=row]{color:var(--accent)}
.tm-tbl tr.sum th,.tm-tbl tr.sum td{border-bottom:0;font-weight:700;font-variant-numeric:tabular-nums}
.tm-live{border-color:var(--accent);background:var(--accent-soft)}.tm-live h2{margin:4px 0 6px}
.tm-live .eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--accent)}.tm-live .dot{background:var(--accent)}
.tm-join{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px}.tm-join p{margin:0;flex:1 1 220px;font-size:.92rem}
.dt-hint{margin:0 0 10px;font-size:.88rem;color:var(--dim)}
.dt-name{display:grid;gap:4px;margin:0 0 14px}.dt-name input{width:100%}.dt-name small{color:var(--muted);font-size:.8rem;line-height:1.4}
.dt-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}
.dt-msg{margin:8px 0 0;color:var(--danger);font-size:.88rem}.dt-msg:empty{display:none}
.dt-fin{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;border:1px solid var(--accent);background:var(--accent-soft);border-radius:10px;padding:10px 12px;margin:0 0 12px}
.dt-fin>div{display:flex;flex-direction:column;min-width:0}.dt-fin .eyebrow{color:var(--accent)}
.dt-bar{display:flex}.dt-bar>i{border-radius:0}.dt-bar>i:first-child{border-radius:99px 0 0 99px}.dt-bar>i.mb{opacity:.45}
.dt-orow .rtop{flex-wrap:wrap;row-gap:4px}.dt-orow .rlabel{flex:1 1 12em;min-width:0}.dt-orow .rtop .btn{margin-left:auto}
.rrow.fin .rlabel{color:var(--accent);font-weight:700}
.dt-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;margin:6px 0}
.dt-grid{display:grid;grid-template-columns:auto repeat(var(--dc),minmax(46px,1fr));width:max-content;min-width:100%;user-select:none;-webkit-user-select:none}
.dt-grid .dh{text-align:center;font-size:.75rem;line-height:1.25;color:var(--dim);padding:0 2px 6px;position:sticky;top:0}
.dt-grid .tl{position:sticky;left:0;z-index:1;background:var(--panel);font-size:.7rem;color:var(--muted);font-variant-numeric:tabular-nums;padding:0 6px 0 0;line-height:1;transform:translateY(-.4em);white-space:nowrap}
.present .dt-grid .tl{background:var(--bg)}
/* Termin am Beamer: nur Raster, Bestwert und festgelegter Termin, groß lesbar; Details und Namen bleiben auf den Handys */
.p-res .dt-detail,.p-res .dt-h3,.p-res .dt-people,.p-res .dt-small{display:none}
.p-res .dt-grid .dh{font-size:clamp(.85rem,1.2vw,1.15rem)}.p-res .dt-grid .tl{font-size:clamp(.8rem,1.1vw,1.05rem)}
.p-res .dt-best,.p-res .dt-legend{font-size:clamp(1rem,1.6vw,1.45rem)}.p-res .dt-fin{font-size:clamp(1rem,1.6vw,1.4rem)}
.dt-c{display:block;height:22px;padding:0;margin:0;border:0;border-left:1px solid var(--line);border-top:1px dotted var(--line);border-radius:0;background:var(--field);touch-action:none;cursor:pointer;font:inherit;min-width:0}
.dt-grid.s15 .dt-c{height:16px}
.dt-c.hr{border-top:1px solid var(--line)}
.dt-grid .gap{margin-left:12px}
.dt-c.gap{border-left:2px solid var(--muted)}
.dt-grid .dh.gap{border-left:2px dashed var(--muted);padding-left:4px}
.dt-c.on{background:var(--accent)}
.dt-c.top{box-shadow:inset 0 0 0 1px var(--text)}
.dt-c.fin{box-shadow:inset 0 0 0 2px var(--ok)}
.dt-c.pick{outline:2px solid var(--text);outline-offset:-2px}
.dt-c:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.dt-legend{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--muted);margin:6px 0 0}
.dt-ramp{display:block;width:90px;height:8px;border-radius:99px;background:linear-gradient(90deg,var(--field),var(--accent))}
.dt-best{display:flex;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0 0 8px;font-size:.95rem}.dt-best svg{color:var(--accent)}
.dt-detail{border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin-top:10px;display:grid;gap:4px;font-size:.88rem}
.dt-who{display:flex;flex-wrap:wrap;gap:4px 8px}.dt-who .ok{color:var(--ok);font-weight:600}.dt-who .no{color:var(--muted);font-weight:600}
.dt-people{display:flex;flex-wrap:wrap;gap:6px}
.dt-person{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);border-radius:99px;padding:2px 4px 2px 10px;font-size:.85rem;min-height:32px}
.dt-person.me{border-color:var(--accent);color:var(--accent)}
.dt-person .btn.icon,.dt-tbl th .btn.icon{min-height:28px;min-width:28px;padding:0 4px}
.dt-h3{font-size:.95rem;margin:16px 0 8px}
.dt-small{font-size:.82rem;margin:6px 0 0}
.dt-out{margin-top:16px}
.dt-erow{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.dt-erow label{display:grid;gap:4px;flex:1 1 90px}
.dt-time input{min-width:0}
.tm-dstat{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.9rem;font-weight:600}.tm-dstat .dot:not(.live){background:var(--muted)}
.tm-final{border-color:var(--accent)}.tm-fdate{font-family:var(--serif);font-size:clamp(1.3rem,5vw,1.7rem);font-weight:650;margin:4px 0 6px;line-height:1.2}
/* --- Ende Schnell-Umfrage --- */
/* --- Pro Firmen: Branding, eigener Link, QR-Gestaltung --- */
.brandset{--accent:var(--brand-l);--accent-hover:var(--brand-l);--accent-h:var(--brand-l);--hover:var(--brand-l);--accent-soft:color-mix(in srgb,var(--brand-l) 12%,transparent);--soft:color-mix(in srgb,var(--brand-l) 12%,transparent);--p0:var(--brand-l)}
:root[data-theme="dark"] .brandset{--accent:var(--brand-d);--accent-hover:var(--brand-d);--accent-h:var(--brand-d);--hover:var(--brand-d);--accent-soft:color-mix(in srgb,var(--brand-d) 18%,transparent);--soft:color-mix(in srgb,var(--brand-d) 18%,transparent);--p0:var(--brand-d)}
.brandlogo{display:block;max-height:52px;max-width:240px;width:auto;height:auto;object-fit:contain}
:root[data-theme="dark"] .brandlogo{background:#fff;padding:4px 8px;border-radius:8px}
.sitehead .brandlogo{margin:6px 0}
.p-head .brandlogo{max-height:48px;display:inline-block;vertical-align:middle}
.qrmark{display:flex;align-items:center;justify-content:center;gap:.35em;margin-top:.3em;line-height:1.2;font-weight:700;font-size:clamp(.7rem,1vw,.95rem);color:#141414;letter-spacing:-.01em}.qrmark img{width:1.15em;height:1.15em;border-radius:24%;flex:none}
.brandlink{display:inline-flex;text-decoration:none;color:inherit;border-radius:8px}.brandlink:hover{opacity:.85}
.brsample{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.brsample i{display:block;width:64px;height:10px;border-radius:99px}.brsample small{font-size:.84rem}
.brandmark{display:inline-flex;align-items:center;gap:10px;min-width:0}
.brandname{font-family:var(--serif);font-weight:700;font-size:1.25rem;line-height:1.15;color:var(--accent);overflow-wrap:anywhere}
.p-head .brandname{font-size:1.5rem}
.rbrand{margin:22px 0 0;padding-top:12px;border-top:1px solid var(--line);display:flex;justify-content:center}.rbrand .brandlogo{max-height:44px;background:none;padding:0}
.slugrow{display:flex;align-items:stretch;gap:0;max-width:100%;border:1px solid var(--line);border-radius:10px;background:var(--field,var(--panel));overflow:hidden}
.slugrow span{display:flex;align-items:center;padding:0 4px 0 12px;color:var(--muted);font-size:.92rem;white-space:nowrap;max-width:45%;overflow:hidden;text-overflow:ellipsis}
.slugrow input{border:0!important;margin:0;min-width:0;flex:1;background:transparent;min-height:44px;padding-left:0;box-shadow:none}
.brandprev{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0}
.brandprev .brandlogo{max-height:52px}
.colorrow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.colorrow input[type=color]{width:48px;height:44px;padding:2px;border-radius:10px;border:1px solid var(--line);background:var(--panel);cursor:pointer;flex:none}
.colorrow input[type=text]{width:9em;flex:none;margin:0}
.qrd{display:grid;gap:18px;align-items:start}
@media(min-width:760px){.qrd{grid-template-columns:minmax(0,1fr) 300px}}
.share{display:flex;justify-content:center;padding-top:calc(16px + env(safe-area-inset-top))}
.shcard{width:100%;max-width:440px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;padding:8px 0 28px}
.shbrand{font-size:1.5rem}.shbrand:before{width:34px;height:34px}
.shsub{margin:0;color:var(--dim);font-size:1rem;line-height:1.5;max-width:36ch}
.shtabs{width:100%;max-width:340px;margin:4px 0 0}
.shqr{background:#fff;padding:14px;border-radius:18px;border:1px solid var(--line);width:min(100%,320px);line-height:0}
.shqr svg{width:100%!important;height:auto}
.shurl{font-family:var(--serif);font-weight:650;font-size:1.25rem;overflow-wrap:anywhere}
.shfacts{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:.92rem;color:var(--dim)}
.shfacts li:before{content:'✓';color:var(--accent);font-weight:700;margin-right:8px}
.shacts{justify-content:center;gap:10px;margin-top:4px}.shacts .btn{min-height:44px}
.shnote{font-size:.84rem;margin:6px 0 0}.shnote a{color:inherit}
.qrprev{display:inline-block;line-height:0;border-radius:12px;overflow:hidden;border:1px solid var(--line);max-width:100%}
.qrhub{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;width:max-content;max-width:100%;margin:6px auto 22px;background:var(--panel)}
.qrhub a{color:var(--dim);text-decoration:none;font-size:.9rem;font-weight:500;padding:9px 16px;border-radius:999px;min-height:40px;display:inline-flex;align-items:center;white-space:nowrap;transition:background .18s,color .18s}
.qrhub a:hover{color:var(--text)}
.qrhub a[aria-current="page"]{background:var(--accent-soft);color:var(--text);box-shadow:0 0 0 1px var(--accent) inset}
.qrhub a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:480px){.qrhub{width:100%;border-radius:22px}.qrhub a{flex:1 1 0;min-width:0;justify-content:center;text-align:center;white-space:normal;line-height:1.25;padding:8px 8px;font-size:.84rem;border-radius:18px}}
.shwhy{font-size:.9rem;margin:2px 0 0;max-width:38ch}
.qrpick{margin:0}
.qrlogin{font-size:.86rem;margin:8px 0 0}
.qrlogo{display:flex;align-items:center;gap:10px;font-size:.9rem;color:var(--dim)}.qrlogo img{width:28px;height:28px;flex:none}
.qrwarn{color:var(--warn);font-size:.88rem;margin:8px 0 0}
.prohint{font-size:.88rem;color:var(--muted);margin:10px 0 0}
/* --- Medien-Folie: Galerie, Video (Zwei-Klick), Bild-Abstimmung, Editor --- */
.m-gal{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin:4px 0 18px;padding-bottom:4px}
.m-fig{flex:0 0 84%;min-width:0;margin:0;scroll-snap-align:center}
.m-gal.n1 .m-fig{flex-basis:100%}
.m-img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;border-radius:var(--radius);background:var(--field);border:1px solid var(--line);cursor:zoom-in}
.m-fig figcaption{display:flex;gap:8px;align-items:center;margin-top:8px;font-size:.92rem;color:var(--dim);min-width:0}
.m-fig figcaption span[data-ugc]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.m-fig .badge{width:26px;height:26px;font-size:.8rem}
@media(min-width:700px){.m-gal{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));overflow:visible}.m-gal.n1{grid-template-columns:1fr}.m-gal.n4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.p-slide .m-gal{margin-bottom:3vh}
.p-slide .m-gal.n1 .m-img{max-height:min(62vh,900px);aspect-ratio:auto}
.m-vid{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden;background:var(--field);border:1px solid var(--line);margin:4px 0 18px}
.m-vid.on{background:#000;border-color:transparent}
.m-vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.m-ph{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;text-align:center}
.m-play{width:52px;height:52px;border-radius:50%;background:var(--accent);flex:none;position:relative}
.m-play::after{content:"";position:absolute;left:21px;top:16px;border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent var(--on-text,#fff)}
.m-ph-t{margin:0;font-family:var(--serif);font-weight:700;font-size:1.05rem}
.m-ph-n{margin:0;max-width:34em;font-size:.84rem;color:var(--muted);line-height:1.4}
.m-ph-a{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center}
.m-ph-a .btn{min-height:40px}
.m-ph-l{font-size:.84rem;color:var(--muted);min-height:40px;display:inline-flex;align-items:center}
@media(max-width:420px){.m-vid:not(.on){aspect-ratio:auto;min-height:220px}.m-ph{position:relative;inset:auto}}
.p-slide .m-vid{max-height:68vh;margin-bottom:3vh}
@media(min-width:900px){
  .p-slide:has(>.p-img>.m-gal:not(.pick)),.p-slide:has(>.p-img>.m-vid),.p-slide:has(>.p-img>.m-link){display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);column-gap:clamp(24px,3vw,48px);align-items:center;align-content:center}
  .p-slide:has(>.p-img>.m-gal:not(.pick))>*,.p-slide:has(>.p-img>.m-vid)>*,.p-slide:has(>.p-img>.m-link)>*{grid-column:1/-1}
  .p-slide:has(>.p-img>.m-gal:not(.pick))>.p-img,.p-slide:has(>.p-img>.m-vid)>.p-img,.p-slide:has(>.p-img>.m-link)>.p-img{grid-column:1}
  .p-slide:has(>.p-img>.m-gal:not(.pick))>.p-res,.p-slide:has(>.p-img>.m-vid)>.p-res,.p-slide:has(>.p-img>.m-link)>.p-res{grid-column:2;min-width:0}
  .p-slide:has(>.p-img>.m-gal:not(.pick)) .m-gal,.p-slide:has(>.p-img>.m-vid) .m-vid,.p-slide:has(>.p-img>.m-link) .m-link{margin:0}
}
/* Bild wählen am Beamer: sobald Balken da sind, tragen die Zeilen die Bilder, die Galerie tritt zurück */
.p-slide:has(>.p-res .m-rrow)>.p-img:has(>.m-gal.pick){display:none}
/* Bildgröße live ändern (--is = Faktor, Standard 1): Ziehgriff unten rechts am Bild */
.p-img{position:relative;--is:1}
.p-img>.slide-img{width:calc(var(--is) * 100%)!important;max-width:calc(var(--is) * 100%)!important;max-height:calc(var(--is) * min(68vh,1100px))!important;margin-left:auto!important;margin-right:auto!important}
.p-img>.m-gal,.p-img>.m-vid,.p-img>.m-link{width:calc(var(--is) * 100%);margin-left:auto!important;margin-right:auto!important}
.p-rsz{position:absolute;z-index:3;width:30px;height:30px;padding:0;border-radius:50%;border:2px solid var(--bg);background:var(--accent);box-shadow:0 2px 10px rgba(0,0,0,.35);cursor:nwse-resize;touch-action:none;opacity:0;transition:opacity .15s}
.p-rsz::after{content:'';position:absolute;inset:8px;border-right:2.5px solid var(--bg);border-bottom:2.5px solid var(--bg)}
.p-img:hover>.p-rsz,.p-rsz:focus-visible,.p-rsz.on{opacity:1}
@media(hover:none){.p-rsz{opacity:.85}}
.p-slide .m-gal.pick .m-img{max-height:46vh}
.p-slide .m-rrow .m-rimg{width:clamp(56px,8vh,110px);height:clamp(56px,8vh,110px);object-fit:contain}
.m-pick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.m-pick.n2{grid-template-columns:1fr 1fr}
.m-opt.opt{flex-direction:column;align-items:stretch;gap:8px;margin:0;padding:8px;min-width:0}
.m-opt img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;border-radius:calc(var(--radius) * .7);background:var(--panel)}
.m-optl{display:flex;gap:8px;align-items:center;min-width:0;font-size:.95rem}
.m-optl span[data-ugc]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.m-rimg{width:44px;height:44px;flex:none;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:var(--field)}
.p-slide .m-rimg{width:clamp(44px,5vw,72px);height:clamp(44px,5vw,72px)}
.img-zoom .m-zcap{position:absolute;left:0;right:0;bottom:14px;margin:0;text-align:center;color:#fff;font-size:1rem}
.img-zoom .m-znav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:1.8rem;line-height:1;cursor:pointer}
.img-zoom .m-znav.prev{left:12px}.img-zoom .m-znav.next{right:12px}
.m-thv{margin:6px 0;font-size:.85rem;color:var(--muted)}
/* --- Link-Karte (Nachrichten-Link): Bild liegt im eigenen Speicher, Klick öffnet die Seite in neuem Tab --- */
.m-link{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--panel);color:var(--text);text-decoration:none;margin:4px 0 18px;min-width:0}
.m-link:hover{border-color:var(--dim)}
.m-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.m-link-img{display:block;width:100%;aspect-ratio:1.91/1;object-fit:cover;background:var(--field);border-bottom:1px solid var(--line)}
.m-link-b{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;min-width:0}
.m-link-s{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;min-width:0}
.m-link-s span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.m-link-t{margin:0;font-family:var(--serif);font-weight:700;font-size:1.08rem;line-height:1.3;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.m-link-o{display:inline-flex;align-items:center;gap:6px;font-size:.86rem;color:var(--accent);margin-top:2px}
@media(min-width:560px){.m-link.has-img:not(.stack){flex-direction:row}.m-link.has-img:not(.stack) .m-link-img{width:38%;flex:none;aspect-ratio:auto;min-height:150px;border-bottom:0;border-right:1px solid var(--line)}.m-link:not(.stack) .m-link-b{justify-content:center}}
.p-slide .m-link{margin-bottom:3vh}
.p-slide .m-link-t{font-size:clamp(1.2rem,2.2vw,2.1rem);-webkit-line-clamp:4}
.p-slide .m-link-s{font-size:clamp(.8rem,1.1vw,1.05rem)}
.p-slide .m-link-o{font-size:clamp(.85rem,1.1vw,1.05rem)}
.p-slide .m-link-img{max-height:46vh}
.m-lprev{margin-top:10px}
.m-lprev .m-link{margin:0}
.m-lrow{display:flex;gap:8px;align-items:center;min-width:0}
.m-lrow input{flex:1;min-width:0;margin:0}
.m-lrow .btn{flex:none;min-height:44px}
/* --- Live-Reaktionen: Leiste für Teilnehmende, ruhige Zähler am Beamer --- */
.r-bar{display:flex;justify-content:center;gap:10px;margin-top:14px}
.r-btn{display:inline-flex;align-items:center;justify-content:center;width:56px;height:48px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--dim);cursor:pointer;font-size:1.35rem;transition:transform .15s ease,background .15s ease,color .15s ease,opacity .2s ease}
.r-btn:hover:not(:disabled){color:var(--text);border-color:var(--dim)}
.r-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.r-btn.sent{color:var(--accent);border-color:var(--accent);transform:scale(1.08)}
.r-btn:disabled{cursor:default;opacity:.55}
.r-btn.sent:disabled{opacity:1}
.r-btn.r-one{width:auto;min-width:168px;height:56px;padding:0 24px;gap:10px;font-size:1.5rem}.r-btn.r-one span{font-size:1rem;font-weight:600}
.r-hint{text-align:center;font-size:.78rem;color:var(--muted);margin:6px 0 0}
.p-react{display:inline-flex;align-items:center;gap:clamp(12px,1.6vw,22px);font-size:clamp(.95rem,1.3vw,1.25rem);color:var(--dim)}
.p-react.hidden{display:none}
.p-react .pr{display:inline-flex;align-items:center;gap:.35em;font-variant-numeric:tabular-nums;transition:opacity .3s ease}
.p-react .pr.zero{opacity:.38}
.p-react .pr b{font-weight:600;color:var(--text);display:inline-block;min-width:1ch}
.p-react .pr.bump b{animation:prbump .5s ease}
@keyframes prbump{0%{transform:scale(1)}35%{transform:scale(1.28)}100%{transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.p-react .pr.bump b{animation:none}.r-btn{transition:none}.r-btn.sent{transform:none}}
.m-edit .m-src{margin:0 0 10px}
.m-elist{display:grid;gap:8px;margin-bottom:10px}
.m-erow{display:flex;gap:8px;align-items:center;min-width:0}
.m-erow img{width:48px;height:48px;flex:none;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.m-erow input{flex:1;min-width:0;margin:0}
.m-erow .btn.icon{min-width:40px;min-height:40px;flex:none}
@media(max-width:420px){.m-erow{flex-wrap:wrap}.m-erow input{flex:1 1 calc(100% - 90px)}}
.m-dz small{display:block;margin-top:4px}
.m-hint{font-size:.82rem;margin:6px 0 0}
.m-react .chip,.m-src .chip{min-height:40px}
.m-react .chip:disabled{opacity:.45;cursor:not-allowed}
.kv .m-kv{display:flex;gap:4px;height:34px}
.kv .m-kv u{flex:1;border-radius:3px;background:var(--line);text-decoration:none}
.kv .m-kv u.pl{background:var(--accent);opacity:.75}
/* Icons (Pfade und Grundlayout in /icons.js) */
.btn .hzi.l,.btn .hzi.r,.like .hzi,.upbtn .hzi,.pnav .hzi,.pill .hzi,.kind .hzi{margin:0}
.btn .hzi{font-size:1.15em}
.btn.icon .hzi,.kix .hzi,.qk-x .hzi{font-size:1.3em}
.ilbl{display:inline-flex;align-items:center;gap:.42em}
/* --- Design-System (an Landing angeglichen): Controls 8px, Flächen 12px, Pills für Navigation/Tabs --- */
.wrap{max-width:1040px}
.wrap:has(>.grid.host){max-width:1120px}
input[type=checkbox],input[type=radio]{accent-color:var(--accent)}
input,textarea,select{border-radius:8px}
input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}
.btn{border-radius:8px;background:var(--accent);border-color:var(--accent);color:var(--on)}
.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on)}
.btn.ghost{background:transparent;color:var(--text);border-color:var(--line2)}
.btn.ghost:hover{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}
.btn.danger{background:transparent;border-color:var(--line2);color:var(--muted)}
.btn.danger:hover{background:transparent;border-color:var(--danger);color:var(--danger)}
.btn.danger.armed,.btn.danger.armed:hover{background:var(--danger);border-color:var(--danger);color:var(--on-danger)}
.btn:disabled:hover{background:var(--accent);border-color:var(--accent)}
.btn.ghost:disabled:hover{background:transparent;border-color:var(--line2);color:var(--text)}
.sitehead{border-bottom:0;padding:4px 0}
@media (min-width:641px){.sitehead{margin-top:-23px}}
@media (max-width:640px){.sitehead{margin-top:-10px}}
.sitehead nav a{white-space:nowrap}
.homelink{gap:10px;font-size:1.35rem;font-weight:700;letter-spacing:-.01em}
.homelink:before{width:32px;height:32px;border-radius:9px;flex:none}
.wrap.narrow .sitehead{flex-wrap:nowrap}
.wrap.narrow .sitehead nav{flex-wrap:nowrap}
.wrap.narrow .sitehead nav a.hm{display:none}
.sitehead nav a.cta{font-weight:600}
@media (max-width:800px){.sitehead nav a.hm{display:none}.sitehead nav{gap:2px}.sitehead nav a{padding:10px 8px;font-size:.85rem}}
@media (max-width:640px){
  .sitehead .homelink{font-size:1.2rem;gap:8px;padding:8px 4px}
}
.sitehead .homelink{padding-left:0}
@media (max-width:480px){.sitehead .homelink{font-size:0;gap:0}}
.theme-btn{width:40px;height:40px}
.sitehead nav a:focus-visible,.homelink:focus-visible,.theme-btn:focus-visible,.kitabs button:focus-visible,.seg button:focus-visible,.layseg button:focus-visible,.qk-seg button:focus-visible,.chip:focus-visible,.qk-ex button:focus-visible,.pnav:focus-visible,.sitefoot a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
/* Segmentierte Umschalter = .kitabs-Pillen */
.seg,.layseg,.qk-seg{display:grid;gap:4px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--panel2,transparent);overflow:visible}
.seg{grid-template-columns:repeat(auto-fit,minmax(84px,1fr))}
.layseg{display:inline-grid;grid-auto-flow:column;grid-auto-columns:1fr}
.seg button,.layseg button,.qk-seg button{border:0;border-radius:999px;background:transparent;color:var(--dim);font:inherit;font-size:.88rem;font-weight:500;padding:7px 14px;min-height:40px;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;gap:6px;box-shadow:none;cursor:pointer;transition:background .18s,color .18s}
.seg button+button,.layseg button+button,.qk-seg button+button{border-left:0}
.seg button:hover,.layseg button:hover,.qk-seg button:hover{color:var(--accent)}
.seg button.on,.layseg button.on,.qk-seg button[aria-pressed=true]{background:var(--accent-soft);color:var(--text);box-shadow:0 0 0 1px var(--accent) inset;font-weight:500}
/* Profil-Werkzeugleiste: Suche | Sortieren + Sichtbarkeit | Kacheln/Liste, darunter optional Art-Filter */
.ptool{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;margin:0 0 14px}
.ptool input[type=search]{width:100%;margin:0;height:46px;min-height:46px;padding-top:0;padding-bottom:0}
.ptool .psel{display:flex;gap:10px;min-width:0}
.ptool select{width:auto;max-width:100%;margin:0;height:46px;min-height:46px;padding:0 36px 0 14px;font-size:.92rem;color:var(--text);background-color:var(--field);cursor:pointer;-webkit-appearance:none;appearance:none;text-overflow:ellipsis;
  background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.ptool select:hover{border-color:var(--line2)}
.ptool select:focus{border-color:var(--accent)}
.ptool .layseg{height:46px;padding:3px}
.ptool .layseg button{min-height:0;height:38px;padding:0 12px;font-size:1rem}
.layseg.pkind{display:inline-grid;grid-auto-columns:auto;max-width:100%;margin:-2px 0 14px;padding:3px}
.layseg.pkind button{min-height:34px;padding:5px 14px;font-size:.86rem;white-space:nowrap}
.layseg.pkind button::after{content:attr(data-n);margin-left:6px;font-size:.78rem;opacity:.6}
@media(max-width:560px){
  .ptool{grid-template-columns:minmax(0,1fr) auto}
  .ptool .psel{grid-column:1/-1;grid-row:2}
  .ptool .psel select{flex:1 1 0;min-width:0;font-size:16px;padding:0 30px 0 12px;background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%}
  .layseg.pkind{display:grid;width:100%}
  .layseg.pkind button{padding:5px 10px}
}
/* Schnell-Umfrage: Umschalter „Frage stellen“ | „Termin finden“ */
.qk-seg.qk-mode{margin:0 0 16px}
.qk-seg.qk-mode button{min-height:44px;font-size:.95rem;font-weight:600}
.qk-hint{margin:8px 0 0;padding:8px 12px;border-radius:8px;background:var(--accent-soft);font-size:.88rem;line-height:1.45}
.qk-hint .linkbtn{background:none;border:0;padding:0;font:inherit;font-weight:600;color:var(--accent);text-decoration:underline;cursor:pointer;min-height:24px}
/* Karten 12px */
.libcard,.pubcard,.proimport,.skel,.plist,.morepop{border-radius:12px}
.proimport.big{border:1px solid var(--line);border-left:3px solid var(--accent);background:var(--panel);border-radius:12px}
button.pnav:not(.btn){border-radius:999px}
/* Überschriften */
.hero h1,.ptitle h1,.rpage h1{font-family:var(--serif);font-weight:700}
.libcard h3,.prow h3,.pf h2,.pf h3,.pside .who b{font-family:var(--serif);font-weight:700}
.hero .logo{display:none}
.t-mit .hero h1,.t-vor .hero h1{color:var(--text)}
/* Kleinteile */
.snip{background:var(--field);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}
.rbar{background:var(--bg)}
.chip,.qk-ex button{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 14px;font-size:.82rem;border-radius:99px}
@media (max-width:640px){.chip,.qk-ex button{min-height:40px}}
/* Fußzeile wie Landing */
.sitefoot{margin-top:40px;padding:28px 0 8px;border-top:1px solid var(--line);color:var(--muted);font-size:.85rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.sitefoot a{color:var(--muted)}.sitefoot a:hover{color:var(--accent)}
.sitefoot.compact{justify-content:center;text-align:center;margin-top:22px;padding:14px 0 4px;font-size:.8rem}
@media (max-width:640px){.sitefoot span:last-child{line-height:1.2}.sitefoot span:last-child a{display:inline-flex;align-items:center;min-height:40px}}
.shtheme{position:absolute;top:calc(12px + env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right))}
.share{position:relative}
/* Wiederkehrende Treffen: Verlauf (Diagrammfarben geprüft: Helligkeitsband, Farbsehschwäche, Kontrast) */
:root{--c0:#e0344f;--c1:#0063f2;--c2:#008a70;--c3:#b06f00;--c4:#9900f4;--c5:#c2357a;--c6:#4f7d14}
:root[data-theme="dark"]{--c0:#e8485f;--c1:#3a86ec;--c2:#00a98a;--c3:#bd8015;--c4:#a94de0;--c5:#d2568f;--c6:#6f9a2c}
.rhist .rchart{margin:18px 0 0;padding-top:14px;border-top:1px solid var(--line)}.rhist .rchart:first-of-type{border-top:0;padding-top:4px}
.rhist .rchart h3{font-size:.98rem;margin:0;overflow-wrap:anywhere}.rhist .rsub{font-size:.8rem;margin:2px 0 8px}
.rhist svg{display:block;width:100%;max-width:440px;height:auto;touch-action:manipulation}
.rhist .rgrid{stroke:var(--line);stroke-width:1}.rhist .raxis{fill:var(--muted);font-size:10px}.rhist .rval{fill:var(--text);font-size:11px;font-weight:600}
.rhist .rline{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.rhist .rdot{stroke-width:2}.rhist .rdot.now{fill:var(--card)}.rhist .rcross{stroke:var(--line2);stroke-width:1;stroke-dasharray:3 3}
.rhist .rhit{fill:transparent;cursor:pointer}
.rhist .rtip{font-size:.85rem;margin:8px 0 0;min-height:1.3em;line-height:1.5;overflow-wrap:anywhere}.rhist .rti{white-space:nowrap;margin-right:8px}
.rhist .rleg{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.82rem;color:var(--muted);margin:6px 0 0;padding:0;list-style:none}.rhist .rleg li{overflow-wrap:anywhere}
.rhist .rleg i,.rhist .rti i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px}
.pnav.plogout{color:var(--muted)}.pnav.plogout:hover{color:var(--accent)}
html{scrollbar-gutter:stable}.hzh{display:block;position:sticky;top:0;z-index:50;margin:0;padding:env(safe-area-inset-top) 0 0;background:var(--bg);border:0;font-family:var(--sans);line-height:1.2;text-align:left}.hzh.flat{position:relative}.hzh[hidden],.hzf[hidden]{display:none!important}.hzh-in{max-width:1040px;height:68px;margin:0 auto;padding:0 max(24px,env(safe-area-inset-right)) 0 max(24px,env(safe-area-inset-left));display:flex;align-items:center;justify-content:space-between;gap:12px}.hzh-brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;flex:none;font-family:var(--serif);font-weight:700;font-size:1.35rem;line-height:1;letter-spacing:-.01em;color:var(--text);text-decoration:none}.hzh-brand:hover{color:var(--text)}.hzh-brand i,.hzf-logo i{display:block;flex:none;width:32px;height:32px;font-style:normal;line-height:0}.hzh-brand svg,.hzf-logo svg{display:block;width:100%;height:100%}.hzh-nav{display:flex;align-items:center;gap:4px;min-width:0;margin:0;padding:0;font-size:.92rem;background:none;position:static}.hzh-nav a{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;padding:10px 12px;border-radius:99px;color:var(--dim,var(--text));font-weight:500;line-height:1.2;text-decoration:none;white-space:nowrap;transition:background .18s,color .18s}.hzh-nav a:hover{background:var(--accent-soft,var(--soft));color:var(--accent);text-decoration:none}.hzh-nav a.hzl[aria-current]{background:var(--accent-soft,var(--soft));color:var(--accent)}.hzh-nav a.hzh-lang{min-width:46px;font-weight:600}.hzh-nav a.hzh-cta,.hzh-nav a.hzh-cta:hover{min-width:118px;font-weight:600;background:var(--accent);color:#fff}.hzh-nav a.hzh-cta:hover{background:var(--accent-hover,var(--hover,var(--accent)))}.hzh .theme-btn{flex:none;box-sizing:border-box;width:40px;height:40px;min-height:0;margin:0 0 0 4px;padding:0;display:grid;place-items:center;background:var(--panel,var(--bg));color:var(--muted);border:1px solid var(--line2,var(--line));border-radius:50%;cursor:pointer}.hzh .theme-btn:hover{color:var(--accent);border-color:var(--accent);background:var(--panel,var(--bg))}.hzh .theme-btn svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.hzh a:focus-visible,.hzh button:focus-visible,.hzf a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:800px){.hzh-nav a.hm{display:none}}.hzh-nav a.hq{gap:5px;color:var(--accent);font-weight:600;box-shadow:inset 0 0 0 1.5px var(--accent)}.hzh-nav a.hq svg{width:15px;height:15px;flex:none;fill:currentColor}@media(max-width:900px){.hzh-nav a.hh{display:none}}@media(max-width:640px){.hzh-in{gap:6px}.hzh-nav{gap:2px}.hzh-nav a{padding:10px 8px;font-size:.85rem}.hzh-nav a.hzh-lang{min-width:40px}.hzh-nav a.hzh-cta,.hzh-nav a.hzh-cta:hover{min-width:102px}.hzh-brand{gap:8px;font-size:1.2rem}}@media(max-width:560px){.hzh-in{height:64px;padding:0 max(14px,env(safe-area-inset-right)) 0 max(14px,env(safe-area-inset-left))}}@media(max-width:480px){.hzh-brand{gap:0}.hzh-brand .hzh-name{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}@media(max-width:400px){.hzh-nav a.hzh-cta,.hzh-nav a.hzh-cta:hover{min-width:0;padding:10px 10px}.hzh-nav a.hzh-lang{min-width:34px;padding:10px 4px}.hzh-nav a.hq{padding:10px 8px;gap:4px}.hzh-nav{gap:0}.hzh-in{gap:4px}}.hzf{display:block;margin:56px 0 0;padding:0;border:0;border-top:1px solid var(--line);background:var(--panel,var(--bg));color:var(--muted);font-family:var(--sans);font-size:.9rem;line-height:1.5;text-align:left}.hzf-in{max-width:1040px;margin:0 auto;padding:44px max(24px,env(safe-area-inset-right)) calc(26px + env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left))}.hzf-top{display:grid;grid-template-columns:minmax(0,1.6fr) repeat(3,minmax(0,1fr));gap:32px}.hzf-logo{display:inline-flex;align-items:center;gap:10px;font-family:var(--serif);font-weight:700;font-size:1.2rem;letter-spacing:-.01em;color:var(--text)!important;text-decoration:none}.hzf-logo i{width:28px;height:28px}.hzf p{margin:0;color:inherit}.hzf-about p{margin-top:12px;max-width:34ch}.hzf-about .hzf-tag{margin-top:8px;font-size:.82rem}.hzf-col{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.hzf .hzf-h{margin:0 0 8px;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.hzf a{color:var(--muted);text-decoration:none}.hzf a:hover{color:var(--accent);text-decoration:none}.hzf-col a{padding:4px 0}.hzf-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;margin-top:36px;padding-top:18px;border-top:1px solid var(--line);font-size:.82rem}.hzf-bot a{text-decoration:underline;text-underline-offset:2px}.is-app .hzf-inst{display:none}@media(max-width:800px){.hzf-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}.hzf-about{grid-column:1/-1}}@media(max-width:560px){.hzf{margin-top:40px}.hzf-in{padding:32px max(14px,env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}.hzf-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px}.hzf-col a{display:inline-flex;align-items:center;min-height:40px;padding:0}.hzf-bot{margin-top:24px}}@media print{.hzh,.hzf{display:none!important}}
#hzhead:not([hidden])+#app.wrap{padding-top:18px}#app.wrap+#hzfoot{margin-top:16px}
