:root{--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--app-height:calc(100dvh - var(--safe-top) - var(--safe-bottom))}body{margin:0}html{touch-action:manipulation;-webkit-text-size-adjust:100%}.app-viewport{box-sizing:border-box;min-height:100dvh}.app-viewport .math-app{min-width:0;box-sizing:border-box;height:calc(100dvh / var(--density-scale,1));padding:calc(var(--safe-top) / var(--density-scale,1)) calc(var(--safe-right) / var(--density-scale,1)) calc(var(--safe-bottom) / var(--density-scale,1)) calc(var(--safe-left) / var(--density-scale,1))}.app-viewport .platform-gate,.app-viewport .device-gate,.app-viewport .math-admin{min-height:100dvh;box-sizing:border-box;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}.app-viewport .auth-scene{width:min(100%,calc(var(--app-height) * 4 / 3));min-width:min(960px,100%)}.app-viewport .chart-play .play-body{height:calc(var(--app-height) / var(--density-scale,1) - 162px);min-height:0}.app-viewport .platform-backdrop{box-sizing:border-box;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}.app-viewport .storage-warning{bottom:var(--safe-bottom);left:var(--safe-left);right:var(--safe-right)}.app-viewport .platform-gate{position:relative;isolation:isolate;background:transparent}.app-viewport .platform-gate:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:url(/app/assets/classroom-BVW3FKvq.webp) center/cover no-repeat}.app-viewport .auth-scene{background:none}.app-viewport .auth-hand{position:fixed;width:max(100vw,133.333333dvh);height:max(100dvh,75vw);inset:auto;left:50%;top:50%;transform:translate(-50%,-50%)}.device-gate{box-sizing:border-box;min-height:100dvh;width:100%;padding:32px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff7dd;color:#28354b;font-family:system-ui,sans-serif}.device-gate img{width:min(48vw,220px);height:auto}.device-gate h1{font-size:clamp(24px,5vw,36px);line-height:1.5;margin:16px 0}.device-gate p{font-size:18px;margin:0;line-height:1.5}html:has(.device-gate),body:has(.device-gate){margin:0;min-width:0;height:auto;overflow:auto}
