:root{--app-viewport-height:100dvh;--app-stable-height:100dvh;--app-safe-top:0px;--app-safe-right:0px;--app-safe-bottom:0px;--app-safe-left:0px}
html[data-runtime=telegram] .app-shell{min-height:var(--app-stable-height);padding-top:max(var(--app-safe-top),var(--app-content-safe-top));padding-inline:var(--app-safe-left) var(--app-safe-right)}
html[data-runtime=telegram],html[data-runtime=telegram] body{height:var(--app-viewport-height);overflow:hidden;overscroll-behavior:none}
html[data-runtime=telegram] .app-shell{height:var(--app-viewport-height);min-height:0;overflow:hidden}
html[data-runtime=telegram] main{height:100%;overflow-y:auto;overscroll-behavior:contain;min-height:0}
html[data-runtime=telegram] .dock{padding-bottom:max(env(safe-area-inset-bottom),var(--app-safe-bottom),var(--app-content-safe-bottom))!important}
#web-login-entry{position:fixed;top:12px;right:12px;z-index:20;padding:10px 16px;border:1px solid #e2e5e9;border-radius:12px;background:#fff;color:#7c3aed;font:600 14px Inter,sans-serif}
.web-auth-dialog{max-width:min(420px,calc(100vw - 32px));border:1px solid #e2e5e9;border-radius:16px;padding:24px;color:#17181a;background:#f8f9fa;font-family:Inter,sans-serif}.web-auth-dialog::backdrop{background:#0a0a0b66}.web-auth-dialog h2{font-size:20px}.web-auth-dialog p{font-size:14px;line-height:22px}.web-auth-dialog code{display:block;margin:18px 0;letter-spacing:2px;font-size:18px;overflow-wrap:anywhere}.web-auth-dialog input{width:100%;padding:12px;border:1px solid #ddd;border-radius:12px}.web-auth-dialog button{margin-top:16px;margin-right:8px;padding:12px 16px;border:0;border-radius:12px;background:#7c3aed;color:white}
@media(min-width:900px){
html[data-runtime=desktop-web] .app-shell{max-width:1440px;margin:auto;min-height:100dvh;padding-left:184px}
html[data-runtime=desktop-web] main{max-width:1100px;margin:auto;padding:28px 32px}
html[data-runtime=desktop-web] .f-screen{max-width:100%;min-height:calc(100dvh - 56px)}
html[data-runtime=desktop-web] .dock{left:max(0px,calc((100vw - 1440px)/2))!important;top:0!important;bottom:0!important;width:184px!important;height:100dvh!important;translate:none!important;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;padding:96px 12px 20px!important;border-right:1px solid #e4e7eb!important;border-top:0!important}
html[data-runtime=desktop-web] .dock[hidden]{display:none!important}
html[data-runtime=desktop-web] .dock button{display:flex;align-items:center;justify-content:flex-start;gap:12px;padding:0 12px!important;min-height:48px!important;width:100%}
html[data-runtime=desktop-web] .dock button span{font-size:14px!important}
html[data-runtime=desktop-web] .approved-create{max-width:760px;margin:auto}
html[data-runtime=desktop-web] .approved-home{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;align-content:start}
html[data-runtime=desktop-web] .approved-home>.approved-header,html[data-runtime=desktop-web] .approved-home>.approved-workspace-line,html[data-runtime=desktop-web] .approved-home>h1{grid-column:1/-1}
html[data-runtime=desktop-web] .approved-home>.home-composer{grid-column:1;grid-row:4/6;align-self:start}
html[data-runtime=desktop-web] .approved-home .approved-section{margin-top:0}
html[data-runtime=desktop-web] .approved-masonry{columns:3}
html[data-runtime=desktop-web] .approved-result{max-width:760px;margin:auto}
html[data-runtime=desktop-web] .result-hero{height:65dvh;min-height:500px}
html[data-runtime=desktop-web] body.editor-active .app-shell{max-width:none;padding-left:0}
html[data-runtime=desktop-web] body.editor-active main{max-width:none;width:100%;padding:0}
html[data-runtime=desktop-web] .editor-stage{max-width:none}
html[data-runtime=desktop-web] .editor-stage .visual-canvas{max-height:calc(var(--visual-height) - 180px)}
html[data-runtime=desktop-web] .editor-sheet .sheet-panel{translate:none;width:380px}
html[data-runtime=desktop-web] .editor-sheet .sheet-panel{max-width:420px;right:20px;left:auto;bottom:80px;max-height:calc(100dvh - 140px);border-radius:16px}
html[data-runtime=desktop-web] .content-fab{right:40px;bottom:28px}
}
@media(max-width:899px){#web-login-entry{right:60px;top:14px;padding:8px 10px;font-size:12px}}
