/* Steckbrief-Formular (anlegen + bearbeiten), gleiche Linie wie charakter.html.
   Wird von js/steckbrief-formular.js befuellt. Tokens kommen aus der Seite. */

.sbf{--line:rgba(196,132,58,.2);--line-soft:rgba(196,132,58,.12);--fill:rgba(196,132,58,.035);
  --r1:.4rem;--r2:.8rem;--r3:1.25rem;--r4:2rem;--col:300px;--gap:48px;
  --f-display:'Bebas Neue',Impact,sans-serif;--f-body:'Cormorant Garamond',Georgia,serif;
  --f-mono:'JetBrains Mono',ui-monospace,monospace;--f-italic:'Playfair Display',Georgia,serif;
  position:relative;isolation:isolate;max-width:1180px;margin:0 auto;padding:0 16px 6rem;font-size:18px;line-height:1.7;}
.sbf::before{content:'';position:absolute;inset:0 0 auto;height:640px;z-index:-1;pointer-events:none;
  background:radial-gradient(ellipse 45% 55% at 22% 18%,rgba(196,132,58,.12),transparent 70%),radial-gradient(ellipse 30% 45% at 80% 5%,rgba(58,138,122,.06),transparent 70%);}
.sbf [hidden]{display:none!important;}
:where(.sbf) :where(button,input,select,textarea){font:inherit;color:inherit;}
.sbf :focus-visible{outline:2px solid var(--ember-bright);outline-offset:2px;}
.sbf a{color:var(--ember-bright);}

/* Kopf */
.sbf-head{padding:2.4rem 0 1.6rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;}
.sbf-back{display:inline-block;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;margin-bottom:1rem;}
.sbf-tag{font-family:var(--f-mono);font-size:11px;letter-spacing:.35em;text-transform:uppercase;color:var(--ember);}
.sbf-h1{font-family:var(--f-display);font-weight:400;font-size:clamp(2.6rem,6vw,4.25rem);letter-spacing:.04em;line-height:.92;color:var(--white);margin-top:.5rem;}
.sbf-sub{font-family:var(--f-italic);font-style:italic;color:var(--ember-bright);font-size:1.15rem;margin-top:.5rem;}
.sbf-meta{font-family:var(--f-mono);font-size:11.5px;color:var(--mist);text-align:right;line-height:1.7;}

/* Raster */
.sbf-grid{display:grid;grid-template-columns:var(--col) minmax(0,1fr);gap:var(--gap);align-items:start;}
.sbf-msg{padding:.9rem 1rem;margin-bottom:var(--r3);font-size:1rem;border:1px solid;display:none;}
.sbf-msg.msg-error{background:rgba(176,74,90,.1);border-color:rgba(176,74,90,.4);color:var(--rose);display:block;}
.sbf-msg.msg-success{background:rgba(58,138,122,.1);border-color:rgba(58,138,122,.4);color:var(--teal);display:block;}
.sbf-msg.msg-info{background:rgba(196,132,58,.08);border-color:rgba(196,132,58,.3);color:var(--ember);display:block;}

/* Fortschritt */
.sbf-progress{position:sticky;top:var(--cmnav-h,58px);z-index:5;padding:1.1rem 0 .9rem;margin-bottom:var(--r3);border-bottom:1px solid rgba(196,132,58,.25);background:transparent;transition:background-color .25s;}
.sbf-progress::after{content:'';position:absolute;left:0;right:0;top:100%;height:18px;pointer-events:none;opacity:0;transition:opacity .25s;background:linear-gradient(color-mix(in srgb,var(--void) 60%,transparent),transparent);}
.sbf-progress.stuck{background:color-mix(in srgb,var(--void) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);}
.sbf-progress.stuck::after{opacity:1;}
.sbf-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:.4rem;list-style:none;margin:0;padding:0;}
.sbf-steps button{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;background:none;border:0;cursor:pointer;text-align:left;padding:0;}
.sbf-steps .bar{display:block;width:100%;height:4px;border-radius:2px;background:var(--dusk);overflow:hidden;}
.sbf-steps .bar i{display:block;height:100%;width:0;background:var(--ember);transition:width .35s;}
.sbf-steps .lbl{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--mist);line-height:1.5;padding-top:.15rem;}
.sbf-steps button.cur .lbl{color:var(--ember-bright);}
.sbf-steps .num{color:var(--fog);margin-right:.35em;}
.sbf-pmeta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.3rem 1rem;font-family:var(--f-mono);font-size:11px;color:var(--fog);margin-top:.7rem;line-height:1.5;}
.sbf-saved{color:var(--teal);}
.sbf-linkbtn{background:none;border:0;padding:0;cursor:pointer;font-family:var(--f-mono);font-size:11px;color:var(--ember);text-decoration:underline;text-underline-offset:3px;}

