:root{--bg:#07111f;--panel:#0d1b2c;--panel2:#10243a;--line:#193653;--text:#edf6ff;--muted:#8da8c2;--accent:#25d9ff;--good:#35e38a;--danger:#ff5370;--gold:#ffc857}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 0,#12304b 0,#07111f 42%,#040a12 100%);color:var(--text);font-family:Inter,system-ui,Arial,sans-serif;min-height:100vh}a{color:inherit;text-decoration:none}.top{height:64px;border-bottom:1px solid var(--line);background:rgba(4,10,18,.82);backdrop-filter:blur(16px);display:flex;align-items:center;justify-content:space-between;padding:0 18px;position:sticky;top:0;z-index:20}.brand{font-weight:900;letter-spacing:.5px;font-size:21px}.brand span{color:var(--accent)}.nav{display:flex;gap:8px;align-items:center}.pill,.btn{border:1px solid var(--line);background:#0b1a2b;color:var(--text);padding:10px 14px;border-radius:12px;cursor:pointer}.btn.primary{background:linear-gradient(135deg,#18c9ff,#4378ff);border:0;color:white;font-weight:800}.btn.good{background:linear-gradient(135deg,#20d986,#10a866);border:0;font-weight:900}.btn.danger{background:linear-gradient(135deg,#ff5a73,#d93355);border:0;font-weight:900}.wrap{max-width:1380px;margin:auto;padding:18px}.gamegrid{display:grid;grid-template-columns:1fr 340px;gap:16px}.card{background:linear-gradient(180deg,rgba(15,34,55,.94),rgba(8,20,34,.96));border:1px solid var(--line);border-radius:18px;box-shadow:0 20px 60px #0005}.flight{height:540px;position:relative;overflow:hidden;background:linear-gradient(180deg,#102f4a 0,#0a1d31 58%,#07111d 100%)}.flight:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 20% 20%,#6ad8ff1a,transparent 35%),linear-gradient(180deg,transparent 50%,#06101d 100%)}.horizon{position:absolute;left:-10%;right:-10%;bottom:25%;height:1px;background:#8ad9ff35;box-shadow:0 0 40px #55d8ff33}.gridlines{position:absolute;inset:auto -20% 0;height:45%;background:linear-gradient(#43bce822 1px,transparent 1px),linear-gradient(90deg,#43bce822 1px,transparent 1px);background-size:60px 40px;transform:perspective(180px) rotateX(55deg);transform-origin:bottom;opacity:.35}.cloud{position:absolute;border-radius:50%;filter:blur(12px);background:#dff7ff22}.c1{width:160px;height:55px;top:22%;left:8%}.c2{width:220px;height:65px;top:35%;right:5%}.mult{position:absolute;top:24px;left:0;right:0;text-align:center;font-size:clamp(54px,9vw,104px);font-weight:950;letter-spacing:-5px;text-shadow:0 0 35px #1fd9ff55;z-index:3}.status{position:absolute;top:138px;left:0;right:0;text-align:center;color:var(--muted);z-index:3}.plane{position:absolute;will-change:left,bottom,transform;transition:none;left:10%;bottom:20%;width:145px;height:70px;transform-origin:50% 50%;z-index:5;filter:drop-shadow(0 12px 14px #0008)}.plane.crashed{animation:planeCrash 1.05s cubic-bezier(.2,.75,.3,1) forwards}.plane .body{position:absolute;width:118px;height:24px;background:linear-gradient(180deg,#f5fbff,#7992a8 48%,#293b4b);border-radius:55% 45% 45% 55%;left:12px;top:25px}.plane .nose{position:absolute;right:-10px;top:25px;border-top:12px solid transparent;border-bottom:12px solid transparent;border-left:22px solid #dfe8ee}.plane .wing{position:absolute;left:42px;top:18px;width:62px;height:13px;background:linear-gradient(180deg,#c8d8e4,#4c6071);transform:skewX(-28deg) rotate(-7deg);border-radius:4px}.plane .tail{position:absolute;left:22px;top:12px;width:22px;height:28px;background:linear-gradient(90deg,#8ca4b5,#dfe8ee);clip-path:polygon(0 100%,55% 0,100% 100%)}.plane .engine{position:absolute;left:58px;top:42px;width:30px;height:10px;border-radius:10px;background:#2c3d4b}.plane .flame{position:absolute;left:0;top:28px;width:28px;height:18px;background:linear-gradient(90deg,#ffcc55,#ff7138,transparent);clip-path:polygon(100% 50%,0 0,25% 50%,0 100%);filter:blur(1px)}.trail{position:absolute;left:7%;bottom:22%;width:0;height:5px;background:linear-gradient(90deg,transparent,#20d9ff,#aaf5ff);border-radius:50px;box-shadow:0 0 18px #20d9ff}.controls{padding:14px}.betrow{display:grid;grid-template-columns:1fr 1fr;gap:10px}.input{width:100%;padding:13px;background:#061321;border:1px solid var(--line);border-radius:12px;color:white;font-size:16px}.quick{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.quick button{flex:1;min-width:70px}.side{padding:14px}.side h3{margin:4px 0 12px}.list{max-height:290px;overflow:auto}.row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #17314b;font-size:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.stat{padding:16px}.stat b{font-size:22px}.muted{color:var(--muted)}.auth{max-width:460px;margin:8vh auto;padding:24px}.auth form{display:grid;gap:12px}.notice{padding:12px;border-radius:10px;background:#0b2237;color:#b9d8ee;margin-bottom:12px}.dangerText{color:#ff8799}.goodText{color:#65edaa}.tablewrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.adminnav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}@media(max-width:900px){.gamegrid{grid-template-columns:1fr}.flight{height:470px}.stats{grid-template-columns:1fr 1fr}.nav .hideMob{display:none}}@media(max-width:560px){.wrap{padding:10px}.top{padding:0 10px}.flight{height:430px}.plane{width:115px;transform:scale(.8)}.betrow{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.mult{top:35px}}

@keyframes planeCrash{0%{filter:drop-shadow(0 12px 14px #0008);opacity:1}20%{filter:drop-shadow(0 8px 22px #ff7a2caa);opacity:1}100%{transform:translate3d(90px,65px,0) rotate(78deg) scale(.72)!important;opacity:.15;filter:drop-shadow(0 2px 30px #ff4d2e55)}}
@media(max-width:560px){.flight{min-height:430px}.mult{font-size:clamp(52px,16vw,82px);letter-spacing:-4px}.status{top:125px}.plane{width:115px;height:62px}.plane .body{width:94px;height:20px;left:10px;top:23px}.plane .nose{top:23px}.plane .wing{left:34px;top:17px;width:50px}.plane .tail{left:18px;top:10px}.plane .engine{left:47px;top:38px}.plane .flame{top:26px}}

.connection-error{margin-top:8px;text-align:center;font-size:11px;color:#ff9f9f;min-height:14px;padding:0 12px;word-break:break-word}.plane{will-change:left,bottom,transform;transform-origin:center center;z-index:5}.trail{will-change:width,bottom}.crashed{animation:planeCrash .9s cubic-bezier(.18,.8,.25,1) forwards!important}@keyframes planeCrash{0%{opacity:1;filter:brightness(1);transform:translate3d(-50%,50%,0) rotate(18deg) scale(1)}25%{filter:brightness(1.8);transform:translate3d(-50%,50%,0) rotate(30deg) scale(1.03)}100%{opacity:.05;filter:brightness(2);transform:translate3d(-50%,80px,0) rotate(75deg) scale(.75)}}

/* Sky flight / recent crash / fairness refinements */
.horizon{bottom:24%}.plane{bottom:31%;width:152px;height:74px}.trail{bottom:33%;height:5px}.crash-list{display:grid;gap:7px}.crash-item{display:flex;align-items:center;justify-content:space-between;padding:9px 10px;border:1px solid #17314b;border-radius:10px;background:#091827}.crash-item>div{display:flex;gap:12px;align-items:center}.crash-item span{font-weight:900;color:var(--accent)}.goodText{color:#65edaa}.dangerText{color:#ff8799}@media(max-width:560px){.plane{width:120px;height:64px}.horizon{bottom:24%}.trail{bottom:34%}.crash-item{padding:8px}}
.lang-overlay{position:fixed;inset:0;background:rgba(1,7,14,.88);backdrop-filter:blur(14px);z-index:100;display:grid;place-items:center;padding:20px}.lang-modal{width:min(430px,100%);padding:28px;text-align:center}.lang-options{display:grid;gap:12px;margin-top:22px}.lang-choice{display:block;padding:16px;border:1px solid var(--line);border-radius:14px;background:#0b1a2b;font-size:18px;font-weight:800}.lang-choice:hover{border-color:var(--accent);transform:translateY(-1px)}.cashout-page{max-width:520px;margin:50px auto;padding:34px;text-align:center}.cashout-icon{width:78px;height:78px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#1bd78622;border:1px solid #35e38a66;color:var(--good);font-size:42px;font-weight:900}.cashout-success{color:var(--good);font-weight:800}.cashout-amount{font-size:48px;font-weight:950;margin:16px 0}.cashout-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:14px 0;text-align:left}.full{display:block;width:100%;margin-top:22px}.connection-error{position:absolute;top:96px;left:10px;right:10px;text-align:center;color:#ff9aab;font-size:13px;z-index:4}.addFunds{white-space:nowrap}.quick{display:flex;flex-wrap:wrap;gap:8px}.quick .btn{flex:1;min-width:72px}.flight{height:590px}.plane{bottom:47%}.trail{position:absolute;height:7px;background:linear-gradient(90deg,transparent,#24d9ff,#a7f5ff);border-radius:20px;box-shadow:0 0 18px #24d9ff77;z-index:4;pointer-events:none}.plane.crashed{animation:planeCrash 1.05s cubic-bezier(.2,.75,.3,1) forwards}@keyframes planeCrash{0%{filter:drop-shadow(0 12px 14px #0008)}35%{filter:drop-shadow(0 0 14px #ff704388)}100%{transform:translate3d(-50%,50%,0) rotate(78deg) translateY(80px);opacity:.08;filter:blur(1px)}}
@media(max-width:800px){.top{height:auto;min-height:64px;padding:10px 12px;gap:8px;align-items:center}.brand{font-size:20px}.nav{gap:6px;max-width:72%;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.pill,.btn{padding:9px 10px;font-size:13px;white-space:nowrap}.hideMob{display:none}.wrap{padding:10px}.gamegrid{grid-template-columns:1fr}.side{order:2}.flight{height:500px;border-radius:16px}.mult{font-size:clamp(54px,18vw,84px);top:34px}.status{top:128px;font-size:14px}.round-label{top:154px}.plane{width:125px;height:60px}.controls{padding:14px}.betrow{grid-template-columns:1fr 1fr;gap:10px}.quick .btn{min-width:58px;padding:9px 6px}.stats{grid-template-columns:1fr 1fr}.cashout-page{margin:20px auto;padding:24px}.cashout-amount{font-size:38px}}
@media(max-width:430px){.brand{font-size:17px}.nav .addFunds{font-size:11px}.flight{height:460px}.plane{width:112px}.betrow{grid-template-columns:1fr}.quick .btn{min-width:60px}.mult{letter-spacing:-3px}}

/* Mobile navigation: keep account actions reachable by horizontal scrolling. */
@media(max-width:800px){.nav{flex:1;max-width:none;overflow-x:auto;padding-bottom:2px}.nav .hideMob{display:inline-flex}.nav .btn,.nav .pill{flex:0 0 auto}.top{position:sticky;z-index:50}.lang-overlay{z-index:1000}.btn{touch-action:manipulation}}
@media(max-width:560px){.nav .btn{padding:9px 11px;font-size:12px}.nav{gap:5px}.brand{flex:0 0 auto}}

.lang-mini{font-size:12px;font-weight:800;text-decoration:none;padding:6px 7px;color:#b7c5d6}.lang-mini-row{display:flex;justify-content:flex-end;gap:8px;margin-bottom:8px}.next-round{font-size:12px;color:#d8e5f5;margin-top:6px}.crash-item{display:flex!important;align-items:center;justify-content:space-between;gap:8px}.crash-item small{color:#9fb0c4;font-size:11px}.nav{flex-wrap:wrap}
@media(max-width:560px){.top{gap:8px}.nav{width:100%;justify-content:flex-end}.nav .btn{padding:9px 10px;font-size:11px}.lang-mini{padding:6px 4px}}

/* Compact mobile dropdown navigation */
.menu-toggle{display:none;border:1px solid var(--line);background:#0b1a2b;color:var(--text);width:44px;height:44px;border-radius:12px;font-size:22px;cursor:pointer;flex:0 0 auto}
.nav-top{display:flex;align-items:center;gap:8px}
.nav-actions{display:flex;align-items:center;gap:8px}
@media(max-width:800px){
  .top{position:sticky;top:0;z-index:100;flex-wrap:wrap}
  .menu-toggle{display:block;margin-left:auto}
  .nav{display:none;width:100%;max-width:none;overflow:visible;background:#091827;border:1px solid var(--line);border-radius:14px;padding:10px;margin-top:4px;box-shadow:0 18px 40px #0008}
  .nav.open{display:block}
  .nav-top{justify-content:flex-end;flex-wrap:wrap;margin-bottom:9px}
  .nav-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .nav-actions .btn{width:100%;text-align:center;min-height:44px}
}
@media(max-width:380px){.nav-actions{grid-template-columns:1fr}.nav-top{justify-content:space-between}}

/* v10 mobile drawer: smooth 1X-style slide-in menu */
.nav-backdrop{display:none}
@media(max-width:800px){
  body.menu-open{overflow:hidden}
  .menu-toggle{position:relative;z-index:120}
  .nav-backdrop{display:block;position:fixed;inset:0;background:rgba(0,5,12,.58);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .22s ease,visibility .22s ease;z-index:105}
  .nav-backdrop.open{opacity:1;visibility:visible}
  .nav{position:fixed;top:0;right:0;bottom:0;width:min(330px,88vw);max-width:none;height:100vh;margin:0;border:0;border-left:1px solid #1b3b5a;border-radius:20px 0 0 20px;background:linear-gradient(180deg,#091827,#06111e);padding:88px 14px 20px;box-shadow:-20px 0 60px rgba(0,0,0,.45);transform:translate3d(105%,0,0);opacity:0;visibility:hidden;display:block!important;transition:transform .25s cubic-bezier(.22,.8,.25,1),opacity .18s ease,visibility .25s;z-index:110;overflow-y:auto}
  .nav.open{transform:translate3d(0,0,0);opacity:1;visibility:visible}
  .nav-top{justify-content:space-between;padding:0 4px 14px;border-bottom:1px solid #17314b;margin-bottom:14px}
  .nav-actions{display:grid;grid-template-columns:1fr;gap:9px}
  .nav-actions .btn{min-height:48px;font-size:15px}
  .top{position:relative;z-index:120}
}

/* v11 responsive + smooth flight overrides */
html,body{width:100%;max-width:100%;overflow-x:hidden}
.wrap{width:100%;max-width:1380px;margin-left:auto;margin-right:auto}
.gamegrid{grid-template-columns:minmax(0,1fr) 340px}
.gamegrid>section,.gamegrid>aside{min-width:0;width:100%}
.flight{width:100%;max-width:none}

@media(max-width:1100px){
  .gamegrid{grid-template-columns:minmax(0,1fr)}
  .side{width:100%}
  .top{width:100%}
}
@media(max-width:800px){
  .wrap{padding:10px;width:100%}
  .top{width:100%;padding:10px 12px}
  .gamegrid{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  .flight{height:500px;width:100%}
  .controls,.side{width:100%}
  .stats{width:100%}
  .nav{width:min(330px,88vw)!important;max-width:88vw!important}
}
@media(max-width:560px){
  .flight{height:480px;width:100%}
  .mult{font-size:clamp(52px,16vw,82px)}
  .status{padding:0 12px}
}
/* The aircraft has a large, continuous A-to-B visual path even for low crash values. */
.plane{bottom:46%!important}
.trail{bottom:47%!important}

/* v12: integrated Aviator flight + betting panel */
.flight{height:620px;position:relative;}
.flight-controls{position:absolute;left:12px;right:12px;bottom:12px;z-index:12;}
.controls-inner{background:rgba(5,16,29,.88);backdrop-filter:blur(14px);border:1px solid rgba(36,217,255,.20);border-radius:16px;padding:10px;box-shadow:0 14px 34px rgba(0,0,0,.32);}
.flight .mult{z-index:8}.flight .status,.flight .round-label,.flight .next-round{z-index:8}.flight .plane{z-index:7}.flight .trail{z-index:6}
.flight .input{min-height:42px}.flight-controls .betrow{grid-template-columns:1fr 1fr;gap:8px}.flight-controls .quick{margin:8px 0}.flight-controls .quick .btn{min-height:38px;padding:7px 10px}.flight-controls .btn{min-height:42px}
@media(max-width:1100px){.gamegrid{grid-template-columns:minmax(0,1fr)}.flight{height:600px}}
@media(max-width:700px){.flight{height:560px}.flight-controls{left:8px;right:8px;bottom:8px}.controls-inner{padding:8px;border-radius:14px}.flight-controls .betrow{grid-template-columns:1fr 1fr}.flight-controls .quick{gap:5px}.flight-controls .quick .btn{min-width:0;flex:1;font-size:12px}}
@media(max-width:480px){.flight{height:545px}.flight-controls .betrow:first-child{grid-template-columns:1fr 1fr}.flight-controls .quick .btn{padding:7px 4px;font-size:11px}.flight-controls .btn{min-height:40px}.plane{width:112px;height:62px!important}}
/* Strong upward trajectory: the aircraft traverses the sky, not the floor. */
.plane{bottom:30%!important}.trail{bottom:31%!important}

/* v13: keep the aircraft clearly above the betting controls */
.flight .plane{bottom:auto!important;}
.flight .trail{bottom:auto!important;}
/* JS supplies bottom percentages for the aircraft/trail. */
@media(max-width:700px){.flight .plane{width:118px!important;height:64px!important}.flight-controls{bottom:8px}.controls-inner{max-width:none}}

/* v15 exact 2-minute schedule / aircraft visibility */
.flight .plane{z-index:20;pointer-events:none;}
.flight .trail{z-index:18;}
.flight-controls{z-index:30;}

/* v20 FINAL: JS controls the aircraft trajectory. Keep it in the middle sky
   and never pin it to the top/bottom with generated CSS overrides. */
.flight .plane,
.flight .trail {
  bottom: auto !important;
}
.flight .plane {
  z-index: 20;
  pointer-events: none;
}
.flight .trail {
  z-index: 18;
}


/* v23 flight positioning: use TOP as the single vertical source of truth.
   This intentionally overrides every legacy bottom rule in older CSS blocks. */
.flight .plane {
  top: 56% !important;
  bottom: auto !important;
  left: 6% !important;
  transform: translate3d(-50%, -50%, 0) rotate(4deg) scale(.9) !important;
  transition: none !important;
}
.flight .trail {
  top: 57.5% !important;
  bottom: auto !important;
}

/* v28 safe aircraft positioning: vertical position is controlled exclusively by JS `top`. */
.flight .plane { bottom:auto!important; top:58%!important; }
.flight .trail { bottom:auto!important; top:59.5%!important; }

/* v33: in-app game notices; never use the browser's native alert dialog. */
.game-notice{position:fixed;inset:0;display:grid;place-items:center;padding:20px;z-index:1000;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility .2s ease;}
.game-notice.open{opacity:1;visibility:visible;pointer-events:auto;}
.game-notice-backdrop{position:absolute;inset:0;background:rgba(2,8,16,.72);backdrop-filter:blur(8px);}
.game-notice-card{position:relative;width:min(420px,100%);display:flex;gap:16px;padding:22px;border:1px solid rgba(37,217,255,.24);border-radius:20px;background:linear-gradient(180deg,#10253b,#081523);box-shadow:0 28px 80px rgba(0,0,0,.55);transform:translateY(12px) scale(.98);transition:transform .2s ease;}
.game-notice.open .game-notice-card{transform:translateY(0) scale(1);}
.game-notice-icon{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:rgba(255,83,112,.14);border:1px solid rgba(255,83,112,.4);color:#ff7890;font-size:22px;font-weight:900;}
.game-notice-content{min-width:0;flex:1;}
.game-notice-title{font-size:18px;font-weight:900;margin:1px 0 7px;}
.game-notice-message{color:#a9bdd0;line-height:1.5;font-size:14px;white-space:pre-wrap;}
.game-notice-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;}
.game-notice-actions .btn{min-height:42px;}
.game-notice-funds{display:none;}
.game-notice-funds.show{display:inline-flex;}
@media(max-width:480px){.game-notice{padding:14px;}.game-notice-card{padding:18px;border-radius:18px;gap:12px;}.game-notice-actions{display:grid;grid-template-columns:1fr 1fr;}.game-notice-actions .btn{width:100%;}}
