:root{--rs-drawer-max:min(55vh, 520px);--rs-fab-size:48px;--rs-gap:12px;--rs-safe-bottom:env(safe-area-inset-bottom, 0px);--rs-safe-top:env(safe-area-inset-top, 0px);--rs-safe-right:env(safe-area-inset-right, 0px);--rs-safe-left:env(safe-area-inset-left, 0px);--rs-z-backdrop:30;--rs-z-drawer:40;--rs-z-fab:45}.rs-panel-backdrop{display:none;position:fixed;inset:0;z-index:var(--rs-z-backdrop);border:0;padding:0;margin:0;background:rgba(2,8,18,.55);cursor:pointer;-webkit-tap-highlight-color:transparent;pointer-events:auto}.rs-panel-backdrop.is-visible{display:block}@media (max-width:900px){html{height:100%;height:100dvh}body{height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none}.app{display:block!important;position:relative;width:100%;height:100%;height:100dvh;min-height:100dvh;overflow:hidden;isolation:isolate}.app>#stage,.app>.stage,.app>main.stage{position:absolute!important;inset:0;width:100%!important;height:100%!important;min-width:0;min-height:0;z-index:1}.app>.panel-column{position:fixed!important;left:0;right:0;bottom:0;width:100%!important;max-width:none!important;min-width:0!important;height:auto!important;max-height:var(--rs-drawer-max);z-index:var(--rs-z-drawer)!important;overflow:visible;transition:transform .28s,max-height .28s,opacity .2s;padding-bottom:var(--rs-safe-bottom);box-sizing:border-box;pointer-events:auto!important}.app.panel-collapsed>.panel-column{width:100%!important;min-width:0!important;max-height:0!important;transform:translateY(8px);pointer-events:none!important}.app>.panel-column>.panel,.app>.panel-column>.sidebar,.app>.panel-column>aside.panel,.app>.panel-column>aside.sidebar{width:100%!important;height:auto!important;max-height:var(--rs-drawer-max)!important;border-right:none!important;border-bottom:none!important;border-top:1px solid rgba(90,190,255,.28)!important;border-radius:16px 16px 0 0!important;box-shadow:0 -8px 32px rgba(0,0,0,.45);overflow:hidden!important;opacity:1!important;pointer-events:auto!important;display:flex!important;flex-direction:column!important;background:rgba(8,16,32,.96)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app.panel-collapsed>.panel-column>.panel,.app.panel-collapsed>.panel-column>.sidebar,.app.panel-collapsed>.panel-column>aside.panel,.app.panel-collapsed>.panel-column>aside.sidebar{opacity:0!important;pointer-events:none!important;max-height:0!important;border-color:transparent!important}.app>.panel-column .panel-body,.app>.panel-column>.panel>.panel-body,.app>.panel-column>.sidebar>.panel-body{flex:1 1 auto!important;min-height:0!important;max-height:calc(var(--rs-drawer-max) - 12px)!important;overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;pointer-events:auto!important}.app>.panel-column .controls-scroll,.app>.panel-column .panel-scroll,.app>.panel-column .sidebar-content{flex:0 0 auto!important;min-height:0;max-height:none!important;overflow:visible!important}.app>.panel-column .panel-bottom{flex-shrink:0}.app>.panel-column .knowledge-box{max-height:none!important;overflow:visible!important}.app .panel-toggle-btn,.app>.panel-column>.panel-toggle-btn{position:fixed!important;left:auto!important;right:max(var(--rs-gap),var(--rs-safe-right))!important;top:auto!important;bottom:max(var(--rs-gap),var(--rs-safe-bottom))!important;transform:none!important;width:var(--rs-fab-size)!important;height:var(--rs-fab-size)!important;border-radius:50%!important;border:1px solid rgba(90,190,255,.35)!important;border-left:1px solid rgba(90,190,255,.35)!important;font-size:16px!important;line-height:1!important;z-index:var(--rs-z-fab)!important;pointer-events:auto!important;box-shadow:0 6px 20px rgba(0,0,0,.4);-webkit-tap-highlight-color:transparent}.app:not(.panel-collapsed) .panel-toggle-btn,.app:not(.panel-collapsed)>.panel-column>.panel-toggle-btn{left:50%!important;right:auto!important;bottom:calc(var(--rs-drawer-max) + 6px + var(--rs-safe-bottom))!important;transform:translateX(-50%)!important;width:72px!important;height:32px!important;border-radius:10px 10px 0 0!important;font-size:14px!important}.panel-tools{top:max(10px,var(--rs-safe-top))!important;right:max(10px,var(--rs-safe-right))!important;left:auto!important;gap:6px!important}.panel-tools .tool-btn{min-height:36px;padding:.45rem .65rem!important;font-size:.72rem!important}.stage-hint{left:50%!important;right:auto!important;bottom:max(64px,calc(var(--rs-fab-size) + var(--rs-gap) + var(--rs-safe-bottom) + 8px))!important;transform:translateX(-50%)!important;max-width:calc(100% - 24px);font-size:.65rem!important;padding:4px 10px!important;text-align:center}.cycle-factor-hint,.cycle-factor-panel,.stage-demo-btn,.wb-demo-btn{bottom:max(72px,calc(var(--rs-fab-size) + var(--rs-gap) + var(--rs-safe-bottom) + 16px))!important;max-width:calc(100% - 24px)!important}.cycle-factor-panel{left:50%!important;transform:translateX(-50%)!important;max-height:36vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.water-body-view{padding:.5rem .75rem 5.5rem!important}.wb-diagram{width:min(980px,100%)!important;max-height:calc(100dvh - 7.5rem)!important}body.is-fullscreen .app{grid-template-columns:none!important}body.is-fullscreen .app>#stage,body.is-fullscreen .app>.stage,body.is-fullscreen .app>main.stage{position:absolute!important;inset:0;height:100%!important}}@media (max-width:480px){:root{--rs-drawer-max:min(58vh, 460px)}.app>.panel-column .panel-header h1,.app>.panel-column .panel-title{font-size:1rem!important;letter-spacing:.08em!important}.app>.panel-column .layer-checkboxes{grid-template-columns:1fr 1fr!important}}@media (max-width:900px) and (max-height:480px){:root{--rs-drawer-max:min(68vh, 280px)}.stage-hint{display:none}}