.gameShell .noticeBanner{position:fixed;z-index:260;top:calc(env(safe-area-inset-top,0px) + 98px);left:50%;transform:translateX(-50%);width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 120px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto;box-sizing:border-box;display:flex;gap:14px;align-items:flex-start;background:#263633f7;border:1px solid #98aa8e80;border-radius:13px;padding:18px;box-shadow:0 14px 40px #0005;color:var(--ui-text)}
.gameShell .noticeBanner[data-urgent=true]{background:#49372ff7;border-color:#e6ac86}.noticeCopy{min-width:0;flex:1}.noticeCopy>b{display:block;font-size:16px;line-height:1.4;overflow-wrap:anywhere}.noticeCopy p{font-size:14px;line-height:1.55;color:var(--ui-muted);margin:7px 0 12px}.noticeBanner .noticeArt:empty{display:none}.noticeArt{position:relative;flex:0 0 48px}.gameShell .noticeArt .officerPortrait{width:48px;height:48px}.noticeArt .rank-insignia{position:absolute;right:-6px;top:30px;width:19px;height:28px}.gameShell .noticeBanner button{min-height:44px;line-height:1.4;font-size:14px;border-radius:8px;background:var(--ui-raised);border:1px solid var(--ui-border);color:var(--ui-text);padding:10px 13px}.gameShell .noticeBanner .noticeDismiss{flex:0 0 36px;min-height:36px;padding:5px;font-size:22px;border:0;background:transparent;margin:-8px -8px 0 0}.gameShell .maptools #activityOpen{width:46px;height:46px;min-width:46px;min-height:46px;padding:12px;border-radius:10px;position:relative;display:grid;place-items:center}.gameShell #activityOpen .updatesCount{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 4px;display:grid;place-items:center;border:2px solid #1a211d;border-radius:10px;background:#d5c49a;color:#202922;font-size:10px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.gameShell #activityOpen[data-unread=true]{border-color:#b5aa8580}.gameShell #activityOpen:hover{background:#304037}.gameShell #activityOpen:focus-visible{outline:2px solid var(--ui-accent);outline-offset:4px}.gameShell .maptools{display:flex;flex-direction:column;gap:8px}
.gameShell .inboxEntry{padding:20px 0;border-bottom:1px solid var(--ui-border)}.inboxEntry header{display:flex;justify-content:space-between;gap:14px;align-items:start}.inboxEntry b{font-size:16px;line-height:1.4}.inboxEntry time{font-size:12px;color:var(--ui-muted);white-space:nowrap}.inboxEntry p{font-size:15px;line-height:1.6}.inboxEntry.unread b:before{content:' ';display:inline-block;width:6px;height:6px;background:var(--ui-accent);border-radius:50%;margin-right:8px}
.gameShell #fieldSelection{max-height:calc(100dvh - 210px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px));overflow:auto;padding:16px;box-sizing:border-box}.gameShell #fieldSelection .fieldHeader{margin-bottom:12px}.unitSheetLocation{display:grid;gap:5px;line-height:1.4}.unitSheetLocation b{font-size:14px;color:var(--ui-text)}.unitSheetLocation span{font-size:13px;color:var(--ui-muted)}.unitSheetMeters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:15px}.unitSheetMeters>div{display:grid;gap:5px}.unitSheetMeters span{font-size:12px;color:var(--ui-muted)}.unitSheetMeters b{font-size:17px;font-variant-numeric:tabular-nums}.unitSheetMeters progress{width:100%;height:4px;accent-color:#a9c7b3}.unitSheetMeters [data-low=true] progress{accent-color:#e5a280}.unitSheetSupply{font-size:12px;color:var(--ui-muted);margin:10px 0 16px}.gameShell #fieldPrimary{display:block;width:100%;min-height:46px;margin:12px 0;color:var(--ui-ink);background:var(--ui-accent);border:1px solid var(--ui-accent);border-radius:9px;font-size:15px;font-weight:600}.gameShell #fieldSupply{display:none}.gameShell .fieldOfficer{max-width:100%;overflow:hidden}.gameShell #fieldSelection .unitOfficer:not(.compactOfficer){max-width:100%}.gameShell .atlasSupplyInfo{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--ui-border)}.gameShell .atlasSupplyInfo button{text-align:left;white-space:normal;font-size:13px;line-height:1.5}.gameShell .atlasScope{flex-wrap:wrap}.gameShell #atlasSupplyToggle[aria-pressed=true]{background:#abc7b5;color:#1c3029}
.gameShell .baseIdentity{position:absolute;left:16px;top:calc(env(safe-area-inset-top,0px) + 190px);z-index:6;min-height:44px;padding:10px 14px;background:#233732eb;border:1px solid #9ba98d88;border-radius:10px;color:#e8e5d4;font-size:13px;max-width:calc(100% - 32px)}.hqStandard{display:flex;align-items:center;gap:16px;padding:14px 0 24px;border-bottom:1px solid var(--ui-border);margin-bottom:26px}.hqNationalFlag{font-size:42px}.hqStandard .rank-insignia{width:37px;height:54px;flex:0 0 37px}.hqStandard>div{min-width:0}.hqStandard h3{font-size:23px!important;margin:0 0 8px!important}.hqStandard p,.hqStandard b{font-size:14px;line-height:1.5}.hqHonours{list-style:none;padding:0}.hqHonours li{display:flex;gap:12px;padding:13px 0;border-bottom:1px solid var(--ui-border);font-size:15px}.hqHonours span{color:var(--ui-accent)}.gameShell .hqStationed{display:flex;justify-content:space-between;width:100%;gap:14px;align-items:center;text-align:left;margin:8px 0}.hqStationed>span:first-child{min-width:0;display:grid;gap:5px}.hqStationed small{font-size:13px;color:var(--ui-muted)}.gameShell:has(.noticeBanner:not([hidden])) .battlePhaseCallout{display:none}
@media(max-width:350px){.gameShell #fieldSelection{padding:13px}.gameShell .noticeBanner{padding:14px;gap:12px}.noticeCopy>b{font-size:15px}.gameShell .hqStandard{gap:10px;flex-wrap:wrap}}
@media(max-height:450px){.gameShell .noticeBanner{top:calc(env(safe-area-inset-top,0px) + 12px);max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}}
.unitSheetHead{display:flex;align-items:center;gap:12px}.unitSheetHead img{flex:0 0 72px;width:72px;height:60px;object-fit:contain;filter:drop-shadow(0 4px 4px #0004)}.unitSheetHead>div{min-width:0}.gameShell #fieldUnit{white-space:normal;overflow-wrap:anywhere}.gameShell #fieldSelection .fieldOfficer .officerPortrait{display:none}.gameShell #fieldSelection .fieldOfficer .rank-insignia{flex:0 0 20px;width:20px;height:28px}.gameShell #fieldSelection .fieldOfficer b{font-size:13px;white-space:normal}

.gameShell .atlasSelection{max-height:38dvh;overflow:auto;overscroll-behavior:contain}.unitSheetMeters progress{appearance:none;border:0;background:#45544f;border-radius:3px}.unitSheetMeters progress::-webkit-progress-bar{background:#45544f;border-radius:3px}.unitSheetMeters progress::-webkit-progress-value{background:#a9c7b3;border-radius:3px}.unitSheetMeters [data-low=true] progress::-webkit-progress-value{background:#e5a280}
.gameShell .noticeBanner{--notice-safe-top:env(safe-area-inset-top,0px);--notice-safe-bottom:env(safe-area-inset-bottom,0px)}.gameShell .noticeBanner .noticeDismiss{position:sticky;top:0;align-self:flex-start}
.gameShell .maptools :is(#activityOpen,#intelOpen,#chatOpen){width:46px;min-width:46px;height:46px;min-height:46px;border-radius:50%}
