/* BU — sdílené WOW efekty (kancelář, turnaj, klany, world, hráč).
   Šest efektů, které v office.css chyběly. DESIGN_LOCK: gold #C5A059, Druk Wide. */

/* ---------- 15 · průchod bránou při přechodu ---------- */
#buGate{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0;
 transition:opacity .18s ease}
#buGate.on{opacity:1;pointer-events:all}
#buGate .half{position:absolute;top:0;bottom:0;width:50.6%;background:
 linear-gradient(180deg,#3a2d14,#12100a 55%,#241b0c);transition:transform .62s cubic-bezier(.65,0,.35,1)}
#buGate .half.l{left:0;transform:translateX(-101%);border-right:2px solid var(--gold,#C5A059)}
#buGate .half.r{right:0;transform:translateX(101%);border-left:2px solid var(--gold,#C5A059)}
#buGate.shut .half.l,#buGate.shut .half.r{transform:translateX(0)}
#buGate .seam{position:absolute;left:50%;top:0;bottom:0;width:2px;transform:translateX(-50%) scaleY(0);
 background:linear-gradient(180deg,transparent,#F4E4BD,transparent);opacity:0;
 box-shadow:0 0 26px 6px rgba(197,160,89,.75);transition:transform .5s ease,opacity .5s ease}
#buGate.shut .seam{transform:translateX(-50%) scaleY(1);opacity:1}
#buGate .mark{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.8);
 font-family:'Druk Wide',Impact,sans-serif;font-size:11px;letter-spacing:.34em;color:#C5A059;
 opacity:0;transition:.45s .12s;white-space:nowrap}
#buGate.shut .mark{opacity:1;transform:translate(-50%,-50%) scale(1)}

/* ---------- 16 · nadpis po písmenech ---------- */
.buSplit>span{display:inline-block;opacity:0;transform:translateY(.42em) rotateX(-52deg);
 transform-origin:50% 100%;animation:buLtr .52s cubic-bezier(.2,.75,.3,1) forwards;
 animation-delay:var(--i,0ms)}
@keyframes buLtr{to{opacity:1;transform:none}}

/* ---------- 17 · zvuk (tlačítko k vypnutí) ---------- */
#buSnd{position:fixed;right:14px;bottom:14px;z-index:9990;width:38px;height:38px;border-radius:50%;
 border:1px solid rgba(197,160,89,.45);background:rgba(10,10,15,.82);backdrop-filter:blur(8px);
 color:#C5A059;font-size:15px;cursor:pointer;display:flex;align-items:center;justify-content:center;
 transition:.25s;line-height:1;padding:0}
#buSnd:hover{background:#C5A059;color:#0A0A0F;transform:scale(1.08)}
#buSnd.off{opacity:.42}
@media(max-width:640px){#buSnd{right:10px;bottom:10px;width:34px;height:34px;font-size:13px}}

/* ---------- 18 · oznámení zprava ---------- */
#buToasts{position:fixed;right:14px;top:14px;z-index:9995;display:flex;flex-direction:column;gap:9px;
 max-width:min(330px,86vw);pointer-events:none}
.buToast{pointer-events:all;border:1px solid rgba(197,160,89,.45);border-radius:5px;
 background:rgba(10,10,15,.9);backdrop-filter:blur(11px);padding:11px 14px;color:#EDE7DA;font-size:12.8px;
 line-height:1.45;box-shadow:0 12px 34px rgba(0,0,0,.62);transform:translateX(118%);opacity:0;
 transition:transform .46s cubic-bezier(.2,.75,.3,1),opacity .46s;position:relative;overflow:hidden}
.buToast.in{transform:none;opacity:1}
.buToast b{display:block;font-family:'Druk Wide',Impact,sans-serif;font-size:9.5px;letter-spacing:.2em;
 color:#C5A059;text-transform:uppercase;margin-bottom:4px}
.buToast::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:100%;
 background:linear-gradient(90deg,#C5A059,#F4E4BD);transform-origin:left;animation:buBar var(--t,5s) linear forwards}
@keyframes buBar{to{transform:scaleX(0)}}

/* ---------- 19 · lístky po výhře ---------- */
.buCfi{position:fixed;top:-24px;z-index:9994;pointer-events:none;will-change:transform;
 animation:buFall var(--d,2.9s) cubic-bezier(.25,.55,.5,1) forwards}
@keyframes buFall{
 0%{transform:translate3d(0,0,0) rotate(0);opacity:1}
 100%{transform:translate3d(var(--x,0),104vh,0) rotate(var(--r,540deg));opacity:0}}

/* ---------- 20 · brána svítí, když je za ní novinka ---------- */
.gate.buNew .arch{box-shadow:0 16px 42px rgba(0,0,0,.7),0 0 40px rgba(197,160,89,.42),
 inset 0 0 22px rgba(0,0,0,.85);animation:buPulseG 2.9s ease-in-out infinite}
@keyframes buPulseG{0%,100%{box-shadow:0 16px 42px rgba(0,0,0,.7),0 0 30px rgba(197,160,89,.3),inset 0 0 22px rgba(0,0,0,.85)}
 50%{box-shadow:0 16px 46px rgba(0,0,0,.72),0 0 74px rgba(197,160,89,.62),inset 0 0 22px rgba(0,0,0,.85)}}
.buDot{position:absolute;top:9px;right:9px;z-index:6;width:9px;height:9px;border-radius:50%;
 background:#F0A6A6;box-shadow:0 0 12px 3px rgba(240,166,166,.75);animation:buPulseD 1.7s infinite}
@keyframes buPulseD{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(.62);opacity:.5}}

@media(prefers-reduced-motion:reduce){
 #buGate,.buCfi,.buDot{display:none!important}
 .buSplit>span{opacity:1!important;transform:none!important;animation:none!important}
 .buToast{transition:none}
 .gate.buNew .arch{animation:none}
}
