/* Silbermuschel Heilsteine. Überall Comic Sans MS.
   Grundgerüst wie Qigong und die Chakren (von Gordon abgenommen): ein Kasten
   auf einen Bildschirm, Leiste unten mit „Mehr“, Musik-Knopf oben rechts,
   kräftige Abwehr gegen das Theme. Farben: Creme, braune Tinte, dazu zartes
   Amethyst, Rosenquarz und Aquamarin – ruhig und harmonisch. */

.shs-w, .shs-box, .shs-druck{
  --w-creme:#faf3e3; --w-perg:#fffcf4; --w-tinte:#4a3826; --w-tief:#3a2b1c; --w-leise:#76624b;
  --w-ame:#7d64a0; --w-ame-tief:#5f4a7e; --w-lav:#bcaad4; --w-ame-hell:#ece4f4; --w-ame-zart:#f6f1fa;
  --w-rose:#e3b6c1; --w-rose-hell:#f8e8ec; --w-aqua:#98cbc6; --w-aqua-hell:#e2f1ef;
  --w-messing:#c8a96a; --w-rand:#e6d9bd;
}
.shs-w, .shs-w *, .shs-box, .shs-box *{
  font-family:"Comic Sans MS","Comic Neue","Comic Sans","Chalkboard SE","Segoe Print",cursive !important;
  box-sizing:border-box;
  letter-spacing:normal !important; hyphens:manual !important; -webkit-hyphens:manual !important;
  word-break:normal !important; overflow-wrap:break-word; text-transform:none !important;
}

