/* Quiet, readable operational guidance. Components stay inside existing screens. */
.gameShell .careerGoals{margin:8px 0 24px;padding:18px 0;border-bottom:1px solid #a9b5a433}.gameShell .careerGoals>div{display:flex;gap:12px;align-items:center;justify-content:space-between}.gameShell .careerGoals h3{font-size:18px;line-height:1.4;margin:0}.gameShell .careerGoals>div>button{flex:0 0 auto;font-size:12px;background:transparent;padding:8px;min-height:44px}.gameShell .careerGoals ol{list-style:none;padding:0;margin:12px 0}.gameShell .careerGoals li{display:flex;align-items:center;gap:12px;padding:14px 0;border-top:1px solid #a9b5a41c}.gameShell .careerGoals li>span{display:grid;gap:5px;flex:1;min-width:0}.gameShell .careerGoals b{font-size:14px;font-weight:550;line-height:1.4}.gameShell .careerGoals small,.gameShell .careerGoals>p{font-size:12px;line-height:1.55;color:#b9c3bd}.gameShell .careerGoals li>button{font-size:12px;max-width:120px;min-height:44px;margin:0;padding:10px 12px;white-space:normal}
.gameShell .aviationAcademy{padding:0 0 18px;margin-bottom:20px;border-bottom:1px solid #a9b5a433}.gameShell .aviationAcademy>summary{font-size:15px;min-height:52px;display:flex;align-items:center}.gameShell .aviationAcademy section{padding:12px 0}.gameShell .aviationAcademy h3{font-size:18px;line-height:1.4}.gameShell .aviationAcademy ol{list-style:none;padding:0}.gameShell .aviationAcademy li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #a9b5a422}.gameShell .lessonStep{flex:0 0 28px;height:28px;display:grid;place-items:center;border:1px solid #a9b5a44d;border-radius:50%;font-size:12px}.gameShell .aviationAcademy .complete .lessonStep{background:#365d4d;color:#c8ebd6}.gameShell .aviationAcademy .current .lessonStep{border-color:#d2c49d;color:#e9dbb7}.gameShell .aviationAcademy b{font-size:14px;font-weight:550}.gameShell .aviationAcademy p{font-size:13px;line-height:1.65;color:#b9c3bd;margin:7px 0}.gameShell .aviationAcademy button{font-size:13px;margin-top:8px;min-height:44px}.gameShell .lessonHint{color:#d2c49d!important}
.gameShell .operationDuties{border-top:1px solid #a9b5a433;margin:16px 0 0;padding-top:14px}.gameShell .operationDuties h4{font-size:16px;margin:0 0 8px}.gameShell .operationDuties ul{list-style:none;margin:0;padding:0}.gameShell .operationDuties li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #a9b5a422}.gameShell .operationDuties li>div{display:grid;gap:4px;min-width:0}.gameShell .operationDuties b{font-size:14px}.gameShell .operationDuties small{font-size:12px;line-height:1.5;color:#b9c3bd;overflow-wrap:anywhere}.gameShell .dutyMark{font-size:20px;color:#b6cbb9}.gameShell .operationConsent{font-size:12px!important;line-height:1.65;color:#b9c3bd}.gameShell .operationDuties form{padding:12px 0}.gameShell .operationDuties select{width:100%;min-height:48px}.gameShell .operationDuties .lifeChecklist{max-height:240px;overflow:auto;overscroll-behavior:contain}.gameShell .operationDuties .lifeChecklist label{display:flex;gap:12px;align-items:center;min-height:50px;font-size:14px}.gameShell .operationDuties .lifeChecklist label[hidden]{display:none}.gameShell .operationDuties .lifeChecklist input{flex:0 0 22px;width:22px;height:22px}.gameShell .operationDuties output{display:block;font-size:13px;color:#edbfa3}.gameShell .chatOperationDigest{flex:0 0 auto;margin:0;border-bottom:1px solid #a9b5a433}.gameShell .chatOperationDigest>summary{display:flex;gap:8px;align-items:center;justify-content:space-between;min-height:42px;padding:8px 0;font-size:12px}.gameShell .chatOperationDigest>summary small{color:#b9c3bd}.gameShell .chatOperationDigest[open]{max-height:32dvh;overflow:auto}.gameShell .chatOperationDigest article{display:grid;gap:6px;padding:12px 0;border-top:1px solid #a9b5a422}.gameShell .chatOperationDigest article>b{font-size:14px}.gameShell .chatOperationDigest article>small,.gameShell .chatOperationDigest p{font-size:12px;line-height:1.6;margin:0;color:#b9c3bd}.gameShell .chatOperationDigest button{font-size:12px;min-height:44px;margin:0;justify-self:start}
.gameShell .unitPickerFilters{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:10px;flex:0 0 auto;margin:0 0 12px}.gameShell .unitPickerFilters label{margin:0;min-width:0}.gameShell .unitPickerFilters input,.gameShell .unitPickerFilters select{width:100%;min-width:0;min-height:46px;font-size:13px;margin:0;padding:10px}.gameShell #unitSelectList>button[hidden]{display:none}.gameShell .pickerUnitArt,.gameShell .forceUnitArt{position:relative;display:grid;place-items:center;align-self:center}.gameShell .veteranStripes{display:inline-flex;gap:3px;align-items:center;justify-content:center;min-width:22px;height:16px;vertical-align:middle}.gameShell .veteranStripes i{display:block;width:4px;height:10px;background:#c6b68e;transform:skew(-20deg)}.gameShell .pickerUnitArt .veteranStripes,.gameShell .forceUnitArt .veteranStripes{position:absolute;bottom:-6px;left:50%;transform:translateX(-50%)}.gameShell #unitSelectList>button[data-veteran="3"] .pickerUnitArt{filter:drop-shadow(0 2px 5px #cbb67736)}.gameShell .formationIdentity{display:flex;gap:12px;align-items:center;margin:18px 0 12px}.gameShell .formationIdentity>div{display:grid;gap:5px;min-width:0}.gameShell .formationIdentity b{font-size:17px;line-height:1.4;overflow-wrap:anywhere}.gameShell .formationIdentity small{font-size:12px;color:#b9c3bd;line-height:1.5}.gameShell .veteranExperience{height:3px;border-radius:2px;background:#a9b5a422;margin:14px 0 20px;overflow:hidden}.gameShell .veteranExperience i{display:block;height:100%;background:#c6b68e}.gameShell .unitServiceRecord time{display:block;font-size:11px;color:#b9c3bd;margin-bottom:4px}.gameShell .unitServiceRecord li{font-size:13px;line-height:1.6;padding:10px 0}.gameShell .mapbadge.army[data-veteran="Guards"]{border-color:#d6c49b}.gameShell .mapbadge.army[data-veteran="Elite"]{border-color:#afa68c}
.gameShell .battleStoryboard{padding:14px 0;margin-bottom:10px;border-bottom:1px solid #a9b5a433}.gameShell .battleStageTitle{display:grid;gap:4px}.gameShell .battleStageTitle b{font-size:16px;font-weight:550}.gameShell .battleStageTitle small{font-size:10px;color:#aab9ae}.gameShell .battleLanes{position:relative;height:94px;overflow:hidden;background:linear-gradient(180deg,#34544a26,#85916b14);border-radius:8px;margin:12px 0}.gameShell .battleObjective{position:absolute;right:22px;top:32px;font-size:25px;color:#d1c29a}.gameShell .battleAirLane,.gameShell .battleGroundLane{display:flex;align-items:center;gap:14px;position:absolute;left:10px;right:55px;height:40px}.gameShell .battleAirLane{top:1px}.gameShell .battleGroundLane{bottom:4px}.gameShell .battleLanes svg{width:28px;height:28px}.gameShell .battleAirLane>span{animation:air-support-pass 4s linear infinite}.gameShell .battleGroundLane>span{transition:transform 1s;transform:translateX(0)}.gameShell .stage-1 .battleGroundLane>span{transform:translateX(16px)}.gameShell .stage-2 .battleGroundLane>span,.gameShell .stage-3 .battleGroundLane>span{transform:translateX(30px)}.gameShell .stage-2 .battleObjective{animation:objective-contact 1.2s ease-in-out infinite}.gameShell .battleStoryboard>p{font-size:12px;line-height:1.55;color:#b9c3bd;margin:8px 0}.gameShell .battleStageTrack{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;list-style:none;padding:0;margin:12px 0 0}.gameShell .battleStageTrack li{font-size:10px;color:#aab9ae;border-top:2px solid #a9b5a433;padding-top:6px}.gameShell .battleStageTrack [aria-current]{color:#e4d5af;border-color:#c6b68e}.gameShell .battleStageTrack .complete{border-color:#76a18b}.gameShell .battleLessons{display:grid;gap:12px;margin:16px 0}.gameShell .battleLessons article{padding:12px 0;border-top:1px solid #a9b5a42b}.gameShell .battleLessons h4{font-size:14px;margin:0 0 6px}.gameShell .battleLessons p{font-size:13px!important;line-height:1.6;margin:0 0 10px!important}.gameShell .battleLessons button{font-size:12px;min-height:44px;margin:0}.gameShell .advancedReview output button{display:block;font-size:13px;min-height:44px;margin:10px 0 0}.gameShell .advancedReview form{min-width:0}.gameShell .advancedReview header h2{min-width:0;overflow-wrap:anywhere}.gameShell .advancedReview header button{flex:0 0 44px}.gameShell #panel,.gameShell #unitSelect,.gameShell #advancedReview{overscroll-behavior:contain;scrollbar-gutter:stable}.gameShell #panelContent,.gameShell .lifeChecklist,.gameShell #unitSelectList{overflow-anchor:none}.gameShell .panelhead{z-index:5}.gameShell .panelhead>div{min-width:0}.gameShell .panelhead>div h2{overflow-wrap:anywhere}.gameShell .panelhead>button{flex:0 0 44px}.gameShell .unitSelectHeader>button{flex:0 0 44px}.gameShell #battleResult{max-height:min(65dvh,650px);overflow:auto;padding-right:24px;overscroll-behavior:contain}.gameShell #battleResult>h2{padding-right:44px}.gameShell #dismissResult{top:12px;right:12px;width:44px;height:44px}
@keyframes air-support-pass{0%{transform:translateX(-30px);opacity:0}20%{opacity:1}80%{opacity:1}100%{transform:translateX(130px);opacity:0}}@keyframes objective-contact{50%{opacity:.45;transform:scale(1.15)}}
@media(max-width:350px){.gameShell .careerGoals>div{display:block}.gameShell .careerGoals>div>button{padding-left:0}.gameShell .careerGoals li{gap:8px}.gameShell .careerGoals li>button{max-width:96px}.gameShell .unitPickerFilters{grid-template-columns:minmax(0,1fr) 96px;gap:6px}.gameShell .unitPickerFilters input,.gameShell .unitPickerFilters select{font-size:12px;padding:8px}.gameShell #unitSelectList>button{gap:8px;grid-template-columns:42px minmax(0,1fr) 20px}.gameShell .operationDuties small{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gameShell .battleAirLane>span,.gameShell .battleObjective{animation:none!important}.gameShell .battleGroundLane>span{transition:none}}
.gameShell .unitServiceRecord li>small{display:block;font-size:11px;line-height:1.5;color:#aab9ae;margin-top:4px}.gameShell .formationHistory{flex:1 1 100%;min-width:0}.gameShell .formationHistory>summary{font-size:13px;min-height:44px;display:flex;align-items:center}.gameShell .formationIdentity+.unitOfficer>.officerPortrait{display:block;width:44px;height:44px;flex:0 0 44px;border-radius:5px}.gameShell .unitPickerFilters [type=search]{-webkit-appearance:none;appearance:none}
.gameShell .orderError p{margin:0 0 8px;font-size:13px;line-height:1.6}.gameShell .orderError button{min-height:44px;margin:0;font-size:12px}
.gameShell .aviationUnit,.gameShell .lifeCard{scroll-margin-top:95px}
