/* Last in the cascade. Pixel viewport fallback also follows the iOS keyboard. */
dialog:not([open]){display:none!important}
.sf-dialog-fallback[open]{position:fixed;top:0;right:0;bottom:0;left:0;box-sizing:border-box}
#paint-splash,#member-dialog,#studio-premiere,#light-journey{top:0;right:0;bottom:auto;left:0;height:100vh;height:var(--sf-view-height,100vh);top:var(--sf-view-top,0px);width:100%;max-width:100%;box-sizing:border-box}
#sf-intro-cover[hidden]{display:none!important}
#member-dialog .member-card{max-height:calc(100vh - 64px);max-height:calc(var(--sf-view-height,100vh) - 64px);-webkit-overflow-scrolling:touch}
/* Content stays present even when an older compositor drops an animation. */
#member-dialog[open].member-intro-arrive .member-card,#member-dialog[open].member-intro-arrive.member-intro-window .member-card{opacity:1;pointer-events:auto;animation:none}
.sf-legacy-dialog .member-portal{width:90%;height:65vh;max-height:65vh}
#paint-portal{width:150px;height:150px;width:clamp(120px,18vmin,190px);height:clamp(120px,18vmin,190px)}
.paint-meta{top:20px;top:max(20px,env(safe-area-inset-top))}
.paint-footer{bottom:18px;bottom:max(18px,env(safe-area-inset-bottom))}
#paint-access{min-height:44px;font-size:11px}
#sf-entry-recovery{position:fixed;z-index:2147483300;left:16px;right:16px;bottom:16px;padding:20px;background:#fff;color:#171717;border:1px solid #c6ad70;font:16px/1.6 Arial,sans-serif}
#sf-entry-recovery[hidden]{display:none}
#sf-entry-recovery a{display:inline-block;padding:10px;color:#382700;text-decoration:underline}
@media(max-width:850px),(max-height:500px){
  #member-dialog[open]{overflow-y:auto;-webkit-overflow-scrolling:touch}
  #member-dialog .member-shell,#member-dialog[dir=rtl] .member-shell,#member-dialog.cube-max .member-shell,#member-dialog[data-view=offers] .member-shell{display:block;height:auto;min-height:100%;overflow:visible;padding:16px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}
  #member-dialog .member-card,#member-dialog[dir=rtl] .member-card,#member-dialog.cube-max .member-card,#member-dialog[data-view=offers] .member-card{position:relative;width:100%;max-width:560px;max-height:none;min-height:0;margin:0 auto;padding:24px 20px;overflow:visible;contain:none;border-radius:20px;box-shadow:none}
  #member-dialog .member-portal,#member-dialog[dir=rtl] .member-portal{position:absolute;top:12px;left:50%;width:250px;height:250px;max-height:none;transform:translateX(-50%);opacity:.3;filter:none;pointer-events:none}
  #member-dialog .member-sky{display:none}
  #member-dialog .cube-cubeman-dock{position:relative;max-width:100%;margin:12px auto}
  #member-dialog input,#member-dialog select,#member-dialog textarea{font-size:16px}
  #member-dialog button{min-height:44px}
  #member-dialog .member-card h2{font-size:36px}
  #paint-portal{top:65%;width:120px;height:120px}
  .paint-title-wrap{bottom:16%}
  .paint-footer{align-items:flex-end;left:16px;right:16px}
  .paint-hint{max-width:58%}
}
@media(max-height:420px){
  .paint-meta{top:10px}
  .paint-title-wrap{bottom:28%}
  #paint-portal{top:61%;width:88px;height:88px}
  .paint-footer{bottom:8px}.paint-hint span{display:none}
}
