/* Dropprinters · Prototyp Bühne (v4): Szene 3 (Verpacken) und Szene 4 (Liefern).
   Inhalt baut stage-b.js nur unter html.pt-on; ohne JS und bei reduzierter Bewegung bleiben die Szenen leer.
   Gemeinsame Bausteine (.pt-svg, .pt-line, .pt-pearl, .pt-obj, .pt-word, .pt-chipx, .pt-shirt) kommen aus stage.css.
   Bewegt wird nur über transform, opacity, clip-path und stroke-dashoffset; keine Filter auf den Glasobjekten (echte Produkte: Schatten aus stage-core.css). */

/* ---------- Szene 3 · Verpacken ---------- */
/* Band: Glasplatte, darüber laufende Rollen (stroke-dashoffset) und die gezeichnete Kante (Lichtlinie aus stage.js) */
.ptb-band{position:absolute;left:0;top:0;width:100%;height:var(--bh,30px);transform-origin:0 50%;will-change:transform,opacity}
.ptb-band__plate{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.85),rgba(255,255,255,.45) 45%,rgba(124,58,237,.10));
  border-top:1px solid #fff;border-bottom:1px solid rgba(10,10,12,.10);
  box-shadow:inset 0 1px 0 #fff,0 24px 50px -24px rgba(48,32,110,.28),0 0 60px -20px rgba(34,211,238,.35)}
.ptb-roll__dash{fill:none;stroke:rgba(10,10,12,.22);stroke-width:2px;stroke-linecap:round;stroke-dasharray:3 26}
.ptb-roll__dash--b{stroke:rgba(8,145,178,.5);stroke-dasharray:14 34}

/* Karton: Bild des offenen Kartons, darüber die Öffnung mit den fallenden Teilen, darüber das Paket (Wechsel) */
.ptb-crate{position:absolute;left:0;top:0;width:var(--cw,480px);aspect-ratio:858/779;will-change:transform,opacity}
.ptb-crate__karton{position:absolute;inset:0;width:100%;height:100%}
/* Paket so groß wie der Körper des Kartons (ohne Laschen), unten mittig verankert wie der Karton */
.ptb-crate__paket{position:absolute;left:15%;top:auto;bottom:0;width:70%;height:auto}
/* Öffnung: alles oberhalb der vorderen Kartonkante (Ecken links 135/305, vorn 430/500, rechts 715/305 im 858×779-Bild)
   bleibt sichtbar, darunter wird abgeschnitten; so fallen die Teile sichtbar hinein, ohne milchig durch das Glas zu scheinen */
.ptb-crate__mouth{position:absolute;inset:0;
  clip-path:polygon(-150% -400%,250% -400%,250% 39.2%,83.2% 39.2%,50.1% 64%,15.8% 39.2%,-150% 39.2%)}
.ptb-drop{position:absolute;left:0;top:0}
.ptb-crate__mouth .pt-obj{will-change:transform}

/* Lichtblitz beim Wechsel Karton zu Paket */
.ptb-flash{position:absolute;left:0;top:0;width:calc(var(--cw,480px) * .9);aspect-ratio:1;border-radius:50%;opacity:0;pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,255,255,.95),rgba(165,243,252,.85) 30%,rgba(167,139,250,.45) 60%,transparent 100%)}
.pt-scene[data-scene="3"] .ptb-flash{width:min(70vh,60vw)}

/* ---------- Szene 4 · Liefern ---------- */
.ptb-pk{will-change:transform,opacity}
.ptb-pin{position:absolute;left:0;top:0;width:var(--pw,120px);will-change:transform,opacity}
.ptb-pin__body{display:block;position:relative;transform-origin:50% 100%}
.ptb-pin__img{position:relative;width:100%}
.ptb-chip{z-index:1}

/* ---------- 390 px ---------- */
@media (max-width:760px){
  /* bewegte Teile ohne backdrop-filter (Leistung), Chip dafür dichter */
  .ptb-chip{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--smoke-bg);border-color:var(--smoke-border)}
  .ptb-roll__dash{stroke-dasharray:3 20}
  .ptb-roll__dash--b{stroke-dasharray:10 26}
}

@media (prefers-reduced-transparency:reduce){
  .ptb-chip{background:#1D1D2A}
}
