/* Two complete game screens; map labels overlay existing preview geometry. */
#menu.departure-menu{padding:0!important}
.departure-page{height:100%;min-height:0;display:grid;grid-template-rows:minmax(90px,.8fr) minmax(162px,1fr) auto;gap:9px}
.departure-stage{position:relative;display:block;width:100%;height:100%;min-height:0;padding:0!important;overflow:hidden;text-align:left;border:1px solid #65745d;background:#17251f;color:inherit}
.departure-map-image{position:absolute;inset:0;display:block;overflow:hidden;background:#17251e}
.departure-map-image::after{content:'布局预览';position:absolute;right:8px;top:7px;color:#c5d3bb;font-size:9px;text-shadow:0 1px 2px #000}
.departure-map-image svg{display:block;width:100%;height:100%}
.departure-stage::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07140de8,#07140d70 65%,transparent);pointer-events:none}
.departure-stage-copy{position:absolute;z-index:1;top:12px;left:12px;right:12px;display:flex;flex-direction:column;gap:4px;min-width:0;text-shadow:0 1px 3px #000}
.departure-stage-copy small{font-size:10px;color:#b3bca7;letter-spacing:1px}
.departure-stage-copy #stage-title{font-size:23px!important;line-height:1.25;color:#e3d0a0}
.departure-stage-copy #chapter-goal{font-size:11px;line-height:1.35;color:#d0d8cd}
.departure-detail-action{width:100px;min-height:44px;flex:none;padding:6px 9px;font-size:12px;border:1px solid #69785e;background:#1d3025;color:#dec88e;cursor:pointer;white-space:nowrap}
.departure-map-action{position:absolute;z-index:2;bottom:9px;right:9px}
.departure-character{border:1px solid #526355;padding:9px;min-width:0;min-height:0;background:#14221e;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:5px}
.departure-character-footer{display:flex;align-items:center;justify-content:space-between;gap:6px;min-width:0}
.departure-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
#menu.departure-menu h2{font-size:13px!important;line-height:1.3;margin:0!important;color:#c8d1be}
#character-position{font-size:10px;font-weight:400;color:#a6b7a6;margin-left:5px;white-space:nowrap}
.departure-carousel{min-height:0;display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;align-items:stretch}
.departure-arrow{align-self:center;min-height:48px;width:44px;padding:0!important;font-size:32px;line-height:1;border:1px solid #69785e;background:#1d3025;color:#dec88e;cursor:pointer}
.departure-arrow:disabled{opacity:.35;cursor:default}
#selected-character{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:4px;height:100%;min-height:0;margin:0;text-align:center}
.departure-portrait{min-height:0;display:flex;align-items:center;justify-content:center}
.departure-portrait>.character-full-body{display:block;width:100%;height:100%;max-height:170px;min-height:0;overflow:hidden}
#menu .departure-person h3{font-size:19px!important;line-height:1.2;margin:0 0 3px!important;color:#e4d2a0;letter-spacing:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.departure-person p{font-size:12px!important;line-height:1.35!important;margin:0 0 2px!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.departure-person small{font-size:11px;color:#afbcaf;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden}
.departure-stats{display:flex;flex:1 1 0;flex-wrap:wrap;justify-content:flex-start;gap:1px 10px}
.departure-stats span{display:flex;align-items:baseline;gap:3px;font-size:11px;white-space:nowrap}
.departure-stats small{color:#9fb3a5;font-size:10px}.departure-stats strong{font-size:13px;color:#d8d9c7}
.departure-support{display:grid;gap:7px;min-width:0}
.departure-upgrades{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;border:1px solid #526355;background:#14221e;min-width:0}
.departure-upgrades h2 small{font-size:10px;font-weight:400;color:#d2bd8c;margin-left:5px}
#menu.departure-menu .departure-upgrades p{font-size:11px!important;line-height:1.35!important;margin:3px 0 0!important;color:#b3bfb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.departure-upgrades>div{min-width:0}
.departure-upgrades #growth{flex:none;min-height:44px;padding:5px 8px;font-size:12px}
.departure-support .f16-settings{margin:0;padding:0;border:0}
.departure-support>.screen-detail-button{margin:0;min-height:44px;padding:8px 12px;font-size:13px}
.departure-directory{height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:10px}
.departure-directory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.departure-directory-grid>a,.departure-directory-grid>button{display:flex;align-items:center;min-height:48px;padding:8px 10px;border:1px solid #526355;background:#14221e;color:#d5dbc9;font-size:13px;text-align:left;text-decoration:none;line-height:1.3}
.departure-directory-grid .directory-feature{grid-column:1/-1;color:#dec88e}
#menu.departure-menu #record{font-size:11px!important;line-height:1.3!important;text-align:right;color:#b0baaa;margin:0!important}

@media(min-width:900px) and (min-height:521px){
 .departure-page{grid-template-columns:1.1fr 1fr;grid-template-rows:minmax(0,1fr) auto;gap:14px}
 .departure-stage{grid-column:1;grid-row:1/3}
 .departure-stage-copy{top:18px;left:18px}
 .departure-character{grid-column:2;grid-row:1;padding:14px}
 .departure-support{grid-column:2;grid-row:2}
 .departure-portrait>.character-full-body{max-height:210px}
}
@media(max-width:380px),(max-height:700px){
 .departure-page{gap:6px}
 .departure-character{padding:7px}
 .departure-stage-copy{top:8px;left:8px;gap:2px}
 .departure-stage-copy #stage-title{font-size:20px!important}
 .departure-upgrades{padding:6px 8px}
 .departure-upgrades h2 small{font-size:9px}
 .departure-directory-grid{gap:6px}
 .departure-directory-grid>a,.departure-directory-grid>button{min-height:44px;font-size:12px;padding:6px 8px}
}
@media(orientation:portrait) and (max-height:700px){
 #selected-character{grid-template-columns:minmax(40px,.6fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);text-align:left;gap:3px 6px;align-items:center}
 .departure-stage-copy{right:116px}
 .departure-portrait{height:100%;grid-column:1;grid-row:1}
 .departure-person{grid-column:2;grid-row:1}
 #menu .departure-person h3{font-size:16px!important}
 .departure-person p{font-size:10px!important}
 .departure-person small{font-size:9px}
 .departure-stats{gap:1px 8px}
 .departure-stats strong{font-size:12px}
}
@media(orientation:portrait) and (max-height:600px){
 .screen-frame:has(>#menu.departure-menu){padding:5px;gap:4px}
 #menu .departure-person h3{font-size:14px!important}
}
@media(orientation:landscape) and (max-height:520px){
 .departure-page{grid-template-columns:1fr 1.15fr;grid-template-rows:minmax(70px,1fr) auto;gap:6px 10px}
 .departure-stage{grid-column:1;grid-row:1}
 .departure-stage-copy{top:5px;left:7px;right:116px;gap:1px}
 .departure-stage-copy #stage-title{font-size:18px!important}
 .departure-stage-copy small{font-size:8px}
 .departure-stage-copy #chapter-goal{font-size:10px}
 .departure-map-action{bottom:5px;right:5px}
 .departure-map-image::after{font-size:8px;right:5px;top:5px}
 .departure-character{grid-column:2;grid-row:1/3;padding:6px;gap:3px}
 .departure-person p{font-size:10px!important;line-height:1.3!important}
 .departure-person small{font-size:10px}
 #menu .departure-person h3{font-size:16px!important}
 .departure-support{grid-column:1;grid-row:2;gap:5px}
 .departure-upgrades{padding:4px 7px;min-height:44px}
 #menu.departure-menu .departure-upgrades p{font-size:9px!important;line-height:1.2!important;margin:1px 0!important}
 #menu.departure-menu .departure-upgrades #departure-upgrade-list{display:none}
 .departure-upgrades #growth{min-height:34px;font-size:11px}
 .departure-support>.screen-detail-button{padding:5px 9px;min-height:36px;font-size:12px}
 .departure-directory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .departure-directory{gap:6px;justify-content:center}
 .departure-directory-grid .directory-feature{grid-column:span 2}
}
@media(orientation:landscape) and (max-height:360px){
 .screen-frame:has(>#menu.departure-menu){padding:3px;gap:2px}
 .departure-page{gap:4px 8px}
 .departure-stage-copy #stage-title{font-size:16px!important}
 .departure-stage-copy #chapter-goal{font-size:9px}
 #selected-character{grid-template-columns:minmax(35px,.5fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);text-align:left;gap:3px 5px;align-items:center}
 .departure-portrait{height:100%;grid-column:1;grid-row:1}
 .departure-person{grid-column:2;grid-row:1}
 #menu .departure-person h3{font-size:14px!important}
 .departure-person p{font-size:9px!important}
 .departure-person small{font-size:9px}
 .departure-stats{gap:1px 6px}
 .departure-stats strong{font-size:11px}
 .departure-stats small{font-size:9px}
 .departure-directory-grid{gap:4px}
 .departure-directory{gap:0}
}
