/* V62.6.1 – Globale Teilen- und Nach-oben-Aktionen */
.floating-actions{
  position:fixed;
  z-index:950;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  display:grid;
  justify-items:end;
  gap:12px;
  pointer-events:none;
}
.floating-action-button,
.floating-share-panel{
  pointer-events:auto;
}
.floating-action-button{
  position:relative;
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  padding:0;
  border:1px solid rgba(255,255,255,.16);
  border-radius:19px;
  background:linear-gradient(145deg,#24201d,#0d0c0b);
  color:#fff;
  box-shadow:0 16px 42px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.08);
  cursor:pointer;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease;
  -webkit-tap-highlight-color:transparent;
}
.floating-action-button svg{
  width:25px;
  height:25px;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.floating-action-button:hover,
.floating-action-button:focus-visible{
  transform:translateY(-3px);
  border-color:rgba(255,135,47,.72);
  box-shadow:0 20px 48px rgba(0,0,0,.48),0 0 0 4px rgba(255,122,24,.12);
}
.floating-action-button:focus-visible,
.floating-share-link:focus-visible,
.floating-share-close:focus-visible{
  outline:3px solid rgba(255,178,111,.94);
  outline-offset:3px;
}
.floating-action-share{
  background:linear-gradient(145deg,#ff8b35,#ff6414);
  border-color:rgba(255,187,126,.72);
  color:#17110d;
  box-shadow:0 17px 42px rgba(255,94,20,.34),inset 0 1px 0 rgba(255,255,255,.32);
}
.floating-action-share:hover,
.floating-action-share:focus-visible{
  background:linear-gradient(145deg,#ff9a4d,#ff711f);
  box-shadow:0 20px 50px rgba(255,94,20,.42),0 0 0 4px rgba(255,122,24,.16);
}
.floating-action-share[aria-expanded="true"]{
  transform:rotate(8deg) scale(1.04);
}
.floating-action-top{
  opacity:0;
  visibility:hidden;
  transform:translateY(12px) scale(.92);
  transition:opacity .2s ease,visibility .2s ease,transform .2s ease,border-color .18s ease,box-shadow .18s ease;
}
.floating-action-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
}
.floating-action-top:hover,
.floating-action-top:focus-visible{
  transform:translateY(-3px) scale(1);
}
.floating-share-panel{
  position:absolute;
  right:74px;
  bottom:0;
  width:min(390px,calc(100vw - 116px));
  overflow:hidden;
  border:1px solid rgba(255,255,255,.16);
  border-radius:26px;
  background:
    radial-gradient(circle at 88% 4%,rgba(255,122,24,.22),transparent 34%),
    linear-gradient(155deg,rgba(35,31,28,.99),rgba(12,11,10,.99));
  color:#fff;
  box-shadow:0 30px 80px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.07);
  backdrop-filter:blur(18px);
}
.floating-share-panel[hidden]{display:none}
.floating-share-panel:not([hidden]){animation:floatingShareIn .2s ease-out both}
@keyframes floatingShareIn{
  from{opacity:0;transform:translateX(14px) translateY(8px) scale(.96)}
  to{opacity:1;transform:translateX(0) translateY(0) scale(1)}
}
.floating-share-head{
  display:grid;
  grid-template-columns:1fr auto;
  gap:14px;
  align-items:start;
  padding:20px 20px 16px;
  border-bottom:1px solid rgba(255,255,255,.1);
}
.floating-share-kicker{
  display:block;
  margin:0 0 5px;
  color:#ffae70;
  font-size:.72rem;
  font-weight:950;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.floating-share-head h2{
  margin:0;
  color:#fff;
  font-size:1.2rem;
  line-height:1.2;
}
.floating-share-page-title{
  display:-webkit-box;
  overflow:hidden;
  margin:7px 0 0;
  color:#cfc6bd;
  font-size:.84rem;
  line-height:1.45;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}
.floating-share-close{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  padding:0;
  border:1px solid rgba(255,255,255,.13);
  border-radius:13px;
  background:rgba(255,255,255,.055);
  color:#fff;
  cursor:pointer;
}
.floating-share-close:hover{background:rgba(255,255,255,.11)}
.floating-share-close svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round}
.floating-share-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:16px;
}
.floating-share-link{
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  gap:10px;
  align-items:center;
  min-height:58px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:17px;
  background:rgba(255,255,255,.045);
  color:#fff;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
  font:inherit;
  transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.floating-share-link:hover{
  transform:translateY(-2px);
  border-color:rgba(255,135,47,.56);
  background:rgba(255,122,24,.105);
}
.floating-share-icon{
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:13px;
  background:rgba(255,255,255,.08);
  font-size:1.12rem;
  font-weight:950;
}
.floating-share-link strong{
  display:block;
  color:#fff;
  font-size:.88rem;
  line-height:1.22;
}
.floating-share-link small{
  display:block;
  margin-top:2px;
  color:#a9a098;
  font-size:.7rem;
  line-height:1.25;
}
.floating-share-link[data-share-network="whatsapp"] .floating-share-icon{background:#1f9d55;color:#fff}
.floating-share-link[data-share-network="facebook"] .floating-share-icon{background:#1877f2;color:#fff}
.floating-share-link[data-share-network="instagram"] .floating-share-icon{background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045);color:#fff}
.floating-share-link[data-share-network="x"] .floating-share-icon{background:#050505;color:#fff;border:1px solid rgba(255,255,255,.18)}
.floating-share-link[data-share-network="telegram"] .floating-share-icon{background:#229ed9;color:#fff}
.floating-share-link[data-share-network="pinterest"] .floating-share-icon{background:#bd081c;color:#fff}
.floating-share-link[data-share-network="linkedin"] .floating-share-icon{background:#0a66c2;color:#fff}
.floating-share-link[data-share-network="email"] .floating-share-icon,
.floating-share-link[data-share-network="copy"] .floating-share-icon{background:#413a35;color:#ffb276}
.floating-share-status{
  min-height:46px;
  margin:0;
  padding:12px 18px 16px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#ffd2af;
  font-size:.82rem;
  line-height:1.45;
}
.floating-share-status:empty:before{
  content:"Instagram öffnet sich über das systemeigene Teilen oder der Link wird kopiert.";
  color:#9f978f;
}
@media(max-width:760px){
  .floating-actions{
    right:max(14px,env(safe-area-inset-right));
    bottom:max(14px,env(safe-area-inset-bottom));
    gap:10px;
  }
  .floating-action-button{width:54px;height:54px;border-radius:18px}
  .floating-share-panel{
    position:fixed;
    right:max(12px,env(safe-area-inset-right));
    bottom:calc(max(14px,env(safe-area-inset-bottom)) + 66px);
    left:max(12px,env(safe-area-inset-left));
    width:auto;
    max-height:min(72vh,620px);
    overflow:auto;
    border-radius:24px;
  }
  .floating-share-head{padding:18px 18px 14px}
  .floating-share-grid{padding:14px;gap:8px}
  .floating-share-link{grid-template-columns:34px minmax(0,1fr);min-height:54px;padding:9px 10px;border-radius:15px}
  .floating-share-icon{width:34px;height:34px;border-radius:11px;font-size:1rem}
  .floating-share-link strong{font-size:.82rem}
  .floating-share-link small{display:none}
}
@media(max-width:380px){
  .floating-share-grid{grid-template-columns:1fr}
  .floating-share-link small{display:block}
}
@media(prefers-reduced-motion:reduce){
  .floating-action-button,.floating-action-top,.floating-share-link{transition:none}
  .floating-share-panel:not([hidden]){animation:none}
}
@media print{
  .floating-actions{display:none!important}
}
