@font-face{
  font-family: 'AWDefault';
  src: url('../assets/fonts/default.woff2') format('woff2');
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

:root{
  --aw-font-stack: Arial, sans-serif;
  --aw-ls-on: 0;
}

:root{
  --aw-letter-tight: calc(-0.2vw * var(--aw-ls-on));
  --aw-space-compensation: calc(0.08vw * var(--aw-ls-on));
  --aw-btn-border-y: 1vh;
  --aw-btn-border-x: 1.15vw;
  --aw-modal-center-img: url('../assets/statics_icons/menu/middle_nc.webp');
  --aw-modal-side-img: url('../assets/statics_icons/menu/side_stick.webp');
  --aw-modal-top-left-img: url('../assets/statics_icons/menu/top_nc_5.webp');
  --aw-modal-top-fill-left-img: url('../assets/statics_icons/menu/top_nc_2.webp');
  --aw-modal-top-center-img: url('../assets/statics_icons/menu/top_nc_3.webp');
  --aw-modal-top-fill-right-img: url('../assets/statics_icons/menu/top_nc_4.webp');
  --aw-modal-top-right-img: url('../assets/statics_icons/menu/top_nc_5.webp');
  --aw-modal-bottom-left-img: url('../assets/statics_icons/menu/top_nc_5.webp');
  --aw-modal-bottom-fill-left-img: url('../assets/statics_icons/menu/top_nc_2.webp');
  --aw-modal-bottom-center-img: url('../assets/statics_icons/menu/top_nc_3.webp');
  --aw-modal-bottom-fill-right-img: url('../assets/statics_icons/menu/top_nc_4.webp');
  --aw-modal-bottom-right-img: url('../assets/statics_icons/menu/top_nc_5.webp');
  --aw-modal-pad-x: 5vw;
  --aw-modal-pad-top: 5.2vh;
  --aw-modal-pad-bottom: 5.6vh;
  --aw-catalog-pad-x: 7vw;
  --aw-catalog-pad-top: 6.2vh;
  --aw-catalog-pad-bottom: 13vh;
}

*{margin: 0;padding: 0;box-sizing: border-box}

button,input,select,textarea{font-family: inherit;letter-spacing: inherit;word-spacing: inherit}

html,body{letter-spacing: var(--aw-letter-tight);word-spacing: var(--aw-space-compensation)}
html,body{width: 100vw;height: 100vh;cursor: url('../assets/cursors/cursor_main.webp') 3 3, auto;background: #0a0a1a;overflow: hidden;font-family: var(--aw-font-stack);user-select: none;color: #fff}

html,body,canvas,.game-fab,.menu-btn,.save-slot,button{
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}
canvas{display: block;width: 100vw;height: 100vh;cursor: url('../assets/cursors/cursor_main.webp') 3 3, auto;touch-action: none}
#gameCanvas{display: none;width: 100vw;height: 100vh;position: fixed;inset: 0;z-index: 1;cursor: url('../assets/cursors/cursor_main.webp') 3 3, auto}

input,select,textarea{cursor: url('../assets/cursors/cursor_main.webp') 3 3, auto}

.screen{position: absolute;inset: 0;width: 100vw;height: 100vh;display: flex;flex-direction: column;justify-content: center;align-items: center;z-index: 10;transition: opacity 0.4s;overflow-y: auto;overflow-x: hidden;padding:1.25vw}
.screen.hidden{opacity: 0 !important;pointer-events: none !important;display: none !important}

#menuScreen{background: #0a0a1a;overflow: hidden}
#menuScreen h1, #titleText{color: #e94560;font-size: 4.6vw;white-space: nowrap;text-transform: uppercase;margin-bottom: 1vh;text-shadow: 0 0 3vw rgba(233,69,96,0.5),0 0 6vw rgba(233,69,96,0.2);animation: none;text-align: center;line-height: .95}
#titleText{font-size: 4.6vw}
@keyframes pulse{0%,100%{text-shadow: 0 0 3vw rgba(233,69,96,0.5),0 0 6vw rgba(233,69,96,0.2)}50%{text-shadow: 0 0 4.5vw rgba(233,69,96,0.7),0 0 9vw rgba(233,69,96,0.3)}}
#menuScreen .sub, .sub, .sub2{color: #6a7a9a;font-size: 1.8vw;text-transform: uppercase;margin-bottom: 5vh;text-align: center;opacity: .8}
.menu-total-stars{margin: 0 0 2.2vh;color: #ffd84a;font-size: 1.55vw;font-weight: 900;text-shadow: 0 0 .8vw rgba(255,216,74,.28)}
.level-total-stars{margin: -1vh 0 2vh;color: #ffd84a;font-size: 1.3vw;font-weight: 900;text-shadow: 0 0 .8vw rgba(255,216,74,.24)}
#raceScreen .sub2{font-size: 1.1vw;margin-bottom: 2vh}
.menu-btn{display: block;width: 30vw;padding: 2.4vh 0;margin: .9vh 0;font-size: 1.9vw;font-weight: bold;background: linear-gradient(135deg,#e94560,#c23152);color: white;border: none;border-radius: .55vw;cursor: pointer;text-transform: uppercase;transition: all 0.3s;box-shadow: 0 .45vh 1.6vw rgba(233,69,96,0.3)}
.menu-btn:hover{transform: translateY(-.25vh);box-shadow: 0 .7vh 2.4vw rgba(233,69,96,0.5);background: linear-gradient(135deg,#ff5a75,#e94560)}
.menu-btn.secondary{background: linear-gradient(135deg,#2a3a5a,#1a2a4a);box-shadow: 0 .45vh 1.2vw rgba(0,0,0,0.3)}
.menu-btn.secondary:hover{background: linear-gradient(135deg,#3a4a6a,#2a3a5a);box-shadow: 0 .7vh 1.6vw rgba(0,0,0,0.4)}
.screen-back-btn{position: fixed!important;top: 2vh!important;left: 2vw!important;z-index: 60!important;width: 12vw!important;margin: 0!important;padding: .8vh 1.2vw!important;font-size: 1.05vw!important;}

.game-fab{position: fixed;z-index: 25;display: none;align-items: center;justify-content: center;background: #08101c!important;background-image: none!important;border-style: solid!important;border-color: transparent!important;border-image: none!important;box-shadow: none!important;color: #fff;cursor: pointer}
.game-fab.visible{display: flex}
.game-fab-settings{left: calc(1vw + 6.6vh);top: 7.2vh;width: 5.8vh;height: 5.8vh;border: .14vw solid rgba(255,220,120,.55)!important;border-radius: 1.6vh;font-size: 2.8vh;line-height: 1}
.game-fab-menu{left: 1vw;top: 7.2vh;width: 5.8vh;height: 5.8vh;padding: 0;border: .14vw solid rgba(255,120,120,.6)!important;border-radius: 1.6vh;color: #ffb3b3;font-size: 2.8vh;line-height: 1;font-weight: bold}

#raceScreen{background: linear-gradient(160deg,#0a0a1a,#0f1a2e 40%,#0a1a2a 70%,#0a0a1a);overflow: hidden}
#raceScreen h2,#levelScreen h2{color: #ddd;font-size: 3.4vw;text-transform: uppercase;margin-bottom: 1vh}
.race-grid{display: flex;gap: 1.7vw;flex-wrap: wrap;justify-content: center;width: 86vw;padding: 0 2vw}

@supports(display: grid){
  .race-grid.saves-grid,.level-grid{width: 57.29vw}
}
.race-card{width: 22vw;height: auto;overflow: hidden;background: rgba(255,255,255,0.085);border: .16vw solid rgba(255,255,255,0.22);border-radius: 1vw;padding: 1.6vh 1.1vw 2vh;cursor: pointer;transition: all 0.3s;text-align: center}
.race-card:hover{transform: translateY(-.5vh);border-color: rgba(255,255,255,0.55);background: rgba(255,255,255,0.14)}
.race-card .race-icon{font-size: 3.6vw;margin-bottom: 1vh}
.race-card .race-name{font-size: 2vw;font-weight: bold;margin-bottom: .5vh;}
.race-card .race-desc{font-size: 1.05vw;color: #888;margin-bottom: 1vh;line-height: 1.25}
.race-card .race-units{text-align: left;font-size: .85vw;color: #aaa}
.race-card .race-units div{padding: .25vh 0;display: flex;justify-content: space-between;gap: .5vw}

button.mode-card{font-family:inherit;text-transform:none;border:.16vw solid rgba(255,255,255,0.22);outline:none}
button.mode-card .race-name{font-size:1.6vw}

#levelScreen{background: linear-gradient(160deg,#0a0a1a,#1a2a1a 40%,#0a1a0a 70%,#0a0a1a)}
#levelScreen h2{margin-bottom: 3vh}
.level-grid{display: flex;gap: 1.7vw;flex-wrap: wrap;justify-content: center}
.level-grid-container{overflow-y: auto;padding: 1vh 0;margin: 1vh 0}
.level-card{
  width: 36vw;height: 44vh;padding: 2.5vh 2vw;text-align: center;
  display: flex;flex-direction: column;justify-content: center;overflow: hidden;
  cursor: pointer;transition: all .3s;
  background: #252a31;border-style: solid;border-color: transparent;border-radius: 0;
  border-width: 2.2vh 2.6vw;
  border-image-source: url('../assets/statics_icons/menu/ui_level_button.webp');
  border-image-slice: 40 48 fill;border-image-width: 1;border-image-outset: 0;border-image-repeat: stretch;
}
.level-card:hover{transform: translateY(-.5vh);filter: brightness(1.12)}
.level-card.locked{opacity: .6;cursor:not-allowed}
.level-card.locked:hover{transform: none;filter: none}
.level-card .lvl-lock{font-size: 1.1vw;color: #ff8844;margin-top: .8vh;font-style: italic}
.level-card .lvl-continue{font-size: 1.35vw;color: #4aff4a;margin-top: .8vh;font-weight: bold;text-transform: uppercase}
.level-card .lvl-name{font-size: 2vw;font-weight: bold;color: #8f8;margin-bottom: .5vh}
.level-card .lvl-stars{font-size: 2.1vw;line-height: 1;color: #ffd84a;margin: .35vh 0 1vh;text-shadow: 0 0 .5vw rgba(255,190,40,.35)}
.level-card .lvl-desc{font-size: 1.6vw;color: #c2c7cf;margin-bottom: 1.4vh;line-height: 1.35}
.level-card .lvl-info{font-size: 1.3vw;color: #929aa6}

#savesScreen{background: linear-gradient(160deg,#0a0a1a,#1a1e2a 40%,#0a1a1a 70%,#0a0a1a)}
#savesScreen h2{color: #ddd;font-size: 3.4vw;text-transform: uppercase;margin-bottom: 3vh}

.saves-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 2.4vh 1.5vw;width: 64.58vw}
.save-slot{
  width: 100%;height: auto;position: relative;padding:1.11vh .83vw;
  display: flex;flex-direction: column;justify-content: center;align-items: center;
  cursor: pointer;transition: all .3s;
  background: #252a31;border-style: solid;border-color: transparent;border-radius: 0;
  border-width: 1.4vh 1.4vw;
  border-image-source: url('../assets/statics_icons/menu/ui_level_button.webp');
  border-image-slice: 40 48 fill;border-image-width: 1;border-image-outset: 0;border-image-repeat: stretch;
}
.save-slot:hover:not(.disabled){filter: brightness(1.12)}
.save-slot.disabled{opacity: 0.45;cursor:not-allowed;pointer-events: none}

.save-slot.disabled .delete-btn{pointer-events: auto}
.save-slot .slot-title{font-size: 1.8vw;font-weight: bold;color: #fff}
.save-slot .slot-info{font-size: 1.2vw;color: #aaa;margin-top: 0.5vh}
.save-slot .delete-btn{position: absolute;top: 1vh;right: 1vw;background: rgba(255,0,0,0.3);color: white;border: none;border-radius: 0.5vw;padding: 0.5vh 1vw;cursor: pointer;font-size: 1vw;z-index: 2;transition: .2s}
.save-slot .delete-btn:hover{background: rgba(255,0,0,0.8)}

#modeScreen{background: linear-gradient(160deg,#0a0a1a,#1a1e2a 40%,#0a1a0a 70%,#0a0a1a)}
#modeScreen h2{color: #ddd;font-size: 3.4vw;text-transform: uppercase;margin-bottom: 3vh}
.mode-grid{display: flex;gap: 2vw;flex-wrap: wrap;justify-content: center;width: 80vw}
.mode-btn{width: 32vw;padding: 3vh 2vw;font-size: 1.6vw;font-weight: bold;background: linear-gradient(135deg,#e94560,#c23152);color: white;border: none;border-radius: 1vw;cursor: pointer;text-transform: uppercase;transition: all 0.3s;box-shadow: 0 .5vh 1.6vw rgba(233,69,96,0.3)}
.mode-btn:hover{transform: translateY(-.25vh);box-shadow: 0 .8vh 2.4vw rgba(233,69,96,0.5);background: linear-gradient(135deg,#ff5a75,#e94560)}
.mode-btn.secondary{background: linear-gradient(135deg,#2a3a5a,#1a2a4a);box-shadow: 0 .45vh 1.2vw rgba(0,0,0,0.3)}
.mode-btn.secondary:hover{background: linear-gradient(135deg,#3a4a6a,#2a3a5a);box-shadow: 0 .7vh 1.6vw rgba(0,0,0,0.4)}

#settingsScreen{background: transparent;z-index: 30}
.settings-panel{width: 42vw;overflow-x: hidden;overflow-y: auto;overscroll-behavior: contain;scrollbar-gutter: stable;background: linear-gradient(160deg,#10182a,#0e1a2e 40%,#0a1220 70%,#080e1a);border: .16vw solid rgba(233,69,96,0.35);border-radius: 1.2vw;padding: 4vh 3vw;position: relative}
.settings-panel h2{color: #e94560;font-size: 2.6vw;text-transform: uppercase;margin-bottom: 3vh;text-align: center}
.settings-row{display: flex;justify-content: space-between;align-items: center;padding: 1.8vh 0;border-bottom: 0.05vw solid rgba(255,255,255,0.06)}
.settings-row:last-child{border-bottom: none}
.settings-label{color: #b0b8cc;font-size: 1.3vw;display: flex;align-items: center;gap: .8vw}
.settings-label .s-icon{font-size: 1.8vw;width: 2.4vw;text-align: center}
.settings-control{display: flex;align-items: center;gap: .6vw}
.settings-lang-select{width: 15vw;height: 4.6vh;padding: 0 2.2vw 0 1vw;border: .12vw solid rgba(255,220,120,.55);border-radius: .5vw;background: #111b2c;color: #fff;font-size: 1.1vw;font-weight: 700;outline: none;cursor: pointer}
.settings-lang-select:focus{border-color: #ffdd66;box-shadow: 0 0 1vw rgba(255,210,90,.3)}
.settings-toggle{display: flex;border: .12vw solid rgba(255,255,255,.18);border-radius: .5vw;overflow: hidden}
.settings-toggle button{padding: .7vh 1.4vw;font-size: 1vw;font-weight: 700;background: rgba(255,255,255,.06);color: #8a92a6;border: none;cursor: pointer;transition: all 0.2s}
.settings-toggle button.active{background: #e94560;color: #fff;box-shadow: 0 0 1vw rgba(233,69,96,.3)}
.settings-toggle button:hover:not(.active){background: rgba(255,255,255,.12)}
.settings-slider-wrap{display: flex;align-items: center;gap: .8vw}
.settings-slider{-webkit-appearance: none;appearance: none;width: 12vw;height: .5vh;background: rgba(255,255,255,.12);border-radius: 0.16vw;outline: none;cursor: pointer}
.settings-slider::-webkit-slider-thumb{-webkit-appearance: none;appearance: none;width: 1.2vw;height: 1.2vw;border-radius: 50%;background: #e94560;box-shadow: 0 0 .6vw rgba(233,69,96,.4);cursor: pointer}
.settings-slider::-moz-range-thumb{width: 1.2vw;height: 1.2vw;border-radius: 50%;background: #e94560;box-shadow: 0 0 .6vw rgba(233,69,96,.4);cursor: pointer;border: none}
.settings-val{color: #e94560;font-size: 1.1vw;font-weight: bold;text-align: right}

.settings-support-row{align-items:center}
.settings-support-label{flex:1 1 auto;line-height:1.2}
.settings-support-label-text{overflow-wrap:anywhere}
.settings-support-control{flex:0 0 auto;justify-content:flex-end}
.settings-support-email{display:inline-block;color:#e94560;font-size:1.05vw;font-weight:800;line-height:1.25;white-space:nowrap;user-select:text;-webkit-user-select:text}

.settings-toggle .settings-copy-button{transition:background-color .28s ease,color .28s ease!important}
.settings-toggle .settings-copy-button.copy-success,
.settings-toggle .settings-copy-button.copy-success:hover{background:#2fa866!important;color:#fff!important}
.settings-toggle .settings-copy-button.copy-error,
.settings-toggle .settings-copy-button.copy-error:hover{background:#b6424d!important;color:#fff!important}
.settings-support-copy-status{position:absolute;width:0.1vw;height:0.1vw;padding:0;margin:-0.1vw;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.settings-guide{width: 100%;margin-top: 2vh;padding-top: 1.5vh;border-top: .12vw solid rgba(255,220,120,.24)}
.settings-guide-heading{display: flex;align-items: center;gap: .65vw;margin-bottom: 1vh}
.settings-guide-heading-icon{font-size: 1.45vw;line-height: 1}
.settings-guide-heading h3{flex: 1;margin: 0;color: #ffdd88;font-size: 1.5vw;text-transform: uppercase}
.settings-guide-device{padding: .35vh .65vw;border: .08vw solid rgba(120,220,255,.45);border-radius: .4vw;background: rgba(70,150,190,.13);color: #9ee5ff;font-size: .9vw;font-weight: 800;text-transform: uppercase;}
.settings-guide-list{display: flex;flex-direction: column;gap: .45vh}
.settings-guide-row{display: grid;grid-template-columns: .92fr 1.18fr;align-items: center;gap: .7vw;padding: .55vh .7vw;border: .06vw solid rgba(255,255,255,.08);border-radius: .45vw;background: rgba(255,255,255,.035)}
.settings-guide-action{display: flex;align-items: center;gap: .45vw;color: #eef2fa;font-size: 1.05vw;font-weight: 800;line-height: 1.15}
.settings-guide-icon{width: 1.6vw;text-align: center;font-size: 1.2vw}
.settings-guide-binding{color: #aebbd0;font-size: .95vw;line-height: 1.22;text-align: right}
.settings-guide-readonly{margin-top: 1vh;color: #778399;font-size: .85vw;line-height: 1.25;text-align: center;font-style: italic}
.settings-close-btn{display: block;width: 14vw;margin: 3.5vh auto 0;padding: 1.8vh 0;font-size: 1.5vw;font-weight: bold;background: linear-gradient(135deg,#2a3a5a,#1a2a4a);color: #cfd6e6;border: none;border-radius: .55vw;cursor: pointer;text-transform: uppercase;transition: all 0.3s;box-shadow: 0 .35vh 1vw rgba(0,0,0,0.3)}
.settings-close-btn:hover{background: linear-gradient(135deg,#3a4a6a,#2a3a5a);box-shadow: 0 .5vh 1.4vw rgba(0,0,0,0.4);color: #fff}
.settings-x-close{position: absolute!important;right: var(--aw-pad-x,1.1vw)!important;top: var(--aw-pad-t,1.2vh)!important;z-index: 6!important;width: 2.6vw!important;height: 2.6vw!important;padding: 0!important;border: .1vw solid rgba(255,90,90,.65)!important;border-image: none!important;border-radius: 50%!important;background: rgba(100,15,25,.72)!important;background-image: none!important;font-size: 1.75vw!important;line-height: 1!important;box-shadow: none!important;cursor: pointer!important}
.settings-x-close:hover{background: rgba(145,24,34,.9)!important;color: #fff!important;filter: none!important}
.settings-store{width: 100%;margin-top: 2vh;padding-top: 1.6vh;border-top: .12vw solid rgba(255,220,120,.24)}
.settings-store.hidden{display: none!important}
.settings-store h3{text-align: center;color: #ffdd88;font-size: 1.55vw;margin-bottom: 1.3vh}
.settings-products{display: grid;grid-template-columns: 1fr;gap: 1vw}
.settings-product{width: 100%;padding: 1vh .8vw;border: .1vw solid rgba(255,220,120,.35);border-radius: .7vw;background: rgba(255,255,255,.05);display: grid;grid-template-columns: 4.5vw 1fr;grid-template-rows: auto 1fr auto;column-gap: .8vw;align-items: center}
.settings-product-image{grid-row: 1/4;width: 4.5vw;height: 4.5vw;object-fit: contain;border-radius: .45vw;background: rgba(0,0,0,.25)}
.settings-product-title{font-size: 1.12vw;font-weight: 900;color: #fff;line-height: 1.15}
.settings-product-desc{font-size: .88vw;line-height: 1.25;color: #aeb8ca;align-self: start;margin-top: .4vh}

.settings-product-buy{justify-self: stretch;padding: .55vh .8vw!important;font-size: 1vw!important;font-weight: 900;color: #fff;display: flex;align-items: center;justify-content: center;gap: .45vw}

.settings-product-buy span{color: #fff;font-weight: 900;text-shadow: 0 .15vh .3vh rgba(0,0,0,.55)}
.settings-product-buy img{width: 1.35vw;height: 1.35vw;object-fit: contain}
.settings-product-buy.owned{background: rgba(50,120,75,.75)!important;color: #baffd0!important;pointer-events: none}
.settings-product-status{font-size: .8vw;color: #ffcc66;text-align: center;margin-top: .4vh;grid-column: 2}
.screen-purchase{margin-top: 1.5vh;display: flex;justify-content: center;width: 100%}
.screen-purchase.hidden{display: none!important}
.screen-purchase-btn{width: 46vw;padding: 1.2vh 2.4vw!important;display: grid;grid-template-columns: 4.8vw 1fr auto;align-items: center;gap: 1vw;color: #fff!important}
.screen-purchase-btn.owned{filter: grayscale(.35)!important;pointer-events: none;color: #baffd0!important}
.screen-purchase-image{width: 4.8vw;height: 4.8vw;object-fit: contain;border-radius: .5vw}
.screen-purchase-main{text-align: left}
.screen-purchase-title{display: block;font-size: 1.5vw;font-weight: 900;line-height: 1.15;white-space: nowrap;overflow: hidden;text-overflow: ellipsis}
.screen-purchase-desc{display: block;font-size: 1vw;color: #d0c6b4;line-height: 1.25;white-space: normal;overflow: visible;margin-top: .35vh}
.screen-purchase-price{display: flex;align-items: center;justify-content: flex-end;gap: .45vw;font-size: 1.4vw;font-weight: 900;white-space: nowrap}
.screen-purchase-price img{width: 1.8vw;height: 1.8vw;object-fit: contain}

.other-games-corner{z-index: 20}
.other-games-corner.hidden{display: none!important}
.sdk-modal{position: fixed;inset: 0;z-index: 200;display: flex;align-items: center;justify-content: center;padding: 2vh 2vw;background: rgba(0,0,0,.78)}
.sdk-modal.hidden{display: none!important}
.sdk-modal-panel{position: relative;width: 88vw;overflow-y: auto;padding: 3vh 3vw;border: .14vw solid rgba(255,220,120,.35);border-radius: 1vw;background: linear-gradient(160deg,#0c111d,#10192a 55%,#090d17);box-shadow: 0 1vh 4vw rgba(0,0,0,.65)}
.sdk-modal-panel h2{color: #ffdd66;font-size: 2vw;margin-bottom: 2vh;padding-bottom: 1.5vh;border-bottom: .1vw solid rgba(255,255,255,.16)}
.sdk-modal-close{position: absolute;right: 1.2vw;top: 1.2vh;width: 2.8vw;height: 2.8vw;padding: 0!important;border-radius: 50%!important;background: rgba(120,20,28,.75)!important;color: #ff7777!important;font-size: 1.8vw!important;line-height: 1}
.other-games-grid{display: grid;grid-template-columns: repeat(3,1fr);gap: 1.3vw}
.other-game-card{padding: 1.1vh .9vw;border: .1vw solid rgba(255,220,120,.28);border-radius: .65vw;background: rgba(255,255,255,.045);display: flex;flex-direction: column;gap: .8vh}
.other-game-cover{width: 100%;aspect-ratio: 16/9;object-fit: cover;border-radius: .45vw;background: #080b12}
.other-game-title{font-size: 1.08vw;font-weight: 900;color: #fff;text-align: center;}
.other-game-play{width: 100%;padding: .7vh 1vw!important;font-size: 1.02vw!important;color: #fff!important}
.sdk-offer-panel{width: 44vw;text-align: center}
.sdk-offer-content{display: grid;grid-template-columns: 8vw 1fr;gap: 1.2vw;text-align: left;align-items: center}
.sdk-offer-image{width: 8vw;height: 8vw;object-fit: contain;border-radius: .65vw;background: rgba(0,0,0,.25)}
.sdk-offer-title{font-size: 1.5vw;font-weight: 900;color: #fff;margin-bottom: .7vh}
.sdk-offer-desc{font-size: 1vw;color: #bbc5d8;line-height: 1.35}

.sdk-offer-buy{grid-column: 1/3;width: 100%;padding: 1vh 2vw!important;font-size: 1.2vw!important;font-weight: 900;color: #fff!important;display: flex;align-items: center;justify-content: center;gap: .7vw}

.sdk-offer-buy span{color: #fff;font-weight: 900;text-shadow: 0 .15vh .3vh rgba(0,0,0,.55)}
.sdk-offer-buy img{width: 1.7vw;height: 1.7vw;object-fit: contain}

#loadingScreen{position: fixed;inset: 0;z-index: 9999;display: flex;flex-direction: column;justify-content: center;align-items: center;background: radial-gradient(ellipse at center,#1e2a2a 0%,#0a0a1a 100%);transition: opacity 0.6s}
.loader-spinner{width: 5vw;height: 5vw;border: .4vw solid rgba(255,255,255,.12);border-top-color: #e94560;border-radius: 50%;animation: spin 0.9s linear infinite}
.loader-text{color: rgba(255,255,255,.7);font-size: 1.6vw;margin-top: 2.5vh;text-transform: uppercase}
@keyframes spin{to{transform: rotate(360deg)}}

.user-levels-open{margin: 0 0 2vh;padding: .8vh 1.5vw!important;color: #d9efff!important;font-size: 1.15vw;font-weight: 900}

#userLevelsScreen{background: linear-gradient(160deg,#0a0a1a,#141a2e 40%,#0d1424 70%,#0a0a1a)}
#userLevelsScreen h2{color: #ddd;font-size: 3.4vw;text-transform: uppercase;margin-bottom: 2.5vh;text-align: center}
.user-levels-panel{width: 64.58vw;overflow-y: auto;padding: 2.2vh 1.6vw}
.user-levels-status{text-align: center;color: #8fa1b8;font-size: 1.2vw;margin-bottom: 1.4vh}
.user-levels-list{display: grid;grid-template-columns: repeat(2,1fr);gap: 2.2vh 1.4vw}
.user-levels-catalog-btn-wrap{display: flex;justify-content: center;margin-top: 1.5vh}
.user-levels-catalog-btn-wrap .menu-btn{margin: 0 auto}

.user-level-card{padding: 2.2vh 1.4vw;border-style: solid;border-color: transparent;border-radius: 0;background: #252a31;display: flex;flex-direction: column;
  border-width: 1.9vh 1.7vw;
  border-image-source: url('../assets/statics_icons/menu/ui_level_button.webp');border-image-slice: 40 48 fill;border-image-width: 1;border-image-outset: 0;border-image-repeat: stretch}
.user-level-card.invalid{border-color: rgba(255,100,100,.55);background: rgba(120,20,28,.12)}
.user-level-card h3{color: #9ee5ff;font-size: 2vw;margin-bottom: 1.1vh;overflow-wrap: anywhere;flex-shrink: 0}
.user-level-info{color: #aab5c7;font-size: 1.15vw;margin-bottom: 1.2vh;flex-shrink: 0}
.user-level-warning{margin-bottom: 1vh;color: #ff9a9a;font-size: .88vw;font-weight: 800;line-height: 1.25;flex-shrink: 0}
.user-level-actions{display: flex;gap: .6vw;align-items: stretch;margin-top: auto}
.user-level-play{flex: 1 1 auto;padding: .8vh 1vw!important;font-size: 1.15vw!important;color: #fff}
.user-level-play.invalid{background: rgba(100,35,40,.75)!important;color: #ffb5b5!important}
.user-level-delete{flex: 0 0 auto;padding: .8vh 1vw!important;border: 0!important;border-image: none!important;background: rgba(125,20,30,.78)!important;color: #ffc1c1!important;font-size: 1.05vw!important}

.user-level-actions{flex-wrap: wrap}
.user-level-play,.user-level-delete{overflow-wrap: anywhere}
.user-level-catalog-delete{flex: 1 1 100%;margin-top: .6vh;white-space: normal;line-height: 1.15}
.user-levels-catalog-btn{width: auto;padding: 1.6vh 2.4vw;font-size: 1.4vw}

.user-levels-catalog-btn:hover{background: linear-gradient(135deg,#2a3a5a,#1a2a4a)!important;transform: none!important}
.editor-catalog-btn{padding: 1.2vh 2vw;font-size: 1.3vw!important}
.editor-catalog-btn:hover{transform: none!important}
.user-levels-empty{grid-column: 1/-1;padding: 4vh 2vw;text-align: center;color: #8996aa;font-size: 1.3vw}

body.editor-page #setup h1#title{color: #ddd;font-size: 3.2vw;text-transform: uppercase;margin-bottom: 2.5vh;text-align: center}
#editorUI{position: absolute;left: 0;right: 0;bottom: 0;width: 100vw;height: 28vh;background: rgba(8,16,28,.96);border-top: .18vw solid rgba(255,220,120,.32);z-index: 15;display: flex;flex-direction: column;box-shadow: 0 -1vh 3vw rgba(0,0,0,.45)}
#editorUI.hidden{display: none !important}
.editorTop{height: 6.8vh;display: flex;align-items: center;gap: .55vw;padding: .45vh .65vw;border-bottom: .12vw solid rgba(255,255,255,.12)}
.editorTitle{font-size: 1.65vw;font-weight: 900;color: #fff;white-space: nowrap}
.editorHint{font-size: 1.15vw;font-weight: 800;color: rgba(255,255,255,.78);white-space: nowrap;overflow: hidden;text-overflow: ellipsis;flex: 1}
.uiBtn{padding: .65vh .85vw;border: .10vw solid rgba(255,255,255,.35);border-radius: .45vw;color: #fff;font-size: 1.18vw;font-weight: 900;cursor: pointer;text-transform: uppercase}
.uiBtn.save{background: linear-gradient(135deg,#19b66a,#0d7f49)}
.uiBtn.playtest{background: linear-gradient(135deg,#f0a020,#b45a06)}
.uiBtn.menu{background: linear-gradient(135deg,#4c5f8f,#1b2744)}
.objectScroller{height: 21.2vh;overflow-x: auto;overflow-y: hidden;display: flex;gap: .42vw;align-items: stretch;padding: .55vh .65vw .75vh .65vw;scrollbar-color: #44ffaa rgba(255,255,255,.1);scrollbar-width: thin}
.objectCard{flex: 0 0 9.2vw;height: 15vh;border: .10vw solid rgba(255,230,170,.55);border-radius: .48vw;background: rgba(255,255,255,.105);display: flex;flex-direction: column;align-items: center;justify-content: space-between;padding: .55vh .32vw;cursor: pointer;color: #fff;text-align: center;transition: .2s}
.objectCard:hover{background: rgba(255,255,255,.18);filter: brightness(1.12)}
.objectCard.selected{border-color: #44ffaa;background: rgba(68,255,170,.24);box-shadow: 0 0 1.2vw rgba(68,255,170,.28)}
.objectIcon{height: 6vh;display: flex;align-items: center;justify-content: center;font-size: 2.65vw;font-weight: 900}
.objectName{font-size: 1.2vw;font-weight: 900;line-height: 1.05;margin-top: 0.3vh;text-align: center;overflow-wrap: anywhere;word-break: normal;hyphens: none;-webkit-hyphens: none;-ms-hyphens: none;white-space: normal;box-sizing: border-box;padding: 0 .15vw;overflow: hidden}
.objectMeta{font-size: 1.02vw;opacity: .9;font-weight: 900;margin-top: 0.2vh;overflow-wrap: anywhere;word-break: normal;hyphens: none;-webkit-hyphens: none;-ms-hyphens: none;white-space: normal;text-align: center;box-sizing: border-box;padding: 0 .15vw}

#toolWindow-city .objectCard{height:12.5vh;padding:.45vh .32vw;}
#toolWindow-city .objectIcon{height:5.2vh;}
.form{width: 72vw;background: rgba(255,255,255,.09);border: .16vw solid rgba(255,255,255,.24);border-radius: 1vw;padding: 2.6vh 2.2vw;box-shadow: 0 1vh 4vw rgba(0,0,0,.45)}
.row{display: flex;align-items: center;justify-content: space-between;gap: 1.2vw;margin: 1.3vh 0;color: #dbe7ff;font-size: 2.2vw;font-weight: 800;}
.row input,.row select{width: 30vw;padding: 1.2vh 1vw;border: .12vw solid rgba(255,255,255,.26);border-radius: .55vw;background: rgba(0,0,0,.42);color: #fff;font-size: 2.3vw;outline: none}
.row input:focus,.row select:focus{border-color: #44ffaa;box-shadow: 0 0 1.2vw rgba(68,255,170,.25)}
.actions{display: flex;gap: 1vw;justify-content: center;margin-top: 2.6vh}
.btn{width: 17vw;padding: 1.35vh 0;border: none;border-radius: .55vw;background: linear-gradient(135deg,#19b66a,#0d7f49);color: #fff;font-size: 2.4vw;font-weight: 900;text-transform: uppercase;cursor: pointer;box-shadow: 0 .5vh 1.6vw rgba(0,0,0,.35)}
.btn:hover{filter: brightness(1.18);transform: translateY(-.18vh)}
.btn.secondary{background: linear-gradient(135deg,#2a3a5a,#1a2a4a)}
.popup{position: absolute;left: 50vw;top: 50vh;transform: translate(-50%,-50%);z-index: 30;width: 34vw;padding: 2vh 2vw;border: .16vw solid rgba(255,255,255,.3);border-radius: 1vw;background: rgba(8,16,28,.96);box-shadow: 0 1vh 5vw rgba(0,0,0,.6);display: none;text-align: center}
.popup h3{font-size: 2.4vw;margin-bottom: 1.6vh;text-transform: uppercase}
.pick{display: grid;grid-template-columns: repeat(2,1fr);gap: 1vh 1vw}
.pick button{padding: 1.2vh 1vw;border: .12vw solid rgba(255,255,255,.26);border-radius: .6vw;background: rgba(255,255,255,.08);color: #fff;font-size: 1.95vw;font-weight: 900;cursor: pointer}
.pick button:hover{background: rgba(255,255,255,.16);border-color: #44ffaa}
.help{position: absolute;left: 2vw;bottom: 2vh;color: rgba(255,255,255,.5);font-size: 1.45vw;line-height: 1.45}
.name-error{display: none;color: #ff6b6b;font-size: 1.2vw;font-weight: 600;margin-top: -0.6vh;margin-bottom: 0.4vh;text-align: right;padding-right: 21vw;opacity: 0;animation: nameErrorFade 0.25s ease forwards}
.name-error.visible{display: block}

.star-conditions-section{margin-top: 2vh;padding-top: 1.5vh;border-top: .05vw solid #4a4a6a}
.star-conditions-section h3{margin: 0 0 1.2vh 0;font-size: 1.4vw;color: #ffd700;line-height: 1.25}
.star-conditions-grid{
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: .9vh 1.1vw;
  align-items: stretch;
}
.star-condition-item{
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  column-gap: .7vw;
  
  margin: 0;
  padding: .9vh .9vw;
  border: .06vw solid rgba(255,255,255,.1);
  border-radius: .6vw;
  background: rgba(255,255,255,.035);
  color: #fff;
  font-size: 1.1vw;
  line-height: 1.3;
  cursor: pointer;
  transition: background .18s, border-color .18s;
}
.star-condition-item:hover{background: rgba(255,255,255,.08);border-color: rgba(255,215,0,.35)}
.star-condition-item input[type="checkbox"]{
  width: 1.3vw;
  height: 1.3vw;
  margin: 0;
  margin-top: .25vh;
  flex: 0 0 auto;
  cursor: pointer;
  accent-color: #ffd700;
}

.star-condition-item > span{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .6vh .5vw;
  
}

.star-condition-item.sc-number > span > span:first-child{flex: 0 0 100%}

.star-condition-item.sc-select > span > span{order: 1}
.star-condition-item.sc-select > span > .star-condition-select{order: 2;flex: 0 0 100%;width: 100%}
.star-condition-value{
  width: 6.8vw;
  padding: .5vh .6vw;
  font-size: 1.05vw;
  background: #2a2a3e;
  border: .06vw solid #4a4a6a;
  border-radius: .35vw;
  color: #fff;
}
.star-condition-select{
  
  
  padding: .5vh .6vw;
  font-size: 1.05vw;
  background: #2a2a3e;
  border: .06vw solid #4a4a6a;
  border-radius: .35vw;
  color: #fff;
  text-overflow: ellipsis;
}
#starConditionsError{margin-top: 1vh;color: #ef4444;font-size: 1.1vw;font-weight: bold}

.level-intro-overlay{position: fixed;top: 0;left: 0;width: 100%;height: 100%;background: rgba(0,0,0,0.95);display: none;align-items: center;justify-content: center;z-index: 10001;animation: levelIntroFadeIn 0.5s ease-out}
.level-intro-overlay.visible{display: flex}
@keyframes levelIntroFadeIn{from{opacity: 0}to{opacity: 1}}
@keyframes levelIntroSlideUp{from{opacity: 0;transform: translateY(1.56vw)}to{opacity: 1;transform: translateY(0)}}
@keyframes levelIntroPulse{0%,100%{transform: scale(1)}50%{transform: scale(1.05)}}
.level-intro-content{background: linear-gradient(135deg,#1a1a2e 0%,#16213e 100%);border: 0.16vw solid #ffd700;border-radius: 2vw;padding: 3vw;width: 90%;overflow-y: auto;animation: levelIntroSlideUp 0.6s ease-out;box-shadow: 0 0 2.08vw rgba(255,215,0,0.3)}

.level-intro-close{position: absolute!important;right: calc(var(--aw-pad-x,1.1vw) + 0.9vw) !important;top: calc(var(--aw-pad-t,1.2vh) + 0.9vh) !important;width: 2.6vw;height: 2.6vw;padding: 0!important;border: .1vw solid rgba(255,90,90,.65) !important;border-image: none!important;background-image: none!important;border-radius: 50%!important;background: #a52c39 !important;color: #fff!important;font-size: 1.6vw!important;line-height: 1}
.level-intro-title{margin: 0 0 1.6vw 0;font-size: 1.85vw;color: #ffd700;text-align: center;text-shadow: 0 0 0.7vw rgba(255,215,0,0.5);animation: levelIntroPulse 2s ease-in-out infinite;letter-spacing: calc(0.01vw * var(--aw-ls-on)); line-height:1.15; padding:0 3.5vw; box-sizing:border-box; }
.level-intro-sections{display: flex;flex-direction: column;gap: 2vw;margin-bottom: 2vw}
.level-intro-section{background: rgba(255,255,255,0.05);border: 0.05vw solid rgba(255,215,0,0.3);border-radius: 1vw;padding: 1.5vw}
.level-intro-subtitle{margin: 0 0 1vw 0;font-size: 1.5vw;color: #4ade80;text-transform: uppercase;}
.level-intro-stars{display: flex;flex-direction: column;gap: 0.8vw}
.level-intro-star-item{display: flex;align-items: center;gap: 0.8vw;padding: 0.8vw;background: rgba(255,215,0,0.1);border-radius: 0.5vw;font-size: 1.2vw;color: #fff}
.level-intro-star-item::before{content: '⭐';font-size: 1.5vw}
.level-intro-players{display: flex;flex-direction: column;gap: 0.8vw}
.level-intro-player-item{display: flex;align-items: center;gap: 1vw;padding: 1vw;background: rgba(255,255,255,0.05);border-radius: 0.5vw}
.level-intro-player-color{width: 3vw;height: 3vw;border-radius: 50%;border: 0.16vw solid #fff;box-shadow: 0 0 0.78vw currentColor}
.level-intro-player-info{flex: 1;display: flex;flex-direction: column;gap: 0.3vw}
.level-intro-player-name{font-size: 1.3vw;font-weight: bold;color: #fff}
.level-intro-player-details{font-size: 1vw;color: #aaa}
.level-intro-btn{display: block;margin: 0 auto;padding: 1.2vw 3vw;font-size: 1.5vw;font-weight: bold;background: linear-gradient(135deg,#4ade80 0%,#22c55e 100%);color: #fff !important;text-shadow: 0 .08vw .12vw rgba(0,0,0,.72);border: none;border-radius: 1vw;cursor: pointer;transition: all 0.3s;box-shadow: 0 0.21vw 0.78vw rgba(74,222,128,0.4)}
.level-intro-btn:hover{transform: translateY(-.28vh);box-shadow: 0 0.31vw 1.04vw rgba(74,222,128,0.6)}
.level-intro-btn:active{transform: translateY(0)}

.name-error-settings{text-align: right;padding-right: 0;font-size: 0.9vw;margin-top: 0.2vh;margin-bottom: 0}
@keyframes nameErrorFade{from{opacity: 0;transform: translateY(-.37vh)}to{opacity: 1;transform: translateY(0)}}
.editor-settings-gear{position: fixed;right: 1.2vw;top: 1.5vh;z-index: 70;width: 3.2vw;height: 3.2vw;padding: 0!important;border: .1vw solid rgba(255,220,120,.55)!important;border-image: none!important;border-radius: .7vw!important;background: rgba(8,16,28,.92)!important;color: #fff!important;font-size: 1.8vw!important;line-height: 1!important}
.editor-settings-modal,.level-settings-modal{position: fixed;inset: 0;z-index: 90;display: none;align-items: center;justify-content: center;padding: 2vh 2vw;background: rgba(0,0,0,.72)}
.editor-settings-modal.visible,.level-settings-modal.visible{display: flex}
.editor-settings-panel,.level-settings-panel{position: relative;width: 38vw;overflow-y: auto;padding: 3vh 2.5vw;border: .14vw solid rgba(255,220,120,.42);border-radius: 1vw;background: linear-gradient(160deg,#10182a,#0a1220);box-shadow: 0 1vh 4vw rgba(0,0,0,.65)}
.editor-settings-panel h2,.level-settings-panel h2{text-align: center;color: #ffdd88;font-size: 2vw;margin-bottom: 2vh;text-transform: uppercase}
.editor-settings-close,.level-settings-close{position: absolute;right: 1vw;top: 1vh;width: 2.6vw;height: 2.6vw;padding: 0!important;border: 0!important;border-image: none!important;border-radius: 50%!important;background: rgba(120,20,30,.78)!important;color: #fff!important;font-size: 1.6vw!important}
.editor-settings-row,.level-settings-row{display: flex;align-items: center;justify-content: space-between;gap: 1vw;padding: 1vh .5vw;border-bottom: .06vw solid rgba(255,255,255,.09);color: #dbe7ff;font-size: 1.15vw;font-weight: 800}
.editor-settings-row select,.level-settings-row select,.level-settings-row input[type=number],.level-settings-row input[type=text]{width: 17vw;padding: .8vh .8vw;border: .08vw solid rgba(255,255,255,.24);border-radius: .45vw;background: #101b2d;color: #fff;font-size: 1.3vw}
.biome-bonus-row{justify-content: flex-start}.biome-bonus-row>span{flex: 1}.level-toggle{position: relative;width: 3.5vw;height: 1.8vw;}.level-toggle input{position: absolute;opacity: 0;pointer-events: none}.level-toggle span{position: absolute;inset: 0;border-radius: 2vw;background: #3b4557;cursor: pointer;transition: .2s}.level-toggle span:after{content: '';position: absolute;left: .18vw;top: .18vw;width: 1.44vw;height: 1.44vw;border-radius: 50%;background: #fff;transition: .2s}.level-toggle input:checked+span{background: #22a766}.level-toggle input:checked+span:after{transform: translateX(1.7vw)}
.level-help-button{width: 2.2vw;height: 2.2vw;padding: 0!important;border: .08vw solid #7fb8ff!important;border-image: none!important;border-radius: 50%!important;background: rgba(40,100,155,.55)!important;color: #d9efff!important;font-size: 1.1vw!important}
.level-settings-actions{display: flex;gap: 1vw;justify-content: center;margin-top: 2vh}.level-settings-actions button{padding: 1vh 1vw!important;font-size: 1vw!important}.level-settings-actions button:first-child{background: linear-gradient(135deg,#19b66a,#0d7f49)!important}.level-settings-actions button:last-child{background: linear-gradient(135deg,#4c5f8f,#1b2744)!important}
.dev-json-control.hidden{display: none!important}
.editor-levels-modal{position: fixed;inset: 0;z-index: 80;display: none;align-items: center;justify-content: center;padding: 2vh 2vw;background: rgba(0,0,0,.78)}
.editor-levels-modal.visible{display: flex}
.editor-levels-panel{position: relative;width: 62vw;overflow-y: auto;padding: 2.5vh 2vw;border: .14vw solid rgba(255,220,120,.4);border-radius: 1vw;background: linear-gradient(160deg,#0c1422,#111d30);box-shadow: 0 1vh 4vw rgba(0,0,0,.65)}
.editor-levels-panel h2{text-align: center;color: #ffdd88;font-size: 2.2vw;margin-bottom: 1.5vh}
.editor-levels-close{position: absolute;right: 1vw;top: 1vh;width: 2.5vw;height: 2.5vw;padding: 0!important;border-radius: 50%!important;background: rgba(120,20,30,.75)!important;color: #fff!important;font-size: 1.5vw!important}
.editor-levels-status{text-align: center;color: #8492a7;font-size: 1.1vw;margin-bottom: 1.4vh}
.editor-levels-list{display: flex;flex-direction: column;gap: .8vh}
.editor-level-row{display: grid;grid-template-columns: 1fr auto auto;align-items: center;gap: .7vw;padding: 1.3vh 1vw;border: .08vw solid rgba(255,255,255,.12);border-radius: .55vw;background: rgba(255,255,255,.045)}
.editor-level-main{display: flex;flex-direction: column;gap: .35vh}
.editor-level-main strong{font-size: 1.3vw;color: #fff;overflow-wrap: anywhere}
.editor-level-main span{font-size: .95vw;color: #9aa8bc}
.editor-level-row button{padding: .65vh .8vw!important;font-size: .9vw!important}
.editor-level-row button.danger{background: rgba(120,24,30,.8)!important;color: #ffb3b3!important}
.editor-level-empty{padding: 4vh 2vw;text-align: center;color: #8996aa;font-size: 1.2vw}
.teamsPanel{position: fixed;right: 1.2vw;top: 50%;transform: translateY(-50%);z-index: 55;width: 39vw;overflow-y: auto;display: none;flex-direction: column;padding: 2vh 1.5vw;border: .14vw solid rgba(255,220,120,.45);border-radius: .9vw;background: rgba(8,16,28,.98);box-shadow: 0 1vh 4vw rgba(0,0,0,.6)}
.teamsPanel h3{text-align: center;color: #ffdd66;font-size: 2vw;margin-bottom: 1.4vh;text-transform: uppercase}.teamsClose{position: absolute;right: 1vw;top: 1vh;width: 2.5vw;height: 2.5vw;padding: 0!important;border-radius: 50%!important;background: rgba(120,20,30,.75)!important;color: #fff!important;font-size: 1.5vw!important}.teamsList{display: flex;flex-direction: column;gap: .7vh}.teamRow{display: grid;grid-template-columns: 2.4vw 8vw 1fr 1fr;align-items: center;gap: .6vw;padding: .75vh .7vw;border: .07vw solid rgba(255,255,255,.12);border-radius: .5vw;background: rgba(255,255,255,.045)}.teamSwatch{width: 2.2vw;height: 2.2vw;border: .1vw solid rgba(255,255,255,.75);border-radius: 50%;box-shadow: 0 0 .7vw rgba(0,0,0,.6)}.teamColorCode{color: #cbd5e5;font: 700 .82vw monospace}.teamField{display: flex;flex-direction: column;gap: .25vh;color: #8fa1ba;font-size: .72vw;font-weight: 800}.teamRow select{width: 100%;padding: .65vh .55vw;border: .08vw solid rgba(255,255,255,.22);border-radius: .4vw;background: #111c2d;color: #fff;font-size: .9vw}.teamColorChoice{display: flex!important;align-items: center;justify-content: center;gap: .7vw;}.teamChoiceSwatch{width: 2.8vw;height: 2.8vw;border: .12vw solid rgba(255,255,255,.8);border-radius: 50%;box-shadow: 0 0 .8vw rgba(0,0,0,.7)}.teamChoiceCode{font: 800 1.1vw monospace;color: #fff}

.cityClose{position: absolute;top: 1vh;right: 1vw;font-size: 2.8vw;cursor: pointer;color: #ff5555;background: rgba(255,85,85,.2);width: 5vw;height: 5vw;display: flex;align-items: center;justify-content: center;border-radius: 50%}
.cityClose:hover{background: rgba(255,85,85,.35)}
.cityPanel{position: absolute;right: 1vw;top: 50%;transform: translateY(-50%);width: 28vw;background: rgba(8,16,28,.98);border: .14vw solid rgba(255,220,120,.4);border-radius: 1vw;padding: 1.5vh 1.5vw;z-index: 25;display: none;flex-direction: column;gap: 1vh;overflow-y: auto}
.cityPanel h3{font-size: 2.2vw;color: #44ffaa;margin-bottom: 1vh;text-align: center;text-transform: uppercase}
.citySection{background: rgba(255,255,255,.05);border-radius: .6vw;padding: 1vh 1vw;margin-bottom: 1vh}
.citySection h4{font-size: 1.8vw;color: #ffdd66;margin-bottom: .8vh;text-transform: uppercase}
.slotItem{display: flex;align-items: center;gap: .8vw;padding: .7vh .8vw;border-radius: .5vw;margin-bottom: .6vh;background: rgba(255,255,255,.08)}
.slotItem:hover{background: rgba(255,255,255,.15)}
.slotIcon{font-size: 2.2vw;width: 4vw;height: 4vw;display: flex;align-items: center;justify-content: center;text-align: center}
.slotIcon img{display: block;object-fit: contain}
.slotInfo{flex: 1;font-size: 1.6vw}
.slotRemove{padding: .4vh .6vw;border: .1vw solid #ff4444;border-radius: .4vw;background: rgba(255,68,68,.15);color: #ff8888;font-size: 1.4vw;cursor: pointer}
.slotRemove:hover{background: rgba(255,68,68,.3)}
.addSlotBtn{padding: .8vh 1vw;border: .12vw solid rgba(255,255,255,.3);border-radius: .5vw;background: rgba(68,255,170,.2);color: #44ffaa;font-size: 1.6vw;font-weight: 900;cursor: pointer;display: flex;align-items: center;justify-content: center;gap: .5vw}
.addSlotBtn:hover{background: rgba(68,255,170,.35);border-color: #44ffaa}

.aw-scroll::-webkit-scrollbar{width: .72vw;}
.aw-scroll::-webkit-scrollbar-track{
  background: rgba(255,255,255,.06);
  border-radius: 1vw;
  border: .06vw solid rgba(255,220,120,.14);
  margin: .4vh 0;
}
.aw-scroll::-webkit-scrollbar-thumb{
  background: linear-gradient(180deg,#ffe7a0,#ffd766 45%,#d9a32c);
  border-radius: 1vw;
  border: .08vw solid rgba(20,26,42,.75);
  box-shadow: inset 0 0 .4vw rgba(255,255,255,.45),0 0 .5vw rgba(255,210,90,.35);
}
.aw-scroll::-webkit-scrollbar-thumb:hover{
  background: linear-gradient(180deg,#fff3c8,#ffe084 45%,#e8b53c);
  box-shadow: inset 0 0 .5vw rgba(255,255,255,.6),0 0 .9vw rgba(255,210,90,.6);
}
.aw-scroll::-webkit-scrollbar-thumb:active{
  background: linear-gradient(180deg,#ffd766,#e8b53c 55%,#b8861f);
}
.aw-scroll::-webkit-scrollbar-corner{background: transparent}

button,
.cityClose,
.slotRemove,
.addSlotBtn,
.uiBtn,
.btn{
  background: transparent !important;
  border-style: solid !important;
  border-color: transparent !important;
  border-width: var(--aw-btn-border-y) var(--aw-btn-border-x) !important;
  border-image-source: url('../assets/statics_icons/menu/ui_button.webp') !important;
  border-image-slice: 50 80 fill !important;
  border-image-width: 1 !important;
  border-image-outset: 0 !important;
  border-image-repeat: stretch !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
button:hover,
.cityClose:hover,
.slotRemove:hover,
.addSlotBtn:hover,
.uiBtn:hover,
.btn:hover{
  box-shadow: none !important;
}

button:hover,
.uiBtn:hover,
.btn:hover{
  filter: none !important;
  box-shadow: none !important;
}
button:active,
.cityClose:active,
.slotRemove:active,
.addSlotBtn:active,
.uiBtn:active,
.btn:active{
  filter: brightness(.9);
}
button:disabled,
.uiBtn:disabled,
.btn:disabled{
  filter: grayscale(.65) brightness(.7);
}

#modeScreen button.mode-card{
  background:rgba(255,255,255,.085)!important;
  background-image:none!important;
  border:.16vw solid rgba(255,255,255,.22)!important;
  border-image:none!important;
  border-radius:1vw!important;
  box-shadow:none!important;
}
#modeScreen button.mode-card:hover,
#modeScreen button.mode-card:focus-visible{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.55)!important;
}

.settings-toggle button{
  background: rgba(255,255,255,.06) !important;
  border: 0 !important;
  border-image: none !important;
  padding: .7vh 1.4vw !important;
  filter: none;
}
.settings-toggle button.active{
  background: #e94560 !important;
  color: #fff;
  box-shadow: 0 0 1vw rgba(233,69,96,.3);
}
.settings-toggle button:hover:not(.active){
  background: rgba(255,255,255,.12) !important;
  filter: none;
}
.save-slot .delete-btn{
  background: rgba(255,0,0,.3) !important;
  border: 0 !important;
  border-image: none !important;
  padding: .5vh 1vw !important;
  filter: none;
}
.save-slot .delete-btn:hover{
  background: rgba(255,0,0,.8) !important;
  filter: none;
}

.msg-modal-btn,.msg-modal-btn:hover,.msg-modal-btn:active,.msg-modal-btn:disabled{
  background-image: none !important;
  border: none !important;
  border-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
  padding:.93vh 1.46vw !important;
  font-size: 1.2vw !important;
  font-weight: bold !important;
  border-radius: 0.42vw !important;
  color: #fff !important;
  cursor: pointer !important;
  transition: transform 0.2s,filter 0.2s !important;
  user-select: none;
  line-height: 1.2 !important;
  text-transform: none !important;
  white-space: nowrap !important;
  display: inline-block !important;
  
  
}
.msg-modal-btn:hover{transform: translateY(-.19vh) !important;filter: brightness(1.12) !important}
.msg-modal-btn:active{transform: translateY(0) !important;filter: brightness(0.95) !important}

.catalog-modal{position: fixed;inset: 0;z-index: 1000;display: none;align-items: center;justify-content: center;padding: 2vh 2vw;background: rgba(0,0,0,.85)}
.catalog-modal.visible{display: flex}
.catalog-panel{width: 92vw;overflow-y: auto;display: flex;flex-direction: column;border: .12vw solid #ffdd66;border-radius: .8vw;background: #1f252f}
.catalog-header{padding: 1.4vh 1.2vw;display: flex;align-items: center;justify-content: space-between;gap: 1vw;border-bottom: .1vw solid #ffdd66;background: #2a313d}
.catalog-heading{display: flex;align-items: center;gap: .8vw}.catalog-heading h2{margin: 0;color: #ffdd66;font-size: 1.4vw}.catalog-count{color: #8993a3;font-size: .85vw}
.catalog-controls{display: flex;align-items: center;gap: .55vw}.catalog-controls input{width: 15vw;padding: .7vh .7vw;border: .08vw solid #59606b;border-radius: .4vw;background: #111;color: #fff;font-size: .9vw}

.catalog-controls select{appearance: none;-webkit-appearance: none;-moz-appearance: none;padding: .7vh 1.9vw .7vh .6vw;border: .08vw solid #59606b;border-radius: .4vw;background: #111 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'><path d='M1 1l7 7 7-7' fill='none' stroke='white' stroke-width='2'/></svg>") no-repeat right .6vw center/1vw auto;color: #fff;font-size: .9vw}
.settings-lang-select{appearance: none;-webkit-appearance: none;-moz-appearance: none;padding: 0 1.9vw 0 1vw;background: #111b2c url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='10' viewBox='0 0 16 10'><path d='M1 1l7 7 7-7' fill='none' stroke='white' stroke-width='2'/></svg>") no-repeat right .6vw center/1vw auto}

.catalog-modal .catalog-close{position: absolute!important;right: calc(var(--aw-pad-x, 1.1vw) + -6vw)!important;top: .9vh!important;z-index: 6!important;width: 2.6vw!important;height: 2.6vw!important;padding: 0!important;border: .1vw solid rgba(255,90,90,.65)!important;border-image: none!important;border-radius: 50%!important;background: rgba(100,15,25,.72)!important;background-image: none!important;color: #ff7777!important;font-size: 1.75vw!important;line-height: 1!important;box-shadow: none!important}
.catalog-content{flex: 1;overflow-y: auto;padding: 1.5vh 1.2vw;display: grid;grid-template-columns: repeat(3,1fr);gap: 1vw}
.catalog-card{height: 30vh;overflow: hidden;padding: 1.2vh .9vw;display: flex;flex-direction: column;justify-content: space-between;border: .08vw solid #46505d;border-radius: .65vw;background: #2a313d;cursor: pointer;transition: .2s}.catalog-card:hover{border-color: #ffdd66;transform: translateY(-.15vh)}
.catalog-load-more{grid-column:1/-1;margin:1.2vh auto;padding:1.3vh 3.4vw;font-size:1.3vw;font-weight:700;color:#ffe9a8;background:rgba(18,14,10,.92);border:.12vw solid rgba(255,215,106,.55);border-radius:.8vw;cursor:pointer}
.catalog-load-more:hover{border-color:#ffdd66;color:#fff}
.catalog-load-more:disabled{opacity:.5;cursor:default}
.catalog-card-top,.catalog-card-bottom{display: flex;justify-content: space-between;align-items: flex-start;gap: .7vw}.catalog-card-main{flex: 1;}.catalog-card-main h3{margin: 0 0 .5vh;color: #fff;font-size: 1.05vw;overflow-wrap: anywhere}.catalog-card-main span{display: block;margin-top: .25vh}.catalog-card-main span,.catalog-card-bottom span{color: #9aa4b4;font-size: .8vw}.catalog-badges{display: flex;gap: .4vw;margin-top: .4vh;flex-wrap: wrap}.catalog-badge{display: inline-flex;align-items: center;gap: .2vw;padding: .2vh .4vw;border: .06vw solid rgba(255,255,255,.18);border-radius: .3vw;font-size: .75vw;font-weight: 700;background: rgba(255,255,255,.05)}.catalog-badge.biome{border-color: rgba(100,200,100,.5);color: #8fd98f;background: rgba(100,200,100,.1)}.catalog-badge.unique{border-color: rgba(255,180,100,.5);color: #ffc878;background: rgba(255,180,100,.1)}.catalog-category{display: inline-block!important;width: fit-content;padding: .22vh .45vw;border: .06vw solid rgba(255,255,255,.18);border-radius: .35vw;font-weight: 900}.catalog-category.campaign{border-color: rgba(255,215,75,.65);background: rgba(145,105,15,.24);color: #ffe078!important}.catalog-author{color: #c3b9a3!important}.catalog-counters{display: flex;flex-direction: column;align-items: stretch;gap: .35vh;text-align: right;color: #929bab;font-size: .78vw;flex-shrink: 0}.catalog-counter{padding: .35vh .45vw!important;border: .06vw solid rgba(255,255,255,.16)!important;border-image: none!important;border-radius: .35vw!important;background: rgba(0,0,0,.24)!important;color: #c7cfdb!important;font-size: .78vw!important;text-align: center}.catalog-counter.like.active{border-color: #62e690!important;background: rgba(40,150,75,.28)!important;color: #9effbd!important}.catalog-counter.dislike.active{border-color: #ff7777!important;background: rgba(170,45,55,.28)!important;color: #ffaaaa!important}.catalog-views{padding: .2vh .35vw;text-align: center}
.catalog-card-bottom{align-items: center;margin-top: 1vh}.catalog-load{padding: .55vh .7vw!important;font-size: .85vw!important;background: #ffdd66!important;color: #111!important}.catalog-load.local{background: #78d7a2!important;color: #082617!important}.catalog-footer{padding: .9vh 1vw;text-align: center;color: #8f98a8;font-size: .8vw;background: #2a313d}.catalog-message{grid-column: 1/-1;padding: 4vh 2vw;text-align: center;color: #9aa4b4;font-size: 1.1vw}.catalog-message.error{color: #ff7777}

.editor-page button,
.editor-page .cityClose,
.editor-page .editor-page .slotRemove,
.editor-page .addSlotBtn,
.editor-page .editor-page .editor-page .uiBtn,
.editor-page .btn{
  background-image: none !important;
  border-image: none !important;
  border-style: solid !important;
  border-width: .1vw !important;
  border-color: rgba(255,255,255,.32) !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
}
.editor-page button{background: linear-gradient(135deg,#304766,#17263d) !important;color: #fff}
.editor-page button:hover{background: linear-gradient(135deg,#42638d,#223b5d) !important;filter: brightness(1.08) !important}
.editor-page button:active{background: linear-gradient(135deg,#1d304d,#101d31) !important;filter: brightness(.92) !important}
.editor-page .uiBtn.save,
.editor-page .btn:not(.secondary){background: linear-gradient(135deg,#19b66a,#0d7f49) !important}
.editor-page .uiBtn.playtest{background: linear-gradient(135deg,#f0a020,#b45a06) !important;color:#1d1204 !important}
.editor-page .uiBtn.playtest:hover{background: linear-gradient(135deg,#ffb733,#c96a0a) !important}

.editor-page #editorUndoBtn{background: linear-gradient(135deg,#a03030,#5a1414) !important}
.editor-page #editorUndoBtn:active{background: linear-gradient(135deg,#c04040,#6a1a1a) !important}
.editor-page .uiBtn.menu,
.editor-page .btn.secondary{background: linear-gradient(135deg,#4c5f8f,#1b2744) !important}
.editor-page .addSlotBtn{background: rgba(68,255,170,.18) !important;color: #7dffc4}
.editor-page .slotRemove{background: rgba(255,68,68,.18) !important;color: #ff9a9a}
.editor-page .cityClose{background: rgba(255,85,85,.22) !important;color: #ff7777}
.editor-page .objectCard{background: rgba(20,31,48,.96) !important}
.editor-page .objectCard:hover{background: rgba(42,61,86,.98) !important}
.editor-page .objectCard.selected{background: rgba(68,255,170,.24) !important;border-color: #44ffaa !important}

.editor-page #racePopup{
  
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
  padding-right: 2.4vw;
}
.editor-page #racePopup #raceButtons{align-items: stretch}

.user-level-play,
.user-level-delete{
  cursor: url('../assets/cursors/cursor_pointer.webp') 3 2, pointer !important;
  transition: transform .16s ease,filter .16s ease,brightness .16s ease !important;
  position: relative;
}
.user-level-play:hover:not(:disabled):not(.invalid){

  transform: none;
  filter: none !important;
}
.user-level-delete{
  background: rgba(125,20,30,.88) !important;
  border: 0.05vw solid rgba(255,135,145,.64) !important;
  border-image: none !important;
  color: #ffc1c1;
}
.user-level-delete:hover:not(:disabled){
  background: rgba(125,20,30,.88) !important;
  border-color: rgba(255,135,145,.64) !important;
  transform: none;
  filter: none !important;
}
.user-level-play.invalid{
  cursor:not-allowed !important;
  filter: grayscale(.2) brightness(.82) !important;
}

.editor-page #settingsScreen{z-index:120}
.editor-page .settings-toggle{display:flex;border:.12vw solid rgba(255,255,255,.18);border-radius:.5vw;overflow:hidden}
.editor-page .settings-toggle button{background:rgba(255,255,255,.06)!important;color:#8a92a6!important;border:0!important;border-image:none!important;box-shadow:none!important;filter:none!important}
.editor-page .settings-toggle button:hover:not(.active){background:rgba(255,255,255,.12)!important;filter:none!important}
.editor-page .settings-toggle button.active{background:#e94560!important;color:#fff!important;box-shadow:none!important;filter:none!important}

.editor-page .settings-x-close{position:absolute!important;right:calc(var(--aw-pad-x,1.1vw) + .9vw)!important;top:calc(var(--aw-pad-t,1.2vh) + .9vh)!important;z-index:2!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;vertical-align:middle!important;padding:0!important;border:.1vw solid rgba(255,150,150,.82)!important;border-image:none!important;border-radius:50%!important;background:#a52c39!important;background-image:none!important;color:#fff!important;font-family:Arial,sans-serif!important;font-size:1.55vw!important;font-weight:900!important;line-height:1!important;text-shadow:0 .04vw .08vw rgba(0,0,0,.7)!important;box-shadow:0 0 .55vw rgba(180,38,54,.38)!important;filter:none!important;cursor:pointer!important;transform:none!important;margin:0!important}
.editor-page .settings-x-close:hover{background:#c33b49!important;color:#fff!important;filter:none!important}
.editor-page .settings-x-close:active{background:#a52c39!important;filter:none!important}

.catalog-modal button{
  border: 0 !important;
  border-image: none !important;
  border-radius: .45vw !important;
  box-shadow: none !important;
  text-shadow: none !important;
  filter: none !important;
}
.catalog-modal button:hover{filter: brightness(1.1) !important}
.catalog-modal button:active{filter: brightness(.92) !important}
.catalog-modal .catalog-close:hover{
  background: rgba(145,24,34,.9) !important;
  color: #fff !important;
  filter: none !important;
}
.catalog-modal .catalog-load{background: #ffdd66 !important;color: #111 !important}
.catalog-modal .catalog-load.local{background: #78d7a2 !important;color: #082617 !important}
.catalog-card{
  border-style: solid !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  border-width: 1.9vh 1.7vw !important;
  border-image-source: url('../assets/statics_icons/menu/ui_level_button.webp') !important;
  border-image-slice: 40 48 fill !important;
  border-image-width: 1 !important;
  border-image-outset: 0 !important;
  border-image-repeat: stretch !important;
  background: #252a31 !important;
}
.catalog-card:hover{border-color: transparent !important;transform: translateY(-.3vh) !important;filter: brightness(1.1)}

#settingsScreen:not(.hidden),
.sdk-modal:not(.hidden),
.catalog-modal.visible,
.editor-settings-modal.visible,
.level-settings-modal.visible,
.editor-levels-modal.visible,
.level-intro-overlay.visible,
#ingameMessageModal[style*='display:flex'],
#ingameMessageModal[style*='display: flex']{
  display: block !important;
  box-sizing: border-box !important;
  overflow-x: auto !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
  -ms-overflow-style: none;
  scrollbar-width: none;
  padding: 2.5vh 2vw 8vh !important;
}

#settingsScreen:not(.hidden) .settings-panel.aw-scroll{
  overflow: visible !important;
  
  box-sizing: border-box !important;
  margin: 0 auto !important;
}
#settingsScreen:not(.hidden)::-webkit-scrollbar,
.sdk-modal:not(.hidden)::-webkit-scrollbar,
.catalog-modal.visible::-webkit-scrollbar,
.editor-settings-modal.visible::-webkit-scrollbar,
.level-settings-modal.visible::-webkit-scrollbar,
.editor-levels-modal.visible::-webkit-scrollbar,
.level-intro-overlay.visible::-webkit-scrollbar,
#ingameMessageModal[style*='display:flex']::-webkit-scrollbar,
#ingameMessageModal[style*='display: flex']::-webkit-scrollbar{
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.settings-panel,
.sdk-modal-panel,
.catalog-panel,
.editor-settings-panel,
.level-settings-panel,
.editor-levels-panel,
.popup,
.level-intro-content,
.msg-modal-panel{
  position: relative !important;
  box-sizing: border-box !important;
  margin:2vh auto 2vh !important;
  overflow: visible !important;
  
  border: 0 !important;
  border-radius: 0 !important;
  background: #1a1f22 !important;
  box-shadow: 0 1.2vh 4vw rgba(0,0,0,.58) !important;
  padding: var(--aw-modal-pad-top) var(--aw-modal-pad-x) var(--aw-modal-pad-bottom) !important;
}

.aw-modal-frame{
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 0 !important;
}
.aw-modal-frame-canvas,
.aw-modal-frame-side-left,
.aw-modal-frame-side-right,
.aw-modal-frame-top-left,
.aw-modal-frame-top-fill-left,
.aw-modal-frame-top-center,
.aw-modal-frame-top-fill-right,
.aw-modal-frame-top-right,
.aw-modal-frame-bottom-left,
.aw-modal-frame-bottom-fill-left,
.aw-modal-frame-bottom-center,
.aw-modal-frame-bottom-fill-right,
.aw-modal-frame-bottom-right{
  position: absolute;
  pointer-events: none;
}
.aw-modal-frame-canvas{
  background-image: var(--aw-modal-center-img);
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100% auto;
}
.aw-modal-frame-side-left,
.aw-modal-frame-side-right{
  background-image: var(--aw-modal-side-img);
  background-repeat: repeat-y;
  background-position: top center;
  background-size: 100% auto;
}
.aw-modal-frame-side-left{left: 0;}
.aw-modal-frame-side-right{right: 0;transform: scaleX(-1);transform-origin: center;}
.aw-modal-frame-top-left,.aw-modal-frame-top-right,
.aw-modal-frame-bottom-left,.aw-modal-frame-bottom-right{
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.aw-modal-frame-top-left,
.aw-modal-frame-bottom-left{
  transform: scaleX(-1);
  transform-origin: center;
}
.aw-modal-frame-bottom-left{
  transform: scale(-1,-1);
  transform-origin: center;
}
.aw-modal-frame-bottom-right{
  transform: scaleY(-1);
  transform-origin: center;
}
.aw-modal-frame-bottom-fill-left,
.aw-modal-frame-bottom-fill-right,
.aw-modal-frame-bottom-center{
  transform: scaleY(-1);
  transform-origin: center;
}
.aw-modal-frame-top-center,
.aw-modal-frame-bottom-center{
  background-repeat: no-repeat;
  background-size: auto 100%;
}
.aw-modal-frame-top-center{background-position: center top;}
.aw-modal-frame-bottom-center{background-position: center bottom;}
.aw-modal-frame-top-fill-left,.aw-modal-frame-top-fill-right,
.aw-modal-frame-bottom-fill-left,.aw-modal-frame-bottom-fill-right{
  background-repeat: repeat-x;
  background-position: top left;
  background-size: auto 100%;
}
.aw-modal-frame-top-left{background-image: var(--aw-modal-top-left-img);}
.aw-modal-frame-top-fill-left{background-image: var(--aw-modal-top-fill-left-img);}
.aw-modal-frame-top-center{background-image: var(--aw-modal-top-center-img);}
.aw-modal-frame-top-fill-right{background-image: var(--aw-modal-top-fill-right-img);}
.aw-modal-frame-top-right{background-image: var(--aw-modal-top-right-img);}
.aw-modal-frame-bottom-left{background-image: var(--aw-modal-bottom-left-img);}
.aw-modal-frame-bottom-fill-left{background-image: var(--aw-modal-bottom-fill-left-img);}
.aw-modal-frame-bottom-center{background-image: var(--aw-modal-bottom-center-img);}
.aw-modal-frame-bottom-fill-right{background-image: var(--aw-modal-bottom-fill-right-img);}
.aw-modal-frame-bottom-right{background-image: var(--aw-modal-bottom-right-img);}

.settings-panel > :not(.aw-modal-frame),
.sdk-modal-panel > :not(.aw-modal-frame),
.catalog-panel > :not(.aw-modal-frame),
.editor-settings-panel > :not(.aw-modal-frame),
.level-settings-panel > :not(.aw-modal-frame),
.editor-levels-panel > :not(.aw-modal-frame),
.popup > :not(.aw-modal-frame),
.level-intro-content > :not(.aw-modal-frame),
.msg-modal-panel > :not(.aw-modal-frame),
.editorToolWindow > :not(.aw-modal-frame),
.teamsPanel > :not(.aw-modal-frame),
.cityPanel > :not(.aw-modal-frame){
  position: relative;
  z-index: 1;
}

.settings-panel,
.editor-settings-panel,
.level-settings-panel,
.msg-modal-panel{width: 42.5vw !important;}

.sdk-modal-panel,
.editor-levels-panel,
.level-intro-content{width: 46.87vw;}
.catalog-panel{
  width: 91.67vw !important;
  
  
  padding: var(--aw-catalog-pad-top) var(--aw-catalog-pad-x) var(--aw-catalog-pad-bottom) !important;
}
.catalog-modal,
.catalog-modal *{
  font-family: var(--aw-font-stack) !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}
.popup{
  width: 39.58vw !important;
  
  position: absolute !important;
  left: 50vw !important;
  top: 50vh !important;
  transform: translate(-50%,-50%) !important;
}

.settings-panel > h2,
.sdk-modal-panel > h2,
.editor-settings-panel > h2,
.level-settings-panel > h2,
.editor-levels-panel > h2,
.level-intro-content > h2,
.popup > h3,
.msg-modal-panel > h2{
  
  margin:0 0 1.48vh !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #e5e8ee !important;
  text-shadow: 0 0.05vw 0.1vw rgba(0,0,0,.68);
}

.catalog-panel > .catalog-header{
  margin-top: 0 !important;
  padding:1.11vh 3.4vw 2.04vh !important;
  border-bottom: none !important;
  background: transparent !important;
}
.catalog-panel > .catalog-footer{
  margin:0 !important;
  padding:1.3vh .83vw 0 !important;
  background: transparent !important;
}
.catalog-content{
  flex: 0 0 auto !important;
  width: 100% !important;
  
  
  overflow: visible !important;
  
  display: grid !important;
  grid-template-columns: repeat(4,1fr) !important;
  gap: 1.2vh 1vw !important;
  padding: 1.5vh 1vw 1vh !important;
}
.settings-panel.aw-scroll{
  overflow: visible !important;
  
}
.settings-panel.aw-scroll::-webkit-scrollbar{
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}
.settings-panel.aw-scroll,
.sdk-modal-panel.aw-scroll,
.catalog-panel.aw-scroll,
.editor-settings-panel.aw-scroll,
.level-settings-panel.aw-scroll,
.editor-levels-panel.aw-scroll,
.level-intro-content.aw-scroll{
  overflow: visible !important;
  
}

.msg-modal-panel{text-align: center !important}
#ingameMessageText{margin-bottom: 1.15vw !important}

.catalog-card{
  justify-content:flex-start !important;
  gap:.65vh !important;
}
.catalog-card-top{
  width:100% !important;
  flex:0 0 auto !important;
  
  align-items:flex-start !important;
}
.catalog-card-main{
  flex:1 1 auto !important;
  width:auto !important;
  
  
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  gap:.12vh !important;
}
.catalog-card-main h3{
  flex:0 0 auto !important;
  line-height:1.1 !important;
}
.catalog-card-main span{
  flex:0 0 auto !important;
  margin-top:.18vh !important;
  line-height:1.12 !important;
}
.catalog-card-main .catalog-category{
  margin-top:.38vh !important;
}
.catalog-card-bottom{
  width:100% !important;
  flex:0 0 auto !important;
  margin-top:auto !important;
}

.settings-promo-row{
  align-items:flex-start !important;
}
.settings-promo-control{
  
  flex:0 1 22vw;
  
  flex-direction:column !important;
  align-items:stretch !important;
  gap:.45vh !important;
}
.settings-promo-input-row{
  display:flex;
  align-items:stretch;
  gap:.45vw;
  width:100%;
}
.settings-promo-input{
  
  flex:0 1 13.5vw;
  
  width:13.5vw;
  height:4.6vh;
  padding:0 .8vw;
  border:.1vw solid rgba(255,220,120,.5);
  border-radius:.45vw;
  background:#101a2a;
  color:#fff;
  outline:none;
  font-size:1vw;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing: calc(0.14vw * var(--aw-ls-on));
  word-spacing:normal;
  user-select:none;
  -webkit-user-select:none;
}
.settings-promo-input::placeholder{
  letter-spacing: calc(0.02vw * var(--aw-ls-on));
  word-spacing:normal;
  opacity:0.82;
}
.settings-promo-input::-webkit-input-placeholder{
  letter-spacing: calc(0.02vw * var(--aw-ls-on));
  word-spacing:normal;
}
.settings-promo-input::-moz-placeholder{
  letter-spacing: calc(0.02vw * var(--aw-ls-on));
  word-spacing:normal;
  opacity:0.82;
}
.settings-promo-input:focus{
  border-color:#ffdd66;
  box-shadow:0 0 1vw rgba(255,210,90,.24);
}
.settings-promo-apply{
  flex:0 0 auto;
  
  
  padding:.55vh .8vw !important;
  border:.08vw solid rgba(255,220,120,.45) !important;
  border-image:none !important;
  border-radius:.45vw !important;
  background:linear-gradient(135deg,#4c5f8f,#1b2744) !important;
  color:#fff !important;
  font-size:.95vw !important;
  font-weight:800;
  text-transform:none !important;
  cursor:pointer;
}
.settings-promo-apply:hover:not(:disabled){
  background:linear-gradient(135deg,#6078ad,#263b61) !important;
  filter:brightness(1.08) !important;
}
.settings-promo-apply:disabled{opacity:.65;cursor:wait}
.settings-promo-status{
  
  color:#9ee5ff;
  font-size:.78vw;
  line-height:1.18;
  text-align:right;
  overflow-wrap:anywhere;
}
.settings-promo-status.success{color:#8affc0}
.settings-promo-status.error{color:#ff9a9a}

.aw-promo-slot-modal{
  position:fixed;
  inset:0;
  z-index:3000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:2vh 2vw;
  background:rgba(0,0,0,.78);
}
.aw-promo-slot-modal.hidden{display:none !important}
.aw-promo-slot-panel{
  position:relative;
  width:38vw;
  
  
  overflow:auto;
  padding:2.8vh 2.2vw;
  border:.12vw solid rgba(255,220,120,.5);
  border-radius:.9vw;
  background:linear-gradient(160deg,#10182a,#0a1220);
  box-shadow:0 1vh 4vw rgba(0,0,0,.7);
  color:#fff;
  text-align:center;
}
.aw-promo-slot-panel h2{
  margin:0 0 1.2vh;
  color:#ffdd88;
  font-size:1.65vw;
  line-height:1.15;
}
.aw-promo-slot-panel p{
  margin:0 0 1.5vh;
  color:#b9c5d8;
  font-size:1vw;
  line-height:1.35;
}
.aw-promo-slot-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:.7vh .6vw;
}
.aw-promo-slot-button{
  
  padding:.8vh .7vw !important;
  border:.08vw solid rgba(255,220,120,.35) !important;
  border-image:none !important;
  border-radius:.5vw !important;
  background:rgba(255,255,255,.06) !important;
  color:#fff !important;
  font-size:.9vw !important;
  line-height:1.2;
  text-transform:none !important;
  cursor:pointer;
}
.aw-promo-slot-button:hover:not(:disabled){
  background:rgba(255,220,120,.16) !important;
  border-color:rgba(255,220,120,.8) !important;
  filter:none !important;
}
.aw-promo-slot-button small{
  display:block;
  margin-top:.25vh;
  color:#9aa8bc;
  font-size:.75em;
}
.aw-promo-slot-cancel{
  margin-top:1.2vh;
  
  
  padding:.65vh 1vw !important;
  border:.08vw solid rgba(255,255,255,.2) !important;
  border-image:none !important;
  border-radius:.45vw !important;
  background:rgba(255,255,255,.06) !important;
  color:#cfd6e6 !important;
  font-size:.9vw !important;
  text-transform:none !important;
  cursor:pointer;
}
.aw-promo-slot-cancel:hover{
  background:rgba(255,255,255,.12) !important;
  filter:none !important;
}

.aw-secret-title-trigger{
  cursor:pointer !important;
}
.aw-secret-code-modal{
  position:fixed;
  inset:0;
  z-index:3100;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:2vh 2vw;
  background:rgba(0,0,0,.82);
}

.aw-secret-code-panel{
  position:relative !important;
  box-sizing:border-box !important;
  width:34vw;
  
  overflow:visible !important;
  
  border:0 !important;
  border-radius:0 !important;
  background:#1a1f22 !important;
  box-shadow:0 1.2vh 4vw rgba(0,0,0,.58) !important;
  padding:var(--aw-modal-pad-top) var(--aw-modal-pad-x) var(--aw-modal-pad-bottom) !important;
  text-align:center;
}

.aw-secret-code-panel > *{position:relative;z-index:1;}
.aw-secret-code-panel h2{
  margin:0 0 1vh;
  color:#ffdd88;
  font-size:1.8vw;
}
.aw-secret-code-panel p{
  margin:0 0 1.8vh;
  color:#b9c5d8;
  font-size:1vw;
}
.aw-secret-code-value{
  display:block;
  margin:0 auto 2vh;
  padding:1.2vh 1vw;
  border:.08vw dashed rgba(255,220,120,.58);
  border-radius:.5vw;
  background:rgba(0,0,0,.35);
  color:#ffe58a;
  font:800 1.4vw/1.2 monospace;
  letter-spacing: calc(.08em * var(--aw-ls-on));
  user-select:none;
  -webkit-user-select:none;
}
.aw-secret-code-actions{
  display:flex;
  justify-content:center;
  gap:.65vw;
}

.aw-secret-code-actions button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
  line-height:1 !important;
  text-align:center !important;
  
  
  padding:.65vh 1.1vw !important;
  color:#f5e6c8 !important;
  font-size:.95vw !important;
  font-weight:700 !important;
  text-transform:none !important;
  cursor:pointer;
}
.aw-secret-code-actions button:hover{filter:brightness(1.08) !important}

@media (orientation:landscape){
  .level-grid{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:1.6vh 1.35vw !important;
    width:86vw !important;
    align-items:stretch;
  }
  .level-card{
    width:100% !important;
    
    height:32vh !important;
  }
  .catalog-content{
    grid-template-columns:repeat(3,1fr) !important;
  }
  .mode-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:2.5vw !important;
    width:86vw !important;
    
    margin:2vh auto !important;
  }
  .mode-btn{
    width:38vw !important;
    
    
    
    height:auto !important;
    padding:3vh 2vw !important;
    font-size:2.2vw !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:1.5vh !important;
  }
  #modeCustomText{font-size:2vw !important;}
  #modeCampaignText{font-size:2vw !important;}
  #modeScreen h2{margin-bottom:2vh !important;}
  #modeScreen .screen-back-btn{top:2vh !important;left:2vw !important;}
}

.editor-page input[type=number]{
  -moz-appearance:textfield;
  appearance:textfield;
}
.editor-page input[type=number]::-webkit-inner-spin-button,
.editor-page input[type=number]::-webkit-outer-spin-button{
  -webkit-appearance:none;
  appearance:none;
  margin:0;
}
.editor-page .aw-number-control{
  position:relative;
  display:inline-flex;
  align-items:center;
  
}
.editor-page .aw-number-control input[type=number]{
  padding-right:2.8vw !important;
}
.editor-page .aw-number-stepper{
  position:absolute;
  z-index:3;
  right:.45vw;
  top:50%;
  transform:translateY(-50%);
  width:2.1vw;
  height:4.6vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:.1vh;
  pointer-events:auto;
}
.editor-page .aw-number-stepper button{
  width:100%;
  
  height:2.1vh;
  
  margin:0 !important;
  padding:0 !important;
  border:.04vw solid rgba(255,255,255,.2) !important;
  border-image:none !important;
  border-radius:.16vw !important;
  background:rgba(120,130,145,.72) !important;
  color:#fff !important;
  font-family: var(--aw-font-stack) !important;
  font-size:.95vw !important;
  line-height:1 !important;
  text-align:center;
  text-transform:none !important;
  cursor:pointer;
}
.editor-page .aw-number-stepper button:hover{
  background:rgba(175,185,200,.9) !important;
  filter:none !important;
}
.editor-page .aw-number-stepper button:active{
  background:rgba(80,90,105,.95) !important;
}

.editor-page .star-condition-item .aw-number-control{
  flex:0 0 auto;
  display:inline-flex;
  width:auto;
}

.editor-page .star-condition-item .aw-number-stepper{
  flex:0 0 auto;
  display:flex;
  top:.2vh;
  bottom:.2vh;
  height:auto;
  transform:none;
  gap:.15vh;
}
.editor-page .star-condition-item .aw-number-stepper button{
  flex:1 1 0;
  height:auto;
}

.editor-page select{
  user-select:none;
  -webkit-user-select:none;
}
.editor-page input,
.editor-page textarea{
  user-select:text;
  -webkit-user-select:text;
  caret-color:#44ff88;
  cursor:url('../assets/cursors/cursor_text.webp') 16 16, text !important;
}
.editor-page .editor-prompt-input{
  display:block;
  width:100%;
  height:5.2vh;
  margin:0 0 2vh;
  padding:.7vh 1vw;
  border:.12vw solid rgba(150,190,255,.95);
  border-radius:.7vw;
  background:#202024;
  color:#fff;
  outline:none;
  font-size:1.15vw;
  line-height:1.2;
  user-select:none;
  -webkit-user-select:none;
}
.editor-page .editor-prompt-input:focus{
  border-color:#b9d4ff;
  box-shadow:0 0 .8vw rgba(135,180,255,.35);
}

.save-slot{
  justify-content:flex-start !important;
  
  padding-top:3.2vh !important;
  padding-bottom:1.2vh !important;
}
.save-slot .slot-title{
  width:100%;
  

  padding:0 1vw;
  line-height:1.12;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-align:center;
}
.save-slot .slot-info{
  width:100%;
  
  margin-top:.75vh;
  padding:0 .8vw;
  line-height:1.15;
  text-align:center;
  overflow-wrap:anywhere;
}
.save-slot .delete-btn{
  top:.65vh !important;
  right:.65vw !important;
  
  padding:.35vh .65vw !important;
  border-radius:.35vw !important;
  font-size:.8vw !important;
  line-height:1.1;
}

.editor-page input::selection,
.editor-page select::selection,
.editor-page textarea::selection{
  background:transparent;
  color:inherit;
}

.editor-page input,
.editor-page select,
.editor-page textarea{
  -webkit-user-drag:none;
}

.tutorial-overlay{
  position:fixed;
  inset:0;
  z-index:12000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:4vh 4vw;
  background:rgba(0,0,0,.84);
}
.tutorial-overlay.hidden{display:none !important}
.tutorial-panel{
  position:relative;
  width:58vw;
  
  
  overflow:auto;
  padding:4vh 4vw 3.2vh;
  border:.14vw solid rgba(255,220,120,.66);
  border-radius:1.2vw;
  background:linear-gradient(160deg,#111a2b,#0a1220 70%,#10182a);
  box-shadow:0 1.4vh 4vw rgba(0,0,0,.72),0 0 2vw rgba(255,210,90,.16);
  color:#fff;
  text-align:left;
}
.tutorial-close{
  position:absolute;
  right:1.2vw;
  top:1.2vh;
  width:2.5vw;
  height:2.5vw;
  
  
  padding:0 !important;
  border:.08vw solid rgba(255,110,110,.65) !important;
  border-image:none !important;
  border-radius:50% !important;
  background:rgba(100,15,25,.75) !important;
  color:#ffb0b0 !important;
  font-size:1.6vw !important;
  line-height:1 !important;
  cursor:pointer;
}
.tutorial-kicker{
  color:#ffdd88;
  font-size:1.1vw;
  font-weight:800;
  letter-spacing: calc(.06em * var(--aw-ls-on));
  text-transform:uppercase;
  margin-bottom:1vh;
}
.tutorial-title{
  margin:0 0 1.2vh;
  color:#fff;
  font-size:2.5vw;
  line-height:1.05;
  text-align:left;
}
.tutorial-intro{
  margin:0 0 1.8vh;
  color:#b9c7da;
  font-size:1.15vw;
  line-height:1.35;
}
.tutorial-steps{
  display:flex;
  flex-direction:column;
  gap:.8vh;
  margin:0 0 1.8vh;
  padding:0;
  list-style:none;
  counter-reset:tutorial-step;
}
.tutorial-steps li{
  counter-increment:tutorial-step;
  position:relative;
  
  padding:1vh 1vw 1vh 3.2vw;
  border:.07vw solid rgba(255,255,255,.12);
  border-radius:.55vw;
  background:rgba(255,255,255,.055);
  color:#eef3fb;
  font-size:1.05vw;
  line-height:1.28;
}
.tutorial-steps li::before{
  content:counter(tutorial-step);
  position:absolute;
  left:.75vw;
  top:50%;
  transform:translateY(-50%);
  width:1.65vw;
  height:1.65vw;
  display:flex;
  align-items:center;
  justify-content:center;
  border:.08vw solid rgba(255,220,120,.7);
  border-radius:50%;
  color:#ffdd88;
  font-size:.9vw;
  font-weight:900;
}
.tutorial-objective{
  margin:0 0 2vh;
  padding:1.2vh 1vw;
  border-left:.25vw solid #4aff9a;
  background:rgba(74,255,154,.09);
  color:#aaffcf;
  font-size:1.05vw;
  line-height:1.3;
}
.tutorial-actions{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:.8vw;
}
.tutorial-actions button{
  
  padding:1vh 1.6vw !important;
  border:.08vw solid rgba(255,220,120,.45) !important;
  border-image:none !important;
  border-radius:.55vw !important;
  font-size:1.05vw !important;
  text-transform:none !important;
  cursor:pointer;
}
.tutorial-start-btn{background:linear-gradient(135deg,#19b66a,#0d7f49) !important;color:#fff !important}
.tutorial-skip-btn{background:rgba(255,255,255,.08) !important;color:#c9d2df !important}
.tutorial-actions button:hover{filter:brightness(1.1) !important}

.tutorial-coach{
  position:fixed;
  z-index:11000;
  left:50%;
  top:7.5vh;
  transform:translateX(-50%);
  width:42vw;
  
  display:flex;
  align-items:center;
  gap:.8vw;
  padding:1.1vh 1vw;
  border:.1vw solid rgba(255,220,120,.75);
  border-radius:.7vw;
  background:rgba(8,16,28,.94);
  box-shadow:0 .8vh 2vw rgba(0,0,0,.58),0 0 1.4vw rgba(255,210,90,.16);
  color:#fff;
  pointer-events:auto;
}
.tutorial-coach.hidden{display:none !important}
.tutorial-coach-text{
  flex:1;
  color:#ffedb0;
  font-size:1.05vw;
  font-weight:800;
  line-height:1.25;
  text-align:center;
}
.tutorial-coach-skip{
  flex:0 0 auto;
  
  padding:.55vh .8vw !important;
  border:.07vw solid rgba(255,255,255,.28) !important;
  border-image:none !important;
  border-radius:.4vw !important;
  background:rgba(255,255,255,.08) !important;
  color:#cbd5e1 !important;
  font-size:.78vw !important;
  text-transform:none !important;
  cursor:pointer;
}
.tutorial-coach-skip:hover{background:rgba(255,255,255,.16) !important;filter:none !important}

button:not(:disabled),
a,
[role="button"],
select,
input[type="range"],
input[type="checkbox"],
.race-card,
.level-card:not(.locked),
.save-slot:not(.disabled),
.objectCard,
.catalog-card,
.slotRemove,
.addSlotBtn,
.cityClose,
.level-toggle span,
.user-level-play:not(.invalid),
.user-level-delete{
  cursor: url('../assets/cursors/cursor_pointer.webp') 3 2, pointer !important;
}

button:disabled,
select:disabled,
input:disabled,
textarea:disabled,
[aria-disabled="true"],
.level-card.locked,
.save-slot.disabled,
.user-level-play.invalid{
  cursor: url('../assets/cursors/cursor_not_allowed.webp') 16 16, not-allowed !important;
}

.editor-page input:not([type="checkbox"]):not([type="range"]),
.editor-page textarea{
  cursor: url('../assets/cursors/cursor_text.webp') 16 16, text !important;
}

.editorToolWindow,
.editorToolWindow .editorToolWindowHeader,
.editorToolWindow .editorToolWindowHeader strong,
.editorToolWindow .editorToolWindowBody,
.teamsPanel,
.teamsPanel #teamsTitle,
.cityPanel{
  cursor: url('../assets/cursors/cursor_main.webp') 3 3, auto;
}
.editorToolWindow button:not(:disabled),
.editorToolWindow .objectCard,
.teamsPanel button:not(:disabled),
.cityPanel button:not(:disabled){
  cursor: url('../assets/cursors/cursor_pointer.webp') 3 2, pointer !important;
}

body.editor-page .editorToolWindowHeader strong,
body.editor-page .editorToolWindowBody strong,
body.editor-page .editor-level-main strong,
body.editor-page .editor-level-row strong,
body.editor-page .cityPanel strong,
body.editor-page .teamsPanel strong{
  display:inline-block;
  font-size:1.15vw !important;
  line-height:1.15;
  font-weight:900;
}

body.editor-page #toolWindow-deco .editorToolWindowBody{
  
  
  overflow-x:hidden !important;
  overflow-y:auto !important;
  scrollbar-color:#d9a32c rgba(255,255,255,.08);
  scrollbar-width:thin;
}
body.editor-page #toolWindow-deco .editorToolWindowBody::-webkit-scrollbar{
  width:.7vw;
  
}
body.editor-page #toolWindow-deco .editorToolWindowBody::-webkit-scrollbar-track{
  background:rgba(255,255,255,.06);
  border:.06vw solid rgba(255,220,120,.14);
  border-radius:1vw;
}
body.editor-page #toolWindow-deco .editorToolWindowBody::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#ffe7a0,#ffd766 45%,#d9a32c);
  border:.08vw solid rgba(20,26,42,.75);
  border-radius:1vw;
  box-shadow:inset 0 0 .4vw rgba(255,255,255,.45),0 0 .5vw rgba(255,210,90,.35);
}
body.editor-page #toolWindow-deco .editorToolWindowBody::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#fff3c8,#ffe084 45%,#e8b53c);
}

body.editor-page #toolWindow-object .editorToolWindowBody{
  
  
  overflow-x:hidden !important;
  overflow-y:auto !important;
  scrollbar-color:#d9a32c rgba(255,255,255,.08);
  scrollbar-width:thin;
}
body.editor-page #toolWindow-object .editorToolWindowBody::-webkit-scrollbar{
  width:.7vw;
  
}
body.editor-page #toolWindow-object .editorToolWindowBody::-webkit-scrollbar-track{
  background:rgba(255,255,255,.06);
  border:.06vw solid rgba(255,220,120,.14);
  border-radius:1vw;
}
body.editor-page #toolWindow-object .editorToolWindowBody::-webkit-scrollbar-thumb{
  background:linear-gradient(180deg,#ffe7a0,#ffd766 45%,#d9a32c);
  border:.08vw solid rgba(20,26,42,.75);
  border-radius:1vw;
  box-shadow:inset 0 0 .4vw rgba(255,255,255,.45),0 0 .5vw rgba(255,210,90,.35);
}
body.editor-page #toolWindow-object .editorToolWindowBody::-webkit-scrollbar-thumb:hover{
  background:linear-gradient(180deg,#fff3c8,#ffe084 45%,#e8b53c);
}

body.editor-page .editorToolWindow,
body.editor-page .editorToolWindowBody{
  flex:1 1 auto !important;
  
}
body.editor-page .editor-settings-modal,
body.editor-page .level-settings-modal,
body.editor-page .editor-levels-modal,
body.editor-page #storedLevelsModal,
body.editor-page #settingsScreen:not(.hidden),
body.editor-page .popup,
body.editor-page .teamsPanel,
body.editor-page .cityPanel,
body.editor-page #ingameMessageModal{
  overflow-x:hidden !important;
}

body.editor-page,
body.editor-page button,
body.editor-page input,
body.editor-page select,
body.editor-page textarea,
body.editor-page .editorToolWindow,
body.editor-page .editorToolWindow *{
  font-family: var(--aw-font-stack) !important;
}

.author-splash{
  position:fixed;
  inset:0;
  z-index:10000;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#000;
  opacity:1;
}
.author-splash-svg{
  width:76vw;
  height:18vh;
  overflow:visible;
}
.author-splash-outline,
.author-splash-fill{
  font-family: var(--aw-font-stack);
  font-size:7.2vw;
  font-weight:800;
  letter-spacing: calc(.04em * var(--aw-ls-on));
}
.author-splash-outline{
  fill:none;
  stroke:#d9b86f;
  stroke-width:1.4;
  stroke-linejoin:round;
  paint-order:stroke;
  stroke-dasharray:900;
  stroke-dashoffset:900;
  filter:drop-shadow(0 0 1vw rgba(255,211,118,.38));
  animation:authorSplashDraw 2.35s cubic-bezier(.2,.72,.2,1) forwards;
}
.author-splash-fill{
  fill:#f3e4bd;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  filter:drop-shadow(0 0 .8vw rgba(255,221,150,.32));
  animation:authorSplashFill .48s ease 1.92s forwards;
}
@keyframes authorSplashDraw{
  0%{stroke-dashoffset:900;opacity:.25}
  8%{opacity:1}
  100%{stroke-dashoffset:0;opacity:1}
}
@keyframes authorSplashFill{
  0%{opacity:0;clip-path:inset(0 100% 0 0)}
  100%{opacity:1;clip-path:inset(0 0 0 0)}
}
.author-splash-exit{
  opacity:0;
  transition:opacity .42s ease;
}
#loadingScreen.loading-pending{
  visibility:hidden;
  opacity:0;
  pointer-events:none;
}
#loadingScreen.loading-visible{
  visibility:visible;
  opacity:1;
}

.author-splash-letter-outline,
.author-splash-letter-fill{
  font-family: var(--aw-font-stack);
  font-size:7.2vw;
  font-weight:800;
  letter-spacing: calc(.04em * var(--aw-ls-on));
}
.author-splash-letter-outline{
  fill:none;
  stroke:#d9b86f;
  stroke-width:1.4;
  stroke-linejoin:round;
  paint-order:stroke;
  stroke-dasharray:180;
  stroke-dashoffset:180;
  filter:drop-shadow(0 0 1vw rgba(255,211,118,.38));
  animation:authorSplashLetterDraw .28s cubic-bezier(.2,.72,.2,1) both;
  animation-delay:calc(var(--letter-index) * .23s);
}
.author-splash-letter-fill{
  fill:#f3e4bd;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  filter:drop-shadow(0 0 .8vw rgba(255,221,150,.32));
  animation:authorSplashLetterFill .18s ease both;
  animation-delay:calc(var(--letter-index) * .23s + .2s);
}
@keyframes authorSplashLetterDraw{
  0%{stroke-dashoffset:180;opacity:.2}
  100%{stroke-dashoffset:0;opacity:1}
}
@keyframes authorSplashLetterFill{
  0%{opacity:0;clip-path:inset(0 100% 0 0)}
  100%{opacity:1;clip-path:inset(0 0 0 0)}
}

.author-splash-letter-outline{
  display:none !important;
}
.author-splash-letter-fill{
  fill:#f3e4bd;
  stroke:none;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  animation:authorSplashLetterFillSmooth .44s cubic-bezier(.25,.75,.25,1) both;
  animation-delay:calc(var(--letter-index) * .28s);
  will-change:clip-path,opacity;
}
@keyframes authorSplashLetterFillSmooth{
  0%{opacity:0;clip-path:inset(0 100% 0 0)}
  18%{opacity:1}
  100%{opacity:1;clip-path:inset(0 0 0 0)}
}

.author-splash-letter-fill{
  animation:none !important;
  animation-delay:0s !important;
  opacity:0;
  clip-path:inset(0 100% 0 0);
}

.author-splash-letter-fill{
  transition:clip-path .03s linear,opacity .03s linear;
  filter:none !important;
}

.author-splash-letter-fill{
  will-change:auto;
}

.author-splash-video{
  display:none;
  width:100vw;
  height:100vh;
  object-fit:contain;
  background:#000;
  pointer-events:none;
}
.author-splash.video-mode .author-splash-video{
  display:block;
}
.author-splash.video-mode .author-splash-svg{
  display:none;
}

.author-splash-video{
  display:none !important;
}
.author-splash-svg{
  width:88vw;
  height:28vh;

  overflow:visible;
}
.author-splash-title,
.author-splash-credit{
  fill:#f3e4bd;
  stroke:#b68a43;
  stroke-width:.7;
  paint-order:stroke;
  opacity:0;
  clip-path:inset(0 100% 0 0);
  transform:translateY(.35vh);
  transform-origin:center;
  transition:clip-path .24s ease,opacity .24s ease,transform .24s ease,filter .24s ease;
  font-family: var(--aw-font-stack);
  font-weight:800;
  letter-spacing: calc(.04em * var(--aw-ls-on));
}

.author-splash-title{
  font-size:6.6vw;
}
.author-splash-credit{
  font-size:3.2vw;
  letter-spacing: calc(.08em * var(--aw-ls-on));
}

.author-splash-title-glow,
.author-splash-credit-glow{
  fill:none;
  stroke:#ffd76a;
  stroke-width:2.6;
  paint-order:stroke;
  opacity:0;
  clip-path:inset(0 0 0 0);
  pointer-events:none;
}

.author-splash-title-glow{font-size:6.6vw}
.author-splash-credit-glow{font-size:3.2vw;letter-spacing: calc(.08em * var(--aw-ls-on))}

.author-splash-title-glow,
.author-splash-credit-glow{
  opacity:.78;
  filter:blur(.32vw) drop-shadow(0 0 1.6vw rgba(255,193,65,.72));
  animation:authorSplashGlowFade 4.8s ease-out forwards;
}
@keyframes authorSplashGlowFade{
  0%{opacity:.78}
  72%{opacity:.34}
  100%{opacity:0}
}

.author-splash-title-glow,
.author-splash-credit-glow{
  stroke:#ffd45c;
  stroke-width:8;
  opacity:.95;
  filter:drop-shadow(0 0 1.4vw rgba(255,190,50,.9));
  animation:authorSplashGlowFadeStrong 6s ease-out forwards;
}
@keyframes authorSplashGlowFadeStrong{
  0%{opacity:.95}
  65%{opacity:.48}
  100%{opacity:0}
}

.author-splash-title-glow,
.author-splash-credit-glow{
  font-family: var(--aw-font-stack);
  font-weight:800;
  letter-spacing: calc(.04em * var(--aw-ls-on));
  stroke-width:3.5;
  stroke-linejoin:round;
  paint-order:stroke;
}
.author-splash-credit-glow{
  letter-spacing: calc(.08em * var(--aw-ls-on));
}

.author-splash-title,
.author-splash-credit{
  opacity:1;
  animation:authorSplashTextFade 6s ease-out forwards;
}
@keyframes authorSplashTextFade{
  0%{opacity:1}
  65%{opacity:.58}
  100%{opacity:0}
}

#loadingScreen{
  --aw-loading-background:none;
  overflow:hidden;
}
.loading-background-layer{
  position:absolute;
  inset:0;
  z-index:0;
  background-image:var(--aw-loading-background);
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  opacity:.32;
  pointer-events:none;
}
#loadingScreen > :not(.loading-background-layer){
  position:relative;
  z-index:1;
}
.loading-progress-wrap{
  position:absolute !important;
  left:50%;
  bottom:5vh;
  transform:translateX(-50%);
  width:70vw;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1vh;
}
.loading-progress-track{
  width:100%;
  height:1.25vh;
  overflow:hidden;
  border:.12vw solid rgba(255,220,120,.6);
  border-radius:1vw;
  background:rgba(0,0,0,.58);
  box-shadow:0 0 1.2vw rgba(255,194,65,.22),inset 0 0 .5vw rgba(0,0,0,.7);
}
.loading-progress-bar{
  width:0%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#a96b1f,#ffdb72 45%,#fff0b0 70%,#d9982c);
  box-shadow:0 0 .9vw rgba(255,204,82,.62),inset 0 .12vh .2vw rgba(255,255,255,.7);
  transition:width .24s ease;
}
.loading-progress-text{
  color:#ffdf8a;
  font-size:1.05vw;
  font-weight:900;
  line-height:1;
  text-shadow:0 0 .7vw rgba(255,204,82,.48);
}

#loadingScreen{
  --aw-loading-background:url('../assets/downloadScreen/oblozhka_16x9.webp');
}
.loading-progress-track{
  position:relative;
  height:2.35vh;
  border:0;
  border-radius:.5vw;

  background:none;
  box-shadow:none;
}
.loading-progress-bar{
  position:relative;
  height:100%;
  
  overflow:hidden;
  border-radius:.5vw;
  background:none;
  box-shadow:none;
  transition:width .24s ease;
}
.loading-progress-image{
  position:absolute;
  left:0;
  top:0;
  width:70vw;
  height:100%;
  background:url('../assets/downloadScreen/loading_progress_bar.webp') left center/100% 100% no-repeat;
  pointer-events:none;
}

.loading-progress-track{
  height:auto;
  
  aspect-ratio:1209 / 103;
}
.loading-progress-bar{
  height:100%;
}
.loading-progress-image{
  width:70vw;
  height:100%;
  background-size:100% 100%;
}

.menu-background-layer,
.loading-background-layer{
  position:absolute;
  inset:-4vh -4vw;
  z-index:0;
  background-position:center;
  background-repeat:no-repeat;
  background-size:cover;
  transform:translate(0,0);
  transform-origin:center;
  transition:none !important;
  pointer-events:none;
  backface-visibility:hidden;
}
.menu-background-layer{
  background-image:linear-gradient(rgba(5,9,18,.34),rgba(5,9,18,.48)),url('../assets/downloadScreen/oblozhka_16x9.webp');
}
.loading-background-layer{
  background-image:linear-gradient(rgba(5,9,18,.28),rgba(5,9,18,.42)),var(--aw-loading-background);
}
#menuScreen > :not(.menu-background-layer),
#loadingScreen > :not(.loading-background-layer),
#setup > :not(.menu-background-layer){
  position:relative;
  z-index:1;
}

#setupBackgroundLayer{
  background-image:linear-gradient(rgba(5,9,18,.58),rgba(5,9,18,.74)),url('../assets/downloadScreen/oblozhka_16x9.webp');
}

#setup{overflow:hidden;padding:1vh 1.25vw;}
body.editor-page #setup h1#title{font-size:2.6vw;margin-bottom:1.2vh}
#setup .form{padding:1.7vh 2vw}
#setup .row{margin:.8vh 0}
#setup .actions{margin-top:1.5vh}

.menu-background-layer,
.loading-background-layer{
  transition:none !important;
  transform:translate(0,0);
}

.menu-title-panel{
  position:relative !important;
  z-index:1 !important;
  width:72vw;
  
  margin:0 0 2vh;
  padding:3.3vh 3.6vw 2.2vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:rgba(24,30,38,.18);
  border-style:solid;
  border-color:transparent;
  border-width:2.4vh 2.8vw;
  border-image-source:url('../assets/statics_icons/menu/ui_menu_panel.webp');
  border-image-slice:20% 15% fill;
  border-image-width:1;
  border-image-outset:0;
  border-image-repeat:stretch;
}
.menu-title-panel #titleText,
.menu-title-panel #subtitleText,
.menu-title-panel #totalStarsDisplay{
  position:relative;
  z-index:1;
}

.menu-title-panel{
  width:72vw;
  
  margin-bottom:2vh;
  padding:3.3vh 3.6vw 2.2vh;
  background:transparent !important;
  border:0 !important;
  border-image:none !important;
  isolation:isolate;
}
.menu-title-panel::before{display:none;}
.menu-title-panel #titleText{
  color:#f0c86e;
  text-shadow:
    0 0 .22vw rgba(0,0,0,.95),
    0 0 .75vw rgba(255,206,100,.72),
    0 0 1.8vw rgba(255,174,45,.4);
}
.menu-title-panel #subtitleText{
  color:#b8c8df;
  text-shadow:0 0 .3vw rgba(0,0,0,1),0 0 .9vw rgba(110,170,255,.38);
}
.menu-title-panel #totalStarsDisplay{
  text-shadow:0 0 .3vw rgba(0,0,0,1),0 0 .8vw rgba(255,214,72,.75);
}

.menu-title-panel #titleText{
  color:#e94560;
  text-shadow:
    0 0 .22vw rgba(0,0,0,.95),
    0 0 .8vw rgba(233,69,96,.72),
    0 0 1.8vw rgba(233,69,96,.42);
}

.settings-x-close,
.sdk-modal-close,
.catalog-modal .catalog-close,
.editor-settings-close,
.level-settings-close,
.editor-levels-close,
.level-intro-close,
.tutorial-close,
.cityClose,
.editorToolWindowHeader>button{
  position:static !important;
  right:auto !important;
  top:auto !important;
  transform:none !important;
  margin:0 !important;
  z-index:2 !important;

  position:absolute !important;
  right: calc(var(--aw-pad-x,1.1vw) + 0.9vw) !important;
  top: calc(var(--aw-pad-t,1.2vh) + 0.9vh) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  vertical-align:middle !important;
  padding:0 !important;
  border:.1vw solid rgba(255,150,150,.82) !important;
  border-image:none !important;
  border-radius:50% !important;
  background:#a52c39 !important;
  background-image:none !important;
  color:#fff !important;
  font-family:Arial,sans-serif !important;
  font-size:1.55vw !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-shadow:0 .04vw .08vw rgba(0,0,0,.7) !important;
  box-shadow:0 0 .55vw rgba(180,38,54,.38) !important;
}
.level-intro-close{
  top:calc(var(--aw-pad-t,1.2vh)) !important;
}

.catalog-modal .catalog-close{
  right: calc(var(--aw-pad-x, 1.1vw) + -6vw) !important;
  top: .9vh !important;
}
.settings-x-close:hover,
.sdk-modal-close:hover,
.catalog-modal .catalog-close:hover,
.editor-settings-close:hover,
.level-settings-close:hover,
.editor-levels-close:hover,
.level-intro-close:hover,
.tutorial-close:hover,
.teamsClose:hover,
.cityClose:hover,
.editorToolWindowHeader>button:hover{
  background:#c33b49 !important;
  color:#fff !important;
  filter:none !important;
}

body.editor-page #teamsClose,
body.editor-page #levelSettingsClose,
body.editor-page #storedLevelsClose,
body.editor-page .editor-levels-close,
body.editor-page .editor-settings-close,
body.editor-page .level-settings-close,
body.editor-page .tutorial-close,
body.editor-page .cityClose{
  z-index:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  color:#fff !important;
  background:#a52c39 !important;
  background-image:none !important;
  border:.1vw solid rgba(255,150,150,.82) !important;
  border-image:none !important;
  border-radius:50% !important;
  box-shadow:0 0 .55vw rgba(180,38,54,.38) !important;
  font-family:Arial,sans-serif !important;
  font-weight:900 !important;
  line-height:1 !important;
  filter:none !important;
  opacity:1 !important;
  -webkit-appearance:none;
  appearance:none;
}
body.editor-page #teamsClose{
  position:absolute !important;
  right:1vw !important;
  top:1vh !important;
}
body.editor-page #teamsClose:hover,
body.editor-page #levelSettingsClose:hover,
body.editor-page #storedLevelsClose:hover,
body.editor-page .editor-levels-close:hover,
body.editor-page .editor-settings-close:hover,
body.editor-page .level-settings-close:hover,
body.editor-page .tutorial-close:hover,
body.editor-page .cityClose:hover{
  color:#fff !important;
  background:#c33b49 !important;
  filter:none !important;
}

.author-splash-title,
.author-splash-credit,
.author-splash-title-glow,
.author-splash-credit-glow{
  animation-duration:3.6s !important;
}

.settings-promo-input{
  cursor:url('../assets/cursors/cursor_text.webp') 16 16, text !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  -webkit-user-drag:none !important;
}

#menuScreen > .menu-background-layer{
  isolation:isolate;
  contain:paint;
  will-change:transform;
  backface-visibility:hidden;
}

button:hover,
button:focus,
button:active,
.cityClose:hover,
.slotRemove:hover,
.addSlotBtn:hover,
.uiBtn:hover,
.btn:hover{
  transform:none !important;
  filter:none !important;
  outline:none !important;
}

@media (prefers-reduced-motion: reduce){
.author-splash-outline{animation-duration:.25s}
  .author-splash-fill{animation-delay:0s;animation-duration:.2s}

.author-splash-letter-outline{
    animation-duration:.05s;
    animation-delay:0s;
  }
  .author-splash-letter-fill{
    animation-duration:.05s;
    animation-delay:0s;
  }

.author-splash-letter-fill{
    animation-duration:.05s;
    animation-delay:0s;
  }

.author-splash-title-glow,
  .author-splash-credit-glow{
    animation-duration:.2s;
  }

.author-splash-title-glow,
  .author-splash-credit-glow{animation-duration:.25s}

.author-splash-title,
  .author-splash-credit{animation-duration:.25s}
}

.editorToolWindowHeader>button{
  position:static !important;
  right:auto !important;
  top:auto !important;
  transform:none !important;
  margin:0 !important;
  z-index:2 !important;
}

.editor-tutorial-layer{
  position:fixed;
  inset:0;
  z-index:1000000;
  pointer-events:none;
  user-select:none;
}
.editor-tutorial-shade{
  position:fixed;
  display:block;
  background:rgba(3,7,15,.78);
  pointer-events:auto;
  touch-action:none;
}
.editor-tutorial-target-blocker{
  position:fixed;
  pointer-events:auto;
  touch-action:none;
  background:transparent;
}
.editor-tutorial-spotlight{
  position:fixed;
  pointer-events:none;
  border:0.2vw solid #ffe071;
  border-radius:.55rem;
  box-shadow:0 0 0 0.2vw rgba(59,38,8,.65),0 0 1.5rem rgba(255,212,80,.78);
  transition:left .14s ease,top .14s ease,width .14s ease,height .14s ease;
}
.editor-tutorial-card{
  position:fixed;
  display:flex;
  flex-direction:column;
  gap:.65rem;
  width:25vw;
  
  box-sizing:border-box;
  padding:.9rem 1rem;
  overflow:auto;
  pointer-events:auto;
  color:#eff5ff;
  background:linear-gradient(145deg,rgba(31,40,61,.99),rgba(13,18,31,.99));
  border:0.1vw solid rgba(255,222,113,.9);
  border-radius:.72rem;
  box-shadow:0 .8rem 2.4rem rgba(0,0,0,.62);
  font-family:var(--aw-font-stack,Arial,sans-serif);
  font-size:1vw;
  line-height:1.35;
}
.editor-tutorial-card[hidden]{display:none}
.editor-tutorial-progress{
  color:#f9d96b;
  font-size:.84em;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
.editor-tutorial-title{
  margin:0;
  color:#fff3bd;
  font-size:1.16em;
  line-height:1.16;
}
.editor-tutorial-text{
  margin:0;
  color:#d8e2ef;
  overflow-wrap:anywhere;
}
.editor-tutorial-actions{
  display:flex;
  align-items:center;
  gap:.45rem;
  margin-top:.15rem;
}
.editor-tutorial-actions button,
.editor-tutorial-close{
  
  border:0.1vw solid rgba(255,235,159,.72);
  border-radius:.42rem;
  padding:.42rem .72rem;
  color:#fff;
  background:#2a3854;
  font:inherit;
  font-weight:800;
  line-height:1.08;
  cursor:pointer;
}
.editor-tutorial-actions button:hover,
.editor-tutorial-actions button:focus-visible,
.editor-tutorial-close:hover,
.editor-tutorial-close:focus-visible{
  outline:none;
  background:#435b83;
  border-color:#fff0a3;
}
.editor-tutorial-next{
  color:#1b1b16 !important;
  background:#ffe071 !important;
  border-color:#fff0a3 !important;
}
.editor-tutorial-back{margin-left:auto}
.editor-tutorial-skip{color:#d2d9e5 !important;background:transparent !important;border-color:rgba(210,217,229,.48) !important}
.editor-tutorial-card .editor-tutorial-close{
  position:absolute;
  top:.55rem;
  right:.55rem;
  
  width:2.2rem;
  height:2.2rem;
  
  padding:0!important;
  border:0.1vw solid rgba(255,90,90,.55)!important;
  border-radius:50%!important;
  background:rgba(120,20,30,.78)!important;
  color:#fff!important;
  font-size:1.15rem;
  font-weight:900;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.editor-tutorial-card .editor-tutorial-close:hover,
.editor-tutorial-card .editor-tutorial-close:focus-visible{
  background:#c0392b!important;
  border-color:#ffb0b0!important;
  outline:none;
}
.editor-tutorial-card h3{padding-right:2.4rem}
@media (orientation:landscape){
  .editor-tutorial-card{padding:.65rem .8rem;gap:.42rem;}
  .editor-tutorial-actions button{padding:.28rem .55rem}
  .editor-tutorial-card .editor-tutorial-close{width:1.8rem;height:1.8rem;font-size:1rem;top:.4rem;right:.4rem}
}

.level-intro-overlay{

  background:transparent !important;
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
}
.level-intro-content{

  background:#1a1f22 !important;
  box-shadow:0 1.2vh 4vw rgba(0,0,0,.48),0 0 2.2vw rgba(255,211,105,.13) !important;
  isolation:isolate;
}

.level-intro-content > .aw-modal-frame > .aw-modal-frame-canvas{
  background-image:var(--aw-modal-center-img) !important;
  background-color:#1a1f22 !important;
}
.level-intro-section{
  background:rgba(4,10,17,.36);
  border-color:rgba(255,215,0,.38);
  box-shadow:inset 0 0 1.25vw rgba(0,0,0,.16);
  -webkit-backdrop-filter:blur(.1vw);
  backdrop-filter:blur(.1vw);
}
.level-intro-star-item{
  background:rgba(82,61,11,.22);
  text-shadow:0 .08vw .16vw rgba(0,0,0,.9);
}
.level-intro-player-item{
  background:rgba(3,8,14,.28);
  text-shadow:0 .08vw .16vw rgba(0,0,0,.9);
}
.level-intro-player-details{color:#c1c8d4}
.level-intro-btn:disabled{
  cursor:wait;
  pointer-events:none;
  filter:saturate(.55) brightness(.82);
  transform:none;
}

.level-intro-loading{
  display:none;
  width:100%;
  
  padding:2.8vh 2.2vw 2.35vh;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#f2f6ff;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 50% 25%,rgba(255,211,105,.15),transparent 43%),
    linear-gradient(145deg,rgba(8,17,28,.30),rgba(5,10,17,.54));
  border:.08vw solid rgba(255,218,121,.28);
  border-radius:.7vw;
  box-shadow:inset 0 0 2vw rgba(0,0,0,.25),0 .4vh 1.5vw rgba(0,0,0,.22);
}
.level-intro-loading[hidden]{display:none !important}
.level-intro-content.is-loading > :not(.aw-modal-frame):not(.level-intro-loading){
  display:none !important;
}
.level-intro-content.is-loading .level-intro-loading:not([hidden]){
  display:flex;
  animation:levelIntroLoadingIn .22s ease-out both;
}
@keyframes levelIntroLoadingIn{
  from{opacity:0;transform:translateY(.7vh)}
  to{opacity:1;transform:translateY(0)}
}
.level-intro-loading-emblem{
  position:relative;
  width:6.7vw;
  height:6.7vw;
  
  
  display:grid;
  place-items:center;
  margin:0 0 1.15vh;
  border-radius:50%;
  background:radial-gradient(circle,rgba(44,31,13,.74) 0 39%,rgba(255,216,110,.10) 40% 100%);
  box-shadow:0 0 1.4vw rgba(255,207,83,.25),inset 0 0 1vw rgba(0,0,0,.56);
}
.level-intro-loading-ring{
  position:absolute;
  inset:.25vw;
  border:.16vw solid rgba(255,224,140,.22);
  border-top-color:#ffdc78;
  border-right-color:#bc7b25;
  border-radius:50%;
  animation:levelIntroLoaderSpin 1.05s linear infinite;
}
.level-intro-loading-mark{
  position:relative;
  z-index:1;
  color:#ffe7a0;
  font-size:2.45vw;
  line-height:1;
  text-shadow:0 .13vw .24vw #000,0 0 .78vw rgba(255,204,77,.52);
}
@keyframes levelIntroLoaderSpin{to{transform:rotate(360deg)}}
.level-intro-loading-kicker{
  color:#e6bc62;
  font-size:.92vw;
  font-weight:900;
  line-height:1.15;
  letter-spacing:calc(.11vw * var(--aw-ls-on));
  text-transform:uppercase;
}
.level-intro-loading-title{
  margin-top:.45vh;
  color:#fff0bd;
  font-size:2vw;
  font-weight:900;
  line-height:1.15;
  text-shadow:0 .1vw .2vw rgba(0,0,0,.9),0 0 .8vw rgba(255,203,73,.24);
}
.level-intro-loading-level-name{
  
  margin-top:.5vh;
  color:#d5e7f7;
  font-size:1.3vw;
  font-weight:800;
  line-height:1.25;
  overflow-wrap:anywhere;
  text-shadow:0 .08vw .16vw rgba(0,0,0,.9);
}
.level-intro-loading-progress-wrap{
  width:31vw;
  margin-top:2.25vh;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.72vh;
}
.level-intro-loading-progress-track{
  width:100%;
  height:1.25vh;
  overflow:hidden;
  border:.08vw solid rgba(255,223,136,.62);
  border-radius:1vw;
  background:rgba(0,0,0,.54);
  box-shadow:inset 0 .12vh .35vw rgba(0,0,0,.72),0 0 .75vw rgba(255,207,79,.16);
}
.level-intro-loading-progress-bar{
  width:0%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,#99601c,#ffd96f 46%,#fff0b2 72%,#d38925);
  box-shadow:0 0 .85vw rgba(255,205,75,.62),inset 0 .12vh .2vw rgba(255,255,255,.65);
  transition:width .28s ease;
}
.level-intro-loading-progress-text{
  color:#ffe2a0;
  font-size:1vw;
  font-weight:900;
  line-height:1;
  font-variant-numeric:tabular-nums;
  text-shadow:0 0 .65vw rgba(255,204,82,.42);
}
.level-intro-loading-status{
  
  
  margin-top:.65vh;
  color:#c8d5e5;
  font-size:1.08vw;
  font-weight:700;
  line-height:1.3;
  text-shadow:0 .07vw .14vw rgba(0,0,0,.9);
}
@media (prefers-reduced-motion:reduce){
  .level-intro-loading-ring{animation:none}
  .level-intro-content.is-loading .level-intro-loading:not([hidden]){animation:none}
}

input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
textarea,
select,
[contenteditable="true"]{
  -webkit-user-select:text !important;
  user-select:text !important;
  -webkit-touch-callout:default;
  touch-action:manipulation;
  pointer-events:auto;
}

.settings-promo-input,
.editor-page .editor-prompt-input,
.editor-page input,
.editor-page textarea{
  -webkit-user-select:text !important;
  user-select:text !important;
  touch-action:manipulation;
}



.star-condition-item:has(.star-condition-checkbox:checked){
  background: rgba(255,215,0,.12);
  border-color: rgba(255,215,0,.55);
}



.level-intro-biome{
  margin: 0 0 2vw;
  padding: 1.1vw 1.2vw;
  border: .12vw solid rgba(122,222,255,.4);
  border-radius: .7vw;
  background: linear-gradient(140deg,rgba(30,120,150,.22),rgba(20,60,90,.18));
  text-align: left;
}
.level-intro-biome[hidden]{display: none !important}
.level-intro-biome-title{
  margin-bottom: .8vw;
  font-size: 1.5vw;
  color: #7ad9ff;
  text-transform: uppercase;
}
.level-intro-biome-item{
  padding: .45vw .2vw;
  font-size: 1.15vw;
  line-height: 1.35;
  color: #e6f6ff;
}
.level-intro-biome-item + .level-intro-biome-item{
  border-top: .05vw solid rgba(255,255,255,.08);
}


.teamsPanel{

  border: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 1vh 4vw rgba(0,0,0,.65);
}
.teamsScroll{
  flex: 1 1 auto;
  
  overflow-y: auto;
  overflow-x: hidden;

  padding-top:1.2vh;

  scrollbar-width: none;
  -ms-overflow-style: none;
}
.teamsScroll::-webkit-scrollbar{
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

.teamsPanel .teamsHeader{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1vh;
}
.teamsPanel .teamsHeader h3{
  margin: 0 !important;
  padding: 0 3vw;
  line-height: 1.1;
}

.teamsPanel .teamsHeader #teamsClose,
body.editor-page .teamsPanel .teamsHeader #teamsClose{
  position: absolute !important;
  right: .4vw !important;

  top: auto !important;
  bottom: auto !important;
  transform: none !important;
  margin: 0 !important;
}

.other-games-grid.is-loading{
  display: flex;
  align-items: center;
  justify-content: center;
  
}
.other-games-loading{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.4vh;
  color: #cbd5e5;
  font-size: 1.15vw;
}
.other-games-spinner{
  width: 2.6vw;
  height: 2.6vw;
  
  
  border: .28vw solid rgba(255,220,120,.22);
  border-top-color: #ffdd66;
  border-radius: 50%;
  animation: aw-other-games-spin .9s linear infinite;
}
@keyframes aw-other-games-spin{to{transform: rotate(360deg)}}
.sdk-modal-panel > h2{
  height:3.4vh !important;
  padding-right: 4vw !important;
  padding-left: 4vw !important;
}



.cityPanel .cityDeleteBtn{
  width: 100%;
  padding: 1vh .8vw;
  border: .1vw solid rgba(255,120,120,.5) !important;
  border-radius: .5vw;
  background: linear-gradient(180deg,#8d2530,#5d1720) !important;
  color: #ffe0e0 !important;
  font-weight: 800;
}
.cityPanel .cityDeleteBtn:hover{background: linear-gradient(180deg,#a52c39,#6d1a24) !important}





#menuScreen > .admin-stats-panel{position:absolute}
.admin-stats-panel{position:absolute;left:3vw;top:25vh;width:16vw;z-index:40;background:rgba(10,14,26,.84);border:0.1vw solid rgba(255,216,74,.45);border-radius:1vw;padding:1vw 1.2vw;box-shadow:0 0.4vw 1.8vw rgba(0,0,0,.45);font-family:inherit}
.admin-stats-title{color:#ffd84a;font-size:1.3vw;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:0.8vw}
.admin-stats-rows{display:flex;flex-direction:column;gap:0.4vw;overflow:auto}
.admin-stats-row{display:flex;justify-content:space-between;gap:1vw;font-size:1.25vw;color:#cfd8ea}
.admin-stats-row b{color:#fff;font-weight:700;text-align:right;word-break:break-all}
.admin-stats-refresh{margin-top:0.9vw;width:100%;padding:0.6vw 0;font-size:1.3vw;font-weight:700;color:#fff;background:linear-gradient(135deg,#3a4a7a,#26324f);border:0.1vw solid rgba(255,255,255,.18);border-radius:0.7vw;cursor:pointer;text-transform:uppercase}
.admin-stats-refresh:hover{background:linear-gradient(135deg,#46589a,#2c3a5e)}
.admin-stats-panel.hidden{display:none!important}

.admin-tools-sep{height:0.1vw;background:rgba(255,216,74,.28);margin:1vw 0 0.8vw}
.admin-tools-toggle{display:flex;align-items:center;gap:0.7vw;font-size:1.25vw;color:#cfd8ea;cursor:pointer;margin-bottom:0.6vw;line-height:1.25}
.admin-tools-toggle input{width:1.4vw;height:1.4vw;accent-color:#ffd84a;cursor:pointer;flex:0 0 auto}
.admin-tools-note{font-size:1.15vw;color:#8fa0bd;margin:0.4vw 0 0.2vw;word-break:break-all;}
.admin-tools-btn{margin-top:0.6vw;text-transform:none;font-size:1.25vw}
.admin-tools-btn[disabled]{opacity:.55;cursor:default}

#editorOverlay{position: fixed;inset: 0;z-index: 10000;background: #0a0a1a;display: flex}
#editorOverlay.hidden{display: none}
#editorOverlay iframe{width: 100%;height: 100%;border: 0;display: block}

html:has(body.editor-page),
body.editor-page{
  background:#0a0a1a;
}
body.editor-page #canvas{
  background:transparent !important;
}

body.editor-page .editor-panel-toggle{
  position:fixed !important;
  z-index:80 !important;
  display:none;
  align-items:center !important;
  justify-content:center !important;
  width:2.25vw !important;
  height:2.25vw !important;
  
  
  padding:0 !important;
  border:.08vw solid rgba(255,220,120,.75) !important;
  border-radius:.45vw !important;
  background:rgba(35,56,84,.94) !important;
  color:#fff !important;
  font:900 1.15vw/1 Arial,sans-serif !important;
  box-shadow:0 .2vh .6vw rgba(0,0,0,.45) !important;
  cursor:pointer !important;
}
body.editor-page .editor-panel-toggle:hover{
  background:rgba(66,99,145,.98) !important;
  filter:none !important;
}
body.editor-page .editor-panel-toggle:active{
  background:rgba(28,44,69,.98) !important;
}

body.editor-page .editor-settings-gear{
  left:1vw !important;
  right:auto !important;
  top:1vh !important;
}

#menuScreen > .aw-company-badge{
    position:absolute !important;

    top:2.2vh;
    right:2vw;
    left:auto;
    bottom:auto;
    margin:0;
    width:auto;
}
.aw-company-badge{
    position:absolute;
    top:2.2vh;
    right:2vw;
    z-index:41;
    padding:1.1vh 1.4vw;
    border-radius:.7vw;
    border:.12vw solid rgba(255,216,74,.85);
    background:linear-gradient(180deg,rgba(60,44,12,.96),rgba(32,23,6,.96));
    color:#ffe9a8;
    font-weight:700;
    font-size:1.35vw;
    line-height:1.15;
    cursor:pointer;
    box-shadow:0 .4vh 1.2vw rgba(0,0,0,.45);
    animation:awCompanyPulse 2.2s ease-in-out infinite;
}
.aw-company-badge:hover{background:linear-gradient(180deg,rgba(82,60,16,.98),rgba(44,32,9,.98));}
@keyframes awCompanyPulse{
    0%,100%{box-shadow:0 .4vh 1.2vw rgba(0,0,0,.45),0 0 0 0 rgba(255,216,74,.45);}
    50%{box-shadow:0 .4vh 1.2vw rgba(0,0,0,.45),0 0 0 .6vw rgba(255,216,74,0);}
}

@media (orientation:portrait){
    #menuScreen > .aw-company-badge{top:2vh;right:2vw;}
    .aw-company-badge{font-size:1.9vh;padding:1.1vh 2.2vw;border-radius:1.2vh;}
}
@media (prefers-reduced-motion: reduce){.aw-company-badge{animation:none;}}

/* Deco area-fill panel (level editor) */
#areaFillPanel{width:27vw;}
.areaAddForm{display:flex;flex-direction:column;gap:.9vh;padding:1.1vh .9vw;margin-bottom:1.2vh;border:.08vw dashed rgba(255,220,120,.45);border-radius:.6vw;background:rgba(255,255,255,.03);}
.areaAddForm label{display:flex;flex-direction:column;gap:.35vh;color:#8fa1ba;font-size:.8vw;font-weight:800;}
.areaAddForm select{width:100%;padding:.65vh .55vw;border-radius:.4vw;border:.08vw solid rgba(255,255,255,.22);background:#111c2d;color:#fff;font-size:.9vw;}
.areaAddForm input[type=range]{width:100%;accent-color:#ffdd66;}
.areaDraftHint{font-size:.82vw;line-height:1.35;color:#ffdd66;text-align:center;padding:.5vh .2vw;}
.areaFormActions{display:flex;gap:.6vw;justify-content:flex-end;}
.areaFormActions button{padding:.65vh 1vw;border-radius:.4vw;border:none;font-weight:800;cursor:pointer;font-size:.85vw;color:#fff;}
.areaFormActions button.primary{background:linear-gradient(135deg,#19b66a,#0d7f49);}
.areaFormActions button.primary:disabled{opacity:.45;cursor:not-allowed;}
.areaFormActions button.neutral{background:#334155;}
.areaRow{display:flex;align-items:center;gap:.7vw;padding:.8vh .7vw;margin-bottom:.7vh;border:.07vw solid rgba(255,255,255,.12);border-radius:.5vw;background:rgba(255,255,255,.045);}
.areaRow .areaIcon{font-size:1.4vw;width:2.2vw;text-align:center;flex:0 0 auto;}
.areaRow .areaInfo{flex:1 1 auto;display:flex;flex-direction:column;gap:.25vh;color:#cbd5e5;font-size:.8vw;}
.areaRow .areaInfo b{color:#fff;font-size:.92vw;}
.areaRow button{flex:0 0 auto;padding:.55vh .65vw;border-radius:.4vw;border:.08vw solid rgba(255,255,255,.25);background:#1b2c22;color:#fff;font-size:.9vw;cursor:pointer;}
.areaRow button:disabled{opacity:.4;cursor:not-allowed;}
.areaRow button.areaDeleteBtn{background:rgba(120,20,30,.65);}



/* itch.io level editor purchase window: same frame and buttons as the game's other windows. */
.aw-license-modal{
  position:fixed;
  inset:0;
  z-index:10000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:2vh 2vw;
  background:rgba(0,0,0,.82);
}
.aw-license-modal.open{display:flex}
.aw-license-modal .aw-secret-code-panel{width:42.5vw}
.aw-license-modal .aw-secret-code-panel p{line-height:1.45}
.aw-license-input{
  display:block;
  width:100%;
  box-sizing:border-box;
  height:5vh;
  margin:0 0 1vh;
  padding:0 .8vw;
  border:.1vw solid rgba(255,220,120,.5);
  border-radius:.45vw;
  background:#101a2a;
  color:#fff;
  outline:none;
  font-size:1vw;
}
.aw-license-input:focus{
  border-color:#ffdd66;
  box-shadow:0 0 1vw rgba(255,210,90,.24);
}
.aw-license-status{
  min-height:1.4em;
  margin:0 0 1.4vh;
  color:#b9c5d8;
  font-size:.95vw;
}
.aw-license-modal .aw-secret-code-actions{margin-bottom:2vh}
.aw-license-modal .aw-secret-code-actions:last-of-type{margin-bottom:0}
.aw-license-modal .aw-license-buy{
  padding:1vh 2vw !important;
  color:#ffe58a !important;
  font-size:1.15vw !important;
  font-weight:800 !important;
}
.aw-license-modal .aw-license-promo{margin:1.6vh 0 0;font-size:.85vw;color:#8f9bb0}
@media (orientation:portrait){
  .aw-license-modal .aw-secret-code-panel{width:86vw}
  .aw-license-modal .aw-secret-code-panel h2{font-size:4.6vw}
  .aw-license-modal .aw-secret-code-panel p,
  .aw-license-input,
  .aw-license-status{font-size:3.4vw}
  .aw-license-input{height:6vh;padding:0 2.4vw}
  .aw-license-modal .aw-secret-code-actions{gap:2vw}
  .aw-license-modal .aw-secret-code-actions button{font-size:3.4vw !important;padding:1vh 3vw !important}
  .aw-license-modal .aw-license-buy{font-size:3.8vw !important}
  .aw-license-modal .aw-license-promo{font-size:2.8vw}
}