/* Einfuegen-Box */
.sbf-quick{border:1px solid var(--line);border-radius:3px;background:rgba(196,132,58,.04);margin-bottom:var(--r3);}
.sbf-quick summary{cursor:pointer;list-style:none;padding:.8rem 1rem;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ember);}
.sbf-quick summary::-webkit-details-marker{display:none;}
.sbf-quick-body{padding:0 1rem 1rem;display:flex;flex-direction:column;gap:var(--r2);}
.sbf-quick-body p{font-size:1rem;color:var(--mist);line-height:1.5;margin:0;}

/* Abschnitte */
#sbfS0{border-top:0;padding-top:var(--r2);}
.sbf-sec{border-top:1px solid rgba(196,132,58,.22);padding:var(--r4) 0;scroll-margin-top:calc(var(--cmnav-h,58px) + 110px);}
.sbf-sec-head{position:relative;display:flex;align-items:center;margin-bottom:var(--r3);}
.sbf-sec-head::before{content:'';position:absolute;left:-17px;top:50%;margin-top:-3.5px;width:7px;height:7px;border-radius:50%;background:var(--ember);box-shadow:0 0 10px rgba(218,160,74,.7);}
.sbf-sec-title{font-family:var(--f-mono);font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--ember);font-weight:400;margin:0;}
.sbf-sec-num{margin-left:auto;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.18em;color:var(--fog);}
.sbf-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--r3);}
.sbf-grid2 .wide{grid-column:1/-1;}
.sbf-blk{margin-bottom:var(--r3);}
.sbf-stack{display:flex;flex-direction:column;gap:var(--r3);}
.sbf-field{display:flex;flex-direction:column;gap:var(--r1);min-width:0;}
.sbf-label{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);}
.sbf-label .req{color:var(--ember);}
.sbf-label .opt{text-transform:none;letter-spacing:.02em;color:var(--fog);opacity:.8;}
.sbf-in{width:100%;background:var(--fill);border:1px solid var(--line);padding:.7rem .85rem;font-family:var(--f-body);font-size:1.08rem;color:var(--white);outline:none;border-radius:2px;}
.sbf-in:focus{border-color:var(--ember);box-shadow:0 0 0 3px rgba(196,132,58,.12);}
.sbf-in::placeholder{color:var(--fog);font-style:italic;}
select.sbf-in{cursor:pointer;}
.sbf select option,.sbf select optgroup{background-color:var(--night);color:var(--bone);}
.sbf select optgroup{color:var(--ember);font-style:normal;}
.sbf-row2{display:grid;grid-template-columns:1fr 1.4fr;gap:.5rem;}
.sbf-hint,.sbf-ok,.sbf-warn{font-family:var(--f-mono);font-size:11.5px;line-height:1.55;margin-top:-.1rem;}
.sbf-hint{color:var(--fog);}
.sbf-ok{color:var(--teal);}
.sbf-warn{color:var(--rose);}
.sbf-hint:empty,.sbf-ok:empty,.sbf-warn:empty{display:none;}

/* Motto */
.sbf-motto{display:flex;flex-direction:column;gap:var(--r1);}
.sbf-tools{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center;}
.sbf-tools button{min-width:40px;height:36px;border:1px solid var(--line);background:var(--fill);cursor:pointer;color:var(--mist);font-family:var(--f-body);font-size:1rem;padding:0 .6rem;border-radius:2px;}
.sbf-tools button[aria-pressed="true"]{border-color:var(--ember);color:var(--ember-bright);background:rgba(196,132,58,.14);}
.sbf-tools .sep{width:1px;height:22px;background:var(--dusk);margin:0 .3rem;}
.sbf-motto-prev{font-family:var(--f-body);color:var(--white);line-height:1.3;}
.sbf-motto-prev:not(:empty){border-left:2px solid var(--ember);padding:.2rem 0 .2rem var(--r2);margin-top:var(--r1);}

