/* Stardrop V4 mobile app shell */
: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)}
html{overscroll-behavior:none;background:#070914}body{min-height:100dvh;overscroll-behavior-y:none}body.game-page{touch-action:pan-x pan-y}.app-only{display:none}.pwa-standalone .browser-only{display:none!important}.pwa-standalone .app-only{display:initial}.install-app-btn{min-height:38px;border:1px solid rgba(93,228,255,.26);border-radius:999px;background:rgba(93,228,255,.07);color:#bff6ff;padding:0 13px;font-size:10px;font-weight:900;cursor:pointer}.install-app-btn.hidden{display:none}.install-banner{position:fixed;z-index:850;left:50%;bottom:calc(82px + var(--safe-bottom));width:min(430px,calc(100% - 24px));transform:translate(-50%,25px);opacity:0;pointer-events:none;display:grid;grid-template-columns:48px 1fr auto;gap:11px;align-items:center;padding:12px;border:1px solid rgba(93,228,255,.24);border-radius:18px;background:rgba(11,16,31,.94);backdrop-filter:blur(18px);box-shadow:0 22px 60px rgba(0,0,0,.45);transition:.25s}.install-banner.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}.install-banner img{width:48px;height:48px;border-radius:13px}.install-banner strong{display:block;font-size:12px}.install-banner small{display:block;color:var(--muted,#9ba7c4);font-size:9px;line-height:1.4;margin-top:3px}.install-banner button{height:37px;border:0;border-radius:11px;background:linear-gradient(135deg,#ffd46b,#ff8d5d);color:#161009;padding:0 12px;font-size:9px;font-weight:950}.install-banner .install-dismiss{position:absolute;right:5px;top:3px;width:27px;height:27px;padding:0;background:transparent;color:#9ba7c4;font-size:16px}.app-install-layer{position:fixed;inset:0;z-index:1200;display:none;align-items:flex-end;justify-content:center;background:rgba(2,4,11,.76);backdrop-filter:blur(13px)}.app-install-layer.open{display:flex}.app-install-sheet{width:min(520px,100%);max-height:86dvh;overflow:auto;border:1px solid rgba(255,255,255,.1);border-bottom:0;border-radius:27px 27px 0 0;background:linear-gradient(180deg,#151d34,#090e1d);padding:22px 20px calc(20px + var(--safe-bottom));box-shadow:0 -25px 80px rgba(0,0,0,.5)}.app-install-head{display:flex;gap:13px;align-items:center}.app-install-head img{width:66px;height:66px;border-radius:18px}.app-install-head h2{margin:0;font-size:24px}.app-install-head p{margin:5px 0 0;color:#9ba7c4;font-size:10px;line-height:1.5}.app-install-benefits{display:grid;gap:9px;margin:18px 0}.app-install-benefits div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:14px;background:rgba(255,255,255,.025)}.app-install-benefits b{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(141,125,255,.13)}.app-install-benefits strong{display:block;font-size:11px}.app-install-benefits small{display:block;color:#9ba7c4;font-size:9px;margin-top:3px}.app-install-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.app-install-actions button{height:47px;border-radius:14px;border:1px solid rgba(255,255,255,.1);font-size:10px;font-weight:950}.app-install-actions .install-primary{border:0;background:linear-gradient(135deg,#ffd46b,#ff8d5d);color:#171008}.app-install-actions .install-later{background:rgba(255,255,255,.04);color:#fff}.ios-install-help{display:none;margin:15px 0 0;padding:13px;border-radius:14px;background:rgba(93,228,255,.06);border:1px solid rgba(93,228,255,.14);color:#c6f7ff;font-size:10px;line-height:1.65}.ios-install-help.show{display:block}.app-update-toast{position:fixed;z-index:1300;left:50%;bottom:calc(86px + var(--safe-bottom));transform:translate(-50%,20px);opacity:0;pointer-events:none;display:flex;align-items:center;gap:10px;width:min(420px,calc(100% - 24px));padding:11px 12px;border-radius:15px;background:#18213a;border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 50px rgba(0,0,0,.4);transition:.22s}.app-update-toast.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}.app-update-toast span{flex:1;font-size:10px}.app-update-toast button{height:34px;border:0;border-radius:10px;background:#ffd46b;color:#18110a;font-size:9px;font-weight:950;padding:0 11px}

@media(max-width:720px){
  body{padding-left:var(--safe-left);padding-right:var(--safe-right);-webkit-user-select:none;user-select:none}
  input,select,textarea{-webkit-user-select:text;user-select:text}
  .topbar{top:0;padding-top:var(--safe-top)}.topbar-inner{min-height:58px}.brand span{font-size:17px}.brand-mark{width:36px;height:36px}.install-app-btn{width:38px;padding:0;font-size:0}.install-app-btn:before{content:'⇩';font-size:17px}.account-pill{padding:5px}.account-pill .avatar{width:31px;height:31px}
  main{padding-bottom:calc(86px + var(--safe-bottom))}.hero{padding:20px 0 12px;display:block}.hero>div:first-child{position:relative;z-index:2}.hero h1{font-size:38px;line-height:.94;margin:12px 0}.hero p{font-size:12px;line-height:1.55;max-width:95%}.hero-orbit{display:none}.hero-actions{display:grid;grid-template-columns:1fr auto;margin-top:18px}.hero-actions .btn{min-height:50px}.stats-row{gap:8px;margin-bottom:17px}.stat{padding:12px;border-radius:15px}.stat small{font-size:8px}.stat strong{font-size:18px}.stat em{font-size:8px}.retention-grid{gap:9px;margin-bottom:4px}.retention-panel{padding:15px;border-radius:18px}.retention-title h2{font-size:18px}.retention-panel p{font-size:10px}.daily-trail-section{padding-top:22px}.section{padding:22px 0 28px}.section-head{display:block;margin-bottom:14px}.section-head h2{font-size:24px}.section-head p{font-size:10px;margin-top:8px}.piece-section{display:none}.chapter-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-left:-11px;margin-right:-11px;padding:0 11px 10px;gap:10px}.chapter-card{flex:0 0 82%;scroll-snap-align:center;min-height:215px}.level-route{grid-template-columns:repeat(5,1fr);row-gap:20px}.content-grid{gap:10px}.panel{padding:16px;border-radius:19px}.companion-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.companion{flex:0 0 44%;scroll-snap-align:start}.event-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.event-card{flex:0 0 82%;scroll-snap-align:center}.footer{display:none}.bottom-nav{bottom:0;left:0;right:0;border-radius:22px 22px 0 0;border-left:0;border-right:0;border-bottom:0;padding:6px 6px calc(6px + var(--safe-bottom));background:rgba(8,12,24,.96)}.bottom-nav a{min-height:48px;display:grid;place-items:center;align-content:center;border-radius:13px}.bottom-nav a:active{background:rgba(255,255,255,.07)}
  .install-banner{bottom:calc(78px + var(--safe-bottom))}
}

