@media(orientation:landscape) and (max-height:600px){
 body.android-app:not(.playing){height:var(--phone-height,100dvh);overflow:hidden}
 body.android-app:not(.playing) .masthead{height:32px}
 body.android-app .home-screen{height:calc(var(--phone-height,100dvh) - 34px - var(--safe-t) - var(--safe-b));min-height:0;overflow:hidden}
 body.android-app .cover-art{left:43%;background-position:75% center;background-size:auto 100%}
 body.android-app .cover-shade{background:linear-gradient(90deg,#101b1b 0%,#101b1b 40%,#101b1be8 43%,#101b1b00 55%)}
 body.android-app .hero-copy{position:relative;display:flex;flex-direction:column;width:43%;height:100%;max-width:none;padding:10px 12px;gap:7px;justify-content:center}
 body.android-app .hero-copy>.eyebrow,body.android-app .home-bottom,body.android-app .hero-copy .synopsis{display:none}
 body.android-app .hero-copy h1{flex:none;font-size:clamp(34px,5.5vw,58px);line-height:.95;letter-spacing:-2px;margin:0;white-space:nowrap}
 body.android-app .hero-copy h1>span{display:inline;margin-left:9px}
 body.android-app .tagline{margin:0;font-size:12px;line-height:1.45;flex:none}
 body.android-app .character-label{font-size:9px;margin:0;flex:none}
 body.android-app .character-picker{width:100%;height:52px;gap:6px;flex:none}
 body.android-app .character-card{padding:5px;gap:5px;min-width:0;flex:1}
 body.android-app .character-card .avatar{width:29px;height:38px;flex-shrink:0}
 body.android-app .character-card .avatar.jaei{background-size:123px 82px;background-position:-57px -6px}
 body.android-app .character-card .avatar.jaea{background-size:111px 74px;background-position:-74px -20px}
 body.android-app.peace-home #home .avatar{background-size:230px 154px}
 body.android-app.peace-home #home .avatar.jaei{background-position:-154px -17px}
 body.android-app.peace-home #home .avatar.jaea{background-position:-184px -37px}
 body.android-app .character-card strong{font-size:13px}
 body.android-app .character-card small{font-size:8px;line-height:1.3}
 body.android-app .character-card .selection-mark{display:none}
 body.android-app .start-button{height:38px;min-height:38px;padding:7px 10px;font-size:13px;flex:none}
 body.android-app .home-actions{height:28px;flex:none;gap:5px;width:100%}
 body.android-app .home-actions button{font-size:9px;min-height:28px;padding:3px 0}
 body.android-app .home-secondary{display:grid;grid-template-columns:1fr 1fr;gap:1px 8px;margin:0;font-size:9px;line-height:1.2;width:100%}
 body.android-app .home-secondary>*{min-height:23px;display:flex;align-items:center;padding:2px 0;text-align:left;border:0}
 body.android-app .modal{padding:max(5px,var(--safe-t)) max(9px,var(--safe-r)) max(5px,var(--safe-b)) max(9px,var(--safe-l))}
 body.android-app .panel[data-phone-menu]{position:relative;width:100%;max-width:1120px;height:calc(var(--phone-height,100dvh) - 10px - var(--safe-t) - var(--safe-b));min-height:0;max-height:none;padding:10px 14px;overflow:hidden}
 body.android-app .panel[data-phone-menu] #modalContent{height:100%;min-height:0;display:flex;flex-direction:column;gap:7px}
 body.android-app .panel[data-phone-menu] h2{font-size:20px;line-height:1.18;margin:3px 0}
 body.android-app .panel[data-phone-menu] p{font-size:12px;line-height:1.45;margin:5px 0;color:#c2cbbf}
 body.android-app .panel[data-phone-menu] .eyebrow{font-size:9px;letter-spacing:1.2px}
 body.android-app .panel[data-phone-menu] .modal-top{margin:0;min-height:13px}
 body.android-app .panel[data-phone-menu] .button-row{display:flex;flex-wrap:nowrap;gap:8px;margin:0;flex-shrink:0}
 body.android-app .panel[data-phone-menu] .button-row button{min-height:36px;padding:7px 13px;font-size:12px;flex:1;white-space:nowrap}
 body.android-app .panel[data-phone-menu] .close-button{position:absolute;right:10px;top:6px;width:35px;height:35px;font-size:22px;min-height:35px}
 body.android-app .shop-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0;flex-shrink:0}
 body.android-app .shop-header .eyebrow{display:none}
 body.android-app .shop-header h2{font-size:20px}
 body.android-app .shop-header p{font-size:11px!important}
 body.android-app .shop-resource{display:flex;align-items:center;gap:9px;white-space:nowrap;font-size:12px;padding:8px 12px;border:1px solid #7484684d;border-radius:6px}
 body.android-app .shop-resource br{display:none}body.android-app .shop-resource b{font-size:18px}
 body.android-app .shop-tabs{display:flex;gap:6px;margin:0;flex-shrink:0}
 body.android-app .shop-tabs button{padding:6px 10px;min-height:31px;font-size:12px;flex:1}
 body.android-app .phone-pager{display:flex;gap:8px;align-items:center;justify-content:flex-end;min-height:30px;flex-shrink:0}
 body.android-app .phone-pager select{margin-right:auto;background:#1b2a21;color:#ece8d7;border:1px solid #7b8b7159;border-radius:4px;padding:4px 8px;font-size:12px;height:30px}
 body.android-app .phone-pager button{padding:4px 13px;min-height:30px;font-size:12px;background:#29362b;border:1px solid #65765a88;border-radius:4px;color:#e3dec9}
 body.android-app .phone-pager span{font-size:12px;min-width:50px;text-align:center;color:#d6d6bf}
 body.android-app .shop-grid,body.android-app [data-phone-menu=help] .guide-grid{display:grid;grid-template-columns:repeat(var(--phone-columns,2),minmax(0,1fr));gap:9px;flex:1;min-height:0;margin:0;overflow:hidden}
 body.android-app .item-card{position:relative;display:flex;flex-direction:column;gap:3px;min-width:0;min-height:0;padding:8px 10px;background:#14251fd9;border:1px solid #6c806744;border-radius:7px}
 body.android-app .item-card[hidden]{display:none!important}
 body.android-app .item-card>div:first-child{height:17px;line-height:17px}
 body.android-app .item-icon{font-size:16px}body.android-app .item-level{font-size:10px;float:right;margin-right:32px}
 body.android-app .item-card h3{font-size:14px;line-height:1.25;margin:1px 31px 0 0}
 body.android-app .item-card p{font-size:11px!important;line-height:1.38!important;margin:2px 0!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;flex:1;min-height:20px}
 body.android-app .item-card>button:not(.phone-more){font-size:11px;padding:6px;min-height:30px;margin:0;width:100%;flex-shrink:0}
 body.android-app .item-card .phone-more{position:absolute;top:6px;right:5px;min-height:28px;width:auto;padding:4px 7px;margin:0;background:#324436;border:0;color:#dedfcf;font-size:10px}
 body.android-app .phone-detail{position:absolute;z-index:12;inset:8px;background:#17291ffb;border:1px solid #8da381;padding:16px;display:flex;flex-direction:column;gap:10px;border-radius:8px;box-shadow:0 0 0 16px #030905aa}
 body.android-app .phone-detail h3{margin:0;font-size:19px}body.android-app .phone-detail p{white-space:pre-line;overflow:auto;flex:1;font-size:14px!important;line-height:1.6!important}body.android-app .phone-detail button{min-height:38px;flex-shrink:0}
 body.android-app .phone-menu-heading{flex-shrink:0}body.android-app .phone-menu-content{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:6px 20px}
 body.android-app .phone-menu-content>.guide-grid{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:0}
 body.android-app .phone-menu-actions{display:flex;gap:8px;padding:0;margin:0;flex-shrink:0;border:0;background:none}
 body.android-app .phone-menu-actions>.button-row{flex:1}
 body.android-app [data-phone-menu=map] .phone-menu-content{display:flex;flex-direction:column;overflow:hidden;gap:4px}
 body.android-app .map-grid{flex:1;min-height:0;display:grid;grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(2,1fr);gap:6px;margin:0}
 body.android-app .map-node{padding:6px;min-height:0}body.android-app .map-number{font-size:13px;display:inline}body.android-app .map-node h3{font-size:12px;margin:2px 0}body.android-app .map-node p{font-size:10px!important;line-height:1.3!important;margin:3px 0!important}body.android-app .map-state{font-size:9px;margin:2px 0}
 body.android-app [data-phone-menu=briefing] .phone-menu-content{grid-template-columns:1.15fr 1fr;grid-template-rows:auto auto 1fr;overflow:hidden}
 body.android-app [data-phone-menu=briefing] .special-info{grid-column:2;grid-row:1/4;margin:0;padding:10px}
 body.android-app [data-phone-menu=briefing] .special-info strong{font-size:20px;margin:7px 0}
 body.android-app [data-phone-menu=briefing] .guide-grid{grid-column:1/-1;display:flex;justify-content:space-between}
 body.android-app [data-phone-menu=briefing] .guide-grid p{padding:8px;margin:0;font-size:11px}
 body.android-app .phone-guide-button{min-height:31px;padding:6px 12px;font-size:12px}
 body.android-app [data-phone-menu=slots] .phone-menu-content{display:flex;flex-direction:column;overflow:hidden}
 body.android-app .slots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0;flex:1;min-height:0}
 body.android-app .slot{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:8px;padding:10px;min-width:0}
 body.android-app .slot strong{font-size:13px}.android-app .slot small{font-size:10px;line-height:1.5}.android-app .slot button{padding:7px;min-height:35px;font-size:12px}
 body.android-app [data-phone-menu=settings] .phone-menu-content{align-items:center}
 body.android-app .settings-row{font-size:13px;margin:0;padding:8px 0;gap:10px;min-width:0}body.android-app .settings-row input[type=range]{width:52%;min-width:0}
 body.android-app [data-phone-menu=pause] .phone-menu-content{display:flex;flex-direction:column;justify-content:center}
 body.android-app [data-phone-menu=pause] .phone-menu-actions{flex-direction:column}
 body.android-app [data-phone-menu=help] .phone-menu-content{display:flex;flex-direction:column;overflow:hidden}
 body.android-app [data-phone-menu=help] .phone-menu-content>p{display:none}
 body.android-app [data-phone-menu=help] .item-card p{-webkit-line-clamp:7;flex:1;font-size:12px!important;padding-right:20px}
 body.android-app .panel.comic-panel{height:calc(var(--phone-height,100dvh) - 10px - var(--safe-t) - var(--safe-b));max-height:none;overflow:hidden}
 body.android-app .comic-layout{height:100%;min-height:0;grid-template-columns:.85fr 1.15fr}
 body.android-app .comic-art{height:100%;width:100%;aspect-ratio:auto;align-self:stretch}
 body.android-app .comic-copy{padding:10px 15px;min-height:0;max-height:100%;display:flex;flex-direction:column;gap:5px}
 body.android-app .comic-copy h2{font-size:19px;margin:0}.android-app .comic-copy .modal-top{margin:0}.android-app .comic-copy .eyebrow{font-size:8px}
 body.android-app .comic-copy .story-text{font-size:12px;line-height:1.65;margin:0;flex:1;min-height:0;overflow:auto}.android-app .story-hint{font-size:9px}
 body.android-app .comic-dots{margin:0;gap:5px}.android-app .comic-dots button{width:24px;height:24px;min-height:24px;padding:0;font-size:10px}
 body.android-app .comic-copy .button-row{margin:0;gap:6px}.android-app .comic-copy .button-row button{padding:7px 10px;min-height:34px;font-size:12px}.android-app .comic-skip{font-size:10px;margin:0;padding:4px}
 body.android-app .panel.video-panel{max-height:100%;width:100%;overflow:hidden}.android-app .epilogue-film video{max-height:calc(var(--phone-height,100dvh) - 85px);width:100%;object-fit:contain}.android-app .film-actions{padding:7px 10px;gap:8px}.android-app .film-actions button{min-height:32px;padding:6px 10px;font-size:11px}
 body.android-app .panel.ending-panel[data-phone-menu] .end-score{font-size:30px;margin:0}.android-app .panel.ending-panel[data-phone-menu] .end-quote{font-size:14px;margin:0}
}
@media(orientation:landscape) and (max-height:340px){body.android-app .panel[data-phone-menu]{padding:7px 10px}body.android-app .panel[data-phone-menu] #modalContent{gap:4px}body.android-app .shop-header h2{font-size:18px}body.android-app .shop-header p{font-size:10px!important}body.android-app .item-card>div:first-child{display:none}body.android-app .item-card p{-webkit-line-clamp:2}body.android-app .phone-menu-heading .eyebrow{display:none}body.android-app .map-state{display:none}body.android-app .panel[data-phone-menu] .button-row button{min-height:32px;padding:6px;font-size:11px}}


body.android-app .panel[data-phone-menu="arsenal"] .arsenal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))!important;overflow-y:auto;overflow-x:hidden;align-items:start;overscroll-behavior:contain;touch-action:pan-y}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-tree{padding:7px;min-height:max-content;overflow:visible}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-tree img{height:55px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-tree button{font-size:10px;min-height:36px;padding:5px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-tree p{font-size:10px;min-height:28px;flex:none;display:block;overflow:visible}
body.android-app .panel[data-phone-menu="arsenal"] h3{font-size:12px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-tree ol{font-size:10px;line-height:1.4}

body.android-app .panel[data-phone-menu="arsenal"] .arsenal-grid{flex:none;overflow:visible;align-items:stretch;gap:7px;margin:4px 0}body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice{min-height:76px;padding:23px 5px 10px;font-size:12px}body.android-app .panel[data-phone-menu="arsenal"] .weapon-tools{flex:none;margin:0}body.android-app .panel[data-phone-menu="arsenal"] .weapon-upgrades{flex:1;min-height:26px;overflow:auto}body.android-app .panel[data-phone-menu="arsenal"] .weapon-upgrades:not([open]){flex:none}body.android-app .panel[data-phone-menu="arsenal"] .weapon-upgrade-row button{min-height:32px;font-size:10px;padding:4px}body.android-app .panel[data-phone-menu="arsenal"] .weapon-upgrades summary{padding:5px 0}

body.android-app .panel[data-phone-menu="arsenal"] .arsenal-grid{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;align-items:start;grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice-card .weapon-choice{min-height:0;padding:17px 2px 3px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice-card .weapon-choice img{height:42px;margin:2px 0}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice-heading{font-size:11px}.android-app .weapon-choice-heading small{font-size:9px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice-card .weapon-current-detail{min-height:24px;line-height:1.25;font-size:9px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-next{font-size:9px}.android-app .weapon-choice-card .weapon-choice-name{font-size:11px}
body.android-app .panel[data-phone-menu="arsenal"] .weapon-choice-card>button{min-height:30px;font-size:10px;padding:4px}.android-app .weapon-levels summary{font-size:9px}
@media(orientation:portrait){body.android-app .panel[data-phone-menu="arsenal"] .arsenal-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* Protection purchase information must remain visible on small phone cards. */
body.android-app .item-card.protection-card p{display:block;-webkit-line-clamp:unset;overflow:visible;font-size:11px!important;line-height:1.25!important}

/* Fill wide phone displays without cropping the artwork's printed buttons.
   Only the scenery extends to the edges; the interactive art keeps its ratio. */
body.android-app #modal .panel.gameover-panel{position:fixed;inset:0;width:100%!important;height:100dvh;height:var(--phone-height,100dvh);max-width:none;max-height:none;margin:0;border-radius:0;padding:0!important;overflow:hidden}
body.android-app .gameover-panel #modalContent{position:relative;isolation:isolate;display:grid;place-items:center;width:100%;height:100%;padding:var(--safe-t,0px) var(--safe-r,0px) var(--safe-b,0px) var(--safe-l,0px);box-sizing:border-box;overflow:hidden}
.gameover-backdrop{display:none}
body.android-app .gameover-panel .gameover-backdrop{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;filter:blur(10px);transform:scale(1.05);pointer-events:none;z-index:-1}
body.android-app .gameover-panel .gameover-scene{width:min(100%,calc((var(--phone-height,100dvh) - var(--safe-t,0px) - var(--safe-b,0px)) * 1.7768331562));margin:0;flex:none}
body.android-app .gameover-panel .gameover-scene>img{width:100%;height:auto;max-height:none;display:block}
body.android-app .gameover-panel .result-buttons{margin:0;padding:0}
body.android-app .gameover-panel .result-buttons button{min-height:0;padding:0;margin:0;touch-action:manipulation}