/* Schaltergruppen, Chips */
.sbf-seg{display:flex;flex-wrap:wrap;gap:.4rem;}
.sbf-seg button,.sbf-chip{border:1px solid var(--line);background:var(--fill);padding:.45rem .9rem;font-family:var(--f-mono);font-size:11.5px;cursor:pointer;color:var(--mist);border-radius:2px;}
.sbf-seg button[aria-pressed="true"],.sbf-chip[aria-pressed="true"]{border-color:var(--ember);color:var(--ember-bright);background:rgba(196,132,58,.14);}
.sbf-chip[aria-disabled="true"]{opacity:.4;cursor:not-allowed;}
.sbf-chips{display:flex;flex-wrap:wrap;gap:.45rem;}

/* Aussehen */
.sbf-fc{display:grid;grid-template-columns:170px minmax(0,1fr);gap:var(--r3);align-items:stretch;margin-bottom:var(--r3);}
.sbf-drop{position:relative;min-height:212px;border:1px dashed rgba(196,132,58,.35);display:grid;place-items:center;text-align:center;font-family:var(--f-mono);font-size:11px;line-height:1.5;color:var(--fog);cursor:pointer;background:rgba(196,132,58,.04) center/cover no-repeat;padding:.6rem;transition:border-color .2s;}
.sbf-drop small{display:block;margin-top:var(--r1);font-size:10px;opacity:.8;}
.sbf-drop.over,.sbf-drop:hover{border-color:var(--ember);color:var(--ember);}
.sbf-drop.has{border-style:solid;color:transparent;}
.sbf-drop.has small{display:none;}
.sbf-fc-side{display:flex;flex-direction:column;justify-content:space-between;gap:var(--r3);min-width:0;}
.sbf-fcfile{display:flex;flex-wrap:wrap;gap:.3rem .8rem;align-items:baseline;}

/* Textkarten */
.sbf-story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--r3);}
.sbf-story{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--fill);border-radius:2px;transition:border-color .2s;min-width:0;}
.sbf-story.wide{grid-column:1/-1;}
.sbf-story:focus-within{border-color:var(--ember);}
.sbf-story-top{display:flex;justify-content:space-between;align-items:baseline;gap:var(--r2);padding:var(--r2) var(--r2) var(--r1);}
.sbf-count{font-family:var(--f-mono);font-size:11px;color:var(--fog);text-align:right;flex-shrink:0;font-variant-numeric:tabular-nums;}
.sbf-prompts{display:flex;flex-wrap:wrap;gap:.35rem;padding:0 var(--r2) var(--r2);border-bottom:1px solid var(--line-soft);}
.sbf-prompts button{font-family:var(--f-mono);font-size:11px;color:var(--mist);background:none;border:1px solid var(--line);border-radius:999px;padding:.28rem .65rem;cursor:pointer;}
.sbf-prompts button:hover{color:var(--ember);border-color:var(--ember);}
.sbf-lf{padding:0 var(--r2) var(--r2);border-bottom:1px solid var(--line-soft);}
.sbf-lf summary{display:inline-block;cursor:pointer;list-style:none;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;color:var(--ember);border:1px solid var(--line);border-radius:999px;padding:.25rem .7rem;}
.sbf-lf summary::-webkit-details-marker{display:none;}
.sbf-lf .sbf-prompts{padding:var(--r1) 0 0;border:0;}
.sbf-story textarea{width:100%;border:0;background:transparent;outline:none;resize:vertical;padding:var(--r2);min-height:150px;font-family:var(--f-body);font-size:1.08rem;line-height:1.6;color:var(--white);}
.sbf-story textarea::placeholder{color:var(--fog);font-style:italic;}
.sbf-story.tall textarea{min-height:380px;}
.sbf-story-grid .sbf-story:not(.wide) textarea{min-height:260px;}
.sbf-links{padding:var(--r2);border-top:1px solid var(--line-soft);display:flex;flex-direction:column;gap:var(--r1);}
.sbf-nlink{display:inline-flex;align-items:center;font-family:var(--f-mono);font-size:11.5px;padding:.3rem .65rem;border:1px solid var(--teal);color:var(--teal);background:none;cursor:pointer;border-radius:999px;}
.sbf-nlink[aria-pressed="false"]{border-color:var(--dusk);color:var(--fog);text-decoration:line-through;}

