/* Public document canvas only. No body rules are applied in Bitrix editor frames. */
body.padmin-public { margin: 0; min-width: 320px; background: #07111f; }
html[data-theme="light"] body.padmin-public { background: #f3f7fb; }
body:has(> .padmin-site) { margin: 0; min-width: 320px; background: #07111f; }
html[data-theme="light"] body:has(> .padmin-site) { background: #f3f7fb; }
.padmin-site { min-height: 100vh; position: relative; isolation: isolate; }
#padmin-preloader, #padmin-backtop { --pu-accent: var(--pu-accent-dark, #59d6c8); box-sizing: border-box; font-family: Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
html[data-theme="light"] #padmin-preloader, html[data-theme="light"] #padmin-backtop { --pu-accent: var(--pu-accent-light, #087f78); }
#padmin-preloader { position: fixed; inset: 0; z-index: 2147482000; display: grid; place-items: center; color: #f5f8fb; background: radial-gradient(ellipse at 50% 40%, #122a38 0, #07111f 65%); pointer-events: none; transition: opacity var(--pu-fade,180ms) ease, visibility var(--pu-fade,180ms) ease; animation: pu-failsafe 1ms step-end var(--pu-max,2500ms) forwards; }
#padmin-preloader.pu-loader--leaving { opacity: 0; visibility: hidden; }
#padmin-preloader .pu-loader__content { display: grid; justify-items: center; width: min(88vw,540px); gap: 14px; text-align: center; }
#padmin-preloader .pu-loader__mark { display: grid; place-items: center; width: 86px; height: 86px; margin-bottom: 6px; border: 1px solid color-mix(in srgb,var(--pu-accent) 42%,transparent); border-radius: 25px; background: color-mix(in srgb,var(--pu-accent) 6%,transparent); box-shadow: 0 0 55px color-mix(in srgb,var(--pu-accent) 8%,transparent), inset 0 1px 0 rgba(255,255,255,.06); }
#padmin-preloader .pu-loader__mark img { display: block; max-width: 70%; max-height: 70%; }
#padmin-preloader .pu-loader__title { color: inherit; font-size: clamp(28px,6vw,46px); font-weight: 650; line-height: 1.2; letter-spacing: -.045em; overflow-wrap: anywhere; }
#padmin-preloader .pu-loader__subtitle { color: #a8b7c8; font-size: 14px; line-height: 1.6; letter-spacing: .025em; overflow-wrap: anywhere; }
#padmin-preloader .pu-loader__line { width: 124px; height: 2px; margin-top: 15px; overflow: hidden; border-radius: 2px; background: rgba(168,191,216,.18); }
#padmin-preloader .pu-loader__line span { display: block; width: 100%; height: 100%; transform-origin: left; background: var(--pu-accent); animation: pu-line var(--pu-duration,700ms) cubic-bezier(.2,.7,.2,1) both; }
html[data-theme="light"] #padmin-preloader { color: #102033; background: radial-gradient(ellipse at 50% 40%, #e3f3f2 0, #f3f7fb 65%); }
html[data-theme="light"] #padmin-preloader .pu-loader__subtitle { color: #52657a; }
#padmin-backtop { position: fixed; left: max(var(--pu-left,18px), env(safe-area-inset-left)); bottom: max(var(--pu-bottom,22px),calc(14px + env(safe-area-inset-bottom))); z-index: 46; display: grid; place-items: center; width: var(--pu-size,60px); height: var(--pu-size,60px); margin: 0; padding: 0; border: 1px solid rgba(168,191,216,.22); border-radius: 19px; color: var(--pu-accent); background: rgba(11,23,40,.92); box-shadow: 0 8px 26px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.04); backdrop-filter: blur(16px); cursor: pointer; transition: border-color .2s, background .2s, box-shadow .2s; }
#padmin-backtop[hidden] { display: none !important; }
#padmin-backtop:hover { border-color: var(--pu-accent); background: #102538; box-shadow: 0 12px 30px rgba(0,0,0,.3); }
#padmin-backtop:focus-visible { outline: 3px solid var(--pu-accent); outline-offset: 4px; }
#padmin-backtop svg { display: block; width: calc(100% - 5px); height: calc(100% - 5px); overflow: visible; }
#padmin-backtop .pu-top__track { stroke: currentColor; stroke-width: 1; opacity: .16; }
#padmin-backtop .pu-top__progress { stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; transform: rotate(-90deg); transform-origin: 28px 28px; }
#padmin-backtop .pu-top__arrow { stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#padmin-backtop .pu-top__caption { position: absolute; left: calc(100% + 10px); padding: 6px 10px; border: 1px solid rgba(168,191,216,.18); border-radius: 9px; color: #eaf5f6; background: #0b1728; font-size: 13px; line-height: 1.5; opacity: 0; pointer-events: none; white-space: nowrap; transition: opacity .15s; }
#padmin-backtop:hover .pu-top__caption, #padmin-backtop:focus-visible .pu-top__caption { opacity: 1; }
html[data-theme="light"] #padmin-backtop { background: rgba(255,255,255,.94); border-color: rgba(25,57,87,.2); box-shadow: 0 8px 24px rgba(20,45,70,.13); }
html[data-theme="light"] #padmin-backtop:hover { background: #f1faf9; border-color: var(--pu-accent); }
html[data-theme="light"] #padmin-backtop .pu-top__caption { color: #102033; background: #fff; }
@keyframes pu-line { from {transform:scaleX(0)} to {transform:scaleX(1)} }
@keyframes pu-failsafe { to {opacity:0;visibility:hidden;pointer-events:none} }
@media (max-width:650px) { #padmin-backtop { width:var(--pu-mobile-size,52px);height:var(--pu-mobile-size,52px);border-radius:16px } #padmin-backtop .pu-top__caption {display:none} }
@media (prefers-reduced-motion:reduce) { #padmin-preloader .pu-loader__line span {animation:none} #padmin-backtop {transition:none} }
