/* Centrale Solid-productindeling v1: vaste verticale productidentiteit. */

:root{--solid-logo-rail:148px}
body{padding-right:0}
.shell>main{max-width:none;padding-right:calc(34px + var(--solid-logo-rail))}
.shell>main>.pagehead{margin-right:calc(-34px - var(--solid-logo-rail))}
.viewport-brand{position:fixed;right:max(10px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));width:128px;height:min(500px,calc(100dvh - 84px));z-index:20;display:block;color:var(--ink);border-radius:8px}
.viewport-brand>img,.viewport-brand-fallback{position:absolute;left:50%;top:50%;width:min(480px,calc(100dvh - 104px));height:120px;transform:translate(-50%,-50%) rotate(-90deg);object-fit:contain}
.viewport-brand-fallback{display:flex;align-items:center;justify-content:center;gap:8px;font-size:46px;white-space:nowrap}
.viewport-brand-fallback img{width:88px;height:88px;object-fit:contain}
.shell>aside>.navlabel{margin-top:24px}
@media(max-width:850px){:root{--solid-logo-rail:104px}.shell>main{padding-right:calc(16px + var(--solid-logo-rail))}.shell>main>.pagehead{margin-right:calc(-16px - var(--solid-logo-rail))}.viewport-brand{right:max(4px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:96px;height:min(380px,calc(100dvh - 72px))}.viewport-brand>img,.viewport-brand-fallback{width:min(360px,calc(100dvh - 92px));height:88px}.viewport-brand-fallback{font-size:36px}.viewport-brand-fallback img{width:64px;height:64px}}
@media print{body{padding-right:0}.shell>main{padding-right:0}.shell>main>.pagehead{margin-right:0}.viewport-brand{display:none}}

/* Productie heeft geen omgevingsbalk; externe CSS respecteert de CSP. */
.environment-production .shell,.environment-production .login{min-height:100vh;min-height:100dvh}
@media(min-width:851px){.environment-production .shell>aside{top:0;height:100vh;height:100dvh}}
