/* Ondas e ruído de rádio: CSS leve, somente durante uma espera. */
#site-loading{position:fixed;inset:0;z-index:90;display:grid;place-items:center;background:#ffffffed;pointer-events:none}
#site-loading.load-failed{pointer-events:auto}
.loading-panel{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:24px;text-align:center;color:#413070;background:#fffffff2;border-radius:8px}
.loading-waves{width:160px;height:40px;overflow:hidden;fill:none;stroke:currentColor;stroke-width:1.6}
.loading-waves path{animation:tuning-wave 1.6s ease-in-out infinite;transform-origin:center}
.loading-waves path:nth-child(2){opacity:.5;animation-delay:-.55s}.loading-waves path:nth-child(3){opacity:.3;animation-delay:-1.1s}
.loading-message{font-size:14px;line-height:1.5;max-width:300px}
.loading-retry{border:1px solid #7251ab;background:white;color:#413070;border-radius:24px;padding:12px 18px;min-height:44px}
.story-visual>.loading-panel{position:absolute;inset:0;z-index:4;background:#f7f5fceb;border-radius:0}
.loading-surface:before,.story-visual.load-pending>.loading-panel:before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.14;background-image:radial-gradient(#7251ab 1px,transparent 1px);background-size:5px 7px}
.loading-panel>*{position:relative}.story-visual.media-failed>img{opacity:0}
#source-area{position:relative;min-height:220px}#source-area>.loading-panel{position:absolute;inset:0;z-index:3}
.story-visual video{display:block;width:100%;height:100%;object-fit:contain;background:#181818}
.story-visual video:focus-visible{outline:3px solid #7251ab;outline-offset:-5px}
#case .story-video{aspect-ratio:var(--image-ratio,16/9);min-height:0;padding:0}
#case .story-video figcaption{position:static;background:white;padding:18px 24px}
#case h1,#case h2,#case p{overflow-wrap:anywhere}
[aria-disabled=true]{opacity:.55;cursor:wait}
@keyframes tuning-wave{0%,100%{transform:translateX(-5px) scaleY(.65)}50%{transform:translateX(5px) scaleY(1.2)}}
@media(prefers-reduced-motion:reduce){.loading-waves path{animation:none!important}}

.loading-dismiss{background:transparent;border:0;color:#413070;text-decoration:underline;padding:12px;min-height:44px;cursor:pointer}

#case .story-video{aspect-ratio:auto;height:auto;overflow:hidden} .story-video video{height:auto;aspect-ratio:var(--image-ratio,16/9)}
