/* ==========================================================================
   Floating audio-book mini player - phones and tablets only (22.10.2026).
   Markup: includes/audio-float.php, behaviour: assets/js/audio-float.js.
   A small headphones button bottom-left, above the contact bar; it opens a
   compact player. Kept quiet on purpose: translucent until touched, and it
   sits under the contact bar's drop-up (z-index 999).
   ========================================================================== */
.pmg-abf{display:none}
@media screen and (max-width:1080px){
  .pmg-abf{display:block;position:fixed;left:14px;bottom:calc(86px + env(safe-area-inset-bottom, 0px));z-index:998;
    font-family:'Open Sans',Arial,sans-serif;pointer-events:none}
  .pmg-abf[hidden]{display:none}
  .pmg-abf > *{pointer-events:auto}

  .pmg-abf__btn{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;
    width:46px;height:46px;min-width:46px;padding:0;margin:0;border:1px solid rgba(230,206,154,.55);border-radius:50%;
    background:rgba(11,62,39,.86);color:#E6CE9A;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25);
    -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
    opacity:0;transform:translateY(10px);transition:opacity .3s ease,transform .3s ease,background-color .2s ease;
    -webkit-tap-highlight-color:transparent}
  .pmg-abf.is-shown .pmg-abf__btn{opacity:.82;transform:none}
  .pmg-abf.is-shown .pmg-abf__btn:hover,.pmg-abf.is-open .pmg-abf__btn,.pmg-abf.is-playing .pmg-abf__btn{opacity:1;background:#0b3e27}
  .pmg-abf__btn svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .pmg-abf__btn:focus-visible{outline:3px solid #c9a227;outline-offset:2px}

  /* playing: the icon gives way to three small moving bars */
  .pmg-abf__eq{display:none;align-items:flex-end;gap:3px;height:16px}
  .pmg-abf__eq i{display:block;width:3px;height:100%;border-radius:2px;background:currentColor;transform-origin:bottom;
    animation:pmg-abf-eq 1s ease-in-out infinite}
  .pmg-abf__eq i:nth-child(2){animation-delay:-.35s}
  .pmg-abf__eq i:nth-child(3){animation-delay:-.7s}
  .pmg-abf.is-playing .pmg-abf__btn svg{display:none}
  .pmg-abf.is-playing .pmg-abf__eq{display:flex}
  @keyframes pmg-abf-eq{0%,100%{transform:scaleY(.3)}50%{transform:scaleY(1)}}

  /* the player card, opening upwards from the button */
  .pmg-abf__panel{position:absolute;left:0;bottom:56px;box-sizing:border-box;width:min(330px, calc(100vw - 28px));
    padding:14px 16px 12px;border-radius:14px;background:#0b3e27;color:#fff;box-shadow:0 12px 34px rgba(0,0,0,.35);
    visibility:hidden;opacity:0;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s}
  .pmg-abf.is-open .pmg-abf__panel{visibility:visible;opacity:1;transform:none;transition:opacity .2s ease,transform .2s ease}
  .pmg-abf__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
  .pmg-abf__eyebrow{font-size:11px;letter-spacing:.22em;text-transform:uppercase;font-weight:700;color:#E6CE9A}
  .pmg-abf__x{display:flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;padding:0;margin:-6px -8px 0 0;
    border:0;border-radius:50%;background:none;color:rgba(255,255,255,.75);cursor:pointer}
  .pmg-abf__x svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
  .pmg-abf__title{margin-top:4px;font-size:15px;font-weight:700;line-height:1.3;color:#fff}
  .pmg-abf__ch{min-height:18px;margin-top:2px;font-size:13px;line-height:1.4;color:rgba(255,255,255,.72);
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  .pmg-abf__seek{display:block;width:100%;min-width:0;height:22px;margin:8px 0 4px;padding:0;background:none;
    -webkit-appearance:none;appearance:none;cursor:pointer;
    --p:0%}
  .pmg-abf__seek::-webkit-slider-runnable-track{height:4px;border-radius:2px;
    background:linear-gradient(90deg,#E6CE9A var(--p),rgba(255,255,255,.22) var(--p))}
  .pmg-abf__seek::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border:0;border-radius:50%;background:#E6CE9A}
  .pmg-abf__seek::-moz-range-track{height:4px;border-radius:2px;background:rgba(255,255,255,.22)}
  .pmg-abf__seek::-moz-range-progress{height:4px;border-radius:2px;background:#E6CE9A}
  .pmg-abf__seek::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:#E6CE9A}

  .pmg-abf__row{display:flex;align-items:center;gap:10px}
  .pmg-abf__time{flex:1 1 0;min-width:0;font-size:12px;font-variant-numeric:tabular-nums;color:rgba(255,255,255,.72)}
  .pmg-abf__back,.pmg-abf__play{display:flex;align-items:center;justify-content:center;padding:0;margin:0;border:0;border-radius:50%;cursor:pointer}
  .pmg-abf__back{width:36px;height:36px;min-width:36px;background:none;color:#fff}
  .pmg-abf__back svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .pmg-abf__back text{fill:currentColor;stroke:none;font:700 7px/1 'Open Sans',Arial,sans-serif}
  .pmg-abf__play{width:46px;height:46px;min-width:46px;background:linear-gradient(135deg,#F4E8CB 0%,#DDC28A 45%,#C7A665 100%);color:#0b3e27}
  .pmg-abf__play svg{width:22px;height:22px;fill:currentColor}
  .pmg-abf__play .i-pause{display:none}
  .pmg-abf.is-playing .pmg-abf__play .i-play{display:none}
  .pmg-abf.is-playing .pmg-abf__play .i-pause{display:block}
  .pmg-abf__all{flex:1 1 0;min-width:0;text-align:right;font-size:13px;font-weight:600;color:#E6CE9A!important;text-decoration:underline;text-underline-offset:3px}
  .pmg-abf button:focus-visible,.pmg-abf a:focus-visible,.pmg-abf__seek:focus-visible{outline:2px solid #E6CE9A;outline-offset:2px}

  /* on the audio-book page, while its own player is on screen */
  .pmg-abf.is-parked .pmg-abf__btn{opacity:0;transform:translateY(10px);pointer-events:none}
}
@media (prefers-reduced-motion:reduce){
  .pmg-abf__btn,.pmg-abf__panel{transition:none}
  .pmg-abf__eq i{animation:none;transform:scaleY(.7)}
}