/* Einordnung */
.sbf-pick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;}
.sbf-pick{text-align:left;border:1px solid var(--line);border-left:4px solid var(--acc,var(--dusk));background:var(--fill);padding:.55rem .6rem;cursor:pointer;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bone);line-height:1.3;border-radius:2px;min-width:0;overflow-wrap:anywhere;hyphens:auto;}
.sbf-pick[aria-pressed="true"]{background:rgba(196,132,58,.14);border-color:var(--ember);border-left-color:var(--acc,var(--ember));}
.sbf-stufen{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;}
.sbf-stufen button{border:0;cursor:pointer;padding:.55rem .3rem;background:rgba(196,132,58,.06);color:var(--mist);font-family:var(--f-mono);font-size:11px;display:flex;flex-direction:column;align-items:center;gap:.1rem;}
.sbf-stufen button b{font-family:var(--f-display);font-weight:400;font-size:1.3rem;line-height:1;}
.sbf-stufen button.on{background:var(--ember);color:var(--void);}
.sbf-stufen button.sel{outline:2px solid var(--ember-bright);outline-offset:2px;}
.sbf-stufe-akt{font-family:var(--f-mono);font-size:11.5px;color:var(--bone);}

/* Kurse */
.sbf-klapp{border:1px solid var(--line);background:var(--fill);border-radius:2px;}
.sbf-klapp[open]{border-color:rgba(196,132,58,.4);}
.sbf-klapp summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:var(--r2);padding:var(--r2);}
.sbf-klapp summary::-webkit-details-marker{display:none;}
.sbf-klapp-wahl{flex:1;min-width:0;text-align:right;font-family:var(--f-mono);font-size:11px;color:var(--ember-bright);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sbf-klapp-wahl.leer{color:var(--fog);}
.sbf-klapp-pfeil{width:8px;height:8px;border-right:1.5px solid var(--ember);border-bottom:1.5px solid var(--ember);transform:rotate(45deg);margin-top:-4px;transition:transform .2s;flex-shrink:0;}
.sbf-klapp[open] .sbf-klapp-pfeil{transform:rotate(225deg);margin-top:4px;}
.sbf-klapp .sbf-chips{padding:var(--r2);border-top:1px solid var(--line-soft);}

/* Checkliste und Knoepfe */
.sbf-check{border:1px solid rgba(196,132,58,.22);padding:var(--r3);margin-top:var(--r3);}
.sbf-check ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:.2rem 1rem;margin:var(--r2) 0 0;padding:0;}
.sbf-check li{font-size:1rem;display:flex;gap:.5rem;align-items:baseline;}
.sbf-check li::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--teal);flex-shrink:0;transform:translateY(-1px);}
.sbf-check li.leer{color:var(--fog);}
.sbf-check li.leer::before{background:transparent;border:1px solid var(--fog);}
.sbf-check .sbf-hint{margin-top:var(--r2);}
.sbf-btn{border:0;background:var(--ember);color:var(--void);font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:.8rem 1.2rem;cursor:pointer;border-radius:3px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.sbf-btn:hover{background:var(--ember-bright);}
.sbf-btn:disabled{opacity:.55;cursor:not-allowed;}
.sbf-btn.ghost{background:rgba(196,132,58,.05);border:1px solid rgba(196,132,58,.35);color:var(--bone);}
.sbf-btn.ghost:hover{color:var(--ember-bright);background:rgba(196,132,58,.14);}
.sbf-submit{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:var(--r3);}
.sbf-wa-out{width:100%;margin-top:var(--r2);background:var(--fill);border:1px solid var(--line);color:var(--bone);font-family:var(--f-mono);font-size:.82rem;line-height:1.5;padding:.8rem .9rem;white-space:pre-wrap;border-radius:2px;}

/* Beziehungen */
.sbf-bz{margin-top:var(--r3);border:1px solid var(--line);background:var(--fill);padding:var(--r3);display:flex;flex-direction:column;gap:var(--r3);border-radius:2px;}
.sbf-bz-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--r2);}
.sbf-bz-head .sbf-label{color:var(--ember);}
.sbf-bz-lock{font-family:var(--f-mono);font-size:11.5px;color:var(--mist);line-height:1.55;border-left:2px solid var(--ember);padding-left:var(--r2);margin:0;}
.sbf-bz-part{display:flex;flex-direction:column;gap:var(--r1);border-top:1px solid var(--line-soft);padding-top:var(--r3);}
.sbf-bz-sub{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fog);}
.sbf-bz-sub b{color:var(--ember);font-weight:500;margin-left:.3rem;}
.sbf-bz-part .sbf-bz-sub:not(:first-child){margin-top:var(--r2);}
.sbf-bz-row{display:flex;align-items:center;gap:var(--r2);padding:var(--r2);border:1px solid var(--line-soft);background:rgba(8,9,14,.2);}
.sbf-bz-i{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;border:2px solid var(--acc,var(--dusk));font-family:var(--f-display);font-size:1.1rem;color:var(--bone);}
.sbf-bz-txt{flex:1;min-width:0;line-height:1.3;}
.sbf-bz-txt b{display:block;font-family:var(--f-display);font-weight:400;font-size:1.15rem;letter-spacing:.04em;color:var(--white);}
.sbf-bz-txt small{font-family:var(--f-mono);font-size:11px;color:var(--mist);}
.sbf-bz-act{display:flex;flex-wrap:wrap;gap:.3rem;align-items:center;}
.sbf-mini{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .65rem;border:1px solid var(--line);background:var(--fill);color:var(--mist);cursor:pointer;border-radius:2px;}
.sbf-mini.on{background:var(--ember);border-color:var(--ember);color:var(--void);}
.sbf-mini:hover{border-color:var(--ember);}
.sbf-mini:disabled{opacity:.5;cursor:wait;}
.sbf-bz-form{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;gap:var(--r1);}
.sbf-bz-fam{display:grid;grid-template-columns:1fr 1fr;gap:var(--r1);}
.sbf-bz-empty{font-family:var(--f-mono);font-size:11.5px;color:var(--fog);}