/* --- Der Kasten ------------------------------------------------------ */
.shs-w{
  position:relative; overflow:hidden; isolation:isolate;
  max-width:1000px; margin:12px auto !important; border-radius:22px;
  border:1px solid var(--w-rand); color:var(--w-tinte); text-align:left;
  background:
    radial-gradient(90% 60% at 50% 0%, rgba(188,170,212,.26) 0%, rgba(188,170,212,0) 65%),
    radial-gradient(70% 60% at 100% 100%, rgba(152,203,198,.2) 0%, rgba(152,203,198,0) 70%),
    radial-gradient(60% 50% at 0% 100%, rgba(227,182,193,.2) 0%, rgba(227,182,193,0) 70%),
    linear-gradient(180deg,#fdf8ec 0%,#faf3e3 60%,#f6eedb 100%);
  box-shadow:0 18px 40px -24px rgba(90,70,40,.55), inset 0 0 0 4px rgba(255,255,255,.55);
  height:calc(100vh - 24px); height:calc(100svh - 24px); max-height:860px; min-height:520px;
  display:flex; flex-direction:column;
}
.shs-w-buehne{position:relative; z-index:1; flex:1 1 auto; min-height:0; display:flex; flex-direction:column; overflow:auto; padding:14px 22px 8px}
.shs-szene{flex:1 1 auto; min-height:0; display:flex; flex-direction:column; animation:shsRein .55s cubic-bezier(.2,.7,.2,1) both}
.shs-szene.raus{animation:shsRaus .24s ease both}
@keyframes shsRein{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}
@keyframes shsRaus{to{opacity:0;transform:translateY(-8px)}}
@keyframes shsAuf{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes shsVonRechts{from{opacity:0; transform:translateX(36px)}to{opacity:1; transform:none}}
@keyframes shsVonLinks{from{opacity:0; transform:translateX(-36px)}to{opacity:1; transform:none}}
@keyframes shsSchweben{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}

.shs-w h2,.shs-w h3,.shs-w h4{color:var(--w-tief); margin:0; line-height:1.22; font-weight:700; padding:0; border:0; background:none; text-align:left}
.shs-w h2:focus,.shs-w h3:focus{outline:none}
.shs-w h2{font-size:clamp(1.3rem,2.4vw,1.75rem)}
.shs-w h3{font-size:1.15rem}
.shs-w h4{font-size:1rem}
.shs-w p{margin:0; line-height:1.5}
.shs-w ul,.shs-w ol{margin:0; padding:0}
.shs-w li{margin:0}
.shs-w a{opacity:1 !important}
.shs-w svg{overflow:visible; max-width:100%}
.shs-w img{border:0 !important; box-shadow:none !important; margin:0 !important; max-width:100%}
.shs-w figure{margin:0 !important; padding:0}
.shs-w blockquote{quotes:none}
.shs-w .shs-ic{width:1.1em; height:1.1em; display:inline-block; vertical-align:-.16em; flex:0 0 auto}
.shs-w .shs-stein-svg{display:block; width:100%; height:100%; max-width:none !important; overflow:visible}
.shs-unter{color:var(--w-leise); font-size:.93rem}
.shs-klein-hinweis{font-size:.8rem !important; color:var(--w-leise); line-height:1.4 !important; margin-top:8px !important}
.shs-w .shs-feldname{font-weight:700; color:var(--w-tief); font-size:.92rem !important; margin:4px 0 3px !important}
.shs-punkt{display:inline-block; flex:0 0 auto; width:12px; height:12px; border-radius:50%; border:1px solid rgba(74,56,38,.25); vertical-align:-1px; margin-right:6px}
.shs-punkt.bunt{background:conic-gradient(#8fd3ff,#9be3b5,#ffe08a,#ffa9c2,#b9a2ff,#8fd3ff)}

/* --- Knöpfe: Abwehr gegen das Theme ------------------------------------ */
.shs-w button, .shs-w select, .shs-w input{margin:0 !important; box-shadow:none !important; text-shadow:none !important; letter-spacing:normal !important; max-width:100%}
.shs-w button{cursor:pointer; width:auto !important; flex:0 0 auto; gap:0 !important; font-weight:400; min-height:0; line-height:1.2; border-radius:0}
.shs-w button:disabled{cursor:default; opacity:.4}
.shs-w button:focus{outline:none !important}
.shs-w button:focus-visible{outline:2px solid var(--w-ame) !important; outline-offset:2px}
.shs-w button::before,.shs-w button::after,.shs-box a::before,.shs-box a::after,.shs-w a::before,.shs-w a::after{content:none !important; display:none !important}

.shs-w .shs-knopf{
  display:inline-flex !important; align-items:center; justify-content:center; gap:7px !important;
  font-size:.95rem !important; padding:7px 16px !important; min-height:38px !important; line-height:1.15 !important; text-decoration:none !important; white-space:nowrap;
  border:1px solid var(--w-messing) !important; border-radius:999px !important;
  background:linear-gradient(180deg,#fffaf0 0%,#f2e7cd 100%) !important; color:var(--w-tief) !important;
  transition:background .25s, color .25s, transform .2s}
.shs-w .shs-knopf:not(:disabled):hover,.shs-w .shs-knopf:focus-visible{background:var(--w-ame) !important; color:#fff !important; border-color:var(--w-ame-tief) !important; transform:translateY(-1px)}
.shs-w .shs-knopf.haupt{background:var(--w-ame) !important; color:#fdfbff !important; border-color:var(--w-ame-tief) !important}
.shs-w .shs-knopf.haupt:not(:disabled):hover{background:var(--w-ame-tief) !important}
.shs-w .shs-klein{padding:5px 13px !important; min-height:34px !important; font-size:.88rem !important}
.shs-w .shs-gross{font-size:1.05rem !important; padding:10px 22px !important; min-height:46px !important}
.shs-w .shs-pfeil-knopf{width:44px !important; padding:0 !important}
.shs-w .shs-link{display:inline-flex !important; align-items:center; gap:6px !important; background:none !important; border:0 !important;
  color:var(--w-ame-tief) !important; text-decoration:underline !important; text-underline-offset:3px; padding:4px 2px !important; font-size:.9rem !important}
.shs-w .shs-link:hover{color:var(--w-tief) !important}
.shs-w .shs-mini-knopf{display:inline-flex !important; align-items:center; justify-content:center; width:34px !important; height:34px !important; padding:0 !important;
  border-radius:50% !important; border:1px solid var(--w-messing) !important; background:var(--w-perg) !important; color:var(--w-tief) !important; font-size:1.05rem !important}
.shs-w .shs-mini-knopf:hover{background:var(--w-ame) !important; color:#fff !important}
.shs-knopfzeile{display:flex !important; gap:8px; align-items:center; flex-wrap:wrap; flex:0 0 auto; margin-top:8px}
.shs-knopfzeile.shs-mitte{justify-content:center}
.shs-zaehler{font-size:.85rem; color:var(--w-leise); min-width:54px; text-align:center}

.shs-w .shs-nav{display:flex !important; gap:10px; align-items:center; justify-content:space-between; margin:0 0 8px; flex:0 0 auto}
.shs-w .shs-zurueck-knopf{display:inline-flex !important; align-items:center; gap:5px !important; height:34px !important; padding:0 14px 0 10px !important; white-space:nowrap;
  border-radius:999px !important; border:1px solid var(--w-messing) !important; background:rgba(255,252,244,.92) !important; color:var(--w-tief) !important; font-size:.88rem !important; transition:background .2s,color .2s,transform .2s}
.shs-w .shs-zurueck-knopf:hover{background:var(--w-ame) !important; color:#fff !important; transform:translateX(-2px)}
.shs-blaettern{display:flex; align-items:center; gap:6px}

.shs-kopf{display:flex; gap:12px; align-items:center; flex:0 0 auto; margin:0 0 10px}
.shs-kopf-ic{flex:0 0 44px; width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.35rem;
  color:var(--w-ame-tief); background:radial-gradient(circle at 35% 30%,#fff,var(--w-ame-hell) 80%); border:1px solid #ddd0ea}
.shs-kopf-text{min-width:0}
.shs-kopf .shs-unter{font-size:.88rem; line-height:1.38}

.shs-sek{flex:1 1 auto; min-height:0; display:flex; flex-direction:column}
.shs-rumpf{flex:1 1 auto; min-height:0; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:20px; align-items:stretch}
.shs-rumpf > *{min-height:0; min-width:0}

/* --- Fußleiste (wie Chakren 1.0.2 / Qigong) ------------------------------ */
.shs-w .shs-fussleiste{position:relative; z-index:5; flex:0 0 auto; display:flex !important; justify-content:center; gap:2px; flex-wrap:nowrap;
  padding:7px 8px 9px; border-top:1px solid rgba(230,217,189,.95); background:rgba(255,252,244,.65); margin:0}
.shs-w .shs-leisten-knopf{display:inline-flex !important; align-items:center; justify-content:center; gap:5px !important;
  height:34px !important; padding:0 10px !important; border-radius:999px !important; font-size:.8rem !important; white-space:nowrap;
  border:1px solid transparent !important; background:transparent !important; color:#5e4a33 !important; transition:background .2s,color .2s,border-color .2s; min-width:0}
.shs-w .shs-leisten-knopf span{overflow:hidden; text-overflow:ellipsis; max-width:130px}
.shs-w .shs-leisten-knopf:hover{background:var(--w-perg) !important; border-color:var(--w-rand) !important; color:var(--w-ame-tief) !important}
.shs-w .shs-leisten-knopf[aria-current="page"]{background:var(--w-ame) !important; color:#fdfbff !important; border-color:var(--w-ame-tief) !important}
.shs-w .shs-leisten-knopf.nur-klein{display:none !important}
.shs-w .shs-fussleiste{justify-content:safe center}
.shs-w .shs-leisten-knopf{flex-shrink:0}
.shs-w .shs-fussleiste.eng .shs-leisten-knopf:not([aria-current="page"]) span{display:none}
.shs-w .shs-fussleiste.eng .shs-leisten-knopf{padding:0 9px !important; font-size:.95rem !important}
.shs-w .shs-fussleiste.enger .shs-leisten-knopf span{display:none}
.shs-w .shs-fussleiste.mit-mehr .shs-leisten-knopf.nur-klein{display:inline-flex !important}
.shs-w .shs-leisten-knopf.ausgelagert{display:none !important}

/* --- Fenster ------------------------------------------------------------ */
.shs-overlay{position:absolute; inset:0; z-index:20; background:rgba(60,48,30,.3); backdrop-filter:blur(4px); -webkit-backdrop-filter:blur(4px);
  display:flex; align-items:center; justify-content:center; padding:14px; animation:shsRein .3s both}
.shs-overlay-kasten{position:relative; max-width:700px; width:100%; max-height:100%; overflow:auto; background:var(--w-perg); border-radius:18px;
  border:1px solid var(--w-rand); padding:14px 20px 18px; box-shadow:0 20px 40px -20px rgba(0,0,0,.5); color:var(--w-tinte); scrollbar-color:var(--w-lav) #f3ead2}
.shs-overlay-kasten.klein{max-width:540px}
.shs-overlay-kasten h3{margin:2px 40px 10px 0 !important; display:flex; align-items:center; gap:8px}
.shs-overlay-kasten p{margin:0 0 8px !important; font-size:.95rem}
.shs-w .shs-overlay-zu{position:absolute; top:10px; right:10px; z-index:2; display:flex !important; align-items:center; justify-content:center;
  width:38px !important; height:34px !important; padding:0 !important; border-radius:999px !important; border:1px solid var(--w-messing) !important; background:#fff !important;
  color:var(--w-tief) !important; font-size:1.35rem !important; line-height:1 !important}
.shs-w .shs-overlay-zu:hover{background:var(--w-ame) !important; color:#fff !important}
.shs-quellen{list-style:disc !important; margin:0 0 10px 20px !important}
.shs-quellen li{margin:0 0 4px !important; font-size:.9rem; list-style:disc !important}
.shs-quellen a{color:var(--w-ame-tief) !important}
.shs-mehr-raster{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px}
.shs-w .shs-mehr-kachel span{min-width:0; white-space:normal; line-height:1.2}
.shs-w .shs-mehr-kachel{display:flex !important; align-items:center; gap:10px !important; width:100% !important; padding:10px 12px !important; border-radius:14px !important;
  border:1px solid var(--w-rand) !important; background:#fffaf0 !important; color:var(--w-tinte) !important; font-size:.92rem !important; text-align:left}
.shs-w .shs-mehr-kachel .shs-ic{font-size:1.3rem; color:var(--w-ame)}
.shs-w .shs-mehr-kachel.an{background:var(--w-ame) !important; color:#fff !important}
.shs-w .shs-mehr-kachel.an .shs-ic{color:#fff}

/* --- Chips, Reiter ------------------------------------------------------ */
.shs-chips{display:flex !important; flex-wrap:wrap; gap:6px; align-items:center}
.shs-w .shs-chip{display:inline-flex !important; align-items:center; gap:6px !important; padding:5px 13px !important; border-radius:999px !important; font-size:.88rem !important;
  border:1px solid var(--w-rand) !important; background:rgba(255,252,244,.95) !important; color:var(--w-tinte) !important; transition:background .2s,border-color .2s,transform .2s; text-align:left}
.shs-w .shs-chip:hover{border-color:var(--w-lav) !important; transform:translateY(-1px)}
.shs-w .shs-chip[aria-pressed="true"]{background:var(--w-ame) !important; color:#fff !important; border-color:var(--w-ame-tief) !important}
.shs-w .shs-chip .shs-ic{color:var(--w-ame)}
.shs-w .shs-chip[aria-pressed="true"] .shs-ic{color:#fff}
.shs-reiter{display:flex !important; gap:3px; border-bottom:2px solid var(--w-rand); flex:0 0 auto; margin:6px 0 0; flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none}
.shs-reiter::-webkit-scrollbar{display:none}
.shs-w .shs-reiter-knopf{display:inline-flex !important; align-items:center; padding:7px 11px !important; font-size:.88rem !important; white-space:nowrap;
  border:0 !important; border-bottom:3px solid transparent !important; margin-bottom:-2px !important; background:transparent !important; color:var(--w-leise) !important; border-radius:8px 8px 0 0 !important}
.shs-w .shs-reiter-knopf:hover{color:var(--w-tief) !important; background:rgba(255,252,244,.7) !important}
.shs-w .shs-reiter-knopf[aria-selected="true"]{color:var(--w-tief) !important; border-bottom-color:var(--w-ame) !important; font-weight:700; background:rgba(255,252,244,.9) !important}
.shs-tafel{flex:1 1 auto; min-height:0; overflow:auto; padding:10px 6px 4px 0; scrollbar-color:var(--w-lav) #f3ead2}
.shs-tafel.neu > *{animation:shsAuf .4s both}

/* --- Hinweis – sanft, aber gut sichtbar ---------------------------------- */
.shs-w .shs-hinweis{display:flex !important; gap:8px; align-items:flex-start; margin:6px 0 0 !important; padding:7px 11px; border-radius:12px;
  background:rgba(255,252,244,.9); border:1px solid #cfe3e0; color:#4f4433; font-size:.82rem !important; line-height:1.4 !important; flex:0 0 auto}
.shs-w .shs-hinweis .shs-ic{flex:0 0 auto; color:#4f8f88; margin-top:1px; width:1.15em; height:1.15em}
.shs-w .shs-hinweis.kurz{font-size:.76rem !important; padding:5px 9px}

/* --- Bild-Bühne (gezeichneter Stein oder Foto) --------------------------- */
.shs-bild-buehne, .shs-d-bild, .shs-start-bild{position:relative; border-radius:20px; overflow:hidden; isolation:isolate;
  background:radial-gradient(70% 60% at 50% 42%, #fffef9 0%, #fbf4e4 70%, #f3e9d3 100%); border:1px solid var(--w-rand);
  box-shadow:inset 0 0 30px rgba(188,170,212,.22)}
.shs-w .shs-foto{display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit !important}
.shs-ohne-bild{display:flex; align-items:center; justify-content:center; width:100%; height:100%; color:var(--w-lav); font-size:3rem}

/* ============ 1. START ============ */
.shs-start{display:grid !important; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:20px}
.shs-start-tag{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; min-height:0; text-align:center; padding:12px 14px;
  border-radius:22px; border:1px solid var(--w-rand); background:radial-gradient(80% 60% at 50% 35%, #fffef9 0%, #fbf5e8 60%, var(--w-ame-zart) 100%)}
.shs-start-tag-titel{display:flex; align-items:center; gap:6px; font-size:.85rem !important; font-weight:700; color:var(--w-ame-tief); padding:3px 12px; border-radius:999px; background:var(--w-ame-hell); flex:0 0 auto}
.shs-start-tag .shs-start-bild{flex:1 1 auto; min-height:90px; width:100%; max-width:330px; aspect-ratio:1; border:0; background:none; box-shadow:none}
.shs-start-tag .shs-start-bild .shs-stein-svg{animation:shsSchweben 6s ease-in-out infinite}
.shs-start-tag h3{font-size:1.4rem !important; text-align:center !important; flex:0 0 auto}
.shs-start-tag .shs-unter{max-width:30em; font-size:.9rem; flex:0 0 auto}
.shs-start-tag .shs-knopf{margin-top:4px !important}
.shs-start-panel{display:flex; flex-direction:column; justify-content:center; gap:10px; min-height:0}
.shs-w .shs-seitentitel{font-size:clamp(1.7rem,3.2vw,2.4rem) !important}
.shs-einleitung{font-size:.98rem !important}
.shs-w .shs-heute{display:flex !important; align-items:center; gap:10px !important; width:100% !important; text-align:left;
  padding:8px 10px !important; border-radius:16px !important; border:1px solid #ecd2d9 !important; background:linear-gradient(90deg,var(--w-rose-hell),var(--w-perg)) !important;
  color:var(--w-tinte) !important; font-size:.88rem !important; line-height:1.3 !important; transition:transform .25s,border-color .25s; animation:shsAuf .6s .1s both}
.shs-w .shs-heute:hover{transform:translateY(-2px); border-color:var(--w-rose) !important}
.shs-w .shs-heute small{display:block; font-size:.72rem; color:#9a5a6a; font-weight:700}
.shs-heute-text{display:block; min-width:0}
.shs-heute-ic{flex:0 0 36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.15rem; background:var(--w-perg); border:1px solid #ecd2d9; color:#b0707f}
.shs-kacheln{display:grid; grid-template-columns:repeat(2,1fr); gap:7px}
.shs-w .shs-kachel,.shs-w .shs-p-knopf{display:flex !important; align-items:center; gap:9px !important; width:100% !important; text-align:left;
  padding:7px 9px !important; border-radius:14px !important; border:1px solid var(--w-rand) !important; background:rgba(255,252,244,.92) !important;
  color:var(--w-tinte) !important; line-height:1.22 !important; transition:transform .25s,border-color .25s; animation:shsAuf .5s both}
.shs-w .shs-kachel:hover,.shs-w .shs-p-knopf:hover{transform:translateY(-2px); border-color:var(--w-lav) !important; background:var(--w-perg) !important}
.shs-kachel-ic{flex:0 0 34px; width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.1rem;
  background:radial-gradient(circle at 35% 30%,#fff,var(--w-ame-hell) 80%); border:1px solid #ddd0ea; color:var(--w-ame-tief)}
.shs-kachel-text{display:block; min-width:0}
.shs-kachel-text b{display:block; font-size:.93rem; color:var(--w-tief)}
.shs-kachel-text small{display:block; font-size:.76rem; color:var(--w-leise)}

/* ============ 2. LEXIKON ============ */
.shs-werkzeug{display:flex; gap:8px; align-items:center; flex-wrap:wrap; flex:0 0 auto; margin:0 0 6px}
.shs-w .shs-suche{flex:1 1 220px; display:flex !important; align-items:center; gap:8px; min-width:0; padding:0 12px; height:40px; border-radius:999px;
  border:1px solid var(--w-messing); background:#fffdf8; color:var(--w-leise); margin:0 !important; cursor:text; font-size:1rem !important}
.shs-w .shs-suche .shs-ic{width:1.15em; height:1.15em; color:var(--w-ame)}
.shs-w input.shs-suche-feld{flex:1 1 auto; min-width:0; width:auto !important; height:36px !important; padding:0 !important; border:0 !important; background:transparent !important;
  font-size:1rem !important; color:var(--w-tief) !important; outline:none !important; border-radius:0 !important; -webkit-appearance:none; appearance:none}
.shs-w input.shs-suche-feld::placeholder{color:#a08f78; opacity:1}
.shs-filter-reihe{display:flex; gap:6px; flex-wrap:wrap; flex:0 1 auto}
.shs-w .shs-filter-knopf{display:inline-flex !important; align-items:center; gap:6px !important; height:36px !important; padding:0 13px !important; border-radius:999px !important; font-size:.86rem !important;
  border:1px solid var(--w-rand) !important; background:rgba(255,252,244,.95) !important; color:var(--w-tinte) !important; white-space:nowrap}
.shs-w .shs-filter-knopf:hover{border-color:var(--w-lav) !important; background:var(--w-ame-zart) !important}
.shs-w .shs-filter-knopf.an{background:var(--w-ame) !important; color:#fff !important; border-color:var(--w-ame-tief) !important}
.shs-zahl{display:flex; gap:10px; align-items:center; flex-wrap:wrap; font-size:.82rem !important; color:var(--w-leise); flex:0 0 auto; margin:0 0 4px !important}
.shs-zahl-info{font-size:.76rem; font-style:italic}
.shs-w .shs-zahl .shs-link{font-size:.82rem !important; margin-left:auto !important}
.shs-w .shs-zahl .shs-link .shs-ic{color:#c06f84}
.shs-l-liste{flex:1 1 auto; min-height:0; overflow:auto; display:grid; grid-template-columns:repeat(auto-fill,minmax(148px,1fr)); grid-auto-rows:min-content; gap:8px; padding:2px 4px 4px 2px; align-content:start; scrollbar-color:var(--w-lav) #f3ead2}
.shs-leer{grid-column:1/-1; text-align:center; padding:20px; color:var(--w-leise)}
.shs-w .shs-karte{position:relative; display:flex !important; flex-direction:column; align-items:center; gap:4px !important; width:100% !important; text-align:center; padding:8px 8px 9px !important;
  border-radius:16px !important; border:1px solid var(--w-rand) !important; background:rgba(255,252,244,.94) !important; color:var(--w-tinte) !important;
  line-height:1.2 !important; transition:transform .25s,border-color .25s,background .25s; animation:shsAuf .45s both; min-height:0}
.shs-w .shs-karte:hover{transform:translateY(-2px); border-color:var(--w-lav) !important; background:linear-gradient(180deg,var(--w-ame-zart),var(--w-perg)) !important}
.shs-karte-bild{display:block; width:78px; height:78px; flex:0 0 auto}
.shs-karte-bild .shs-foto{border-radius:12px !important}
.shs-karte-text{display:block; min-width:0}
.shs-karte-text b{display:block; font-size:.96rem; color:var(--w-tief)}
.shs-karte-text small{display:-webkit-box !important; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; font-size:.74rem; color:var(--w-leise); margin-top:2px; line-height:1.3}
.shs-karte-herz{position:absolute; top:6px; right:8px; color:#c06f84; font-size:.95rem}

.shs-filterwahl .shs-filter-raster{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px}
.shs-filterwahl .shs-filter-raster.drei{grid-template-columns:repeat(3,minmax(0,1fr))}
.shs-w .shs-chip.gross{width:100% !important; padding:8px 12px !important; font-size:.92rem !important; border-radius:14px !important}

/* Ein Stein */
.shs-detail .shs-rumpf{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.shs-d-links{display:flex; flex-direction:column; gap:8px; min-height:0}
.shs-d-bild{flex:1 1 auto; min-height:0; display:flex; align-items:center; justify-content:center; padding:4%}
.shs-w .shs-d-bild .shs-stein-svg{position:absolute; left:7%; top:7%; width:86%; height:86%; animation:shsSchweben 7s ease-in-out infinite}
.shs-d-bild.ist-foto{padding:0}
.shs-d-bild figcaption{position:absolute; left:8px; right:8px; bottom:6px; font-size:.72rem; color:var(--w-leise); text-align:center; font-style:italic; background:rgba(255,252,244,.85); border-radius:999px; padding:2px 10px}
.shs-d-farbe{display:flex; align-items:center; flex-wrap:wrap; gap:0; font-size:.86rem !important; color:var(--w-leise); justify-content:center; flex:0 0 auto}
.shs-d-farbe .shs-punkt{width:14px; height:14px; margin-right:3px}
.shs-d-farbe span{margin-left:6px}
.shs-d-steuer{display:flex; align-items:center; justify-content:center; gap:8px; flex-wrap:wrap; flex:0 0 auto}
.shs-w .shs-merken.an{background:var(--w-rose-hell) !important; border-color:var(--w-rose) !important; color:#8a4558 !important}
.shs-w .shs-merken .shs-ic{color:#c06f84}
.shs-d-panel{display:flex; flex-direction:column; min-height:0}
.shs-d-kopf{flex:0 0 auto}
.shs-d-kopf h2{font-size:clamp(1.35rem,2.4vw,1.75rem) !important}
.shs-d-kopf .shs-unter{font-size:.92rem; margin-top:2px !important}
.shs-steck{display:flex; flex-direction:column; gap:5px}
.shs-steck-zeile{display:grid; grid-template-columns:26px 118px minmax(0,1fr); gap:8px; align-items:center; padding:4px 6px; border-radius:10px; font-size:.92rem}
.shs-steck-zeile:nth-child(odd){background:rgba(236,228,244,.45)}
.shs-steck-ic{display:flex; align-items:center; justify-content:center; width:26px; height:26px; border-radius:50%; background:var(--w-perg); border:1px solid #ddd0ea; color:var(--w-ame-tief); font-size:.9rem}
.shs-steck-name{font-weight:700; color:var(--w-tief); font-size:.86rem}
.shs-steck-wert{min-width:0; line-height:1.35}
.shs-steck-wert small{font-size:.74rem; color:var(--w-leise)}
.shs-mini{display:inline-flex; align-items:center; padding:1px 9px 1px 6px; border-radius:999px; background:var(--w-perg); border:1px solid var(--w-rand); font-size:.8rem; margin:1px 3px 1px 0}
.shs-mini .shs-punkt{width:10px; height:10px; margin-right:4px}
.shs-haerte{display:flex; align-items:center; gap:8px}
.shs-haerte-bahn{position:relative; flex:0 0 90px; height:8px; border-radius:6px; background:linear-gradient(90deg,#efe5cc,#e6dcf0)}
.shs-haerte-bahn i{position:absolute; top:-2px; bottom:-2px; border-radius:6px; background:var(--w-ame); min-width:6px}
.shs-feld{display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border-radius:14px; background:linear-gradient(160deg,var(--w-ame-zart),var(--w-perg) 70%); border:1px solid #e2d6ee; margin:0 0 8px}
.shs-feld p{font-size:.98rem !important; line-height:1.55 !important}
.shs-feld-ic{flex:0 0 32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.05rem; background:var(--w-perg); border:1px solid #ddd0ea; color:var(--w-ame)}
.shs-feld.vorsicht{background:linear-gradient(160deg,#fbf1dc,var(--w-perg) 70%); border-color:#ead7ae}
.shs-feld.vorsicht .shs-feld-ic{color:#9a7130; border-color:#ead7ae}
.shs-pflege-reihe{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin:0 0 8px}
.shs-ampel{display:flex; flex-direction:column; align-items:center; text-align:center; gap:2px; padding:8px 6px; border-radius:14px; border:1px solid var(--w-rand); background:var(--w-perg)}
.shs-ampel-ic{display:flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; font-size:1.1rem; border:2px solid}
.shs-ampel b{font-size:.86rem; color:var(--w-tief)}
.shs-ampel small{font-size:.72rem; color:var(--w-leise); line-height:1.3}
.shs-ampel.ja .shs-ampel-ic{color:#3f7f6a; border-color:#9fd0bd; background:#e8f5ef}
.shs-ampel.kurz .shs-ampel-ic{color:#9a7130; border-color:#e6cf9b; background:#fbf3df}
.shs-ampel.nein .shs-ampel-ic{color:#a5524f; border-color:#e6b4b0; background:#fbe9e7}
.shs-ampel.nein .shs-ampel-ic::after{content:""; position:absolute}
.shs-ampel.nein{background:linear-gradient(180deg,#fff7f5,var(--w-perg))}

/* ============ 3. STEINFINDER ============ */
.shs-finder-art{flex:0 0 auto; margin:0 0 8px}
.shs-finder .shs-rumpf{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.shs-f-wahl{min-height:0; overflow:auto; padding:2px}
.shs-w-raster{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px}
.shs-w .shs-wunsch{display:flex !important; align-items:center; gap:8px !important; width:100% !important; text-align:left; padding:6px 9px !important; border-radius:14px !important;
  border:1px solid var(--w-rand) !important; background:rgba(255,252,244,.94) !important; color:var(--w-tinte) !important; line-height:1.2 !important; transition:transform .2s,border-color .2s}
.shs-w .shs-wunsch:hover{transform:translateY(-1px); border-color:var(--w-lav) !important}
.shs-w .shs-wunsch[aria-pressed="true"]{background:linear-gradient(90deg,var(--w-ame-hell),var(--w-perg)) !important; border-color:var(--w-ame) !important}
.shs-wunsch-ic{flex:0 0 32px; width:32px; height:32px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.05rem;
  background:radial-gradient(circle at 35% 30%,#fff,var(--w-rose-hell) 80%); border:1px solid #ecd2d9; color:#a35d70}
.shs-w .shs-wunsch[aria-pressed="true"] .shs-wunsch-ic{background:var(--w-ame); color:#fff; border-color:var(--w-ame-tief)}
.shs-wunsch-text{display:block; min-width:0}
.shs-wunsch-text b{display:block; font-size:.92rem; color:var(--w-tief)}
.shs-wunsch-text small{display:block; font-size:.72rem; color:var(--w-leise)}
.shs-f-ergebnis{min-height:0; overflow:auto; border-radius:20px; padding:12px 14px; background:rgba(255,252,244,.92); border:1px solid var(--w-rand); scrollbar-color:var(--w-lav) #f3ead2}
.shs-f-ergebnis.neu > *{animation:shsAuf .4s both}
.shs-f-kopf h3{display:flex; align-items:center; flex-wrap:wrap; gap:4px 8px; font-size:1.15rem !important}
.shs-f-kopf h3 small{font-size:.8rem; font-weight:400; color:var(--w-leise)}
.shs-f-kopf .shs-unter{font-size:.84rem; margin:2px 0 8px !important}
.shs-f-zeichen{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:var(--w-aqua-hell); border:1px solid #c3e2de; color:#3f7f78; font-size:1.15rem}
.shs-f-raster{display:grid; grid-template-columns:repeat(auto-fill,minmax(118px,1fr)); gap:6px}
.shs-f-raster .shs-karte-bild{width:62px; height:62px}
.shs-f-raster .shs-karte-text small{display:none !important}
.shs-f-leer{height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; text-align:center; color:var(--w-leise); padding:10px}
.shs-f-leer-ic{width:64px; height:64px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:2rem; color:var(--w-ame); background:radial-gradient(circle at 35% 30%,#fff,var(--w-ame-hell) 80%); border:1px solid #ddd0ea; animation:shsSchweben 5s ease-in-out infinite}
.shs-f-leer p{max-width:22em}
.shs-monatsstein{margin-top:10px; padding-top:8px; border-top:1px dashed var(--w-rand)}
.shs-monatsstein .shs-klein-hinweis{margin:0 0 6px !important}
.shs-geburt .shs-feldname:first-child{margin-top:0 !important}
.shs-monate{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:5px}
.shs-w .shs-monate .shs-chip{width:100% !important; justify-content:center; padding:7px 4px !important}
.shs-tag{display:flex; align-items:center; gap:10px; margin-top:2px}
.shs-tag-wert{min-width:9em; text-align:center; font-size:1.05rem; font-weight:700; color:var(--w-tief); padding:5px 12px; border-radius:999px; background:var(--w-perg); border:1px solid var(--w-rand)}
.shs-w .shs-tag .shs-mini-knopf{width:40px !important; height:40px !important}

/* ============ 4. PFLEGE ============ */
.shs-pflege .shs-rumpf{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.shs-p-liste{display:flex; flex-direction:column; gap:7px; justify-content:center; min-height:0; overflow:auto; padding:2px}
.shs-w .shs-p-knopf{padding:9px 12px !important}
.shs-p-knopf .shs-kachel-text b{font-size:.97rem}
.shs-p-knopf .shs-kachel-text small{font-size:.78rem}
.shs-w .shs-p-knopf[aria-pressed="true"]{background:linear-gradient(90deg,var(--w-ame-hell),var(--w-perg)) !important; border-color:var(--w-ame) !important}
.shs-w .shs-p-knopf[aria-pressed="true"] .shs-kachel-ic{background:var(--w-ame); color:#fff; border-color:var(--w-ame-tief)}
.shs-p-karte{min-height:0; overflow:auto; border-radius:20px; padding:16px 20px; background:rgba(255,252,244,.92); border:1px solid var(--w-rand); scrollbar-color:var(--w-lav) #f3ead2}
.shs-p-karte.neu > *{animation:shsAuf .4s both}
.shs-p-karte h3{font-size:1.3rem !important}
.shs-p-karte > .shs-unter{margin:2px 0 10px !important}
.shs-p-punkte{list-style:none !important; display:flex; flex-direction:column; gap:8px; margin:0 0 10px !important}
.shs-p-punkte li{position:relative; padding-left:20px; font-size:.96rem; line-height:1.5; list-style:none !important}
.shs-p-punkte li::before{content:"" !important; display:block !important; position:absolute; left:3px; top:.55em; width:8px; height:8px; transform:rotate(45deg); background:var(--w-lav); border:1px solid var(--w-ame)}
.shs-namen{display:flex; flex-wrap:wrap; gap:5px; margin:0 0 10px}
.shs-w .shs-name-chip{display:inline-flex !important; padding:3px 10px !important; border-radius:999px !important; border:1px solid #c3e2de !important; background:var(--w-aqua-hell) !important; color:#2f6c66 !important; font-size:.82rem !important}
.shs-w .shs-name-chip:hover{background:#cfe9e5 !important}
.shs-meine-liste{display:flex; flex-direction:column; gap:6px; margin:10px 0 0}
.shs-meine-zeile{display:flex; align-items:center; gap:8px}
.shs-w .shs-meine-stein{flex:1 1 auto !important; min-width:0; display:flex !important; align-items:center; gap:10px !important; text-align:left; padding:5px 10px 5px 6px !important; border-radius:14px !important;
  border:1px solid var(--w-rand) !important; background:#fffdf8 !important; color:var(--w-tinte) !important; line-height:1.25 !important}
.shs-w .shs-meine-stein:hover{border-color:var(--w-lav) !important}
.shs-meine-stein .shs-karte-bild{width:48px; height:48px}
.shs-meine-stein .shs-karte-text small{-webkit-line-clamp:1}
.shs-druck-haken-liste{display:flex; flex-direction:column; gap:6px; margin:4px 0 12px}
.shs-druck-haken{display:flex !important; align-items:center; gap:8px; font-size:.92rem !important; cursor:pointer; margin:0 !important}
.shs-w .shs-druck-haken input{width:20px !important; height:20px !important; padding:0 !important; border:0 !important; accent-color:var(--w-ame)}
.shs-druckwahl .shs-knopf{width:100% !important}

/* ============ 5. GESCHICHTE ============ */
.shs-zeitleiste{position:relative; display:flex !important; flex:0 0 auto; overflow-x:auto; scrollbar-width:none; margin:0 0 10px; padding:2px 0}
.shs-zeitleiste::-webkit-scrollbar{display:none}
.shs-zeitleiste::before{content:""; position:absolute; left:18px; right:18px; top:12px; height:2px; background:var(--w-rand)}
.shs-w .shs-zeitpunkt{position:relative; flex:1 0 84px !important; display:flex !important; flex-direction:column; align-items:center; gap:4px !important; padding:4px 2px !important;
  border:0 !important; background:transparent !important; color:var(--w-leise) !important; font-size:.72rem !important; line-height:1.15 !important; text-align:center}
.shs-zeitpunkt i{width:14px; height:14px; border-radius:50%; background:var(--w-perg); border:2px solid var(--w-lav); transition:transform .3s, background .3s; transform:rotate(45deg); border-radius:3px}
.shs-zeitpunkt.vorbei i{background:var(--w-ame-hell)}
.shs-zeitpunkt.an i{background:var(--w-ame); border-color:var(--w-ame); transform:rotate(45deg) scale(1.3)}
.shs-w .shs-zeitpunkt.an{color:var(--w-tief) !important; font-weight:700}
.shs-hist-buehne{flex:1 1 auto; min-height:0; position:relative; overflow:hidden}
.shs-hist-karte{position:absolute; inset:0; display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:22px; align-items:center;
  background:rgba(255,252,244,.9); border:1px solid var(--w-rand); border-radius:20px; padding:16px 20px}
.shs-hist-karte.von-rechts{animation:shsVonRechts .5s cubic-bezier(.2,.8,.2,1) both}
.shs-hist-karte.von-links{animation:shsVonLinks .5s cubic-bezier(.2,.8,.2,1) both}
.shs-hist-bild{margin:0; height:100%; min-height:0; display:flex; flex-direction:column; align-items:center; justify-content:center}
.shs-hist-bild img{display:block; max-width:100%; max-height:100%; min-height:0; object-fit:contain; border-radius:14px; background:#fbf5e6; border:1px solid var(--w-rand) !important}
.shs-hist-bild.ist-foto img{object-fit:cover}
.shs-hist-bild figcaption{font-size:.72rem; color:var(--w-leise); margin-top:4px; text-align:center; font-style:italic}
.shs-hist-text{min-height:0; max-height:100%; overflow:auto; padding-right:4px}
.shs-hist-jahr{display:inline-block; font-size:.8rem; padding:2px 12px; border-radius:999px; background:var(--w-ame-hell); color:var(--w-ame-tief); font-weight:700; margin:0 0 6px}
.shs-hist-text h3{font-size:1.3rem !important; margin:0 0 8px !important}
.shs-hist-text p{font-size:.96rem !important; line-height:1.6 !important}
.shs-w .shs-quellen-knopf{margin-left:14px !important; font-size:.82rem !important}

/* ============ 6. IMPULS ============ */
.shs-impuls{align-items:center; justify-content:center; gap:10px}
.shs-impuls-karte{position:relative; max-width:640px; width:100%; text-align:center; padding:22px 30px 20px; border-radius:26px; overflow:hidden;
  background:radial-gradient(90% 70% at 50% 0%,var(--w-ame-hell),var(--w-perg) 75%); border:1px solid var(--w-lav); box-shadow:0 16px 34px -24px rgba(90,70,40,.6); animation:shsAuf .7s both}
.shs-impuls-zeichen{width:124px; height:124px; margin:0 auto 6px; display:flex; align-items:center; justify-content:center; font-size:2.4rem; color:var(--w-ame-tief); animation:shsSchweben 5s ease-in-out infinite}
.shs-impuls-zeichen .shs-foto{border-radius:50% !important}
.shs-impuls-datum{font-size:.85rem !important; color:var(--w-leise); margin:0 0 2px !important}
.shs-w .shs-impuls-titel{text-align:center !important; font-size:1.1rem !important; color:var(--w-ame-tief) !important; margin:0 0 10px !important}
.shs-impuls-text{margin:0 0 14px !important; padding:0 !important; border:0 !important; background:none !important; font-size:clamp(1.15rem,2.4vw,1.5rem) !important; line-height:1.5 !important;
  color:var(--w-tief); font-style:normal !important; quotes:none}
.shs-impuls-text::before,.shs-impuls-text::after{content:none !important}
.shs-impuls-b{font-size:.88rem !important; color:var(--w-leise)}

/* ============ Box ============ */
.shs-box{display:flex; gap:20px; align-items:center; max-width:760px; margin:20px auto; padding:18px 22px; border-radius:22px;
  border:1px solid var(--w-rand); background:linear-gradient(135deg,#fdf8ec,#faf3e3 55%,#f3eef8); box-shadow:0 12px 28px -20px rgba(90,70,40,.6); color:var(--w-tinte); text-align:left}
.shs-box-bild{flex:0 0 130px; width:130px; height:130px; display:block; border:0 !important; box-shadow:none !important; border-radius:0 !important; margin:0 !important}
.shs-box-text{min-width:0}
.shs-box h3{margin:0 0 4px !important; padding:0 !important; color:var(--w-tief); font-size:1.25rem; line-height:1.25; border:0; background:none; text-transform:none !important; letter-spacing:normal !important}
.shs-box p{margin:0 0 12px !important; line-height:1.5; font-size:1rem; color:var(--w-tinte)}
.shs-box a.shs-box-knopf,.shs-box a.shs-box-knopf:visited{display:inline-flex !important; align-items:center; padding:9px 22px !important; border-radius:999px !important;
  background:var(--w-ame) !important; color:#fdfbff !important; border:1px solid var(--w-ame-tief) !important; text-decoration:none !important; opacity:1 !important; font-size:1rem; box-shadow:none !important; transition:background .2s}
.shs-box a.shs-box-knopf:hover,.shs-box a.shs-box-knopf:focus{background:var(--w-ame-tief) !important; color:#fff !important}
@media (max-width:560px){ .shs-box{flex-direction:column; text-align:center} .shs-box-bild{width:110px; height:110px; flex-basis:auto} }

/* --- „Ton erlauben“ – wie in den Chakren, in Amethyst --- */
.shs-tonfrage{position:fixed !important; inset:0 !important; z-index:2147483000 !important; display:flex !important; align-items:center; justify-content:center;
  padding:16px; background:rgba(20,12,28,.35); -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px); opacity:0; transition:opacity .4s ease; margin:0 !important}
.shs-tonfrage.offen{opacity:1}
.shs-tonfrage-kasten{max-width:460px; width:100%; box-sizing:border-box; padding:22px 26px 24px; border-radius:16px; text-align:center;
  background:#33283f !important; color:#efe9f5 !important; box-shadow:0 18px 50px -12px rgba(0,0,0,.55); border:1px solid rgba(200,180,225,.25);
  font-family:"Comic Sans MS","Comic Neue","Comic Sans","Chalkboard SE",cursive !important; transform:translateY(8px) scale(.98); transition:transform .4s ease}
.shs-tonfrage.offen .shs-tonfrage-kasten{transform:none}
.shs-tonfrage-kasten h3{margin:0 0 8px !important; padding:0 !important; border:0 !important; background:none !important; color:#f6f2fa !important;
  font:400 1.25rem/1.3 "Comic Sans MS","Comic Neue",cursive !important; text-align:center !important; text-transform:none !important; letter-spacing:0 !important}
.shs-tonfrage-kasten p{margin:0 0 16px !important; color:#ddd3e8 !important; font:400 .95rem/1.5 "Comic Sans MS","Comic Neue",cursive !important; text-align:center !important}
.shs-tonfrage-reihe{display:flex; gap:14px; justify-content:center; flex-wrap:wrap}
.shs-tonfrage-reihe button{appearance:none; cursor:pointer; min-width:120px; padding:9px 20px !important; border-radius:999px !important; margin:0 !important;
  font:400 1rem/1.2 "Comic Sans MS","Comic Neue",cursive !important; letter-spacing:.04em; box-shadow:none !important; text-transform:none !important;
  border:2px solid #efe9f5 !important; background:transparent !important; color:#f6f2fa !important; width:auto !important}
.shs-tonfrage-reihe .shs-tonfrage-ja{background:#8a72ad !important; border-color:#ddd0ee !important}
.shs-tonfrage-reihe button:hover,.shs-tonfrage-reihe button:focus-visible{background:#9d86c0 !important; outline:none}
@media (prefers-reduced-motion:reduce){.shs-tonfrage,.shs-tonfrage-kasten{transition:none}}

/* --- Musik-Knopf oben rechts im Kasten --- */
.shs-w.mit-musik .shs-w-buehne{padding-right:58px}
.shs-w .shs-musik-oben{position:absolute !important; top:12px; right:12px; z-index:6; width:38px !important; height:38px !important; min-width:0 !important;
  padding:0 !important; margin:0 !important; border-radius:50% !important; display:inline-flex !important; align-items:center; justify-content:center;
  border:1px solid var(--w-messing) !important; background:rgba(255,252,244,.95) !important; color:var(--w-tief) !important; box-shadow:0 4px 12px -6px rgba(90,70,40,.5) !important; cursor:pointer}
.shs-w .shs-musik-oben .shs-ic{width:20px; height:20px}
.shs-w .shs-musik-oben.laeuft{background:var(--w-ame) !important; color:#fff !important; border-color:var(--w-ame-tief) !important; animation:shsMusikPuls 2.6s ease-in-out infinite}
.shs-w .shs-musik-oben.aus{color:#a39377 !important}
.shs-w .shs-musik-oben.aus::after{content:"" !important; display:block !important; position:absolute; left:8px; right:8px; top:50%; height:2px; background:currentColor; transform:rotate(-40deg); border-radius:2px}
@keyframes shsMusikPuls{0%,100%{box-shadow:0 0 0 0 rgba(125,100,160,.35)}50%{box-shadow:0 0 0 6px rgba(125,100,160,0)}}

/* ============ Drucken ============ */
.shs-druck{display:none}
@media print{
  html.shs-drucken body > *:not(.shs-druck){display:none !important}
  html.shs-drucken .shs-druck{display:block !important; font-family:"Comic Sans MS","Comic Neue",cursive; color:#2c2218; padding:8mm; -webkit-print-color-adjust:exact; print-color-adjust:exact}
  .shs-druck *{font-family:"Comic Sans MS","Comic Neue",cursive !important}
  .shs-druck h1, .shs-druck h2, .shs-druck p, .shs-druck li, .shs-druck td, .shs-druck th{text-transform:none !important; letter-spacing:normal !important; border:0 !important; background:none !important; hyphens:manual !important}
  .shs-druck table, .shs-druck tr{border:0 !important; background:none !important; width:auto !important}
  .shs-druck ul{margin:0 0 0 5mm !important; padding:0 !important; list-style:disc !important}
  .shs-druck svg{max-width:none !important}
  .shs-druck img{border:0 !important; box-shadow:none !important}
  .shs-dk-kopf{display:flex; align-items:center; gap:4mm; border-bottom:1px solid #d9cbe6; padding-bottom:3mm; margin-bottom:4mm}
  .shs-dk-kopf .shs-stein-svg{width:14mm; height:14mm}
  .shs-dk-kopf b{display:block; font-size:12pt; color:#5f4a7e}
  .shs-dk-kopf span{display:block; font-size:9pt; color:#777}
  .shs-druck h1{font-size:20pt; margin:0 0 4mm; color:#5f4a7e}
  .shs-druck h2{font-size:14pt; margin:0 0 1mm; color:#3a2b1c}
  .shs-dk-stein{display:flex; gap:6mm; align-items:flex-start; padding:4mm 0; border-bottom:1px dashed #e0d4c0; page-break-inside:avoid; break-inside:avoid}
  .shs-dk-bild{flex:0 0 32mm; width:32mm; height:32mm}
  .shs-dk-bild .shs-stein-svg, .shs-dk-bild img{width:32mm; height:32mm; object-fit:cover; border-radius:3mm}
  .shs-dk-text{flex:1 1 auto; font-size:10.5pt; line-height:1.45}
  .shs-dk-kurz{margin:0 0 2mm; color:#6b5a44; font-style:italic}
  .shs-dk-tafel{border-collapse:collapse; margin:0 0 2mm; font-size:9.5pt}
  .shs-dk-tafel th{text-align:left; padding:0.4mm 4mm 0.4mm 0; color:#5f4a7e; font-weight:700; vertical-align:top; white-space:nowrap}
  .shs-dk-tafel td{padding:0.4mm 0}
  .shs-dk-text p{margin:0 0 1.5mm}
  .shs-dk-anleitung{page-break-inside:avoid; break-inside:avoid; margin-top:4mm; font-size:10pt}
  .shs-dk-anleitung li{margin:0 0 1.5mm}
  .shs-dk-fuss{margin-top:6mm; color:#777; font-size:9pt}
}

/* --- Schmaler Kasten am Rechner --- */
.shs-d-panel, .shs-f-ergebnis{container-type:inline-size}
@container (max-width:420px){
  .shs-steck-zeile{grid-template-columns:24px 92px minmax(0,1fr)}
}

/* ============ Niedrige Bildschirme am Rechner ============ */
@media (min-width:761px) and (max-height:820px){
  .shs-w-buehne{padding:12px 20px 6px}
  .shs-kopf{margin-bottom:6px}
  .shs-kopf-ic{flex-basis:38px; width:38px; height:38px}
  .shs-impuls-karte{padding:16px 24px 14px}
  .shs-impuls-zeichen{width:86px; height:86px}
  .shs-start-panel{gap:8px}
  .shs-steck-zeile{padding:3px 6px; font-size:.88rem}
  .shs-steck{gap:3px}
  .shs-w .shs-p-knopf{padding:7px 12px !important}
}
@media (min-width:761px) and (max-height:740px){
  .shs-kopf .shs-unter{display:none}
  .shs-start-tag .shs-unter{display:none}
  .shs-einleitung{font-size:.9rem !important}
  .shs-hist-text p{font-size:.92rem !important; line-height:1.5 !important}
  .shs-p-punkte li{font-size:.92rem; line-height:1.45}
}

/* ============ Handy ============ */
@media (max-width:760px){
  .shs-w{max-height:none; border-radius:16px; margin:8px auto !important}
  .shs-w-buehne{padding:10px 12px 6px}
  .shs-w.mit-musik .shs-w-buehne{padding-right:48px}
  .shs-w .shs-musik-oben{top:8px; right:8px; width:34px !important; height:34px !important}
  .shs-w .shs-fussleiste{padding:5px 4px 7px; gap:4px; justify-content:space-around}
  /* auch am Handy mit Beschriftung – Symbol oben, Wort darunter */
  .shs-w .shs-leisten-knopf{flex:1 1 0 !important; width:auto !important; min-width:0 !important; height:46px !important; flex-direction:column !important; gap:1px !important; padding:2px 2px 3px !important; font-size:1.05rem !important}
  .shs-w .shs-leisten-knopf span{display:block !important; font-size:.62rem !important; line-height:1.35 !important; padding-top:1px; max-width:100%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
  .shs-w .shs-fussleiste.eng .shs-leisten-knopf span, .shs-w .shs-fussleiste.enger .shs-leisten-knopf span{display:block !important}
  .shs-w .shs-leisten-knopf.nur-gross{display:none !important}
  .shs-w .shs-leisten-knopf.nur-klein{display:inline-flex !important}

  .shs-w h2{font-size:1.18rem}
  .shs-kopf{gap:9px; margin-bottom:6px}
  .shs-kopf-ic{flex-basis:32px; width:32px; height:32px; font-size:1.05rem}
  .shs-kopf .shs-unter{font-size:.76rem; line-height:1.3}
  .shs-rumpf{grid-template-columns:1fr !important; gap:8px}
  .shs-w .shs-knopf{font-size:.84rem !important; padding:5px 11px !important; min-height:34px !important; gap:5px !important}
  .shs-w .shs-gross{font-size:.95rem !important; min-height:40px !important; padding:7px 16px !important}
  .shs-knopfzeile{margin-top:6px; gap:6px}
  .shs-w .shs-reiter-knopf{padding:5px 8px !important; font-size:.8rem !important}
  .shs-w .shs-chip{padding:4px 10px !important; font-size:.8rem !important}
  .shs-w .shs-zurueck-knopf{height:30px !important; padding:0 10px 0 8px !important; font-size:.8rem !important}
  .shs-w .shs-mini-knopf{width:30px !important; height:30px !important}
  .shs-w .shs-hinweis{font-size:.72rem !important; padding:4px 8px; margin-top:4px !important}
  .shs-w .shs-hinweis.kurz{font-size:.7rem !important}

  /* Start */
  .shs-start{grid-template-columns:1fr; grid-template-rows:minmax(0,1fr) auto; gap:8px}
  .shs-start{grid-template-rows:auto minmax(0,1fr)}
  .shs-start-tag{display:grid !important; grid-template-columns:min(30vw,120px) minmax(0,1fr); grid-template-rows:auto auto auto 1fr; align-items:center; text-align:left; padding:8px 12px; gap:2px 12px; border-radius:18px}
  .shs-start-tag-titel{grid-column:2; grid-row:1; justify-self:start; font-size:.76rem !important}
  .shs-start-tag .shs-start-bild{grid-column:1; grid-row:1 / span 4; width:100%; max-width:none; min-height:0; height:auto}
  .shs-start-tag > h3{grid-column:2; grid-row:2; font-size:1.2rem !important; text-align:left !important}
  .shs-start-tag > .shs-unter{grid-column:2; grid-row:3; font-size:.76rem; line-height:1.3}
  .shs-start-tag > .shs-knopf{grid-column:2; grid-row:4; justify-self:start; align-self:start}
  .shs-start-panel{justify-content:flex-start; gap:6px}
  .shs-w .shs-seitentitel{font-size:1.35rem !important; text-align:center !important}
  .shs-einleitung{font-size:.8rem !important; line-height:1.38 !important; text-align:center}
  .shs-w .shs-heute{font-size:.78rem !important; padding:5px 8px !important}
  .shs-heute-ic{flex-basis:30px; height:30px}
  .shs-kacheln{gap:5px}
  .shs-w .shs-kachel{padding:5px 6px !important; gap:6px !important}
  .shs-kachel-ic{flex-basis:28px; width:28px; height:28px; font-size:.95rem}
  .shs-kachel-text b{font-size:.82rem}
  .shs-kachel-text small{font-size:.7rem}

  /* Lexikon */
  .shs-werkzeug{gap:6px; margin-bottom:4px}
  .shs-w .shs-suche{flex:1 1 100%; height:38px}
  .shs-filter-reihe{flex:1 1 100%; display:flex; flex-wrap:wrap; gap:4px}
  .shs-w .shs-filter-knopf{flex:1 1 auto !important; justify-content:center; height:32px !important; padding:0 8px !important; font-size:.76rem !important; min-width:0}
  .shs-w .shs-filter-knopf span{min-width:0; overflow:hidden; text-overflow:ellipsis}
  .shs-zahl{font-size:.74rem !important}
  .shs-zahl-info{display:none}
  .shs-l-liste{grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px}
  .shs-w .shs-karte{padding:5px 4px 6px !important; border-radius:13px !important}
  .shs-karte-bild{width:56px; height:56px}
  .shs-karte-text b{font-size:.8rem}
  .shs-karte-text small{display:none !important}
  .shs-filterwahl .shs-filter-raster.drei{grid-template-columns:repeat(2,minmax(0,1fr))}
  .shs-w .shs-chip.gross{padding:7px 9px !important; font-size:.84rem !important}

  /* Ein Stein */
  .shs-detail .shs-rumpf{grid-template-rows:auto minmax(0,1fr); gap:6px}
  .shs-d-links{display:grid; grid-template-columns:min(30vw,120px) minmax(0,1fr); grid-template-rows:auto auto; gap:4px 10px; align-items:center}
  .shs-d-bild{grid-row:1 / span 2; height:min(30vw,120px); padding:2%}
  .shs-d-farbe{justify-content:flex-start; font-size:.76rem !important}
  .shs-d-farbe .shs-punkt{width:11px; height:11px}
  .shs-d-steuer{justify-content:flex-start; gap:5px}
  .shs-d-steuer .shs-knopf{min-height:30px !important; padding:3px 10px !important; font-size:.78rem !important}
  .shs-d-kopf h2{font-size:1.15rem !important}
  .shs-d-kopf .shs-unter{font-size:.78rem; line-height:1.3}
  .shs-reiter{margin-top:3px}
  .shs-tafel{padding-top:6px}
  .shs-steck-zeile{grid-template-columns:22px 84px minmax(0,1fr); gap:6px; font-size:.8rem; padding:3px 4px}
  .shs-steck-name{font-size:.76rem}
  .shs-steck-ic{width:22px; height:22px; font-size:.78rem}
  .shs-haerte-bahn{flex-basis:60px}
  .shs-feld{padding:7px 9px; gap:8px}
  .shs-feld p{font-size:.86rem !important}
  .shs-feld-ic{flex-basis:26px; height:26px; font-size:.9rem}
  .shs-pflege-reihe{gap:4px}
  .shs-ampel{padding:5px 3px}
  .shs-ampel-ic{width:28px; height:28px; font-size:.95rem}
  .shs-ampel b{font-size:.74rem}
  .shs-ampel small{font-size:.68rem}

  /* Steinfinder */
  .shs-finder-art{margin-bottom:5px}
  .shs-finder .shs-rumpf{grid-template-rows:auto minmax(0,1fr); gap:6px}
  .shs-f-wahl{overflow:visible}
  .shs-w-raster{grid-template-columns:repeat(4,minmax(0,1fr)); gap:4px}
  .shs-w .shs-wunsch{flex-direction:column !important; gap:2px !important; padding:4px 2px !important; text-align:center; border-radius:11px !important}
  .shs-wunsch-ic{flex-basis:26px; width:26px; height:26px; font-size:.88rem}
  .shs-wunsch-text b{font-size:.7rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
  .shs-wunsch-text small{display:none}
  .shs-f-ergebnis{padding:8px 10px; border-radius:16px}
  .shs-f-kopf h3{font-size:.98rem !important}
  .shs-f-kopf .shs-unter{font-size:.74rem; margin-bottom:5px !important}
  .shs-f-raster{grid-template-columns:repeat(3,minmax(0,1fr)); gap:5px}
  .shs-f-raster .shs-karte-bild{width:46px; height:46px}
  .shs-monate{grid-template-columns:repeat(6,minmax(0,1fr)); gap:3px}
  .shs-w .shs-monate .shs-chip{padding:5px 2px !important; font-size:.76rem !important}
  .shs-tag-wert{font-size:.9rem; min-width:8em; padding:3px 10px}
  .shs-w .shs-tag .shs-mini-knopf{width:34px !important; height:34px !important}
  .shs-f-leer p{font-size:.84rem}
  .shs-f-leer-ic{width:46px; height:46px; font-size:1.4rem}

  /* Pflege */
  .shs-pflege .shs-rumpf{grid-template-rows:auto minmax(0,1fr); gap:8px}
  .shs-p-liste{display:grid; grid-template-columns:1fr 1fr; gap:5px; overflow:visible}
  .shs-w .shs-p-knopf{padding:5px 7px !important; gap:6px !important}
  .shs-p-knopf .shs-kachel-text b{font-size:.8rem}
  .shs-p-knopf .shs-kachel-text small{display:none}
  .shs-p-karte{padding:10px 12px; border-radius:16px}
  .shs-p-karte h3{font-size:1.05rem !important}
  .shs-p-karte > .shs-unter{font-size:.8rem; margin-bottom:6px !important}
  .shs-p-punkte{gap:5px}
  .shs-p-punkte li{font-size:.84rem; padding-left:16px}

  /* Geschichte */
  .shs-zeitleiste{margin-bottom:6px}
  .shs-w .shs-zeitpunkt{flex:0 0 76px !important; font-size:.68rem !important}
  .shs-hist-karte{grid-template-columns:1fr; grid-template-rows:minmax(90px,32%) minmax(0,1fr); gap:8px; padding:10px 12px; align-items:stretch}
  .shs-hist-text h3{font-size:1.05rem !important; margin-bottom:4px !important}
  .shs-hist-text p{font-size:.84rem !important; line-height:1.48 !important}

  /* Impuls */
  .shs-impuls-karte{padding:16px 16px 14px; border-radius:20px}
  .shs-impuls-zeichen{width:76px; height:76px; margin-bottom:4px}
  .shs-impuls-text{font-size:1.08rem !important}
  .shs-mehr-raster{gap:6px}
  .shs-overlay-kasten{padding:12px 12px 14px}
  .shs-w .shs-mehr-kachel{gap:7px !important; padding:9px 8px !important; font-size:.84rem !important}
  .shs-w .shs-mehr-kachel span{overflow-wrap:normal !important}
}
@media (max-width:760px) and (max-height:760px){
  .shs-kopf .shs-unter{display:none}
  .shs-start-tag{grid-template-columns:min(24vw,96px) minmax(0,1fr)}
  .shs-start-tag > .shs-unter{display:none}
  .shs-w-raster{gap:3px}
  .shs-p-karte h3{font-size:.98rem !important}
}
@media (prefers-reduced-motion:reduce){
  .shs-w *, .shs-box *{animation:none !important; transition:none !important}
}
