/* Shared legal footer: normal document flow, with a full-screen minimum. */
html{min-height:100%}
html.wb-modal-open{overflow:hidden!important;scrollbar-gutter:stable}
body:has(>[data-site-footer]),body:has(>[data-site-main]){min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body>[data-site-main]{width:100%;flex:1;min-width:0;display:flex;flex-direction:column}
[data-site-footer]{position:static!important;inset:auto!important;flex:none;clear:both;box-sizing:border-box}
body>[data-site-footer],[data-site-main]>[data-site-footer]{margin-top:auto!important}
html[data-workbench-embedded] body{min-height:0!important}
html[data-workbench-embedded] [data-site-main]{min-height:0!important}
html[data-workbench-embedded] [data-site-footer],html[data-workbench-embedded] [data-site-header]{display:none!important}

/* The shell owns one header and one footer. Neither overlaps its content. */
body[data-workbench-shell]{--wb-header-height:78px;--wb-footer-height:100px}
body[data-workbench-shell] .maincol{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;min-width:0}
body[data-workbench-shell] .maincol>.topbar{flex:none;position:sticky;top:0;z-index:100}
body[data-workbench-shell] .maincol>.content{flex:1;display:flex;flex-direction:column;min-width:0;width:100%;margin:0 auto}
body[data-workbench-shell] .content.catalog-mode{height:auto!important;overflow:visible;max-width:none;margin:0}
body[data-workbench-shell] #classic-panel{height:auto;min-width:0;width:100%;flex:1}
body[data-workbench-shell] #classic-frame{height:var(--wb-frame-height,calc(100dvh - var(--wb-header-height) - var(--wb-footer-height)))!important;min-height:300px}
body[data-workbench-shell] .content>[data-site-footer]{margin-top:auto!important;flex:none}
@media(max-width:760px){body[data-workbench-shell]{--wb-header-height:64px}}