/* Vorschau */
.sbf-preview{order:-1;position:sticky;top:calc(var(--cmnav-h,58px) + 1rem);}
.sbf-preview-k{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--ember);padding:0 0 .7rem;}
.sbf-pv-img{aspect-ratio:4/5;position:relative;display:grid;place-items:center;background:linear-gradient(160deg,#3a2f28,#12141c) center/cover no-repeat;box-shadow:0 30px 60px -30px rgba(0,0,0,.9);}
.sbf-pv-img::before{content:'';position:absolute;inset:-18% -12% -10%;z-index:-1;background:radial-gradient(closest-side,rgba(218,160,74,.4),rgba(196,132,58,.12) 55%,transparent 75%);}
.sbf-pv-img::after{content:'';position:absolute;left:0;right:0;bottom:0;height:38%;background:linear-gradient(90deg,var(--acc),var(--acc2));opacity:.4;mix-blend-mode:screen;-webkit-mask-image:linear-gradient(0deg,#000,transparent);mask-image:linear-gradient(0deg,#000,transparent);}
.sbf-pv-img .ini{font-family:var(--f-display);font-size:4rem;color:rgba(234,228,220,.3);}
.sbf-pv-img.has .ini{display:none;}
.sbf-pv-body{padding:1.1rem 0 0;display:flex;flex-direction:column;gap:.6rem;}
.sbf-pv-name{font-family:var(--f-display);font-size:2.3rem;letter-spacing:.04em;color:var(--white);line-height:.95;overflow-wrap:anywhere;}
.sbf-pv-motto{color:var(--mist);display:flex;align-items:center;gap:.6rem;line-height:1.3;}
.sbf-pv-motto::before{content:'';width:20px;height:1px;background:var(--ember-dim,#8a5c20);flex-shrink:0;}
.sbf-pv-ident{display:flex;flex-direction:column;gap:.4rem;margin:.2rem 0 0;}
.sbf-pv-ident div{display:flex;flex-direction:column;gap:.2rem;}
.sbf-pv-ident dt{font-family:var(--f-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ember);}
.sbf-pv-ident dd{display:flex;flex-wrap:wrap;gap:.3rem;margin:0;}
.sbf-pbadge{font-family:var(--f-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:.22rem .5rem;border:1px solid var(--dusk);color:var(--mist);}
.sbf-pbadge.fr{border-color:var(--c);border-left-width:3px;color:var(--bone);}
.sbf-fcv{font-size:1.05rem;color:var(--white);}
.sbf-pv-sub{font-family:var(--f-italic);font-style:italic;color:var(--ember-bright);font-size:1rem;}
.sbf-pv-map{margin:1rem 0 0;}
.sbf-pv-map svg{width:100%;height:auto;display:block;}
.sbf-pv-map figcaption{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--fog);margin-top:.4rem;}
.sbf .sk-grid{stroke:var(--mist);stroke-opacity:.07;stroke-width:1;}
.sbf .sk-ring{fill:none;stroke:#c4843a;stroke-linejoin:round;}
.sbf .sk-cut{fill:none;stroke:var(--void);stroke-linejoin:round;}
.sbf .sk-isl{fill:var(--night);stroke:#c4843a;stroke-opacity:.6;stroke-width:1.6;}
.sbf .sk-zone{fill:url(#sbfHatch);stroke:#daa04a;stroke-width:2;}
.sbf .sk-h{stroke:#daa04a;stroke-width:1.4;stroke-opacity:.75;}
.sbf .sk-vulk{fill:none;stroke:var(--mist);stroke-opacity:.35;}
.sbf .sk-pr{fill:none;stroke:#daa04a;stroke-width:1.5;}
.sbf .sk-pin,.sbf .sk-n{fill:#daa04a;}
.sbf .sk-o{fill:var(--mist);fill-opacity:.4;}
.sbf .sk-rb{fill:var(--void);fill-opacity:.6;stroke:var(--mist);stroke-opacity:.45;stroke-width:1.2;}
.sbf .sk-t{font-family:'JetBrains Mono',monospace;letter-spacing:3px;fill:var(--mist);}
.sbf .sk-t.on{fill:#daa04a;}

/* Handy-Leiste und Overlays */
.sbf-mbar{display:none;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:.6rem 16px calc(.6rem + env(safe-area-inset-bottom,0px));background:var(--void);border-top:1px solid var(--dusk);gap:.6rem;}
.sbf-mbar .sbf-btn{flex:1;}
.sbf-overlay{position:fixed;inset:0;z-index:700;background:rgba(0,0,0,.6);display:flex;align-items:flex-end;justify-content:center;padding:1rem 16px calc(1rem + env(safe-area-inset-bottom,0px));}
.sbf-overlay-card{background:var(--void);border:1px solid var(--dusk);width:min(460px,100%);max-height:88vh;overflow:auto;padding:1.2rem;display:flex;flex-direction:column;gap:.8rem;}
.sbf-diff-row{border-left:3px solid var(--ember);padding-left:.8rem;overflow-wrap:anywhere;}
.sbf-diff-row small{display:block;font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fog);}
.sbf-diff-row del{color:var(--fog);}
.sbf-diff-row ins{text-decoration:none;color:var(--white);}

/* Gefahrenzone (bearbeiten) */
.sbf-danger{margin-top:3rem;border:1px solid rgba(176,74,90,.35);padding:var(--r3);display:flex;flex-direction:column;gap:var(--r2);}
.sbf-danger .sbf-label{color:var(--rose);}
.sbf-danger p{margin:0;font-size:1rem;color:var(--mist);}
.sbf-btn.danger{background:none;border:1px solid rgba(176,74,90,.6);color:var(--rose);align-self:flex-start;}
.sbf-btn.danger:not(:disabled):hover{background:rgba(176,74,90,.15);}

/* Erfolg */
.sbf-success{max-width:620px;margin:3rem auto;border:1px solid var(--line);border-left:3px solid var(--teal);padding:2.2rem 2rem;text-align:center;background:var(--fill);}
.sbf-success h2{font-family:var(--f-display);font-weight:400;font-size:2rem;letter-spacing:.04em;color:var(--white);margin:.6rem 0 1rem;}
.sbf-success p{margin:0 0 1.4rem;}
.sbf-success .sbf-submit{justify-content:center;}

@media (max-width:900px){
  .sbf-grid{grid-template-columns:minmax(0,1fr);}
  .sbf-preview{display:none;}
  .sbf-mbar{display:flex;}
  .sbf-pick-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:640px){
  .sbf-grid2,.sbf-story-grid,.sbf-check ul,.sbf-bz-form,.sbf-bz-fam{grid-template-columns:minmax(0,1fr);}
  .sbf-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .sbf-steps .lbl .t{display:none;}
  .sbf-sec-head::before{left:-12px;}
  .sbf-fc{grid-template-columns:120px minmax(0,1fr);}
  .sbf-drop{min-height:0;}
  .sbf-bz-row{flex-wrap:wrap;}
  .sbf-bz-act{width:100%;}
  .sbf-submit .sbf-btn{flex:1;}
}
@media (prefers-reduced-motion:reduce){.sbf *{transition:none!important;}}