/* Full mobile game presentation */
@media(max-width:720px){
  body.game-page{overflow-x:hidden;background:#060812;padding:0}body.game-page .cosmos{background-attachment:scroll!important}.game-shell{width:100%;padding:calc(5px + var(--safe-top)) 6px calc(88px + var(--safe-bottom))}.game-top{position:sticky;top:0;z-index:80;margin:-5px -6px 5px;padding:6px max(7px,var(--safe-right)) 7px max(7px,var(--safe-left));background:linear-gradient(180deg,rgba(6,8,18,.98),rgba(6,8,18,.83));backdrop-filter:blur(15px);border-bottom:1px solid rgba(255,255,255,.07)}.back,.icon-btn{width:38px;height:38px;border-radius:12px}.game-brand b{font-size:12px}.game-brand small{display:block;font-size:7px}.mission-strip{margin:0 1px 6px;padding:9px 11px;border-radius:15px;min-height:59px}.mission-strip small{font-size:6px}.mission-strip h1{font-size:15px;margin:3px 0}.mission-strip p{display:none}.momentum-badge{font-size:6px;padding:5px 6px}.level-stars{font-size:11px}.game-layout{display:flex;flex-direction:column;gap:7px}.left-side,.right-side{display:contents}.left-side>.card:nth-child(3){order:1;padding:6px;border-radius:14px}.left-side>.card:nth-child(3) .hud-grid{gap:5px}.left-side>.card:nth-child(3) .hud{padding:6px 3px;border-radius:10px}.left-side>.card:nth-child(3) .hud small{font-size:6px}.left-side>.card:nth-child(3) .hud b{font-size:16px;margin-top:2px}.boss-panel:not(.hidden){order:1;display:grid!important;grid-template-columns:45px 1fr auto;grid-template-rows:auto auto;gap:2px 9px;text-align:left;padding:8px 10px}.boss-panel:not(.hidden) .boss-avatar{grid-row:1/3;width:43px;height:43px;margin:0;border-radius:13px;font-size:20px}.boss-panel:not(.hidden) .boss-phase{font-size:6px}.boss-panel:not(.hidden) strong{font-size:10px}.boss-panel:not(.hidden) p{display:none}.boss-panel:not(.hidden) .boss-hp{grid-column:2/4;margin:3px 0 0}.boss-panel:not(.hidden) .boss-value{grid-column:3;grid-row:1/2}.board-panel{order:2;align-self:center;width:auto;max-width:100%;padding:6px;border-radius:18px}.starflow-hud{padding:6px 7px!important;border-radius:11px!important;margin-bottom:5px!important}.starflow-hud small{font-size:5px!important}.starflow-hud strong,.world-power b{font-size:8px!important}.board-status{padding:0 3px 5px!important}.board-status span{font-size:6px!important}.board-status span:last-child{display:none}:root{--cell:min(10.65vw,45px);--gap:3px}.board{touch-action:none}.tile{touch-action:none}.cell{border-radius:9px}.tile{inset:2px;border-radius:8px}.objective-card{order:3;padding:10px;border-radius:15px}.objective-card h3{display:none}.objective{gap:5px}.objective-row{grid-template-columns:27px 1fr auto;gap:7px}.objective-icon{width:27px;height:27px;border-radius:8px}.objective-row strong{font-size:8px}.objective-row small{display:none}.objective-value{font-size:8px}.bonus-signal-card{order:4;padding:10px;border-radius:15px}.bonus-signal-card #bonusSignalDesc{display:none}.companion-panel{order:5;padding:9px}.momentum-card{order:6;padding:10px}.right-side>.card:last-child{order:7;padding:10px}.right-side>.card:nth-child(2){position:fixed;z-index:140;left:0;right:0;bottom:0;padding:6px max(7px,var(--safe-right)) calc(6px + var(--safe-bottom)) max(7px,var(--safe-left));border-radius:20px 20px 0 0;border-left:0;border-right:0;border-bottom:0;background:rgba(8,12,24,.96);backdrop-filter:blur(18px);box-shadow:0 -15px 50px rgba(0,0,0,.38)}.right-side>.card:nth-child(2)>h3{display:none}.boosters{grid-template-columns:repeat(4,1fr);gap:5px}.booster{min-height:55px;padding:5px 3px;text-align:center;border-radius:12px}.booster b{display:block;margin:auto;width:25px;height:25px}.booster strong{font-size:6px;margin-top:3px}.booster small{font-size:5px;white-space:nowrap}.modal{align-items:flex-end;padding:0}.modal-card{width:100%;max-height:91dvh;overflow:auto;border-radius:26px 26px 0 0;border-bottom:0;padding:20px 16px calc(18px + var(--safe-bottom))}.modal-icon{width:62px;height:62px;border-radius:19px;font-size:28px}.modal h2{font-size:23px;margin:11px 0 6px}.modal p{font-size:10px}.loadout-grid{grid-template-columns:1fr!important}.preview-wrap{padding:10px!important}.board-preview{width:128px!important}.reward-grid{margin:13px 0}.modal-actions{position:sticky;bottom:0;padding-top:8px;background:linear-gradient(180deg,transparent,#0c1120 24%)}.combo{top:38%;font-size:42px}.toast{bottom:calc(82px + var(--safe-bottom))}
}
@media(max-width:380px){:root{--cell:min(10.45vw,40px);--gap:2px}.game-shell{padding-left:3px;padding-right:3px}.board-panel{padding:5px}.booster strong{display:none}.booster{min-height:48px}}
@media(max-height:620px) and (orientation:landscape){body.game-page .game-shell{padding-bottom:8px}.game-top{position:relative}.mission-strip{display:none}.game-layout{display:grid;grid-template-columns:auto 190px;align-items:start;justify-content:center}.board-panel{grid-column:1;grid-row:1/7}:root{--cell:min(9.2vh,42px);--gap:2px}.left-side,.right-side{display:contents}.left-side>.card,.right-side>.card{grid-column:2}.right-side>.card:nth-child(2){position:static;grid-column:2;padding:7px;border:1px solid rgba(255,255,255,.1);border-radius:15px}.boosters{grid-template-columns:1fr 1fr}.booster{min-height:48px}.objective-card{order:initial}.bonus-signal-card,.companion-panel,.momentum-card,.right-side>.card:last-child{display:none!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}
