/* A single, persistent radio; each page keeps its own theme and plugin scripts. */
html.fa-radio-child .fa-sticky-radio{display:none!important}
html.fa-radio-child body{padding-bottom:0!important}
html:has(body.fa-radio-shell){overflow:hidden;height:100%}
body.fa-radio-shell{height:100%;overflow:hidden;padding:0!important}
body.fa-radio-shell > :not(.fa-sticky-radio):not(.fa-page-frame):not(.fa-dialog):not(.fa-language-ui):not(.fa-page-loader):not(script):not(style):not(link){display:none!important}
.fa-page-frame{position:fixed;inset:0 0 auto;width:100%;height:calc(100vh - var(--fa-sticky-radio-height,76px));height:calc(100dvh - var(--fa-sticky-radio-height,76px));border:0;background:#f7f8fc;z-index:60;display:block}

@media(max-width:800px){html.fa-radio-home-page .fa-sticky-radio{display:none!important}html.fa-radio-home-page body{padding-bottom:0!important}html.fa-radio-home-page .fa-page-frame{height:100vh!important;height:100dvh!important}}

.fa-page-loader{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:99990;display:flex;flex-direction:column;align-items:center;gap:14px;pointer-events:none;background:#fff;border:1px solid #eee6f5;border-radius:22px;box-shadow:0 12px 42px #35204b22;padding:20px 24px;width:244px;max-width:calc(100vw - 36px)}
.fa-page-loader[hidden]{display:none!important}
.fa-page-loader img{width:148px;height:148px;object-fit:contain;border-radius:15px}
.fa-loader-progress{position:relative;width:100%;height:26px;border-radius:20px;overflow:hidden;background:#eee8f7;border:1px solid #dfd3ee}
.fa-loader-fill{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,#8a4bd4,#d56eb8,#58bada,#58b89b,#e2bf62);transition:width .2s linear;border-radius:inherit}
.fa-page-loader strong{position:relative;z-index:1;display:block;text-align:center;font:800 13px/24px system-ui,sans-serif;color:#38204e;text-shadow:0 1px 2px #fff,0 -1px 2px #fff}
@media(max-width:800px){.fa-page-loader{width:216px;padding:16px 20px}.fa-page-loader img{width:128px;height:128px}}
@media(prefers-reduced-motion:reduce){.fa-loader-fill{transition:none}}
