/* Confidential exercise palette: olive, sepia, brass; quiet motion around a readable board. */
.army-chess-wrap{--ac-piece-size:65%}.army-chess-wrap *{scrollbar-width:thin;scrollbar-color:#69715566 transparent}.army-chess-wrap *::-webkit-scrollbar{width:5px;height:5px}.army-chess-wrap *::-webkit-scrollbar-thumb{background:#69715566;border-radius:3px}
.army-chess-wrap .ac-board .ac-piece,.army-chess-wrap .ac-move-ghost .ac-piece,.army-chess-wrap .ac-capture-victim>.ac-piece{width:var(--ac-piece-size);height:var(--ac-piece-size)}
.army-chess-wrap .ac-square.legal:not([data-capture=yes])::after{width:11%;height:11%;border:1px solid #e2d3a0;border-radius:1px;background:#293a27b3;box-shadow:0 0 0 1px #18251888;transform:rotate(45deg)}
.ac-coach-officer{width:68px!important;height:68px!important;min-width:68px!important;flex-shrink:0}.ac-officer-hale .ac-officer-frames{background-image:url('portraits/commander-hale-runtime.webp');background-size:300% 200%;animation:ac-hale-idle 19s steps(1) infinite}
@keyframes ac-hale-idle{0%,88%,93%,100%{background-position:0 0}90%{background-position:50% 0}95%,97%{background-position:100% 0}}
.ac-officer-blitz{--ac-gesture-sheet:url('portraits/blitz-gestures-runtime.webp')}.ac-officer-bastion{--ac-gesture-sheet:url('portraits/bastion-gestures-runtime.webp')}.ac-officer-scout{--ac-gesture-sheet:url('portraits/scout-gestures-runtime.webp')}.ac-officer-viper{--ac-gesture-sheet:url('portraits/viper-gestures-runtime.webp')}.ac-officer-atlas{--ac-gesture-sheet:url('portraits/atlas-gestures-runtime.webp')}.ac-officer-hale{--ac-gesture-sheet:url('portraits/commander-hale-runtime.webp')}
.army-chess-wrap .ac-officer[data-portrait-gesture]>.ac-officer-frames{background-image:var(--ac-gesture-sheet);background-size:300% 200%;background-position:var(--portrait-x) var(--portrait-y);animation:ac-portrait-settle 2.2s steps(5) both}
@keyframes ac-portrait-settle{0%,100%{transform:translateY(0)}45%{transform:translateY(.6px)}}
.army-chess-wrap .ac-piece[data-unit-gesture]>.ac-sprite{background-image:url('sprites/sand-gestures-runtime.webp')!important;background-size:600% 300%!important;background-position:var(--gesture-col,0%) var(--gesture-row,0%)!important;clip-path:none!important;animation:ac-gesture-settle 2.2s ease-in-out!important;transform-origin:50% 90%}
.army-chess-wrap .ac-piece.b[data-unit-gesture]>.ac-sprite{background-image:url('sprites/olive-gestures-runtime.webp')!important}.army-chess-wrap .ac-piece[data-unit-gesture]>.ac-sprite-legs{display:none!important}
.ac-piece.type-p{--gesture-col:0%}.ac-piece.type-n{--gesture-col:20%}.ac-piece.type-b{--gesture-col:40%}.ac-piece.type-r{--gesture-col:60%}.ac-piece.type-q{--gesture-col:80%}.ac-piece.type-k{--gesture-col:100%}.ac-piece[data-unit-gesture="1"]{--gesture-row:50%}.ac-piece[data-unit-gesture="2"]{--gesture-row:100%}
@keyframes ac-gesture-settle{0%,100%{transform:translateY(0)}40%{transform:translateY(.7px) rotate(.4deg)}70%{transform:translateY(.2px) rotate(-.2deg)}}
.ac-codec{position:relative;isolation:isolate;overflow:hidden}.army-chess-wrap[data-scanlines="1"] .ac-codec:after{content:'';position:absolute;inset:-10% 0;z-index:4;pointer-events:none;background:repeating-linear-gradient(0deg,transparent 0 3px,#07160d30 3px 4px);animation:ac-transmission-scan 1.2s linear infinite;opacity:.52}
@keyframes ac-transmission-scan{to{transform:translateY(8px)}}
.army-chess-wrap .ac-atmos-canvas{display:block}.ac-background-trees{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.ac-background-trees canvas{position:absolute;transform-origin:50% 90%;animation:ac-desk-breeze 13s ease-in-out infinite;image-rendering:pixelated}.army-chess-wrap:not([data-effects=on]) .ac-background-trees,.army-chess-wrap[data-background-breeze="0"] .ac-background-trees{display:none}
@keyframes ac-desk-breeze{0%,34%,100%{transform:translateX(0) rotate(0)}52%{transform:translateX(1.4px) rotate(.35deg)}70%{transform:translateX(-.8px) rotate(-.22deg)}}
.army-chess-wrap .ac-coffee-ring{border:0!important;box-shadow:none!important;border-radius:0!important;width:145px;height:145px;background:url('confidential-seal.svg') center/contain no-repeat;opacity:.22;z-index:0}.ac-coach{position:relative;isolation:isolate}.ac-coach:after{content:'';position:absolute;right:14px;bottom:20px;width:110px;height:110px;background:url('confidential-seal.svg') center/contain no-repeat;opacity:.07;z-index:-1;pointer-events:none}
.ac-preset-box{border:1px solid #586447;padding:14px;margin:18px 0}.ac-preset-box legend{padding:0 8px;color:#d9c38d}.ac-audio-test{border-top:1px solid #526041;margin-top:16px;padding-top:12px}.ac-audio-test p,.ac-preset-status{font-size:12px;color:#bdc4af}.ac-audio-test button{margin:3px}
.ac-soldier-fall{animation:ac-casualty .65s ease-in both!important;transform-origin:50% 85%}.ac-tank-wreck{animation:ac-wreck .65s ease-in both!important;transform-origin:50% 85%}
@keyframes ac-casualty{0%{transform:translate(0) rotate(0);opacity:1}16%{transform:translate(3px,-2px) rotate(9deg);filter:brightness(1.3)}48%{transform:translate(1px,12%) rotate(22deg);opacity:.85}100%{transform:translate(3px,30%) rotate(68deg);opacity:0;filter:brightness(.45)}}
@keyframes ac-wreck{20%{transform:translateX(2px);filter:brightness(1.5)}60%{transform:translateY(3%) rotate(4deg);filter:brightness(.4)}100%{transform:translateY(9%) rotate(7deg);opacity:0}}
.ac-preview-arena{position:relative;padding:24px 18px;margin:16px 0;border:1px solid #8e8f62;background:linear-gradient(#16231855,#16231888),url('terrain/runtime/desert-outpost.webp') center/cover,#394931;min-height:330px;overflow:hidden}.ac-preview-army{display:grid;grid-template-columns:repeat(6,1fr);height:100px;gap:8px}.ac-preview-army .ac-piece{position:relative!important;inset:auto!important;max-width:100px;width:100%!important;height:100%!important;margin:auto}.ac-preview-caption{text-align:center;margin:18px 0}.ac-preview-caption h2{font-size:clamp(20px,3vw,32px)!important;margin:8px 0!important}.ac-preview-caption p{font-size:12px}.ac-preview-portraits{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.ac-preview-portraits>div{text-align:center}.ac-preview-portraits .ac-officer{display:block;width:min(100%,115px);height:auto;aspect-ratio:1;margin:auto}.ac-preview-portraits b{display:block;font-size:11px;margin:5px}
.army-chess-wrap[data-ending=draw] .ac-board .ac-piece,.ac-preview-arena[data-ending=draw] .ac-piece{animation:ac-relieved 3.7s ease-in-out var(--salute-delay,0s) infinite!important;transform-origin:50% 90%}
.army-chess-wrap[data-ending][data-winner=w] .ac-board .ac-piece.b,.army-chess-wrap[data-ending][data-winner=b] .ac-board .ac-piece.w,.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=w] .ac-piece.b,.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=b] .ac-piece.w{animation:ac-stand-down 3s ease-in-out var(--salute-delay,0s) both!important;transform-origin:50% 90%}
.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=w] .ac-piece.w,.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=b] .ac-piece.b{animation:ac-triumph 1.4s ease-in-out infinite!important;transform-origin:50% 90%}
@keyframes ac-relieved{0%,100%{transform:translateY(0) rotate(0)}35%,65%{transform:translateY(3%) rotate(-2deg)}}@keyframes ac-stand-down{0%{transform:none}60%,100%{transform:translateY(13%) rotate(9deg);filter:brightness(.7)}}@keyframes ac-triumph{0%,100%{transform:translateY(0)}40%{transform:translateY(-5%) rotate(-3deg)}65%{transform:translateY(-2%) rotate(2deg)}}
.ac-room-dispatch{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:14px}.ac-room-dispatch h2{margin:5px 0!important;font-size:clamp(25px,3vw,38px)!important}.ac-room-dispatch p{margin:5px 0;font-size:12px}.ac-room-rank{color:#dac58f;font-size:16px;white-space:nowrap}.ac-room-rank small{display:block;font-size:10px;color:#b6bfa6}.ac-global-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:18px}.ac-global-map{min-width:0}.ac-earth-viewport{touch-action:none;overflow:hidden;border:5px solid #6e6045;box-shadow:0 3px 12px #0004;cursor:grab}.ac-earth-viewport:active{cursor:grabbing}.ac-earth-svg{width:100%;display:block;max-height:51vh}.ac-country{cursor:pointer;transition:fill .18s}.ac-country:hover,.ac-country.selected{fill:#ead9a6!important;stroke:#392f20;stroke-width:1.8}.ac-country.held{fill:#a0ab76!important}.ac-country.lost{fill:#ba8d74!important}.ac-globe-pin circle{fill:#394b34;stroke:#ecdcac;stroke-width:1.5}.ac-globe-pin path{stroke:#433621;stroke-width:2}.ac-globe-pin text{fill:#f8eac4;font:bold 10px monospace;pointer-events:none}.ac-globe-pin.locked circle{fill:#756d59}.ac-globe-pin.held circle{fill:#426144}.ac-globe-pin.lost circle{fill:#823f32}.ac-globe-pin{cursor:pointer}.ac-globe-pin:focus circle{stroke:#fff;stroke-width:3}.ac-chart-label{font:10px monospace;fill:#53452e;letter-spacing:1px}.ac-map-toolbar,.ac-map-key{display:flex;gap:5px;flex-wrap:wrap;margin:8px 0}.ac-map-toolbar button{padding:6px 12px!important}.ac-map-key{font-size:10px;color:#b9bda2;justify-content:space-between}.ac-globe-selects{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ac-exercise-notice{font-size:11px;line-height:1.6;margin-top:12px;color:#aeb69f}.ac-country-papers{background:#c3b185;color:#2d3022;padding:18px;border:1px solid #e0d0a0;box-shadow:3px 4px 0 #060e0940}.ac-country-papers h3{color:#2c3021!important;font-size:29px!important;margin:7px 0!important}.ac-country-papers p{color:#353927!important;font-size:12px;line-height:1.5}.ac-country-papers small{display:block;color:#4a4e37}.ac-classification{font:bold 9px monospace;letter-spacing:1.5px;border-bottom:1px solid #6e6244;padding-bottom:8px;display:block}.ac-country-papers .ac-map-rival{display:flex;gap:12px;align-items:center;margin:15px 0}.ac-country-papers .ac-map-rival .ac-officer{width:82px;height:82px;flex-shrink:0}.ac-route-strip{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0}.ac-route-strip button{font-size:10px!important;padding:5px 7px!important}.ac-country-papers .ac-field{color:#333722}.ac-country-papers .ac-match-controls{display:block}.ac-country-papers .ac-wide{margin:5px 0}.ac-room-footer{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:15px}.ac-room-footer small{font-size:10px;color:#a8b499}.ac-global-room .ac-fineprint{font-size:10px!important}
@media(max-width:850px){.ac-global-layout{grid-template-columns:1fr}.ac-room-dispatch{display:block}.ac-room-rank{margin-top:10px;font-size:13px}.ac-country-papers{padding:14px}.ac-earth-svg{max-height:none}.ac-preview-army{height:70px;gap:2px}.ac-preview-arena{padding:15px 8px}.ac-preview-portraits{gap:5px}.ac-globe-selects{grid-template-columns:1fr}.ac-room-footer>button{flex:1}.ac-coach-officer{width:58px!important;height:58px!important;min-width:58px!important}}
@media(prefers-reduced-motion:reduce){.army-chess-wrap .ac-background-trees,.army-chess-wrap .ac-codec:after{display:none}.army-chess-wrap .ac-piece,.army-chess-wrap .ac-officer-frames,.army-chess-wrap .ac-piece>.ac-sprite{animation:none!important}}
.army-chess-wrap:not([data-effects=on]) .ac-codec:after{display:none}

html:has(body.army-academy-page){scrollbar-width:thin;scrollbar-color:#566044 #142019}body.army-academy-page::-webkit-scrollbar{width:5px}body.army-academy-page::-webkit-scrollbar-track{background:#142019}body.army-academy-page::-webkit-scrollbar-thumb{background:#566044}
.army-chess-wrap .ac-preview-army .ac-sprite{clip-path:none!important}.ac-preview-army .ac-piece:nth-child(2n){--salute-delay:-.4s}.ac-preview-army .ac-piece:nth-child(3n){--salute-delay:-.8s}
.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=w] .ac-piece.w:after,.ac-preview-arena[data-ending]:not([data-ending=draw])[data-winner=b] .ac-piece.b:after{content:'';position:absolute;left:62%;top:-8%;width:2px;height:30%;background:linear-gradient(transparent,#eac77e,transparent);animation:ac-salute-shot 1.3s linear var(--salute-delay,0s) infinite}
.army-chess-wrap:not([data-effects=on]) .ac-preview-arena .ac-piece,.army-chess-wrap:not([data-effects=on]) .ac-preview-arena .ac-piece:after{animation:none!important}.army-chess-wrap:not([data-effects=on]) .ac-preview-arena .ac-piece:after{display:none}
.ac-country-papers .ac-map-rival b{color:#293220}.ac-country-papers .ac-map-orders{color:#3b3d27!important}.ac-country-papers .ac-match-controls+.ac-fineprint{display:none}.ac-country-papers .ac-fineprint{color:#4b4d34!important}
@media(min-width:851px) and (max-height:850px){.army-chess-wrap[data-active-hub=home] .ac-hub-card{padding:16px}.ac-global-room .ac-room-dispatch{margin-bottom:8px}.ac-global-room .ac-room-dispatch h2{font-size:27px!important}.ac-global-room .ac-room-dispatch p{display:none}.ac-country-papers{padding:12px}.ac-country-papers .ac-map-rival{margin:8px 0}.ac-country-papers p{font-size:11px;line-height:1.35}.ac-country-papers .ac-route-strip{margin:6px 0}.ac-country-papers .ac-field{margin-bottom:7px}.ac-country-papers .ac-wide{padding:7px!important}.ac-global-room .ac-room-footer{margin-top:8px}.ac-global-room .ac-hub-heading{margin-bottom:8px}}
