/* SupremeGeek Marble Drop 3D: responsive interface V4 */
:root { color-scheme: dark; }
html,body { width:100%;height:100%;overscroll-behavior:none; }
#unity-container.unity-desktop,#unity-container.unity-mobile {
  position:fixed;left:0;top:0;right:0;bottom:0;inset:0;
  transform:none;width:100%;height:100%;height:100dvh;
}
#unity-canvas { display:block; width:100%!important;height:100%!important;touch-action:none; }
.topbar {
  top:max(14px,env(safe-area-inset-top));
  left:max(14px,env(safe-area-inset-left));
  right:max(14px,env(safe-area-inset-right));gap:10px;
}
.topbar .home,.topbar .profile { -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px); }
.topbar .profile { max-width:min(52vw,300px);min-width:0; }
.topbar .profile > div { min-width:0; }
.topbar .profile b {overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.scoreboard {
  display:flex;flex-direction:column;
  width:min(330px,calc(100vw - 24px));
  max-height:min(540px,calc(100dvh - 112px));
  overflow:hidden;touch-action:auto;
  -webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);
}
.scoreboard[hidden],.scoreboard-reopen[hidden] {display:none!important;}
.scoreboard-head {
  flex:0 0 auto;min-height:55px;
  padding:9px 10px 9px 14px;
  -webkit-user-select:none;user-select:none;
  touch-action:none;
}
.scoreboard-title {font-size:clamp(13px,2.6vw,17px);line-height:1.25;white-space:nowrap;}
.scoreboard-actions {gap:5px;align-items:center;flex-shrink:0;}
.scoreboard-actions button {
  display:grid;place-items:center;
  width:36px;min-width:36px;height:36px;padding:0;
  line-height:1;font-size:20px;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.scoreboard-actions button:focus-visible,.scoreboard-reopen:focus-visible,
.scoreboard-head:focus-visible {outline:2px solid #9deaff;outline-offset:2px;}
.scoreboard-body {
  flex:1 1 auto;min-height:0;max-height:none;
  overflow-x:hidden;overflow-y:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
}
.scoreboard-foot{flex:0 0 auto;}
.scoreboard.collapsed {height:auto;max-height:none;}
.scoreboard.collapsed .scoreboard-head {border-bottom:0;}
.scoreboard.collapsed .scoreboard-body,
.scoreboard.collapsed .scoreboard-foot {display:none;}
.scoreboard-reopen {
  position:fixed;right:max(14px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  z-index:22;display:inline-flex;align-items:center;justify-content:center;gap:7px;
  min-width:96px;min-height:44px;padding:10px 14px;
  border:1px solid #bde9ffaa;border-radius:999px;
  background:#103456f2;color:#eff9ff;
  box-shadow:0 8px 22px #00152caa;
  font:800 13px Inter,"Segoe UI",sans-serif;
  touch-action:manipulation;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
#toast {
  max-width:min(440px,calc(100vw - 26px));
  bottom:max(24px,calc(env(safe-area-inset-bottom) + 12px));
  white-space:normal;text-align:center;
}
#unity-warning {z-index:35;max-width:min(94vw,440px);color:#fff;border-radius:12px;overflow:hidden;}
@media (max-width:680px) {
  .topbar {
    top:calc(max(7px,env(safe-area-inset-top)) + 1px);
    left:max(7px,env(safe-area-inset-left));right:max(7px,env(safe-area-inset-right));
  }
  .home {padding:10px 11px;min-height:44px;display:inline-flex;align-items:center;white-space:nowrap;}
  .profile {min-height:44px;max-width:min(54vw,220px);gap:6px;}
  .profile img {width:31px;height:31px;flex-shrink:0;}
  .profile b{font-size:12px;}.profile small{font-size:10px;white-space:nowrap;}
  .scoreboard {
    top:calc(max(68px,env(safe-area-inset-top) + 64px));right:max(7px,env(safe-area-inset-right));
    bottom:auto;width:min(306px,calc(100vw - 14px));
    max-height:min(60dvh,calc(100dvh - 102px));
    border-radius:16px;-webkit-backdrop-filter:none;backdrop-filter:none;
    background:linear-gradient(145deg,#102f50f5,#061426f6);
  }
  .scoreboard-head {padding:6px 7px 6px 11px;min-height:49px;}
  .scoreboard-actions button{width:37px;min-width:37px;height:37px;font-size:21px;}
  .scoreboard-body {max-height:none;padding:5px 7px 9px;}
  .scoreboard-foot {padding:6px 10px;font-size:10px;}
  .rank-row {grid-template-columns:32px minmax(0,1fr) auto;gap:6px;min-height:39px;padding:6px;}
  .rank-name{min-width:0;font-size:12px;}.rank-score{font-size:12px;}
  .login-card{width:min(430px,calc(100vw - 28px));padding:22px 16px;}
  .login-card h1{font-size:clamp(23px,8vw,33px);}
  .login-card p{font-size:14px;}
  .login-wall{padding:calc(env(safe-area-inset-top) + 12px) 7px calc(env(safe-area-inset-bottom) + 12px);}
  #unity-loading-bar {max-width:90vw;}
}
@media (max-height:500px) and (orientation:landscape) {
  .topbar{top:max(5px,env(safe-area-inset-top));left:max(7px,env(safe-area-inset-left));right:max(7px,env(safe-area-inset-right));}
  .scoreboard {top:calc(max(54px,env(safe-area-inset-top) + 48px));max-height:calc(100dvh - max(60px,env(safe-area-inset-top) + 54px) - env(safe-area-inset-bottom));width:min(280px,calc(100vw - 24px));}
  .scoreboard-head {min-height:44px;}
  .scoreboard-body{min-height:0;}
  .scoreboard-reopen{bottom:max(6px,env(safe-area-inset-bottom));right:max(9px,env(safe-area-inset-right));}
  .login-card{padding:12px 22px;max-height:90dvh;overflow:auto;}.login-card h1{font-size:21px;margin-bottom:3px;}.login-card p{line-height:1.35;margin:6px 0;}.login-card a{padding:8px 15px;margin-top:6px;}
}
@media(prefers-reduced-motion:reduce){.scoreboard,.scoreboard-reopen{transition:none!important;}}
