/* Design v3: shared enamel, blue lacquer and cloud-airport artwork. */
:root{--ink:#062566;--muted:#476288;--paper:#fffaf0;color:#062566}
body,body:has(.flight-home),body:has(.game-shell),body:has(.waiting){background:#2588e1 url('../assets/game-sky.webp') center/cover fixed;color:var(--ink)}
.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
button{transition:filter .15s,transform .15s}button:hover:not(:disabled){filter:brightness(1.09)}button:active:not(:disabled){transform:translateY(2px) scale(.99)}button:disabled{filter:grayscale(.75);opacity:.65}button:focus-visible,input:focus-visible,[role=button]:focus-visible{outline:3px solid #ffe780;outline-offset:3px}
.ui-icon{display:inline-block;width:1.4em;height:1.4em;flex:none;background:currentColor;mask:var(--icon) center/contain no-repeat;vertical-align:middle}
.icon-btn{width:clamp(44px,4.2vw,66px);height:clamp(44px,4.2vw,66px);border:2px solid white;background:#f4fcff;color:#074cbf;box-shadow:inset 0 -5px 8px #abcaff,0 3px 5px #00348775;border-radius:50%;padding:8px}
.icon-btn .ui-icon{width:80%;height:80%}
.flight-home{position:relative;width:min(100%,1600px);aspect-ratio:1.6;min-height:600px;max-height:1000px;margin:auto;isolation:isolate}
.home-main{background:url('../assets/home-scene.webp') center/100% 100% no-repeat}
.home-top{position:absolute;left:3%;right:3%;top:2.7%;display:flex;align-items:center;gap:2.3%;z-index:2;color:white}
.pilot-chip{display:flex;align-items:center;gap:18px;background:none;padding:0;color:white;text-align:left;margin-right:auto;min-height:44px}
.pilot-chip strong{display:block;font-size:clamp(18px,2vw,32px)}.pilot-chip small{display:block;font-size:clamp(12px,1.5vw,22px);margin-top:6px}
.pilot-portrait{display:inline-block;flex-shrink:0;width:clamp(55px,7vw,110px);height:clamp(55px,7vw,110px);border-radius:50%;background-image:url('../assets/pilots-atlas.webp');background-size:300% auto;border:4px solid #fff4bb;box-shadow:0 0 0 2px #efb835,0 3px 10px #0043bb,0 0 12px #fff9}
.pilot-0{background-position:0 0}.pilot-1{background-position:50% 0}.pilot-2{background-position:100% 0}.pilot-3{background-position:0 100%}
.gold-pill{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border:2px solid #baf3ff;border-radius:40px;padding:3px 10px;background:#0969c8d6;color:#fff;box-shadow:inset 0 0 12px #8ee9ff,0 3px 5px #0a469b6a;white-space:nowrap}
.gold-pill>b{font-size:clamp(20px,2.1vw,34px);min-width:60px}.gold-disc{width:42px;height:42px;object-fit:contain;transform:scale(1.18)}.gold-pill>span:last-child{color:#ffdc72;width:34px;height:34px}.gold-pill .ui-icon{width:100%;height:100%}
.takeoff-btn,.primary,.buy{border:0;background:transparent url('../assets/button-blue.webp') center/100% 165% no-repeat;color:white;box-shadow:none;border-radius:40px;display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:58px;padding:13px 30px;font:700 26px "PingFang SC","Microsoft YaHei",sans-serif;text-shadow:0 2px 1px #003a94}
.secondary{background:#eef9ff;border:2px solid white;box-shadow:inset 0 -3px 8px #a8c5ef,0 2px 5px #0850ae60;border-radius:28px;color:#11448c}
.takeoff-btn:disabled,.primary:disabled,.buy:disabled{background-color:transparent;color:#d6e3f6}.takeoff-btn .ui-icon{width:1.1em;height:1.1em}
.home-actions{position:absolute;top:64%;left:3%;right:13%;height:20%;display:grid;grid-template-columns:1.55fr 1fr;gap:2.5%}
.battle-card,.daily-card{display:flex;align-items:center;justify-content:center;gap:3%;border:0;background:transparent url('../assets/button-blue.webp') center/100% 165% no-repeat;color:white;padding:2% 4%;text-align:left;min-width:0}
.battle-card>span:nth-child(2),.daily-card>span{flex:1;min-width:0}.battle-card strong{display:block;font:700 clamp(25px,4vw,60px) "PingFang SC","Microsoft YaHei",sans-serif;text-shadow:0 3px #004594}.battle-card small{display:block;font-size:clamp(13px,1.8vw,28px);margin-top:5px}.battle-card>.ui-icon{width:7%;height:45px;flex:none}
.battle-icon{display:block;width:33%;height:110%;background:url('../assets/skills-atlas.webp') var(--art-x) var(--art-y)/300% 200%;border-radius:24%;flex-shrink:0;mix-blend-mode:normal}
.daily-card{background-image:url('../assets/button-gold.webp');color:#633308}.daily-card>img{width:34%;height:100%;object-fit:contain}.daily-card strong{display:block;font-size:clamp(22px,2.7vw,43px)}.daily-card small{display:block;font-size:clamp(14px,1.7vw,26px);margin-top:7px}.daily-card>.ui-icon{width:7%;height:34px}
.home-secondary{position:absolute;top:86%;left:4%;width:49%;height:10%;display:flex;gap:4%}.home-secondary button{display:flex;align-items:center;gap:8%;text-align:left;flex:1;border:2px solid white;border-radius:24px;background:#e6f5ffdd;box-shadow:inset 0 0 10px #fff,0 4px 8px #004fab4d;padding:5px 4%;white-space:nowrap}.home-secondary button>.ui-icon:first-child{width:21%;height:80%;color:#0463cb}.home-secondary button>.ui-icon:last-child{width:10%;color:#3287dc}.home-secondary strong{display:block;font-size:clamp(16px,1.8vw,28px)}.home-secondary small{display:block;font-size:clamp(10px,1.2vw,18px);color:#2865a5;margin-top:3px}
.gallery-fab{position:absolute;right:2%;bottom:5%;width:10%;background:transparent;padding:0;color:white}.gallery-fab>span{display:block;aspect-ratio:1;background:url('../assets/skills-atlas.webp') var(--art-x) var(--art-y)/300% 200%;border:3px solid white;border-radius:50%;box-shadow:0 0 12px #b6ecff}.gallery-fab b{display:block;padding:5px 0;border:2px solid white;border-radius:25px;background:#1c5caed9;font-size:clamp(12px,1.5vw,23px)}
.splash{background:url('../assets/launch-scene.webp') center/100% 100% no-repeat}.splash-top{position:absolute;right:2%;top:3%}.splash>.takeoff-btn{position:absolute;top:75%;left:34%;width:32%;height:13%;font-size:clamp(24px,3.7vw,57px)}.splash-foot{position:absolute;top:91%;width:100%;text-align:center;font-size:clamp(14px,1.6vw,25px);font-weight:700;letter-spacing:.2em}
.page-bar{position:absolute;top:2.5%;left:2%;right:2%;display:flex;align-items:center;gap:2%;color:white}.page-bar h1{font:700 clamp(24px,3vw,48px) "PingFang SC","Microsoft YaHei",sans-serif;text-shadow:0 3px #146dc1}.page-account{margin-left:auto;display:flex;align-items:center;gap:18px}.page-account .pilot-portrait{width:65px;height:65px}.page-heading{position:absolute;top:9%;left:10%;right:10%;text-align:center;color:white}.page-heading h2{font:700 clamp(28px,4.5vw,68px) "PingFang SC","Microsoft YaHei",sans-serif;text-shadow:0 4px #1470bf}.page-heading span{color:#ffe796}
.online-grid{position:absolute;top:21%;left:10%;right:10%;height:54%;display:grid;grid-template-columns:1fr 1fr;gap:3%}.room-entry{position:relative;background:#fff9ee;border:4px solid white;border-radius:36px;box-shadow:0 0 0 4px #1790e7,0 5px 12px #034eaa,inset 0 0 0 3px #d4c6b3;overflow:hidden;text-align:center;display:flex;flex-direction:column;align-items:center;padding:1% 5% 3%}.entry-art{width:115%;height:55%;object-fit:contain;background:#4ca9f3}.room-entry h2,.join-entry label{font-size:clamp(20px,2.7vw,40px);font-weight:800}.room-entry p{font-size:clamp(13px,1.5vw,23px);margin:4px 0 12px;color:#315a91}.room-entry>.takeoff-btn{margin-top:auto;width:90%;min-height:15%;font-size:clamp(20px,2.6vw,39px)}.join-entry .entry-art{height:44%;object-fit:contain}.join-entry form{display:flex;flex-direction:column;width:90%;flex:1;gap:8px}.join-entry input{border:2px solid #79baf3;border-radius:14px;text-align:center;font-size:clamp(20px,2.8vw,40px);font-weight:800;letter-spacing:.18em;background:#fff5d7;min-height:45px;padding:5px}.join-entry form .takeoff-btn{margin-top:auto;font-size:clamp(20px,2.6vw,39px)}
.match-entry{position:absolute;top:79%;left:11%;right:11%;width:78%;height:15%;display:flex;align-items:center;gap:3%;padding:1% 5%;background:#d8f1ffd9;border:3px solid white;border-radius:32px;box-shadow:inset 0 0 15px white,0 3px 6px #0471bc70;text-align:left}.match-entry>img{height:130%;width:20%;object-fit:contain;transform:rotate(35deg)}.match-entry strong{display:block;font-size:clamp(20px,2.5vw,37px)}.match-entry small{display:block;font-size:clamp(12px,1.5vw,22px);margin-top:7px;color:#3c69a0}.match-entry>b{display:flex;align-items:center;margin-left:auto;gap:10px;font-size:clamp(15px,1.9vw,28px)}
/* Lobby: one physical parking platform per seat. */
.waiting{width:min(100%,1600px);max-width:1600px;aspect-ratio:1.6;min-height:600px;position:relative;padding:2%}.topbar{border:0;padding:0;gap:12px;color:white}.brand{font-size:clamp(24px,2.4vw,38px);text-shadow:0 2px #115bb4}.brand span{color:white;font-size:12px}.room-code{margin-left:auto;border:2px solid #c5f4ff;border-radius:20px;background:#076bd2d9;color:white;box-shadow:inset 0 0 9px #9deaff;white-space:nowrap}.waiting .lobby-intro{position:absolute;top:11%;left:15%;right:15%;padding:0;border:0;box-shadow:none;background:transparent;text-align:center}.lobby-intro .eyebrow{font-size:15px;color:white}.waiting .lobby-intro h1{font-size:clamp(22px,3vw,46px);color:white;text-shadow:0 2px #004fa9}.inline-code{font-size:clamp(25px,4.8vw,72px);font-weight:800;letter-spacing:.14em;background:#064dbad9;color:#ffe87d;border:2px solid #c6efff;border-radius:25px;padding:5px 25px;margin:8px auto;display:inline-flex;align-items:center;gap:20px}.lobby-intro p{font-size:clamp(11px,1.2vw,18px);font-weight:700;color:#093d81}.lobby-seats{position:absolute;top:34%;left:2%;right:2%;height:36%;display:grid;grid-template-columns:repeat(4,1fr);gap:2%}.lobby-seat{background:none;border:0;box-shadow:none;padding:0;min-height:0;position:relative;text-align:center}.seat-model{height:90%;width:100%;object-fit:contain;filter:hue-rotate(var(--hue,0deg))}.lobby-seat.empty .seat-model{opacity:.35;filter:grayscale(.6) hue-rotate(var(--hue,0deg))}.lobby-seat>strong{display:block;font-size:clamp(16px,2vw,29px);color:white;text-shadow:0 2px #0c4191}.lobby-seat>span{font-size:clamp(12px,1.3vw,20px);color:#fff4b7;background:#0c53a6c9;border-radius:18px;padding:3px 14px;display:inline-block;margin-top:4px}.waiting-controls{position:absolute;top:78%;left:20%;right:20%;display:flex;flex-direction:column;align-items:center;gap:12px;margin:0}.fill-bots{display:flex;align-items:center;gap:8px;font-size:clamp(13px,1.6vw,24px);font-weight:700}.fill-bots input{width:24px;height:24px;min-height:24px;accent-color:#0a75e6}.waiting-controls .primary{font-size:clamp(22px,3vw,44px);width:70%;min-height:66px}.waiting>.connection{position:absolute;bottom:3%;left:3%;color:#fff;background:#0954bcd9;padding:8px 14px;border:2px solid white;border-radius:25px}
/* Full width modal pages and enamel dialog. */
#modal{width:min(92vw,1420px);max-width:1420px;max-height:92dvh;padding:40px 4%;border:3px solid #caf5ff;border-radius:40px;background:#fff9ee;box-shadow:0 0 0 4px #0b72d1,0 0 0 7px #e7e5d7,0 15px 50px #023a7977;color:#062566;overflow:auto}
#modal::backdrop{background:#0860af50;backdrop-filter:blur(7px)}.modal-header{display:flex;justify-content:center;position:relative;align-items:center;border:0;margin-bottom:28px;padding:0 55px}.modal-header h2{font:700 clamp(24px,3.7vw,54px) "PingFang SC","Microsoft YaHei",sans-serif;color:#084fae;text-align:center}.modal-header .icon-btn{position:absolute;right:0;top:0}.modal-intro{font-size:16px;color:#365e90;line-height:1.7;margin-bottom:22px}.fine-print{text-align:center;font-size:13px;color:#637da1;line-height:1.7;margin-top:16px}.wide{width:60%;margin:20px auto 0;display:flex}.checkin-heading{text-align:center;margin-bottom:22px}.checkin-heading>img{display:none}.checkin-heading p{font-size:clamp(16px,1.8vw,27px);font-weight:700}.checkin-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}.checkin-day{display:flex;flex-direction:column;align-items:center;background:#f4e9dc;border:3px solid white;box-shadow:0 4px 0 #d2c4b2;border-radius:25px;padding:15px 4px 10px;min-width:0;gap:6px}.checkin-day.today{background:#d9f3ff;border-color:#75d5ff;box-shadow:0 0 14px #3fbfff}.checkin-day.claimed{opacity:.6}.checkin-day:last-child{background:#fff0ad;border-color:#f6ca50}.checkin-day small{font-size:clamp(13px,1.8vw,26px);font-weight:800}.checkin-day img{width:100%;height:clamp(65px,9vw,140px);object-fit:contain}.checkin-day b{font-size:clamp(22px,3vw,46px)}.checkin-day>span{font-size:clamp(10px,1.2vw,17px)}
#modal[data-type=hangar],#modal[data-type=gallery]{background:#2583caee;color:white;padding:28px 4%}.hangar-balance{display:flex;gap:10px;align-items:center;color:white}.hangar-balance span{margin-left:auto}.hangar-grid,.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.hangar-item{display:block;background:#fff9ef;border:3px solid white;box-shadow:0 0 0 2px #4aadff,0 5px 9px #054e95;border-radius:25px;overflow:hidden;color:#062566}.hangar-item>.shop-art{width:100%;height:clamp(100px,13vw,200px);border-radius:20px;aspect-ratio:auto;margin:0;background-size:300% auto}.hangar-item>div:last-child{padding:12px 15px}.hangar-item h3{font-size:clamp(19px,2vw,30px)}.hangar-item p{font-size:clamp(11px,1.1vw,17px);min-height:36px;margin:8px 0;line-height:1.4}.hangar-item-footer{display:flex;align-items:center;gap:8px;justify-content:space-between}.stock{font-size:13px;white-space:nowrap}.buy{min-height:44px;font-size:16px;padding:8px 20px;gap:3px}.buy .gold-disc{width:25px;height:25px}.buy b{font-size:16px}.hangar-grid+.fine-print{color:white}.gallery-card{border:3px solid white;border-radius:24px;background:#fff9ef;padding:0 0 14px;overflow:hidden}.gallery-card .shop-art{width:100%;height:170px;aspect-ratio:auto;border-radius:0}.gallery-card strong{font-size:22px}.gallery-card small{display:block;margin-top:5px;font-size:13px}.avatar-options{display:flex;justify-content:center;gap:24px}.avatar-options button{background:none;border:3px solid transparent;border-radius:50%;padding:5px}.avatar-options button.selected{border-color:#ffba37}.profile-form{max-width:650px;margin:auto}.profile-form label{display:block;margin:25px 0 12px;font-weight:700}.profile-form input{border:2px solid #a6cbec;border-radius:16px;font-size:24px}.profile-note{margin:20px auto 0;max-width:650px;color:#637da1;line-height:1.8}.profile-form .wide{width:80%}.rules{columns:2;column-gap:40px;line-height:1.8}.rules h3{font-size:20px;color:#074ca1;margin:0 0 8px}.rules p{font-size:15px;margin-bottom:22px}.choice-row{display:flex;justify-content:center;flex-wrap:wrap;gap:15px}.detail-art{width:190px;height:150px;margin:0 auto 20px}.winner-plane{display:none}.winner-name{font-size:40px;text-align:center;color:#c99016}.standings{max-width:700px;margin:20px auto}.standings>div{padding:15px;background:#e5f2ff;border-radius:18px;margin:8px 0;display:flex;justify-content:space-between}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.shop-item{display:block;background:#fff;border:2px solid #a8dbff;border-radius:20px;padding:10px}.shop-item>.shop-art{width:100%;height:140px;aspect-ratio:auto}.shop-item h3{font-size:23px;margin:12px 0 6px}.shop-item h3 small{font-size:12px}.shop-item p{font-size:13px;line-height:1.6;min-height:40px}.supply-buttons{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.supply-buttons .buy{font-size:11px;min-height:40px;padding:8px 12px}.points-symbol{display:inline-flex;width:24px;color:#24bbf8;vertical-align:middle}.points-symbol .ui-icon{width:100%}.modal-header~.modal-intro{text-align:center}.network-banner{position:absolute;top:8%;left:20%;right:20%;z-index:10;background:#fff0be;border:2px solid #fff;border-radius:16px;padding:10px;text-align:center}.network-banner button{background:none;text-decoration:underline;min-height:44px}
/* Full-screen shared table. Logical geometry and piece hitboxes remain together. */
.game-shell{width:100%;max-width:1600px;height:min(100dvh,1000px);min-height:390px;padding:10px 2%;position:relative;margin:auto;overflow:hidden}.game-shell .topbar{position:absolute;top:1.5%;left:2%;right:2%;height:7%;z-index:5;background:none;margin:0;align-items:center}.game-shell .brand{font-size:clamp(20px,2.6vw,38px)}.game-shell .brand span{font-size:11px}.game-shell .topbar .room-code{font-size:20px;margin-left:auto}.game-shell .topbar .icon-btn{width:48px;height:48px;min-width:44px;min-height:44px}.game-stage{position:absolute;inset:0}.turn-ribbon{position:absolute;top:1.4%;left:35%;right:35%;height:7%;border:2px solid #bfeeff;border-radius:45px;background:#004baac9;box-shadow:inset 0 0 10px #279fff,0 0 8px #c6f6ff;z-index:6;display:flex;justify-content:center;padding:0 15px;margin:0;color:white;gap:8px}.turn-ribbon strong{font:700 clamp(13px,1.7vw,26px) "PingFang SC","Microsoft YaHei",sans-serif;text-align:center}.turn-ribbon strong:before{display:none}.turn-ribbon strong>b{font-size:1.7em;color:#ffe36b}.turn-ribbon .timer{font-size:12px;flex:none}.turn-ribbon .timer .ui-icon{width:14px}
.game-shell .board-wrap{position:absolute;top:7%;left:15%;width:70%;height:76%;max-width:none;filter:drop-shadow(0 9px 8px #00428e80);margin:0;display:flex;align-items:center;justify-content:center}.game-shell .board-wrap>svg{height:100%;width:100%;overflow:visible}.board-pilot{position:absolute;width:14%;display:flex;flex-direction:column;align-items:center;text-align:center;color:white}.board-pilot .pilot-portrait{width:clamp(50px,6.4vw,100px);height:clamp(50px,6.4vw,100px);border-color:var(--player)}.board-pilot>div{border:2px solid white;border-radius:25px;background:#0652a6c9;padding:6px 10px;max-width:100%;box-shadow:0 2px 6px #0058ad}.board-pilot strong{font-size:clamp(12px,1.4vw,21px);display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-pilot strong small{font-size:.7em}.board-pilot span:not(.pilot-portrait){font-size:clamp(11px,1.3vw,19px);display:block;margin-top:3px}.board-pilot.active .pilot-portrait{box-shadow:0 0 0 3px white,0 0 0 6px var(--player),0 0 25px var(--player)}.seat-0{left:1%;bottom:29%}.seat-1{left:1%;top:13%}.seat-2{right:1%;top:13%}.seat-3{right:1%;bottom:29%}
.game-wallet{position:absolute;left:3%;bottom:6%;display:flex;align-items:center;gap:7px;color:white;font-size:20px;flex-wrap:wrap;max-width:27%}.game-wallet>.points-symbol{width:32px}.game-wallet>b{font-size:32px}.game-wallet>span{font-size:15px}.game-wallet .shop-btn{background:#0b65bacc;border:2px solid white;box-shadow:inset 0 0 10px #76c6ff;border-radius:25px;padding:8px 12px;color:white;min-height:55px;min-width:0;font-size:18px;display:flex;align-items:center;gap:5px;margin-left:10px}
.hand-section{position:absolute;bottom:2.5%;left:31%;right:27%;height:18%;margin:0}.hand{display:flex;justify-content:center;gap:10px;height:83%;margin:0}.skill-card{flex:1;max-width:180px;min-width:0;height:100%;border:2px solid #ffeea3;border-radius:17px;box-shadow:0 0 0 2px #7799bd,0 4px 8px #084c9b;background:#fff8e9;padding:0;overflow:hidden;transition:transform .15s;display:flex;flex-direction:column}.skill-card:hover{transform:translateY(-7px)}.skill-card .card-art{display:block;flex:1;width:100%;height:auto;aspect-ratio:auto;background:url('../assets/skills-atlas.webp') var(--art-x) var(--art-y)/300% 200%;border-radius:0;margin:0}.skill-card .card-name{display:block;white-space:nowrap;font:700 clamp(12px,1.4vw,22px) "PingFang SC","Microsoft YaHei",sans-serif;color:#052b68;padding:4px 2px;line-height:1.1;background:#fff4da}.skill-card .card-name small{display:none}.hand-hint{font-size:clamp(10px,1.2vw,17px);color:white;text-align:center;margin-top:8px;text-shadow:0 1px #0054af}.empty-hand{background:#0b5db7b5;border:2px dashed #b3e1ff;border-radius:18px;min-height:55px;color:white;padding:10px 25px}
.game-shell .dice-control{position:absolute;right:2%;bottom:3%;width:16%;height:23%;display:flex;flex-direction:column;gap:0;padding:0;border:0}.dice-model{height:78%;width:100%;object-fit:contain;filter:drop-shadow(0 5px 4px #20599a);margin-bottom:-15px}.game-shell .roll{font-size:clamp(14px,1.7vw,26px);min-height:46px;width:100%;padding:10px 4px}.game-shell .event-line{position:absolute;left:18%;right:18%;bottom:20%;font-size:12px;min-height:22px;padding:3px 8px;background:#ffffffe8;border:1px solid white;border-radius:14px;margin:0;pointer-events:none}
#dice-show{position:fixed;inset:0;z-index:80;display:flex;align-items:center;flex-direction:column;justify-content:center;background:#12539b22;backdrop-filter:blur(4px);color:white;pointer-events:all}#dice-show img{width:min(58vw,650px);height:65vh;object-fit:contain;filter:drop-shadow(0 0 40px #fff6)}#dice-show h2{border:2px solid #96e9ff;border-radius:35px;padding:12px 40px;background:#054ebbe6;font-size:clamp(24px,3vw,48px);box-shadow:0 0 20px #78d5ff;text-align:center}#dice-show p{font-size:25px;font-weight:800;text-shadow:0 3px #1258ba}#dice-show.landed p{font-size:65px;color:#ffe36d}#dice-show.landed img{height:57vh}
#rotate-notice{display:none}.landscape-mode{overflow:hidden}#toast{z-index:150;border:2px solid #d9f5ff;border-radius:20px;background:#063e8de8;color:white;box-shadow:0 5px 20px #004e8a70;font-size:16px}
@media(orientation:portrait) and (max-width:800px){
 .flight-home{aspect-ratio:auto;max-height:none;min-height:100dvh;width:100%;height:100dvh;max-width:500px}.home-main{background-image:url('../assets/home-portrait.webp')}.home-top{left:5%;right:5%;top:3%;gap:10px}.pilot-chip{gap:8px}.pilot-chip strong{font-size:16px}.pilot-chip small{font-size:10px}.pilot-portrait{width:58px;height:58px;border-width:3px}.gold-pill{min-height:40px;gap:1px;padding:2px 6px}.gold-pill>b{font-size:21px;min-width:37px}.gold-disc{width:29px;height:29px}.gold-pill>span:last-child{width:20px;height:20px}.home-top .icon-btn{width:44px;height:44px;min-width:44px;position:absolute;top:65px;right:0}.home-top .icon-btn:last-child{right:52px}.home-actions{top:59%;left:6%;right:6%;height:26%;display:flex;flex-direction:column;gap:5%}.battle-card{height:57%;padding:3% 7%;gap:4%}.battle-icon{width:24%;height:100%;border-radius:18px}.battle-card strong{font-size:36px}.battle-card small{font-size:15px}.battle-card>.ui-icon{height:35px}.daily-card{height:40%;padding:1% 8%;gap:5%}.daily-card>img{width:20%}.daily-card strong{font-size:26px}.daily-card small{font-size:13px;margin-top:3px}.home-secondary{top:87%;left:6%;width:88%;height:8%;gap:4%}.home-secondary button{border-radius:18px;padding:4px 4%;gap:8%}.home-secondary strong{font-size:18px}.home-secondary small{font-size:10px}.gallery-fab{right:5%;bottom:auto;top:45%;width:16%}.gallery-fab b{font-size:12px;padding:2px}.splash{background-size:auto 100%;background-position:center}.splash>.takeoff-btn{left:13%;width:74%;top:78%;height:10%;font-size:32px}.splash-foot{top:91%;font-size:15px}.splash-top{right:5%;top:3%}
 #modal{width:94vw;max-height:92dvh;padding:20px 16px;border-radius:25px}.modal-header{padding:0 40px;margin-bottom:20px}.modal-header h2{font-size:26px}.modal-header .icon-btn{width:40px;height:40px;min-width:40px;min-height:40px}.checkin-heading p{font-size:13px}.checkin-grid{grid-template-columns:repeat(4,1fr);gap:8px}.checkin-day{border-radius:16px;padding:10px 3px;gap:2px}.checkin-day img{height:60px}.checkin-day small{font-size:13px}.checkin-day b{font-size:24px}.checkin-day:last-child{grid-column:3/5}.checkin-day:last-child img{height:60px;width:80px}.wide{width:96%;font-size:24px;min-height:58px}.fine-print{font-size:10px}.hangar-grid,.gallery-grid{grid-template-columns:1fr 1fr;gap:12px}.hangar-item{border-radius:17px}.hangar-item>.shop-art{height:105px}.hangar-item>div:last-child{padding:9px}.hangar-item h3{font-size:18px}.hangar-item p{font-size:11px;min-height:48px}.hangar-item-footer{flex-direction:column;align-items:stretch;gap:4px}.stock{font-size:10px}.hangar-item .buy{min-height:44px;padding:7px;font-size:13px}.hangar-balance{font-size:18px;flex-wrap:wrap}.hangar-balance>span{margin:0;font-size:11px}.avatar-options{gap:10px}.avatar-options .pilot-portrait{width:55px;height:55px}.avatar-options button{padding:2px}.rules{columns:1}.rules h3{font-size:19px}.rules p{font-size:14px}.profile-note{font-size:11px}.gallery-card .shop-art{height:110px}.gallery-card strong{font-size:18px}.gallery-card small{font-size:11px}
 .landscape-mode #rotate-notice{position:fixed;inset:0;z-index:140;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:20px;background:#147fd3 url('../assets/game-sky.webp') center/cover;color:#fff;text-align:center;padding:25px}.landscape-mode #rotate-notice img{width:170px;transform:rotate(90deg)}#rotate-notice h2{font-size:30px;text-shadow:0 2px #004ba5}#rotate-notice p{font-size:15px;line-height:1.7}#rotate-notice .primary{min-width:220px}.landscape-mode #app{visibility:hidden}.landscape-mode #modal{visibility:hidden}
}
@media(orientation:landscape) and (max-height:600px){
 .flight-home,.waiting{width:100%;height:100dvh;min-height:320px;max-height:none;aspect-ratio:auto}.home-top{top:3%;gap:16px}.home-top .pilot-portrait{width:53px;height:53px}.pilot-chip strong{font-size:18px}.pilot-chip small{font-size:11px}.home-top .gold-disc{width:30px;height:30px}.home-top .gold-pill{min-height:40px}.home-top .gold-pill>b{font-size:22px}.home-top .icon-btn,.page-bar .icon-btn{width:44px;height:44px}.page-account .pilot-portrait{width:45px;height:45px}.page-account .gold-pill{min-height:40px}.page-heading{top:12%}.page-heading h2{font-size:32px}.page-bar h1{font-size:26px}.online-grid{top:23%;height:53%;left:14%;right:14%}.room-entry{border-radius:22px;padding-bottom:1%}.entry-art{height:42%}.room-entry h2,.join-entry label{font-size:20px}.room-entry p{font-size:12px;margin:2px 0}.room-entry .takeoff-btn{font-size:20px;min-height:44px;padding:8px 15px}.join-entry .entry-art{height:29%}.join-entry form{gap:2px}.join-entry input{font-size:22px;min-height:36px;padding:2px}.match-entry{height:17%;top:80%;left:14%;width:72%;border-radius:22px}.match-entry strong{font-size:20px}.match-entry small{font-size:11px;margin-top:2px}.match-entry>b{font-size:16px}.waiting .lobby-intro{top:13%}.waiting .lobby-intro h1{font-size:25px}.lobby-intro .eyebrow{display:none}.inline-code{font-size:30px;padding:3px 25px;margin:3px auto}.lobby-intro p{font-size:11px}.lobby-seats{top:34%;height:35%}.lobby-seat>strong{font-size:17px}.lobby-seat>span{font-size:11px;padding:2px 9px}.waiting-controls{top:81%;gap:3px}.fill-bots{font-size:12px}.fill-bots input{width:18px;height:18px;min-height:18px}.waiting-controls .primary{min-height:45px;font-size:24px}.waiting>.connection{font-size:11px;padding:5px 10px;bottom:2%}.game-shell{height:100dvh;min-height:300px;padding:0}.game-shell .topbar{top:1%;height:10%}.game-shell .brand{font-size:22px}.game-shell .brand span{font-size:8px}.game-shell .topbar .room-code{font-size:12px;padding:5px 8px;min-height:36px}.game-shell .topbar .room-code small{display:none}.game-shell .topbar .icon-btn{width:36px;height:36px;min-width:36px;min-height:36px;padding:6px}.game-shell .topbar{gap:8px}.turn-ribbon{left:32%;right:30%;top:1%;height:10%;padding:0 10px}.turn-ribbon strong{font-size:15px}.turn-ribbon .timer{font-size:10px}.game-shell .board-wrap{top:10%;height:73%;left:17%;width:66%}.board-pilot{width:15%}.board-pilot .pilot-portrait{width:47px;height:47px;border-width:2px}.board-pilot>div{padding:3px 7px;border-radius:15px}.board-pilot strong{font-size:12px}.board-pilot span:not(.pilot-portrait){font-size:11px}.seat-0,.seat-3{bottom:31%}.seat-1,.seat-2{top:14%}.game-wallet{left:2%;bottom:7%;gap:4px;max-width:24%;font-size:13px}.game-wallet>b{font-size:23px}.game-wallet>.points-symbol{width:23px}.game-wallet>span{font-size:11px}.game-wallet .shop-btn{margin-left:0;padding:5px 9px;font-size:13px;min-height:44px}.hand-section{left:30%;right:26%;bottom:3%;height:20%}.hand{gap:8px}.skill-card{border-radius:10px}.skill-card .card-name{font-size:12px;padding:3px 1px}.hand-hint{font-size:10px;margin-top:4px}.game-shell .dice-control{height:27%;width:15%;bottom:3%}.dice-model{margin-bottom:-12px}.game-shell .roll{min-height:44px;font-size:15px;padding:6px}.game-shell .event-line{bottom:23%;left:23%;right:23%;font-size:10px;min-height:17px;padding:2px 5px}#modal{padding:18px 3%;max-height:94dvh;border-radius:25px}.modal-header{margin-bottom:12px}.modal-header h2{font-size:27px}.modal-header .icon-btn{width:36px;height:36px;min-height:36px;min-width:36px}.checkin-heading{margin-bottom:10px}.checkin-heading p{font-size:14px}.checkin-grid{gap:8px}.checkin-day{padding:8px 3px;border-radius:15px;gap:2px}.checkin-day img{height:65px}.checkin-day small{font-size:15px}.checkin-day b{font-size:25px}.checkin-day>span{font-size:10px}.wide{margin-top:12px;min-height:48px;font-size:25px}.fine-print{font-size:10px;margin-top:8px}.hangar-item>.shop-art{height:110px}.hangar-item>div:last-child{padding:8px 12px}.hangar-item h3{font-size:18px}.hangar-item p{font-size:11px}.shop-grid{grid-template-columns:repeat(3,1fr)}.shop-item>.shop-art{height:100px}.shop-item h3{font-size:18px}.gallery-card .shop-art{height:120px}.gallery-card strong{font-size:18px}#dice-show h2{font-size:26px;padding:8px 30px}#dice-show img{height:58vh}#dice-show.landed img{height:52vh}#dice-show.landed p{font-size:40px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}}
.enamel-ready .route-fallback{fill:transparent;stroke:none}.enamel-skin{pointer-events:none}.target-ring{cursor:pointer;pointer-events:all;fill:#fff96e88;stroke:#ffe63c;filter:drop-shadow(0 0 5px #fff)}.game-shell .pawn.can-move .move-halo{stroke:#3bdfff;stroke-width:3;opacity:1;filter:drop-shadow(0 0 4px #5bffff)}.game-shell .pawn.selected .move-halo{stroke:#ffe74d;fill:#ffe75145;stroke-width:4}.flight-home{width:min(100vw,160dvh,1600px);min-height:min(600px,100dvh)}
@media(orientation:portrait) and (max-width:800px){.flight-home{width:100%}}
@media(orientation:landscape) and (max-height:600px){.flight-home{width:100%}}

.home-actions .daily-card{background-size:100% 120%;gap:2%;padding:2% 3%}.daily-card strong,.daily-card small{white-space:nowrap}.daily-card strong{font-size:clamp(21px,2.5vw,40px)}.daily-card small{font-size:clamp(12px,1.6vw,24px)}.home-secondary{top:86.5%}.battle-icon{background-size:300% auto}.hand .card-art{background-size:300% auto}.game-shell .board-wrap{left:12%;width:76%;height:76%}.game-shell .topbar{box-shadow:none}.game-wallet{border:2px solid #bceaff;border-radius:27px;background:#085fbbc9;padding:5px 10px;box-shadow:inset 0 0 10px #69c3ff}.game-wallet .shop-btn{border:0;box-shadow:none;background:none}.game-wallet>span{color:white}.lobby-intro{max-width:none;margin:0}.lobby-seats{max-width:none;margin:0}.winner-art{display:block;width:min(55%,530px);max-height:260px;object-fit:contain;margin:0 auto}.primary,.takeoff-btn,.buy{font-weight:900}.checkin-grid+.wide{min-height:80px;font-size:36px}.modal-header{background:url('../assets/button-blue.webp') center/70% 165% no-repeat;min-height:85px;margin-top:-15px}.modal-header h2{color:white;text-shadow:0 3px #003f95;font-weight:900}.modal-header .icon-btn{top:20px}.checkin-day>small{background:#e6d8c8;padding:7px 10px;border-radius:20px}.checkin-day.today>small{background:#0878e8;color:white}.checkin-day:last-child>small{background:#e5a21a;color:white}#modal[data-type=checkin]{background:#fff9ee url('../assets/panel-enamel.webp') center/100% 100% no-repeat;border:0;box-shadow:none;border-radius:0;padding:8% 6% 4%;overflow:visible}#modal[data-type=checkin] .modal-header{margin-top:-5%;background:none;min-height:70px}#modal[data-type=checkin] .modal-header h2{font-size:45px}#modal[data-type=checkin] .checkin-heading{margin-top:18px}
@media(orientation:landscape) and (max-height:600px){.game-shell .board-wrap{left:13%;width:74%;top:8%;height:76%}.game-wallet{left:1%;max-width:25%;padding:3px 8px}.checkin-grid+.wide{min-height:50px;font-size:24px}.modal-header{min-height:50px;margin-top:-5px}.modal-header .icon-btn{top:8px}.winner-art{max-height:140px}.daily-card strong{font-size:23px}.daily-card small{font-size:14px}#modal[data-type=checkin]{padding:5% 5% 2%}#modal[data-type=checkin] .modal-header h2{font-size:28px}#modal[data-type=checkin] .modal-header{min-height:40px}#modal[data-type=checkin] .checkin-heading{margin-top:5px}}
@media(orientation:portrait) and (max-width:800px){.daily-card strong{font-size:26px}.daily-card small{font-size:13px}.modal-header{min-height:60px;margin-top:0;background-size:85% 165%}.modal-header .icon-btn{top:5px}.checkin-grid+.wide{min-height:60px;font-size:25px}#modal[data-type=checkin]{background:#fff9ee;border:3px solid white;box-shadow:0 0 0 4px #0c7bdc;border-radius:28px;padding:20px 14px;overflow:auto}#modal[data-type=checkin] .modal-header{background:url('../assets/button-blue.webp') center/85% 165% no-repeat;margin-top:0;min-height:60px}#modal[data-type=checkin] .modal-header h2{font-size:26px}}
.pawn.skill-target{cursor:pointer}.skill-target-halo{animation:halo-breathe 1s infinite;filter:drop-shadow(0 0 5px #ffc82d)}.target-summary{text-align:center;line-height:1.8;font-size:20px;margin:15px auto}.game-shell .event-line:has(button){pointer-events:auto;min-height:44px;bottom:20%;font-size:15px;gap:12px}.event-line button{background:#0969c7;color:white;border-radius:20px;min-height:38px;padding:5px 15px}
/* Enamel components shared by every detail screen. */
.pilot-portrait{background-image:url('../assets/pilots-v3.webp');background-size:200% 200%;border:0;box-shadow:none}.pilot-0{background-position:0 0}.pilot-1{background-position:100% 0}.pilot-2{background-position:0 100%}.pilot-3{background-position:100% 100%}.skill-card .card-art{background-image:var(--card-image);background-size:cover;background-position:center}.battle-icon{background-image:url('../assets/card-rocket.webp');background-size:cover;background-position:center}.gallery-fab>span{background-image:url('../assets/card-rocket.webp');background-size:cover;background-position:center}.game-connection{position:absolute;bottom:1%;left:2%;font-size:10px;color:#d7f3ff}.event-line{text-align:center;display:flex;align-items:center;justify-content:center}.field-error:empty{display:none}.field-error{color:#a82f23!important;font-size:12px!important;margin:0!important}
.shop-currencies{display:flex;align-items:center;justify-content:flex-end;gap:25px;font-size:22px;margin:-10px 0 15px}.shop-currencies>span{display:flex;align-items:center;gap:8px}.shop-currencies img{width:38px;height:38px;object-fit:contain}.shop-currencies b{font-size:30px}.shop-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:4%}.shop-catalog .modal-intro{font-size:13px;margin:0 0 12px}.shop-select{padding:0 0 10px;border:3px solid #c7d8dd;background:#fff6de;border-radius:20px;overflow:hidden;box-shadow:0 3px 3px #babbb4}.shop-select.chosen{border-color:#f6c348;box-shadow:0 0 0 2px #fff2bd,0 0 15px #e5b743}.shop-select .shop-art{width:100%;height:145px;aspect-ratio:auto}.shop-select strong{display:block;font-size:23px;margin:8px 0}.shop-select small{display:flex;justify-content:center;align-items:center;gap:7px;font-size:16px}.shop-select small img{width:24px;height:24px;object-fit:contain}.shop-detail{border-radius:24px;background:#f5ebd7;box-shadow:inset 0 0 0 2px #e6d9ba;padding:20px;display:flex;flex-direction:column;align-items:center}.shop-detail>.shop-art{width:75%;max-height:210px;border:3px solid white;border-radius:25px;box-shadow:0 0 0 2px #edbb48}.shop-detail h3{font-size:32px;margin:14px 0}.shop-detail h3 small{display:block;text-align:center;color:#7d8b9d;font-size:14px;margin-top:5px}.shop-detail>p{line-height:1.8;font-size:17px;margin-bottom:15px}.shop-detail>button{width:100%;font-size:22px;min-height:52px;margin:3px 0}.shop-detail>button>img{width:29px;height:29px;object-fit:contain}.gold-buy{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:28px;background:#ffdf88;box-shadow:inset 0 -4px #e3b344;border:2px solid #fff4bc;color:#70500c}.shop-detail>.secondary{font-size:16px}.shop-detail .fine-print{font-size:12px;margin-bottom:0}
.profile-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:4%;align-items:center}.profile-hero{height:440px;background:radial-gradient(ellipse,#79ceff 0,#c9eaff80 50%,transparent 70%)}.profile-hero img{width:100%;height:100%;object-fit:contain}.profile-form{width:100%}.profile-form label{font-size:24px;margin:14px 0 10px}.profile-form input{background:#fffdf3;font-weight:700;min-height:64px}.name-count{text-align:right;color:#8191a2;font-size:14px;margin-top:5px}.avatar-options{gap:10px;justify-content:flex-start}.avatar-options .pilot-portrait{width:80px;height:80px}.profile-actions{display:flex;gap:20px;margin-top:30px}.profile-actions button{flex:1;font-size:25px}.profile-note{font-size:15px}.gallery-card{position:relative;color:#062566;padding:0 0 15px;display:flex;flex-direction:column}.gallery-card strong{padding:10px 15px 0}.gallery-card p{padding:8px 15px;line-height:1.6;font-size:14px;flex:1}.gallery-card .takeoff-btn{margin:5px 15px 0;font-size:20px;min-height:46px}.skill-slot{position:absolute;top:10px;left:10px;color:#fff;background:#0479d8dd;border:1px solid white;border-radius:15px;padding:4px 12px;font-size:13px}.skill-slot.action{background:#ba590de0}.guide-tabs{display:flex;justify-content:center;gap:25px;margin:10px auto 25px}.guide-tabs button{font-size:23px;min-width:180px}.guide-steps{display:grid;grid-template-columns:1fr 1fr;gap:24px}.guide-steps article{position:relative;display:flex;align-items:center;gap:15px;padding:20px;background:#e1f2ff;border:2px solid #b4d8ef;box-shadow:inset 0 0 15px white;border-radius:25px;min-height:170px}.guide-steps article>b{position:absolute;top:-10px;left:-8px;width:40px;height:40px;border:3px solid white;border-radius:50%;background:#1379e3;color:white;text-align:center;line-height:34px;font-size:22px}.guide-steps article>img,.guide-combo{width:35%;height:130px;object-fit:contain;flex:none}.guide-combo{display:flex;align-items:center}.guide-combo img{width:65%;border:2px solid white;border-radius:13px;transform:rotate(-10deg)}.guide-combo img+img{margin-left:-25%;transform:rotate(12deg)}.guide-steps h3{font-size:25px;margin-bottom:10px}.guide-steps p{font-size:16px;line-height:1.7}.guide-steps+.rules{columns:auto;margin-top:25px;border-top:1px solid #b9cde2;padding-top:15px}.rules summary{cursor:pointer;font-weight:700;font-size:17px;margin-bottom:15px}.victory-title{text-align:center;font-size:45px;font-weight:900;color:#d18d13;text-shadow:0 2px white}.winner-name{font-size:24px;margin:10px}.winning-fleet{display:flex;align-items:center;justify-content:center;gap:10px}.winning-fleet img{width:55px;height:55px;object-fit:contain}.winning-fleet strong{font-size:24px;margin-left:15px}.standings>div{align-items:center;gap:15px;padding:8px 15px}.standings .pilot-portrait{width:45px;height:45px}.standings>div>span:not(.pilot-portrait){flex:1;font-weight:700}.standings small{display:block;font-size:12px;font-weight:400;margin-top:3px}.standings b{font-size:24px}
@media(orientation:portrait) and (max-width:800px){.shop-layout,.profile-layout{grid-template-columns:1fr}.profile-hero{height:200px}.profile-form label{font-size:19px}.avatar-options{justify-content:center}.avatar-options .pilot-portrait{width:55px;height:55px}.profile-actions button{font-size:21px}.guide-tabs{gap:10px}.guide-tabs button{min-width:0;flex:1;font-size:19px;padding:10px}.guide-steps{grid-template-columns:1fr;gap:20px}.guide-steps article{padding:15px;min-height:135px}.guide-steps h3{font-size:21px}.guide-steps p{font-size:14px}.guide-steps article>img,.guide-combo{height:100px}.gallery-card p{font-size:12px;padding:8px}.gallery-card strong{padding:8px;font-size:17px}.gallery-card .takeoff-btn{font-size:15px;margin:4px 6px}.gallery-card .shop-art{height:135px}.skill-slot{font-size:11px;padding:3px 8px}.shop-select strong{font-size:16px}.shop-select .shop-art{height:100px}.shop-detail{margin-top:20px}.shop-currencies{font-size:16px}.shop-currencies b{font-size:22px}.profile-note{font-size:13px}.victory-title{font-size:32px}.winning-fleet img{width:35px;height:35px}.winning-fleet strong{font-size:18px}.winner-name{font-size:19px}}
@media(orientation:landscape) and (max-height:600px){.shop-layout{grid-template-columns:1.6fr 1fr;gap:20px}.shop-currencies{position:absolute;right:65px;top:23px;gap:12px;font-size:12px}.shop-currencies b{font-size:17px}.shop-currencies img{width:23px;height:23px}.shop-grid{gap:10px}.shop-select{border-radius:14px}.shop-select .shop-art{height:80px}.shop-select strong{font-size:16px;margin:4px 0}.shop-select small{font-size:12px}.shop-select small img{width:18px;height:18px}.shop-detail{padding:10px}.shop-detail>.shop-art{width:100px;height:85px}.shop-detail h3{font-size:22px;margin:7px 0}.shop-detail h3 small{font-size:11px}.shop-detail>p{font-size:12px;line-height:1.4;margin-bottom:7px}.shop-detail>button{font-size:15px;min-height:44px;padding:8px}.shop-detail>.secondary{font-size:12px}.shop-detail .fine-print{font-size:10px}.profile-hero{height:270px}.profile-form label{font-size:17px;margin:8px 0}.profile-form input{min-height:44px;font-size:20px;padding:8px}.avatar-options .pilot-portrait{width:50px;height:50px}.avatar-options{gap:8px}.profile-actions{margin-top:12px;gap:12px}.profile-actions button{font-size:20px;min-height:44px;padding:8px}.profile-note{font-size:11px;margin-top:10px}.guide-tabs{margin:0 0 20px;gap:15px}.guide-tabs button{font-size:17px;min-height:44px;padding:8px}.guide-steps{gap:15px}.guide-steps article{padding:12px;min-height:105px;gap:7px}.guide-steps article>b{width:30px;height:30px;font-size:17px;line-height:24px}.guide-steps article>img,.guide-combo{height:80px}.guide-steps h3{font-size:18px;margin-bottom:5px}.guide-steps p{font-size:12px}.gallery-card p{font-size:12px}.gallery-card .takeoff-btn{font-size:16px}.victory-title{font-size:30px}.winner-name{font-size:18px}.winning-fleet img{width:38px;height:38px}.winning-fleet strong{font-size:20px}.standings{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px auto}.standings>div{margin:0}.game-shell .topbar .icon-btn,.modal-header .icon-btn{min-width:44px;min-height:44px;width:44px;height:44px}.game-shell .brand{font-size:18px}.turn-ribbon{left:34%;right:30%}.turn-ribbon strong{font-size:13px}}

.home-top .gold-pill{min-height:44px}.join-entry input{min-height:44px}@media(orientation:portrait) and (max-width:800px){.splash{background-image:url('../assets/launch-portrait.webp');background-size:100% 100%}}

.dice-model{flex:1;min-height:0;margin-bottom:0!important;height:calc(100% - 46px)}.game-shell .roll{flex:none}.waiting-controls{top:77%}@media(orientation:landscape) and (max-height:600px){.game-shell .dice-control{height:30%;bottom:3%}.waiting-controls{top:77%}}@media(orientation:portrait) and (max-width:800px){.home-top .icon-btn{top:47dvh;left:0;right:auto}.home-top .icon-btn:last-child{left:52px;right:auto}}
@media(orientation:portrait) and (max-width:800px){.landscape-mode #modal[data-type=leave]{visibility:visible}body:has(#modal[open][data-type=leave]) #rotate-notice{display:none}}
.skill-card[aria-disabled=true]{filter:saturate(.65);opacity:.75}.detail-art{background-size:cover;background-position:center;border-radius:20px;border:3px solid white;box-shadow:0 0 0 2px #d3b766}
#modal[data-type=checkin]{background-color:transparent}#modal[data-type=checkin] .checkin-heading p{color:white;text-shadow:0 2px #044e9c}#modal[data-type=checkin] .fine-print{transform:translateY(-12px)}
#modal[data-type=hangar],#modal[data-type=gallery]{background:linear-gradient(#126cb59e,#126cb59e),url('../assets/game-sky.webp') center/cover}#modal[data-type=gallery]>.modal-intro,#modal[data-type=gallery]>.fine-print{color:white}
@media(min-width:801px) and (min-height:601px){.hangar-item>.shop-art{height:min(15vh,155px)}.hangar-item>div:last-child{padding:10px 14px}.hangar-item h3{font-size:24px}.hangar-item p{font-size:13px;min-height:36px;margin:6px 0}.gallery-card .shop-art{height:min(13vh,140px)}.gallery-card strong{font-size:22px;padding-top:8px}.gallery-card p{font-size:13px;line-height:1.5;padding:6px 14px}.gallery-card .takeoff-btn{min-height:44px;font-size:19px}.gallery-card{padding-bottom:10px}#modal[data-type=checkin] .modal-header h2{font-size:58px}}
#modal[data-type=win]{width:100vw;max-width:none;height:100dvh;max-height:100dvh;margin:0;padding:0;position:fixed;inset:0;border:0;border-radius:0;box-shadow:none;background:#2187da url('../assets/game-sky.webp') center/cover;overflow:hidden}#modal[data-type=win] .modal-header{position:absolute;top:2%;left:2%;right:2%;margin:0;background:none;min-height:60px}#modal[data-type=win] .modal-header h2{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}#modal[data-type=win] .modal-header .icon-btn{top:0;z-index:2}#modal[data-type=win] .victory-title{position:absolute;top:2%;width:100%;font-size:clamp(40px,6vw,90px);color:#fff1b3;text-shadow:0 3px #fff,0 7px #ad6a08,0 9px 15px #064e97;font-weight:900}#modal[data-type=win] .winner-name{position:absolute;top:15%;left:30%;width:40%;margin:0;padding:10px 20px;border:2px solid white;border-radius:30px;background:#0966bcd9;color:#ffe595;font-size:clamp(17px,2.3vw,32px)}#modal[data-type=win] .winner-art{position:absolute;top:22%;left:20%;width:60%;height:43%;max-height:none;object-fit:contain}#modal[data-type=win] .winning-fleet{position:absolute;top:64%;left:25%;width:50%;height:9%;border:2px solid #ffdf82;border-radius:40px;background:#fff2daba;box-shadow:inset 0 -5px #d4bd8b4d}#modal[data-type=win] .winning-fleet img{height:80%;width:14%}#modal[data-type=win] .standings{position:absolute;top:75%;left:14%;right:14%;max-width:none;display:flex;gap:0;margin:0;background:#fff9e9e8;border:2px solid white;border-radius:30px;box-shadow:0 3px 5px #34749a40;padding:7px 12px}#modal[data-type=win] .standings>div{flex:1;background:none;padding:5px 12px;margin:0;gap:10px;border-radius:0}#modal[data-type=win] .standings>div+div{border-left:1px solid #adc4d1}#modal[data-type=win]>.wide{position:absolute;top:86%;left:35%;width:30%;height:8%;margin:0;font-size:clamp(23px,3vw,42px)}#modal[data-type=win]>.fine-print{position:absolute;top:95%;width:100%;margin:0;color:#124778;font-size:14px}
@media(orientation:landscape) and (max-height:600px){#modal[data-type=win] .victory-title{font-size:40px;top:1%}#modal[data-type=win] .winner-name{top:15%;padding:3px 12px;font-size:16px}#modal[data-type=win] .winner-art{top:23%;height:38%}#modal[data-type=win] .winning-fleet{top:60%;height:11%;left:30%;width:40%}#modal[data-type=win] .winning-fleet strong{font-size:16px}#modal[data-type=win] .standings{top:73%;left:17%;right:17%;padding:2px 8px;border-radius:22px}#modal[data-type=win] .standings>div{padding:2px 6px;font-size:10px;gap:5px}#modal[data-type=win] .standings .pilot-portrait{width:32px;height:32px}#modal[data-type=win] .standings small{font-size:8px}#modal[data-type=win] .standings b{font-size:16px}#modal[data-type=win]>.wide{top:86%;min-height:44px;font-size:22px}#modal[data-type=win]>.fine-print{display:none}}
@media(orientation:portrait) and (max-width:800px){#modal[data-type=checkin]{background-color:#fff9ee}#modal[data-type=checkin] .checkin-heading p{color:#476288;text-shadow:none}#modal[data-type=checkin] .fine-print{transform:none}}
@media(pointer:coarse) and (orientation:landscape){.game-shell,.online-home,.waiting{width:calc(100vw - env(safe-area-inset-left) - env(safe-area-inset-right));height:calc(100dvh - env(safe-area-inset-bottom));margin-inline:auto}}

@media(min-width:801px) and (min-height:601px){#modal[data-type=checkin] .checkin-heading{position:relative;top:-16px}#modal[data-type=checkin] .fine-print{transform:translateY(-19px)}}
